Remove empty nm-fbsd.h header for FreeBSD/i386 native target.
[external/binutils.git] / gdb / ChangeLog
1 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
2
3         * config/i386/nm-fbsd.h: Remove file.
4         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
5         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
6
7 2018-12-27  Tom Tromey  <tom@tromey.com>
8
9         * minsyms.h (class minimal_symbol_reader): Use
10         DISABLE_COPY_AND_ASSIGN.
11
12 2018-12-27  Tom Tromey  <tom@tromey.com>
13
14         * python/python.c (python_interactive_command): Use std::string.
15         (gdbpy_parameter): Likewise.
16         * python/py-utils.c (unicode_to_encoded_string): Update comment.
17         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
18         * python/py-record-btrace.c (recpy_bt_insn_data): Use
19         byte_vector.
20         * python/py-objfile.c (objfpy_get_build_id): Use
21         unique_xmalloc_ptr.
22         * python/py-inferior.c (infpy_read_memory): Use
23         unique_xmalloc_ptr.
24         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
25
26 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
27
28         * target.c (target_terminal::restore_inferior): Remove struct keyword.
29
30 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
31
32         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
33         * symfile.c (separate_debug_file_exists): Likewise.
34
35 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
36
37         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
38         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
39         names.
40         (typename_stoken): New function.
41
42 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
43
44         * c-exp.y (field_name): New %token, and new rule.
45         (exp): Replace uses of 'name' with 'field_name' where appropriate.
46
47 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
48
49         PR gdb/13368
50         * c-exp.y (typebase): Extend the comment.
51         (ident_tokens): Likewise.
52
53 2018-12-18  Tom Tromey  <tom@tromey.com>
54
55         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
56         address of sect_off.
57
58 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
59
60         GDB 8.2.1 released.
61
62 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
63
64         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
65         assigning locations.
66         (riscv_return_value): Take more care not to read/write outside of
67         argument buffer.  Cast return value between the declared type and
68         the abi type.
69
70 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
71
72         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
73         fflags, and frm registers.
74
75 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
76
77         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
78         (riscv_gdbarch_init): Register new function with gdbarch.
79         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
80
81 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
82
83         * minsyms.c (mst_str): New.
84         (minimal_symbol_reader::record_full): Add debug output.
85
86 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
87
88         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
89         equal PL_FLAG_SI.
90         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
91
92 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
93
94         PR gdb/23974
95         * target.c (target_read_stralloc): Check for empty vector.
96
97 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
98
99         * top.c (print_gdb_configuration): Print "--without-python"
100         if GDB was configured without Python.
101
102 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
103
104         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
105         a signed offset as a string.
106
107 2018-12-21  Dave Murphy  <davem@devkitpro.org>
108
109         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
110         initialise.
111         * probe.c (any_static_probe_ops): Ditto.
112         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
113         * stap-probe.c (stap_static_probe_ops): Ditto.
114         * tui/tui-hooks.c (tui_observers_token): Ditto.
115         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
116
117 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
118
119         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
120         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
121         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
122         (default_unwind_sp): Define new function.
123         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
124         (default_unwind_sp): Declare new function.
125         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
126         available.
127         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
128         * gdb/gdbarch.c: Regenerate.
129         * gdb/gdbarch.h: Regenerate.
130         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
131         unwind_sp.  Add additional header files to be included in
132         generated file.
133
134 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
135
136         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
137         sp clobbers.
138
139 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
140
141         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
142         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
143         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
144         'processing_has_namespace_info' from unsigned int to bool.  Update
145         comments.
146         (producer_is_icc_lt_14): Update return type.
147         (producer_is_gcc_lt_4_3): Likewise.
148         (producer_is_gxx_lt_4_6): Likewise.
149         (process_die): Write true instead of 1 into predicate fields.
150         (dwarf2_start_symtab): Likewise.
151         (var_decode_location): Likewise.
152         (dwarf2_mark_helper): Likewise.
153         (dwarf2_mark): Likewise.
154         (dwarf2_clear_marks): Write false instead of 0 into predicate
155         field.
156         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
157         0.
158
159 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
160
161         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
162         asm/sigcontext.h.
163
164 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
165
166         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
167         warning trailing new line.
168
169 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
170
171         * nat/linux-ptrace.c (kill_child): New function.
172         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
173         Add a call to kill_child in case of early return after fork.
174         (linux_check_ptrace_features): Use kill_child instead of local code.
175         (linux_test_for_tracefork): Likewise.
176
177 2018-12-14  Tom Tromey  <tom@tromey.com>
178
179         * Makefile.in: Remove "alloca" comment.
180         (INFOFILES): Remove.
181         (local-maintainer-clean): Don't use INFOFILES.
182
183 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
184
185         * syscalls/update-freebsd.sh: New file.
186         * syscalls/freebsd.xml: Regenerate.
187
188 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
189
190         * NEWS: Add entry documenting system call aliases.
191         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
192         to get_syscalls_by_name.
193         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
194         * gdbarch.h: Regenerate.
195         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
196         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
197         from get_syscall_by_name.  Now accepts a pointer to a vector of
198         integers and returns a bool.
199         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
200         (syscall_create_syscall_desc): Add alias parameter and pass it to
201         syscall_desc constructor.
202         (syscall_start_syscall): Handle alias attribute.
203         (syscall_attr): Add alias attribute.
204         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
205         Now accepts a pointer to a vector of integers and returns a
206         bool.  Add syscalls whose alias or name matches the requested
207         name.
208         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
209         accepts a pointer to a vector of integers and returns a bool.
210         * xml-syscall.h (get_syscalls_by_name): Likewise.
211
212 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
213
214         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
215         to get_syscalls_by_group.
216         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
217         false.
218         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
219         numbers to an existing vector of integers and return a bool.
220         (get_syscalls_by_group): Accept pointer to vector of integers
221         and change return type to bool.
222         * xml-syscall.h (get_syscalls_by_group): Likewise.
223
224 2018-12-13  Jim Wilson  <jimw@sifive.com>
225
226         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
227         comment for SD field, and correct xlen calculation.  For MISA, add
228         comment for MXL field, add call to register_size, and correct base
229         calculation.
230
231 2018-12-13  Stafford Horne  <shorne@gmail.com>
232
233         * NEWS(New targets): Add or1k*-*-linux*.
234
235 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
236
237         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
238         declare on one line to fix ARI warning.
239
240 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
241
242         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
243         (infcall_suspend_state::registers): New.
244         (infcall_suspend_state::restore): New.
245         (infcall_suspend_state::thread_suspend): Rename to...
246         (infcall_suspend_state::m_thread_suspend): ...this.
247         (infcall_suspend_state::registers): Rename to...
248         (infcall_suspend_state::m_registers): ...this.
249         (infcall_suspend_state::siginfo_gdbarch): Rename to...
250         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
251         (infcall_suspend_state::siginfo_data): Rename to...
252         (infcall_suspend_state::m_siginfo_data): ...this.
253         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
254         constructor.
255         (restore_infcall_suspend_state): Rewrite to use
256         infcall_suspend_state::restore method.
257         (get_infcall_suspend_state_regcache): Use
258         infcall_suspend_state::registers method.
259
260 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
261
262         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
263         arguments are passed in integer registers.
264         (riscv_call_arg_complex_float): Likewise.
265
266 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
267
268         * nat/linux-osdata.c (common_getter): New function.
269         (struct osdata_type): Change getter to take_snapshot.
270         Add LONGEST len_avail and struct buffer buffer.
271         Change all elements in the initializer.
272         Add an element for the list of types.
273         (linux_xfer_osdata_info_os_types): New function.
274         (linux_common_xfer_osdata): Use common_getter for the list of types.
275         Replace getter call by common_getter.
276         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
277         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
278         (linux_xfer_osdata_fds): Likewise.
279         (linux_xfer_osdata_modules): Likewise.
280         (linux_xfer_osdata_msg): Likewise.
281         (linux_xfer_osdata_processes): Likewise.
282         (linux_xfer_osdata_processgroups): Likewise.
283         (linux_xfer_osdata_sem): Likewise.
284         (linux_xfer_osdata_shm): Likewise.
285         (linux_xfer_osdata_isockets): Likewise.
286         (linux_xfer_osdata_threads): Likewise.
287
288 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
289
290         * nat/linux-osdata.c: Removed various trailing spaces.
291
292 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
293
294         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
295         leading whitespace before #include line.
296
297 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
298             Дилян Палаузов  <dilyan.palauzov@aegee.org>
299
300         PR gdb/23950
301         * configure.ac: Search for tgetent in libtinfow.
302         * configure: Re-generate.
303
304 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
305
306         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
307         (thread_db_err_str): Forward declare.
308         (delete_thread_db_info): Call td_ta_delete_p if available.
309         (try_thread_db_load_1): Acquire td_ta_delete address.
310         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
311
312 2018-12-08  Pedro Alves  <palves@redhat.com>
313
314         * source.c (forward_search_command): Rename to ...
315         (search_command_helper): ... this.  Add 'forward' parameter.
316         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
317         buffer.  Handle backward searches too.
318         (forward_search_command, reverse_search_command): Reimplement by
319         calling search_command_helper.
320
321 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
322
323         * .dir-locals.el: Copy most of the settings from c-mode over to
324         c++-mode.
325
326 2018-12-08  Stafford Horne  <shorne@gmail.com>
327
328         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
329         * configure.tgt: Add or1k*-*-linux*.
330         * or1k-linux-tdep.c: New file.
331         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
332
333 2018-12-07  Pedro Alves  <palves@redhat.com>
334
335         * dwarf2read.c (get_gdb_index_contents_from_section): Use
336         gdb::make_array_view.
337
338 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
339
340         * language.c (_initialize_language): Fix leak by assigning
341         a static string to language.  Same for range and case_sensitive,
342         even if no leak is detected for these variables.
343
344 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
345
346         * configure: Re-generate.
347         * configure.ac: Use separate sed expressions to escape variables
348         in auto-load directories.
349
350 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
351
352         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
353         (riscv_find_default_target_description): Use new function to
354         extract feature from gdbarch_info.
355         (riscv_gdbarch_init): Add error checks for xlen and flen between
356         target description and bfd headers.  Be smarter about when we
357         think the hardware floating point abi should be used.
358
359 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
360
361         * nat/aarch64-linux-hw-point.c
362         (aarch64_linux_any_set_debug_regs_state): New function.
363         * nat/aarch64-linux-hw-point.h
364         (aarch64_linux_any_set_debug_regs_state): New declaration.
365         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
366         BPs or WPs are set.
367
368 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
369
370         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
371         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
372
373 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
374             Simon Marchi  <simon.marchi@ericsson.com>
375
376         * linespec.c (symtab_vector_up): Remove.
377         (symtabs_from_filename): Change return type to std::vector.
378         (collect_symtabs_from_filename): Likewise.
379         (create_sals_line_offset): Assign return value of
380         collect_symtabs_from_filename to *ls->file_symtabs.
381         (convert_explicit_location_to_linespec): Remove call to release.
382         (parse_linespec): Likewise.
383         (symtab_collector) <symtab_collector>: Remove initialization of
384         m_symtabs.
385         <release_symtabs>: Change return type to std::vector<symtab *>.
386         <operator ()>: Adjust.
387
388 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
389
390         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
391         defined.
392         (union sigval32, struct siginfo32, fbsd_siginfo_size)
393         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
394         of KERN_PROC_AUXV and PT_LWPINFO.
395         (fbsd_nat_target::xfer_partial): Define method unconditionally.
396         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
397         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
398         Make TARGET_OBJECT_FREEBSD_VMMAP and
399         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
400         and KERN_PROC_PS_STRINGS.
401         * fbsd-nat.h: Include <sys/proc.h>.
402         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
403
404 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
405
406         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
407         header files.
408         (riscv_linux_nat_target::read_description): New method.
409
410 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
411
412         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
413         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
414         (riscv_tdesc_cache): New global.
415         (riscv_create_target_description): Look in the cache before
416         creating a new target description.
417
418 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
419
420         * arch/riscv.h (riscv_gdb_features::operator==): New.
421         (riscv_gdb_features::operator!=): New.
422         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
423         operator.
424
425 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
426
427         * arch/riscv.h (riscv_create_target_description): Make return type
428         const.
429         * arch/riscv.c (riscv_create_target_description): Likewise.
430         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
431
432 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
433             Keith Seitz  <keiths@redhat.com>
434             Tom Tromey  <tom@tromey.com>
435             Sergio Durigan Junior  <sergiodj@redhat.com>
436
437         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
438         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
439         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
440         inside the CU.
441
442 2018-11-30  Pedro Alves  <palves@redhat.com>
443
444         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
445         <stratum>: New override.
446         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
447         <stratum>: New override.
448         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
449         <stratum>: New override.
450         * exec.c (exec_target) <exec_target>: Delete.
451         <stratum>: New override.
452         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
453         stratum method instead of the to_stratum field.
454         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
455         <stratum>: New override.
456         (thread_db_target::thread_db_target): Delete.
457         * make-target-delegates (print_class): Don't print a ctor
458         declaration.  Print a stratum method override declaration.
459         * process-stratum-target.h (process_stratum_target)
460         <process_stratum_target>: Delete.
461         <stratum>: New override.
462         * ravenscar-thread.c (ravenscar_thread_target)
463         <ravenscar_thread_target>: Delete.
464         <stratum>: New override.
465         * record-btrace.c (record_btrace_target)
466         <record_btrace_target>: Delete.
467         <stratum>: New override.
468         * record-full.c (record_full_base_target)
469         <record_full_base_target>: Delete.
470         <stratum>: New override.
471         * record.c (record_disconnect, record_detach)
472         (record_mourn_inferior, record_kill): Adjust to use the stratum
473         method instead of the to_stratum field.
474         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
475         * sol-thread.c (sol_thread_target)
476         <sol_thread_target>: Delete.
477         <stratum>: New override.
478         * spu-multiarch.c (spu_multiarch_target)
479         <spu_multiarch_target>: Delete.
480         <stratum>: New override.
481         * target-delegates.c: Regenerate.
482         * target.c (target_stack::push, target_stack::unpush)
483         (pop_all_targets_above, pop_all_targets_at_and_above)
484         (info_target_command, target_require_runnable)
485         (target_stack::find_beneath): Adjust to use the stratum method
486         instead of the to_stratum field.
487         (dummy_target::dummy_target): Delete.
488         (dummy_target::stratum): New.
489         (debug_target::debug_target): Delete.
490         (debug_target::stratum): New.
491         (maintenance_print_target_stack): Adjust to use the stratum method
492         instead of the to_stratum field.
493         * target.h (struct target_ops) <stratum>: New method.
494         <to_stratum>: Delete.
495         <is_pushed>: Adjust to use the stratum method
496         instead of the to_stratum field.
497
498 2018-11-30  Pedro Alves  <palves@redhat.com>
499
500         * corelow.c (core_target) <has_all_memory, has_execution>: New
501         overrides.
502         * inf-child.c (inf_child_target::has_all_memory)
503         (inf_child_target::has_memory, inf_child_target::has_stack)
504         (inf_child_target::has_registers)
505         (inf_child_target::has_execution): Delete.
506         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
507         has_stack, has_registers, has_execution>: Delete.
508         * process-stratum-target.c
509         (process_stratum_target::has_all_memory)
510         (process_stratum_target::has_memory)
511         (process_stratum_target::has_stack)
512         (process_stratum_target::has_registers)
513         (process_stratum_target::has_execution): New.
514         * process-stratum-target.h (process_stratum_target)
515         <has_all_memory, has_memory, has_stack, has_registers,
516         has_execution>: New method overrides.
517         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
518         has_memory, has_stack, has_registers, has_execution>: Delete.
519         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
520         has_execution>: Delete.
521         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
522         has_registers, has_execution>: Delete.
523         * target.c (default_child_has_all_memory)
524         (default_child_has_memory, default_child_has_stack)
525         (default_child_has_registers, default_child_has_execution):
526         Delete.
527         * target.h (default_child_has_all_memory)
528         (default_child_has_memory, default_child_has_stack)
529         (default_child_has_registers, default_child_has_execution):
530         Delete.
531         * tracefile.h (tracefile_target) <has_execution>: New override.
532
533 2018-11-30  Pedro Alves  <palves@redhat.com>
534
535         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
536         * bsd-kvm.c: Include "process-stratum-target.h".
537         (bsd_kvm_target): Now inherits from process_stratum_target.
538         (bsd_kvm_target::bsd_kvm_target): Default it.
539         * corelow.c: Include "process-stratum-target.h".
540         (core_target): Now inherits from process_stratum_target.
541         (core_target::core_target): Don't set to_stratum here.
542         * inf-child.c (inf_child_target::inf_child_target): Delete.
543         * inf-child.h: Include "process-stratum-target.h".
544         (inf_child_target): Inherit from process_stratum_target.
545         (inf_child_target) <inf_child_target>: Default it.
546         <can_async_p, supports_non_stop, supports_disable_randomization>:
547         Delete overrides.
548         * process-stratum-target.c: New file.
549         * process-stratum-target.h: New file.
550         * remote-sim.c: Include "process-stratum-target.h".
551         (gdbsim_target): Inherit from process_stratum_target.
552         <gdbsim_target>: Default it.
553         * remote.c: Include "process-stratum-target.h".
554         (remote_target): Inherit from process_stratum_target.
555         <remote_target>: Default it.
556         * target.c (default_thread_address_space)
557         (default_thread_architecture): Delete.
558         * target.h (target_ops) <thread_architecture>: Now returns NULL by
559         default.
560         <thread_address_space>: Ditto.
561         * test-target.h: Include "process-stratum-target.h" instead of
562         "target.h".
563         (test_target_ops): Inherit from process_stratum_target.
564         <test_target_ops>: Default it.
565         * tracefile.c (tracefile_target::tracefile_target): Delete.
566         * tracefile.h: Include "process-stratum-target.h".
567         (tracefile_target): Inherit from process_stratum_target.
568         <tracefile_target>: Default it.
569         * target-delegates.c: Regenerate.
570
571 2018-11-30  Pedro Alves  <palves@redhat.com>
572
573         * Makefile.in (COMMON_SFILES): Add test-target.c.
574         * gdbarch-selftests.c: Include "test-target.h".
575         * regcache.c: Include "test-target.h".
576         * target.c (test_target_info, test_target_ops::info): Move to ...
577         * test-target.c: ... this new file.
578         * target.h (test_target_ops): Move to ...
579         * test-target.h: ... this new file.
580
581 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
582
583         * source.c (forward_search_command): Fix leak by using
584         xrealloc even for the first allocation in the loop, as buf
585         is static.
586
587 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
588
589         PR gdb/23093
590         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
591         (fbsd_gdb_signal_to_target): New.
592         (fbsd_init_abi): Install gdbarch "signal_from_target" and
593         "signal_to_target" methods.
594
595 2018-11-29  Tom Tromey  <tom@tromey.com>
596
597         * valarith.c (value_x_unop): Don't set argvec[3].
598
599 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
600
601         PR gdb/23917
602         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
603         semicolon.
604
605 2018-11-26  Pedro Alves  <palves@redhat.com>
606
607         * procfs.c (procfs_notice_thread): Replace uses of
608         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
609         * sol-thread.c (sol_thread_target::wait)
610         (sol_update_thread_list_callback): Likewise.
611
612 2018-11-25  Tom Tromey  <tom@tromey.com>
613
614         * ui-out.c (ui_out::field_fmt): Remove comment.
615         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
616         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
617
618 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
619
620         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
621         leak in open_source_file' has been partially undone by '2179fbc36d23
622         Return scoped_fd from open_source_file'. Re-add the transfer of
623         current s->fullname to the unique_xmalloc_ptr fullname given
624         to find_and_open_source.
625
626 2018-11-23  Pedro Alves  <palves@redhat.com>
627
628         * gdbthread.h (enum thread_state): Move comments here.
629         (is_running, is_stopped, is_exited): Remove declarations.
630
631 2018-11-22  Pedro Alves  <palves@redhat.com>
632
633         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
634         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
635         ALL_NON_EXITED_THREADS with all_non_exited_threads.
636         (print_one_breakpoint_location): Replace ALL_INFERIORS with
637         all_inferiors.
638         * bsd-kvm.c: Include inferior.h.
639         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
640         with all_non_exited_threads.
641         * common/filtered-iterator.h: New.
642         * common/safe-iterator.h: New.
643         * corelow.c (core_target_open): Don't call init_thread_list here.
644         * darwin-nat.c (thread_info_from_private_thread_info): Replace
645         ALL_THREADS with all_threads.
646         * fbsd-nat.c (fbsd_nat_target::resume): Replace
647         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
648         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
649         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
650         * fork-child.c (postfork_hook): Don't call init_thread_list here.
651         * gdbarch-selftests.c (register_to_value_test): Adjust.
652         * gdbthread.h: Don't include "inferior.h" here.
653         (struct inferior): Forward declare.
654         (enum step_over_calls_kind): Moved here from inferior.h.
655         (thread_info::deletable): Definition moved to thread.c.
656         (find_thread_ptid (inferior *, ptid_t)): Declare.
657         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
658         Include "thread-iter.h".
659         (all_threads, all_non_exited_threads, all_threads_safe): New.
660         (any_thread_p): Declare.
661         (thread_list): Delete.
662         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
663         all_non_exited_threads.
664         (proceed_after_attach_callback): Delete.
665         (proceed_after_attach): Take an inferior pointer instead of an
666         integer PID.  Adjust to use range-for.
667         (attach_post_wait): Pass down inferior pointer instead of pid.
668         Use range-for instead of ALL_NON_EXITED_THREADS.
669         (detach_command): Remove init_thread_list call.
670         * inferior-iter.h: New.
671         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
672         (delete_thread_of_inferior): Delete.
673         (delete_inferior, exit_inferior_1): Use range-for with
674         inf->threads_safe() instead of iterate_over_threads.
675         (inferior_appeared): Call init_thread_list here.
676         (discard_all_inferiors): Use all_non_exited_inferiors.
677         (find_inferior_id, find_inferior_pid): Use all_inferiors.
678         (iterate_over_inferiors): Use all_inferiors_safe.
679         (have_inferiors, number_of_live_inferiors): Use
680         all_non_exited_inferiors.
681         (number_of_inferiors): Use all_inferiors and std::distance.
682         (print_inferior): Use all_inferiors.
683         * inferior.h: Include gdbthread.h.
684         (enum step_over_calls_kind): Moved to gdbthread.h.
685         (struct inferior) <thread_list>: New field.
686         <threads, non_exited_threads, threads_safe>: New methods.
687         (ALL_INFERIORS): Delete.
688         Include "inferior-iter.h".
689         (ALL_NON_EXITED_INFERIORS): Delete.
690         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
691         functions.
692         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
693         ALL_NON_EXITED_THREADS with all_non_exited_threads.
694         * infrun.c (follow_exec): Use all_threads_safe.
695         (clear_proceed_status, proceed): Use all_non_exited_threads.
696         (init_wait_for_inferior): Don't clear inline frame state here.
697         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
698         all_threads instead of ALL_NON_EXITED_THREADS.
699         (random_pending_event_thread): Use all_non_exited_threads instead
700         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
701         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
702         instead of ALL_NON_EXITED_THREADS.
703         (handle_no_resumed): Use all_non_exited_threads instead of
704         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
705         ALL_INFERIORS.
706         (restart_threads, switch_back_to_stepped_thread): Use
707         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
708         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
709         all_inferiors.
710         (kill_unfollowed_fork_children): Use inf->non_exited_threads
711         instead of ALL_NON_EXITED_THREADS.
712         * linux-tdep.c (linux_make_corefile_notes): Use
713         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
714         * linux-thread-db.c (thread_db_target::update_thread_list):
715         Replace ALL_INFERIORS with all_inferiors.
716         (thread_db_target::thread_handle_to_thread_info): Use
717         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
718         * mi/mi-interp.c (multiple_inferiors_p): New.
719         (mi_on_resume_1): Simplify using all_non_exited_threads and
720         multiple_inferiors_p.
721         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
722         instead of ALL_NON_EXITED_THREADS.
723         * nto-procfs.c (nto_procfs_target::open): Don't call
724         init_thread_list here.
725         * record-btrace.c (record_btrace_target_open)
726         (record_btrace_target::stop_recording)
727         (record_btrace_target::close)
728         (record_btrace_target::record_is_replaying)
729         (record_btrace_target::resume, record_btrace_target::wait)
730         (record_btrace_target::record_stop_replaying): Use
731         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
732         * record-full.c (record_full_wait_1): Use all_non_exited_threads
733         instead of ALL_NON_EXITED_THREADS.
734         * regcache.c (cooked_read_test): Remove reference to global
735         thread_list.
736         * remote-sim.c (gdbsim_target::create_inferior): Don't call
737         init_thread_list here.
738         * remote.c (remote_target::update_thread_list): Use
739         all_threads_safe instead of ALL_NON_EXITED_THREADS.
740         (remote_target::process_initial_stop_replies): Replace
741         ALL_INFERIORS with all_non_exited_inferiors and use
742         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
743         (remote_target::open_1): Don't call init_thread_list here.
744         (remote_target::append_pending_thread_resumptions)
745         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
746         instead of ALL_NON_EXITED_THREADS.
747         (remote_target::commit_resume)
748         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
749         with all_non_exited_inferiors and use all_non_exited_threads
750         instead of ALL_NON_EXITED_THREADS.
751         (remote_target::kill_new_fork_children): Use
752         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
753         init_thread_list and init_wait_for_inferior calls.
754         (remote_target::remote_btrace_maybe_reopen)
755         (remote_target::thread_handle_to_thread_info): Use
756         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
757         * target.c (target_terminal::restore_inferior)
758         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
759         all_non_exited_inferiors.
760         * thread-iter.c: New file.
761         * thread-iter.h: New file.
762         * thread.c: Include "inline-frame.h".
763         (thread_list): Delete.
764         (clear_thread_inferior_resources): Call clear_inline_frame_state.
765         (init_thread_list): Use all_threads_safe instead of
766         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
767         (new_thread): Adjust to per-inferior thread lists.
768         (add_thread_silent): Pass inferior to find_thread_ptid.
769         (thread_info::deletable): New, moved from the header.
770         (delete_thread_1): Adjust to per-inferior thread lists.
771         (find_thread_global_id): Use inf->threads().
772         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
773         find_thread_ptid.
774         (find_thread_ptid(inferior*, ptid_t)): New overload.
775         (iterate_over_threads): Use all_threads_safe.
776         (any_thread_p): New.
777         (thread_count): Use all_threads and std::distance.
778         (live_threads_count): Use all_non_exited_threads and
779         std::distance.
780         (valid_global_thread_id): Use all_threads.
781         (in_thread_list): Use find_thread_ptid.
782         (first_thread_of_inferior): Adjust to per-inferior thread lists.
783         (any_thread_of_inferior, any_live_thread_of_inferior): Use
784         inf->non_exited_threads().
785         (prune_threads, delete_exited_threads): Use all_threads_safe.
786         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
787         (set_resumed, set_running): Use all_non_exited_threads.
788         (is_thread_state, is_stopped, is_exited, is_running)
789         (is_executing): Delete.
790         (set_executing, set_stop_requested, finish_thread_state): Use
791         all_non_exited_threads.
792         (print_thread_info_1): Use all_inferiors and all_threads.
793         (thread_apply_all_command): Use all_non_exited_threads.
794         (thread_find_command): Use all_threads.
795         (update_threads_executing): Use all_non_exited_threads.
796         * tid-parse.c (parse_thread_id): Use inf->threads.
797         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
798
799 2018-11-22  Pedro Alves  <palves@redhat.com>
800
801         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
802         switch to it before calling into try_open_exec_file.
803
804 2018-11-22  Pedro Alves  <palves@redhat.com>
805
806         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
807         inferior_thread instead of find_thread_ptid, and only when
808         inferior_ptid is not null_ptid.
809         * inferior.c (add_inferior): Don't include target_pid_to_str
810         output when the inferior is not started.
811         * python/py-inferior.c (python_on_normal_stop): Don't use
812         find_thread_ptid.
813         (tui_on_user_selected_context_changed): Use inferior_thread
814         instead of find_thread_ptid, and only when inferior_ptid is not
815         null_ptid.
816
817 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
818
819         PR python/23714
820         * gdb/python/python.c (execute_gdb_command): Call
821         prevent_dont_repeat earlier to avoid affecting dont_repeat.
822
823 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
824
825         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
826         (HFILES_NO_SRCDIR): Add arch/riscv.h.
827         * arch/riscv.c: New file.
828         * arch/riscv.h: New file.
829         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
830         this list, and add arch/riscv.o.
831         * features/Makefile: Add riscv features.
832         * features/riscv/32bit-cpu.c: New file.
833         * features/riscv/32bit-cpu.xml: New file.
834         * features/riscv/32bit-csr.c: New file.
835         * features/riscv/32bit-csr.xml: New file.
836         * features/riscv/32bit-fpu.c: New file.
837         * features/riscv/32bit-fpu.xml: New file.
838         * features/riscv/64bit-cpu.c: New file.
839         * features/riscv/64bit-cpu.xml: New file.
840         * features/riscv/64bit-csr.c: New file.
841         * features/riscv/64bit-csr.xml: New file.
842         * features/riscv/64bit-fpu.c: New file.
843         * features/riscv/64bit-fpu.xml: New file.
844         * features/riscv/rebuild-csr-xml.sh: New file.
845         * riscv-tdep.c: Add 'arch/riscv.h' include.
846         (riscv_gdb_reg_names): Delete.
847         (csr_reggroup): New global.
848         (struct riscv_register_alias): Delete.
849         (struct riscv_register_feature): New structure.
850         (riscv_register_aliases): Delete.
851         (riscv_xreg_feature): New global.
852         (riscv_freg_feature): New global.
853         (riscv_virtual_feature): New global.
854         (riscv_csr_feature): New global.
855         (riscv_create_csr_aliases): New function.
856         (riscv_read_misa_reg): Delete.
857         (riscv_has_feature): Delete.
858         (riscv_isa_xlen): Simplify, just return cached xlen.
859         (riscv_isa_flen): Simplify, just return cached flen.
860         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
861         (riscv_register_name): Update to make use of tdesc_register_name.
862         Look up xreg and freg names in the new globals riscv_xreg_feature
863         and riscv_freg_feature.  Don't supply csr aliases here.
864         (riscv_fpreg_q_type): Delete.
865         (riscv_register_type): Use tdesc_register_type in almost all
866         cases, override the returned type in a few specific cases only.
867         (riscv_print_one_register_info): Handle errors reading registers.
868         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
869         registers that are otherwise unknown to GDB.  Also check the
870         csr_reggroup.
871         (riscv_print_registers_info): Remove assert about upper register
872         number, and use gdbarch_register_reggroup_p instead of
873         short-cutting.
874         (riscv_find_default_target_description): New function.
875         (riscv_check_tdesc_feature): New function.
876         (riscv_add_reggroups): New function.
877         (riscv_setup_register_aliases): New function.
878         (riscv_init_reggroups): New function.
879         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
880         setup register groups.  Register new riscv debug variable.
881         * riscv-tdep.h: Add 'arch/riscv.h' include.
882         (struct gdbarch_tdep): Remove abi union, and add
883         riscv_gdbarch_features field.  Remove cached quad floating point
884         type, and provide initialisation for double type field.
885         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
886         the list of targets using the feature based target descriptions.
887         * NEWS: Mention target description support.
888
889 2018-11-21  Pedro Alves  <palves@redhat.com>
890
891         * valops.c (find_method_list, value_find_oload_method_list)
892         (find_overload_match, find_oload_champ): Rename parameters and
893         locals.
894
895 2018-11-21  Pedro Alves  <palves@redhat.com>
896
897         * valops.c (find_method_list): Replace pointer and length
898         parameters with an gdb::array_view.  Adjust.
899         (value_find_oload_method_list): Likewise.
900         (find_overload_match): Use gdb::array_view for methods list.
901         Adjust to find_oload_champ interface change.
902         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
903         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
904
905 2018-11-21  Pedro Alves  <palves@redhat.com>
906
907         * gdbtypes.c (compare_badness): Change type of parameters to const
908         reference.  Adjust to badness_vector being a std::vector now.
909         (rank_function): Adjust to badness_vector being a std::vector now.
910         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
911         (LENGTH_MATCH): Delete.
912         (compare_badness): Change type of parameters to const reference.
913         (rank_function): Return a badness_vector by value now.
914         (find_overload_match): Adjust to badness_vector being a
915         std::vector now.  Remove cleanups.
916         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
917         badness_vector pointer.
918         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
919         a badness_vector pointer.  Adjust to badness_vector being a
920         std::vector now.  Remove cleanups.
921         (find_oload_champ): 'oload_champ_bv' parameter now
922         a badness_vector pointer.  Adjust to badness_vector being a
923         std::vector now.  Remove cleanups.
924
925 2018-11-21  Pedro Alves  <palves@redhat.com>
926
927         * cp-support.c (sym_return_val_size, sym_return_val_index)
928         (sym_return_val): Delete.
929         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
930         add to the vector.
931         (make_symbol_overload_list): Adjust to return a std::vector
932         instead of maintaining a global open coded vector.
933         (make_symbol_overload_list_block): Add std::vector parameter.
934         (make_symbol_overload_list_block): Rename to ...
935         (add_symbol_overload_list_block): ... this and add std::vector
936         parameter.
937         (make_symbol_overload_list_namespace): Rename to ...
938         (add_symbol_overload_list_namespace): ... this and add std::vector
939         parameter.
940         (make_symbol_overload_list_adl_namespace): Rename to ...
941         (add_symbol_overload_list_adl_namespace): ... this and add
942         std::vector parameter.
943         (make_symbol_overload_list_adl): Delete.
944         (add_symbol_overload_list_adl): New.
945         (make_symbol_overload_list_using): Rename to ...
946         (add_symbol_overload_list_using): ... this and add std::vector
947         parameter.
948         (make_symbol_overload_list_qualified): Rename to ...
949         (add_symbol_overload_list_qualified): ... this and add std::vector
950         parameter.
951         * cp-support.h: Include "common/array-view.h" and <vector>.
952         (make_symbol_overload_list): Change return type to std::vector.
953         (make_symbol_overload_list_adl): Delete declaration.
954         (add_symbol_overload_list_adl): New declaration.
955         * valops.c (find_overload_match): Local 'oload_syms' now a
956         std::vector.
957         (find_oload_champ_namespace): 'oload_syms' parameter now a
958         std::vector pointer.
959         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
960         std::vector pointer.  Adjust to new make_symbol_overload_list
961         interface.
962
963 2018-11-21  Pedro Alves  <palves@redhat.com>
964
965         * common/array-view.h (array_view::splice(size_type, size_t)): New.
966         (array_view::splice(size_type)): New.
967         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
968         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
969         std::vector.
970         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
971         * extension.h: Include "common/array-view.h".
972         (xmethod_worker::invoke): Adjust to use gdb::array_view.
973         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
974         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
975         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
976         (xmethod_worker::do_get_result_type): Adjust to use
977         gdb::array_view.
978         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
979         * gdbtypes.h: Include "common/array-view.h".
980         (rank_function): Adjust to use gdb::array_view.
981         * python/py-xmethods.c (python_xmethod_worker::invoke)
982         (python_xmethod_worker::do_get_arg_types)
983         (python_xmethod_worker::do_get_result_type)
984         (python_xmethod_worker::invoke): Adjust to new interfaces.
985         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
986         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
987         * valops.c (find_overload_match, find_oload_champ_namespace)
988         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
989         gdb:array_view and the new xmethod_worker interfaces.
990         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
991         gdb::array_view.
992         * value.h (find_overload_match, result_type_of_xmethod)
993         (call_xmethod): Adjust to use gdb::array_view.
994         * unittests/array-view-selftests.c: Add slicing tests.
995
996 2018-11-21  Pedro Alves  <palves@redhat.com>
997
998         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
999         * common/array-view.h (make_array_view): New.
1000         * compile/compile-object-run.c (compile_object_run): Adjust to
1001         pass an array_view.
1002         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1003         * eval.c (eval_call): Adjust to pass an array_view.
1004         (evaluate_subexp_standard): Adjust to pass an array_view.
1005         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1006         * guile/scm-value.c (gdbscm_value_call): Likewise.
1007         * infcall.c (push_dummy_code): Replace pointer + size parameters
1008         with an array_view parameter.
1009         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1010         adjust.
1011         * infcall.h: Include "common/array-view.h".
1012         (call_function_by_hand, call_function_by_hand_dummy): Replace
1013         pointer + size parameters with an array_view parameter.
1014         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1015         * linux-tdep.c (linux_infcall_mmap): Likewise.
1016         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1017         (value_nsstring, print_object_command): Likewise.
1018         * python/py-value.c (valpy_call): Likewise.
1019         * rust-lang.c (rust_evaluate_funcall): Likewise.
1020         * spu-tdep.c (flush_ea_cache): Likewise.
1021         * valarith.c (value_x_binop, value_x_unop): Likewise.
1022         * valops.c (value_allocate_space_in_inferior): Likewise.
1023         * unittests/array-view-selftests.c (run_tests): Add
1024         gdb::make_array_view test.
1025
1026 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1027
1028         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1029         than a fixed size buffer.
1030
1031 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1032
1033         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1034         and remove insertion of extra spaces in GDB's output.
1035         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1036         Layout field into a temporary buffer, and then output it as a
1037         string field.
1038
1039 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1040
1041         * NEWS: Document the language choice done by
1042         'info [types|functions|variables]|rbreak'.
1043
1044 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1045
1046         * symtab.c (treg_matches_sym_type_name): Use
1047         scoped_switch_to_sym_language_if_auto instead of local logic.
1048         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1049         to switch to SYM language when language mode is auto.
1050
1051 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1052
1053         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1054
1055 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1056
1057         * symtab.c (search_symbols): Properly check absence of type regexp
1058         before entering the loop scanning the minimal symbols.
1059
1060 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1061
1062         * s12z-tdep.c (s12z_extract_return_value): New function.
1063         (inv_reg_perm) New array.
1064         (s12z_return_value): Populate readbuf if non-null.
1065
1066 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1067
1068         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1069         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1070         to MinGW fixed by Gnulib.
1071         (O_NOINHERIT): Define if not defined.
1072
1073 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1074
1075         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1076
1077 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1078
1079         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1080
1081 2018-11-19  Tom Tromey  <tom@tromey.com>
1082
1083         * source.c (get_filename_and_charpos): Return void.
1084
1085 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1086
1087         * skip.c (_initialize_step_skip): Fix "info skip" help.
1088
1089 2018-11-16  Tom Tromey  <tom@tromey.com>
1090
1091         PR rust/23625:
1092         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1093
1094 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1095
1096         * infrun.c (displaced_step_inferior_states): Change type to
1097         std::forward_list.
1098         (get_displaced_stepping_state): Adjust.
1099         (displaced_step_in_progress_any_inferior): Adjust.
1100         (add_displaced_stepping_state): Adjust.
1101         (remove_displaced_stepping_state): Adjust.
1102
1103 2018-11-18  Tom Tromey  <tom@tromey.com>
1104
1105         PR build/23814:
1106         * target-delegates.c: Rebuild.
1107         * ia64-linux-nat.c (class ia64_linux_nat_target)
1108         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1109         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1110         "self" argument.
1111         (ia64_linux_nat_target::low_new_thread): Rename.
1112         (class ia64_linux_nat_target) <read_description>: Don't declare.
1113         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1114         bool.
1115
1116 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1117
1118         PR gdb/22736:
1119         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1120         lang_struct_return code.
1121
1122 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1123
1124         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1125         return_method.
1126         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1127         * amd64-tdep.c (amd64_push_arguments): Likewise.
1128         (amd64_push_dummy_call): Likewise.
1129         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1130         * arc-tdep.c (arc_push_dummy_call): Likewise.
1131         * arm-tdep.c (arm_push_dummy_call): Likewise.
1132         * avr-tdep.c (avr_push_dummy_call): Likewise.
1133         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1134         * cris-tdep.c (cris_push_dummy_call): Likewise.
1135         * csky-tdep.c (csky_push_dummy_call): Likewise.
1136         * frv-tdep.c (frv_push_dummy_call): Likewise.
1137         * gdbarch.c: Regenerate.
1138         * gdbarch.h: Regenerate.
1139         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1140         return_method.
1141         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1142         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1143         (hppa64_push_dummy_call): Likewise.
1144         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1145         * i386-tdep.c (i386_push_dummy_call): Likewise.
1146         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1147         * infcall.c (call_function_by_hand_dummy): Likewise.
1148         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1149         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1150         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1151         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1152         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1153         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1154         * mep-tdep.c (mep_push_dummy_call): Likewise.
1155         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1156         (mips_n32n64_push_dummy_call): Likewise.
1157         (mips_o32_push_dummy_call): Likewise.
1158         (mips_o64_push_dummy_call): Likewise.
1159         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1160         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1161         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1162         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1163         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1164         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1165         (ppc64_sysv_abi_push_dummy_call): Likewise.
1166         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1167         (ppc64_sysv_abi_push_dummy_call): Likewise.
1168         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1169         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1170         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1171         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1172         * rx-tdep.c (rx_push_dummy_call): Likewise.
1173         * s390-tdep.c (s390_push_dummy_call): Likewise.
1174         * score-tdep.c (score_push_dummy_call): Likewise.
1175         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1176         (sh_push_dummy_call_nofpu): Likewise.
1177         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1178         (sparc32_push_dummy_call): Likewise.
1179         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1180         (sparc64_push_dummy_call): Likewise.
1181         * spu-tdep.c (spu_push_dummy_call): Likewise.
1182         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1183         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1184         * v850-tdep.c (v850_push_dummy_call): Likewise.
1185         * vax-tdep.c (vax_push_dummy_call): Likewise.
1186         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1187         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1188
1189 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1190
1191         * gdbarch.sh (enum function_call_return_method): Add enum.
1192         * gdbarch.h: Regenerate.
1193         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1194
1195 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1196
1197         * unittests/copy_bitwise-selftests.c: New file.
1198         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1199         (selftests::copy_bitwise_tests): Delete, moving this code to
1200         unittests/copy_bitwise-selftests.c instead.
1201         (_initialize_utils): Do not register copy_bitwise tests.
1202         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1203         unittests/copy_bitwise-selftests.c.
1204
1205 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1206
1207         * ada-lang.c (move_bits): Delete. Update all callers to use
1208         copy_bitwise instead.
1209         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1210         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1211         Move from here to utils.c.
1212         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1213         selftests.
1214         * utils.h (copy_bitwise): Add declaration.
1215         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1216         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1217         Moved here from dwarf2loc.c.
1218         (_initialize_utils): Register copy_bitwise selftests.
1219
1220 2018-11-14  Jim Wilson  <jimw@sifive.com>
1221
1222         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1223         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1224         then increment next_regnum if odd.
1225         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1226         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1227         function type.  Pass new arg to riscv_arg_location based on function
1228         type.
1229         (riscv_return_value): Pass new arg to riscv_arg_location.
1230
1231         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1232         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1233         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1234
1235         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1236         setting len.  New local align, set to max of arg align and xlen,
1237         and pass to first riscv_assign_stack_location call.
1238
1239 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1240
1241         * skip.c (complete_skip_number): New function.
1242         (_initialize_step_skip): Add completers to some skip commands.
1243
1244 2018-11-09  Tom Tromey  <tom@tromey.com>
1245
1246         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1247         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1248         <guesses>: Now a std::vector.
1249         (remote_g_packet_data_init, register_remote_g_packet_guess):
1250         Update.
1251         (remote_read_description_p): Update.  Return bool.
1252         (remote_target::read_description): Update.
1253         (struct remote_g_packet_guess): Add constructor.
1254
1255 2018-11-09  Tom Tromey  <tom@tromey.com>
1256
1257         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1258         move assignment operator.
1259         * psymtab.c (psymtab_to_fullname): Update.
1260         * source.h (open_source_file): Return scoped_fd.
1261         (find_and_open_source): Likewise.
1262         * source.c (open_source_file): Return scoped_fd.
1263         (get_filename_and_charpos): Update.
1264         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1265         (forward_search_command): Likewise.
1266         (reverse_search_command): Likewise.
1267         (find_and_open_source): Return scoped_fd.
1268         * tui/tui-source.c (tui_set_source_content): Update.  Use
1269         gdb_file_up.
1270
1271 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1272
1273         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1274         overflow.
1275
1276 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1277
1278         * configure: Regenerate.
1279
1280 2018-11-09  Tom de Vries  <tdevries@suse.de>
1281
1282         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1283         unconditionally, to set the language of the symbol.  Manage freeing
1284         returned pointer using gdb::unique_xmalloc_ptr.
1285
1286 2018-11-08  Tom Tromey  <tom@tromey.com>
1287
1288         * record.c (require_record_target): Upper-case "<TAB>".
1289
1290 2018-11-08  Tom Tromey  <tom@tromey.com>
1291
1292         * python/lib/gdb/command/pretty_printers.py
1293         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1294
1295 2018-11-08  Tom Tromey  <tom@tromey.com>
1296
1297         PR gdb/23555:
1298         PR gdb/23838:
1299         * target.h (target_supports_terminal_ours): Return bool.
1300         * target.c (target_supports_terminal_ours): Handle case where
1301         current_top_target returns nullptr.  Return bool.
1302
1303 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1304
1305         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1306         return the correct count for potential HFAs.
1307
1308 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1309
1310         * i387-tdep.c (i387_supply_xsave): Split handling of
1311         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1312         (i387_collect_xsave): Likewise.
1313
1314 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1315
1316         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1317         (riscv_frame_this_id): Catch errors thrown while building the
1318         frame cache, leave the frame id as the default, which is the outer
1319         frame id.
1320
1321 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1322
1323         * ada-lang.c (read_atcb): Only set task_info->called_task if
1324         task_info->state == Entry_Caller_Sleep.
1325         (print_ada_task_info): Do not check task_info->state before
1326         checking task_info->called_task.
1327         (info_task): Likewise.
1328
1329 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1330
1331         * ada-tasks.c (read_atcb): Clear task_info before computing
1332         the value of each of its fields.
1333
1334 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1335
1336         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1337         NULL before dereferencing it.
1338
1339 2018-11-06  Tom de Vries  <tdevries@suse.de>
1340
1341         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1342         program headers.
1343
1344 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1345
1346         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1347         so that it applies to uclinux as well.
1348
1349 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1350
1351         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1352         when on AAPCS.
1353
1354 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1355
1356         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1357         RISCV_CSR_SSTATUS_REGNUM.
1358
1359 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1360
1361         * source.c (open_source_file): Fix leak by transferring the
1362         current s->fullname to the unique_xmalloc_ptr fullname given
1363         to find_and_open_source.
1364
1365 2018-11-04  Tom Tromey  <tom@tromey.com>
1366
1367         * varobj.c (install_default_visualizer): Update.
1368         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1369         Return gdbpy_ref.
1370         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1371         (find_pretty_printer_from_progspace)
1372         (find_pretty_printer_from_gdb, find_pretty_printer)
1373         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1374         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1375         Update.
1376
1377 2018-11-04  Tom Tromey  <tom@tromey.com>
1378
1379         * python/python.c (gdbpy_parameter_value): Update.
1380         * python/python-internal.h (python_string_to_unicode)
1381         (python_string_to_target_python_string)
1382         (host_string_to_python_string): Return gdbpy_ref.
1383         * python/py-utils.c (python_string_to_unicode)
1384         (unicode_to_encoded_python_string)
1385         (unicode_to_target_python_string)
1386         (python_string_to_target_string)
1387         (python_string_to_target_python_string): Return gdbpy_ref.
1388         (python_string_to_host_string): Update.
1389         (host_string_to_python_string): Return gdbpy_ref.
1390         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1391         (stpy_fullname): Update.
1392         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1393         Update.
1394         * python/py-prettyprint.c (print_string_repr): Update.
1395         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1396         (objfpy_get_build_id): Update.
1397         * python/py-breakpoint.c (bppy_get_location)
1398         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1399         Update.
1400
1401 2018-11-04  Tom Tromey  <tom@tromey.com>
1402
1403         * python/python-internal.h (gdb_py_object_from_longest)
1404         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1405         * python/py-value.c (valpy_int): Update.
1406         * python/py-utils.c (gdb_py_object_from_longest): Return
1407         gdbpy_ref.
1408         (gdb_py_object_from_ulongest): Likewise.
1409         * python/py-type.c (typy_get_alignof): Update.
1410         * python/py-linetable.c (ltpy_get_all_source_lines)
1411         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1412         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1413
1414 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1415
1416         * ada-lang.c (_initialize_ada_language): Fix typo.
1417
1418 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1419
1420         * language.c (type): Remove.
1421         (_initialize_language): Remove assignment to type.
1422
1423 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1424
1425         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1426         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1427         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1428         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1429         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1430         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1431         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1432         and aarch64-ravenscar-thread.o.
1433         * NEWS: Add entry documenting Ravenscar tasking support
1434         on AArch64 ELF.
1435
1436 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1437
1438         * symtab.c (info_functions_command): Initialize quiet flag.
1439         * stack.c (info_args_command): Likewise.
1440
1441 2018-11-01  Jim Wilson  <jimw@sifive.com>
1442
1443         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1444         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1445         debugging messages.
1446
1447 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1448
1449         * ada-lang.c (ada_watch_location_expression): New function.
1450         (ada_language_defn): Set la_watch_location_expression to
1451         ada_watch_location_expression.
1452
1453 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1454
1455         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1456
1457 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1458
1459         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1460         shifting.
1461
1462 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1463             Joel Brobecker  <brobecker@adacore.com>
1464
1465         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1466         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1467         * arm-pikeos-tdep.c: New file.
1468         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1469         embedded system.
1470         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1471
1472 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1473
1474         * common/pathstuff.c (get_standard_temp_dir): New.
1475         * common/pathstuff.h (get_standard_temp_dir): New.
1476         * config.in: Re-generate.
1477         * configure: Re-generate.
1478         * configure.ac: Don't check for mkdtemp.
1479         * gnulib/aclocal-m4-deps.mk: Re-generate.
1480         * gnulib/aclocal.m4: Re-generate.
1481         * gnulib/config.in: Re-generate.
1482         * gnulib/configure: Re-generate.
1483         * gnulib/import/Makefile.am: Re-generate.
1484         * gnulib/import/Makefile.in: Re-generate.
1485         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1486         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1487         * gnulib/import/m4/mkdtemp.m4: New file.
1488         * gnulib/import/mkdtemp.c: New file.
1489         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1490         Add mkdtemp module.
1491         * unittests/mkdir-recursive-selftests.c (test): Use
1492         get_standard_temp_dir.
1493         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1494         ifdef.
1495         * compile/compile.c (get_compile_file_tempdir): Likewise.
1496
1497 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1498
1499         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1500         (SIG_FRAME_LR_OFFSET64): New define.
1501         (SIG_FRAME_FP_OFFSET64): New define.
1502         (aix_sighandle_frame_cache): New Function.
1503         (aix_sighandle_frame_this_id): New Function.
1504         (aix_sighandle_frame_prev_register): New Function.
1505         (aix_sighandle_frame_sniffer): New Function.
1506         (aix_sighandle_frame_unwind): New global variable.
1507         (rs6000_aix_init_osabi): Install new frame unwinder.
1508
1509 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1510
1511         PR gdb/23835
1512         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1513         already defined.
1514
1515 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1516
1517         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1518
1519 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1520
1521         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1522         (producer_is_icc): New function.
1523         (check_producer): Set producer_is_icc field on dwarf2_cu.
1524         (dwarf2_init_integer_type): New function.
1525         (read_base_type): Call dwarf2_init_integer_type instead of
1526         init_integer_type in all cases.
1527         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1528         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1529         LEN is greater than 0.
1530
1531 2018-10-30  Tom Tromey  <tom@tromey.com>
1532
1533         * main.c (captured_main_1): Check return value of bfd_init.
1534
1535 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1536
1537         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1538         Adjust comments.
1539
1540 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1541
1542         * procfs.c: Include common/pathstuff.h.
1543
1544 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1545
1546         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1547         Add missing braces.  No functional change.
1548
1549 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1550
1551         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1552         to report a bad option and fix indentation.
1553         * demangle.c (demangle_command): Use report_unrecognized_option_error
1554         to report a bad option and correctly report the bad option.
1555
1556 2018-10-27  Tom Tromey  <tom@tromey.com>
1557
1558         PR cli/23364:
1559         * darwin-nat.c (copied_shell): New global.
1560         (may_have_sip): Rename from should_disable_startup_with_shell.
1561         (copy_shell_to_cache, maybe_cache_shell): New functions.
1562         (darwin_nat_target::create_inferior): Update.  Use
1563         copied_shell.
1564
1565 2018-10-27  Tom Tromey  <tom@tromey.com>
1566
1567         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1568         (run_tests): Call test_to_file.
1569         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1570         temporary files.
1571         * common/scoped_fd.h (scoped_fd::to_file): New method.
1572
1573 2018-10-27  Tom Tromey  <tom@tromey.com>
1574
1575         * unittests/scoped_mmap-selftests.c (test_normal): Use
1576         gdb_mkostemp_cloexec.
1577         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1578         Use gdb_mkostemp_cloexec.
1579         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1580         gnulib/config.in, gnulib/configure,
1581         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1582         gnulib/import/m4/gnulib-cache.m4,
1583         gnulib/import/m4/gnulib-comp.m4: Update.
1584         * gnulib/import/m4/mkostemp.m4: New file.
1585         * gnulib/import/m4/mkstemp.m4: Remove.
1586         * gnulib/import/mkostemp.c: New file.
1587         * gnulib/import/mkstemp.m4: Remove.
1588         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1589         mkstemp, add mkostemp.  Apply new patch.
1590         * gnulib/import/stdlib.in.h: Apply patch.
1591         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1592         New file.
1593         * dwarf-index-write.c (write_psymtabs_to_index): Use
1594         gdb_mkostemp_cloexec.
1595         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1596
1597 2018-10-27  Tom Tromey  <tom@tromey.com>
1598
1599         * unittests/mkdir-recursive-selftests.c: New file.
1600         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1601         unittests/mkdir-recursive-selftests.c.
1602         * dwarf-index-cache.c (mkdir_recursive): Move to
1603         common/filestuff.c.
1604         (index_cache::store): Check return value of mkdir_recursive.
1605         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1606         (_initialize_index_cache): Don't register test.
1607         * common/filestuff.h (mkdir_recursive): Declare.
1608         * common/filestuff.c (mkdir_recursive): Move from
1609         dwarf-index-cache.c.  Return bool.
1610
1611 2018-10-27  Tom Tromey  <tom@tromey.com>
1612
1613         * dwarf-index-write.c (write_psymtabs_to_index): Move
1614         make_temp_filename to common/pathstuff.c.
1615         * common/pathstuff.h (make_temp_filename): Declare.
1616         * common/pathstuff.c (make_temp_filename): New function, moved
1617         from dwarf-index-write.c.
1618
1619 2018-10-27  Tom Tromey  <tom@tromey.com>
1620
1621         * procfs.c (procfs_target::create_inferior): Use get_shell.
1622         * cli/cli-cmds.c (shell_escape): Use get_shell.
1623         * windows-nat.c (windows_nat_target::create_inferior): Use
1624         get_shell.
1625         * common/pathstuff.c (get_shell): New function.
1626         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1627         (fork_inferior): Use get_shell.
1628         * common/pathstuff.h (get_shell): Declare.
1629
1630 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1631
1632         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1633
1634 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1635
1636         * stack.c (print_variable_and_value_data): Add preg and treg.
1637         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1638         and update callers.
1639         (print_frame_arg_vars): Likewise.
1640         (prepare_reg): New function.
1641         (info_locals_command): Extract info print args and use them.
1642         (info_args_command): Likewise.
1643         (_initialize_stack): Modify on-line help.
1644         * symtab.c (treg_matches_sym_type_name): New function.
1645         (search_symbols): New arg t_regexp.
1646         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1647         (info_variables_command): Extract info print args and use them.
1648         (info_functions_command): Likewise.
1649         (info_types_command): Update call to symtab_symbol_info.
1650         (_initialize_symtab): Modify on-line help.
1651         * symtab.h (treg_matches_sym_type_name): New function.
1652         (search_symbols): New t_regexp arg.
1653
1654 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1655
1656         * cli-utils.c (extract_arg_maybe_quoted): New function.
1657         (extract_info_print_args): New function.
1658         (info_print_args_help): New function.
1659         (report_unrecognized_option_error): New function.
1660         * cli-utils.h (extract_arg_maybe_quoted): New function.
1661         (extract_info_print_args): New function.
1662         (info_print_args_help): New function.
1663         (report_unrecognized_option_error): New function.
1664
1665 2018-10-26  Tom Tromey  <tom@tromey.com>
1666
1667         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1668         (compute_compunit_symtab_includes): Update.
1669         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1670         (compunit_symtab_ptr): Likewise.
1671
1672 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1673
1674         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1675         default_print_auxv_entry for specific tag values.
1676
1677 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1678
1679         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1680
1681 2018-10-26  Jim Wilson  <jimw@sifive.com>
1682
1683         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1684         (riscv_linux_sigframe_init): Declare.
1685         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1686         (riscv_linux_sigframe): New.
1687         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1688         (riscv_linux_sigframe_init): Define.
1689         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1690
1691         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1692         (riscv_isa_flen): Likewise.  Drop static.
1693         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1694         (riscv_isa_flen): Likewise.  Declare.
1695
1696 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1697             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1698
1699         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1700         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1701         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1702         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1703         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1704         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1705         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1706         Define.
1707         (struct ppc_linux_features) <htm>: New field.
1708         (ppc_linux_no_features): Add initializer for htm field.
1709         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1710         new tdescs.
1711         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1712         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1713         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1714         Define if not already defined.
1715         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1716         and rs6000/powerpc-isa207-htm-vsx64l.
1717         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1718         rs6000/powerpc-isa207-htm-vsx64l.xml.
1719         * features/rs6000/power-htm-spr.xml: New file.
1720         * features/rs6000/power-htm-core.xml: New file.
1721         * features/rs6000/power64-htm-core.xml: New file.
1722         * features/rs6000/power-htm-fpu.xml: New file.
1723         * features/rs6000/power-htm-altivec.xml: New file.
1724         * features/rs6000/power-htm-vsx.xml: New file.
1725         * features/rs6000/power-htm-ppr.xml: New file.
1726         * features/rs6000/power-htm-dscr.xml: New file.
1727         * features/rs6000/power-htm-tar.xml: New file.
1728         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1729         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1730         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1731         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1732         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1733         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1734         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1735         fetch_regset with HTM regsets.
1736         (store_register, store_ppc_registers): Call store_regset with HTM
1737         regsets.
1738         (ppc_linux_nat_target::read_description): Set htm field in the
1739         features struct if needed.
1740         * ppc-linux-tdep.c: Include
1741         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1742         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1743         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1744         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1745         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1746         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1747         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1748         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1749         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1750         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1751         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1752         (ppc32_linux_ctarregset): New globals.
1753         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1754         (ppc_linux_collect_core_cpgrregset): New function.
1755         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1756         regsets.
1757         (ppc_linux_core_read_description): Check if the tm spr section is
1758         present and set htm in the features struct.
1759         (_initialize_ppc_linux_tdep): Call
1760         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1761         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1762         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1763         Declare.
1764         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1765         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1766         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1767         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1768         New fields.
1769         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1770         Likewise.
1771         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1772         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1773         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1774         New enum fields.
1775         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1776         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1777         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1778         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1779         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1780         <PPC_CTAR_REGNUM>: Likewise.
1781         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1782         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1783         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1784         (IS_CEFP_PSEUDOREG): Define.
1785         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1786         registers.  Return names for the checkpointed DFP, VSX, and EFP
1787         pseudo registers.
1788         (rs6000_pseudo_register_type): Remove initial assert and raise an
1789         internal error in the else clause instead.  Return types for the
1790         checkpointed DFP, VSX, and EFP pseudo registers.
1791         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1792         checkpointed DFP pseudo registers.
1793         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1794         checkpointed VSX pseudo registers.
1795         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1796         from efpr_pseudo_register_read and
1797         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1798         registers.
1799         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1800         Handle checkpointed DFP, VSX, and EFP registers.
1801         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1802         (efp_ax_pseudo_register_collect): New functions.
1803         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1804         register logic to new functions.  Handle checkpointed DFP, VSX,
1805         and EFP pseudo registers.
1806         (rs6000_gdbarch_init): Look for and validate the htm features.
1807         Include checkpointed DFP, VSX and EFP pseudo-registers.
1808         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1809         HTM registers.
1810
1811 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1812
1813         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1814         without altivec or fpu.
1815
1816 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1817             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1818
1819         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1820         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1821         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1822         Define if not already defined.
1823         * features/rs6000/power-ebb.xml: New file.
1824         * features/rs6000/power-linux-pmu.xml: New file.
1825         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1826         features.
1827         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1828         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1829         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1830         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1831         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1832         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1833         fetch_regset with ebb and pmu regsets.
1834         (store_register, store_ppc_registers): Call store_regset with ebb
1835         and pmu regsets.
1836         (ppc_linux_nat_target::read_description): Set isa207 field in the
1837         features struct if ebb and pmu are avaiable.
1838         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1839         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1840         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1841         and pmu regsets.
1842         (ppc_linux_core_read_description): Check if the pmu section is
1843         present and set isa207 in the features struct.
1844         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1845         (ppc32_linux_pmuregset): Declare.
1846         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1847         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1848         <ppc_sier_regnum>: New field.
1849         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1850         New enum values.
1851         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1852         values.
1853         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1854         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1855         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1856         ebb and pmu features.
1857
1858 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1859             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1860
1861         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1862         (tdesc_powerpc_isa207_vsx64l): Declare.
1863         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1864         (struct ppc_linux_features) <isa207>: New field.
1865         (ppc_linux_no_features): Add initializer for isa207 field.
1866         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1867         new tdescs.
1868         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1869         (NT_PPC_TAR): Define if not already defined.
1870         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1871         rs6000/powerpc-isa207-vsx64l.
1872         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1873         rs6000/powerpc-isa207-vsx64l.xml.
1874         * features/rs6000/power-tar.xml: New file.
1875         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1876         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1877         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1878         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1879         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1880         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1881         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1882         fetch_regset with the TAR regset.
1883         (store_register, store_ppc_registers): Call store_regset with the
1884         TAR regset.
1885         (ppc_linux_nat_target::read_description): Set isa207 field in the
1886         features struct if needed.
1887         * ppc-linux-tdep.c: Include
1888         features/rs6000/powerpc-isa207-vsx32l.c and
1889         features/rs6000/powerpc-isa207-vsx64l.c.
1890         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1891         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1892         regset.
1893         (ppc_linux_core_read_description): Check if the tar section is
1894         present and set isa207 in the features struct.
1895         (_initialize_ppc_linux_tdep): Call
1896         initialize_tdesc_powerpc_isa207_vsx32l and
1897         initialize_tdesc_powerpc_isa207_vsx64l.
1898         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1899         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1900         (enum) <PPC_TAR_REGNUM>: New enum value.
1901         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1902         feature.
1903         (ppc_process_record_op31): Record changes to TAR.
1904
1905 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1906             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1907
1908         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1909         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1910         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1911         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1912         (struct ppc_linux_features) <ppr_dscr>: New field.
1913         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1914         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1915         new tdescs.
1916         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1917         Define if not already defined.
1918         * features/Makefile (WHICH): Add
1919         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1920         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1921         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1922         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1923         * features/rs6000/power-dscr.xml: New file.
1924         * features/rs6000/power-ppr.xml: New file.
1925         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1926         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1927         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1928         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1929         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1930         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1931         * ppc-linux-nat.c: Include <sys/uio.h>.
1932         (fetch_regset, store_regset, check_regset): New functions.
1933         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1934         DSCR and PPR regsets.
1935         (store_register, store_ppc_registers): Call store_regset with
1936         DSCR and PPR regsets.
1937         (ppc_linux_get_hwcap2): New function.
1938         (ppc_linux_nat_target::read_description): Call
1939         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1940         features struct if needed.
1941         * ppc-linux-tdep.c: Include
1942         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1943         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1944         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1945         (ppc32_linux_dscrregset): New globals.
1946         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1947         and dscr regsets.
1948         (ppc_linux_core_read_description): Check if the ppr and dscr
1949         sections are present and set ppr_dscr in the features struct.
1950         (_initialize_ppc_linux_tdep): Call
1951         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1952         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1953         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1954         (ppc32_linux_dscrregset): Declare.
1955         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1956         <ppc_dscr_regnum>: New field.
1957         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1958         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1959         and dscr features.
1960         (ppc_process_record_op31): Record changes to PPR and DSCR.
1961
1962 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1963
1964         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1965         second initializer line for the have_* variables.  Initialize
1966         have_fpu to 0 instead of 1.
1967
1968 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1969
1970         * arch/ppc-linux-common.c (ppc_linux_match_description):
1971         Parenthesize tdesc assignements and indent them properly.
1972
1973 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1974
1975         * ppc-linux-nat.c (fetch_register): Change if statement to else
1976         if.
1977         (store_register): Likewise.
1978
1979 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1980
1981         * rs6000-tdep.c: Remove reggroups.h include.
1982         (rs6000_pseudo_register_reggroup_p): Remove.
1983         (rs6000_gdbarch_init): Remove call to
1984         set_tdesc_pseudo_register_reggroup_p.
1985
1986 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1987
1988         * reggroups.c (default_register_reggroup_p): Return true for
1989         decfloat registers and float_reggroup.
1990
1991 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1992
1993         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1994         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1995         ppc_linux_collect_vrregset by regcache_collect_regset.
1996
1997 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1998
1999         * linux-tdep.c (linux_collect_regset_section_cb): Use
2000         std::vector<gdb_byte> instead of char * and malloc for buf.
2001         Remove xfree.
2002
2003 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2004
2005         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2006         symtab_start instead of always using language_unknown.
2007
2008 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2009
2010         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2011         READ_P parameter, catch and ignore register access errors from
2012         either the old or new MISA location.
2013         (riscv_has_feature): Update call to riscv_read_misa_reg.
2014
2015 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2016
2017         * python/py-function.c (convert_values_to_python): Return
2018         gdbpy_ref<>.  Add header comment.
2019         (fnpy_call): Adjust.
2020
2021 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2022
2023         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2024         (cmdpy_completer_handle_brkchars): Adjust.
2025         (cmdpy_completer): Adjust.
2026
2027 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2028
2029         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2030         Pass correct regnum to raw_supply_zeroed.
2031
2032 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2033
2034         * regcache.c (cooked_read_test): Add CSKY to the list of
2035         architectures with a save_reggroup
2036
2037 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2038
2039         PR gdb/23368
2040         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2041         transfer terminal state from old new new inferior.
2042         * terminal.h (swap_terminal_info): New function.
2043         * inflow.c (swap_terminal_info): New function.
2044
2045 2018-10-23  Tom Tromey  <tom@tromey.com>
2046
2047         * record-btrace.c (get_thread_current_frame_id): Rename from
2048         get_thread_current_frame.  Return a frame_id.
2049         (record_btrace_start_replaying): Update.
2050
2051 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2052
2053         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2054         for CSRs.
2055
2056 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2057
2058         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2059         have_nonsteppable_watchpoint attribute to 1.
2060
2061 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2062
2063         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2064         register names.
2065         (struct register_alias): Rename to...
2066         (struct riscv_register_alias): ...this, and update comment.
2067         (riscv_register_aliases): Update type, and alias names.  Remove
2068         CSR names from this list.
2069         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2070         register names.  Add an extra assertion.
2071         (riscv_is_regnum_a_named_csr): New function.
2072         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2073
2074 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2075
2076         * configure.tgt: Add configuration for s12z.
2077         * s12z-tdep.c:  New file.
2078         * NEWS: Mention new target.
2079
2080 2018-10-22  Jim Wilson  <jimw@sifive.com>
2081
2082         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2083         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2084
2085         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2086         (riscv_register_type): Use them.
2087         (riscv_print_one_register_info): Handle union of floats same as float.
2088         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2089         riscv_fpreg_q_type fields.
2090
2091 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2092
2093         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2094         * gdbarch.h: Re-generate.
2095         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2096         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2097         * eval.c (evaluate_subexp_standard): Likewise.
2098         * findvar.c (value_of_register): Likewise.
2099         (value_of_register_lazy): Likewise.
2100         (address_from_register): Likewise.
2101         * frame.c (get_frame_register_bytes): Likewise.
2102         * gdbarch-selftests.c (register_to_value_test): Likewise.
2103         * h8300-tdep.c (h8300_register_type): Likewise.
2104         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2105         (i386_svr4_reg_to_regnum): Likewise.
2106         * infcmd.c (default_print_registers_info): Likewise.
2107         (registers_info): Likewise.
2108         (print_vector_info): Likewise.
2109         (default_print_float_info): Likewise.
2110         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2111         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2112         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2113         (mi_cmd_data_list_changed_registers): Likewise.
2114         (mi_cmd_data_list_register_values): Likewise.
2115         (mi_cmd_data_write_register_values): Likewise.
2116         (mi_cmd_trace_frame_collected): Likewise.
2117         * mips-tdep.c (print_gp_register_row): Likewise.
2118         (mips_print_registers_info): Likewise.
2119         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2120         * regcache.c (init_regcache_descr): Likewise.
2121         (register_size): Likewise.
2122         (register_dump::dump): Likewise.
2123         (cooked_read_test): Likewise.
2124         (cooked_write_test): Likewise.
2125         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2126         (rs6000_gdbarch_init): Likewise.
2127         * stabsread.c (stab_reg_to_regnum): Likewise.
2128         * stack.c (info_frame_command): Likewise.
2129         * target-descriptions.c (tdesc_register_name): Likewise.
2130         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2131         * tui/tui-regs.c (tui_show_register_group): Likewise.
2132         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2133         (user_reg_map_regnum_to_name): Likewise.
2134         (value_of_user_reg): Likewise.
2135         (maintenance_print_user_registers): Likewise.
2136         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2137         (xtensa_register_name): Likewise.
2138         (xtensa_register_type): Likewise.
2139         (xtensa_reg_to_regnum): Likewise.
2140         (xtensa_pseudo_register_read): Likewise.
2141         (xtensa_pseudo_register_write): Likewise.
2142
2143 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2144
2145         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2146         correctly-sized buffer with raw_read.
2147         (amd64_pseudo_register_write): Use correctly-sized buffer for
2148         raw_read/raw_write.
2149
2150 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2151
2152         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2153         in add_prefix_cmd of set print type.
2154
2155 2018-10-19  Tom Tromey  <tom@tromey.com>
2156
2157         PR tui/18388:
2158         * NEWS: Mention tabset deprecation.
2159         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2160         (update_tab_width): New function.
2161         (tui_set_tab_width, tui_show_tab_width): New functions.
2162         (tui_set_tab_width_command): Use update_tab_width.
2163         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2164         Add new "set tui tab-width" command.
2165         * tui/tui-source.c (tui_set_source_content): Update.
2166         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2167         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2168         Don't declare.
2169         (tui_tab_width): Declare.
2170         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2171         (tui_set_default_tab_len): Remove.
2172
2173 2018-10-19  Tom Tromey  <tom@tromey.com>
2174
2175         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2176         (key_is_backspace, tui_getc): Don't declare.
2177         * tui/tui-io.c (key_is_start_sequence): Now static.
2178         (key_is_end_sequence, key_is_backspace): Remove.
2179         (tui_getc): Now static.
2180
2181 2018-10-19  Tom Tromey  <tom@tromey.com>
2182
2183         * symfile.c (reread_symbols): Clear "static_links".
2184
2185 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2186
2187         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2188         define.
2189         (aarch64_linux_sigframe_init): Extra boundary checks.
2190
2191 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2192
2193         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2194         the possibly non-existent tdesc type 'vec128', but the type of raw
2195         register v16 instead.
2196
2197 2018-10-19  Gary Benson <gbenson@redhat.com>
2198
2199         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2200
2201 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2202
2203         PR cli/23785
2204         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2205         NULL.
2206
2207 2018-10-17  Paul Koning  <paul_koning@dell.com>
2208
2209         * charset.c (convert_between_encodings): Fix unsigned overflow.
2210
2211 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2212
2213         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2214         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2215         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2216         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2217         New functions.
2218         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2219         and fbsd_info_proc_mappings_header.
2220         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2221         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2222         New.
2223
2224 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2225
2226         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2227         Solaris Maintainer.
2228
2229 2018-10-15  Tom Tromey  <tom@tromey.com>
2230
2231         * tui/tui.c (strcat_to_buf): Remove casts.
2232         * tui/tui-winsource.c (tui_show_source_line)
2233         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2234         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2235         * tui/tui-windata.c (tui_first_data_item_displayed)
2236         (tui_delete_data_content_windows, tui_erase_data_content)
2237         (tui_display_all_data, tui_display_data_from)
2238         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2239         * tui/tui-win.c (tui_set_win_height)
2240         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2241         casts.
2242         * tui/tui-win.c (tui_resize_all): Remove casts.
2243         (tui_scroll_backward_command, tui_set_focus)
2244         (tui_set_tab_width_command): Likewise.
2245         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2246         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2247         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2248         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2249         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2250         Remove casts.
2251
2252 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2253
2254         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2255         AArch64/ARM maintainer.
2256
2257 2018-10-11  Gary Benson <gbenson@redhat.com>
2258
2259         * interps.h (interp::m_name): Make private and mutable.
2260         * interps.c (interp::~interp): Free m_name.
2261
2262 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2263             Simon Marchi <simark@simark.ca>
2264
2265         * README (`configure' options): Add documentation for new
2266         "--enable-unit-tests" option.
2267         * acinclude.m4: Include "selftest.m4".
2268         * configure: Regenerate.
2269         * configure.ac: Use "GDB_AC_SELFTEST".
2270         * maint.c (maintenance_selftest): Update message informing
2271         that selftests have been disabled.
2272         (maintenance_info_selftests): Likewise.
2273         * selftest.m4: New file.
2274
2275 2018-10-10  Gary Benson <gbenson@redhat.com>
2276
2277         * remote.c (remote_target::remote_send_printf): Add
2278         missing va_end found by Coverity.
2279
2280 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2281
2282         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2283
2284 2018-10-09  Tom Tromey  <tom@tromey.com>
2285
2286         * configure: Rebuild.
2287         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2288         * NEWS: Update --enable-ubsan documentation.
2289
2290 2018-10-09  Gary Benson <gbenson@redhat.com>
2291
2292         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2293         found by Coverity.
2294
2295 2018-10-08  Tom Tromey  <tom@tromey.com>
2296
2297         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2298         variable.
2299         (riscv_fbsd_init_abi): Likewise.
2300
2301 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2302         * valops.c (value_struct_elt_for_reference): Rename local variable
2303         to work around the shadowing a previous local warning.
2304
2305 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2306
2307         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2308         * NEWS: Mention new FreeBSD/riscv native configuration.
2309         * configure.host: Add riscv*-*-freebsd*.
2310         * configure.nat: Likewise.
2311         * riscv-fbsd-nat.c: New file.
2312
2313 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2314
2315         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2316         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2317         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2318         * NEWS: Mention new FreeBSD/riscv target.
2319         * configure.tgt: Add riscv*-*-freebsd*.
2320         * riscv-fbsd-tdep.c: New file.
2321         * riscv-fbsd-tdep.h: New file.
2322
2323 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2324
2325         * regcache.h (struct regcache_map_entry): Note that this type can
2326         be used with traditional frame caches.
2327         * trad-frame.c (trad_frame_set_reg_regmap): New.
2328         * trad-frame.h (trad_frame_set_reg_regmap): New.
2329
2330 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2331
2332         PR c++/16841
2333         * valops.c (get_virtual_base_offset): New function.
2334         (value_struct_elt_for_reference): Use it to get virtual base offset
2335         and add it in calculating class member address.
2336
2337 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2338
2339         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2340         (check_producer): Check if the producer is codewarrior.
2341         (producer_is_codewarrior): New function.
2342         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2343         produced by codewarrior.
2344         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2345
2346 2018-10-06  Tom Tromey  <tom@tromey.com>
2347
2348         PR python/19399:
2349         * python/py-inferior.c: Add "architecture" entry.
2350         (infpy_architecture): New function.
2351
2352 2018-10-06  Tom Tromey  <tom@tromey.com>
2353
2354         PR python/21765:
2355         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2356         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2357         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2358         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2359
2360 2018-10-06  Tom Tromey  <tom@tromey.com>
2361
2362         PR build/17077:
2363         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2364         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2365         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2366         #include.
2367
2368 2018-10-06  Tom Tromey  <tom@tromey.com>
2369
2370         * python/py-breakpoint.c (bppy_get_location): Handle a
2371         bp_breakpoint without a location.
2372
2373 2018-10-06  Tom Tromey  <tom@tromey.com>
2374
2375         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2376         (_RegEx): Reformat help text.
2377         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2378         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2379         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2380         text.
2381         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2382         (EnableXMethod, DisableXMethod): Remove help indentation.
2383         Capitalize meta-syntactic variables.
2384         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2385         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2386         Capitalize meta-syntactic variables.
2387         * python/lib/gdb/command/explore.py (ExploreCommand)
2388         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2389         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2390         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2391         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2392         Remove help indentation.
2393         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2394         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2395         (DisableFrameFilter, SetFrameFilterPriority)
2396         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2397
2398 2018-10-06  Tom Tromey  <tom@tromey.com>
2399
2400         PR tui/28819:
2401         * tui/tui-io.c (gdb_wgetch): New function.
2402         (tui_mld_getc, tui_getc): Use it.
2403
2404 2018-10-05  Tom Tromey  <tom@tromey.com>
2405
2406         * sol-thread.c (sol_thread_target::wait): Rename inner
2407         "save_ptid".
2408
2409 2018-10-04  Tom Tromey  <tom@tromey.com>
2410
2411         * configure: Rebuild.
2412         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2413
2414 2018-10-04  Tom Tromey  <tom@tromey.com>
2415
2416         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2417         declaration of "block".
2418
2419 2018-10-04  Tom Tromey  <tom@tromey.com>
2420
2421         * common/filestuff.c (fdwalk): Remove inner declaration of
2422         "result".
2423
2424 2018-10-04  Tom Tromey  <tom@tromey.com>
2425
2426         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2427         "structs_addr" and hoist declaration.
2428
2429 2018-10-04  Tom Tromey  <tom@tromey.com>
2430
2431         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2432         variable "size".
2433
2434 2018-10-04  Tom Tromey  <tom@tromey.com>
2435
2436         * mdebugread.c (parse_partial_symbols): Use std::string.
2437
2438 2018-10-04  Tom Tromey  <tom@tromey.com>
2439
2440         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2441         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2442         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2443         header.
2444         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2445         more inner scope.
2446         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2447         * varobj.c (varobj_update): Rename inner "newobj",
2448         "type_changed".
2449         * valprint.c (generic_emit_char): Rename inner "buf".
2450         * valops.c (find_overload_match): Rename inner "temp".
2451         (value_struct_elt_for_reference): Declare "v" in more inner
2452         scope.
2453         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2454         * unittests/array-view-selftests.c (run_tests): Rename inner
2455         "vec".
2456         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2457         header.
2458         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2459         "tsv" in more inner scope.
2460         (print_one_static_tracepoint_marker): Rename inner
2461         "tuple_emitter".
2462         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2463         (tic6x_push_dummy_call): Don't redeclare "addr".
2464         * target-float.c: Declare "dto" lower.
2465         * symtab.c (lookup_local_symbol): Rename inner "sym".
2466         (find_pc_sect_line): Rename inner "pc".
2467         * stack.c (print_frame): Don't redeclare "gdbarch".
2468         (return_command): Rename inner "gdbarch".
2469         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2470         "sp".
2471         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2472         header.
2473         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2474         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2475         scope.
2476         * remote.c (remote_target::update_thread_list): Don't redeclare
2477         "tp".
2478         (remote_target::process_initial_stop_replies): Rename inner
2479         "thread".
2480         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2481         (remote_target::wait_as): Don't redeclare "stop_reply".
2482         (remote_target::get_thread_local_address): Rename inner
2483         "result".
2484         (remote_target::get_tib_address): Likewise.
2485
2486         * regcache.c (cooked_read_test): Rename "regnum".
2487         * record-btrace.c (cmd_record_btrace_start): Rename inner
2488         "exception".
2489         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2490         loop header.
2491         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2492         header.
2493         (ppu2spu_sniffer): Rename inner "buf".
2494         * parse.c (operator_check_standard): Rename inner "type",
2495         "objfile".
2496         * p-valprint.c (pascal_val_print): Introduce new scope for
2497         "low_bound", "high_bound".
2498         * p-exp.y (yylex): Declare "i" in loop header.
2499         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2500         Lower declaration of "s".
2501         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2502         header.
2503         (nios2_push_dummy_call): Rename "len".
2504         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2505         "buf".
2506         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2507         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2508         (linux_xfer_osdata_modules): Likewise.
2509         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2510         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2511         (mips_o64_push_dummy_call): Likewise.
2512         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2513         "op".
2514         * mi/mi-main.c (list_available_thread_groups): Rename inner
2515         "tuple_emitter".
2516         (mi_cmd_data_read_memory): Rename inner "opts".
2517         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2518         "tuple_emitter".
2519         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2520         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2521         more inner scope.
2522         (parse_partial_symbols): Rename inner "pst", "p", "name"
2523         * main.c (captured_main_1): Rename inner "i"s.
2524         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2525         "oso2".
2526         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2527         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2528         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2529         (handle_signal_stop): Rename inner "gdbarch".
2530         (handle_command): Declare "signum" in loop header.
2531         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2532         "status".
2533         (examine_prologue): Rename inner "sol" and "sof".
2534         (ia64_extract_return_value): Rename inner "val".  Declare another
2535         "val" in a more inner scope.
2536         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2537         inner scope.
2538         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2539         "except".
2540         * findvar.c (default_read_var_value): Don't redeclare "addr".
2541         * f-exp.y (yylex): Declare "i" in loop header.
2542         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2543         Rename inner "type", "expect_type".
2544         (evaluate_subexp_for_sizeof): Rename inner "pc".
2545         * elfread.c (elf_symfile_read): Rename inner "abfd".
2546         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2547         "bytes_read".
2548         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2549         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2550         (dwarf_decode_line_header): Rename inner "lh".
2551         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2552         "offset".  Declare "i" in loop header.
2553         (disassemble_dwarf_expression): Rename inner "addr_size".
2554         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2555         inner "result".
2556         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2557         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2558         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2559         "inner_list_emitter".
2560         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2561         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2562         declaration in a block.
2563         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2564         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2565         "obstack_final_size".
2566         * cp-support.c (inspect_type): Declare "i" in loop header.
2567         * compile/compile.c (compile_instance::insert_symbol_error):
2568         Rename inner "e".
2569         * common/agent.c (agent_run_command): Remove inner "ret"
2570         declaration.
2571         * coffread.c (coff_symfile_read): Rename inner "name".
2572         (coff_symfile_read): Rename inner "abfd".
2573         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2574         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2575         "high".
2576         * c-exp.y (lex_one_token): Move "len" declaration lower.
2577         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2578         "gdbarch".
2579         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2580         "b".
2581         (watch_command_1): Declare "mark" later.
2582         (clear_command): Don't shadow "a" or "b".
2583         (delete_command): Rename inner "b".
2584         (delete_trace_command): Likewise.
2585         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2586         "op".
2587         (arm_gdbarch_init): Remove inner "e_flags".
2588         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2589         "offset" in inner blocks.
2590
2591 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2592
2593         * dwarf-index-write.c (file_write): Don't write if the vector is
2594         empty.
2595
2596 2018-10-05  Tom de Vries  <tdevries@suse.de>
2597
2598         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2599         PyArg_ParseTuple call.
2600
2601 2018-10-05  Tom de Vries  <tdevries@suse.de>
2602
2603         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2604         PyArg_ParseTuple call.
2605
2606 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2607
2608         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2609         to avoid exceeding 80 characters per line limit.
2610
2611 2018-10-04  Tom Tromey  <tom@tromey.com>
2612
2613         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2614         (reread_symbols): Update.
2615         * complaints.h (clear_complaints): Remove argument.
2616         * complaints.c (enum complaint_series): Remove.
2617         (series): Remove global.
2618         (complaint_internal): Update.
2619         (clear_complaints): Remove argument.
2620
2621 2018-10-04  Tom Tromey  <tom@tromey.com>
2622
2623         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2624         debugging symbols" message if there is a separate debug objfile.
2625
2626 2018-10-04  Tom Tromey  <tom@tromey.com>
2627
2628         PR cli/19551:
2629         * symfile.c (symbol_file_add_with_addrs): Update output.
2630         * psymtab.c (require_partial_symbols): Update output.
2631
2632 2018-10-04  Tom Tromey  <tom@tromey.com>
2633
2634         PR cli/22234:
2635         * complaints.c: Emit \n.
2636
2637 2018-10-04  Tom Tromey  <tom@tromey.com>
2638
2639         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2640         (separate_debug_file_exists, find_separate_debug_file)
2641         (add_symbol_file_command, reread_symbols, allocate_symtab)
2642         (allocate_compunit_symtab): Use filtered printing, not
2643         unfiltered.
2644         * psymtab.c (require_partial_symbols, dump_psymtab)
2645         (allocate_psymtab): Use filtered printing, not unfiltered.
2646
2647 2018-10-04  Tom Tromey  <tom@tromey.com>
2648
2649         * complaints.c (complaint_internal): Correctly check complaint
2650         count.
2651
2652 2018-10-04  Tom Tromey  <tom@tromey.com>
2653
2654         * complaints.h (struct complaints): Remove declaration.
2655         * complaints.c (clear_complaints): Remove an unused variable.
2656
2657 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2658
2659         * MAINTAINERS (Write After Approval): Add self.
2660
2661 2018-10-03  Tom Tromey  <tom@tromey.com>
2662
2663         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2664         "buffer_contents".
2665         * coffread.c (coff_symtab_read): Initialize "newobj".
2666
2667 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2668
2669         * dwarf2read.c (read_func_scope): Remove struct keyword in
2670         range-based for.
2671
2672 2018-10-03  Tom Tromey  <tom@tromey.com>
2673
2674         * README: Mention --enable-ubsan.
2675         * NEWS: Mention --enable-ubsan.
2676         * acinclude.m4: Include sanitize.m4.
2677         * configure: Rebuild.
2678         * configure.ac: Call AM_GDB_UBSAN.
2679         * sanitize.m4: New file.
2680
2681 2018-10-03  Tom Tromey  <tom@tromey.com>
2682
2683         * expression.h (enum exp_opcode): Use uint8_t as base type.
2684         * expprint.c (op_name): Handle invalid opcodes.
2685
2686 2018-10-03  Tom Tromey  <tom@tromey.com>
2687
2688         * parse.c (prefixify_expression): Add assert.
2689         (parse_exp_in_context_1): Throw exception if the expression is
2690         empty.
2691
2692 2018-10-03  Tom Tromey  <tom@tromey.com>
2693
2694         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2695
2696 2018-10-03  Tom Tromey  <tom@tromey.com>
2697
2698         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2699
2700 2018-10-03  Tom Tromey  <tom@tromey.com>
2701
2702         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2703         unsigned.
2704
2705 2018-10-03  Tom Tromey  <tom@tromey.com>
2706
2707         * findvar.c (extract_integer): Do work in an unsigned type.
2708
2709 2018-10-03  Tom Tromey  <tom@tromey.com>
2710
2711         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2712         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2713         base type.
2714         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2715         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2716         type.
2717         * c-lang.h (enum c_string_type_values): Use unsigned as base
2718         type.
2719         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2720
2721 2018-10-03  Tom Tromey  <tom@tromey.com>
2722
2723         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2724         <~dwarf2_frame_state_reg_info>: Update.
2725         <dwarf2_frame_state_reg_info>: Update.
2726         <alloc_regs>: Add assertion.  Update.
2727         <reg>: Now a std::vector.
2728         <num_regs>: Remove.
2729         <swap>: Update.
2730         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2731         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2732
2733 2018-10-03  Tom Tromey  <tom@tromey.com>
2734
2735         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2736
2737 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2738
2739         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2740
2741 2018-10-02  Tom Tromey  <tom@tromey.com>
2742
2743         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2744
2745 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2746
2747         * NEWS: Mention changed commands.
2748         * ser-uds.c: New file.
2749         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2750         * configure: Regenerate.
2751         * Makefile.in: Add new file.
2752         * serial.c (serial_open): Check if filename is a socket
2753         and lookup the appropriate interface accordingly.
2754
2755 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2756
2757         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2758         define.
2759         (AARCH64_EXTRA_MAGIC): Likewise.
2760         (AARCH64_FPSIMD_MAGIC): Likewise.
2761         (AARCH64_SVE_MAGIC): Likewise.
2762         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2763         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2764         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2765         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2766         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2767         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2768         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2769         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2770         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2771         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2772         (read_aarch64_ctx): Add function.
2773         (aarch64_linux_sigframe_init): Detect FP registers.
2774
2775 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2776
2777         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2778         (AARCH64_D0_REGNUM): Likewise.
2779         (AARCH64_S0_REGNUM): Likewise.
2780         (AARCH64_H0_REGNUM): Likewise.
2781         (AARCH64_B0_REGNUM): Likewise.
2782         (AARCH64_SVE_V0_REGNUM): Likewise.
2783         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2784         (AARCH64_D0_REGNUM): Likewise.
2785         (AARCH64_S0_REGNUM): Likewise.
2786         (AARCH64_H0_REGNUM): Likewise.
2787         (AARCH64_B0_REGNUM): Likewise.
2788         (AARCH64_SVE_V0_REGNUM): Likewise.
2789
2790 2018-10-01  Gary Benson <gbenson@redhat.com>
2791
2792         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2793         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2794         prfpregset_t instead of gdb_prfpregset_t.
2795         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2796         * configure, config.in: Rebuild.
2797
2798 2018-10-01  Gary Benson <gbenson@redhat.com>
2799
2800         * common/gdb_proc_service.h: New file, factored out from...
2801         * gdb_proc_service.h: Moved common code to the above file.
2802         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2803
2804 2018-10-01  Gary Benson <gbenson@redhat.com>
2805
2806         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2807         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2808
2809 2018-10-01  Gary Benson <gbenson@redhat.com>
2810
2811         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2812         (AC_CHECK_HEADERS): Check for linux/elf.h.
2813         * configure, config.in: Rebuild.
2814         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2815         doesn't define elf_fpregset_t.
2816
2817 2018-10-01  Gary Benson <gbenson@redhat.com>
2818
2819         * gdb_proc_service.h: Whitespace change.
2820
2821 2018-10-01  Tom Tromey  <tom@tromey.com>
2822
2823         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2824         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2825         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2826
2827 2018-10-01  Tom Tromey  <tom@tromey.com>
2828
2829         * README: Minor change.
2830
2831 2018-09-30  Pedro Alves  <palves@redhat.com>
2832
2833         * darwin-nat-info.c (darwin_debug_regions_recurse)
2834         (info_mach_exceptions_command): Remove unused local variables.
2835         * darwin-nat.c (darwin_decode_notify_message)
2836         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2837         (darwin_stop_inferior, darwin_setup_exceptions)
2838         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2839         (darwin_nat_target::attach, darwin_nat_target::detach)
2840         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2841         local variables.
2842         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2843         variables.
2844
2845 2018-09-29  Tom Tromey  <tom@tromey.com>
2846
2847         * README: Remove some leftover text.
2848
2849 2018-09-29  Tom Tromey  <tom@tromey.com>
2850
2851         * PROBLEMS: Rewrite.
2852         * README: Update.
2853
2854 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2855
2856         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2857         case with explicit breakpoint kind.
2858         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2859         'additional_info' and related logic.
2860         (riscv_debug_breakpoints): New variable.
2861         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2862         instruction to determine the breakpoint kind.
2863         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2864         flag.  Update description of 'set/show riscv
2865         use-compressed-breakpoints' flag.
2866
2867 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2868
2869         (NEWS): Mention changes to frame related commands.
2870         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2871         (add_prefix_cmd_suppress_notification): New function.
2872         (add_com_suppress_notification): Call
2873         add_cmd_suppress_notification.
2874         * command.h (add_cmd_suppress_notification): Declare.
2875         (add_prefix_cmd_suppress_notification): Declare.
2876         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2877         (parse_frame_specification): Moved from stack.c, with
2878         simplification to handle a single argument.
2879         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2880         switch to the selected frame.  Add a header comment.
2881         * stack.c: Remove 'safe-ctype.h' include.
2882         (find_frame_for_function): Add declaration.
2883         (find_frame_for_address): New function.
2884         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2885         (frame_selection_by_function_completer): New function.
2886         (info_frame_command): Rename to...
2887         (info_frame_command_core): ...this, and update parameter types.
2888         (select_frame_command): Rename to...
2889         (select_frame_command_core): ...this, and update parameter types.
2890         (frame_command): Rename to...
2891         (frame_command_core): ...this, and update parameter types.
2892         (class frame_command_helper): New class to wrap implementations of
2893         frame related sub-commands.
2894         (frame_apply_cmd_list): New static global.
2895         (frame_cmd_list): Make static.
2896         (select_frame_cmd_list): New global for sub-commands.
2897         (info_frame_cmd_list): New global for sub-commands.
2898         (_initialize_stack): Register sub-commands for 'frame',
2899         'select-frame', and 'info frame'.  Update 'frame apply' commands
2900         to use frame_apply_cmd_list.  Move function local static
2901         frame_apply_list to file static frame_apply_cmd_list for
2902         consistency.
2903         * stack.h (select_frame_command): Delete declarationn.
2904         (select_frame_for_mi): Declare new function.
2905
2906 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2907
2908         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2909         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2910         and NOP.
2911
2912 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2913
2914         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2915
2916 2018-09-26  Tom Tromey  <tom@tromey.com>
2917
2918         * valops.c (auto_abandon): Remove dead code.
2919
2920 2018-09-26  Tom Tromey  <tom@tromey.com>
2921
2922         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2923
2924 2018-09-24  Tom Tromey  <tom@tromey.com>
2925
2926         * common/pathstuff.c (get_standard_cache_dir): Make
2927         "xdg_cache_home" and "home" const.
2928         * top.c (init_history): Make "tmpenv" const.
2929         * main.c (get_init_files): Make "homedir" const.
2930
2931 2018-09-23  Tom Tromey  <tom@tromey.com>
2932
2933         PR python/18852:
2934         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2935
2936 2018-09-23  Tom Tromey  <tom@tromey.com>
2937
2938         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2939         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2940         * python/python-internal.h (gdbpy_handle_exception): Declare.
2941         * python/py-utils.c (gdbpy_handle_exception): New function.
2942
2943 2018-09-23  Tom Tromey  <tom@tromey.com>
2944
2945         PR python/17284:
2946         * python/py-type.c (typy_template_argument): Check for negative
2947         argument number.
2948
2949 2018-09-23  Tom Tromey  <tom@tromey.com>
2950
2951         PR python/14062:
2952         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2953
2954 2018-09-23  Tom Tromey  <tom@tromey.com>
2955
2956         PR python/18170:
2957         * python/py-value.c (valpy_int): Allow conversion from pointer
2958         type.
2959
2960 2018-09-23  Tom Tromey  <tom@tromey.com>
2961
2962         PR python/20126:
2963         * python/py-value.c (valpy_int): Respect type sign.
2964
2965 2018-09-23  Tom Tromey  <tom@tromey.com>
2966
2967         PR python/18352;
2968         * python/py-value.c (valpy_float): Allow conversions from int or
2969         char.
2970         (valpy_int, valpy_long): Allow conversions from float.
2971
2972 2018-09-23  Tom Tromey  <tom@tromey.com>
2973
2974         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2975         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2976
2977 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2978
2979         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2980         __sighndlr.
2981         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2982
2983 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2984
2985         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2986         target_terminal::ours().
2987
2988 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2989
2990         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2991         of vl to ULONGEST.
2992
2993 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2994
2995         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2996         redundant condition.
2997
2998 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2999
3000         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3001
3002         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3003         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3004         * sol-thread.c (ps_pdmodel): Don't guard definition.
3005
3006         * procfs.c: Fix formatting.
3007
3008         * procfs.c (sysset_t_alloc): Remove.
3009         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3010         (procfs_debug_inferior): Likewise.
3011         (procfs_set_exec_trap): Likewise.
3012         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3013         (proc_set_traced_sysexit): Likewise.
3014
3015         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3016         (dead_procinfo): Likewise.
3017         (proc_warn): Likewise.
3018         (proc_error): Likewise.
3019         (proc_get_LDT_entry): Likewise.
3020         (do_attach): Likewise.
3021         (procfs_target::pid_to_str): Likewise.
3022         (iterate_over_mappings): Likewise.
3023
3024         * procfs.c (create_procinfo): Fix ARI warning.
3025         (proc_get_status): Likewise.
3026         (proc_stop_process): Likewise.
3027         (proc_run_process): Likewise.
3028         (proc_kill): Likewise.
3029         (proc_get_LDT_entry): Likewise.
3030         (procfs_find_LDT_entry): Likewise.
3031         (proc_update_threads): Likewise.
3032         (proc_iterate_over_threads): Likewise.
3033         (do_attach): Likewise.
3034         (procfs_xfer_memory): Likewise.
3035         (invalidate_cache): Likewise.
3036         (procfs_target::resume): Likewise.
3037         (procfs_init_inferior): Likewise.
3038         (procfs_set_exec_trap): Likewise.
3039         (procfs_target::thread_alive): Likewise.
3040         (procfs_target::pid_to_exec_file): Likewise.
3041         (iterate_over_mappings): Likewise.
3042         (procfs_target::make_corefile_notes): Likewise.
3043         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3044
3045         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3046         (procfs_find_LDT_entry): Likewise.
3047         * sol-thread.c (ps_lgetLDT): Likewise.
3048
3049 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3050
3051         PR tdep/17903
3052         * procfs.c (procfs_target): Declare pid_to_exec_file.
3053         (procfs_target::pid_to_exec_file): New.
3054
3055 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3056
3057         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3058         renaming.
3059         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3060         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3061
3062 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3063
3064         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3065         (supply_fpregset, fill_fpregset): Move ...
3066         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3067         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3068         Remove references to ioctl-based procfs.
3069         Include <sys/reg.h>.
3070         Remove PR_MODEL_NATIVE guards.
3071         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3072         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3073
3074 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3075
3076         PR gdb/20981:
3077         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3078         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3079         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3080
3081 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3082
3083         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3084         (fbsd_print_sockaddr_in6): Likewise.
3085
3086 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3087             Chris January  <chris.january@arm.com>
3088
3089         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3090         (evaluate_subexp_standard): Return a dummy type when
3091         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3092         OP_F77_UNDETERMINED_ARGLIST case.
3093         * expression.h (enum noside): Update comment.
3094
3095 2018-09-19  George Vasick <george.vasick@oracle.com>
3096
3097         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3098
3099 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3100             April Chin <april.chin@oracle.com>
3101             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3102
3103         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3104         uint_t lwpid_t.
3105         (create_procinfo): Print pids in /proc without leading zeros.
3106
3107 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3108
3109         * nios2-tdep.c (nios2_gcc_target_options): New.
3110         (nios2_gdb_arch_init): Install new hook.
3111
3112 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3113
3114         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3115         New file.
3116         * update-gnulib.sh: Apply patch.
3117         * configure: Re-generate.
3118
3119 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3120
3121         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3122         description.  Make "info proc" command descriptions more
3123         consistent.
3124
3125 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3126
3127         * NEWS: Mention 'info proc files' command.
3128
3129 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3130
3131         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3132         descriptors for IP_FILES and IP_ALL.
3133
3134 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3135
3136         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3137         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3138         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3139         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3140         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3141         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3142         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3143         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3144         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3145         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3146         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3147         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3148         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3149         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3150         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3151         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3152         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3153         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3154         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3155         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3156         (struct fbsd_sockaddr_un): New types.
3157         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3158         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3159         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3160         (fbsd_core_info_proc_files): New functions.
3161         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3162         IP_ALL.
3163         * fbsd-tdep.h (fbsd_info_proc_files_header)
3164         (fbsd_info_proc_files_entry): New.
3165
3166 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3167
3168         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3169         * infcmd.c (info_proc_cmd_files): New function.
3170         (_initialize_infcmd): Register 'info proc files' command.
3171
3172 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3173
3174         * gnulib/aclocal-m4-deps.mk: Re-generate.
3175         * gnulib/aclocal.m4: Re-generate.
3176         * gnulib/config.in: Re-generate.
3177         * gnulib/configure: Re-generate.
3178         * gnulib/import/Makefile.am: Re-generate.
3179         * gnulib/import/Makefile.in: Re-generate.
3180         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3181         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3182         * gnulib/import/arpa_inet.in.h: New file.
3183         * gnulib/import/inet_ntop.c: New file.
3184         * gnulib/import/m4/arpa_inet_h.m4: New file.
3185         * gnulib/import/m4/inet_ntop.m4: New file.
3186         * gnulib/import/m4/netinet_in_h.m4: New file.
3187         * gnulib/import/m4/socklen.m4: New file.
3188         * gnulib/import/m4/sockpfaf.m4: New file.
3189         * gnulib/import/m4/stdalign.m4: New file.
3190         * gnulib/import/m4/sys_uio_h.m4: New file.
3191         * gnulib/import/netinet_in.in.h: New file.
3192         * gnulib/import/stdalign.in.h: New file.
3193         * gnulib/import/sys_socket.c: New file.
3194         * gnulib/import/sys_socket.in.h: New file.
3195         * gnulib/import/sys_uio.in.h: New file.
3196         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3197         module.
3198
3199 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3200
3201         * gnulib/aclocal-m4-deps.mk: New file.
3202         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3203         deterministically.
3204
3205 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3206
3207         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3208         KVE_PATH.
3209
3210 2018-09-18  Tom Tromey  <tom@tromey.com>
3211
3212         * compile/compile-object-load.c (struct
3213         link_hash_table_cleanup_data): Add constructor and destructor.
3214         Use DISABLE_COPY_AND_ASSIGN.
3215         (~link_hash_table_cleanup_data): Rename from
3216         link_hash_table_free.  Now a destructor.
3217         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3218
3219 2018-09-18  Tom Tromey  <tom@tromey.com>
3220
3221         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3222         * compile/compile-object-load.c (struct munmap_list): Move to
3223         header file.
3224         (munmap_list::add): Rename from munmap_list_add; rewrite.
3225         (munmap_list::~munmap_list): Rename from munmap_list_free.
3226         (munmap_listp_free_cleanup): Remove.
3227         (compile_object_load): Update.
3228         * compile/compile-object-load.h (struct munmap_list): Move from
3229         compile-object-load.c.  Rewrite.
3230
3231 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3232
3233         * aarch64-tdep.c (pass_in_v): Use register size.
3234         (aarch64_extract_return_value): Likewise.
3235         (aarch64_store_return_value): Likewise.
3236
3237 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3238
3239         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3240         rlim_t.
3241
3242 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3243
3244         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3245         Fix short help line.
3246
3247 2018-09-17  Tom Tromey  <tom@tromey.com>
3248
3249         PR python/20445:
3250         * configure: Rebuild.
3251         * configure.ac: Conditionally use -DNDEBUG for Python.
3252
3253 2018-09-17  Tom Tromey  <tom@tromey.com>
3254
3255         * configure: Rebuild.
3256         * configure.ac: Use gmp as a library dependency when checking for
3257         mpfr.
3258
3259 2018-09-17  Pedro Alves  <palves@redhat.com>
3260
3261         * python/py-inferior.c (find_inferior_object): Delete.
3262
3263 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3264
3265         * compile/compile-cplus-types.c
3266         (compile_cplus_instance::enter_scope): Don't use new_scope after
3267         std::move.
3268
3269 2018-09-17  Tom Tromey  <tom@tromey.com>
3270
3271         * common/pathstuff.c (get_standard_cache_dir): Use
3272         ~/Library/Caches on macOS.
3273         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3274
3275 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3276
3277         PR python/23669
3278         * breakpoint.c (commands_cmd_element): New.
3279         (_initialize_breakpoint): Assign commands_cmd_element.
3280         * breakpoint.h (commands_cmd_element): New.
3281         * cli/cli-script.c (while_cmd_element, if_command,
3282         define_cmd_element): New.
3283         (command_name_equals): Remove.
3284         (process_next_line): Compare commands by pointer, not by name.
3285         (_initialize_cli_script): Assign the various cmd_list_element
3286         variables.
3287         * compile/compile.c (compile_cmd_element): New.
3288         (_initialize_compile): Assign compile_cmd_element.
3289         * compile/compile.h (compile_cmd_element): New.
3290         * guile/guile.c (guile_cmd_element): New.
3291         (install_gdb_commands): Assign guile_cmd_element.
3292         * guile/guile.h (guile_cmd_element): New.
3293         * python/python.c (python_cmd_element): New.
3294         (_initialize_python): Assign python_cmd_element.
3295         * python/python.h (python_cmd_element): New.
3296         * tracepoint.c (while_stepping_cmd_element): New.
3297         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3298         * tracepoint.h (while_stepping_cmd_element): New.
3299
3300 2018-09-17  Tom Tromey  <tom@tromey.com>
3301
3302         * infrun.c (save_infcall_suspend_state): Return
3303         infcall_suspend_state_up.
3304         (save_infcall_control_state): Return infcall_control_state_up.
3305         * inferior.h (save_infcall_suspend_state)
3306         (save_infcall_control_state): Declare later.  Return unique
3307         pointers.
3308
3309 2018-09-17  Tom Tromey  <tom@tromey.com>
3310
3311         * infrun.c (struct stop_context): Declare constructor,
3312         destructor, "changed" method.
3313         (stop_context::stop_context): Rename from save_stop_context.
3314         (stop_context::~stop_context): Rename from
3315         release_stop_context_cleanup.
3316         (normal_stop): Update.
3317         (stop_context::changed): Rename from stop_context_changed.  Return
3318         bool.
3319
3320 2018-09-17  Tom Tromey  <tom@tromey.com>
3321
3322         * inferior.h (struct infcall_suspend_state_deleter): New.
3323         (infcall_suspend_state_up): New typedef.
3324         (struct infcall_control_state_deleter): New.
3325         (infcall_control_state_up): New typedef.
3326         (make_cleanup_restore_infcall_suspend_state)
3327         (make_cleanup_restore_infcall_control_state): Don't declare.
3328         * infcall.c (call_function_by_hand_dummy): Update.
3329         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3330         (make_cleanup_restore_infcall_suspend_state): Remove.
3331         (do_restore_infcall_control_state_cleanup)
3332         (make_cleanup_restore_infcall_control_state): Remove.
3333
3334 2018-09-17  Tom Tromey  <tom@tromey.com>
3335
3336         * gdbthread.h (struct thread_control_state): Add initializer.
3337         (class thread_info) <control>: Remove initializer.
3338         * inferior.h (struct inferior_control_state): Add initializer.
3339         (class inferior) <control>: Remove initializer.
3340         (exit_inferior_1): Update.
3341         * infrun.c (struct infcall_control_state): Add constructors.
3342         (save_infcall_control_state): Use new.
3343         (restore_infcall_control_state, discard_infcall_control_state):
3344         Use delete.
3345
3346 2018-09-17  Tom Tromey  <tom@tromey.com>
3347
3348         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3349         unique_ptr.
3350         <siginfo_data>: Now a unique_xmalloc_ptr.
3351         (save_infcall_suspend_state, restore_infcall_suspend_state)
3352         (discard_infcall_suspend_state)
3353         (get_infcall_suspend_state_regcache): Update.
3354
3355 2018-09-17  Tom Tromey  <tom@tromey.com>
3356
3357         * gdbthread.h (struct thread_suspend_state): Add initializers.
3358         (class thread_info) <suspend>: Remove initializer.
3359         * infrun.c (struct infcall_suspend_state): Add initializers.
3360         (save_infcall_suspend_state): Use new.
3361         (discard_infcall_suspend_state): Use delete.
3362
3363 2018-09-16  Tom Tromey  <tom@tromey.com>
3364
3365         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3366         Remove.
3367         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3368         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3369         (py_varobj_iter_new): Likewise.
3370         (py_varobj_get_iterator): Use gdbpy_ref.
3371
3372 2018-09-16  Tom Tromey  <tom@tromey.com>
3373
3374         * python/py-threadevent.c (py_get_event_thread): Simplify.
3375         * python/py-inferior.c (infpy_thread_from_thread_handle):
3376         Return immediately after calling thread_to_thread_object.  Use
3377         Py_RETURN_NONE.
3378         (thread_to_thread_object): Set the exception on a NULL return.
3379
3380 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3381
3382         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3383
3384 2018-09-16  Tom Tromey  <tom@tromey.com>
3385
3386         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3387         Remove.
3388
3389 2018-09-16  Tom Tromey  <tom@tromey.com>
3390
3391         * python/python-internal.h (thread_to_thread_object): Change
3392         return type.
3393         * python/py-inferior.c (thread_to_thread_object): Return a new
3394         reference.
3395         (infpy_thread_from_thread_handle): Update.
3396         * python/py-infthread.c (gdbpy_selected_thread): Update.
3397         * python/py-stopevent.c (create_stop_event_object): Update.
3398         * python/py-threadevent.c (py_get_event_thread): Return a new
3399         reference.
3400         (py_get_event_thread): Update.
3401         * python/py-event.h (py_get_event_thread): Change return type.
3402         * python/py-continueevent.c (create_continue_event_object):
3403         Update.
3404
3405 2018-09-16  Tom Tromey  <tom@tromey.com>
3406
3407         * python/py-progspace.c (pspy_get_objfiles): Update.
3408         * python/python-internal.h (objfile_to_objfile_object): Change
3409         return type.
3410         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3411         Update.
3412         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3413         Update.
3414         * python/python.c (gdbpy_get_current_objfile): Update.
3415         (gdbpy_objfiles): Update.
3416         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3417         Update.
3418         (objfile_to_objfile_object): Return a new reference.
3419         * python/py-symtab.c (stpy_get_objfile): Update.
3420         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3421         Update.
3422
3423 2018-09-16  Tom Tromey  <tom@tromey.com>
3424
3425         * python/py-inferior.c (infpy_get_progspace): Update.
3426         * python/python-internal.h (pspace_to_pspace_object): Change
3427         return type.
3428         * python/py-newobjfileevent.c
3429         (create_clear_objfiles_event_object): Update.
3430         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3431         Update.
3432         * python/python.c (gdbpy_get_current_progspace): Update.
3433         (gdbpy_progspaces): Update.
3434         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3435         reference.
3436         * python/py-objfile.c (objfpy_get_progspace): Update.
3437         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3438         Update.
3439
3440 2018-09-16  Tom Tromey  <tom@tromey.com>
3441
3442         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3443         (solib_name, block_for_pc, find_pc_line): New functions.
3444         (execute_unwinders): Update.
3445         * python/py-block.c (gdbpy_block_for_pc): Remove.
3446         * python/py-inferior.c (infpy_get_progspace): New function.
3447         (inferior_object_getset) <progspace>: Add.
3448         * python/py-progspace.c (pspy_objfiles): Rewrite.
3449         (pspy_solib_name, pspy_block_for_pc)
3450         (pspy_find_pc_line, pspy_is_valid): New functions.
3451         (progspace_object_methods): Add entries for solib_name,
3452         block_for_pc, find_pc_line, is_valid.
3453         * python/python-internal.h (gdbpy_block_for_pc)
3454         (build_objfiles_list): Don't declare.
3455         * python/python.c: Don't include solib.h.
3456         (gdbpy_solib_name, gdbpy_find_pc_line)
3457         (gdbpy_get_current_progspace, build_objfiles_list)
3458         (gdbpy_objfiles): Remove.
3459         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3460         solib_name, find_pc_line>: Remove entries.
3461
3462 2018-09-16  Tom Tromey  <tom@tromey.com>
3463
3464         * top.c (new_ui_command): Use GNU style for metasyntactic
3465         variables.
3466         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3467         variables.
3468         * maint.c (maintenance_translate_address): Remove "<>" around
3469         text.
3470         * interps.c (interpreter_exec_cmd): Use GNU style for
3471         metasyntactic variables.
3472         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3473         metasyntactic variables.
3474         * tracepoint.c (tfind_range_command): Use GNU style for
3475         metasyntactic variables.
3476         (tfind_outside_command): Likewise.
3477         (_initialize_tracepoint): Likewise.
3478         * remote.c (extended_remote_target::create_inferior): Use GNU
3479         style for metasyntactic variables.
3480         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3481         metasyntactic variables.
3482         (adi_assign_command): Likewise.
3483
3484 2018-09-16  Tom Tromey  <tom@tromey.com>
3485
3486         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3487         metasyntactic variables.  Print message if no disassembler options
3488         are available.
3489
3490 2018-09-15  Tom Tromey  <tom@tromey.com>
3491
3492         * infcmd.c (get_inferior_args): Return const char *.
3493         * inferior.h (get_inferior_args): Return type now const.
3494         * linux-tdep.c (linux_fill_prpsinfo): Update.
3495         * procfs.c (procfs_target::make_corefile_notes): Update.
3496
3497 2018-09-07  Tom Tromey  <tom@tromey.com>
3498
3499         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3500         inside the TRY.
3501
3502 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3503
3504         * nios2-tdep.c (nios2_type_align): New.
3505         (nios2_gdb_arch_init): Install type_align hook.
3506
3507 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3508
3509         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3510         type that is neither object file owned, nor gdbarch owned.
3511         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3512         gdbarch is non-NULL.
3513         (alloc_type_instance): Allocate non-objfile owned types on the
3514         gdbarch obstack.
3515         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3516         using TYPE_ALLOC to ensure memory is allocated on the correct
3517         obstack.
3518         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3519         obstack, or the gdbarch obstack.
3520         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3521
3522 2018-09-14  Tom Tromey  <tom@tromey.com>
3523
3524         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3525         block.
3526
3527 2018-09-14  Tom Tromey  <tom@tromey.com>
3528
3529         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3530
3531 2018-09-13  Tom Tromey  <tom@tromey.com>
3532
3533         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3534         static.
3535
3536 2018-09-13  Tom Tromey  <tom@tromey.com>
3537
3538         * exec.c (try_open_exec_file): Use std::string.
3539
3540 2018-09-13  Tom Tromey  <tom@tromey.com>
3541
3542         * utils.h (gdb_bfd_errmsg): Return std::string.
3543         * exec.c (exec_file_attach): Update.
3544         * compile/compile-object-load.c (compile_object_load): Update.
3545         * utils.c (gdb_bfd_errmsg): Return std::string.
3546
3547 2018-09-13  Tom Tromey  <tom@tromey.com>
3548
3549         * procfs.c (struct procinfo_deleter): New.
3550         (procinfo_up): New typedef.
3551         (do_destroy_procinfo_cleanup): Remove.
3552         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3553
3554 2018-09-13  Tom Tromey  <tom@tromey.com>
3555
3556         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3557
3558 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3559 2018-09-13  Tom Tromey  <tom@tromey.com>
3560
3561         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3562         (pspy_get_objfiles): New function.
3563         (progspace_object_methods): New.
3564         (pspace_object_type): Add tp_methods callback.
3565         * python/python-internal.h (build_objfiles_list): New
3566         declaration.
3567         * python/python.c (build_objfiles_list): New function.
3568         (gdbpy_objfiles): Implement using build_objfiles_list.
3569         * NEWS: Mention the Progspace.objfiles method.
3570
3571 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3572
3573         * python/py-inferior.c (infpy_get_progspace): New function.
3574         (inferior_object_getset): Add progspace property.
3575         * NEWS: Mention the new property.
3576
3577 2018-09-13  Tom Tromey  <tom@tromey.com>
3578
3579         PR rust/23650:
3580         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3581
3582 2018-09-13  Tom Tromey  <tom@tromey.com>
3583
3584         PR rust/23626:
3585         * rust-lang.c (rust_enum_variant): Now static.
3586         (rust_empty_enum_p): New function.
3587         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3588         Handle empty enum.
3589
3590 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3591
3592         * python/py-inferior.c (infpy_repr): New.
3593         (inferior_object_type): Register infpy_repr.
3594         * python/py-objfile.c (objfpy_repr): New.
3595         (objfile_object_type): Register objfpy_repr.
3596
3597 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3598
3599         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3600
3601 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3602
3603         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3604         typo.
3605
3606 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3607
3608         * common/common-utils.c: Don't include '<sys/stat.h>'.
3609         (is_regular_file): Move to...
3610         * common/filestuff.c (is_regular_file): ... here.
3611         * common/common-utils.h (is_regular_file): Move to...
3612         * common/filestuff.h (is_regular_file): ... here.
3613
3614 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3615
3616         * skip.c (debug_skip): New variable.
3617         (skiplist_entry::do_skip_file_p): Add debug output.
3618         (skiplist_entry::do_skip_gfile_p): Likewise.
3619         (skiplist_entry::skip_function_p): Likewise.
3620         (_initialize_step_skip): Create debug command.
3621         * NEWS: Mention set/show debug skip.
3622
3623 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3624
3625         * darwin-nat.c (should_disable_startup_with_shell):
3626         New function.
3627         (darwin_nat_target::create_inferior): Add call.
3628
3629 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3630
3631         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3632         inf_port, msg_state>: Initialize.
3633         (struct darwin_thread_info) <signaled, single_step>: Change
3634         type and initialize.
3635         (struct darwin_thread_info) <event>: Initialize.
3636
3637 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3638
3639         PR gdb/23555
3640         PR gdb/23558
3641         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3642         guesses.
3643
3644 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3645
3646         Revert:
3647         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3648
3649         PR gdb/23555
3650         PR gdb/23558
3651         * gnulib/aclocal.m4: Regenerate.
3652         * gnulib/config.in: Regenerate.
3653         * gnulib/configure: Regenerate.
3654         * gnulib/import/Makefile.am: Update.
3655         * gnulib/import/Makefile.in: Update.
3656         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3657         * gnulib/import/_Noreturn.h: ... this.
3658         * gnulib/import/alloca.in.h: Update.
3659         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3660         * gnulib/import/arg-nonnull.h: ... this.
3661         * gnulib/import/assure.h: Update.
3662         * gnulib/import/at-func.c: Update.
3663         * gnulib/import/basename-lgpl.c: Update.
3664         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3665         * gnulib/import/c++defs.h: ... this.
3666         * gnulib/import/canonicalize-lgpl.c: Update.
3667         * gnulib/import/cdefs.h: Update.
3668         * gnulib/import/chdir-long.c: Update.
3669         * gnulib/import/chdir-long.h: Update.
3670         * gnulib/import/cloexec.c: Update.
3671         * gnulib/import/cloexec.h: Update.
3672         * gnulib/import/close.c: Update.
3673         * gnulib/import/closedir.c: Update.
3674         * gnulib/import/config.charset: Update.
3675         * gnulib/import/dirent-private.h: Update.
3676         * gnulib/import/dirent.in.h: Update.
3677         * gnulib/import/dirfd.c: Update.
3678         * gnulib/import/dirname-lgpl.c: Update.
3679         * gnulib/import/dirname.h: Update.
3680         * gnulib/import/dosname.h: Update.
3681         * gnulib/import/dup-safer-flag.c: Update.
3682         * gnulib/import/dup-safer.c: Update.
3683         * gnulib/import/dup.c: Update.
3684         * gnulib/import/dup2.c: Update.
3685         * gnulib/import/errno.in.h: Update.
3686         * gnulib/import/error.c: Update.
3687         * gnulib/import/error.h: Update.
3688         * gnulib/import/exitfail.c: Update.
3689         * gnulib/import/exitfail.h: Update.
3690         * gnulib/import/extra/update-copyright: Update.
3691         * gnulib/import/fchdir.c: Update.
3692         * gnulib/import/fcntl.c: Update.
3693         * gnulib/import/fcntl.in.h: Update.
3694         * gnulib/import/fd-hook.c: Update.
3695         * gnulib/import/fd-hook.h: Update.
3696         * gnulib/import/fd-safer-flag.c: Update.
3697         * gnulib/import/fd-safer.c: Update.
3698         * gnulib/import/fdopendir.c: Update.
3699         * gnulib/import/filename.h: Update.
3700         * gnulib/import/filenamecat-lgpl.c: Update.
3701         * gnulib/import/filenamecat.h: Update.
3702         * gnulib/import/flexmember.h: Update.
3703         * gnulib/import/float+.h: Update.
3704         * gnulib/import/float.c: Update.
3705         * gnulib/import/float.in.h: Update.
3706         * gnulib/import/fnmatch.c: Update.
3707         * gnulib/import/fnmatch.in.h: Update.
3708         * gnulib/import/fnmatch_loop.c: Update.
3709         * gnulib/import/fpucw.h: Update.
3710         * gnulib/import/frexp.c: Update.
3711         * gnulib/import/frexpl.c: Update.
3712         * gnulib/import/fstat.c: Update.
3713         * gnulib/import/fstatat.c: Update.
3714         * gnulib/import/getcwd-lgpl.c: Update.
3715         * gnulib/import/getcwd.c: Update.
3716         * gnulib/import/getdtablesize.c: Update.
3717         * gnulib/import/getlogin_r.c: Update.
3718         * gnulib/import/getprogname.c: Update.
3719         * gnulib/import/getprogname.h: Update.
3720         * gnulib/import/gettext.h: Update.
3721         * gnulib/import/gettimeofday.c: Update.
3722         * gnulib/import/glob-libc.h: Update.
3723         * gnulib/import/glob.c: Update.
3724         * gnulib/import/glob.in.h: Update.
3725         * gnulib/import/glob_internal.h: Update.
3726         * gnulib/import/glob_pattern_p.c: Update.
3727         * gnulib/import/globfree.c: Update.
3728         * gnulib/import/hard-locale.c: Update.
3729         * gnulib/import/hard-locale.h: Update.
3730         * gnulib/import/intprops.h: Update.
3731         * gnulib/import/inttypes.in.h: Update.
3732         * gnulib/import/isnan.c: Update.
3733         * gnulib/import/isnand-nolibm.h: Update.
3734         * gnulib/import/isnand.c: Update.
3735         * gnulib/import/isnanl-nolibm.h: Update.
3736         * gnulib/import/isnanl.c: Update.
3737         * gnulib/import/itold.c: Update.
3738         * gnulib/import/libc-config.h: Update.
3739         * gnulib/import/limits.in.h: Update.
3740         * gnulib/import/localcharset.c: Update.
3741         * gnulib/import/localcharset.h: Update.
3742         * gnulib/import/localtime-buffer.c: Update.
3743         * gnulib/import/localtime-buffer.h: Update.
3744         * gnulib/import/lstat.c: Update.
3745         * gnulib/import/m4/00gnulib.m4: Update.
3746         * gnulib/import/m4/__inline.m4: Update.
3747         * gnulib/import/m4/absolute-header.m4: Update.
3748         * gnulib/import/m4/alloca.m4: Update.
3749         * gnulib/import/m4/builtin-expect.m4: Update.
3750         * gnulib/import/m4/canonicalize.m4: Update.
3751         * gnulib/import/m4/chdir-long.m4: Update.
3752         * gnulib/import/m4/close.m4: Update.
3753         * gnulib/import/m4/closedir.m4: Update.
3754         * gnulib/import/m4/configmake.m4: Update.
3755         * gnulib/import/m4/d-ino.m4: Update.
3756         * gnulib/import/m4/d-type.m4: Update.
3757         * gnulib/import/m4/dirent_h.m4: Update.
3758         * gnulib/import/m4/dirfd.m4: Update.
3759         * gnulib/import/m4/dirname.m4: Update.
3760         * gnulib/import/m4/double-slash-root.m4: Update.
3761         * gnulib/import/m4/dup.m4: Update.
3762         * gnulib/import/m4/dup2.m4: Update.
3763         * gnulib/import/m4/eealloc.m4: Update.
3764         * gnulib/import/m4/environ.m4: Update.
3765         * gnulib/import/m4/errno_h.m4: Update.
3766         * gnulib/import/m4/error.m4: Update.
3767         * gnulib/import/m4/exponentd.m4: Update.
3768         * gnulib/import/m4/exponentl.m4: Update.
3769         * gnulib/import/m4/extensions.m4: Update.
3770         * gnulib/import/m4/extern-inline.m4: Update.
3771         * gnulib/import/m4/fchdir.m4: Update.
3772         * gnulib/import/m4/fcntl-o.m4: Update.
3773         * gnulib/import/m4/fcntl.m4: Update.
3774         * gnulib/import/m4/fcntl_h.m4: Update.
3775         * gnulib/import/m4/fdopendir.m4: Update.
3776         * gnulib/import/m4/filenamecat.m4: Update.
3777         * gnulib/import/m4/flexmember.m4: Update.
3778         * gnulib/import/m4/float_h.m4: Update.
3779         * gnulib/import/m4/fnmatch.m4: Update.
3780         * gnulib/import/m4/fnmatch_h.m4: Update.
3781         * gnulib/import/m4/fpieee.m4: Update.
3782         * gnulib/import/m4/frexp.m4: Update.
3783         * gnulib/import/m4/frexpl.m4: Update.
3784         * gnulib/import/m4/fstat.m4: Update.
3785         * gnulib/import/m4/fstatat.m4: Update.
3786         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3787         * gnulib/import/m4/getcwd-path-max.m4: Update.
3788         * gnulib/import/m4/getcwd.m4: Update.
3789         * gnulib/import/m4/getdtablesize.m4: Update.
3790         * gnulib/import/m4/getlogin.m4: Update.
3791         * gnulib/import/m4/getlogin_r.m4: Update.
3792         * gnulib/import/m4/getpagesize.m4: Update.
3793         * gnulib/import/m4/getprogname.m4: Update.
3794         * gnulib/import/m4/gettimeofday.m4: Update.
3795         * gnulib/import/m4/glibc21.m4: Update.
3796         * gnulib/import/m4/glob.m4: Update.
3797         * gnulib/import/m4/glob_h.m4: Update.
3798         * gnulib/import/m4/gnulib-cache.m4: Update.
3799         * gnulib/import/m4/gnulib-common.m4: Update.
3800         * gnulib/import/m4/gnulib-comp.m4: Update.
3801         * gnulib/import/m4/gnulib-tool.m4: Update.
3802         * gnulib/import/m4/hard-locale.m4: Update.
3803         * gnulib/import/m4/include_next.m4: Update.
3804         * gnulib/import/m4/inttypes-pri.m4: Update.
3805         * gnulib/import/m4/inttypes.m4: Update.
3806         * gnulib/import/m4/isnand.m4: Update.
3807         * gnulib/import/m4/isnanl.m4: Update.
3808         * gnulib/import/m4/largefile.m4: Update.
3809         * gnulib/import/m4/limits-h.m4: Update.
3810         * gnulib/import/m4/localcharset.m4: Update.
3811         * gnulib/import/m4/locale-fr.m4: Update.
3812         * gnulib/import/m4/locale-ja.m4: Update.
3813         * gnulib/import/m4/locale-zh.m4: Update.
3814         * gnulib/import/m4/localtime-buffer.m4: Update.
3815         * gnulib/import/m4/longlong.m4: Update.
3816         * gnulib/import/m4/lstat.m4: Update.
3817         * gnulib/import/m4/malloc.m4: Update.
3818         * gnulib/import/m4/malloca.m4: Update.
3819         * gnulib/import/m4/math_h.m4: Update.
3820         * gnulib/import/m4/mbrtowc.m4: Update.
3821         * gnulib/import/m4/mbsinit.m4: Update.
3822         * gnulib/import/m4/mbsrtowcs.m4: Update.
3823         * gnulib/import/m4/mbstate_t.m4: Update.
3824         * gnulib/import/m4/memchr.m4: Update.
3825         * gnulib/import/m4/memmem.m4: Update.
3826         * gnulib/import/m4/mempcpy.m4: Update.
3827         * gnulib/import/m4/memrchr.m4: Update.
3828         * gnulib/import/m4/mkdir.m4: Update.
3829         * gnulib/import/m4/mkstemp.m4: Update.
3830         * gnulib/import/m4/mmap-anon.m4: Update.
3831         * gnulib/import/m4/mode_t.m4: Update.
3832         * gnulib/import/m4/msvc-inval.m4: Update.
3833         * gnulib/import/m4/msvc-nothrow.m4: Update.
3834         * gnulib/import/m4/multiarch.m4: Update.
3835         * gnulib/import/m4/nocrash.m4: Update.
3836         * gnulib/import/m4/off_t.m4: Update.
3837         * gnulib/import/m4/onceonly.m4: Update.
3838         * gnulib/import/m4/open-cloexec.m4: Update.
3839         * gnulib/import/m4/open.m4: Update.
3840         * gnulib/import/m4/openat.m4: Update.
3841         * gnulib/import/m4/opendir.m4: Update.
3842         * gnulib/import/m4/pathmax.m4: Update.
3843         * gnulib/import/m4/rawmemchr.m4: Update.
3844         * gnulib/import/m4/readdir.m4: Update.
3845         * gnulib/import/m4/readlink.m4: Update.
3846         * gnulib/import/m4/realloc.m4: Update.
3847         * gnulib/import/m4/rename.m4: Update.
3848         * gnulib/import/m4/rewinddir.m4: Update.
3849         * gnulib/import/m4/rmdir.m4: Update.
3850         * gnulib/import/m4/save-cwd.m4: Update.
3851         * gnulib/import/m4/secure_getenv.m4: Update.
3852         * gnulib/import/m4/setenv.m4: Update.
3853         * gnulib/import/m4/signal_h.m4: Update.
3854         * gnulib/import/m4/ssize_t.m4: Update.
3855         * gnulib/import/m4/stat-time.m4: Update.
3856         * gnulib/import/m4/stat.m4: Update.
3857         * gnulib/import/m4/std-gnu11.m4: Update.
3858         * gnulib/import/m4/stdbool.m4: Update.
3859         * gnulib/import/m4/stddef_h.m4: Update.
3860         * gnulib/import/m4/stdint.m4: Update.
3861         * gnulib/import/m4/stdio_h.m4: Update.
3862         * gnulib/import/m4/stdlib_h.m4: Update.
3863         * gnulib/import/m4/strchrnul.m4: Update.
3864         * gnulib/import/m4/strdup.m4: Update.
3865         * gnulib/import/m4/strerror.m4: Update.
3866         * gnulib/import/m4/string_h.m4: Update.
3867         * gnulib/import/m4/strstr.m4: Update.
3868         * gnulib/import/m4/strtok_r.m4: Update.
3869         * gnulib/import/m4/sys_socket_h.m4: Update.
3870         * gnulib/import/m4/sys_stat_h.m4: Update.
3871         * gnulib/import/m4/sys_time_h.m4: Update.
3872         * gnulib/import/m4/sys_types_h.m4: Update.
3873         * gnulib/import/m4/tempname.m4: Update.
3874         * gnulib/import/m4/time_h.m4: Update.
3875         * gnulib/import/m4/unistd-safer.m4: Update.
3876         * gnulib/import/m4/unistd_h.m4: Update.
3877         * gnulib/import/m4/warn-on-use.m4: Update.
3878         * gnulib/import/m4/wchar_h.m4: Update.
3879         * gnulib/import/m4/wchar_t.m4: Update.
3880         * gnulib/import/m4/wctype_h.m4: Update.
3881         * gnulib/import/m4/wint_t.m4: Update.
3882         * gnulib/import/malloc.c: Update.
3883         * gnulib/import/malloc/scratch_buffer.h: Update.
3884         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3885         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3886         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3887         * gnulib/import/malloca.c: Update.
3888         * gnulib/import/malloca.h: Update.
3889         * gnulib/import/malloca.valgrind: Update.
3890         * gnulib/import/math.in.h: Update.
3891         * gnulib/import/mbrtowc.c: Update.
3892         * gnulib/import/mbsinit.c: Update.
3893         * gnulib/import/mbsrtowcs-impl.h: Update.
3894         * gnulib/import/mbsrtowcs-state.c: Update.
3895         * gnulib/import/mbsrtowcs.c: Update.
3896         * gnulib/import/memchr.c: Update.
3897         * gnulib/import/memmem.c: Update.
3898         * gnulib/import/mempcpy.c: Update.
3899         * gnulib/import/memrchr.c: Update.
3900         * gnulib/import/mkdir.c: Update.
3901         * gnulib/import/mkstemp.c: Update.
3902         * gnulib/import/msvc-inval.c: Update.
3903         * gnulib/import/msvc-inval.h: Update.
3904         * gnulib/import/msvc-nothrow.c: Update.
3905         * gnulib/import/msvc-nothrow.h: Update.
3906         * gnulib/import/open.c: Update.
3907         * gnulib/import/openat-die.c: Update.
3908         * gnulib/import/openat-priv.h: Update.
3909         * gnulib/import/openat-proc.c: Update.
3910         * gnulib/import/openat.c: Update.
3911         * gnulib/import/openat.h: Update.
3912         * gnulib/import/opendir.c: Update.
3913         * gnulib/import/pathmax.h: Update.
3914         * gnulib/import/pipe-safer.c: Update.
3915         * gnulib/import/rawmemchr.c: Update.
3916         * gnulib/import/readdir.c: Update.
3917         * gnulib/import/readlink.c: Update.
3918         * gnulib/import/realloc.c: Update.
3919         * gnulib/import/ref-add.sin: Update.
3920         * gnulib/import/ref-del.sin: Update.
3921         * gnulib/import/rename.c: Update.
3922         * gnulib/import/rewinddir.c: Update.
3923         * gnulib/import/rmdir.c: Update.
3924         * gnulib/import/same-inode.h: Update.
3925         * gnulib/import/save-cwd.c: Update.
3926         * gnulib/import/save-cwd.h: Update.
3927         * gnulib/import/scratch_buffer.h: Update.
3928         * gnulib/import/secure_getenv.c: Update.
3929         * gnulib/import/setenv.c: Update.
3930         * gnulib/import/signal.in.h: Update.
3931         * gnulib/import/stat-time.c: Update.
3932         * gnulib/import/stat-time.h: Update.
3933         * gnulib/import/stat-w32.c: Update.
3934         * gnulib/import/stat-w32.h: Update.
3935         * gnulib/import/stat.c: Update.
3936         * gnulib/import/stdbool.in.h: Update.
3937         * gnulib/import/stddef.in.h: Update.
3938         * gnulib/import/stdint.in.h: Update.
3939         * gnulib/import/stdio.in.h: Update.
3940         * gnulib/import/stdlib.in.h: Update.
3941         * gnulib/import/str-two-way.h: Update.
3942         * gnulib/import/strchrnul.c: Update.
3943         * gnulib/import/strdup.c: Update.
3944         * gnulib/import/streq.h: Update.
3945         * gnulib/import/strerror-override.c: Update.
3946         * gnulib/import/strerror-override.h: Update.
3947         * gnulib/import/strerror.c: Update.
3948         * gnulib/import/string.in.h: Update.
3949         * gnulib/import/stripslash.c: Update.
3950         * gnulib/import/strnlen1.c: Update.
3951         * gnulib/import/strnlen1.h: Update.
3952         * gnulib/import/strstr.c: Update.
3953         * gnulib/import/strtok_r.c: Update.
3954         * gnulib/import/sys_stat.in.h: Update.
3955         * gnulib/import/sys_time.in.h: Update.
3956         * gnulib/import/sys_types.in.h: Update.
3957         * gnulib/import/tempname.c: Update.
3958         * gnulib/import/tempname.h: Update.
3959         * gnulib/import/time.in.h: Update.
3960         * gnulib/import/unistd--.h: Update.
3961         * gnulib/import/unistd-safer.h: Update.
3962         * gnulib/import/unistd.in.h: Update.
3963         * gnulib/import/unsetenv.c: Update.
3964         * gnulib/import/verify.h: Update.
3965         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3966         * gnulib/import/wchar.in.h: Update.
3967         * gnulib/import/wctype.in.h: Update.
3968         * gnulib/import/xalloc-oversized.h: Update.
3969         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3970         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3971
3972 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3973
3974         * record-btrace.c (get_thread_current_frame): Remove
3975         old_inferior_ptid.
3976
3977 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3978
3979         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3980         with check_tag to 1 if and only if the type is tagged and the
3981         component being searched cannot been found in the current
3982         view. Otherwise, always call ada_to_fixed_type with
3983         check_tag to 0.
3984
3985 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3986
3987         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3988         declaration.
3989         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3990         * ada-varobj.c (ada_varobj_get_number_of_children,
3991         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3992
3993 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3994
3995         * ada-valprint.c (ada_value_print): Use type instead of
3996         enclosing type.
3997
3998 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3999
4000         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4001         an array of access to unconstrained array.
4002
4003 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4004
4005         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4006         (ada_check_typedef): Use it.
4007
4008 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4009
4010         * ada-varobj.c (ada_varobj_describe_struct_child)
4011         (ada_varobj_describe_child): Handle union case like struct one.
4012
4013 2018-09-10  Tom Tromey  <tom@tromey.com>
4014
4015         PR python/18380:
4016         * python/python.c (_initialize_python): Make example in "python"
4017         help work in Python 3.
4018
4019 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4020
4021         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4022         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4023         $(EXEEXT) to the script, as it is not a program.
4024
4025 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4026
4027         * python/py-prettyprint.c (pretty_print_one_value): Return
4028         gdbpy_ref<>.
4029         (print_string_repr): Adjust.
4030         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4031         * python/python-internal.h (apply_varobj_pretty_printer): Return
4032         gdbpy_ref<>.
4033         * varobj.c (varobj_value_get_print_value): Adjust.
4034
4035 2018-09-08  Tom Tromey  <tom@tromey.com>
4036
4037         PR python/16047:
4038         * python/py-prettyprint.c (pretty_print_one_value): Check for
4039         to_string method.
4040
4041 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4042
4043         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4044         replace_operator_with_call.
4045
4046 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4047
4048         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4049
4050 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4051
4052         * ada-typeprint.c (print_range): Print the bounds using TYPE
4053         rather than its TYPE_TARGET_TYPE.
4054
4055 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4056
4057         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4058         call to ada_to_fixed_value_create.
4059
4060 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4061
4062         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4063
4064 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4065
4066         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4067         by calls to error.
4068
4069 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4070
4071         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4072         Move update of loop variable "fi".
4073
4074 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4075
4076         * ada-lang.c (value_assign_to_component): In the case of
4077         big-endian targets, extract the bits of the given VAL
4078         using an src_offset of zero if container is not a scalar.
4079
4080 2018-09-06  Simon Ser  <contact@emersion.fr>
4081
4082         PR gdb/23105
4083         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4084         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4085         * fbsd-tdep.c (fbsd_make_note_desc): New.
4086         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4087         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4088         * target.h (enum target_object) Add FreeBSD-specific
4089         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4090
4091 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4092
4093         * compile/compile-c.h (generate_c_for_variable_locations):
4094         Change reference to pointer.
4095         * compile/compile-c-support.c (compile_program) <compute>:
4096         Likewise.
4097         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4098         (generate_c_for_for_one_variable): Likewise
4099         (generate_c_for_variable_locations): Likewise
4100         * compile/compile-c-types.c (compile_c_instance::convert_type):
4101         Likewise
4102         * compile/compile-cplus-symbols.c (convert_one_symbol):
4103         std::move the scope passed to enter_scope.
4104         * compile/compile-cplus-types.c
4105         (compile_cplus_instance::enter_scope): Make parameter
4106         rvalue-reference.
4107         (compile_cplus_instance::new_scope): Change reference to
4108         pointer.
4109         (compile_cplus_instance::convert_type): Likewise
4110         (compile_cplus_convert_typedef): std::move the scope passed to
4111         enter_scope.
4112         (compile_cplus_convert_struct_or_union): Likewise.
4113         (compile_cplus_convert_enum): Likewise.
4114         (compile_cplus_convert_namespace): Likewise.
4115         * compile/compile-cplus.h (compile_cplus_instance)
4116         <enter_scope>: Make parameter rvalue-reference.
4117         * compile/compile-internal.h (compile_instance)
4118         <get_cached_type>: Likewise
4119         * compile/compile-loc2c.c (push): Likewise
4120         (pushf): Likewise
4121         (unary): Likewise
4122         (binary): Likewise
4123         (print_label): Likewise
4124         (pushf_register_address): Likewise
4125         (pushf_register): Likewise
4126         (do_compile_dwarf_expr_to_c): Likewise
4127         (compile_dwarf_expr_to_c): Likewise
4128         (compile_dwarf_bounds_to_c): Likewise
4129         * compile/compile.c (compile_instance::get_cached_type):
4130         Likewise
4131         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4132         (compile_dwarf_bounds_to_c): Likewise
4133         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4134         (dwarf2_compile_property_to_c): Likewise
4135         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4136         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4137         Likewise
4138
4139 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4140
4141         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4142         * tui/tui-data.c (init_content_element): Don't initialize it.
4143
4144 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4145
4146         * tui/tui-data.h (struct tui_win_info)
4147         <detail::opaque>: Remove.
4148         * tui/tui-data.c (init_win_info): Remove assignment.
4149
4150 2018-09-05  Tom Tromey  <tom@tromey.com>
4151
4152         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4153         -Wformat-nonliteral.
4154         * target-float.c (host_float_ops<T>::to_string)
4155         (host_float_ops<T>::from_string): Use
4156         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4157         * configure: Rebuild.
4158
4159 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4160
4161         * printcmd.c (printf_c_string): Use
4162         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4163         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4164
4165 2018-09-05  Tom Tromey  <tom@tromey.com>
4166
4167         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4168
4169 2018-09-05  Tom de Vries  <tdevries@suse.de>
4170
4171         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4172         with resolve_abstract_p == true.
4173         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4174         defaulting to false. Propagate resolve_abstract_p to
4175         dwarf2_fetch_die_loc_sect_off.
4176         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4177         parameter, defaulting to false.
4178         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4179         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4180         parameter.
4181         * dwarf2read.h (struct die_info): Forward-declare.
4182         (die_info_ptr): New typedef.
4183         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4184
4185 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4186
4187         GDB 8.2 released.
4188
4189 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4190             Pedro Alves  <palves@redhat.com>
4191
4192         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4193         "aclocal-m4-deps.mk".  Include file here.
4194         $(srcdir)/aclocal.m4: Add "configure.ac".
4195         * gnulib/aclocal-m4-deps.mk: New file.
4196         * gnulib/update-gnulib.sh: Automatically update
4197         "aclocal-m4-deps.mk".
4198
4199 2018-09-04  Tom Tromey  <tom@tromey.com>
4200
4201         * configure: Rebuild.
4202         * configure.ac: Remove multi-ice code.
4203
4204 2018-09-04  Tom Tromey  <tom@tromey.com>
4205
4206         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4207         (ada-exp.o): Update.
4208
4209 2018-09-04  Tom Tromey  <tom@tromey.com>
4210
4211         * Makefile.in (printcmd.o, target-float.o): Remove.
4212         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4213
4214 2018-09-04  Tom Tromey  <tom@tromey.com>
4215
4216         * gnulib/Makefile.in: Remove obsolete comment.
4217         * Makefile.in: Remove obsolete comment.
4218
4219 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4220
4221         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4222         line with '+'.
4223
4224 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4225
4226         * riscv-tdep.c: Add 'prologue-value.h' include.
4227         (struct riscv_unwind_cache): New struct.
4228         (riscv_debug_unwinder): New global.
4229         (riscv_scan_prologue): Update arguments, capture register details
4230         from prologue scan.
4231         (riscv_skip_prologue): Reformat arguments line, move end of
4232         prologue calculation into riscv_scan_prologue.
4233         (riscv_frame_cache): Update return type, create
4234         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4235         details.
4236         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4237         (riscv_frame_prev_register): Use the trad_frame within the
4238         riscv_unwind_cache.
4239         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4240         flag.
4241
4242 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4243
4244         * trad-frame.h (trad_frame_set_realreg): Declare.
4245         (trad_frame_set_addr): Declare.
4246         * trad-frame.c (trad_frame_set_realreg): Define new function.
4247         (trad_frame_set_addr): Define new function.
4248         (trad_frame_set_reg_realreg): Use new function.
4249         (trad_frame_set_reg_addr): Use new function.
4250
4251 2018-09-01  Keith Seitz  <keiths@redhat.com>
4252
4253         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4254         pulongest instead of "%lld".
4255         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4256         ATTRIBUTE_UNUSED.
4257
4258 2018-08-31  Tom Tromey  <tom@tromey.com>
4259
4260         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4261         variant part type.
4262
4263 2018-08-31  Pedro Alves  <palves@redhat.com>
4264
4265         * gdbarch.h: Regenerate.
4266
4267 2018-08-31  Pedro Alves  <palves@redhat.com>
4268
4269         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4270         * target.h (Hardware watchpoint interfaces): Describe
4271         continuable/steppable/non-steppable watchpoints.
4272         * gdbarch.h, gdbarch.c: Regenerate.
4273
4274 2018-08-31  Pedro Alves  <palves@redhat.com>
4275
4276         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4277         Delete.
4278         * s390-linux-nat.c
4279         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4280         * target.h (target_ops::have_continuable_watchpoint): Delete.
4281         (target_have_continuable_watchpoint): Delete.
4282         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4283         * target-delegates.c: Regenerate.
4284
4285 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4286
4287         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4288         the files present in "gnulib/import/m4/".
4289
4290 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4291
4292         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4293         c.sw, c.swsp, and c.sdsp.
4294
4295 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4296
4297         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4298         (riscv_read_misa_reg): Don't cache value read into inferior data.
4299         (riscv_new_inferior_data): Delete.
4300         (riscv_inferior_data_cleanup): Delete.
4301         (riscv_inferior_data): Delete.
4302         (riscv_invalidate_inferior_data): Delete.
4303         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4304
4305 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4306
4307         * compile/compile-cplus-types.c
4308         (compile_cplus_instance::leave_scope): Take the address of scope
4309         object.
4310         (compile_cplus_instance::convert_qualified_base): Compare quals
4311         to 0.
4312
4313 2018-08-30  Keith Seitz  <keiths@redhat.com>
4314
4315         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4316         Use "%s" and host_address_to_string instead of "%p" in printf.
4317
4318 2018-08-29  Keith Seitz  <keiths@redhat.com>
4319
4320         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4321         and compile-cplus-types.c.
4322         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4323         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4324         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4325         Declare.
4326         * compile/compile-c-support.c: Include compile-cplus.h.
4327         (load_libcompile): Templatize.
4328         (get_compile_context): "New" function.
4329         (c_get_compile_context): Use get_compile_context.
4330         (cplus_get_compile_context): New function.
4331         (cplus_push_user_expression, cplus_pop_user_expression)
4332         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4333         (cplus_compute_program): Define new structs/functions.
4334         * compile/compile-cplus-symmbols.c: New file.
4335         * compile/compile-cplus-types.c: New file.
4336         * compile/compile-cplus.h: New file.
4337         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4338         Declare.
4339         * compile/compile-object-load.c (get_out_value_type): Use
4340         strncmp_iw when comparing symbol names.
4341         (compile_object_load): Add mst_bss and mst_data.
4342         * compile/compile.c (_initialize_compile): Remove
4343         -Wno-implicit-function-declaration from `compile_args'.
4344         * compile/gcc-cp-plugin.h: New file.
4345         * NEWS: Mention C++ compile support and new debug options.
4346
4347 2018-08-29  Keith Seitz  <keiths@redhat.com>
4348
4349         * linespec.c (collect_info::add_symbol): Make virtual.
4350         (struct symbol_searcher_collect_info): New struct.
4351         (symbol_searcher::find_all_symbols): New method.
4352         * symtab.h (class symbol_searcher): New class.
4353
4354 2018-08-29  Keith Seitz  <keiths@redhat.com>
4355
4356         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4357         Change to vector of block_symbol.  Update all users.
4358         (struct collect_info) <symbols>: Likewise.
4359         (collect_info::add_symbol): Take block_symbol as argument.
4360         Update all callers.
4361         (decode_compound_collector) <m_symbols>: Change type to vector
4362         of block_symbol.  Update all users.
4363         (decode_compound_collector::operator ()): Change parameter type
4364         to block_symbol.
4365         (find_method, find_function_symbols, find_linespec_symbols)
4366         (find_label_symbols_in_block, find_label_symbols): Change symbol
4367         vectors to block_symbol vectors.
4368         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4369         block_symbol.
4370
4371 2018-08-29  Keith Seitz  <keiths@redhat.com>
4372
4373         * linespec.c (symbolp): Remove typedef and VEC definitions.
4374         (bound_minimal_symbol_d): Likewise.
4375
4376 2018-08-29  Keith Seitz  <keiths@redhat.com>
4377
4378         * linespec.c (decode_compound_collector::decode_compound_collector):
4379         Remove initialization for `m_symtabs'.
4380         (decode_compound_collector::release_symbols): Change return type
4381         to std::vector.  Update all callers.
4382         (class decode_compound_collector) <m_symbols>: Change type to
4383         std::vector.
4384         (lookup_prefix_sym): Change return type to std::vector.  Update all
4385         callers.
4386         (compare_symbols): Remove.
4387         (std_compare_symbols): Rename to `compare_symbols'.
4388         (find_method): Change `sym_classes' parameter to std::vector.
4389         Update all callers.  Use std::sort to sort sym_classes.
4390         (find_linespec_symbols): Remove cleanup.
4391
4392 2018-08-29  Keith Seitz  <keiths@redhat.com>
4393
4394         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4395         std::vector.  Update all users.
4396         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4397         (struct collect_info) <minimal_symbols>: Likewise.
4398         (compare_msymbols): Return bool.  Change parameters to const
4399         bound_minimal_symbol references.
4400         (find_method, find_function_symbols, find_linespec_symbols): Change
4401         `minsyms' parameter to std::vector.  Update all callers.
4402
4403 2018-08-29  Keith Seitz  <keiths@redhat.com>
4404
4405         * linespec.c (struct linespec) <label_symbols>: Change type to
4406         std::vector.  Update all users.
4407         (find_label_symbols_in_block): Change `result' parameter to
4408         std::vector.  Update all callers.
4409         (find_label_symbols): Return std::vector.  Update all callers.
4410
4411 2018-08-29  Keith Seitz  <keiths@redhat.com>
4412
4413         * linespec.c (struct linespec) <function_symbols>: Change type to
4414         std::vector.  Update all users.
4415         (struct collect_info) <function_symbols>: Likewise.
4416         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4417         (std_compare_symbols): New function.
4418         (find_method, find_function_symbols, find_linespec_symbols)
4419         (find_label_symbols_in_block): Change `symbols' parameter to
4420         std::vector.  Update all callers.
4421         (find_label_symbols): Likewise for `function_symbols' and
4422         `label_funcs_ret'.
4423
4424 2018-08-29  Keith Seitz  <keiths@redhat.com>
4425
4426         * linespec.c (symtab_vector_up): Define.
4427         (struct linespec) <file_symtabs>: Change type to std::vector *.
4428         Update all uses.
4429         (struct collect_info) <file_symtabs>: Likewise.
4430         (collect_symtabs_from_filename): Return symtab_vector_up.
4431         Update all callers.
4432         (decode_objc): Remove cleanup.
4433         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4434         (symtab_collector::release_symtabs): Return symtab_vector_up.
4435         Update all callers.
4436         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4437         Update all users.
4438         (collect_symtabs_from_filename, symtabs_from_filename): Return
4439         symtab_vector_up.  Update all callers.
4440
4441 2018-08-29  Tom Tromey  <tom@tromey.com>
4442
4443         * csky-tdep.c (csky_analyze_prologue): Use
4444         core_addr_to_string_nz.
4445
4446 2018-08-29  Tom Tromey  <tom@tromey.com>
4447
4448         * windows-nat.c (struct xlate_exception) <them>: Change type to
4449         DWORD.
4450         (xlate): Fix formatting.  Remove last entry.
4451         (struct xlate_exception, xlate): Comment out.
4452         (windows_nat_target::resume): Use ranged for.
4453
4454 2018-08-29  Jim Wilson  <jimw@sifive.com>
4455
4456         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4457         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4458         of NT_PRFPREG.
4459         (riscv_linux_nat_target::store_registers): Likewise.
4460
4461 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4462
4463         PR gdb/23555
4464         PR gdb/23558
4465         * gnulib/aclocal.m4: Regenerate.
4466         * gnulib/config.in: Regenerate.
4467         * gnulib/configure: Regenerate.
4468         * gnulib/import/Makefile.am: Update.
4469         * gnulib/import/Makefile.in: Update.
4470         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4471         * gnulib/import/_Noreturn.h: ... this.
4472         * gnulib/import/alloca.in.h: Update.
4473         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4474         * gnulib/import/arg-nonnull.h: ... this.
4475         * gnulib/import/assure.h: Update.
4476         * gnulib/import/at-func.c: Update.
4477         * gnulib/import/basename-lgpl.c: Update.
4478         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4479         * gnulib/import/c++defs.h: ... this.
4480         * gnulib/import/canonicalize-lgpl.c: Update.
4481         * gnulib/import/cdefs.h: Update.
4482         * gnulib/import/chdir-long.c: Update.
4483         * gnulib/import/chdir-long.h: Update.
4484         * gnulib/import/cloexec.c: Update.
4485         * gnulib/import/cloexec.h: Update.
4486         * gnulib/import/close.c: Update.
4487         * gnulib/import/closedir.c: Update.
4488         * gnulib/import/config.charset: Update.
4489         * gnulib/import/dirent-private.h: Update.
4490         * gnulib/import/dirent.in.h: Update.
4491         * gnulib/import/dirfd.c: Update.
4492         * gnulib/import/dirname-lgpl.c: Update.
4493         * gnulib/import/dirname.h: Update.
4494         * gnulib/import/dosname.h: Update.
4495         * gnulib/import/dup-safer-flag.c: Update.
4496         * gnulib/import/dup-safer.c: Update.
4497         * gnulib/import/dup.c: Update.
4498         * gnulib/import/dup2.c: Update.
4499         * gnulib/import/errno.in.h: Update.
4500         * gnulib/import/error.c: Update.
4501         * gnulib/import/error.h: Update.
4502         * gnulib/import/exitfail.c: Update.
4503         * gnulib/import/exitfail.h: Update.
4504         * gnulib/import/extra/update-copyright: Update.
4505         * gnulib/import/fchdir.c: Update.
4506         * gnulib/import/fcntl.c: Update.
4507         * gnulib/import/fcntl.in.h: Update.
4508         * gnulib/import/fd-hook.c: Update.
4509         * gnulib/import/fd-hook.h: Update.
4510         * gnulib/import/fd-safer-flag.c: Update.
4511         * gnulib/import/fd-safer.c: Update.
4512         * gnulib/import/fdopendir.c: Update.
4513         * gnulib/import/filename.h: Update.
4514         * gnulib/import/filenamecat-lgpl.c: Update.
4515         * gnulib/import/filenamecat.h: Update.
4516         * gnulib/import/flexmember.h: Update.
4517         * gnulib/import/float+.h: Update.
4518         * gnulib/import/float.c: Update.
4519         * gnulib/import/float.in.h: Update.
4520         * gnulib/import/fnmatch.c: Update.
4521         * gnulib/import/fnmatch.in.h: Update.
4522         * gnulib/import/fnmatch_loop.c: Update.
4523         * gnulib/import/fpucw.h: Update.
4524         * gnulib/import/frexp.c: Update.
4525         * gnulib/import/frexpl.c: Update.
4526         * gnulib/import/fstat.c: Update.
4527         * gnulib/import/fstatat.c: Update.
4528         * gnulib/import/getcwd-lgpl.c: Update.
4529         * gnulib/import/getcwd.c: Update.
4530         * gnulib/import/getdtablesize.c: Update.
4531         * gnulib/import/getlogin_r.c: Update.
4532         * gnulib/import/getprogname.c: Update.
4533         * gnulib/import/getprogname.h: Update.
4534         * gnulib/import/gettext.h: Update.
4535         * gnulib/import/gettimeofday.c: Update.
4536         * gnulib/import/glob-libc.h: Update.
4537         * gnulib/import/glob.c: Update.
4538         * gnulib/import/glob.in.h: Update.
4539         * gnulib/import/glob_internal.h: Update.
4540         * gnulib/import/glob_pattern_p.c: Update.
4541         * gnulib/import/globfree.c: Update.
4542         * gnulib/import/hard-locale.c: Update.
4543         * gnulib/import/hard-locale.h: Update.
4544         * gnulib/import/intprops.h: Update.
4545         * gnulib/import/inttypes.in.h: Update.
4546         * gnulib/import/isnan.c: Update.
4547         * gnulib/import/isnand-nolibm.h: Update.
4548         * gnulib/import/isnand.c: Update.
4549         * gnulib/import/isnanl-nolibm.h: Update.
4550         * gnulib/import/isnanl.c: Update.
4551         * gnulib/import/itold.c: Update.
4552         * gnulib/import/libc-config.h: Update.
4553         * gnulib/import/limits.in.h: Update.
4554         * gnulib/import/localcharset.c: Update.
4555         * gnulib/import/localcharset.h: Update.
4556         * gnulib/import/localtime-buffer.c: Update.
4557         * gnulib/import/localtime-buffer.h: Update.
4558         * gnulib/import/lstat.c: Update.
4559         * gnulib/import/m4/00gnulib.m4: Update.
4560         * gnulib/import/m4/__inline.m4: Update.
4561         * gnulib/import/m4/absolute-header.m4: Update.
4562         * gnulib/import/m4/alloca.m4: Update.
4563         * gnulib/import/m4/builtin-expect.m4: Update.
4564         * gnulib/import/m4/canonicalize.m4: Update.
4565         * gnulib/import/m4/chdir-long.m4: Update.
4566         * gnulib/import/m4/close.m4: Update.
4567         * gnulib/import/m4/closedir.m4: Update.
4568         * gnulib/import/m4/configmake.m4: Update.
4569         * gnulib/import/m4/d-ino.m4: Update.
4570         * gnulib/import/m4/d-type.m4: Update.
4571         * gnulib/import/m4/dirent_h.m4: Update.
4572         * gnulib/import/m4/dirfd.m4: Update.
4573         * gnulib/import/m4/dirname.m4: Update.
4574         * gnulib/import/m4/double-slash-root.m4: Update.
4575         * gnulib/import/m4/dup.m4: Update.
4576         * gnulib/import/m4/dup2.m4: Update.
4577         * gnulib/import/m4/eealloc.m4: Update.
4578         * gnulib/import/m4/environ.m4: Update.
4579         * gnulib/import/m4/errno_h.m4: Update.
4580         * gnulib/import/m4/error.m4: Update.
4581         * gnulib/import/m4/exponentd.m4: Update.
4582         * gnulib/import/m4/exponentl.m4: Update.
4583         * gnulib/import/m4/extensions.m4: Update.
4584         * gnulib/import/m4/extern-inline.m4: Update.
4585         * gnulib/import/m4/fchdir.m4: Update.
4586         * gnulib/import/m4/fcntl-o.m4: Update.
4587         * gnulib/import/m4/fcntl.m4: Update.
4588         * gnulib/import/m4/fcntl_h.m4: Update.
4589         * gnulib/import/m4/fdopendir.m4: Update.
4590         * gnulib/import/m4/filenamecat.m4: Update.
4591         * gnulib/import/m4/flexmember.m4: Update.
4592         * gnulib/import/m4/float_h.m4: Update.
4593         * gnulib/import/m4/fnmatch.m4: Update.
4594         * gnulib/import/m4/fnmatch_h.m4: Update.
4595         * gnulib/import/m4/fpieee.m4: Update.
4596         * gnulib/import/m4/frexp.m4: Update.
4597         * gnulib/import/m4/frexpl.m4: Update.
4598         * gnulib/import/m4/fstat.m4: Update.
4599         * gnulib/import/m4/fstatat.m4: Update.
4600         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4601         * gnulib/import/m4/getcwd-path-max.m4: Update.
4602         * gnulib/import/m4/getcwd.m4: Update.
4603         * gnulib/import/m4/getdtablesize.m4: Update.
4604         * gnulib/import/m4/getlogin.m4: Update.
4605         * gnulib/import/m4/getlogin_r.m4: Update.
4606         * gnulib/import/m4/getpagesize.m4: Update.
4607         * gnulib/import/m4/getprogname.m4: Update.
4608         * gnulib/import/m4/gettimeofday.m4: Update.
4609         * gnulib/import/m4/glibc21.m4: Update.
4610         * gnulib/import/m4/glob.m4: Update.
4611         * gnulib/import/m4/glob_h.m4: Update.
4612         * gnulib/import/m4/gnulib-cache.m4: Update.
4613         * gnulib/import/m4/gnulib-common.m4: Update.
4614         * gnulib/import/m4/gnulib-comp.m4: Update.
4615         * gnulib/import/m4/gnulib-tool.m4: Update.
4616         * gnulib/import/m4/hard-locale.m4: Update.
4617         * gnulib/import/m4/include_next.m4: Update.
4618         * gnulib/import/m4/inttypes-pri.m4: Update.
4619         * gnulib/import/m4/inttypes.m4: Update.
4620         * gnulib/import/m4/isnand.m4: Update.
4621         * gnulib/import/m4/isnanl.m4: Update.
4622         * gnulib/import/m4/largefile.m4: Update.
4623         * gnulib/import/m4/limits-h.m4: Update.
4624         * gnulib/import/m4/localcharset.m4: Update.
4625         * gnulib/import/m4/locale-fr.m4: Update.
4626         * gnulib/import/m4/locale-ja.m4: Update.
4627         * gnulib/import/m4/locale-zh.m4: Update.
4628         * gnulib/import/m4/localtime-buffer.m4: Update.
4629         * gnulib/import/m4/longlong.m4: Update.
4630         * gnulib/import/m4/lstat.m4: Update.
4631         * gnulib/import/m4/malloc.m4: Update.
4632         * gnulib/import/m4/malloca.m4: Update.
4633         * gnulib/import/m4/math_h.m4: Update.
4634         * gnulib/import/m4/mbrtowc.m4: Update.
4635         * gnulib/import/m4/mbsinit.m4: Update.
4636         * gnulib/import/m4/mbsrtowcs.m4: Update.
4637         * gnulib/import/m4/mbstate_t.m4: Update.
4638         * gnulib/import/m4/memchr.m4: Update.
4639         * gnulib/import/m4/memmem.m4: Update.
4640         * gnulib/import/m4/mempcpy.m4: Update.
4641         * gnulib/import/m4/memrchr.m4: Update.
4642         * gnulib/import/m4/mkdir.m4: Update.
4643         * gnulib/import/m4/mkstemp.m4: Update.
4644         * gnulib/import/m4/mmap-anon.m4: Update.
4645         * gnulib/import/m4/mode_t.m4: Update.
4646         * gnulib/import/m4/msvc-inval.m4: Update.
4647         * gnulib/import/m4/msvc-nothrow.m4: Update.
4648         * gnulib/import/m4/multiarch.m4: Update.
4649         * gnulib/import/m4/nocrash.m4: Update.
4650         * gnulib/import/m4/off_t.m4: Update.
4651         * gnulib/import/m4/onceonly.m4: Update.
4652         * gnulib/import/m4/open-cloexec.m4: Update.
4653         * gnulib/import/m4/open.m4: Update.
4654         * gnulib/import/m4/openat.m4: Update.
4655         * gnulib/import/m4/opendir.m4: Update.
4656         * gnulib/import/m4/pathmax.m4: Update.
4657         * gnulib/import/m4/rawmemchr.m4: Update.
4658         * gnulib/import/m4/readdir.m4: Update.
4659         * gnulib/import/m4/readlink.m4: Update.
4660         * gnulib/import/m4/realloc.m4: Update.
4661         * gnulib/import/m4/rename.m4: Update.
4662         * gnulib/import/m4/rewinddir.m4: Update.
4663         * gnulib/import/m4/rmdir.m4: Update.
4664         * gnulib/import/m4/save-cwd.m4: Update.
4665         * gnulib/import/m4/secure_getenv.m4: Update.
4666         * gnulib/import/m4/setenv.m4: Update.
4667         * gnulib/import/m4/signal_h.m4: Update.
4668         * gnulib/import/m4/ssize_t.m4: Update.
4669         * gnulib/import/m4/stat-time.m4: Update.
4670         * gnulib/import/m4/stat.m4: Update.
4671         * gnulib/import/m4/std-gnu11.m4: Update.
4672         * gnulib/import/m4/stdbool.m4: Update.
4673         * gnulib/import/m4/stddef_h.m4: Update.
4674         * gnulib/import/m4/stdint.m4: Update.
4675         * gnulib/import/m4/stdio_h.m4: Update.
4676         * gnulib/import/m4/stdlib_h.m4: Update.
4677         * gnulib/import/m4/strchrnul.m4: Update.
4678         * gnulib/import/m4/strdup.m4: Update.
4679         * gnulib/import/m4/strerror.m4: Update.
4680         * gnulib/import/m4/string_h.m4: Update.
4681         * gnulib/import/m4/strstr.m4: Update.
4682         * gnulib/import/m4/strtok_r.m4: Update.
4683         * gnulib/import/m4/sys_socket_h.m4: Update.
4684         * gnulib/import/m4/sys_stat_h.m4: Update.
4685         * gnulib/import/m4/sys_time_h.m4: Update.
4686         * gnulib/import/m4/sys_types_h.m4: Update.
4687         * gnulib/import/m4/tempname.m4: Update.
4688         * gnulib/import/m4/time_h.m4: Update.
4689         * gnulib/import/m4/unistd-safer.m4: Update.
4690         * gnulib/import/m4/unistd_h.m4: Update.
4691         * gnulib/import/m4/warn-on-use.m4: Update.
4692         * gnulib/import/m4/wchar_h.m4: Update.
4693         * gnulib/import/m4/wchar_t.m4: Update.
4694         * gnulib/import/m4/wctype_h.m4: Update.
4695         * gnulib/import/m4/wint_t.m4: Update.
4696         * gnulib/import/malloc.c: Update.
4697         * gnulib/import/malloc/scratch_buffer.h: Update.
4698         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4699         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4700         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4701         * gnulib/import/malloca.c: Update.
4702         * gnulib/import/malloca.h: Update.
4703         * gnulib/import/malloca.valgrind: Update.
4704         * gnulib/import/math.in.h: Update.
4705         * gnulib/import/mbrtowc.c: Update.
4706         * gnulib/import/mbsinit.c: Update.
4707         * gnulib/import/mbsrtowcs-impl.h: Update.
4708         * gnulib/import/mbsrtowcs-state.c: Update.
4709         * gnulib/import/mbsrtowcs.c: Update.
4710         * gnulib/import/memchr.c: Update.
4711         * gnulib/import/memmem.c: Update.
4712         * gnulib/import/mempcpy.c: Update.
4713         * gnulib/import/memrchr.c: Update.
4714         * gnulib/import/mkdir.c: Update.
4715         * gnulib/import/mkstemp.c: Update.
4716         * gnulib/import/msvc-inval.c: Update.
4717         * gnulib/import/msvc-inval.h: Update.
4718         * gnulib/import/msvc-nothrow.c: Update.
4719         * gnulib/import/msvc-nothrow.h: Update.
4720         * gnulib/import/open.c: Update.
4721         * gnulib/import/openat-die.c: Update.
4722         * gnulib/import/openat-priv.h: Update.
4723         * gnulib/import/openat-proc.c: Update.
4724         * gnulib/import/openat.c: Update.
4725         * gnulib/import/openat.h: Update.
4726         * gnulib/import/opendir.c: Update.
4727         * gnulib/import/pathmax.h: Update.
4728         * gnulib/import/pipe-safer.c: Update.
4729         * gnulib/import/rawmemchr.c: Update.
4730         * gnulib/import/readdir.c: Update.
4731         * gnulib/import/readlink.c: Update.
4732         * gnulib/import/realloc.c: Update.
4733         * gnulib/import/ref-add.sin: Update.
4734         * gnulib/import/ref-del.sin: Update.
4735         * gnulib/import/rename.c: Update.
4736         * gnulib/import/rewinddir.c: Update.
4737         * gnulib/import/rmdir.c: Update.
4738         * gnulib/import/same-inode.h: Update.
4739         * gnulib/import/save-cwd.c: Update.
4740         * gnulib/import/save-cwd.h: Update.
4741         * gnulib/import/scratch_buffer.h: Update.
4742         * gnulib/import/secure_getenv.c: Update.
4743         * gnulib/import/setenv.c: Update.
4744         * gnulib/import/signal.in.h: Update.
4745         * gnulib/import/stat-time.c: Update.
4746         * gnulib/import/stat-time.h: Update.
4747         * gnulib/import/stat-w32.c: Update.
4748         * gnulib/import/stat-w32.h: Update.
4749         * gnulib/import/stat.c: Update.
4750         * gnulib/import/stdbool.in.h: Update.
4751         * gnulib/import/stddef.in.h: Update.
4752         * gnulib/import/stdint.in.h: Update.
4753         * gnulib/import/stdio.in.h: Update.
4754         * gnulib/import/stdlib.in.h: Update.
4755         * gnulib/import/str-two-way.h: Update.
4756         * gnulib/import/strchrnul.c: Update.
4757         * gnulib/import/strdup.c: Update.
4758         * gnulib/import/streq.h: Update.
4759         * gnulib/import/strerror-override.c: Update.
4760         * gnulib/import/strerror-override.h: Update.
4761         * gnulib/import/strerror.c: Update.
4762         * gnulib/import/string.in.h: Update.
4763         * gnulib/import/stripslash.c: Update.
4764         * gnulib/import/strnlen1.c: Update.
4765         * gnulib/import/strnlen1.h: Update.
4766         * gnulib/import/strstr.c: Update.
4767         * gnulib/import/strtok_r.c: Update.
4768         * gnulib/import/sys_stat.in.h: Update.
4769         * gnulib/import/sys_time.in.h: Update.
4770         * gnulib/import/sys_types.in.h: Update.
4771         * gnulib/import/tempname.c: Update.
4772         * gnulib/import/tempname.h: Update.
4773         * gnulib/import/time.in.h: Update.
4774         * gnulib/import/unistd--.h: Update.
4775         * gnulib/import/unistd-safer.h: Update.
4776         * gnulib/import/unistd.in.h: Update.
4777         * gnulib/import/unsetenv.c: Update.
4778         * gnulib/import/verify.h: Update.
4779         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4780         * gnulib/import/wchar.in.h: Update.
4781         * gnulib/import/wctype.in.h: Update.
4782         * gnulib/import/xalloc-oversized.h: Update.
4783         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4784         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4785
4786 2018-08-16  Gary Benson <gbenson@redhat.com>
4787
4788         PR gdb/13000:
4789         * gdb/main.c (captured_main_1): Exit with nonzero status
4790         in batch mode if the last command to be executed failed.
4791         * NEWS: Mention the above.
4792
4793 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4794
4795         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4796         end of warning message.
4797
4798 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4799
4800         PR gdb/22943:
4801         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4802         (aarch64_extract_return_value): Use
4803         aapcs_is_vfp_call_or_return_candidate.
4804         (aarch64_return_in_memory): Likewise.
4805         (aarch64_store_return_value): Likewise.
4806
4807 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4808
4809         * aarch64-tdep.c
4810         (aapcs_is_vfp_call_or_return_candidate): Make static
4811         (pass_in_v_or_stack): Remove function.
4812         (pass_in_v_vfp_candidate): New function.
4813         (aarch64_push_dummy_call): Check for float register candidates.
4814
4815 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4816
4817         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4818         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4819         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4820
4821 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4822
4823         PR build/23399
4824         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4825         (struct ipa_sym_addresses): Rename to...
4826         (struct ipa_sym_addresses_common): ... this.
4827         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4828
4829 2018-08-28  Tom Tromey  <tom@tromey.com>
4830
4831         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4832         (token_fifo): Now a std::vector.
4833         (yylex, c_parse): Update.
4834         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4835         (token_fifo): Now a std::vector.
4836         (yylex, d_parse): Update.
4837         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4838         (token_fifo): Now a std::vector.
4839         (yylex, go_parse): Update.
4840
4841 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4842
4843         * parser-defs.h (struct type_stack) <elements>: Change type to
4844         std::vector<union type_stack_elt>.
4845         <depth, size>: Remove.
4846         * parse.c (parse_exp_in_context_1): Adjust.
4847         (type_stack_reserve): Remove.
4848         (check_type_stack_depth): Remove.
4849         (insert_into_type_stack): Adjust to std::vector.
4850         (insert_type): Likewise.
4851         (push_type): Likewise.
4852         (push_type_int): Likewise.
4853         (insert_type_address_space): Likewise.
4854         (pop_type): Likewise.
4855         (pop_type_int): Likewise.
4856         (pop_typelist): Likewise.
4857         (pop_type_stack): Likewise.
4858         (append_type_stack): Likewise.
4859         (push_type_stack): Likewise.
4860         (get_type_stack): Likewise.
4861         (type_stack_cleanup): Likewise.
4862         (push_typelist): Likewise.
4863         (follow_types): Likewise.
4864         (_initialize_parse): Likewise.
4865
4866 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4867
4868         * NEWS: Mention csky target.
4869
4870 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4871             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4872             Don Breazeal  <donb@codesourcery.com>
4873
4874         * csky-linux-tdep.c: New file.
4875         * csky-tdep.c: Likewise.
4876         * csky-tdep.h: Likewise.
4877         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4878         csky-tdep.o.
4879         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4880         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4881         * configure.tgt: Add csky support.
4882
4883 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4884
4885         * python/py-framefilter.c (py_print_frame): Print frame architecture
4886         when printing on an MI output.
4887
4888 2018-08-27  Tom Tromey  <tom@tromey.com>
4889
4890         PR build/23087:
4891         * configure: Rebuild.
4892         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4893
4894 2018-08-27  Tom Tromey  <tom@tromey.com>
4895
4896         * aarch64-linux-tdep.c
4897         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4898         casts to int.
4899
4900 2018-08-27  Tom Tromey  <tom@tromey.com>
4901
4902         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4903         unsigned.
4904         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4905         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4906         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4907         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4908         unsigned.
4909
4910 2018-08-27  Tom Tromey  <tom@tromey.com>
4911
4912         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4913         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4914
4915 2018-08-27  Tom Tromey  <tom@tromey.com>
4916
4917         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4918         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4919         ULONGEST_MAX.
4920         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4921         ULONGEST_MAX.
4922         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4923         ULONGEST_MAX.
4924         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4925         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4926         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4927         ULONGEST_MAX.
4928         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4929         (ppc64_linux_sigaction_tramp_frame)
4930         (ppc32_linux_sighandler_tramp_frame)
4931         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4932         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4933         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4934         * mn10300-linux-tdep.c (am33_linux_sigframe)
4935         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4936         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4937         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4938         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4939         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4940         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4941         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4942         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4943         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4944         * microblaze-linux-tdep.c
4945         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4946         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4947         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4948         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4949         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4950         * common/common-types.h (ULONGEST_MAX): New define.
4951         (CORE_ADDR_MAX): Fix formatting.
4952         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4953         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4954         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4955         (arm_linux_rt_sigreturn_tramp_frame)
4956         (arm_eabi_linux_sigreturn_tramp_frame)
4957         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4958         (thumb2_eabi_linux_sigreturn_tramp_frame)
4959         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4960         (arm_linux_restart_syscall_tramp_frame)
4961         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4962         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4963         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4964         ULONGEST_MAX.
4965         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4966
4967 2018-08-27  Tom Tromey  <tom@tromey.com>
4968
4969         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4970         CORE_ADDR_MAX.
4971         * mips-tdep.c (mips_deal_with_atomic_sequence)
4972         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4973         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4974         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4975         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4976         CORE_ADDR_MAX.
4977         * aarch64-tdep.c (aarch64_software_single_step): Use
4978         CORE_ADDR_MAX.
4979
4980 2018-08-27  Tom Tromey  <tom@tromey.com>
4981
4982         * linespec.c (complete_linespec_component): Add cast to "char".
4983         * completer.c (completion_tracker::build_completion_result): Add
4984         cast to "char".
4985
4986 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4987
4988         * solist.h (struct solist, struct target_so_ops): Fix
4989         indentation.
4990
4991 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4992
4993         * ada-tasks.c (ada_task_info_s): Remove typedef.
4994         (DEF_VEC_O(ada_task_info_s)): Remove.
4995         (struct ada_tasks_inferior_data): Initialize fields.
4996         <task_list>: Make an std::vector.
4997         (get_ada_tasks_inferior_data): Allocate with new.
4998         (ada_get_task_number): Adjust.
4999         (get_task_number_from_id): Likewise.
5000         (valid_task_id): Likewise.
5001         (ada_get_task_info_from_ptid): Likewise.
5002         (iterate_over_live_ada_tasks): Likewise.
5003         (add_ada_task): Likewise.
5004         (read_known_tasks): Likewise.
5005         (ada_build_task_list): Likewise.
5006         (print_ada_task_info): Likewise.
5007         (info_task): Likewise.
5008         (task_command_1): Likewise.
5009
5010 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5011
5012         * ada-lang.c (add_angle_brackets): Return std::string.
5013
5014 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5015
5016         * python/py-threadevent.c (py_get_event_thread): Initialize
5017         pythread.
5018
5019 2018-08-24  Pedro Alves  <palves@redhat.com>
5020
5021         * python/py-bpevent.c (create_breakpoint_event_object): Use
5022         copy-initialization.
5023         * python/py-continueevent.c (emit_continue_event): Use
5024         copy-initialization.
5025         * python/py-exitedevent.c (create_exited_event_object): Return a
5026         gdbpy_ref<>.
5027         (emit_exited_event): Use copy-initialization.
5028         * python/py-inferior.c (python_new_inferior)
5029         (python_inferior_deleted, add_thread_object): Use
5030         copy-initialization.
5031         * python/py-infevents.c (create_inferior_call_event_object)
5032         (create_register_changed_event_object)
5033         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5034         (emit_inferior_call_event, emit_memory_changed_event)
5035         (emit_register_changed_event): Use copy-initialization.
5036         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5037         Return a gdbpy_ref<>.
5038         (emit_new_objfile_event): Use copy-initialization.
5039         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5040         (emit_clear_objfiles_event): Use copy-initialization.
5041         * python/py-signalevent.c (create_signal_event_object): Use
5042         copy-initialization.
5043         * python/py-threadevent.c (create_thread_event_object): Use
5044         copy-initialization.
5045
5046 2018-08-24  Pedro Alves  <palves@redhat.com>
5047             Simon Marchi  <simon.marchi@ericsson.com>
5048
5049         PR gdb/23379
5050         * python/py-continueevent.c: Include "gdbthread.h".
5051         (create_continue_event_object): Add intro comment.  Add 'ptid'
5052         parameter.  Use it to find thread to pass to
5053         create_thread_event_object.
5054         (emit_continue_event): Pass PTID down to
5055         create_continue_event_object.
5056         * python/py-event.h (py_get_event_thread): Declare.
5057         (create_thread_event_object): Remove default from 'thread'
5058         parameter.
5059         * python/py-stopevent.c (create_stop_event_object): Use
5060         py_get_event_thread.
5061         * python/py-threadevent.c (get_event_thread): Rename to ...
5062         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5063         and use it to find the thread.
5064         (create_thread_event_object): Assert that THREAD isn't null.
5065         Don't find the event thread here.
5066
5067 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5068
5069         * block.h (blockrange, blockranges): New struct declarations.
5070         (struct block): Add new field named `ranges'.
5071         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5072         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5073         macros for accessing ranges in struct block.
5074         (make_blockranges): New declaration.
5075         block.c (make_blockranges): New function.
5076         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5077         for block.
5078         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5079         * blockframe.c (cache_pc_function_block): New static global.
5080         (clear_pc_function_cache): Clear cache_pc_function_block.
5081         (find_pc_partial_function): Move comment to symtab.h.  Add
5082         support for non-contiguous blocks.
5083         * cli/cli-cmds.c (block.h): Include.
5084         (print_disassembly): Handle printing of non-contiguous blocks.
5085         (disassemble_current_function): Likewise.
5086         (disassemble_command): Likewise.
5087
5088         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5089         BLOCK_START.
5090         * blockframe.c (get_pc_function_start): Likewise.
5091         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5092         (gcc_symbol_address): Likewise.
5093         * compile/compile-object-run.c (compile_object_run): Likewise.
5094         * compile/compile.c (get_expr_block_and_pc): Likewise.
5095         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5096         (func_addr_to_tail_call_list): Likewise.
5097         * findvar.c (default_read_var_value): Likewise.
5098         * inline-frame.c (inline_frame_this_id): Likewise.
5099         (skip-inline_frames): Likewise.
5100         * infcmd.c (until_next_command): Likewise.
5101         * linespec.c (convert_linespec_to_sals): Likewise.
5102         * parse.c (parse_exp_in_context_1): Likewise.
5103         * printcmd.c (build_address_symbolic): likewise.
5104         (info_address_command): Likewise.
5105         symtab.c (find_function_start_sal): Likewise.
5106         (skip_prologue_sal): Likewise.
5107         (find_function_alias_target): Likewise.
5108         (find_gnu_ifunc): Likewise.
5109         * stack.c (find_frame_funname): Likewise.
5110         * symtab.c (fixup_symbol_section): Likewise.
5111         (find_function_start_sal): Likewise.
5112         (skip_prologue_sal): Likewsie.
5113         (find_function_alias_target): Likewise.
5114         (find_gnu_ifunc): Likewise.
5115         * tracepoint.c (info_scope_command): Likewise.
5116         * value.c (value_fn_field): Likewise.
5117
5118         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5119         in place of find_pc_partial_function.
5120         * blockframe.c (find_function_entry_range_from_pc): New function.
5121         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5122         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5123         for each range in a block.
5124
5125
5126 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5127
5128         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5129         incrementation.
5130
5131 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5132
5133         * solib-svr4.c (read_program_headers_from_bfd): Return
5134         gdb::optional<gdb::byte_vector>.
5135         (svr4_exec_displacement): Adjust.
5136
5137 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5138
5139         * solib-svr4.c (read_program_header): Return
5140         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5141         (find_program_interpreter): Return
5142         gdb::optional<gdb::byte_vector>.
5143         (scan_dyntag_auxv): Adjust.
5144         (enable_break): Adjust.
5145         (svr4_exec_displacement): Adjust.
5146
5147 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5148
5149         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5150         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5151
5152 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5153
5154         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5155         string_vprintf.
5156         * guile/scm-utils.c (gdbscm_printf): Likewise.
5157         * serial.c (serial_printf): Likewise.
5158         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5159
5160 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5161
5162         * stack.c (print_frame): Print frame architecture when printing on
5163         an MI output.
5164         * NEWS: Mention new "arch" attribute in frame output.
5165
5166 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5167
5168         * arch/aarch64.h (aarch64_regnum): Update comment.
5169
5170 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5171
5172         * NEWS: Add SVE to 8.2 section.
5173
5174 2018-08-21  Pedro Alves  <palves@redhat.com>
5175
5176         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5177         out from gdbscm_parse_function_args.
5178         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5179         gdbscm_parse_function_args_1.
5180
5181 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5182
5183         PR gdb/17816
5184         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5185         operator.
5186
5187 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5188
5189         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5190
5191 2018-08-19  Michael Spang  <spang@google.com>
5192
5193         PR gdb/11786
5194         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5195         for PT_TLS segments.
5196
5197 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5198
5199         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5200         dwarf_variable_value.
5201         * dwarf2-frame.c (class dwarf_expr_executor):
5202         Add override for dwarf_variable_value.
5203         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5204         (class symbol_needs_eval_context): Likewise.
5205         (indirect_synthetic_pointer): Add forward declaration.
5206         (sect_variable_value): New function.
5207         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5208         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5209         for DW_OP_GNU_variable_value.
5210
5211 2018-08-16  Tom Tromey  <tom@tromey.com>
5212
5213         * top.c (read_command_file): Update.
5214         (command_line_input): Remove "repeat" argument.
5215         * ada-lang.c (get_selections): Update.
5216         * linespec.c (decode_line_2): Update.
5217         * defs.h (command_line_input): Remove argument.
5218         * cli/cli-script.c (read_next_line): Update.
5219         * python/py-gdb-readline.c: Update.
5220
5221 2018-08-17  Tom Tromey  <tom@tromey.com>
5222
5223         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5224         command_line_input.
5225
5226 2018-08-15  Tom Tromey  <tom@tromey.com>
5227
5228         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5229
5230 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5231
5232         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5233         If used, use find_pc_partial_function to find address range
5234         to disassemble.
5235         * mi/mi-main.c (mi_cmd_list_features): Report
5236         "data-disassemble-a-option" feature.
5237         * NEWS: Mention new -data-disassemble option -a.
5238
5239 2018-08-13  Tom Tromey  <tom@tromey.com>
5240
5241         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5242
5243 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5244
5245         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5246         (aarch64_linux_collect_sve_regset): Likewise.
5247         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5248         * regcache.h (regcache_map_entry_size): New function.
5249
5250 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5251
5252         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5253         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5254         (SVE_HEADER_VL_LENGTH): Likewise.
5255         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5256         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5257         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5258         (SVE_HEADER_SIZE_OFFSET): Likewise.
5259         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5260         (SVE_HEADER_VL_OFFSET): Likewise.
5261         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5262         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5263         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5264         (SVE_HEADER_SIZE): Likewise.
5265         (aarch64_linux_core_read_vq): Add function.
5266         (aarch64_linux_core_read_description): Check for SVE section.
5267
5268 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5269
5270         * aarch64-fbsd-tdep.c
5271         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5272         collect_size.
5273         * aarch64-linux-tdep.c
5274         (aarch64_linux_iterate_over_regset_sections): Likewise.
5275         * alpha-linux-tdep.c
5276         (alpha_linux_iterate_over_regset_sections):
5277         * alpha-nbsd-tdep.c
5278         (alphanbsd_iterate_over_regset_sections): Likewise.
5279         * amd64-fbsd-tdep.c
5280         (amd64fbsd_iterate_over_regset_sections): Likewise.
5281         * amd64-linux-tdep.c
5282         (amd64_linux_iterate_over_regset_sections): Likewise.
5283         * arm-bsd-tdep.c
5284         (armbsd_iterate_over_regset_sections): Likewise.
5285         * arm-fbsd-tdep.c
5286         (arm_fbsd_iterate_over_regset_sections): Likewise.
5287         * arm-linux-tdep.c
5288         (arm_linux_iterate_over_regset_sections): Likewise.
5289         * corelow.c (get_core_registers_cb): Likewise.
5290         (core_target::fetch_registers): Likewise.
5291         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5292         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5293         * gdbarch.h (void): Regenerate.
5294         * gdbarch.sh: Add supply_size and collect_size.
5295         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5296         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5297         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5298         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5299         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5300         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5301         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5302         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5303         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5304         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5305         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5306         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5307         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5308         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5309         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5310         Likewise.
5311         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5312         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5313         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5314         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5315         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5316         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5317         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5318         Likewise.
5319         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5320         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5321         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5322         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5323         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5324         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5325         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5326         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5327
5328 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5329
5330         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5331         with string_printf.
5332
5333 2018-08-10  Keith Seitz  <keiths@redhat.com>
5334
5335         * compile/compile-c-support.c (add_code_header, add_code_footer):
5336         Move into policy class.
5337         (c_push_user_expression, pop_user_expression_nop)
5338         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5339         (compile_program): New host class.
5340         (c_compile_program): New typedef.
5341         (c_compute_porgram): Use c_compile_program.
5342
5343 2018-08-10  Keith Seitz  <keiths@redhat.com>
5344
5345         * compile/compile-internal.h (compile_instance::~compile_instance):
5346         Remove calls to htab_delete.
5347         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5348         * compile.c (compile_instance::compile_instance): Initialize
5349         htab unique pointers.
5350         (compile_instance::get_cached_type, compile_instance::insert_type)
5351         (compile_instance::error_symbol_once): Update for unique_ptr.
5352
5353 2018-08-10  Keith Seitz  <keiths@redhat.com>
5354
5355         * compile/compile-c-symbols.c (struct symbol_error)
5356         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5357         (compile_instance::insert_symbol_error)
5358         (compile_instance::error_symbol_once): Move to ...
5359         * compile/compile.c: ... here.
5360
5361 2018-08-10  Keith Seitz  <keiths@redhat.com>
5362
5363         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5364         instead of `new_compile_instance'.
5365         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5366         Update description.
5367         If the symbol error map is not initialized, create it.
5368         (generate_c_for_for_one_symbol): Do not check/initialize
5369         the symbol error map.
5370         * compile/compile-c-types.c (compile_c_instance): Make a class.
5371         Update all callers.
5372         (compile_instance::compile_instance): Initialize the type cache.
5373         (get_cached_type): New function.
5374         (insert_type): Update description.
5375         (compile_c_instance::m_default_cflags): Define.
5376         (convert_type): Update description.  Use get_cached_type.
5377         (delete_instance): Moved to destructor.
5378         (new_compile_instance): Moved to constructor.
5379         * compile/compile-c.h (compile_c_instance): Make class inheriting
5380         from compile_instance.
5381         <base>: Remove field.
5382         <type_map, symbol_err_map>: Move to base class.
5383         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5384         * compile/compile-internal.h (compile_instance): Make class.
5385         <type_map_t, symbol_err_map_t>: Define.
5386         <fe>: Rename to `m_gcc_fe'.
5387         <scope, block, gcc_target_options>: Add `m_' prefix.
5388         <m_type_map, m_symbol_err_map>: New fields, moved from
5389         compile_c_instance.
5390         <destroy>: Remove.
5391         (convert_type, new_compile_instance): Remove.
5392         * compile/compile.c (cleanup_compile_instance): Remove.
5393         (compile_to_object): Use unique_ptr to eliminate cleanups.
5394         (compile_instance::set_print_callback, compile_instance::version)
5395         (compile_instance::set_verbose)
5396         (compile_instance::set_driver_filename)
5397         (compile_instance::set_triplet_regexp)
5398         (compile_instance::set_arguments)
5399         (compile_instance::set_source_file)
5400         (compile_instance::compile): Define.
5401
5402 2018-08-10  Keith Seitz  <keiths@redhat.com>
5403
5404         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5405         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5406         gcc-c-fe.def to define C plugin.
5407         (delete_instance): Delete `c_plugin'.
5408         (new_compile_instance): Initialize `c_plugin'.
5409         * compile/compile-c.h: Include gcc_c_plugin.h.
5410         (struct compile_c_instance) <c_plugin>: New member.
5411         * gcc-c-plugin.h: New file.
5412         Update all callers with API change.
5413
5414 2018-08-10  Keith Seitz  <keiths@redhat.com>
5415
5416         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5417         (HFILES_NO_SRCDIR): ... to here.
5418         Add compile-internal.h and compile-c.h.
5419         * compile/compile-c-support.c: Include compile-c.h.
5420         * compile/compile-c-symbols.c: Include compile-c.h.
5421         (generate_c_for_variable_locations): Update comment.
5422         * compile/compile-c-types.c: Include compile-c.h.
5423         * compile/compile-c.h: New file -- moved C language declarations
5424         from other files here.
5425         * compile/compile-internal.h: Do not include hashtab.h or
5426         common/enum-flags.h.
5427         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5428         (gcc_convert_symbol, gcc_symbol_address)
5429         (generate_c_for_variable_locations, c_get_mode_for_size)
5430         (c_get_range_decl_name): Definitions moved to compile-c.h.
5431         * compile/compile-loc2c.c: Include compile-c.h.
5432
5433 2018-08-10  Keith Seitz  <keiths@redhat.com>
5434
5435         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5436         (c_symbol_substitution_name): ... this.
5437         Update all callers.
5438
5439 2018-08-10  Keith Seitz  <keiths@redhat.com>
5440
5441         * compile/compile-c-support.c (c_compute_program): Use
5442         unique_xmalloc_ptr to eliminate cleanup.
5443         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5444         Return a unique_xmalloc_ptr and eliminate cleanup.
5445         * compile/compile-internal.h (generate_c_for_variable_locations):
5446         Return unique_xmalloc_ptr and update description.
5447
5448 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5449
5450         * corelow.c (core_target::get_core_register_section): Rename
5451         min_size to section_min_size.
5452
5453 2018-08-09  Jim Wilson  <jimw@sifive.com>
5454
5455         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5456         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5457         * NEWS: Mention new GNU/Linux RISC-V target.
5458         * configure.host: Add riscv*-*-linux*.
5459         * configure.nat: Add riscv*.
5460         * configure.tgt: Add riscv*-*-linux*.
5461         * riscv-linux-nat.c: New file.
5462         * riscv-linux-tdep.c: New file.
5463
5464 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5465
5466         * infrun.c (resume): Make static, add forward declaration.
5467         (proceed): Update header comment.
5468         * infrun.h (resume): Delete declaration.
5469
5470 2018-08-09  Tom Tromey  <tom@tromey.com>
5471
5472         * riscv-tdep.h: Minor formatting fixes.
5473
5474 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5475
5476         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5477         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5478         (test_mkdir_recursive): Likewise.
5479         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5480
5481 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5482
5483         * valarith.c (value_subscripted_rvalue): If an array is not in
5484         memory, and we don't know the upper bound, then we can't know that
5485         the requested element exists or not.
5486
5487 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5488
5489         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5490         (target_options_to_string): Add comment.
5491
5492 2018-08-08  Tom Tromey  <tom@tromey.com>
5493
5494         * unittests/scoped_mmap-selftests.c: Check result of "write".
5495
5496 2018-08-08  Jim Wilson  <jimw@sifive.com>
5497
5498         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5499         (decode_register_index_short): New.
5500         (decode_j_type_insn, decode_cj_type_insn): New.
5501         (decode_b_type_insn, decode_cb_type_insn): New.
5502         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5503         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5504         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5505         is_c_sw_insn instead of is_sw_insn.
5506         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5507         (riscv_software_single_step): New.
5508         * riscv-tdep.h (riscv_software_single_step): Declare.
5509
5510         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5511         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5512
5513 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5514
5515         PR gdb/18050:
5516         * target.c (dispose_inferior): Don't dispose of inferiors that are
5517         already killed.
5518
5519 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5520
5521         * remote.c (remote_target::download_tracepoint): Change char* to
5522         const char*.
5523
5524 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5525
5526         * target.h (target_options_to_string): Return an std::string.
5527         * target.c (str_comma_list_concat_elem): Return void, use
5528         std::string.
5529         (do_option): Likewise.
5530         (target_options_to_string): Return an std::string.
5531         * linux-nat.c (linux_nat_target::wait): Adjust.
5532         * target-debug.h (target_debug_print_options): Adjust.
5533
5534 2018-08-07  Tom Tromey  <tom@tromey.com>
5535
5536         * Makefile.in (CPPFLAGS): New variable.
5537         (INTERNAL_CPPFLAGS): Use it.
5538
5539 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5540
5541         * NEWS: Mention the index cache.
5542
5543 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5544
5545         * common/pathstuff.h (get_standard_cache_dir): New.
5546         * common/pathstuff.c (get_standard_cache_dir): New.
5547         * build-id.h (build_id_to_string): New.
5548         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5549         DEBUG_STR_SUFFIX): Move to here.
5550         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5551         DEBUG_STR_SUFFIX): Move from there.
5552         (write_psymtabs_to_index): Make non-static, add basename
5553         parameter.  Write to temporary files, rename when done.
5554         (save_gdb_index_command): Adjust call to
5555         write_psymtabs_to_index.
5556         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5557         field.
5558         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5559         (get_gdb_index_contents_from_cache): New.
5560         (get_gdb_index_contents_from_cache_dwz): New.
5561         (dwarf2_initialize_objfile): Read index from cache.
5562         (dwarf2_build_psymtabs): Save to index.
5563         * dwarf-index-cache.h: New file.
5564         * dwarf-index-cache.c: New file.
5565         * dwarf-index-write.h: New file.
5566
5567 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5568
5569         * gnulib/aclocal.m4: Re-generate.
5570         * gnulib/config.in: Re-generate.
5571         * gnulib/configure: Re-generate.
5572         * gnulib/import/Makefile.am: Re-generate.
5573         * gnulib/import/Makefile.in: Re-generate.
5574         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5575         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5576         * gnulib/import/m4/mkdir.m4: New file.
5577         * gnulib/import/mkdir.c: New file.
5578         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5579         module.
5580
5581 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5582
5583         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5584         * common/scoped_mmap.c: New file.
5585         * common/scoped_mmap.h (destroy): New method.
5586         (~scoped_mmap, reset): Use destroy.
5587         (scoped_mmap): New move constructor.
5588         (mmap_file): New declaration.
5589         * unittests/scoped_mmap-selftests.c (test_normal,
5590         test_invalid_filename, run_tests): New functions.
5591         (_initialize_scoped_mmap_selftests): Register selftest.
5592
5593 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5594
5595         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5596         (read_gdb_index_from_buffer): ... this.  Remove section
5597         parameter, add buffer parameter.
5598         (get_gdb_index_contents_ftype,
5599         get_gdb_index_contents_dwz_ftype): New typedefs.
5600         (dwarf2_read_gdb_index): Add callback parameters to get the
5601         index contents.
5602         (get_gdb_index_contents_from_section): New.
5603         (dwarf2_initialize_objfile): Update call to
5604         dwarf2_read_gdb_index.
5605
5606 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5607
5608         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5609         (gdb_open_cloexec): Likewise.
5610         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5611         (commandline_from_pid): Likewise.
5612         (linux_xfer_osdata_threads): Likewise.
5613         (linux_xfer_osdata_fds): Likewise.
5614         * ada-lang.c (is_package_name): Likewise.
5615         * auxv.c (procfs_xfer_auxv): Likewise.
5616         * breakpoint.c (print_one_breakpoint_location): Use
5617         uiout::field_fmt.
5618         (print_one_catch_solib): Use string_printf.
5619         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5620         (add_pe_forwarded_sym): Likewise.
5621         * dwarf2read.c (create_type_unit_group): Likewise.
5622         (build_error_marker_type): Likewise.
5623         * infcall.c (get_function_name): Likewise.
5624         * valprint.c (print_converted_chars_to_obstack): Likewise.
5625         * xtensa-tdep.c (xtensa_register_type): Likewise.
5626
5627 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5628
5629         * remote.c (remote_target::download_tracepoint): Fix format
5630         string errors.
5631
5632 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5633
5634         * tracefile.c: Include common/byte-vector.h.
5635         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5636         with trace_regblock_size if needed.  Update uses of buf.
5637
5638 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5639
5640         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5641         std::vector<unsigned char>.
5642         * tracepoint.c (collection_list::collection_list): Remove
5643         m_regs_mask initializer from initializer list.  Resize
5644         m_regs_mask using the largest remote register number.
5645         (collection_list::add_remote_register): Remove size check on
5646         m_regs_mask.  Use at to access element.
5647         (collection_list::stringify): Change type of temp_buf to
5648         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5649         stringify the register mask.  Use pack_hex_byte for the register
5650         mask.
5651
5652 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5653
5654         * tracepoint.h (class collection_list) <add_register>: Remove.
5655         <add_remote_register, add_ax_registers, add_local_register>:
5656         Declare.
5657         <add_memrange>: Add scope parameter.
5658         * tracepoint.c (encode_actions_1): Likewise.
5659         (collection_list::add_register): Rename to ...
5660         (collection_list::add_remote_register): ... this.  Update
5661         comment.
5662         (collection_list::add_ax_registers, add_local_register): New
5663         methods.
5664         (collection_list::add_memrange): Add scope parameter.  Call
5665         add_local_register instead of add_register.
5666         (finalize_tracepoint_aexpr): New function.
5667         (collection_list::collect_symbol): Update calls to add_memrange.
5668         Call add_local_register instead of add_register.  Call
5669         add_ax_registers.  Call finalize_tracepoint_aexpr.
5670         (encode_actions_1): Get remote regnos for $reg action.  Call
5671         add_remote_register, add_ax_registers, and add_local_register.
5672         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5673         (validate_actionline): Call finalize_tracepoint_aexpr.
5674
5675 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5676
5677         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5678         Replace array buf with gdb::char_vector buf, of size
5679         get_remote_packet_size ().  Replace references to buf and
5680         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5681         and xsnprintf with snprintf.  Raise errors if the buffer is too
5682         small.
5683
5684 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5685
5686         * remote.c (remote_target::download_tracepoint): Fix the has_more
5687         predicate in the QTDP action list iteration.
5688
5689 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5690
5691         * remote.c (remote_target::download_tracepoint): Fix indentation
5692         in for block.
5693
5694 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5695
5696         * proc-api.c (_initialize_proc_api): Remove c, unused.
5697         * procfs.c (procfs_init_inferior): Remove signals, unused.
5698         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5699         unused.
5700
5701 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5702             Andrew Burgess  <andrew.burgess@embecosm.com>
5703
5704         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5705         'W_STOPCODE (0)' as this could be ambiguous.
5706
5707 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5708
5709         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5710         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5711         "ai_socktype").
5712
5713 2018-08-02  Tom Tromey  <tom@tromey.com>
5714
5715         PR symtab/16842.
5716         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5717         symbols.
5718         (process_structure_scope): Likewise.
5719
5720 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5721
5722         PR gdb/22629:
5723         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5724         kill inferior.
5725
5726 2018-08-02  Tom Tromey  <tom@tromey.com>
5727
5728         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5729         (darwin_suspend_inferior, darwin_resume_inferior)
5730         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5731         (darwin_check_new_threads): Check result of get_darwin_inferior.
5732
5733 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5734
5735         GDB 8.1.1 released.
5736
5737 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5738
5739         * varobj.c (varobj_get_path_expr_parent): Report an error if
5740         parent is a dynamic varobj.
5741
5742 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5743
5744         * gnulib/aclocal.m4: Re-generate.
5745         * gnulib/config.in: Re-generate.
5746         * gnulib/configure: Re-generate.
5747         * gnulib/import/Makefile.in: Re-generate.
5748         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5749         * gnulib/import/m4/onceonly.m4: Re-generate.
5750
5751 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5752
5753         * target-descriptions.c (struct xml_test_tdesc): New.
5754         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5755         (record_xml_tdesc): Update.
5756         (maintenance_check_xml_descriptions): Update.
5757         * target-descriptions.h (record_xml_tdesc): Update comment.
5758
5759 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5760
5761         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5762         checking array bounds are defined.
5763
5764 2018-07-30  Tom Tromey  <tom@tromey.com>
5765
5766         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5767         irreflexivity violation.
5768
5769 2018-07-30  Tom Tromey  <tom@tromey.com>
5770
5771         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5772         * value.c (unpack_long): Remove lint code.
5773         * valops.c (value_ind): Remove lint code.
5774         * valarith.c (value_x_binop, value_x_unop, value_equal)
5775         (value_pos): Remove lint code.
5776
5777 2018-07-28  Tom de Vries  <tdevries@suse.de>
5778
5779         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5780         with undefined upper bound as <optimized out>.
5781
5782 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5783
5784         * gcore.in: Rename variable "name" to "prefix".  Expand
5785         "usage" text.
5786
5787 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5788
5789         * windows-nat.c (windows_nat_target::create_inferior): Update to
5790         call close() in global namespace.
5791
5792 2018-07-26  Tom Tromey  <tom@tromey.com>
5793
5794         * dwarf-index-write.c (add_address_entry): Don't add objfile
5795         offsets.
5796         * dbxread.c (find_stab_function): Rename from
5797         find_stab_function_addr.  Return a bound_minimal_symbol.
5798         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5799         Don't add objfile offsets.
5800         (end_psymtab): Use raw_text_low, raw_text_high,
5801         MSYMBOL_VALUE_RAW_ADDRESS.
5802         (read_ofile_symtab): Update.
5803         (process_one_symbol): Update.
5804         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5805         offsets.
5806         (dw2_relocate): Remove.
5807         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5808         searching addrmap.
5809         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5810         Update.
5811         (process_psymtab_comp_unit_reader, add_partial_symbol)
5812         (add_partial_subprogram, dwarf2_ranges_read): Update.
5813         (load_partial_dies): Update.
5814         (add_address_entry): Don't add objfile offsets.
5815         (dwarf2_build_include_psymtabs): Update.
5816         (create_addrmap_from_aranges): Don't add objfile offsets.
5817         (dw2_find_pc_sect_compunit_symtab): Update.
5818         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5819         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5820         Update.
5821         (parse_partial_symbols): Don't add objfile offsets.  Use
5822         raw_text_low, raw_text_high.  Update.
5823         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5824         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5825         or call 'relocate' quick function.  Clear psymbol_map.
5826         * psympriv.h (struct partial_symbol) <address>: Add section
5827         offset.
5828         <set_unrelocated_address>: Rename from set_address.
5829         <raw_text_low, raw_text_high>: New methods.
5830         <text_low, text_high>: Add objfile parameter.
5831         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5832         set_unrelocated_address.
5833         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5834         (find_pc_psymbol): Update.
5835         (fixup_psymbol_section, relocate_psymtabs): Remove.
5836         (dump_psymtab, psym_functions): Update.
5837         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5838         parameter.
5839         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5840         (start_psymtab_common): Update.
5841         * symfile-debug.c (debug_qf_relocate): Remove.
5842         (debug_sym_quick_functions): Update.
5843         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5844         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5845         Update.
5846
5847 2018-07-26  Tom Tromey  <tromey@redhat.com>
5848
5849         * dbxread.c (end_psymtab): Use text_high_valid and
5850         text_low_valid.
5851         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5852         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5853         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5854         Update comment.
5855         <text_low_valid, text_high_valid>: New fields.
5856         <set_text_low, set_text_high>: Update.
5857         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5858
5859 2018-07-26  Tom Tromey  <tom@tromey.com>
5860
5861         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5862         Update.
5863         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5864         textlow and texthigh fields.
5865         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5866         Update.
5867         * mdebugread.c (parse_lines, parse_partial_symbols)
5868         (psymtab_to_symtab_1): Update.
5869         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5870         Rename fields.  Update comment.  Now private.
5871         <text_low, text_high, set_text_low, set_text_high>: New methods.
5872         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5873         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5874         (start_psymtab_common, maintenance_info_psymtabs)
5875         (maintenance_check_psymtabs): Update.
5876         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5877         texthigh fields.
5878         (scan_xcoff_symtab): Update.
5879
5880 2018-07-26  Tom Tromey  <tromey@redhat.com>
5881
5882         * psympriv.h (struct partial_symbol) <unrelocated_address,
5883         address, set_address>: New methods.
5884         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5885         (fixup_psymbol_section, relocate_psymtabs): Update.
5886         (print_partial_symbols): Add 'objfile' parameter.  Update.
5887         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5888         Update.
5889
5890 2018-07-26  Tom Tromey  <tom@tromey.com>
5891
5892         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5893         (debug_names::write_psymbols): Update.
5894         * psympriv.h (struct partial_symbol): Derive from
5895         general_symbol_info.
5896         <obj_section>: New method.
5897         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5898         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5899         (find_pc_sect_psymbol, fixup_psymbol_section)
5900         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5901         (print_partial_symbols, recursively_search_psymtabs)
5902         (compare_psymbols, psymbol_hash, psymbol_compare)
5903         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5904         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5905
5906 2018-07-26  Tom Tromey  <tromey@redhat.com>
5907
5908         * dbxread.c (end_psymtab): Remove dead code.
5909
5910 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5911
5912         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5913         DWARF unwinders are disabled.
5914         * dwarf2-frame.c: Add dwarf2read.h include.
5915         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5916         disabled.
5917         (dwarf2_frame_unwinders_enabled_p): Define.
5918         (show_dwarf_unwinders_enabled_p): New function.
5919         (_initialize_dwarf2_frame): Register switch to control DWARF
5920         unwinder use.
5921         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5922         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5923         (show_dwarf_cmdlist): Remove static keyword.
5924         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5925         (show_dwarf_cmdlist): Declare.
5926         * NEWS: Document new feature.
5927
5928 2018-07-26  Tom de Vries  <tdevries@suse.de>
5929
5930         PR breakpoints/23366
5931         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5932
5933 2018-07-26  Tom de Vries  <tdevries@suse.de>
5934
5935         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5936         DW_AT_count can't be translated to a dynamic prop.
5937
5938 2018-07-25  Tom de Vries  <tdevries@suse.de>
5939
5940         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5941         try/catch.
5942
5943 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5944
5945         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5946
5947 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5948
5949         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5950
5951 2018-07-24  Keith Seitz  <keiths@redhat.comt
5952
5953         PR symtab/23010
5954         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5955         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5956         instead of add_symbol_to_list.
5957         (read_file_scope): Call prepare_one_comp_unit before reading
5958         any other DIEs.
5959
5960 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5961
5962         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5963
5964 2018-07-24  Tom Tromey  <tom@tromey.com>
5965
5966         * utils.c (malloc, realloc, free): Don't declare.
5967         * configure, config.in: Rebuild.
5968         * configure.ac: Don't check for declarations of free, malloc, or
5969         realloc.
5970
5971 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5972
5973         * aarch64-linux-nat.c
5974         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5975         variable.
5976         * arm-linux-nat.c (fetch_regs): Likewise.
5977         (store_regs): Likewise.
5978         (fetch_vfp_regs): Likewise.
5979         (store_vfp_regs): Likewise.
5980         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5981         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5982         (arm_linux_nat_target::insert_watchpoint): Likewise.
5983         (arm_linux_nat_target::remove_watchpoint): Likewise.
5984         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5985         Likewise.
5986         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5987         Likewise.
5988         * ppc-linux-nat.c (fetch_register): Likewise.
5989         (fetch_all_gp_regs): Likewise.
5990         (fetch_ppc_registers): Likewise.
5991         (store_all_gp_regs): Likewise.
5992         (store_ppc_registers): Likewise.
5993         (hwdebug_insert_point): Likewise.
5994         (can_use_watchpoint_cond_accel): Likewise.
5995         * remote-sim.c (gdb_os_write_stdout): Likewise.
5996
5997 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5998             Tom Tromey  <tom@tromey.com>
5999
6000         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6001         test for it.
6002         * configure: Rebuild.
6003
6004 2018-07-22  Tom Tromey  <tom@tromey.com>
6005
6006         * regformats/regdat.sh: Define xmltarget_${name} inside
6007         #ifndef IN_PROCESS_AGENT.
6008
6009 2018-07-22  Tom Tromey  <tom@tromey.com>
6010
6011         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6012
6013 2018-07-22  Tom Tromey  <tom@tromey.com>
6014
6015         * symfile.c (reread_symbols): Notify iter, not objfile.
6016
6017 2018-07-22  Tom Tromey  <tom@tromey.com>
6018
6019         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6020         Use arch_ops.
6021         (ravenscar_thread_target::prepare_to_store): Likewise.
6022
6023 2018-07-22  Tom Tromey  <tom@tromey.com>
6024
6025         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6026         unused variable.  Call value_fetch_lazy when needed.
6027         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6028         Remove unused variable.  Call value_fetch_lazy when needed.
6029
6030 2018-07-22  Tom Tromey  <tom@tromey.com>
6031
6032         * m32c-tdep.c (mark_dma): Return void.
6033         (make_regs): Remove unused declarations.
6034
6035 2018-07-22  Tom Tromey  <tom@tromey.com>
6036
6037         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6038         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6039         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6040         bkscm_get_valid_block_smob_arg_unsafe for effect.
6041
6042 2018-07-22  Tom Tromey  <tom@tromey.com>
6043
6044         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6045         value_type.
6046
6047 2018-07-22  Tom Tromey  <tom@tromey.com>
6048
6049         * windows-nat.c (saved_context): Conditionally define.
6050         * remote.c (remote_target::remote_btrace_maybe_reopen):
6051         Conditionally declare "warned".
6052         * inflow.c (sigquit_ours): Conditionally define.
6053         (new_tty): Move "tty" declaration inside #if.
6054         * guile/guile.c (guile_datadir): Conditionally define.
6055         * charset.c (set_be_le_names): Move some declarations inside #if.
6056         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6057         #if.
6058         (parse_xml_btrace_conf): Likewise.
6059
6060 2018-07-22  Tom Tromey  <tom@tromey.com>
6061
6062         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6063
6064 2018-07-22  Tom Tromey  <tom@tromey.com>
6065
6066         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6067         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6068         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6069         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6070         * stack.c (frame_apply_level_command): Remove unused variable.
6071         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6072         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6073         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6074         unused variable.
6075         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6076         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6077         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6078         variable.
6079         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6080         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6081         variable.
6082         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6083         Remove unused variable.
6084         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6085         variable.
6086         * common/tdesc.c (print_xml_feature::visit): Remove unused
6087         variable.
6088         * compile/compile-object-load.c (store_regs): Remove unused
6089         variables.
6090         * complaints.c (clear_complaints): Remove unused variable.
6091         * corelow.c (core_target_open): Remove unused variable.
6092         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6093         variable.
6094         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6095         variable.
6096         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6097         variable.
6098         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6099         variable.
6100         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6101         variable.
6102         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6103         variable.
6104         * ia64-tdep.c (examine_prologue): Remove unused variable.
6105         * infcall.c (run_inferior_call): Remove unused variable.
6106         * inferior.c (exit_inferior): Remove unused variable.
6107         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6108         * linespec.c (decode_line_2): Remove unused variable.
6109         * linux-nat.c (super_close): Remove.
6110         * linux-tdep.c (linux_info_proc): Remove unused variable.
6111         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6112         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6113         Remove unused variable.
6114         * parse.c (find_minsym_type_and_address): Remove unused variable.
6115         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6116         variable.
6117         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6118         variable.
6119         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6120         variables.
6121         * record-btrace.c (record_btrace_target::store_registers): Remove
6122         unused variable.
6123         (cmd_show_record_btrace_cpu): Remove unused variable.
6124         * riscv-tdep.c (riscv_register_reggroup_p)
6125         (riscv_push_dummy_call, riscv_return_value): Remove unused
6126         variable.
6127         * rust-exp.y (literal): Remove unused variable.
6128         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6129         unused variable.
6130         <STRUCTOP_ANONYMOUS>: Likewise.
6131         * s390-linux-tdep.c (s390_linux_init_abi_31)
6132         (s390_linux_init_abi_64): Remove unused variable.
6133         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6134         (file_select_thread, net_windows_open, _initialize_ser_windows):
6135         Remove unused variables.
6136         * symtab.c (find_pc_sect_line): Remove unused variable.
6137         * target-memory.c (compute_garbled_blocks): Remove unused
6138         variable.
6139         (target_write_memory_blocks): Remove unused variable.
6140         * target.c (target_stack::unpush): Remove unused variables.
6141         * tracepoint.c (start_tracing, all_tracepoint_actions)
6142         (merge_uploaded_trace_state_variables)
6143         (print_one_static_tracepoint_marker): Remove unused variable.
6144         * unittests/basic_string_view/element_access/char/1.cc (test01):
6145         Remove unused variable.
6146         * windows-nat.c (windows_continue, windows_add_all_dlls)
6147         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6148         Remove unused variables.
6149
6150 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6151
6152         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6153         attr_profile in HAVE_ELF.
6154         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6155         HAVE_ELF.
6156
6157 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6158
6159         * frame.c (frame_register_unwind): Change parameter name.
6160         (frame_unwind_register): Likewise.
6161         (frame_unwind_register_value): Likewise.
6162         (frame_unwind_register_signed): Likewise.
6163         (frame_unwind_register_unsigned): Likewise.
6164         * frame.h (frame_register_unwind): Likewise.
6165         (frame_unwind_register): Likewise.
6166         (frame_unwind_register_value): Likewise.
6167         (frame_unwind_register_signed): Likewise.
6168         (frame_unwind_register_unsigned): Likewise.
6169         (frame_unwind_arch): Likewise.
6170
6171 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6172
6173         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6174         ISA maintenance.
6175
6176 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6177
6178         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6179         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6180         hand.
6181
6182 2018-07-20  Keith Seitz  <keiths@redhat.com>
6183
6184         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6185         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6186         m_compunit_symtab, m_language>: Add "m_" prefix.
6187         Update all uses.
6188         * buildsym.c: Update all uses.
6189
6190 2018-07-20  Tom Tromey  <tom@tromey.com>
6191
6192         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6193         * buildsym.h (record_line_ftype): Remove typedef.
6194
6195 2018-07-20  Tom Tromey  <tom@tromey.com>
6196
6197         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6198         (end_expandable_symtab): Likewise.
6199         (end_symtab_get_static_block): Likewise.
6200         (end_symtab_from_static_block): Likewise.
6201         * buildsym-legacy.c (augment_type_symtab): Remove.
6202         (end_expandable_symtab): Remove.
6203         (end_symtab_get_static_block): Remove.
6204         (end_symtab_from_static_block): Remove.
6205
6206 2018-07-20  Tom Tromey  <tom@tromey.com>
6207
6208         * dwarf2read.c: Include buildsym.h.
6209         (struct dwarf2_cu) <builder>: New method.
6210         (fixup_go_packaging): Update.
6211         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6212         use scoped_free_pendings.
6213         (using_directives): Add "cu" parameter, remove "language".
6214         (read_import_statement, setup_type_unit_groups, )
6215         (read_func_scope, read_lexical_block_scope)
6216         (dwarf2_record_block_ranges, read_namespace): Update.
6217         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6218         (lnp_state_machine::handle_end_sequence): Update.
6219         (class lnp_state_machine) <m_cu>: New member.
6220         <m_record_line_callback>: Remove.
6221         <m_currently_recording_lines>: New member.
6222         (lnp_state_machine::handle_set_file): Update.
6223         (noop_record_line): Remove.
6224         (dwarf_record_line_p): Add cu parameter.
6225         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6226         (lnp_state_machine::record_line)
6227         (lnp_state_machine::lnp_state_machine)
6228         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6229         (dwarf_decode_lines): Update.
6230         (dwarf2_start_subfile): Add cu parameter.
6231         (dwarf2_start_symtab, new_symbol): Update.
6232         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6233         Remove dwarf2_per_objfile parameter.
6234         (dwarf_decode_macros): Update.
6235
6236 2018-07-20  Tom Tromey  <tom@tromey.com>
6237
6238         * stabsread.c (define_symbol): Update.
6239         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6240         * dwarf2read.c (new_symbol): Update.
6241         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6242         * cp-namespace.c: Include buildsym.h.
6243         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6244         * buildsym-legacy.c (get_buildsym_compunit): New function.
6245
6246 2018-07-20  Tom Tromey  <tom@tromey.com>
6247
6248         * xcoffread.c: Include buildsym-legacy.h.
6249         * windows-nat.c: Include buildsym-legacy.h.
6250         * stabsread.c: Include buildsym-legacy.h.
6251         * mdebugread.c: Include buildsym-legacy.h.
6252         * buildsym-legacy.h: New file.
6253         * buildsym-legacy.c: New file, from buildsym.c.
6254         * go32-nat.c: Include buildsym-legacy.h.
6255         * dwarf2read.c: Include buildsym-legacy.h.
6256         * dbxread.c: Include buildsym-legacy.h.
6257         * cp-namespace.c: Include buildsym-legacy.h.
6258         * coffread.c: Include buildsym-legacy.h.
6259         * buildsym.h: Move some contents to buildsym-legacy.h.
6260         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6261         buildsym-legacy.c.
6262         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6263
6264 2018-07-20  Tom Tromey  <tom@tromey.com>
6265
6266         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6267         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6268         (buildsym_compunit::buildsym_compunit)
6269         (buildsym_compunit::~buildsym_compunit)
6270         (buildsym_compunit::get_macro_table): Define.
6271
6272 2018-07-20  Tom Tromey  <tom@tromey.com>
6273
6274         * buildsym.c (reset_symtab_globals): Remove.
6275         (buildsym_compunit::end_symtab_from_static_block): Update.
6276         (buildsym_compunit::augment_type_symtab): Update.
6277         (end_symtab_from_static_block): Call free_buildsym_compunit.
6278         (augment_type_symtab, end_symtab, end_expandable_symtab):
6279         Likewise.
6280
6281 2018-07-20  Tom Tromey  <tom@tromey.com>
6282
6283         * arch-utils.c: Do not include buildsym.h.
6284         * mipsread.c: Do not include buildsym.h.
6285         * machoread.c: Do not include buildsym.h.
6286         * elfread.c: Do not include buildsym.h.
6287
6288 2018-07-20  Tom Tromey  <tom@tromey.com>
6289
6290         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6291         initialization.
6292         (buildsym_compunit): Add new constructor.
6293         (struct buildsym_compunit) <get_last_source_file, finish_block,
6294         record_block_range, start_subfile, patch_subfile_names,
6295         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6296         set_last_source_start_addr, get_last_source_start_addr,
6297         get_local_using_directives, set_local_using_directives,
6298         get_global_using_directives, outermost_context_p,
6299         get_current_context_stack, get_context_stack_depth,
6300         get_current_subfile, get_local_symbols, get_file_symbols,
6301         get_global_symbols, record_debugformat, record_producer,
6302         push_context, pop_context, end_symtab_get_static_block,
6303         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6304         New public methods.
6305         <record_pending_block, finish_block_internal, make_blockvector,
6306         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6307         private methods.
6308         Update all users.
6309
6310 2018-05-22  Tom Tromey  <tom@tromey.com>
6311
6312         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6313         parameter.
6314         (finish_block_internal): Update.
6315
6316 2018-07-20  Tom Tromey  <tom@tromey.com>
6317
6318         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6319         parameter.
6320         (finish_block_internal): Update.
6321
6322 2018-07-20  Tom Tromey  <tom@tromey.com>
6323
6324         * buildsym.h (EXTERN): Don't define or undef.
6325         * buildsym.c (EXTERN): Don't define.
6326
6327 2018-07-20  Tom Tromey  <tom@tromey.com>
6328
6329         * buildsym.c: Remove TODO comment.
6330
6331 2018-07-20  Tom Tromey  <tom@tromey.com>
6332
6333         * coffread.c (coff_symtab_read): Update.
6334         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6335         (xcoff_new_init): Update.
6336         * mipsread.c (mipscoff_new_init): Update.
6337         * mdebugread.c (mdebug_build_psymtabs): Update.
6338         * elfread.c (elf_new_init): Update.
6339         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6340         Update.
6341         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6342         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6343         (stabsect_build_psymtabs): Update.
6344         * buildsym.h (buildsym_init): Don't declare.
6345         * buildsym.c: Update comment.
6346         (prepare_for_building): Remove.
6347         (start_symtab, restart_symtab): Update.
6348         (reset_symtab_globals): Update comment.
6349         (buildsym_init): Remove.
6350
6351 2018-07-20  Tom Tromey  <tom@tromey.com>
6352
6353         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6354         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6355         (read_enum_type, common_block_start, common_block_end)
6356         (cleanup_undefined_types_1, finish_global_stabs): Update.
6357         * mdebugread.c (psymtab_to_symtab_1): Update.
6358         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6359         (read_lexical_block_scope, new_symbol): Update.
6360         * dbxread.c (process_one_symbol): Update.
6361         * coffread.c (coff_symtab_read, process_coff_symbol)
6362         (coff_read_enum_type): Update.
6363         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6364         declare.
6365         (get_local_symbols, get_file_symbols, get_global_symbols): New
6366         functions.
6367         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6368         m_global_symbols.
6369         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6370         (~scoped_free_pendings): Update.
6371         (finish_block, prepare_for_building, reset_symtab_globals)
6372         (end_symtab_get_static_block, end_symtab_with_blockvector)
6373         (augment_type_symtab, push_context): Update.
6374         (get_local_symbols, get_file_symbols, get_global_symbols): New
6375         functions.
6376         (buildsym_init): Update.
6377
6378 2018-07-20  Tom Tromey  <tom@tromey.com>
6379
6380         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6381         (process_full_type_unit): Likewise.
6382         (dwarf2_start_symtab): Set list_in_scope.
6383
6384 2018-07-20  Tom Tromey  <tom@tromey.com>
6385
6386         * dwarf2read.c (process_psymtab_comp_unit_reader)
6387         (build_type_psymtabs_reader): Do not set list_in_scope.
6388
6389 2018-07-20  Tom Tromey  <tom@tromey.com>
6390
6391         * buildsym.c (free_pendings): Remove.
6392         (add_symbol_to_list, scoped_free_pendings)
6393         (finish_block_internal, buildsym_init): Update.
6394
6395 2018-07-20  Tom Tromey  <tom@tromey.com>
6396
6397         * xcoffread.c (read_xcoff_symtab): Update.
6398         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6399         Update.
6400         * dbxread.c (process_one_symbol): Update.
6401         * coffread.c (coff_symtab_read): Update.
6402         * buildsym.h (finish_block): Update.
6403         * buildsym.c (finish_block): Remove "listhead" argument.
6404         (end_symtab_get_static_block): Update.
6405
6406 2018-07-20  Tom Tromey  <tom@tromey.com>
6407
6408         * buildsym.h (class scoped_free_pendings): Remove constructor.
6409         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6410         method.
6411         <m_pending_block_obstack, m_pending_blocks>: New members.
6412         (pending_block_obstack, pending_blocks): Remove.
6413         (scoped_free_pendings::scoped_free_pendings): Default.
6414         (~scoped_free_pendings): Update.
6415         (free_pending_blocks): Remove.
6416         (finish_block_internal, record_pending_block, make_blockvector)
6417         (end_symtab_get_static_block, augment_type_symtab, push_context)
6418         (buildsym_init): Update.
6419
6420 2018-07-20  Tom Tromey  <tom@tromey.com>
6421
6422         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6423         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6424         members.
6425         (pending_addrmap, pending_addrmap_obstack)
6426         (pending_addrmap_interesting): Remove.
6427         (scoped_free_pendings, record_block_range, make_blockvector)
6428         (prepare_for_building, reset_symtab_globals, buildsym_init):
6429         Update.
6430
6431 2018-07-20  Tom Tromey  <tom@tromey.com>
6432
6433         * xcoffread.c (process_linenos): Update.
6434         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6435         * mdebugread.c (psymtab_to_symtab_1): Update.
6436         * dwarf2read.c (setup_type_unit_groups)
6437         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6438         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6439         * dbxread.c (process_one_symbol): Update.
6440         * coffread.c (coff_symtab_read, enter_linenos)
6441         (process_coff_symbol): Update.
6442         * buildsym.h (current_subfile): Don't declare.
6443         (get_current_subfile): Declare.
6444         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6445         member.
6446         (start_subfile, free_buildsym_compunit, push_subfile)
6447         (prepare_for_building, start_symtab): Update.
6448         (get_current_subfile): New function.
6449
6450 2018-07-20  Tom Tromey  <tom@tromey.com>
6451
6452         * coffread.c (coff_symtab_read): Update.
6453         * xcoffread.c (read_xcoff_symtab): Update.
6454         * dwarf2read.c (new_symbol): Update.
6455         (read_func_scope, read_lexical_block_scope): Update.
6456         * dbxread.c (process_one_symbol): Update.
6457         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6458         (outermost_context_p): Remove macro.
6459         (outermost_context_p, get_current_context_stack)
6460         (get_context_stack_depth): Declare.
6461         (pop_context): Return struct context_stack.
6462         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6463         member.
6464         (context_stack_size): Remove.
6465         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6466         (prepare_for_building, end_symtab_get_static_block)
6467         (augment_type_symtab, push_context): Update.
6468         (pop_context): Return struct context_stack.
6469         (outermost_context_p, get_current_context_stack)
6470         (get_context_stack_depth): New functions.
6471         (buildsym_init): Update.
6472
6473 2018-07-20  Tom Tromey  <tom@tromey.com>
6474
6475         * rust-exp.y: Now a pure parser.  Update all rules.
6476         (%union): Move earlier.
6477         (current_parser, work_obstack): Remove globals.
6478         (rust_parser, ~rust_parser): Update.
6479         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6480         lex_character, lex_number, lex_string, lex_identifier,
6481         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6482         convert_name, convert_params_to_expression,
6483         convert_ast_to_expression, ast_basic_type, ast_operation,
6484         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6485         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6486         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6487         ast_array_type, ast_slice_type, ast_reference_type,
6488         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6489         (rust_parse): Update.
6490         (rustyyerror, rustyylex): Add parser parameter.
6491         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6492         (rust_lex_stringish_test, rust_lex_test_sequence)
6493         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6494         (rust_lex_test_push_back, rust_lex_tests): Update.
6495
6496 2018-07-19  Pedro Alves  <palves@redhat.com>
6497
6498         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6499         gdb::unique_xmalloc_ptr.
6500         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6501         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6502         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6503         copy-initialization.
6504         * guile/scm-pretty-print.c (ppscm_print_children): Use
6505         gdb::unique_xmalloc_ptr instead of cleanups.
6506         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6507         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6508         gdb::unique_xmalloc_ptr.
6509         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6510         Adjust to use gdb::unique_xmalloc_ptr.
6511         * guile/scm-utils.c (extract_arg): Adjust.
6512         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6513         gdb::unique_xmalloc_ptr instead of a cleanup.
6514
6515 2018-07-19  Tom Tromey  <tom@tromey.com>
6516
6517         * utils.c (do_value_free_to_mark)
6518         (make_cleanup_value_free_to_mark): Remove.
6519         * utils.h (make_cleanup_value_free_to_mark): Remove.
6520
6521 2018-07-19  Pedro Alves  <palves@redhat.com>
6522
6523         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6524         forwarding reference.
6525
6526 2018-07-18  Pedro Alves  <palves@redhat.com>
6527
6528         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6529         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6530         cleanup.
6531
6532 2018-07-18  Pedro Alves  <palves@redhat.com>
6533
6534         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6535         exceptions.
6536         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6537         (gdbscm_wrap): New.
6538         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6539         directly instead of a cleanup.
6540         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6541         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6542         (vlscm_binop_gdbthrow): New, factored out from ...
6543         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6544         (vlscm_rich_compare): Use gdbscm_wrap.
6545         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6546         instead of a cleanup.
6547         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6548         cleanup.
6549         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6550         Use xfree directly instead of a cleanup.
6551         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6552         Adjust to use gdbscm_wrap and scoped_value_mark.
6553         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6554         (gdbscm_value_address, gdbscm_value_dereference)
6555         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6556         scoped_value_mark.
6557         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6558         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6559         scoped_value_mark.
6560         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6561         gdbscm_wrap and scoped_value_mark.
6562         (gdbscm_value_to_string): Use xfree directly instead of a
6563         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6564         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6565         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6566         scoped_value_mark.
6567         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6568         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6569         scoped_value_mark.
6570         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6571         gdbscm_wrap.
6572
6573 2018-07-18  Tom de Vries  <tdevries@suse.de>
6574
6575         * findvar.c (default_read_var_value): Also resolve dynamic type for
6576         LOC_OPTIMIZED_OUT vars.
6577
6578 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6579
6580         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6581         decoding.
6582
6583 2018-07-17  Tom Tromey  <tom@tromey.com>
6584
6585         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6586         (compute_enum_list, pascm_set_param_value_x)
6587         (gdbscm_parameter_value): Update.
6588         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6589         (gdbscm_scm_to_host_string): Update.
6590         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6591         Update.
6592         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6593         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6594         * guile/scm-string.c (gdbscm_scm_to_string): Return
6595         unique_xmalloc_ptr.
6596         (gdbscm_scm_to_host_string): Likewise.
6597
6598 2018-07-17  Tom Tromey  <tom@tromey.com>
6599
6600         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6601         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6602         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6603         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6604         unique_xmalloc_ptr.
6605
6606 2018-07-17  Tom Tromey  <tom@tromey.com>
6607
6608         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6609         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6610         Update.
6611         * guile/scm-cmd.c (cmdscm_function): Update.
6612         * guile/scm-pretty-print.c
6613         (ppscm_print_exception_unless_memory_error): Update.
6614         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6615         Return unique_xmalloc_ptr.
6616
6617 2018-07-17  Tom Tromey  <tom@tromey.com>
6618
6619         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6620         Use string_printf.
6621
6622 2018-07-17  Jim Wilson  <jimw@sifive.com>
6623
6624         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6625         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6626         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6627         unecessary braces after EF_RISCV_RVC test.  Delete call to
6628         set_gdbarch_decr_pc_after_break.
6629
6630         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6631         RISCV_LAST_FP_REGNUM + 1.
6632         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6633
6634 2018-07-17  Tom Tromey  <tom@tromey.com>
6635
6636         * configure.ac: Remove --disable-gdbcli.
6637         * configure: Rebuild.
6638         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6639         (SUBDIR_CLI_CFLAGS): Remove.
6640         (SFILES): Use SUBDIR_CLI_SRCS.
6641         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6642
6643 2018-07-17  Tom Tromey  <tom@tromey.com>
6644
6645         PR gdb/18624:
6646         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6647
6648 2018-07-16  Jim Wilson  <jimw@sifive.com>
6649
6650         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6651
6652 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6653
6654         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6655         variable.
6656         (libunwind_frame_sniffer): Likewise.
6657         (libunwind_frame_prev_register): Likewise.
6658         (libunwind_sigtramp_frame_sniffer): Likewise.
6659         * ia64-tdep.c (ia64_access_reg): Likewise.
6660         (ia64_access_rse_reg): Likewise.
6661         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6662         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6663
6664 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6665
6666         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6667
6668 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6669
6670         * remote-sim.c (gdbsim_target::close,
6671         gdbsim_target::mourn_inferior): Remove unused variables.
6672
6673 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6674
6675         * ia64-tdep.c (ktab_buf): New global.
6676         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6677         (get_kernel_table): Adjust.
6678
6679 2018-07-16  Tom Tromey  <tom@tromey.com>
6680
6681         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6682         * dwarf2read.c (using_directives, new_symbol): Use
6683         outermost_context_p.
6684         * dbxread.c (process_one_symbol): Use outermost_context_p.
6685         * coffread.c (coff_symtab_read): Use outermost_context_p.
6686
6687 2018-07-16  Tom Tromey  <tom@tromey.com>
6688
6689         * dwarf2read.c (using_directives, read_func_scope)
6690         (read_lexical_block_scope): Update.
6691         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6692         * buildsym.h (local_using_directives, global_using_directives):
6693         Don't declare.
6694         (get_local_using_directives, set_local_using_directives)
6695         (get_global_using_directives): Declare.
6696         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6697         m_global_using_directives>: New members.
6698         (finish_block_internal, prepare_for_building)
6699         (reset_symtab_globals, end_symtab_get_static_block)
6700         (push_context): Update.
6701         (get_local_using_directives, set_local_using_directives)
6702         (get_global_using_directives): New functions.
6703         (buildsym_init): Update.
6704
6705 2018-07-16  Tom Tromey  <tom@tromey.com>
6706
6707         * xcoffread.c (xcoff_initial_scan): Don't call
6708         free_pending_blocks.
6709         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6710         * buildsym.h (class scoped_free_pendings): Add constructor.
6711         (free_pending_blocks): Don't declare.
6712         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6713         (free_pending_blocks): Now static.
6714
6715 2018-07-16  Tom Tromey  <tom@tromey.com>
6716
6717         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6718         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6719         member.
6720         (struct subfile_stack): Remove.
6721         (subfile_stack): Remove.
6722         (push_subfile, pop_subfile, buildsym_init): Update.
6723
6724 2018-07-16  Tom Tromey  <tom@tromey.com>
6725
6726         * buildsym.c (push_subfile): Use gdb_assert.
6727         (pop_subfile): Use gdb_assert.
6728
6729 2018-07-16  Tom Tromey  <tom@tromey.com>
6730
6731         * buildsym.h (merge_symbol_lists): Remove.
6732         * buildsym.c (merge_symbol_lists): Remove.
6733
6734 2018-07-16  Tom Tromey  <tom@tromey.com>
6735
6736         * stabsread.c (scan_file_globals): Update comment.
6737         * stabsread.h (scan_file_globals): Move from buildsym.h.
6738         * buildsym.h (scan_file_globals): Move to stabsread.h.
6739
6740 2018-07-16  Tom Tromey  <tom@tromey.com>
6741
6742         * xcoffread.c (xcoff_new_init): Update.
6743         * mipsread.c (mipscoff_new_init): Update.
6744         * mdebugread.c (mdebug_build_psymtabs): Update.
6745         * elfread.c (elf_new_init): Update.
6746         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6747         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6748         * buildsym.h (buildsym_new_init): Don't declare.
6749         * buildsym.c (buildsym_new_init): Remove.
6750
6751 2018-07-16  Tom Tromey  <tom@tromey.com>
6752
6753         * stabsread.h (within_function): Move from buildsym.h.
6754         * stabsread.c (start_stabs): Clear within_function.
6755         * coffread.c (coff_start_symtab): Clear within_function.
6756         * buildsym.h (within_function): Move to stabsread.h.
6757         * buildsym.c (prepare_for_building): Update.
6758
6759 2018-07-16  Tom Tromey  <tom@tromey.com>
6760
6761         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6762         * dwarf2read.c (dwarf2_start_symtab): Don't set
6763         processing_gcc_compilation.
6764         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6765
6766 2018-07-16  Tom Tromey  <tom@tromey.com>
6767
6768         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6769         (next_symbol_text_func): Move from buildsym.h.
6770         * stabsread.c (hashname): Move from buildsym.c.
6771         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6772         (next_symbol_text_func, hashname): Move to stabsread.h.
6773         * buildsym.c: Don't include bcache.h
6774         (hashname): Move to stasbread.c.
6775
6776 2018-07-16  Tom Tromey  <tom@tromey.com>
6777
6778         * buildsym.h (context_stack_size): Don't declare.
6779         * buildsym.c (context_stack_size): New global.
6780
6781 2018-07-16  Tom Tromey  <tom@tromey.com>
6782
6783         * dbxread.c (processing_acc_compilation): New global.
6784         * buildsym.h (processing_acc_compilation): Don't declare.
6785
6786 2018-07-16  Tom Tromey  <tom@tromey.com>
6787
6788         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6789         * dbxread.c (read_ofile_symtab): Update.
6790         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6791         * buildsym.h (last_source_start_addr): Remove.
6792         (set_last_source_start_addr, get_last_source_start_addr):
6793         Declare.
6794         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6795         parameter.
6796         (struct buildsym_compunit) <m_last_source_start_addr>: New
6797         member.
6798         (prepare_for_building): Remove start_addr parameter.
6799         (start_symtab, restart_symtab, end_symtab_get_static_block)
6800         (end_symtab_with_blockvector): Update.
6801         (set_last_source_start_addr, get_last_source_start_addr): New
6802         functions.
6803
6804 2018-07-16  Tom Tromey  <tom@tromey.com>
6805
6806         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6807         member.
6808         (have_line_numbers): Remove.
6809         (record_line, prepare_for_building, end_symtab_get_static_block)
6810         (augment_type_symtab): Update.
6811
6812 2018-07-16  Tom Tromey  <tom@tromey.com>
6813
6814         * buildsym.c (~buildsym_compunit): Free the macro table.
6815         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6816         methods.
6817         <m_pending_macros>: New member.
6818         (pending_macros): Remove.
6819         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6820         (reset_symtab_globals, end_symtab_get_static_block)
6821         (end_symtab_with_blockvector, augment_type_symtab)
6822         (buildsym_init): Update.
6823
6824 2018-07-16  Tom Tromey  <tom@tromey.com>
6825
6826         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6827         parameter.
6828         (buildsym_compunit::set_last_source_file): New method.
6829         <m_last_source_file>: New member.
6830         (prepare_for_building): Remove "name" parameter.
6831         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6832         (last_source_file): Remove.
6833         (set_last_source_file, get_last_source_file): Update.
6834
6835 2018-07-16  Tom Tromey  <tom@tromey.com>
6836
6837         * buildsym.c (prepare_for_building): Add assert.
6838
6839 2018-07-16  Tom Tromey  <tom@tromey.com>
6840
6841         * buildsym.c (~buildsym_compunit): Update.
6842         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6843         (start_subfile, patch_subfile_names)
6844         (end_symtab_with_blockvector): Update.
6845
6846 2018-07-16  Tom Tromey  <tom@tromey.com>
6847
6848         * buildsym.c (struct buildsym_compunit): Add constructor,
6849         destructor, initializers.
6850         (start_buildsym_compunit): Remove.
6851         (free_buildsym_compunit): Use "delete".
6852         (start_symtab, restart_symtab): Use "new".
6853
6854 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6855
6856         * symfile.c (set_objfile_default_section_offset): Remove struct
6857         keyword.
6858
6859 2018-07-14  Stafford Horne  <shorne@gmail.com>
6860
6861         * (Responsible Maintainers): Add myself as or1k maintainer.
6862
6863 2018-07-13  Tom Tromey  <tom@tromey.com>
6864
6865         * symfile.c (set_objfile_default_section_offset): Use extra braces
6866         around initializer.
6867
6868 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6869
6870         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6871         non-branching basr.
6872
6873 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6874
6875         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6876         unittests/cli-utils-selftests.c
6877         * unittests/cli-utils-selftests.c: New file.
6878
6879 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6880
6881         * NEWS: Mention new commands. Mention change to 'thread apply'.
6882
6883 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6884
6885         * thread.c (thr_try_catch_cmd): New function.
6886         (thread_apply_all_command): Handle qcs flags.
6887         (thread_apply_command): Handle qcs flags.
6888         (taas_command): New function.
6889         (tfaas_command): New function.
6890         (_initialize_thread): Update to setup the new commands 'taas
6891         and 'tfaas'. Change doc string for 'thread apply'.
6892
6893 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6894
6895         * stack.c: (trailing_outermost_frame): New function, mostly
6896         extracted from backtrace_command_1.
6897         (leading_innermost_frame): New function.
6898         (backtrace_command_1): Update to call trailing_outermost_frame.
6899         (frame_apply_command_count): New function.
6900         (frame_apply_level_command): New function.
6901         (frame_apply_all_command): New function.
6902         (frame_apply_command): New function.
6903         (faas_command): New function.
6904         (frame_cmd_list): New variable.
6905         (_initialize_stack): Update to setup the new commands 'frame apply'
6906         and 'faas'.
6907
6908 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6909
6910         * cli-utils.c (number_or_range_parser::get_number): Only handle
6911         numbers or convenience var as numbers.
6912         (parse_flags): New function.
6913         (parse_flags_qcs): New function.
6914         (number_or_range_parser::finished): Ensure parsing end is detected
6915         before end of string.
6916         * cli-utils.h (parse_flags): New function.
6917         (parse_flags_qcs): New function.
6918         (number_or_range_parser): Remove m_finished bool.
6919         (number_or_range_parser::skip_range): Set m_in_range to false.
6920
6921 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6922
6923         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6924         on Windows.
6925
6926 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6927             Jan Kratochvil  <jan.kratochvil@redhat.com>
6928             Paul Fertser  <fercerpav@gmail.com>
6929             Tsutomu Seki  <sekiriki@gmail.com>
6930             Pedro Alves  <palves@redhat.com>
6931
6932         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6933         'unittests/parse-connection-spec-selftests.c'.
6934         (COMMON_SFILES): Add 'common/netstuff.c'.
6935         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6936         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6937         * common/netstuff.c: New file.
6938         * common/netstuff.h: New file.
6939         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6940         (wait_for_connect): Update comment.  New parameter
6941         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6942         Use 'sock' directly instead of 'scb->fd'.
6943         (try_connect): New function, with code from 'net_open'.
6944         (net_open): Rewrite main loop to deal with multiple
6945         sockets/addresses.  Handle IPv6-style hostnames; implement
6946         support for IPv6 connections.
6947         * unittests/parse-connection-spec-selftests.c: New file.
6948
6949 2018-07-11  Pedro Alves  <palves@redhat.com>
6950
6951         PR gdb/23377
6952         * remote.c (remote_target::remote_detach_pid): Call
6953         set_current_process.
6954
6955 2018-07-11  Pedro Alves  <palves@redhat.com>
6956
6957         * h8300-tdep.c (h8300_gdbarch_init): Remove
6958         set_gdbarch_ecoff_reg_to_regnum calls.
6959
6960 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6961
6962         PR c++/23373
6963         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6964         offsets/sizes for static members of a class/struct.
6965
6966 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6967
6968         * target-descriptions.c (tdesc_register_bitsize): Rename.
6969         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6970         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6971         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6972
6973 2018-07-10  Tom Tromey  <tom@tromey.com>
6974
6975         * breakpoint.c (moribund_locations): Now static and a
6976         std::vector.
6977         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6978         (build_bpstat_chain, update_global_location_list)
6979         (breakpoint_retire_moribund): Update.
6980         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6981         VEC.
6982
6983 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6984
6985         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6986         (riscv_register_reggroup_p): Use new function, remove unneeded
6987         parenthesis.
6988         (riscv_push_dummy_call): Extend assert to compare against xlen or
6989         flen based on register type.
6990
6991 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6992
6993         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6994
6995 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6996
6997         * remote.c (show_hardware_watchpoint_limit): New function.
6998         (show_hardware_watchpoint_length_limit): New function.
6999         (show_hardware_breakpoint_limit): New function.
7000         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7001         where appropriate, update help text.
7002
7003 2018-07-09  Tom Tromey  <tom@tromey.com>
7004
7005         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7006         (CLIBS): Don't mention NAT_CLIBS.
7007
7008 2018-07-09  Tom Tromey  <tom@tromey.com>
7009
7010         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7011         (LIBGDB_OBS, clean mostlyclean): Update.
7012         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7013
7014 2018-07-09  Tom Tromey  <tom@tromey.com>
7015
7016         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7017         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7018         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7019
7020 2018-07-09  Tom Tromey  <tom@tromey.com>
7021
7022         * Makefile.in (ALLDEPFILES): Remove exec.c.
7023         (COMMON_OBS): Remove exec.o.
7024         (COMMON_SFILES): Add exec.c.
7025
7026 2018-07-09  Tom Tromey  <tom@tromey.com>
7027
7028         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7029
7030 2018-07-09  Tom Tromey  <tom@tromey.com>
7031
7032         * Makefile.in (clean mostlyclean): Remove stamp-version.
7033         (version.c): Depend on stamp-version.
7034         (stamp-version): New rule, from version.c rule.
7035
7036 2018-07-09  Tom Tromey  <tom@tromey.com>
7037
7038         * Makefile.in (init.c): Depend on stamp-init.
7039         (stamp-init): New rule, from init.c rule.
7040         (clean mostlyclean): Remove stamp-init.
7041
7042 2018-07-09  Tom Tromey  <tom@tromey.com>
7043
7044         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7045         SUBDIR_GCC_COMPILE_SRCS.
7046
7047 2018-07-09  Tom Tromey  <tom@tromey.com>
7048
7049         * Makefile.in (init.c): Remove some unused sed rules.
7050
7051 2018-07-09  Tom Tromey  <tom@tromey.com>
7052
7053         * Makefile.in (TSOBS): Remove.
7054         (INIT_FILES): Update.
7055         (LIBGDB_OBS): Update.
7056         (COMMON_SFILES): Add inflow.c.
7057         (SFILES): Remove inflow.c.
7058
7059 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7060
7061         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7062
7063 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7064
7065         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7066         get_saveloc_name, is_signal_frame_name, step_name,
7067         init_remote_name, create_addr_space_name,
7068         destroy_addr_space_name, search_unwind_table_name,
7069         find_dyn_list_name): Constify.
7070
7071 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7072
7073         * darwin-nat.c (darwin_pthread_kill): New function.
7074         (darwin_resume_thread): Use darwin_pthread_kill.
7075
7076 2018-07-05  Tom de Vries  <tdevries@suse.de>
7077
7078         * macroexp.c (macro_buffer) <operator=>: New member function.
7079
7080 2018-07-04  Tom Tromey  <tom@tromey.com>
7081
7082         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7083
7084 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7085
7086         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7087         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7088         * maint.c: Likewise.
7089         * top.c: Likewise.
7090
7091 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7092
7093         * NEWS: Create a new section for the next release branch.
7094         Rename the section of the current branch, now that it has
7095         been cut.
7096
7097 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7098
7099         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7100         * version.in: Bump version to 8.2.50.DATE-git.
7101
7102 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7103             Pedro Alves  <palves@redhat.com>
7104
7105         * linux-nat.c (linux_init_ptrace): Rename to ...
7106         (linux_init_ptrace_procfs): ... this.  Call
7107         linux_proc_init_warnings.
7108         (linux_nat_target::post_attach)
7109         (linux_nat_target::post_startup_inferior): Adjust.
7110         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7111         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7112
7113 2018-07-04  Tom de Vries  <tdevries@suse.de>
7114
7115         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7116         check ...
7117         (read_comp_unit_head): ... here.
7118
7119 2018-07-03  Tom Tromey  <tom@tromey.com>
7120
7121         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7122         (stop_tracing, tstatus_command)
7123         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7124         (print_one_static_tracepoint_marker): Update.
7125         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7126         std::vector.
7127         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7128         VEC.
7129         (all_tracepoints, static_tracepoints_here): Return std::vector.
7130
7131 2018-07-03  Tom Tromey  <tom@tromey.com>
7132
7133         * common/ptid.c (ptid_equal): Remove.
7134         * common/ptid.h (ptid_equal): Don't declare.
7135         * ada-tasks.c: Update.
7136         * breakpoint.c: Update.
7137         * common/agent.c: Update.
7138         * corelow.c: Update.
7139         * darwin-nat-info.c: Update.
7140         * darwin-nat.c: Update.
7141         * dcache.c: Update.
7142         * dtrace-probe.c: Update.
7143         * dummy-frame.c: Update.
7144         * fbsd-nat.c: Update.
7145         * frame.c: Update.
7146         * gdbthread.h: Update.
7147         * gnu-nat.c: Update.
7148         * go32-nat.c: Update.
7149         * inf-loop.c: Update.
7150         * inf-ptrace.c: Update.
7151         * infcall.c: Update.
7152         * infcmd.c: Update.
7153         * inflow.c: Update.
7154         * infrun.c: Update.
7155         * linux-fork.c: Update.
7156         * linux-nat.c: Update.
7157         * linux-thread-db.c: Update.
7158         * mi/mi-cmd-var.c: Update.
7159         * mi/mi-interp.c: Update.
7160         * mi/mi-main.c: Update.
7161         * nto-procfs.c: Update.
7162         * ppc-linux-tdep.c: Update.
7163         * procfs.c: Update.
7164         * python/py-inferior.c: Update.
7165         * python/py-record-btrace.c: Update.
7166         * python/py-record.c: Update.
7167         * ravenscar-thread.c: Update.
7168         * regcache.c: Update.
7169         * remote-sim.c: Update.
7170         * remote.c: Update.
7171         * sol-thread.c: Update.
7172         * solib.c: Update.
7173         * target.c: Update.
7174         * tui/tui-stack.c: Update.
7175         * varobj.c: Update.
7176         * windows-nat.c: Update.
7177         * windows-tdep.c: Update.
7178
7179 2018-07-03  Tom Tromey  <tom@tromey.com>
7180
7181         * common/ptid.c (ptid_match): Remove.
7182         * common/ptid.h (ptid_match): Don't declare.
7183         * fbsd-nat.c: Update.
7184         * infcmd.c: Update.
7185         * infrun.c: Update.
7186         * linux-nat.c: Update.
7187         * record-btrace.c: Update.
7188         * regcache.c: Update.
7189         * remote.c: Update.
7190
7191 2018-07-03  Tom Tromey  <tom@tromey.com>
7192
7193         * common/ptid.c (ptid_tid_p): Remove.
7194         * common/ptid.h (ptid_tid_p): Don't declare.
7195         * sol-thread.c: Update.
7196
7197 2018-07-03  Tom Tromey  <tom@tromey.com>
7198
7199         * common/ptid.c (ptid_lwp_p): Remove.
7200         * common/ptid.h (ptid_lwp_p): Don't declare.
7201         * fbsd-nat.c: Update.
7202         * linux-nat.c: Update.
7203         * nat/linux-procfs.c: Update.
7204         * nat/x86-linux-dregs.c: Update.
7205         * sol-thread.c: Update.
7206
7207 2018-07-03  Tom Tromey  <tom@tromey.com>
7208
7209         * common/ptid.c (ptid_is_pid): Remove.
7210         * common/ptid.h (ptid_is_pid): Don't declare.
7211         * infrun.c: Update.
7212         * linux-nat.c: Update.
7213         * mi/mi-interp.c: Update.
7214         * remote.c: Update.
7215         * thread.c: Update.
7216
7217 2018-07-03  Tom Tromey  <tom@tromey.com>
7218
7219         * common/ptid.c (ptid_get_tid): Remove.
7220         * common/ptid.h (ptid_get_tid): Don't declare.
7221         * ada-tasks.c: Update.
7222         * aix-thread.c: Update.
7223         * bsd-uthread.c: Update.
7224         * darwin-nat.c: Update.
7225         * fbsd-nat.c: Update.
7226         * i386-darwin-nat.c: Update.
7227         * infrun.c: Update.
7228         * linux-tdep.c: Update.
7229         * nto-procfs.c: Update.
7230         * ppc-ravenscar-thread.c: Update.
7231         * python/py-infthread.c: Update.
7232         * ravenscar-thread.c: Update.
7233         * sol-thread.c: Update.
7234         * sparc-ravenscar-thread.c: Update.
7235         * windows-nat.c: Update.
7236
7237 2018-07-03  Tom Tromey  <tom@tromey.com>
7238
7239         * common/ptid.c (ptid_get_lwp): Remove.
7240         * common/ptid.h (ptid_get_lwp): Don't declare.
7241         * aarch64-linux-nat.c: Update.
7242         * ada-tasks.c: Update.
7243         * aix-thread.c: Update.
7244         * amd64-linux-nat.c: Update.
7245         * arm-linux-nat.c: Update.
7246         * corelow.c: Update.
7247         * fbsd-nat.c: Update.
7248         * fbsd-tdep.c: Update.
7249         * gnu-nat.c: Update.
7250         * i386-cygwin-tdep.c: Update.
7251         * i386-gnu-nat.c: Update.
7252         * i386-linux-nat.c: Update.
7253         * ia64-linux-nat.c: Update.
7254         * inf-ptrace.c: Update.
7255         * infrun.c: Update.
7256         * linux-fork.c: Update.
7257         * linux-nat.c: Update.
7258         * linux-tdep.c: Update.
7259         * linux-thread-db.c: Update.
7260         * mips-linux-nat.c: Update.
7261         * nat/aarch64-linux-hw-point.c: Update.
7262         * nat/aarch64-linux.c: Update.
7263         * nat/linux-btrace.c: Update.
7264         * nat/linux-osdata.c: Update.
7265         * nat/linux-procfs.c: Update.
7266         * nat/x86-linux-dregs.c: Update.
7267         * obsd-nat.c: Update.
7268         * ppc-fbsd-nat.c: Update.
7269         * ppc-linux-nat.c: Update.
7270         * procfs.c: Update.
7271         * python/py-infthread.c: Update.
7272         * ravenscar-thread.c: Update.
7273         * remote.c: Update.
7274         * s390-linux-nat.c: Update.
7275         * sol-thread.c: Update.
7276         * sol2-tdep.c: Update.
7277         * spu-linux-nat.c: Update.
7278         * x86-linux-nat.c: Update.
7279         * xtensa-linux-nat.c: Update.
7280
7281 2018-07-03  Tom Tromey  <tom@tromey.com>
7282
7283         * common/ptid.c (ptid_get_pid): Remove.
7284         * common/ptid.h (ptid_get_pid): Don't declare.
7285         * aarch64-linux-nat.c: Update.
7286         * ada-lang.c: Update.
7287         * aix-thread.c: Update.
7288         * alpha-bsd-nat.c: Update.
7289         * amd64-fbsd-nat.c: Update.
7290         * amd64-linux-nat.c: Update.
7291         * arm-linux-nat.c: Update.
7292         * arm-nbsd-nat.c: Update.
7293         * auxv.c: Update.
7294         * break-catch-syscall.c: Update.
7295         * breakpoint.c: Update.
7296         * bsd-uthread.c: Update.
7297         * corelow.c: Update.
7298         * ctf.c: Update.
7299         * darwin-nat.c: Update.
7300         * fbsd-nat.c: Update.
7301         * fbsd-tdep.c: Update.
7302         * gcore.c: Update.
7303         * gnu-nat.c: Update.
7304         * hppa-nbsd-nat.c: Update.
7305         * hppa-obsd-nat.c: Update.
7306         * i386-fbsd-nat.c: Update.
7307         * ia64-linux-nat.c: Update.
7308         * inf-ptrace.c: Update.
7309         * infcmd.c: Update.
7310         * inferior.c: Update.
7311         * inferior.h: Update.
7312         * inflow.c: Update.
7313         * infrun.c: Update.
7314         * linux-fork.c: Update.
7315         * linux-nat.c: Update.
7316         * linux-tdep.c: Update.
7317         * linux-thread-db.c: Update.
7318         * m68k-bsd-nat.c: Update.
7319         * mi/mi-interp.c: Update.
7320         * mi/mi-main.c: Update.
7321         * mips-linux-nat.c: Update.
7322         * mips-nbsd-nat.c: Update.
7323         * mips64-obsd-nat.c: Update.
7324         * nat/aarch64-linux-hw-point.c: Update.
7325         * nat/aarch64-linux.c: Update.
7326         * nat/linux-btrace.c: Update.
7327         * nat/linux-osdata.c: Update.
7328         * nat/linux-procfs.c: Update.
7329         * nat/x86-linux-dregs.c: Update.
7330         * nto-procfs.c: Update.
7331         * obsd-nat.c: Update.
7332         * ppc-linux-nat.c: Update.
7333         * ppc-nbsd-nat.c: Update.
7334         * ppc-obsd-nat.c: Update.
7335         * proc-service.c: Update.
7336         * procfs.c: Update.
7337         * python/py-inferior.c: Update.
7338         * python/py-infthread.c: Update.
7339         * ravenscar-thread.c: Update.
7340         * record.c: Update.
7341         * remote-sim.c: Update.
7342         * remote.c: Update.
7343         * rs6000-nat.c: Update.
7344         * s390-linux-nat.c: Update.
7345         * sh-nbsd-nat.c: Update.
7346         * sol-thread.c: Update.
7347         * sparc-nat.c: Update.
7348         * sparc64-tdep.c: Update.
7349         * spu-linux-nat.c: Update.
7350         * spu-tdep.c: Update.
7351         * target-debug.h: Update.
7352         * target.c: Update.
7353         * thread.c: Update.
7354         * tid-parse.c: Update.
7355         * tracefile-tfile.c: Update.
7356         * vax-bsd-nat.c: Update.
7357         * windows-nat.c: Update.
7358         * x86-linux-nat.c: Update.
7359         * x86-nat.c: Update.
7360
7361 2018-07-03  Tom Tromey  <tom@tromey.com>
7362
7363         * common/ptid.c (pid_to_ptid): Remove.
7364         * common/ptid.h (pid_to_ptid): Don't declare.
7365         * aix-thread.c: Update.
7366         * arm-linux-nat.c: Update.
7367         * common/ptid.c: Update.
7368         * common/ptid.h: Update.
7369         * corelow.c: Update.
7370         * ctf.c: Update.
7371         * darwin-nat.c: Update.
7372         * fbsd-nat.c: Update.
7373         * fork-child.c: Update.
7374         * gnu-nat.c: Update.
7375         * go32-nat.c: Update.
7376         * inf-ptrace.c: Update.
7377         * infcmd.c: Update.
7378         * inferior.c: Update.
7379         * infrun.c: Update.
7380         * linux-fork.c: Update.
7381         * linux-nat.c: Update.
7382         * nat/aarch64-linux-hw-point.c: Update.
7383         * nat/fork-inferior.c: Update.
7384         * nat/x86-linux-dregs.c: Update.
7385         * nto-procfs.c: Update.
7386         * obsd-nat.c: Update.
7387         * procfs.c: Update.
7388         * progspace.c: Update.
7389         * remote.c: Update.
7390         * rs6000-nat.c: Update.
7391         * s390-linux-nat.c: Update.
7392         * sol-thread.c: Update.
7393         * spu-linux-nat.c: Update.
7394         * target.c: Update.
7395         * top.c: Update.
7396         * tracefile-tfile.c: Update.
7397         * windows-nat.c: Update.
7398
7399 2018-07-03  Tom Tromey  <tom@tromey.com>
7400
7401         * common/ptid.h (ptid_build): Don't declare.
7402         * common/ptid.c (ptid_build): Remove.
7403         * aix-thread.c: Update.
7404         * bsd-kvm.c: Update.
7405         * bsd-uthread.c: Update.
7406         * common/agent.c: Update.
7407         * common/ptid.c: Update.
7408         * common/ptid.h: Update.
7409         * corelow.c: Update.
7410         * darwin-nat.c: Update.
7411         * fbsd-nat.c: Update.
7412         * gnu-nat.c: Update.
7413         * linux-fork.c: Update.
7414         * linux-nat.c: Update.
7415         * linux-thread-db.c: Update.
7416         * nat/linux-osdata.c: Update.
7417         * nat/linux-procfs.c: Update.
7418         * nto-procfs.c: Update.
7419         * obsd-nat.c: Update.
7420         * proc-service.c: Update.
7421         * procfs.c: Update.
7422         * ravenscar-thread.c: Update.
7423         * remote-sim.c: Update.
7424         * remote.c: Update.
7425         * sol-thread.c: Update.
7426         * target.c: Update.
7427         * windows-nat.c: Update.
7428
7429 2018-07-03  Tom Tromey  <tom@tromey.com>
7430
7431         * infrun.c (follow_exec): Use exit_inferior_silent.
7432         * inferior.c (exit_inferior_num_silent): Remove.
7433         * inferior.h (exit_inferior_num_silent): Don't declare.
7434
7435 2018-07-03  Tom Tromey  <tom@tromey.com>
7436
7437         PR cli/23340:
7438         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7439         inferior_ptid on error.
7440
7441 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7442             Simon Marchi  <simon.marchi@polymtl.ca>
7443
7444         PR tdep/8282
7445         * disasm.h (gdb_disassembler): Add
7446         `m_disassembler_options_holder'. member
7447         * disasm.c (get_all_disassembler_options): New function.
7448         (gdb_disassembler::gdb_disassembler): Use it.
7449         (gdb_buffered_insn_length_init_dis): Likewise.
7450         (gdb_buffered_insn_length): Adjust accordingly.
7451         (set_disassembler_options): Handle options with arguments.
7452         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7453         line if showing options with descriptions.
7454         (disassembler_options_completer): Adapt to using the
7455         `disasm_options_and_args_t' structure.
7456         * mips-tdep.c (mips_disassembler_options): New variable.
7457         (mips_disassembler_options_o32): Likewise.
7458         (mips_disassembler_options_n32): Likewise.
7459         (mips_disassembler_options_n64): Likewise.
7460         (gdb_print_insn_mips): Don't set `disassembler_options'.
7461         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7462         functions.
7463         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7464         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7465         `gdbarch_disassembler_options_implicit' and
7466         `gdbarch_valid_disassembler_options'.
7467         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7468         `disasm_options_and_args_t' structure.
7469         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7470         method.
7471         (valid_disassembler_options): Switch from `disasm_options_t' to
7472         the `disasm_options_and_args_t' structure.
7473         * NEWS: Document `set disassembler-options' support for the MIPS
7474         target.
7475         * gdbarch.h: Regenerate.
7476         * gdbarch.c: Regenerate.
7477
7478 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7479
7480         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7481
7482 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7483
7484         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7485         parameter in call to amd64_target_description.
7486         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7487         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7488         (amd64fbsd_init_abi): Likewise.
7489         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7490         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7491         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7492         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7493
7494 2018-06-29  Pedro Alves  <palves@redhat.com>
7495
7496         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7497         "segments" parameter.
7498         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7499         (_initialize_amd64_tdep): Update call to
7500         amd64_create_target_description.
7501         (amd64_target_description): Add "segments" parameter.  Adjust
7502         the implementation to use it.
7503         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7504         call to amd64_create_target_description.
7505         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7506         * gdb/arch/amd64.h (amd64_create_target_description): Add
7507         "segments" register.
7508         * gdb/arch/amd64.c (amd64_create_target_description): Add
7509         "segments" parameter.  Call create_feature_i386_64bit_segments
7510         only if SEGMENTS is true.
7511         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7512         call to amd64_create_target_description.
7513
7514 2018-06-29  Pedro Alves  <palves@redhat.com>
7515
7516         * thread.c (thread_target_id_str): New, factored out from ...
7517         (print_thread_info_1): ... here.  Use it to compute the max
7518         "Target Id" column width.
7519
7520 2018-06-29  Pedro Alves  <palves@redhat.com>
7521
7522         * remote.c (remote_target::extra_thread_info): Delete
7523         'display_buf' and 'n' locals.  from the cache, regardless of
7524         packet mechanims is in use.  Use cache for qThreadExtra and qP
7525         methods too.
7526
7527 2018-06-29  Pedro Alves  <palves@redhat.com>
7528
7529         * blockframe.c (find_pc_sect_containing_function): New function.
7530         * breakpoint.c (print_breakpoint_location): Don't call
7531         find_pc_sect_function.
7532         * linespec.c (create_sals_line_offset): Record the location's
7533         symbol in the sal.
7534         * linespec.c (convert_address_location_to_sals): Fill in sal's
7535         symbol with find_pc_sect_containing_function.
7536         * symtab.c (find_function_start_sal): Rename to ...
7537         (find_function_start_sal_1): ... this.
7538         (find_function_start_sal): Reimplement as wrapper around
7539         find_function_start_sal_1, and use
7540         find_pc_sect_containing_function to fill in the sal's symbol.
7541         (find_function_start_sal(symbol*, bool)): Adjust.
7542         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7543         comments.
7544         (find_pc_sect_containing_function): Declare.
7545
7546 2018-06-29  Pedro Alves  <palves@redhat.com>
7547
7548         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7549         true if the the location has no symbol.
7550
7551 2018-06-28  Tom Tromey  <tom@tromey.com>
7552
7553         * NEWS: Mention --enable-codesign.
7554         * silent-rules.mk (ECHO_SIGN): New variable.
7555         * configure.ac: Add --enable-codesign.
7556         * configure: Rebuild.
7557         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7558         (gdb$(EXEEXT)): Optionally invoke codesign.
7559
7560 2018-06-28  Pedro Alves  <palves@redhat.com>
7561
7562         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7563         comments.
7564         (switch_to_thread_no_regs): Adjust comment.
7565         * infcmd.c (stop_pc): Delete.
7566         (post_create_inferior, info_program_command): Replace references
7567         to stop_pc with references to thread_info->suspend.stop_pc.
7568         * inferior.h (stop_pc): Delete declaration.
7569         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7570         (handle_inferior_event_1, handle_signal_stop)
7571         (process_event_stop_test, keep_going_stepped_thread)
7572         (handle_step_into_function, handle_step_into_function_backward)
7573         (print_stop_location): Replace references to stop_pc with
7574         references to thread_info->suspend.stop_pc.
7575         (struct infcall_suspend_state) <stop_pc>: Delete field.
7576         (save_infcall_suspend_state, restore_infcall_suspend_state):
7577         Remove references to inf_stat->stop_pc.
7578         * linux-fork.c (fork_load_infrun_state): Likewise.
7579         * record-btrace.c (record_btrace_set_replay): Likewise.
7580         * record-full.c (record_full_goto_entry): Likewise.
7581         * remote.c (print_one_stopped_thread): Likewise.
7582         * target.c (target_resume): Extend comment.
7583         * thread.c (set_executing_thread): New.
7584         (set_executing): Use it.
7585         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7586         Remove references to stop_pc.
7587
7588 2018-06-28  Pedro Alves  <palves@redhat.com>
7589
7590         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7591         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7592
7593 2018-06-28  Tom Tromey  <tom@tromey.com>
7594
7595         * coffread.c (coff_symfile_finish): Update.
7596         * xcoffread.c (xcoff_symfile_finish): Update.
7597         * elfread.c (elf_symfile_finish): Update.
7598         * symfile.h (dwarf2_free_objfile): Don't declare.
7599         * dwarf2read.c (_initialize_dwarf2_read): Use
7600         register_objfile_data_with_cleanup.
7601         (dwarf2_free_objfile): Now static.  Change signature.
7602
7603 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7604
7605         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7606         option "-o" to add-symbol-file-load to add an offset to each
7607         section's load address.
7608         * symfile.c (set_objfile_default_section_offset): New function.
7609
7610 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7611
7612         * symfile.c (add_symbol_file_command): Make sure that sections
7613         with the same name are sorted in the same order.
7614
7615 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7616
7617         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7618         require the second argument.  If omitted, load sections at the
7619         addresses specified in the file.
7620
7621 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7622
7623         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7624         (_initialize_symfile): Add option "-o" to symbol-file to add an
7625         offset to each section of the symbol file.
7626
7627 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7628
7629         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7630
7631 2018-06-27  Tom Tromey  <tom@tromey.com>
7632
7633         * stack.c (_initialize_stack): Update "func" help text.
7634
7635 2018-06-27  Tom Tromey  <tom@tromey.com>
7636
7637         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7638         std::vector.
7639         (unwind_infopy_str, pyuw_create_unwind_info)
7640         (unwind_infopy_add_saved_register, pyuw_sniffer)
7641         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7642         Update.
7643         (struct saved_reg): Add constructor.
7644         <value>: Now a gdbpy_ref<>.
7645
7646 2018-06-27  Tom Tromey  <tom@tromey.com>
7647
7648         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7649
7650 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7651
7652         * gdb-gdb.py.in: Format using autopep8.
7653
7654 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7655
7656         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7657         (type_lookup_function): Recognize CORE_ADDR values.
7658
7659 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7660
7661         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7662         print tag_name.
7663
7664 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7665
7666         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7667         <__lt__>: Add.
7668
7669 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7670
7671         * gdb-gdb.py: Move to...
7672         * gdb-gdb.py.in: ... here.
7673         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7674         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7675         dependencies.
7676         (distclean): Remove gdb-gdb.py when cleaning.
7677         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7678         * configure: Re-generate.
7679
7680 2018-06-27  Pedro Alves  <palves@redhat.com>
7681
7682         * proc-service.c (get_ps_regcache): New.
7683         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7684         (ps_lsetfpregs): Use it.
7685
7686 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7687
7688         PR gdb/21695
7689         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7690         declaration.
7691         (dwarf_decode_lines_1): Adjust.
7692
7693 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7694
7695         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7696         override.
7697         <info_proc>: Likewise.
7698
7699 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7700
7701         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7702         to windows_fetch_one_register, and only handle the case of
7703         fetching one register.  Move the code that reloads the context
7704         and iterates over all registers if R is negative to...
7705         (windows_nat_target::fetch_registers): ... here.
7706         (do_windows_store_inferior_registers): Rename to
7707         windows_store_one_register, and only handle the case of storing
7708         one register.  Move the code that handles the case where r is
7709         negative to...
7710         (windows_nat_target::store_registers) ... here.
7711
7712 2018-06-26  Tom Tromey  <tom@tromey.com>
7713
7714         PR rust/22574:
7715         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7716         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7717         Update.
7718         (rust_internal_print_type): Add podata parameter.
7719         (rust_print_type): Update.
7720
7721 2018-06-26  Tom Tromey  <tom@tromey.com>
7722
7723         * typeprint.h (struct print_offset_data) <update, finish,
7724         maybe_print_hole>: New methods.
7725         <indentation>: New constant.
7726         * typeprint.c (print_offset_data::indentation): Define.
7727         (print_offset_data::maybe_print_hole, print_offset_data::update)
7728         (print_offset_data::finish): Move from c-typeprint.c and rename.
7729         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7730         (print_spaces_filtered_with_print_options): Update.
7731         (c_print_type_union_field_offset, maybe_print_hole)
7732         (c_print_type_struct_field_offset): Move to typeprint.c and
7733         rename.
7734         (c_type_print_base_struct_union): Update.
7735
7736 2018-06-25  Pedro Alves  <palves@redhat.com>
7737
7738         * gdbthread.h (thread_info_ref, delete_thread)
7739         (delete_thread_silent, first_thread_of_inferior)
7740         (any_thread_of_inferior, switch_to_thread)
7741         (enable_thread_stack_temporaries)
7742         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7743         (get_last_thread_stack_temporary)
7744         (value_in_thread_stack_temporaries, can_access_registers_thread):
7745         Spell out "struct thread_info" instead of just "thread_info".
7746         * inferior.h (notice_new_inferior): Likewise.
7747
7748 2018-06-25  Pedro Alves  <palves@redhat.com>
7749
7750         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7751         pass thread_info pointer to delete_thread.
7752         (windows_nat_target::detach): Pass inferior pointer to
7753         detach_inferior.
7754         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7755         delete_thread.
7756         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7757         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7758         and pass a thread_info pointer to delete_thread.
7759         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7760         pass thread_info pointer to delete_thread.
7761         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7762         delete_thread_silent call.
7763         * procfs.c (procfs_target::detach): Pass inferior pointer to
7764         detach_inferior.
7765         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7766         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7767         delete_thread_silent call.
7768         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7769         pass thread_info pointer to delete_thread.
7770         (windows_nat_target::detach): Pass inferior pointer to
7771         delete_inferior.
7772
7773 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7774
7775         * regcache.c (readable_regcache::read_part): Fix asserts.
7776         (reg_buffer::raw_collect_part): New function.
7777         (regcache::write_part): Fix asserts.
7778         (reg_buffer::raw_supply_part): New function.
7779         (regcache::transfer_regset_register): New helper function.
7780         (regcache::transfer_regset): Call new functions.
7781         (regcache_supply_regset): Use gdb_byte*.
7782         (regcache::supply_regset): Likewise.
7783         (regcache_collect_regset): Likewise.
7784         (regcache::collect_regset): Likewise.
7785         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7786         (reg_buffer::raw_supply_part): Likewise.
7787         (regcache::transfer_regset_register): Likewise.
7788         (regcache::transfer_regset): Use gdb_byte*.
7789
7790 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7791
7792         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7793
7794 2018-06-21  Pedro Alves  <palves@redhat.com>
7795
7796         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7797         instead of a ptid_t.  All callers adjusted.
7798         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7799         adjusted.
7800         (print_ada_task_info, display_current_task_id, task_command_1):
7801         Adjust.
7802         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7803         inferior_thread.
7804         (breakpoint_kind): Adjust.
7805         (remove_breakpoints_pid): Rename to ...
7806         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7807         pointer.  All callers adjusted.
7808         (bpstat_clear_actions): Use inferior_thread.
7809         (get_bpstat_thread): New.
7810         (bpstat_do_actions): Use it.
7811         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7812         to take a thread_info pointer.  All callers adjusted.
7813         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7814         (breakpoint_re_set_thread): Use inferior_thread.
7815         * breakpoint.h (struct inferior): Forward declare.
7816         (bpstat_stop_status): Update.
7817         (remove_breakpoints_pid): Delete.
7818         (remove_breakpoints_inf): New.
7819         * bsd-uthread.c (bsd_uthread_target::wait)
7820         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7821         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7822         (maint_btrace_packet_history_cmd)
7823         (maint_btrace_clear_packet_history_cmd): Adjust.
7824         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7825         inferior_thread.
7826         * cli/cli-interp.c: Include "inferior.h".
7827         * common/refcounted-object.h (struct
7828         refcounted_object_ref_policy): New.
7829         * compile/compile-object-load.c: Include gdbthread.h.
7830         (store_regs): Use inferior_thread.
7831         * corelow.c (core_target::close): Use current_inferior.
7832         (core_target_open): Adjust to use first_thread_of_inferior and use
7833         the current inferior.
7834         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7835         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7836         <thread>: ... this new field.  All references adjusted.
7837         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7838         Take a thread_info pointer instead of a ptid_t.
7839         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7840         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7841         thread_info pointer instead of a ptid_t.
7842         * elfread.c: Include "inferior.h".
7843         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7844         Use inferior_thread.
7845         * eval.c (evaluate_subexp): Likewise.
7846         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7847         inferior_thread.
7848         * gdb_proc_service.h (struct thread_info): Forward declare.
7849         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7850         <thread>: ... this new field.  All references adjusted.
7851         * gdbarch.h, gdbarch.c: Regenerate.
7852         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7853         'thread' parameter.  All implementations and callers adjusted.
7854         * gdbthread.h (thread_info) <set_running>: New method.
7855         (delete_thread, delete_thread_silent): Take a thread_info pointer
7856         instead of a ptid.
7857         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7858         (first_thread_of_process): Delete, replaced by ...
7859         (first_thread_of_inferior): ... this new function.  All callers
7860         adjusted.
7861         (any_live_thread_of_process): Delete, replaced by ...
7862         (any_live_thread_of_inferior): ... this new function.  All callers
7863         adjusted.
7864         (switch_to_thread, switch_to_no_thread): Declare.
7865         (is_executing): Delete.
7866         (enable_thread_stack_temporaries): Update comment.
7867         <enable_thread_stack_temporaries>: Take a thread_info pointer
7868         instead of a ptid_t.  Incref the thread.
7869         <~enable_thread_stack_temporaries>: Decref the thread.
7870         <m_ptid>: Delete
7871         <m_thr>: New.
7872         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7873         (get_last_thread_stack_temporary)
7874         (value_in_thread_stack_temporaries, can_access_registers_thread):
7875         Take a thread_info pointer instead of a ptid_t.  All callers
7876         adjusted.
7877         * infcall.c (get_call_return_value): Use inferior_thread.
7878         (run_inferior_call): Work with thread pointers instead of ptid_t.
7879         (call_function_by_hand_dummy): Work with thread pointers instead
7880         of ptid_t.  Use thread_info_ref.
7881         * infcmd.c (proceed_thread_callback): Access thread's state
7882         directly.
7883         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7884         access thread's state directly.
7885         (continue_command): Use inferior_thread.
7886         (info_program_command): Use find_thread_ptid and access thread
7887         state directly.
7888         (proceed_after_attach_callback): Use thread state directly.
7889         (notice_new_inferior): Take a thread_info pointer instead of a
7890         ptid_t.  All callers adjusted.
7891         (exit_inferior): Take an inferior pointer instead of a pid.  All
7892         callers adjusted.
7893         (exit_inferior_silent): New.
7894         (detach_inferior): Delete.
7895         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7896         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7897         (detach_inferior_command, kill_inferior_command): Use
7898         find_inferior_id instead of valid_gdb_inferior_id and
7899         gdb_inferior_id_to_pid.
7900         (inferior_command): Use inferior and thread pointers.
7901         * inferior.h (struct thread_info): Forward declare.
7902         (notice_new_inferior): Take a thread_info pointer instead of a
7903         ptid_t.  All callers adjusted.
7904         (detach_inferior): Delete declaration.
7905         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7906         instead of a pid.  All callers adjusted.
7907         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7908         (valid_gdb_inferior_id): Delete.
7909         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7910         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7911         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7912         ...
7913         <inf>: ... this new field.
7914         <step_ptid>: Delete, replaced by ...
7915         <step_thread>: ... this new field.
7916         (get_displaced_stepping_state): Take an inferior pointer instead
7917         of a pid.  All callers adjusted.
7918         (displaced_step_in_progress_any_inferior): Adjust.
7919         (displaced_step_in_progress_thread): Take a thread pointer instead
7920         of a ptid_t.  All callers adjusted.
7921         (displaced_step_in_progress, add_displaced_stepping_state): Take
7922         an inferior pointer instead of a pid.  All callers adjusted.
7923         (get_displaced_step_closure_by_addr): Adjust.
7924         (remove_displaced_stepping_state): Take an inferior pointer
7925         instead of a pid.  All callers adjusted.
7926         (displaced_step_prepare_throw, displaced_step_prepare)
7927         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7928         All callers adjusted.
7929         (start_step_over): Adjust.
7930         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7931         displaced step queue.
7932         (do_target_resume): Adjust.
7933         (fetch_inferior_event): Use inferior_thread.
7934         (context_switch, get_inferior_stop_soon): Take an
7935         execution_control_state pointer instead of a ptid_t.  All callers
7936         adjusted.
7937         (switch_to_thread_cleanup): Delete.
7938         (stop_all_threads): Use scoped_restore_current_thread.
7939         * inline-frame.c: Include "gdbthread.h".
7940         (inline_state) <inline_state>: Take a thread pointer instead of a
7941         ptid_t.  All callers adjusted.
7942         <ptid>: Delete, replaced by ...
7943         <thread>: ... this new field.
7944         (find_inline_frame_state): Take a thread pointer instead of a
7945         ptid_t.  All callers adjusted.
7946         (skip_inline_frames, step_into_inline_frame)
7947         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7948         pointer instead of a ptid_t.  All callers adjusted.
7949         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7950         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7951         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7952         pointers directly.
7953         * linux-nat.c (get_detach_signal): Likewise.
7954         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7955         (thread_db_notice_clone): Adjust.
7956         (thread_db_find_new_threads_silently)
7957         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7958         a thread pointer instead of a ptid_t.  All callers adjusted.
7959         * mi/mi-cmd-var.c: Include "inferior.h".
7960         (mi_cmd_var_update_iter): Update to use thread pointers.
7961         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7962         inferior directly.
7963         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7964         out to ...
7965         (mi_output_running): ... this new function.
7966         (mi_on_resume_1): Adjust to use it.
7967         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7968         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7969         directly.
7970         (interrupt_thread_callback): : Adjust to use thread and inferior
7971         pointers.
7972         * proc-service.c: Include "gdbthread.h".
7973         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7974         * progspace-and-thread.c: Include "inferior.h".
7975         * progspace.c: Include "inferior.h".
7976         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7977         hold a reference to an inferior_object.
7978         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7979         inferior_thread.
7980         * python/py-inferior.c (struct inferior_object): Give the type a
7981         tag name instead of a typedef.
7982         (python_on_normal_stop): No need to check if the current thread is
7983         listed.
7984         (inferior_to_inferior_object): Change return type to
7985         inferior_object.  All callers adjusted.
7986         (find_thread_object): Delete, bits factored out to ...
7987         (thread_to_thread_object): ... this new function.
7988         * python/py-infthread.c (create_thread_object): Use
7989         inferior_to_inferior_object.
7990         (thpy_is_stopped): Use thread pointer directly.
7991         (gdbpy_selected_thread): Use inferior_thread.
7992         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7993         field, replaced with ...
7994         <thread>: ... this new field.  All users adjusted.
7995         (btpy_insn_or_gap_new): Drop const.
7996         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7997         callers adjusted.
7998         * python/py-record.c: Include "gdbthread.h".
7999         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8000         a ptid_t.  All callers adjusted.
8001         (gdbpy_current_recording): Use inferior_thread.
8002         * python/py-record.h (recpy_record_object) <ptid>: Delete
8003         field, replaced with ...
8004         <thread>: ... this new field.  All users adjusted.
8005         (recpy_element_object) <ptid>: Delete
8006         field, replaced with ...
8007         <thread>: ... this new field.  All users adjusted.
8008         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8009         a ptid_t.  All callers adjusted.
8010         * python/py-threadevent.c: Include "gdbthread.h".
8011         (get_event_thread): Use thread_to_thread_object.
8012         * python/python-internal.h (struct inferior_object): Forward
8013         declare.
8014         (find_thread_object, find_inferior_object): Delete declarations.
8015         (thread_to_thread_object, inferior_to_inferior_object): New
8016         declarations.
8017         * record-btrace.c: Include "inferior.h".
8018         (require_btrace_thread): Use inferior_thread.
8019         (record_btrace_frame_sniffer)
8020         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8021         (get_thread_current_frame): Use scoped_restore_current_thread and
8022         switch_to_thread.
8023         (get_thread_current_frame): Use thread pointer directly.
8024         (record_btrace_replay_at_breakpoint): Use thread's inferior
8025         pointer directly.
8026         * record-full.c: Include "inferior.h".
8027         * regcache.c: Include "gdbthread.h".
8028         (get_thread_arch_regcache): Use the inferior's address space
8029         directly.
8030         (get_thread_regcache, registers_changed_thread): New.
8031         * regcache.h (get_thread_regcache(thread_info *thread)): New
8032         overload.
8033         (registers_changed_thread): New.
8034         (remote_target) <remote_detach_1>: Swap order of parameters.
8035         (remote_add_thread): <remote_add_thread>: Return the new thread.
8036         (get_remote_thread_info(ptid_t)): New overload.
8037         (remote_target::remote_notice_new_inferior): Use thread pointers
8038         directly.
8039         (remote_target::process_initial_stop_replies): Use
8040         thread_info::set_running.
8041         (remote_target::remote_detach_1, remote_target::detach)
8042         (extended_remote_target::detach): Adjust.
8043         * stack.c (frame_show_address): Use inferior_thread.
8044         * target-debug.h (target_debug_print_thread_info_pp): New.
8045         * target-delegates.c: Regenerate.
8046         * target.c (default_thread_address_space): Delete.
8047         (memory_xfer_partial_1): Use current_inferior.
8048         (target_detach): Use current_inferior.
8049         (target_thread_address_space): Delete.
8050         (generic_mourn_inferior): Use current_inferior.
8051         * target.h (struct target_ops) <thread_address_space>: Delete.
8052         (target_thread_address_space): Delete.
8053         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8054         pointers directly.
8055         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8056         thread pointer instead of a ptid_t.  Adjust all callers.
8057         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8058         (first_thread_of_process): Delete, replaced by ...
8059         (first_thread_of_inferior): ... this new function.  All callers
8060         adjusted.
8061         (any_thread_of_process): Rename to ...
8062         (any_thread_of_inferior): ... this, and take an inferior pointer.
8063         (any_live_thread_of_process): Rename to ...
8064         (any_live_thread_of_inferior): ... this, and take an inferior
8065         pointer.
8066         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8067         (value_in_thread_stack_temporaries)
8068         (get_last_thread_stack_temporary): Take a thread pointer instead
8069         of a ptid_t.  Adjust all callers.
8070         (thread_info::set_running): New.
8071         (validate_registers_access): Use inferior_thread.
8072         (can_access_registers_ptid): Rename to ...
8073         (can_access_registers_thread): ... this, and take a thread
8074         pointer.
8075         (print_thread_info_1): Adjust to compare thread pointers instead
8076         of ptids.
8077         (switch_to_no_thread, switch_to_thread): Make extern.
8078         (scoped_restore_current_thread::~scoped_restore_current_thread):
8079         Use m_thread pointer directly.
8080         (scoped_restore_current_thread::scoped_restore_current_thread):
8081         Use inferior_thread.
8082         (thread_command): Use thread pointer directly.
8083         (thread_num_make_value_helper): Use inferior_thread.
8084         * top.c (execute_command): Use inferior_thread.
8085         * tui/tui-interp.c: Include "inferior.h".
8086         * varobj.c (varobj_create): Use inferior_thread.
8087         (value_of_root_1): Use find_thread_global_id instead of
8088         global_thread_id_to_ptid.
8089
8090 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8091
8092         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8093         possible.
8094         (regcache::write_part): Likewise.
8095         (readable_regcache::cooked_read_part): Update comment.
8096         (readable_regcache::cooked_write_part): Likewise.
8097         * regcache.h: (readable_regcache::read_part): Likewise.
8098         (regcache::write_part): Likewise.
8099
8100 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8101             Dirk Schubert  <dirk.schubert@arm.com>
8102
8103         * aarch64-linux-nat.c (post_attach): New.
8104         (aarch64_linux_nat_target::post_attach): Override post_attach to
8105         record the number of hardware debug registers.
8106
8107 2018-06-20  Tom Tromey  <tom@tromey.com>
8108
8109         * python/py-param.c (add_setshow_generic): Make parameters const.
8110         (parmpy_init): Update.
8111
8112 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8113
8114         * regcache.h (regcache_cooked_read_ftype): Rename to...
8115         (register_read_ftype): ...this, change type to function_view.
8116         (class reg_buffer) <save>: Remove src parameter.
8117         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8118         parameter non-const in first overload.  Remove src parameter in
8119         second overload.
8120         * regcache.c (do_cooked_read): Remove.
8121         (readonly_detached_regcache::readonly_detached_regcache): Make
8122         parameter non-const, adjust call to other constructor.
8123         (reg_buffer::save): Remove src parameter.
8124         * frame.c (do_frame_register_read): Remove.
8125         (frame_save_as_regcache): Use lambda function.
8126         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8127         parameter to ppu2spu_data *.
8128         (ppu2spu_sniffer): Use lambda function.
8129
8130 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8131
8132         * record-full.c (record_full_target::insert_breakpoint): Remove
8133         "struct" keyword, add const.
8134
8135 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8136
8137         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8138         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8139         * configure.ac: Remove AC_PREREQ, add missing quoting.
8140         * gnulib/configure.ac: Modernize usage of
8141         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8142         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8143         (AUTOMAKE_VERSION): Bump to 1.15.1.
8144         * configure: Re-generate.
8145         * config.in: Re-generate.
8146         * aclocal.m4: Re-generate.
8147         * gnulib/aclocal.m4: Re-generate.
8148         * gnulib/config.in: Re-generate.
8149         * gnulib/configure: Re-generate.
8150         * gnulib/import/Makefile.in: Re-generate.
8151
8152 2018-06-19  Pedro Alves  <palves@redhat.com>
8153
8154         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8155         (lookup_minimal_symbol_by_pc_section): ... here with
8156         gdb_assert_not_reached added.
8157
8158 2018-06-19  Pedro Alves  <palves@redhat.com>
8159
8160         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8161         parameter with a block parameter.  Compare location's block symbol
8162         with the frame's block instead of addresses.
8163         (skip_inline_frames): Pass the current block instead of the
8164         frame's address.  Break out as soon as we determine the frame
8165         should not be skipped.
8166
8167 2018-06-18  Tom Tromey  <tom@tromey.com>
8168
8169         * solib-aix.c (solib_aix_get_section_offsets): Return
8170         unique_xmalloc_ptr.
8171         (solib_aix_solib_create_inferior_hook): Update.
8172
8173 2018-06-18  Tom Tromey  <tom@tromey.com>
8174
8175         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8176
8177 2018-06-18  Tom Tromey  <tom@tromey.com>
8178
8179         * solib-frv.c (frv_relocate_main_executable): Use
8180         unique_xmalloc_ptr.
8181         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8182         unique_xmalloc_ptr.
8183
8184 2018-06-18  Tom Tromey  <tom@tromey.com>
8185
8186         * objfiles.h (inhibit_section_map_updates): Update.
8187         (resume_section_map_updates, resume_section_map_updates_cleanup):
8188         Remove.
8189         * solib-svr4.c (svr4_handle_solib_event): Update.
8190         * objfiles.c (inhibit_section_map_updates): Return
8191         scoped_restore_tmpl<int>.
8192         (resume_section_map_updates, resume_section_map_updates_cleanup):
8193         Remove.
8194
8195 2018-06-18  Tom Tromey  <tom@tromey.com>
8196
8197         * valprint.h (read_string): Update.
8198         * valprint.c (read_string): Change type of "buffer".
8199         (val_print_string): Update.
8200         * python/py-value.c (valpy_string): Update.
8201         * language.h (struct language_defn) <la_get_string>: Change
8202         type of "buffer".
8203         (default_get_string, c_get_string): Update.
8204         * language.c (default_get_string): Change type of "buffer".
8205         * guile/scm-value.c (gdbscm_value_to_string): Update.
8206         * c-lang.c (c_get_string): Change type of "buffer".
8207
8208 2018-06-18  Tom Tromey  <tom@tromey.com>
8209
8210         * ser-mingw.c (struct pipe_state_destroyer): New.
8211         (pipe_state_up): New typedef.
8212         (cleanup_pipe_state): Remove.
8213         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8214
8215 2018-06-18  Tom Tromey  <tom@tromey.com>
8216
8217         * rust-lang.h (rust_yyerror): Don't declare.
8218         * rust-lang.c (rust_language_defn): Update.
8219         * rust-exp.y (yyerror): Now static.
8220         * parse.c (parse_exp_in_context_1): Update.
8221         * p-lang.h (p_yyerror): Don't declare.
8222         * p-lang.c (p_language_defn): Update.
8223         * p-exp.y (yyerror): Now static.
8224         * opencl-lang.c (opencl_language_defn): Update.
8225         * objc-lang.c (objc_language_defn): Update.
8226         * m2-lang.h (m2_yyerror): Don't declare.
8227         * m2-lang.c (m2_language_defn): Update.
8228         * m2-exp.y (yyerror): Now static.
8229         * language.h (struct language_defn) <la_error>: Remove.
8230         * language.c (unk_lang_error): Remove.
8231         (unknown_language_defn, auto_language_defn): Remove.
8232         * go-lang.h (go_yyerror): Don't declare.
8233         * go-lang.c (go_language_defn): Update.
8234         * go-exp.y (yyerror): Now static.
8235         * f-lang.h (f_yyerror): Don't declare.
8236         * f-lang.c (f_language_defn): Update.
8237         * f-exp.y (yyerror): Now static.
8238         * d-lang.h (d_yyerror): Don't declare.
8239         * d-lang.c (d_language_defn): Update.
8240         * d-exp.y (yyerror): Now static.
8241         * c-lang.h (c_yyerror): Don't declare.
8242         * c-lang.c (c_language_defn, cplus_language_defn)
8243         (asm_language_defn, minimal_language_defn): Update.
8244         * c-exp.y (yyerror): Now static.
8245         * ada-lang.h (ada_yyerror): Don't declare.
8246         * ada-lang.c (ada_language_defn): Update.
8247         * ada-exp.y (yyerror): Now static.
8248
8249 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8250
8251         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8252         (store_sveregs_to_thread): Likewise.
8253         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8254         (aarch64_linux_store_inferior_registers): Likewise.
8255         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8256         function.
8257         (aarch64_sve_regs_copy_to_regcache): Likewise.
8258         (aarch64_sve_regs_copy_from_regcache): Likewise.
8259         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8260         declaration.
8261         (aarch64_sve_regs_copy_to_regcache): Likewise.
8262         (aarch64_sve_regs_copy_from_regcache): Likewise.
8263         (sve_context): Structure from Linux headers.
8264         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8265         (SVE_SIG_ZREG_SIZE): Likewise.
8266         (SVE_SIG_PREG_SIZE): Likewise.
8267         (SVE_SIG_FFR_SIZE): Likewise.
8268         (SVE_SIG_REGS_OFFSET): Likewise.
8269         (SVE_SIG_ZREGS_OFFSET): Likewise.
8270         (SVE_SIG_ZREG_OFFSET): Likewise.
8271         (SVE_SIG_ZREGS_SIZE): Likewise.
8272         (SVE_SIG_PREGS_OFFSET): Likewise.
8273         (SVE_SIG_PREG_OFFSET): Likewise.
8274         (SVE_SIG_PREGS_SIZE): Likewise.
8275         (SVE_SIG_FFR_OFFSET): Likewise.
8276         (SVE_SIG_REGS_SIZE): Likewise.
8277         (SVE_SIG_CONTEXT_SIZE): Likewise.
8278         (SVE_PT_REGS_MASK): Likewise.
8279         (SVE_PT_REGS_FPSIMD): Likewise.
8280         (SVE_PT_REGS_SVE): Likewise.
8281         (SVE_PT_VL_INHERIT): Likewise.
8282         (SVE_PT_VL_ONEXEC): Likewise.
8283         (SVE_PT_REGS_OFFSET): Likewise.
8284         (SVE_PT_FPSIMD_OFFSET): Likewise.
8285         (SVE_PT_FPSIMD_SIZE): Likewise.
8286         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8287         (SVE_PT_SVE_PREG_SIZE): Likewise.
8288         (SVE_PT_SVE_FFR_SIZE): Likewise.
8289         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8290         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8291         (__SVE_SIG_TO_PT): Likewise.
8292         (SVE_PT_SVE_OFFSET): Likewise.
8293         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8294         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8295         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8296         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8297         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8298         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8299         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8300         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8301         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8302         (SVE_PT_SVE_SIZE): Likewise.
8303         (SVE_PT_SIZE): Likewise.
8304         (HAS_SVE_STATE): New define.
8305
8306 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8307
8308         * nat/aarch64-sve-linux-sigcontext.h: New file.
8309         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8310         new files.
8311         (SVE_VQ_MIN): Likewise.
8312         (SVE_VQ_MAX): Likewise.
8313         (SVE_VL_MIN): Likewise.
8314         (SVE_VL_MAX): Likewise.
8315         (SVE_NUM_ZREGS): Likewise.
8316         (SVE_NUM_PREGS): Likewise.
8317         (sve_vl_valid): Likewise.
8318         (struct user_sve_header): Likewise.
8319
8320 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8321             Richard Bunt <Richard.Bunt@arm.com>
8322
8323         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8324         was requested by GDB.
8325
8326 2018-06-15  Tom de Vries  <tdevries@suse.de>
8327
8328         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8329
8330 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8331
8332         * gnulib/update-gnulib.sh: Print expected versions of
8333         autoconf/aclocal.
8334
8335 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8336
8337         * arch-utils.c (default_type_align): Use type_length_units.
8338         * gdbtypes.c (type_align): Use type_length_units.
8339
8340 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8341
8342         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8343         of 'define' command.
8344
8345 2018-06-14  Tom de Vries  <tdevries@suse.de>
8346
8347         PR cli/22573
8348         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8349         get_no_prettyformat_print_options.
8350
8351 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8352
8353         * sparc-nat.h: Include target.h.
8354         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8355         <fetch_registers>: Remove this argument in function call.
8356         <store_registers>: Remove this argument in function call, remove
8357         extra semicolon.
8358         <low_forget_process>: Call sparc64_forget_process instead of
8359         sparc_forget_process.
8360
8361 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8362
8363         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8364         (procfs_target::make_corefile_notes): Adjust to new
8365         target_read_alloc return type.
8366
8367 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8368             Stephen Roberts  <stephen.roberts@arm.com>
8369
8370         PR gdb/22882
8371         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8372         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8373         Move should_notify_stop local into more inner scope.
8374
8375 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8376             Stephen Roberts  <stephen.roberts@arm.com>
8377
8378         PR gdb/22882
8379         * infrun.c (resume_1): Add call to mark_async_event_handler.
8380
8381 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8382
8383         * infrun.c (do_target_wait): Change old version of $pc printed.
8384
8385 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8386
8387         * dwarf2read.c (read_index_from_section): Rename to...
8388         (read_gdb_index_from_section): ... this, update all callers.
8389         (dwarf2_read_index): Rename to...
8390         (dwarf2_read_gdb_index): ... this, update all callers.
8391
8392 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8393
8394         * hppa-linux-nat.c
8395         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8396         hppa_linux_nat_target::fetch_registers.
8397
8398 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8399
8400         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8401         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8402         (AARCH64_DWARF_SVE_FFR): Likewise.
8403         (AARCH64_DWARF_SVE_P0): Likewise.
8404         (AARCH64_DWARF_SVE_Z0): Likewise.
8405
8406 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8407
8408         * common/common-regcache.h (raw_compare): New function.
8409         * regcache.c (regcache::raw_compare): Likewise.
8410         * regcache.h (regcache::raw_compare): New declaration.
8411
8412 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8413
8414         * common/common-regcache.h (reg_buffer_common): New structure.
8415         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8416         (reg_buffer::raw_supply): Likewise.
8417         (reg_buffer::raw_supply_integer): Likewise.
8418         (reg_buffer::raw_supply_zeroed): Likewise.
8419         (reg_buffer::raw_collect): Likewise.
8420         (reg_buffer::raw_collect_integer): Likewise.
8421         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8422         (reg_buffer::raw_supply): Likewise.
8423         (reg_buffer::raw_supply_integer): Likewise.
8424         (reg_buffer::raw_supply_zeroed): Likewise.
8425         (reg_buffer::raw_collect): Likewise.
8426         (reg_buffer::raw_collect_integer): Likewise.
8427
8428 2018-06-10  Tom Tromey  <tom@tromey.com>
8429
8430         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8431         (class remote_state) <stop_reply_queue>: Now std::vector.
8432         (remote_state::~remote_state)
8433         (remote_target::stop_reply_queue_length): Update.
8434         (struct queue_iter_param, remove_child_of_pending_fork)
8435         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8436         (check_pending_event_prevents_wildcard_vcont_callback)
8437         (remove_stop_reply_for_inferior)
8438         (remove_stop_reply_of_remote_state)
8439         (remote_notif_remove_once_on_match)
8440         (stop_reply_match_ptid_and_ws)
8441         (remote_kill_child_of_pending_fork): Remove.
8442         (remote_target::remove_new_fork_children)
8443         (remote_target::check_pending_events_prevent_wildcard_vcont)
8444         (remote_target::discard_pending_stop_replies)
8445         (remote_target::discard_pending_stop_replies_in_queue)
8446         (remote_target::remote_notif_remove_queued_reply)
8447         (remote_target::queued_stop_reply)
8448         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8449         (remote_target::wait, remote_target::kill_new_fork_children)
8450         (remote_target::async): Update.
8451
8452 2018-06-10  Tom Tromey  <tom@tromey.com>
8453
8454         * record-full.c (record_full_arch_list_cleanups): Remove.
8455         (record_full_message): Use try/catch.
8456         (record_full_wait_cleanups): Remove.
8457         (record_full_wait_1): Use try/catch.
8458         (record_full_restore): Likewise.
8459
8460 2018-06-10  Tom Tromey  <tom@tromey.com>
8461
8462         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8463         declare VEC.  Add constructor.
8464         <in_target_beneath>: Now bool.
8465         (record_full_breakpoints): Now a std::vector, static.
8466         (record_full_sync_record_breakpoints)
8467         (record_full_init_record_breakpoints)
8468         (record_full_target::insert_breakpoint)
8469         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8470
8471 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8472
8473         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8474         * serial.c (serial_interface_lookup): Remove struct keyword.
8475
8476 2018-06-10  Tom Tromey  <tom@tromey.com>
8477
8478         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8479         method.
8480         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8481         a method.
8482         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8483         method.
8484         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8485         "beneath" as a method.
8486         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8487         Use "beneath" as a method.
8488
8489 2018-06-10  Tom Tromey  <tom@tromey.com>
8490
8491         * tracefile.c (struct trace_file_writer_deleter): New.
8492         <operator()>: Rename from trace_file_writer_xfree.
8493         (trace_file_writer_up): New typedef.
8494         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8495
8496 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8497
8498         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8499         <m_registers, m_register_status>: Change type to
8500         std::unique_ptr.
8501         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8502         XCNEWVEC.
8503
8504 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8505
8506         * common/common-regcache.h (enum register_status): Add
8507         underlying type "signed char".
8508         * regcache.h (reg_buffer) <m_register_status>: Change type to
8509         register_status *.
8510         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8511         register_status instead of signed char.
8512         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8513         (reg_buffer::get_register_status): Remove cast.
8514         (readable_regcache::raw_read): Remove cast.
8515         (readable_regcache::cooked_read): Remove cast.
8516
8517 2018-06-09  Tom Tromey  <tom@tromey.com>
8518
8519         * source.c (reverse_search_command, forward_search_command): Use
8520         scoped_fd.
8521
8522 2018-06-09  Tom Tromey  <tom@tromey.com>
8523
8524         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8525         (serial_ops_list): Now static, std::vector.
8526         (serial_interface_lookup, serial_add_interface): Update.
8527
8528 2018-06-09  Tom Tromey  <tom@tromey.com>
8529
8530         * dwarf2read.c (process_cu_includes): Update.
8531         (process_full_comp_unit): Update.
8532         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8533         std::vector.
8534
8535 2018-06-08  Paul Koning  <paul_koning@dell.com>
8536
8537         PR gdb/23252
8538
8539         * python/python.c (do_start_initialization):
8540         Avoid call to internal Python API.
8541         (init__gdb_module): New function.
8542
8543 2018-06-08  Gary Benson <gbenson@redhat.com>
8544
8545         * linux-thread-db.c (valprint.h): New include.
8546         (struct check_thread_db_info): New structure.
8547         (check_thread_db_on_load, tdb_testinfo): New static globals.
8548         (check_thread_db, check_thread_db_callback): New functions.
8549         (try_thread_db_load_1): Run integrity checks if requested.
8550         (maintenance_check_libthread_db): New function.
8551         (_initialize_thread_db): Register "maint check libthread-db"
8552         and "maint set/show check-libthread-db".
8553         * NEWS: Mention the above new commands.
8554
8555 2018-06-08  Tom Tromey  <tom@tromey.com>
8556
8557         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8558         now a method.
8559
8560 2018-06-08  Tom Tromey  <tom@tromey.com>
8561
8562         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8563
8564 2018-06-08  Tom Tromey  <tom@tromey.com>
8565
8566         * common/btrace-common.h (struct btrace_data): Add constructor,
8567         destructor, move assignment operator.
8568         <empty, clear, fini>: New methods.
8569         <format>: Initialize.
8570         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8571         (btrace_data_empty): Don't declare.
8572         * common/btrace-common.c (btrace_data_init): Remove.
8573         (btrace_data::fini): Rename from btrace_data_fini.
8574         (btrace_data::empty): Rename from btrace_data_empty.
8575         (btrace_data::clear): Rename from btrace_data_clear.  Return
8576         bool.
8577         * btrace.h (make_cleanup_btrace_data): Don't declare.
8578         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8579         (parse_xml_btrace): Update.
8580         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8581         (maint_btrace_clear_packet_history_cmd): Update.
8582
8583 2018-06-07  Pedro Alves  <palves@redhat.com>
8584
8585         * target.h (target_ops) <beneath>: Now a method.  All references
8586         updated.
8587         (class target_stack): New.
8588         * target.c (g_target_stack): New.
8589         (g_current_top_target): Delete.
8590         (current_top_target): Get the top target out of g_target_stack.
8591         (target_stack::push, target_stack::unpush): New.
8592         (push_target, unpush_target): Reimplement.
8593         (target_is_pushed): Reimplement in terms of g_target_stack.
8594         (target_ops::beneath, target_stack::find_beneath): New.
8595
8596 2018-06-07  Pedro Alves  <palves@redhat.com>
8597
8598         * target.h (find_target_beneath): Delete declaration.
8599         * target.c (find_target_beneath): Delete definition.
8600         * aix-thread.c: All callers of find_target_beneath adjusted to
8601         call target_ops::beneath instead.
8602         * bsd-uthread.c: Likewise.
8603         * linux-thread-db.c: Likewise.
8604         * ravenscar-thread.c: Likewise.
8605         * sol-thread.c: Likewise.
8606         * spu-multiarch.c: Likewise.
8607
8608 2018-06-07  Pedro Alves  <palves@redhat.com>
8609
8610         * target.h (target_ops) <beneath>: Now a method.  All references
8611         updated.
8612         (target_ops) <m_beneath>: New.
8613         * target.c (target_ops::beneath): New.
8614         * corelow.c: Adjust all references to target_ops::beneath.
8615         * linux-thread-db.c: Likewise.
8616         * make-target-delegates: Likewise.
8617         * record-btrace.c: Likewise.
8618         * record-full.c: Likewise.
8619         * remote.c: Likewise.
8620         * target.c: Likewise.
8621         * target-delegates.c: Regenerate.
8622
8623 2018-06-07  Pedro Alves  <palves@redhat.com>
8624
8625         * target.h (target_stack): Delete.
8626         (current_top_target): Declare function.
8627         * target.c (target_stack): Delete.
8628         (g_current_top_target): New.
8629         (current_top_target): New function.
8630         * auxv.c: Use current_top_target instead of target_stack
8631         throughout.
8632         * avr-tdep.c: Likewise.
8633         * breakpoint.c: Likewise.
8634         * corefile.c: Likewise.
8635         * elfread.c: Likewise.
8636         * eval.c: Likewise.
8637         * exceptions.c: Likewise.
8638         * frame.c: Likewise.
8639         * gdbarch-selftests.c: Likewise.
8640         * gnu-v3-abi.c: Likewise.
8641         * ia64-tdep.c: Likewise.
8642         * ia64-vms-tdep.c: Likewise.
8643         * infcall.c: Likewise.
8644         * infcmd.c: Likewise.
8645         * infrun.c: Likewise.
8646         * linespec.c: Likewise.
8647         * linux-tdep.c: Likewise.
8648         * minsyms.c: Likewise.
8649         * ppc-linux-nat.c: Likewise.
8650         * ppc-linux-tdep.c: Likewise.
8651         * procfs.c: Likewise.
8652         * regcache.c: Likewise.
8653         * remote.c: Likewise.
8654         * rs6000-tdep.c: Likewise.
8655         * s390-linux-nat.c: Likewise.
8656         * s390-tdep.c: Likewise.
8657         * solib-aix.c: Likewise.
8658         * solib-darwin.c: Likewise.
8659         * solib-dsbt.c: Likewise.
8660         * solib-spu.c: Likewise.
8661         * solib-svr4.c: Likewise.
8662         * solib-target.c: Likewise.
8663         * sparc-tdep.c: Likewise.
8664         * sparc64-tdep.c: Likewise.
8665         * spu-tdep.c: Likewise.
8666         * symfile.c: Likewise.
8667         * symtab.c: Likewise.
8668         * target-descriptions.c: Likewise.
8669         * target-memory.c: Likewise.
8670         * target.c: Likewise.
8671         * target.h: Likewise.
8672         * tracefile-tfile.c: Likewise.
8673         * tracepoint.c: Likewise.
8674         * valops.c: Likewise.
8675         * valprint.c: Likewise.
8676         * value.c: Likewise.
8677         * windows-tdep.c: Likewise.
8678         * mi/mi-main.c: Likewise.
8679
8680 2018-06-07  Tom Tromey  <tom@tromey.com>
8681
8682         * valprint.h (build_address_symbolic): Declare.
8683         * printcmd.c (print_address_symbolic): Update.
8684         (build_address_symbolic): Change "name" and "filename" to
8685         std::string.
8686         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8687         Update.
8688         * defs.h (build_address_symbolic): Remove declaration.
8689
8690 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8691
8692         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8693         (aarch64_vnv_type): Add function.
8694         (aarch64_pseudo_register_name): Add V regs for SVE.
8695         (aarch64_pseudo_register_type): Likewise.
8696         (aarch64_pseudo_register_reggroup_p): Likewise.
8697         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8698         (aarch64_pseudo_read_value): Add V regs for SVE.
8699         (aarch64_pseudo_write_2): Use V0 offset for SVE
8700         (aarch64_pseudo_write): Add V regs for SVE.
8701         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8702
8703 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8704
8705         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8706         (sve_vl_from_vq): Likewise.
8707
8708 2018-06-05  Tom Tromey  <tom@tromey.com>
8709
8710         * cli/cli-cmds.c (show_version): Update.
8711         * top.c (print_gdb_version): Add "interactive" parameter.
8712         Update.
8713         * main.c (captured_main_1): Update.
8714         * top.h (print_gdb_version): Add "interactive" parameter and a
8715         comment.
8716
8717 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8718
8719         * common/enum-flags.h: Add trailing semicolon to example in
8720         comment.
8721
8722 2018-06-05  Tom Tromey  <tom@tromey.com>
8723
8724         PR cli/12326:
8725         * NEWS: Add entry about pager.
8726         * utils.c (pagination_disabled_for_command): New global.
8727         (prompt_for_continue): Allow "c" response to prompt.
8728         (reinitialize_more_filter): Clear
8729         pagination_disabled_for_command.
8730         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8731
8732 2018-06-04  Tom Tromey  <tom@tromey.com>
8733
8734         * ada-lang.h (ada_lookup_symbol_list): Update.
8735         * ada-lang.c (resolve_subexp): Update.
8736         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8737         parameter.
8738         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8739         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8740         results parameter to std::vector.
8741         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8742         Update.
8743         * ada-exp.y (block_lookup): Update.
8744         (select_possible_type_sym): Change type of syms.  Remove nsyms
8745         parameter.
8746         (write_var_or_type, write_name_assoc): Update.
8747
8748 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8749
8750         * windows-nat.c (windows_nat_target::xfer_partial): Return
8751         TARGET_XFER_E_IO if we need to delegate to the target beneath
8752         but BENEATH is NULL.
8753
8754 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8755
8756         * Makefile.in (config.status): Add configure.nat as a
8757         dependency.
8758
8759 2018-06-04  Tom Tromey  <tom@tromey.com>
8760
8761         * cp-name-parser.y (cpname_state): Add method declarations.
8762         (HANDLE_QUAL): Update.
8763         (cpname_state::d_grab, cpname_state::fill_comp)
8764         (cpname_state::make_operator, cpname_state::make_dtor)
8765         (cpname_state::make_builtin_type, cpname_state::make_name)
8766         (cpname_state::d_qualify, cpname_state::d_int_type)
8767         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8768         (%union): Move earlier.
8769
8770 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8771
8772         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8773
8774 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8775
8776         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8777         (aarch64_pseudo_write_1): Likewise.
8778         (aarch64_pseudo_read_value): Use helper.
8779         (aarch64_pseudo_write): Likewise.
8780
8781 2018-06-04  Pedro Alves  <palves@redhat.com>
8782
8783         * darwin-nat.c (darwin_ops): Delete.
8784         (darwin_attach_pid): Use get_native_target.
8785
8786 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8787
8788         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8789         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8790
8791 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8792
8793         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8794         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8795         (aarch64_gdbarch_init): Check for SVE.
8796         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8797
8798 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8799
8800         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8801         * aarch64-tdep.h (aarch64_read_description): Likewise.
8802         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8803         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8804         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8805         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8806         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8807
8808 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8809
8810         * value.c (value_fetch_lazy_bitfield): New.
8811         (value_fetch_lazy_memory): New.
8812         (value_fetch_lazy_register): New.
8813         (value_fetch_lazy): Factor out to smaller functions.
8814
8815 2018-06-01  Tom Tromey  <tom@tromey.com>
8816
8817         * cp-name-parser.y (backslashable, represented): Now const.
8818
8819 2018-06-01  Tom Tromey  <tom@tromey.com>
8820
8821         * cp-name-parser.y: Include parser-defs.h.
8822         (parser_fprintf): Remove declaration.
8823
8824 2018-06-01  Tom Tromey  <tom@tromey.com>
8825
8826         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8827         %parse-param.
8828         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8829         (global_result): Remove globals.
8830         (struct cpname_state): New.
8831         (yyparse): Don't declare.
8832         (yylex, yyerror): Move declarations after %union.
8833         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8834         (make_name): Add state parameter.
8835         Update all callers.
8836         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8837         parameter.
8838         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8839         Update.
8840         (yylex): Add lvalp, state parameters.
8841         (yyerror): Add state parameter.
8842         (cp_demangled_name_to_comp): Update.
8843
8844 2018-06-01  Tom Tromey  <tom@tromey.com>
8845
8846         * cp-name-parser.y (parser_fprintf): Declare.
8847         (GDB_YY_REMAP_PREFIX): Define.
8848         Include yy-remap.h.  Don't redefine yy* identifiers.
8849
8850 2018-06-01  Tom Tromey  <tom@tromey.com>
8851
8852         * python/py-type.c (typy_legacy_template_argument): Update.
8853         * cp-support.h (cp_demangled_name_to_comp): Update.
8854         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8855         parameter to be a "std::string *".
8856         (main): Update.
8857
8858 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8859
8860         * ada-lex.l: Include "diagnostics.h" instead of
8861         "common/diagnostics.h".
8862         * unittests/environ-selftests.c: Likewise.
8863         * common/diagnostics.h: Moved to ../include.
8864
8865 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8866
8867         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8868         to language_mode_manual while calling breakpoint_re_set_one.
8869
8870 2018-06-01  Tom Tromey  <tom@tromey.com>
8871
8872         * valops.c (value_cast_structs, destructor_name_p): Update.
8873         * symtab.c (gdb_mangle_name): Update.
8874         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8875         Update.
8876         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8877         (pascal_object_print_value_fields, pascal_object_print_value):
8878         Update.
8879         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8880         * linespec.c (find_methods): Update.
8881         * gdbtypes.h (type_name_no_tag): Remove.
8882         (type_name_or_error): Rename from type_name_no_tag_or_error.
8883         * gdbtypes.c (type_name_no_tag): Remove.
8884         (type_name_or_error): Rename from type_name_no_tag_or_error.
8885         (lookup_struct_elt_type, check_typedef): Update.
8886         * expprint.c (print_subexp_standard): Update.
8887         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8888         * d-namespace.c (d_lookup_nested_symbol): Update.
8889         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8890         (cp_print_class_member): Update.
8891         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8892         * completer.c (add_struct_fields): Update.
8893         * c-typeprint.c (cp_type_print_derivation_info)
8894         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8895         Update.
8896         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8897         (ada_prefer_type, ada_is_exception_sym): Update.
8898
8899 2018-06-01  Tom Tromey  <tom@tromey.com>
8900
8901         * valops.c (enum_constant_from_type, value_namespace_elt)
8902         (value_maybe_namespace_elt): Update.
8903         * valarith.c (find_size_for_pointer_math): Update.
8904         * target-descriptions.c (make_gdb_type): Update.
8905         * symmisc.c (print_symbol): Update.
8906         * stabsread.c (define_symbol, read_type)
8907         (complain_about_struct_wipeout, add_undefined_type)
8908         (cleanup_undefined_types_1): Update.
8909         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8910         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8911         (rust_internal_print_type, rust_composite_type)
8912         (rust_evaluate_funcall, rust_evaluate_subexp)
8913         (rust_inclusive_range_type_p): Update.
8914         * python/py-type.c (typy_get_tag): Update.
8915         * p-typeprint.c (pascal_type_print_base): Update.
8916         * mdebugread.c (parse_symbol, parse_type): Update.
8917         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8918         Update.
8919         * guile/scm-type.c (gdbscm_type_tag): Update.
8920         * go-lang.c (sixg_string_p): Update.
8921         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8922         Update.
8923         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8924         (TYPE_TAG_NAME): Remove.
8925         * gdbtypes.c (type_name_no_tag): Simplify.
8926         (check_typedef, check_types_equal, recursive_dump_type)
8927         (copy_type_recursive, arch_composite_type): Update.
8928         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8929         in summary mode when needed.
8930         * eval.c (evaluate_funcall): Update.
8931         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8932         (process_structure_scope, read_enumeration_type)
8933         (read_namespace_type, read_module_type, determine_prefix): Update.
8934         * cp-support.c (inspect_type): Update.
8935         * coffread.c (process_coff_symbol, decode_base_type): Update.
8936         * c-varobj.c (c_is_path_expr_parent): Update.
8937         * c-typeprint.c (c_type_print_base_struct_union): Update.
8938         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8939         summary when using C language.
8940         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8941         (gen_maybe_namespace_elt): Update.
8942         * ada-lang.c (ada_type_name): Simplify.
8943         (empty_record, ada_template_to_fixed_record_type_1)
8944         (template_to_static_fixed_type)
8945         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8946
8947 2018-06-01  Tom Tromey  <tom@tromey.com>
8948
8949         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8950         c_print_type.
8951         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8952         (c_print_type): Update.
8953         (c_print_type): New overload.
8954         (c_type_print_varspec_prefix, c_type_print_args)
8955         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8956         (c_type_print_base_struct_union, c_type_print_base_1)
8957         (cp_type_print_method_args): Add "language" parameter.
8958         (c_type_print_base): Update.
8959         * c-lang.h (c_print_type): Add new overload.
8960
8961 2018-06-01  Tom Tromey  <tom@tromey.com>
8962
8963         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8964         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8965
8966 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8967
8968         * aarch64-tdep.c (aarch64_sve_register_names): New const
8969         var.
8970         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8971         (AARCH64_SVE_Z_REGS_NUM): New define.
8972         (AARCH64_SVE_P_REGS_NUM): Likewise.
8973         (AARCH64_SVE_NUM_REGS): Likewise.
8974
8975 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8976
8977         * nat/linux-ptrace.h [__alpha__]
8978         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8979         definitions.
8980
8981 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8982
8983         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8984         the endianness selected.
8985         * NEWS: Document `set endian auto' mode operation update.
8986
8987 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8988
8989         * Makefile.in: Add new header.
8990         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8991         (sve_vl_from_vg): Likewise.
8992         (sve_vq_from_vl): Likewise.
8993         (sve_vl_from_vq): Likewise.
8994         (sve_vq_from_vg): Likewise.
8995         (sve_vg_from_vq): Likewise.
8996         * configure.nat: Add new c file.
8997         * nat/aarch64-sve-linux-ptrace.c: New file.
8998         * nat/aarch64-sve-linux-ptrace.h: New file.
8999
9000 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9001
9002         * aarch64-linux-nat.c (aarch64_linux_read_description):
9003         Add parmeter zero.
9004         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9005         Likewise.
9006         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9007         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9008         (aarch64_gdbarch_init): Add parmeter zero.
9009         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9010         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9011         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9012         parmeter.
9013         * doc/gdb.texinfo: Describe SVE feature
9014         * features/aarch64-sve.c: New file.
9015
9016 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9017
9018         PR gdb/23210
9019         * gdbarch.sh (significant_addr_bit): Default to zero when
9020         not set by target architecture.
9021         * gdbarch.c: Re-generated.
9022         * utils.c (address_significant): Update.
9023
9024 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9025
9026         * stack.c (func_command): Remove trailing newline in call to error.
9027
9028 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9029
9030         * regcache.h (regcache_raw_collect): Remove, update callers to
9031         use regcache::raw_collect.
9032         * regcache.c (regcache_raw_collect): Remove.
9033
9034 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9035
9036         * regcache.h (regcache_raw_supply): Remove, update callers to
9037         use detached_regcache::raw_supply.
9038         * regcache.c (regcache_raw_supply): Remove.
9039
9040 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9041
9042         * regcache.h (regcache_cooked_write_part): Remove, update
9043         callers to use regcache::cooked_write_part.
9044         * regcache.c (regcache_cooked_write_part): Remove.
9045
9046 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9047
9048         * regcache.h (regcache_cooked_read_part): Remove, update callers
9049         to use readable_regcache::cooked_read_part.
9050         * regcache.c (regcache_cooked_read_part): Remove.
9051
9052 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9053
9054         * regcache.h (regcache_cooked_read_value): Remove, update
9055         callers to use readable_regcache::cooked_read_value.
9056         * regcache.c (regcache_cooked_read_value): Remove.
9057
9058 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9059
9060         * regcache.h (regcache_cooked_write): Remove, update callers to
9061         use regcache::cooked_write.
9062         * regcache.c (regcache_cooked_write): Remove.
9063
9064 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9065
9066         * regcache.h (regcache_invalidate): Remove, update callers to
9067         use detached_regcache::invalidate instead.
9068         * regcache.c (regcache_invalidate): Remove.
9069
9070 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9071
9072         * regcache.h (regcache_raw_write_part): Remove, update callers
9073         to use regcache::raw_write_part instead.
9074         * regcache.c (regcache_raw_write_part): Remove.
9075
9076 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9077
9078         * regcache.h (regcache_raw_read_part): Remove, update callers to
9079         use readable_regcache::raw_read_part instead.
9080         * regcache.c (regcache_raw_read_part): Remove.
9081
9082 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9083
9084         * regcache.h (regcache_cooked_read): Remove, update callers to
9085         use readable_regcache::cooked_read instead.
9086         * regcache.c (regcache_cooked_read): Remove.
9087
9088 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9089
9090         * regcache.h (regcache_raw_write): Remove, update callers to use
9091         regcache::raw_write instead.
9092         * regcache.c (regcache_raw_write): Remove.
9093
9094 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9095
9096         * regcache.h (regcache_raw_read): Remove, update callers to use
9097         readable_regcache::raw_read instead.
9098         * regcache.c (regcache_raw_read): Remove.
9099
9100 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9101
9102         * regcache.h (regcache_raw_update): Remove, update callers to
9103         use readable_regcache::raw_update instead.
9104         * regcache.c (regcache_raw_update): Remove.
9105
9106 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9107
9108         * regcache.h (regcache_register_status): Remove, update callers
9109         to use reg_buffer::get_register_status directly instead.
9110         * regcache.c (regcache_register_status): Remove.
9111
9112 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9113
9114         * regcache.h (regcache_get_ptid): Remove, update all callers to
9115         call regcache::ptid instead.
9116         * regcache.c (regcache_get_ptid): Remove.
9117
9118 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9119
9120         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9121
9122 2018-05-30  Pedro Alves  <palves@redhat.com>
9123
9124         * common/common-exceptions.h (exception_rethrow): Use
9125         ATTRIBUTE_NORETURN.
9126
9127 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9128
9129         * breakpoint.c (print_solib_event, check_status_catch_solib):
9130         Remove struct keyword in range-based for loops.
9131         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9132         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9133         Likewise.
9134         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9135         Likewise.
9136         * symfile.c (addr_info_make_relative): Likewise.
9137         * thread.c (value_in_thread_stack_temporaries): Likewise.
9138
9139 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9140
9141         PR gdb/16841
9142         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9143         aggregate type to get its real type before accessing it.
9144
9145 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9146
9147         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9148         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9149         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9150         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9151         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9152         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9153         * printcmd.c (info_address_command): Likewise.
9154
9155 2018-05-29  Tom Tromey  <tom@tromey.com>
9156
9157         * windows-nat.c (handle_exception): Update fall-through comment.
9158
9159 2018-05-29  Tom Tromey  <tom@tromey.com>
9160
9161         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9162         (struct program_space) <added_solibs>: Now a std::vector.
9163         * breakpoint.c (print_solib_event): Update.
9164         (check_status_catch_solib): Update.
9165         * progspace.c (clear_program_space_solib_cache): Update.
9166         * solib.c (update_solib_list): Update.
9167
9168 2018-05-29  Tom Tromey  <tom@tromey.com>
9169
9170         * python/py-type.c (typy_richcompare): Update.
9171         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9172         * gdbtypes.h (types_deeply_equal): Return bool.
9173         (types_equal): Likewise.
9174         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9175         declare VEC.
9176         (check_types_equal): Change worklist to std::vector.  Return
9177         bool.
9178         (struct type_equality_entry): Add constructor.
9179         (compare_maybe_null_strings): Return bool.
9180         (check_types_worklist): Return bool.  Change worklist to
9181         std::vector.
9182         (types_deeply_equal): Use std::vector.
9183         (types_equal): Return bool.
9184         (compare_maybe_null_strings): Simplify.
9185
9186 2018-05-29  Tom Tromey  <tom@tromey.com>
9187
9188         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9189
9190 2018-05-29  Tom Tromey  <tom@tromey.com>
9191
9192         * objc-lang.h: Don't include cp-support.h.
9193         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9194         declare VEC.
9195
9196 2018-05-27  Tom Tromey  <tom@tromey.com>
9197
9198         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9199
9200 2018-05-25  Tom Tromey  <tom@tromey.com>
9201
9202         * value.c (value::location): Initialize.
9203
9204 2018-05-25  Tom Tromey  <tom@tromey.com>
9205
9206         * dbxread.c (init_bincl_list): Remove.
9207         (bincl_list): Now a std::vector.
9208         (bincls_allocated, next_bincl): Remove.
9209         (free_bincl_list, do_free_bincl_list_cleanup)
9210         (make_cleanup_free_bincl_list): Remove.
9211         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9212         unique_xmalloc_ptr.
9213         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9214         (struct header_file_location): Add constructor.
9215         (add_bincl_to_list): Remove.
9216
9217 2018-05-25  Tom Tromey  <tom@tromey.com>
9218
9219         * tui/tui.c (tui_enable): Update.
9220         * mi/mi-interp.c (mi_interp::init): Update.
9221         * interps.h (class interp) <name>: New method.
9222         <m_name>: Rename from name.
9223         (~scoped_restore_interp): Update.
9224         * interps.c (interp::interp): Update.
9225         (interp_add, interp_set, interp_lookup_existing)
9226         (current_interp_named_p): Update.
9227
9228 2018-05-25  Tom Tromey  <tom@tromey.com>
9229
9230         * interps.c (interp_name): Remove.
9231         * mi/mi-interp.c (mi_interp::init): Update.
9232         * interps.h (interp_name): Remove.
9233         (~scoped_restore_interp): Update.
9234         * tui/tui.c (tui_enable): Update.
9235
9236 2018-05-25  Tom Tromey  <tom@tromey.com>
9237
9238         * utils.c (fputs_maybe_filtered): Update.
9239         * linespec.c (decode_line_full): Update.
9240         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9241         (mi_print_breakpoint_for_event, mi_solib_loaded)
9242         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9243         (mi_user_selected_context_changed): Update.
9244         * mi/mi-main.c (mi_execute_command): Update.
9245         * cli/cli-script.c (execute_control_command): Update.
9246         * python/python.c (execute_gdb_command): Update.
9247         * solib.c (info_sharedlibrary_command): Update.
9248         * interps.c (interp_ui_out): Remove.
9249         * interps.h (interp_ui_out): Remove.
9250
9251 2018-05-25  Tom Tromey  <tom@tromey.com>
9252
9253         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9254         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9255         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9256
9257 2018-05-25  Tom Tromey  <tom@tromey.com>
9258
9259         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9260         * interps.c (interp_exec): Use scoped_restore.
9261
9262 2018-05-25  Tom Tromey  <tom@tromey.com>
9263
9264         * remote.c (remote_target::remote_file_get): Use
9265         gdb::byte_vector.
9266         (remote_target::remote_file_put): Likewise.
9267
9268 2018-05-25  Tom Tromey  <tom@tromey.com>
9269
9270         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9271         a std::string.
9272         (get_pe_section_index, add_pe_exported_sym): Update.
9273         (read_pe_exported_syms): Use gdb::def_vector.
9274
9275 2018-05-25  Tom Tromey  <tom@tromey.com>
9276
9277         * frame.c (remove_prev_frame): Remove.
9278         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9279
9280 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9281
9282         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9283         Remove prototypes.
9284         * mips-linux-nat.c (supply_fpregset): Always call
9285         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9286         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9287         `mips_fill_fpregset'.
9288         * mips-linux-tdep.c (mips_supply_fpregset)
9289         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9290         (mips_fill_fpregset_wrapper): Remove functions.
9291         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9292         (mips_linux_fpregset): Remove variable.
9293         (mips_linux_iterate_over_regset_sections): Use
9294         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9295         (mips_linux_o32_sigframe_init): Remove comment.
9296
9297 2018-05-25  Pedro Alves  <palves@redhat.com>
9298
9299         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9300         (struct readahead_cache, struct packet_reg, struct
9301         remote_arch_state, class remote_state): Move higher up in the
9302         file.
9303         (remote_target::m_remote_state): Now an object instead of a pointer.
9304         (remote_target::get_remote_state): Adjust.
9305
9306 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9307
9308         * stack.c (select_and_print_frame): Delete.
9309         (struct function_bounds): Move struct within function.
9310         (func_command): Most content moved into new function
9311         find_frame_for_function, use new function, print result, add
9312         function comment.
9313         (find_frame_for_function): New function, now returns a result.
9314
9315 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9316
9317         * stack.c (iterate_over_block_arg_vars): Fix comment.
9318         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9319
9320 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9321
9322         PR gdb/23203
9323         * frame.c
9324         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9325         Define.
9326         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9327         Define.
9328         * frame.h (class scoped_restore_selected_frame): New class.
9329         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9330         of any exception, use scoped_restore_selected_frame to restore the
9331         frame instead.
9332
9333 2018-05-24  Pedro Alves  <palves@redhat.com>
9334
9335         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9336         override.
9337
9338 2018-05-23  Tom Tromey  <tom@tromey.com>
9339
9340         * complaints.c (struct complaints): Remove.
9341         (symfile_complaint_book): Remove.
9342         (series): New global.
9343         (complaint_internal): Update.
9344         (clear_complaints): Update.
9345
9346 2018-05-23  Tom Tromey  <tom@tromey.com>
9347
9348         * complaints.c (counters): New global.
9349         (struct complain): Remove.
9350         (struct complaints) <root>: Remove.
9351         (complaint_sentinel): Remove.
9352         (symfile_complaint_book): Update.
9353         (find_complaint) Remove.
9354         (complaint_internal, clear_complaints): Update.
9355
9356 2018-05-23  Tom Tromey  <tom@tromey.com>
9357
9358         * complaints.c (struct complain) <file, line>: Remove.
9359         (find_complaint): Remove file, line parameters.
9360         (complaint_internal): Update.
9361
9362 2018-05-23  Tom Tromey  <tom@tromey.com>
9363
9364         * complaints.c (vcomplaint): Remove.
9365         (complaint_internal) Merge in contents of vcomplaint.
9366
9367 2018-05-23  Tom Tromey  <tom@tromey.com>
9368
9369         * complaints.c (struct complaints) <explanation>: Remove.
9370         (symfile_explanations): Remove.
9371         (symfile_complaint_book): Update.
9372         (vcomplaint): Update.
9373         (struct explanation): Remove.
9374
9375 2018-05-23  Tom Tromey  <tom@tromey.com>
9376
9377         * complaints.c (symfile_complaints): Remove.
9378         (complaint_internal): Remove "complaints" parameter.
9379         (clear_complaints, vcomplaint): Remove "c" parameter.
9380         (get_complaints): Remove.
9381         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9382         (dwarf2_debug_line_missing_file_complaint)
9383         (dwarf2_debug_line_missing_end_sequence_complaint)
9384         (dwarf2_complex_location_expr_complaint)
9385         (dwarf2_const_value_length_mismatch_complaint)
9386         (dwarf2_section_buffer_overflow_complaint)
9387         (dwarf2_macro_malformed_definition_complaint)
9388         (dwarf2_invalid_attrib_class_complaint)
9389         (create_addrmap_from_index, dw2_symtab_iter_next)
9390         (dw2_expand_marked_cus)
9391         (dw2_debug_names_iterator::find_vec_in_debug_names)
9392         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9393         (create_debug_type_hash_table, init_cutu_and_read_dies)
9394         (partial_die_parent_scope, add_partial_enumeration)
9395         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9396         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9397         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9398         (create_cus_hash_table, create_dwp_hash_table)
9399         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9400         (dwarf2_rnglists_process, dwarf2_ranges_process)
9401         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9402         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9403         (handle_struct_member_die, process_structure_scope)
9404         (read_array_type, read_common_block, read_module_type)
9405         (read_tag_pointer_type, read_typedef, read_base_type)
9406         (read_subrange_type, load_partial_dies, partial_die_info::read)
9407         (partial_die_info::read, partial_die_info::read)
9408         (partial_die_info::read, read_checked_initial_length_and_offset)
9409         (dwarf2_string_attr, read_formatted_entries)
9410         (dwarf_decode_line_header)
9411         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9412         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9413         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9414         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9415         (get_signatured_type, get_DW_AT_signature_type)
9416         (decode_locdesc, file_file_name, consume_improper_spaces)
9417         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9418         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9419         (dwarf2_symbol_mark_computed, set_die_type)
9420         (read_attribute_value): Update.
9421         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9422         Update.
9423         * dbxread.c (unknown_symtype_complaint)
9424         (lbrac_mismatch_complaint, repeated_header_complaint)
9425         (set_namestring, function_outside_compilation_unit_complaint)
9426         (read_dbx_symtab, process_one_symbol): Update.
9427         * gdbtypes.c (stub_noname_complaint): Update.
9428         * windows-nat.c (handle_unload_dll): Update.
9429         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9430         (decode_base_type): Update.
9431         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9432         (eb_complaint, record_include_begin, record_include_end)
9433         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9434         (process_xcoff_symbol, read_symbol)
9435         (function_outside_compilation_unit_complaint)
9436         (scan_xcoff_symtab): Update.
9437         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9438         * buildsym.c (finish_block_internal, make_blockvector)
9439         (end_symtab_get_static_block, augment_type_symtab): Update.
9440         * dtrace-probe.c (dtrace_process_dof)
9441         (dtrace_static_probe_ops::get_probes): Update.
9442         * complaints.h (struct complaint): Don't declare.
9443         (symfile_complaints): Remove.
9444         (complaint_internal): Remove "complaints" parameter.
9445         (complaint): Likewise.
9446         (clear_complaints): Likewise.
9447         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9448         (reread_symbols): Update.
9449         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9450         (dwarf2_frame_cache, decode_frame_entry): Update.
9451         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9452         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9453         (info_selectors_command): Update.
9454         * macrotab.c (macro_include, check_for_redefinition)
9455         (macro_undef): Update.
9456         * objfiles.c (filter_overlapping_sections): Update.
9457         * stabsread.c (invalid_cpp_abbrev_complaint)
9458         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9459         (define_symbol, error_type, read_type, rs6000_builtin_type)
9460         (stabs_method_name_from_physname, read_member_functions)
9461         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9462         (attach_fields_to_type, complain_about_struct_wipeout)
9463         (read_range_type, read_args, common_block_start)
9464         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9465         Update.
9466         * mdebugread.c (index_complaint, unknown_ext_complaint)
9467         (basic_type_complaint, bad_tag_guess_complaint)
9468         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9469         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9470         (parse_procedure, parse_lines)
9471         (function_outside_compilation_unit_complaint)
9472         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9473         (bad_tag_guess_complaint, reg_value_complaint): Update.
9474         * cp-support.c (demangled_name_complaint): Update.
9475         * macroscope.c (sal_macro_scope): Update.
9476         * dwarf-index-write.c (class debug_names): Update.
9477
9478 2018-05-23  Tom Tromey  <tom@tromey.com>
9479
9480         * complaints.c (clear_complaints): Remove "noisy" parameter.
9481         * complaints.h (clear_complaints): Update.
9482         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9483         (reread_symbols): Update.
9484
9485 2018-05-23  Tom Tromey  <tom@tromey.com>
9486
9487         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9488         SUBSEQUENT_MESSAGE.
9489         (vcomplaint, clear_complaints): Update.
9490         (symfile_explanations): Remove some messages.
9491
9492 2018-05-23  Tom Tromey  <tom@tromey.com>
9493
9494         * complaints.c (internal_complaint): Remove.
9495         * complaints.h (internal_complaint): Remove.
9496
9497 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9498
9499         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9500
9501 2018-05-22  Pedro Alves  <palves@redhat.com>
9502
9503         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9504         (remote_fileio_badfd, remote_fileio_return_errno)
9505         (remote_fileio_return_success, remote_fileio_func_open)
9506         (remote_fileio_func_open, remote_fileio_func_close)
9507         (remote_fileio_func_read, remote_fileio_func_write)
9508         (remote_fileio_func_lseek, remote_fileio_func_rename)
9509         (remote_fileio_func_unlink, remote_fileio_func_stat)
9510         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9511         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9512         remote_target parameter.
9513         (remote_fio_func_map) <func>: Add remote_target parameter.
9514         (do_remote_fileio_request, remote_fileio_request):
9515         * remote-fileio.h (remote_fileio_request):
9516         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9517         remote_target parameter.
9518         (remote_notif_process, handle_notification): Adjust to pass down
9519         the remote.
9520         (remote_notif_state_allocate): Add remote_target parameter.  Save
9521         it.
9522         * remote-notif.h (struct remote_target): Forward declare.
9523         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9524         remote_target parameter.
9525         (struct remote_notif_state) <remote>: New field.
9526         (remote_notif_ack, remote_notif_parse): Add remote_target
9527         parameter.
9528         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9529         remote_target parameter.
9530         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9531         (threads_listing_context, rmt_thread_action, protocol_feature)
9532         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9533         (packet_result, struct threads_listing_context, remote_state):
9534         Move definitions and declarations higher up.
9535         (remote_target) <~remote_target>: Declare.
9536         (remote_download_command_source, remote_file_put, remote_file_get)
9537         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9538         (remote_hostio_pread_vFile, remote_hostio_send_command)
9539         (remote_hostio_set_filesystem, remote_hostio_open)
9540         (remote_hostio_close, remote_hostio_unlink, remote_state)
9541         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9542         (get_memory_write_packet_size, get_memory_read_packet_size)
9543         (append_pending_thread_resumptions, remote_detach_1)
9544         (append_resumption, remote_resume_with_vcont)
9545         (add_current_inferior_and_thread, wait_ns, wait_as)
9546         (process_stop_reply, remote_notice_new_inferior)
9547         (process_initial_stop_replies, remote_add_thread)
9548         (btrace_sync_conf, remote_btrace_maybe_reopen)
9549         (remove_new_fork_children, kill_new_fork_children)
9550         (discard_pending_stop_replies, stop_reply_queue_length)
9551         (check_pending_events_prevent_wildcard_vcont)
9552         (discard_pending_stop_replies_in_queue, stop_reply)
9553         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9554         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9555         (remote_interrupt_as, remote_interrupt_ns)
9556         (remote_get_noisy_reply, remote_query_attached)
9557         (remote_add_inferior, remote_current_thread, get_current_thread)
9558         (set_thread, set_general_thread, set_continue_thread)
9559         (set_general_process, write_ptid)
9560         (remote_unpack_thread_info_response, remote_get_threadinfo)
9561         (parse_threadlist_response, remote_get_threadlist)
9562         (remote_threadlist_iterator, remote_get_threads_with_ql)
9563         (remote_get_threads_with_qxfer)
9564         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9565         (get_offsets, remote_check_symbols, remote_supported_packet)
9566         (remote_query_supported, remote_packet_size)
9567         (remote_serial_quit_handler, remote_detach_pid)
9568         (remote_vcont_probe, remote_resume_with_hc)
9569         (send_interrupt_sequence, interrupt_query)
9570         (remote_notif_get_pending_events, fetch_register_using_p)
9571         (send_g_packet, process_g_packet, fetch_registers_using_g)
9572         (store_register_using_P, store_registers_using_G)
9573         (set_remote_traceframe, check_binary_download)
9574         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9575         (remote_xfer_live_readonly_partial, remote_read_bytes)
9576         (remote_send_printf, remote_flash_write, readchar)
9577         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9578         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9579         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9580         (extended_remote_disable_randomization, extended_remote_run)
9581         (send_environment_packet, extended_remote_environment_support)
9582         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9583         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9584         (packet_command): Now methods of ...
9585         (remote_target): ... this class.
9586         (m_remote_state) <remote_target>: New field.
9587         (struct remote_state) <stop_reply_queue,
9588         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9589         fields.
9590         (remote_state::remote_state): Allocate stop_reply_queue.
9591         (remote_state): Delete global.
9592         (get_remote_state_raw): Delete.
9593         (remote_target::get_remote_state): Allocate m_remote_state on
9594         demand.
9595         (get_current_remote_target): New.
9596         (remote_ops, extended_remote_ops): Delete.
9597         (wait_forever_enabled_p, remote_async_inferior_event_token):
9598         Delete, moved to struct remote_state.
9599         (remote_target::close): Delete self.  Destruction bits split to
9600         ...
9601         (remote_target::~remote_target): ... this.
9602         (show_memory_packet_size): Adjust to use
9603         get_current_remote_target.
9604         (struct protocol_feature) <func>: Add remote_target parameter.
9605         All callers adjusted.
9606         (curr_quit_handler_target): New.
9607         (remote_serial_quit_handler): Reimplement.
9608         (remote_target::open_1): Adjust to use get_current_remote_target.
9609         Heap-allocate remote_target/extended_remote_target instances.
9610         (vcont_builder::vcont_builder): Add remote_target parameter, and
9611         save it in m_remote.  All callers adjusted.
9612         (vcont_builder::m_remote): New field.
9613         (vcont_builder::restart, vcont_builder::flush)
9614         (vcont_builder::push_action): Use it.
9615         (remote_target::commit_resume): Use it.
9616         (struct queue_iter_param) <remote>: New field.
9617         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9618         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9619         (check_pending_event_prevents_wildcard_vcont_callback)
9620         (remote_target::check_pending_events_prevent_wildcard_vcont)
9621         (remote_target::discard_pending_stop_replies)
9622         (remote_target::discard_pending_stop_replies_in_queue)
9623         (remote_target::remote_notif_remove_queued_reply): Fill in
9624         'remote' field.
9625         (remote_notif_get_pending_events): New.
9626         (remote_target::readchar, remote_target::remote_serial_write):
9627         Save/restore curr_quit_handler_target.
9628         (putpkt): New.
9629         (kill_new_fork_children): Fill in 'remote' field.
9630         (packet_command): Use get_current_remote_target, defer to
9631         remote_target method of same name.
9632         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9633         parameter, and save it in m_remote.  All callers adjusted.
9634         (scoped_remote_fd::release): Use m_remote.
9635         (scoped_remote_fd::m_remote): New field.
9636         (remote_file_put, remote_file_get, remote_file_delete): Use
9637         get_current_remote_target, defer to remote_target method of same
9638         name.
9639         (remote_btrace_reset): Add remote_state paremeter.  Update all
9640         callers.
9641         (remote_async_inferior_event_handler). Pass down 'data'.
9642         (remote_new_objfile): Use get_current_remote_target.
9643         (remote_target::vcont_r_supported): New.
9644         (set_range_stepping): Use get_current_remote_target and
9645         remote_target::vcont_r_supported.
9646         (_initialize_remote): Don't allocate 'remote_state' and
9647         'stop_reply_queue' globals.
9648         * remote.h (struct remote_target): Forward declare.
9649         (getpkt, putpkt, remote_notif_get_pending_events): Add
9650         'remote_target' parameter.
9651
9652 2018-05-22  Pedro Alves  <palves@redhat.com>
9653
9654         * remote.c (vcont_builder): Now a class.  Make all data members
9655         private.
9656         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9657         Declare methods.
9658         (vcont_builder_restart): Rename to ...
9659         (vcont_builder::restart): ... this.
9660         (vcont_builder_flush): Rename to ...
9661         (vcont_builder::flush): ... this.
9662         (vcont_builder_push_action): Rename to ...
9663         (vcont_builder::push_action): ... this.
9664         (remote_target::commit_resume): Adjust.
9665
9666 2018-05-22  Pedro Alves  <palves@redhat.com>
9667
9668         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9669         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9670         (get_fixed_memory_packet_size): New.
9671         (get_memory_packet_size): Use it.
9672         (set_memory_packet_size): Don't override the config size with
9673         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9674         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9675         Don't refer to get_memory_packet_size if not connected to a remote
9676         target.  Show "(default)" if configured size is 0.
9677
9678 2018-05-22  Pedro Alves  <palves@redhat.com>
9679
9680         * remote.c (remote_target::mourn_inferior): Move
9681         discard_pending_stop_replies call here from ...
9682         (_initialize_remote): ... here.
9683
9684 2018-05-22  Pedro Alves  <palves@redhat.com>
9685
9686         * remote.c (compare_section_command): Remove set_general_process
9687         call.
9688
9689 2018-05-22  Pedro Alves  <palves@redhat.com>
9690
9691         * remote.c (struct packet_reg, struct remote_arch_state):
9692         Move higher up in the file.
9693         (remote_state) <m_arch_states>: Store remote_arch_state values
9694         instead of remote_arch_state pointers.
9695         (remote_state::get_remote_arch_state): Adjust.
9696
9697 2018-05-22  Pedro Alves  <palves@redhat.com>
9698
9699         * remote.c: Include <unordered_map>.
9700         (remote_state): Now a class.
9701         (remote_state) <get_remote_arch_state>: Declare method.
9702         <get_remote_arch_state>: New field.
9703         (remote_arch_state) <remote_arch_state>: Declare ctor.
9704         <regs>: Now a unique_ptr.
9705         (remote_gdbarch_data_handle): Delete.
9706         (get_remote_arch_state): Delete.
9707         (remote_state::get_remote_arch_state): New.
9708         (get_remote_state): Adjust to call remote_state's
9709         get_remote_arch_state method.
9710         (init_remote_state): Delete, bits factored out to ...
9711         (remote_arch_state::remote_arch_state): ... this new method.
9712         (get_remote_packet_size, get_memory_packet_size)
9713         (process_g_packet, remote_target::fetch_registers)
9714         (remote_target::prepare_to_store, store_registers_using_G)
9715         (remote_target::store_registers, remote_target::get_trace_status):
9716         Adjust to call remote_state's method.
9717         (_initialize_remote): Remove reference to
9718         remote_gdbarch_data_handle.
9719
9720 2018-05-22  Pedro Alves  <palves@redhat.com>
9721
9722         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9723         pread>: New method declarations.
9724         (remote_target::open_1): Adjust.
9725         (readahead_cache_invalidate): Rename to ...
9726         (readahead_cache::invalidate): ... this, and adjust to be a class
9727         method.
9728         (readahead_cache_invalidate_fd): Rename to ...
9729         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9730         class method.
9731         (remote_hostio_pwrite): Adjust.
9732         (remote_hostio_pread_from_cache): Rename to ...
9733         (readahead_cache::pread): ... this, and adjust to be a class
9734         method.
9735         (remote_hostio_close): Adjust.
9736
9737 2018-05-22  Pedro Alves  <palves@redhat.com>
9738
9739         * remote.c (remote_hostio_close_cleanup): Delete.
9740         (class scoped_remote_fd): New.
9741         (remote_file_put, remote_file_get): Use it.
9742
9743 2018-05-22  Pedro Alves  <palves@redhat.com>
9744
9745         (struct vCont_action_support): Use bool and initialize all fields.
9746         (struct readahead_cache): Initialize all fields.
9747         (remote_state): Use bool and initialize all fields.
9748         (remote_state::remote_state, remote_state::~remote_state): New.
9749         (new_remote_state): Delete.
9750         (_initialize_remote): Use new to allocate remote_state.
9751
9752 2018-05-22  Pedro Alves  <palves@redhat.com>
9753             張俊芝  <zjz@zjz.name>
9754
9755         PR gdb/22973
9756         * c-exp.y: Include "c-support.h".
9757         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9758         of tolower.  Use c_ident_is_alpha to scan names.
9759         * c-lang.c: Include "c-support.h".
9760         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9761         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9762         * c-support.h: New file, with bits factored out from ...
9763         * cp-name-parser.y: ... this file.
9764         Include "c-support.h".
9765         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9766         c-support.h and renamed.
9767         (symbol_end, yylex): Adjust.
9768
9769 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9770
9771         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9772         parameter type to CORE_ADDR.
9773         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9774         parameter type in declaration to CORE_ADDR.
9775         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9776         target_auxv_search to get AT_HWCAP and use the result to get the
9777         target description.
9778         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9779         to CORE_ADDR. Remove the cast of the return value to unsigned
9780         long. Fix error predicate of target_auxv_search.
9781         (ppc_linux_nat_target::read_description): Change the type of the
9782         hwcap variable to CORE_ADDR.
9783
9784 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9785
9786         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9787         if the size of fpscr is larger than 32 bits.
9788
9789 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9790
9791         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9792         (ppc32_linux_vsxregmap): New global.
9793         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9794         regcache_supply_regset, and regcache_collect_regset.
9795         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9796         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9797         (fetch_vsx_register, store_vsx_register): Remove.
9798         (fetch_vsx_registers): Add regno parameter. Get regset using
9799         ppc_linux_vsxregset. Use regset to supply registers.
9800         (store_vsx_registers): Add regno parameter. Get regset using
9801         ppc_linux_vsxregset. Use regset to collect registers.
9802         (fetch_register): Call fetch_vsx_registers instead of
9803         fetch_vsx_register.
9804         (store_register): Call store_vsx_registers instead of
9805         store_vsx_register.
9806         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9807         new regno parameter.
9808         (store_ppc_registers): Call store_vsx_registers with -1 for the
9809         new regno parameter.
9810         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9811         (ppc_collect_vsxregset): Remove.
9812
9813 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9814
9815         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9816         offset fields.
9817         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9818         for vector register offset fields.
9819         (ppc64_fbsd_reg_offsets): Likewise.
9820         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9821         to vector register offset fields.
9822         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9823         to vector register offset fields.
9824         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9825         vector register offset fields.
9826         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9827         initializers for vector register offset fields.
9828         (rs6000_aix64_reg_offsets): Likewise.
9829         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9830         (ppc_supply_vrregset): Remove.
9831         (ppc_collect_vrregset): Remove.
9832         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9833         (ppc_linux_vrregset) : New function.
9834         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9835         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9836         (ppc32_linux_vrregset): Remove.
9837         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9838         and use result instead of ppc32_linux_vrregset.
9839         (ppc32_linux_reg_offsets): Remove initializers for vector register
9840         offset fields.
9841         (ppc64_linux_reg_offsets): Likewise.
9842         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9843         * ppc-linux-nat.c: Include regset.h.
9844         (gdb_vrregset_t): Adjust comment to account for little-endian
9845         mode.
9846         (supply_vrregset, fill_vrregset): Remove.
9847         (fetch_altivec_register, store_altivec_register): Remove.
9848         (fetch_altivec_registers): Add regno parameter. Get regset using
9849         ppc_linux_vrregset. Use regset to supply registers.
9850         (store_altivec_registers): Add regno parameter. Get regset using
9851         ppc_linux_vrregset. Use regset to collect registers.
9852         (fetch_register): Call fetch_altivec_registers instead of
9853         fetch_altivec_register.
9854         (store_register): Call store_altivec_registers instead of
9855         store_altivec_register.
9856         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9857         the new regno parameter.
9858         (store_ppc_registers): Call store_altivec_registers with -1 for
9859         the new regno parameter.
9860
9861 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9862
9863         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9864         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9865         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9866         (gdb_vrregset_t): Change array type size to
9867         PPC_LINUX_SIZEOF_VRREGSET.
9868         (gdb_vsxregset_t): Change array type size to
9869         PPC_LINUX_SIZEOF_VSXREGSET.
9870         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9871         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9872         PPC_LINUX_SIZEOF_VSXREGSET.
9873
9874 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9875
9876         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9877         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9878         nat/ppc-linux.c.
9879         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9880         ppc_linux_target_wordsize with tid.
9881         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9882         wordsize with tid.
9883         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9884         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9885         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9886         tid parameter. Remove static specifier.
9887         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9888         (ppc_linux_target_wordsize): New declaration.
9889
9890 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9891
9892         * arch/ppc-linux-common.c: New file.
9893         * arch/ppc-linux-common.h: New file.
9894         * arch/ppc-linux-tdesc.h: New file.
9895         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9896         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9897         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9898         arch/ppc-linux-tdesc.h.
9899         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9900         arch/ppc-linux-tdesc.h.
9901         (ppc_linux_nat_target::read_description): Remove target
9902         description matching code. Fill a ppc_linux_features struct and
9903         call ppc_linux_match_description with it. Move comment about ISA
9904         2.05 to ppc-linux-common.c.
9905         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9906         arch/ppc-linux-tdesc.h.
9907         (ppc_linux_core_read_description): Remove target description
9908         matching code. Fill a ppc_linux_features struct and call
9909         ppc_linux_match_description with it.
9910         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9911         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9912         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9913         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9914         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9915         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9916         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9917         (tdesc_powerpc_e500l): Remove.
9918
9919 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9920
9921         * ada-lang.c (catch_assert_command): Pass empty string instead
9922         of NULL for excep_string argument.
9923
9924 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9925
9926         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9927         the width of the requested register exceeds the width of the
9928         `ptrace' data type.
9929
9930 2018-05-21  Tom Tromey  <tom@tromey.com>
9931
9932         * printcmd.c (output_command): Remove.
9933         (output_command_const): Rename to output_command.
9934         * valprint.h (output_command): Rename from output_command_const.
9935         * tracepoint.c (trace_dump_actions): Call output_command.
9936
9937 2018-05-21  Tom Tromey  <tom@tromey.com>
9938
9939         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9940         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9941         * ada-lang.h (create_ada_exception_catchpoint): Update.
9942         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9943         std::string.
9944         (create_excep_cond_exprs, ~ada_catchpoint)
9945         (should_stop_exception, print_one_exception)
9946         (print_mention_exception, print_recreate_exception): Update.
9947         (ada_get_next_arg): Remove.
9948         (catch_ada_exception_command_split): Use std::string.  Change type
9949         of "excep_string", "cond_string".
9950         (catch_ada_exception_command): Update.
9951         (create_ada_exception_catchpoint): Change type of excep_string.
9952         (ada_exception_sal): Remove excep_string parameter.
9953         (~ada_catchpoint): Remove.
9954
9955 2018-05-21  Tom Tromey  <tom@tromey.com>
9956
9957         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9958         cleanup.
9959
9960 2018-05-21  Tom Tromey  <tom@tromey.com>
9961
9962         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9963         Return unique_xmalloc_ptr.
9964         (print_it_exception): Update.
9965
9966 2018-05-21  Tom Tromey  <tom@tromey.com>
9967
9968         * tracepoint.c (trace_dump_actions): Use std::string.
9969
9970 2018-05-21  Tom Tromey  <tom@tromey.com>
9971
9972         * symfile.c (reread_symbols): Use std::string for original_name.
9973
9974 2018-05-21  Tom Tromey  <tom@tromey.com>
9975
9976         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9977         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9978         constructor.
9979
9980 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9981
9982         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9983         instance to...
9984         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9985         * objfiles.c (get_objfile_bfd_data): Allocate
9986         objfile_per_bfd_storage with obstack_new when allocating on
9987         obstack.
9988
9989 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9990
9991         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9992         OBSTACK_ZALLOC.
9993         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9994         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9995         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9996         (add_pending): Likewise.
9997         (parse_symbol): Likewise.
9998         (parse_partial_symbols): Likewise.
9999         (psymtab_to_symtab_1): Likewise.
10000         (new_psymtab): Likewise.
10001         (elfmdebug_build_psymtabs): Likewise.
10002         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10003         * objfiles.c (get_objfile_bfd_data): Likewise.
10004         (objfile_register_static_link): Likewise.
10005         * psymtab.c (allocate_psymtab): Likewise.
10006         * stabsread.c (read_member_functions): Likewise.
10007         * xcoffread.c (xcoff_end_psymtab): Likewise.
10008
10009 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10010
10011         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10012         compiler supports std::is_trivially_constructible.
10013         * common/poison.h: Include obstack.h.
10014         (IsMallocable): Define to is_trivially_constructible if the
10015         compiler supports it, define to true_type otherwise.
10016         (xobnew): New.
10017         (XOBNEW): Redefine.
10018         (xobnewvec): New.
10019         (XOBNEWVEC): Redefine.
10020         * gdb_obstack.h (obstack_zalloc): New.
10021         (OBSTACK_ZALLOC): Redefine.
10022         (obstack_calloc): New.
10023         (OBSTACK_CALLOC): Redefine.
10024         (obstack_new): New.
10025         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10026         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10027         gdbarch.c.
10028         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10029         obstack_calloc/obstack_zalloc.
10030         (gdbarch_obstack_zalloc): Remove.
10031         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10032
10033 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10034
10035         * stack.c (backtrace_command_1): Remove useless variable int i.
10036
10037 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10038
10039         * stack.c (print_frame_info): Fix comment.
10040
10041 2018-05-18  Tom Tromey  <tom@tromey.com>
10042
10043         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10044         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10045         (~dwarf2_per_objfile): Update
10046         (dwarf2_get_dwz_file): Use new.
10047         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10048         unique_ptr.
10049
10050 2018-05-18  Tom Tromey  <tom@tromey.com>
10051
10052         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10053         unique_ptr.
10054         * dwarf2read.c (struct dwp_file): Add constructor and
10055         initializers.
10056         (open_and_init_dwp_file): Return a unique_ptr.
10057         (dwarf2_per_objfile, create_dwp_hash_table)
10058         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10059         (lookup_dwo_unit_in_dwp): Update.
10060         (open_and_init_dwp_file, get_dwp_file): Update.
10061
10062 2018-05-18  Tom Tromey  <tom@tromey.com>
10063
10064         * dwarf2read.c (dwarf2_per_objfile): Update.
10065         (struct mapped_index): Add initializers.
10066         (dwarf2_read_index): Use new.
10067         (dw2_symtab_iter_init): Update.
10068         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10069         unique_ptr.
10070
10071 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10072
10073         * dwarf2read.c (mapped_index) <total_size>: Remove.
10074
10075 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10076
10077         * unittests/format_pieces-selftests.c (test_format_specifier):
10078         Add ARI comments.
10079
10080 2018-05-18  Tom Tromey  <tom@tromey.com>
10081
10082         * c-typeprint.c (maybe_print_hole): New function.
10083         (c_print_type_struct_field_offset): Update.
10084         (c_type_print_base_struct_union): Call maybe_print_hole.
10085
10086 2018-05-17  Keith Seitz  <keiths@redhat.com>
10087
10088         * breakpoint.c (build_bpstat_chain): New function, moved from
10089         bpstat_stop_status.
10090         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10091         If no stop chain is passed, call build_bpstat_chain to build it.
10092         * breakpoint.h (build_bpstat_chain): Declare.
10093         (bpstat_stop_status): Move documentation here from breakpoint.c.
10094         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10095         build the stop chain and pass it to skip_inline_frames.
10096         Pass this stop chain to bpstat_stop_status.
10097         * inline-frame.c: Include breakpoint.h.
10098         (stopped_by_user_bp_inline_frame): New function.
10099         (skip_inline_frames): Add parameter `stop_chain'.
10100         Move documention to inline-frame.h.
10101         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10102         whether the frame should be elided.
10103         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10104         Add moved documentation and update for new parameter.
10105
10106 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10107
10108         PR cli/14975
10109         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10110         unittests/format_pieces-selftests.c.
10111         * common/format.h (format_piece) <operator==>: New.
10112         (format_pieces) <operator[]>: Remove.
10113         * common/format.c (format_pieces::format_pieces): Handle \e.
10114         * unittests/format_pieces-selftests.c: New.
10115
10116 2018-05-17  Tom Tromey  <tom@tromey.com>
10117
10118         PR symtab/23010:
10119         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10120         (dw2_instantiate_symtab): Add skip_partial parameter.
10121         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10122         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10123         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10124         (dw2_expand_symtabs_matching_one)
10125         (dw2_find_pc_sect_compunit_symtab)
10126         (dw2_debug_names_lookup_symbol)
10127         (dw2_debug_names_expand_symtabs_for_function): Update.
10128         (init_cutu_and_read_dies): Add skip_partial parameter.
10129         (process_psymtab_comp_unit, build_type_psymtabs_1)
10130         (process_skeletonless_type_unit, load_partial_comp_unit)
10131         (psymtab_to_symtab_1): Update.
10132         (load_full_comp_unit): Add skip_partial parameter.
10133         (process_imported_unit_die, dwarf2_read_addr_index)
10134         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10135         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10136         (read_signatured_type): Update.
10137
10138 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10139
10140         * value.c (release_value): Remove unused variable.
10141         (record_latest_value): Likewise.
10142         (access_value_history): Likewise.
10143         (preserve_values): Likewise.
10144
10145 2018-05-17  Tom Tromey  <tom@tromey.com>
10146
10147         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10148         Initialize.
10149
10150 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10151
10152         PR gdb/22286
10153         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10154         Also handle registers whose width is not a multiple of
10155         PTRACE_TYPE_RET.
10156         (linux_nat_trad_target::store_register): Likewise.
10157
10158 2018-05-16  Tom Tromey  <tom@tromey.com>
10159
10160         * gdbcore.h (core_bfd): Redefine.
10161         * corelow.c (core_target::close): Update.
10162         (core_target_open): Update.
10163         * progspace.h (struct program_space) <cbfd>: Now a
10164         gdb_bfd_ref_ptr.
10165
10166 2018-05-16  Tom Tromey  <tom@tromey.com>
10167
10168         PR cli/19551:
10169         * symfile-add-flags.h (enum symfile_add_flags)
10170         <SYMFILE_NOT_FILENAME>: New constant.
10171         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10172         objfile name from BFD.
10173         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10174         * minidebug.c (find_separate_debug_file_in_section): Put
10175         ".gnu_debugdata" into BFD's file name.
10176
10177 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10178
10179         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10180         Remove.
10181
10182 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10183
10184         PR binutils/21446
10185         * aarch64-tdep.c (aarch64_analyze_prologue,
10186         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10187         Indicate not interested in errors.
10188
10189 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10190
10191         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10192         Supply the MIPS_ZERO_REGNUM register.
10193
10194 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10195
10196         * mips-tdep.c (mask_address_var): Make variable static.
10197
10198 2018-05-14  Tom Tromey  <tom@tromey.com>
10199
10200         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10201
10202 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10203
10204         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10205         FXSAVE_ADDR for the mxcsr register.
10206
10207 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10208
10209         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10210
10211 2018-05-11  Pedro Alves  <palves@redhat.com>
10212
10213         * corelow.c (core_target) <core_target>: No longer inline.
10214         Initialize m_core_gdbarch, m_core_vec and build the section table
10215         here.
10216         <~core_target>: New.
10217         <core_gdbarch, get_core_register_section>: New methods.
10218         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10219         factored out from ...
10220         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10221         (core_ops): Delete.
10222         (sniff_core_bfd): Add gdbarch parameter.
10223         (core_close): Delete, merged into ...
10224         (core_target::close): ... here.  Delete self.
10225         (core_close_cleanup): Delete.
10226         (core_target_open): Allocate a core_target on the heap.  Use a
10227         unique_ptr instead of a cleanup.  Bits moved into the core_target
10228         ctor.  Adjust to use core_target methods instead of globals.
10229         (get_core_register_section): Rename to ...
10230         (core_target::get_core_register_section): ... this and adjust.
10231         (struct get_core_registers_cb_data): New.
10232         (get_core_registers_cb): Use it.  Use bool.
10233         (core_target::fetch_registers, core_target::files_info)
10234         (core_target::xfer_partial, core_target::read_description)
10235         (core_target::pid_to, core_target::thread_name): Adjust to
10236         reference class fields instead of globals.
10237         * target.h (struct target_ops_deleter, target_ops_up): New.
10238
10239 2018-05-11  Pedro Alves  <palves@redhat.com>
10240
10241         * corefile.c (core_file_command): Move to corelow.c.
10242         * corelow.c (the_core_target): Delete.
10243         (core_file_command): Moved from corefile.c.  Check exec_bfd
10244         instead of the_core_target.  Use target_detach instead of calling
10245         into the_core_target directly.
10246         (maybe_say_no_core_file_now): New.
10247         (core_target::detach): Use it.
10248         (_initialize_corelow): Remove references to the_core_target.
10249         * gdbcore.h (the_core_target): Delete.
10250
10251 2018-05-11  Tom Tromey  <tromey@redhat.com>
10252             Pedro Alves  <palves@redhat.com>
10253
10254         * corefile.c (core_bfd): Remove.
10255         * gdbcore.h (core_bfd): Now a macro.
10256         * progspace.h (struct program_space) <cbfd>: New field.
10257
10258 2018-05-11  Tom Tromey  <tom@tromey.com>
10259
10260         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10261         gdb::def_vector.
10262
10263 2018-05-10  Tom Tromey  <tom@tromey.com>
10264
10265         * configure: Rebuild.
10266         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10267
10268 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10269
10270         PR server/23158:
10271         * regformats/regdat.sh: Adjust script, following the addition
10272         of the new expedite_regs parameter to init_target_desc.
10273
10274 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10275     
10276         PR gdb/23127
10277         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10278         set_gdbarch_significant_addr_bit.
10279         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10280         set_gdbarch_significant_addr_bit.
10281         * utils.c (address_significant): Update to sign extend addr.
10282
10283 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10284
10285         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10286         (xtensa_linux_init_abi): Limit tdep->num_regs by
10287         tdep->num_nopriv_regs.
10288         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10289         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10290         not initialized.
10291
10292 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10293
10294         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10295
10296 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10297
10298         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10299         (I387_MXCSR_INIT_VAL): New constant.
10300         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10301         buffer if it was supplied by the inferior.
10302         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10303         (i387_xsave_get_clear_bv): New function.
10304         (i387_supply_xsave): Only read x87 control registers from the
10305         xsave buffer if the feature is enabled, and the state will have
10306         been written, otherwise, provide a suitable default.
10307         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10308         including x87 control registers.  Update control registers if they
10309         have changed from the default value, and mark features as enabled
10310         as required.
10311         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10312
10313 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10314
10315         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10316
10317 2018-05-07  Tom Tromey  <tom@tromey.com>
10318
10319         * configure: Rebuild.
10320         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10321
10322 2018-05-07  Tom Tromey  <tom@tromey.com>
10323
10324         PR tdep/20362:
10325         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10326         bit.  Use correct value for VDIV.
10327
10328 2018-05-04  Tom Tromey  <tom@tromey.com>
10329
10330         * configure: Rebuild.
10331         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10332
10333 2018-05-04  Tom Tromey  <tom@tromey.com>
10334
10335         * linux-record.c (record_linux_system_call) <case
10336         RECORD_SYS_RECVFROM>: Add "break".
10337
10338 2018-05-04  Tom Tromey  <tom@tromey.com>
10339
10340         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10341         Add missing "break".
10342         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10343         Add missing "break".
10344
10345 2018-05-04  Tom Tromey  <tom@tromey.com>
10346
10347         * rs6000-tdep.c (ppc_process_record_op4)
10348         (ppc_process_record_op63): Add fall-through comment.
10349
10350 2018-05-04  Tom Tromey  <tom@tromey.com>
10351
10352         * i386-tdep.c (i386_process_record): Add fall-through comment.
10353
10354 2018-05-04  Tom Tromey  <tom@tromey.com>
10355
10356         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10357         comment.
10358
10359 2018-05-04  Tom Tromey  <tom@tromey.com>
10360
10361         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10362         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10363         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10364         comment.
10365         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10366         comment.
10367         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10368         comment.
10369
10370 2018-05-04  Tom Tromey  <tom@tromey.com>
10371
10372         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10373
10374 2018-05-04  Tom Tromey  <tom@tromey.com>
10375
10376         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10377         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10378         * symfile.c (section_is_mapped): Fix fall-through comment.
10379         * stabsread.c (define_symbol, read_member_functions): Fix
10380         fall-through comment.
10381         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10382         comment.
10383         * remote.c (remote_wait_as): Fix fall-through comment.
10384         * p-exp.y (yylex): Fix fall-through comment.
10385         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10386         comment.
10387         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10388         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10389         * jv-exp.y (yylex): Fix fall-through comment.
10390         * go-exp.y (lex_one_token): Fix fall-through comment.
10391         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10392         fall-through comment.
10393         * f-exp.y (yylex): Fix fall-through comment.
10394         * dwarf2read.c (process_die): Fix fall-through comments.
10395         * dbxread.c (process_one_symbol): Fix fall-through comment.
10396         * d-exp.y (lex_one_token): Fix fall-through comment.
10397         * cp-name-parser.y (yylex): Fix fall-through comment.
10398         * coffread.c (coff_symtab_read): Fix fall-through comment.
10399         * c-exp.y (lex_one_token): Fix fall-through comment.
10400         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10401         comment.
10402         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10403         comment.
10404
10405 2018-05-04  Tom Tromey  <tom@tromey.com>
10406
10407         PR python/22730:
10408         * NEWS: Mention gdb.execute change.
10409         * gdbcmd.h (execute_control_command): Don't declare.
10410         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10411         execute_control_commands, execute_control_commands_to_string.
10412         * cli/cli-script.h (execute_control_commands)
10413         (execute_control_commands_to_string): Declare.
10414         (execute_control_command): Add from_tty parameter.
10415         * cli/cli-script.c (execute_control_commands)
10416         (execute_control_commands_to_string): New functions.
10417         (execute_user_command): Use execute_control_commands.
10418         (execute_control_command_1): Add "from_tty" parameter.  Update.
10419         (execute_control_command): Likewise.
10420
10421 2018-05-04  Tom Tromey  <tom@tromey.com>
10422
10423         PR python/22731:
10424         * NEWS: Mention that breakpoint commands are writable.
10425         * python/py-breakpoint.c (bppy_set_commands): New function.
10426         (breakpoint_object_getset) <"commands">: Use it.
10427
10428 2018-05-04  Tom Tromey  <tom@tromey.com>
10429
10430         * tracepoint.c (actions_command): Update.
10431         * mi/mi-cmd-break.c (mi_command_line_array)
10432         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10433         (mi_read_next_line): Remove.
10434         (mi_cmd_break_commands): Update.
10435         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10436         function_view.
10437         * cli/cli-script.c (get_command_line): Update.
10438         (process_next_line): Use function_view.  Constify.
10439         (recurse_read_control_structure, read_command_lines)
10440         (read_command_lines_1): Change argument types to function_view.
10441         (do_define_command, document_command): Update.
10442         * breakpoint.h (check_tracepoint_command): Don't declare.
10443         * breakpoint.c (check_tracepoint_command): Remove.
10444         (commands_command_1, create_tracepoint_from_upload): Update.
10445
10446 2018-05-04  Tom Tromey  <tom@tromey.com>
10447
10448         PR gdb/11750:
10449         * cli/cli-script.h (enum command_control_type) <define_control>:
10450         New constant.
10451         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10452         (build_command_line, execute_control_command_1)
10453         (process_next_line): Likewise.
10454         (do_define_command): New function, extracted from define_command.
10455         (define_command): Use it.
10456
10457 2018-05-04  Tom Tromey  <tom@tromey.com>
10458
10459         * tracepoint.c (actions_command): Update.
10460         * cli/cli-script.h (read_command_lines): Update.
10461         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10462         (MAX_TMPBUF): Remove define.
10463         (define_command): Use string_printf.
10464         (document_command): Likewise.
10465         * breakpoint.c (commands_command_1): Update.
10466
10467 2018-05-04  Tom Tromey  <tom@tromey.com>
10468
10469         * top.c (execute_command): Update.
10470         * cli/cli-script.h (print_command_lines): Now varargs.
10471         * cli/cli-script.c (print_command_lines): Now varargs.
10472         (execute_control_command_1) <case while_control, case if_control>:
10473         Update.
10474
10475 2018-05-04  Tom Tromey  <tom@tromey.com>
10476
10477         * tracepoint.c (all_tracepoint_actions): Rename from
10478         all_tracepoint_actions_and_cleanup.  Change return type.
10479         (actions_command, encode_actions_1, encode_actions)
10480         (trace_dump_actions, tdump_command): Update.
10481         * remote.c (remote_download_command_source): Update.
10482         * python/python.c (gdbpy_eval_from_control_command)
10483         (python_command, python_interactive_command): Update.
10484         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10485         * guile/guile.c (guile_command)
10486         (gdbscm_eval_from_control_command, guile_command): Update.
10487         * compile/compile.c (compile_code_command)
10488         (compile_print_command, compile_to_object): Update.
10489         * cli/cli-script.h (struct command_lines_deleter): New.
10490         (counted_command_line): New typedef.
10491         (struct command_line): Add constructor, destructor.
10492         <body_list>: Remove.
10493         <body_list_0, body_list_1>: New members.
10494         (command_line_up): Remove typedef.
10495         (read_command_lines, read_command_lines_1, get_command_line):
10496         Update.
10497         (copy_command_lines): Don't declare.
10498         * cli/cli-script.c (build_command_line): Use "new".
10499         (get_command_line): Return counted_command_line.
10500         (print_command_lines, execute_user_command)
10501         (execute_control_command_1, while_command, if_command): Update.
10502         (realloc_body_list): Remove.
10503         (process_next_line, recurse_read_control_structure): Update.
10504         (read_command_lines, read_command_lines_1): Return counted_command_line.
10505         (free_command_lines): Use "delete".
10506         (copy_command_lines): Remove.
10507         (define_command, document_command, show_user_1): Update.
10508         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10509         a counted_command_line.
10510         * breakpoint.h (counted_command_line): Remove typedef.
10511         (breakpoint_set_commands): Update.
10512         * breakpoint.c (check_no_tracepoint_commands)
10513         (validate_commands_for_breakpoint): Update.
10514         (breakpoint_set_commands): Change commands to be a
10515         counted_command_line.
10516         (commands_command_1, update_dprintf_command_list)
10517         (create_tracepoint_from_upload): Update.
10518
10519 2018-05-04  Tom Tromey  <tom@tromey.com>
10520
10521         * cli/cli-decode.h (cmd_list_element): New constructor.
10522         (~cmd_list_element): New destructor.
10523         (struct cmd_list_element): Add initializers.
10524         * cli/cli-decode.c (do_add_cmd): Use "new".
10525         (delete_cmd): Use "delete".
10526
10527 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10528             Pedro Alves <palves@redhat.com>
10529
10530         PR breakpoints/19806 and support for PR external/20207.
10531         * NEWS: Mention Aarch64 watchpoint improvements.
10532         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10533         watchpoints and PR external/20207 watchpoints.
10534         * nat/aarch64-linux-hw-point.c
10535         (kernel_supports_any_contiguous_range): New.
10536         (aarch64_watchpoint_offset): New.
10537         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10538         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10539         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10540         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10541         next_addr_orig_p.  Support PR external/20207 watchpoints.
10542         (aarch64_downgrade_regs): New.
10543         (aarch64_dr_state_insert_one_point): New parameters offset and
10544         addr_orig.
10545         (aarch64_dr_state_remove_one_point): Likewise.
10546         (aarch64_handle_breakpoint): Update caller.
10547         (aarch64_handle_aligned_watchpoint): Likewise.
10548         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10549         aligned_offset.
10550         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10551         aarch64_downgrade_regs.
10552         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10553         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10554         (DR_CONTROL_MASK): ... this.
10555         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10556         (unsigned int aarch64_watchpoint_offset): New prototype.
10557         (aarch64_linux_set_debug_regs): Remove const from state.
10558         * utils.c (align_up, align_down): Move to ...
10559         * common/common-utils.c (align_up, align_down): ... here.
10560         * utils.h (align_up, align_down): Move to ...
10561         * common/common-utils.h (align_up, align_down): ... here.
10562
10563 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10564
10565         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10566         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10567         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10568         Re-implement to match the ABI as summarized in GCC's
10569         gcc/config/sparc/sparc.c.  All callers updated.
10570         (sparc32_store_arguments): Remove assertion.
10571
10572 2018-05-04  Tom Tromey  <tom@tromey.com>
10573
10574         * printcmd.c: Don't include tui.h.
10575         (decode_format): Use skip_spaces.
10576
10577 2018-05-04  Tom Tromey  <tom@tromey.com>
10578
10579         PR gdb/22619:
10580         * printcmd.c (last_count): New global.
10581         (x_command): Use saved count when repeating.
10582
10583 2018-05-04  Tom Tromey  <tom@tromey.com>
10584
10585         * nto-procfs.c (do_closedir_cleanup): Remove.
10586         (procfs_pidlist): Use gdb_dir_up.
10587         * procfs.c (do_closedir_cleanup): Remove.
10588         (proc_update_threads): Use gdb_dir_up.
10589         * common/filestuff.h (struct gdb_dir_deleter): New.
10590         (gdb_dir_up): New typedef.
10591
10592 2018-05-04  Tom Tromey  <tom@tromey.com>
10593
10594         * ada-lang.c (print_mention_exception): Use std::string.
10595
10596 2018-05-04  Tom Tromey  <tom@tromey.com>
10597
10598         * ada-lang.c (create_excep_cond_exprs): Update.
10599         (ada_exception_catchpoint_cond_string): Use std::string.
10600
10601 2018-05-04  Tom Tromey  <tom@tromey.com>
10602
10603         * ada-lang.c (xget_renaming_scope): Return std::string.
10604         (old_renaming_is_invisible): Update.
10605
10606 2018-05-04  Tom Tromey  <tom@tromey.com>
10607
10608         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10609         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10610
10611 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10612
10613         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10614
10615 2018-05-04  Tom Tromey  <tom@tromey.com>
10616
10617         * remote.c (remote_query_supported_append): Change type.
10618         (remote_check_symbols): Update.
10619
10620 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10621
10622         PR gdb/11420
10623         * configure.ac: Prepend libpython.
10624         * python/python-config.py: Likewise.
10625         * configure: Regenerate.
10626
10627 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10628
10629         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10630
10631 2018-05-03  Pedro Alves  <palves@redhat.com>
10632
10633         * s390-linux-nat.c
10634         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10635         override.  Write 'true' instead of '1'.
10636         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10637         declaration.
10638
10639 2018-05-02  Pedro Alves  <palves@redhat.com>
10640
10641         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10642         add_inf_child_target.
10643         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10644         add_inf_child_target.
10645         * aix-thread.c (aix_thread_target_info): New.
10646         (aix_thread_target) <shortname, longname, doc>: Delete.
10647         <info>: New.
10648         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10649         add_inf_child_target.
10650         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10651         add_inf_child_target.
10652         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10653         add_inf_child_target.
10654         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10655         add_inf_child_target.
10656         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10657         add_inf_child_target.
10658         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10659         add_inf_child_target.
10660         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10661         add_inf_child_target.
10662         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10663         add_inf_child_target.
10664         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10665         add_inf_child_target.
10666         * bfd-target.c (target_bfd_target_info): New.
10667         (target_bfd) <shortname, longname, doc>: Delete.
10668         <info>: New.
10669         * bsd-kvm.c (bsd_kvm_target_info): New.
10670         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10671         <info>: New.
10672         (bsd_kvm_target::open): Rename to ...
10673         (bsd_kvm_target_open): ... this.  Adjust.
10674         * bsd-uthread.c (bsd_uthread_target_info): New.
10675         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10676         <info>: New.
10677         * corefile.c (core_file_command): Adjust.
10678         * corelow.c (core_target_info): New.
10679         (core_target) <shortname, longname, doc>: Delete.
10680         <info>: New.
10681         (core_target::open): Rename to ...
10682         (core_target_open): ... this.  Adjust.
10683         * ctf.c (ctf_target_info): New.
10684         (ctf_target) <shortname, longname, doc>: Delete.
10685         <info>: New.
10686         (ctf_target::open): Rename to ...
10687         (ctf_target_open): ... this.
10688         (_initialize_ctf): Adjust.
10689         * exec.c (exec_target_info): New.
10690         (exec_target) <shortname, longname, doc>: Delete.
10691         <info>: New.
10692         (exec_target::open): Rename to ...
10693         (exec_target_open): ... this.
10694         * gdbcore.h (core_target_open): Declare.
10695         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10696         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10697         add_inf_child_target.
10698         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10699         add_inf_child_target.
10700         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10701         add_inf_child_target.
10702         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10703         add_inf_child_target.
10704         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10705         add_inf_child_target.
10706         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10707         add_inf_child_target.
10708         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10709         add_inf_child_target.
10710         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10711         add_inf_child_target.
10712         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10713         add_inf_child_target.
10714         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10715         add_inf_child_target.
10716         * inf-child.c (inf_child_target_info): New.
10717         (inf_child_target::info): New.
10718         (inf_child_open_target): Remove 'target' parameter.  Use
10719         get_native_target instead.
10720         (inf_child_target::open): Delete.
10721         (add_inf_child_target): New.
10722         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10723         Delete.
10724         <info>: New.
10725         (add_inf_child_target): Declare.
10726         (inf_child_open_target): Declare.
10727         * linux-thread-db.c (thread_db_target_info): New.
10728         (thread_db_target) <shortname, longname, doc>: Delete.
10729         <info>: New.
10730         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10731         add_inf_child_target.
10732         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10733         add_inf_child_target.
10734         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10735         add_inf_child_target.
10736         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10737         add_inf_child_target.
10738         * make-target-delegates (print_class): Adjust.
10739         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10740         add_inf_child_target.
10741         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10742         add_inf_child_target.
10743         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10744         add_inf_child_target.
10745         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10746         add_inf_child_target.
10747         * nto-procfs.c (nto_native_target_info): New.
10748         (nto_procfs_target_native) <shortname, longname, doc>:
10749         Delete.
10750         <info>: New.
10751         (nto_procfs_target_info): New.
10752         (nto_procfs_target_procfs) <shortname, longname, doc>:
10753         Delete.
10754         <info>: New.
10755         (init_procfs_targets): Adjust.
10756         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10757         add_inf_child_target.
10758         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10759         add_inf_child_target.
10760         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10761         add_inf_child_target.
10762         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10763         add_inf_child_target.
10764         * ravenscar-thread.c (ravenscar_target_info): New.
10765         (ravenscar_thread_target) <shortname, longname, doc>:
10766         Delete.
10767         <info>: New.
10768         * record-btrace.c (record_btrace_target_info):
10769         (record_btrace_target) <shortname, longname, doc>: Delete.
10770         <info>: New.
10771         (record_btrace_target::open): Rename to ...
10772         (record_btrace_target_open): ... this.  Adjust.
10773         * record-full.c (record_longname, record_doc): New.
10774         (record_full_base_target) <shortname, longname, doc>: Delete.
10775         <info>: New.
10776         (record_full_target_info): New.
10777         (record_full_target): <shortname>: Delete.
10778         <info>: New.
10779         (record_full_core_open_1, record_full_open_1): Update comments.
10780         (record_full_base_target::open): Rename to ...
10781         (record_full_open): ... this.
10782         (cmd_record_full_restore): Update.
10783         (_initialize_record_full): Update.
10784         * remote-sim.c (remote_sim_target_info): New.
10785         (gdbsim_target) <shortname, longname, doc>: Delete.
10786         <info>: New.
10787         (gdbsim_target::open): Rename to ...
10788         (gdbsim_target_open): ... this.
10789         (_initialize_remote_sim): Adjust.
10790         * remote.c (remote_doc): New.
10791         (remote_target_info): New.
10792         (remote_target) <shortname, longname, doc>: Delete.
10793         <info>: New.
10794         (extended_remote_target_info): New.
10795         (extended_remote_target) <shortname, longname, doc>: Delete.
10796         <info>: New.
10797         (remote_target::open_1): Make static.  Adjust.
10798         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10799         * s390-linux-nat.c (_initialize_s390_nat): Use
10800         add_inf_child_target.
10801         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10802         add_inf_child_target.
10803         * sol-thread.c (thread_db_target_info): New.
10804         (sol_thread_target) <shortname, longname, doc>: Delete.
10805         <info>: New.
10806         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10807         add_inf_child_target.
10808         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10809         add_inf_child_target.
10810         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10811         add_inf_child_target.
10812         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10813         add_inf_child_target.
10814         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10815         add_inf_child_target.
10816         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10817         add_inf_child_target.
10818         * spu-linux-nat.c (_initialize_spu_nat): Use
10819         add_inf_child_target.
10820         * spu-multiarch.c (spu_multiarch_target_info): New.
10821         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10822         <info>: New.
10823         * target-delegates.c: Regenerate.
10824         * target.c: Include <unordered_map>.
10825         (target_ops_p): Delete.
10826         (DEF_VEC_P(target_ops_p)): Delete.
10827         (target_factories): New.
10828         (test_target_info): New.
10829         (test_target_ops::info): New.
10830         (open_target): Adjust to use target_factories.
10831         (add_target_with_completer): Rename to ...
10832         (add_target): ... this.  Change prototype.  Register target_info
10833         and open callback in target_factories.  Register target_info in
10834         command context instead of target_ops.
10835         (add_target): Delete old implementation.
10836         (add_deprecated_target_alias): Change prototype.  Adjust.
10837         (the_native_target): New.
10838         (set_native_target, get_native_target): New.
10839         (find_default_run_target): Use the_native_target.
10840         (find_attach_target, find_run_target): Simplify.
10841         (target_ops::open): Delete.
10842         (dummy_target_info): New.
10843         (dummy_target::shortname, dummy_target::longname)
10844         (dummy_target::doc): Delete.
10845         (dummy_target::info): New.
10846         (debug_target::shortname, debug_target::longname)
10847         (debug_target::doc): Delete.
10848         (debug_target::info): New.
10849         * target.h (struct target_info): New.
10850         (target_ops::~target_ops): Add comment.
10851         (target_ops::info): New.
10852         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10853         longer virtual.  Implement in terms of target_info.
10854         (set_native_target, get_native_target): Declare.
10855         (target_open_ftype): New.
10856         (add_target, add_target_with_completer)
10857         (add_deprecated_target_alias): Change prototype.
10858         (test_target) <shortname, longname, doc>: Delete.
10859         <info>: New.
10860         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10861         add_inf_child_target.
10862         * tracefile-tfile.c (tfile_target_info): New.
10863         (tfile_target) <shortname, longname, doc>: Delete.
10864         <info>: New.
10865         (tfile_target::open): Rename to ...
10866         (tfile_target_open): ... this.
10867         (_initialize_tracefile_tfile): Adjust.
10868         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10869         add_inf_child_target.
10870         * windows-nat.c (_initialize_windows_nat): Use
10871         add_inf_child_target.
10872         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10873         add_inf_child_target.
10874
10875 2018-05-02  Pedro Alves  <palves@redhat.com>
10876
10877         * linux-nat.h (linux_nat_target) <low_new_thread,
10878         low_delete_thread, low_new_fork, low_forget_process,
10879         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10880         New virtual methods.
10881         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10882         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10883         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10884         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10885         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10886         Delete.
10887         * linux-fork.c (delete_fork): Adjust to call low method.
10888         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10889         (linux_nat_new_fork, linux_nat_forget_process_hook)
10890         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10891         (linux_nat_status_is_event):
10892         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10893         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10894         to call low method.
10895         (sigtrap_is_event): Rename to ...
10896         (linux_nat_target::low_status_is_event): ... this.
10897         (linux_nat_set_status_is_event): Delete.
10898         (save_stop_reason, linux_nat_wait_1)
10899         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10900         low methods.
10901         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10902         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10903         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10904         (linux_nat_set_prepare_to_resume): Delete.
10905         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10906         low virtual methods.
10907         * amd64-linux-nat.c: Likewise.
10908         * arm-linux-nat.c: Likewise.
10909         * i386-linux-nat.c: Likewise.
10910         * ia64-linux-nat.c: Likewise.
10911         * mips-linux-nat.c: Likewise.
10912         * ppc-linux-nat.c: Likewise.
10913         * s390-linux-nat.c: Likewise.
10914         * sparc64-linux-nat.c: Likewise.
10915         * x86-linux-nat.c: Likewise.
10916         * x86-linux-nat.h: Include "nat/x86-linux.h".
10917         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10918         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10919         Override methods.
10920
10921 2018-05-02  Pedro Alves  <palves@redhat.com>
10922
10923         * target.h (target_ops)
10924         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10925         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10926         stopped_by_watchpoint, have_continuable_watchpoint,
10927         stopped_data_address, watchpoint_addr_within_range,
10928         can_accel_watchpoint_condition, can_run, thread_alive,
10929         has_all_memory, has_memory, has_stack, has_registers,
10930         has_execution, can_async_p, is_async_p, supports_non_stop,
10931         always_non_stop_p, can_execute_reverse, supports_multi_process,
10932         supports_enable_disable_tracepoint,
10933         supports_disable_randomization, supports_string_tracing,
10934         supports_evaluation_of_breakpoint_conditions,
10935         can_run_breakpoint_commands, filesystem_is_local,
10936         can_download_tracepoint, get_trace_state_variable_value,
10937         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10938         record_is_replaying, record_will_replay,
10939         augmented_libraries_svr4_read>: Adjust to return bool.
10940         * aarch64-linux-nat.c: All implementations adjusted.
10941         * aix-thread.c: All implementations adjusted.
10942         * arm-linux-nat.c: All implementations adjusted.
10943         * breakpoint.c: All implementations adjusted.
10944         * bsd-kvm.c: All implementations adjusted.
10945         * bsd-uthread.c: All implementations adjusted.
10946         * corelow.c: All implementations adjusted.
10947         * ctf.c: All implementations adjusted.
10948         * darwin-nat.c: All implementations adjusted.
10949         * darwin-nat.h: All implementations adjusted.
10950         * exec.c: All implementations adjusted.
10951         * fbsd-nat.c: All implementations adjusted.
10952         * fbsd-nat.h: All implementations adjusted.
10953         * gnu-nat.c: All implementations adjusted.
10954         * gnu-nat.h: All implementations adjusted.
10955         * go32-nat.c: All implementations adjusted.
10956         * ia64-linux-nat.c: All implementations adjusted.
10957         * inf-child.c: All implementations adjusted.
10958         * inf-child.h: All implementations adjusted.
10959         * inf-ptrace.c: All implementations adjusted.
10960         * inf-ptrace.h: All implementations adjusted.
10961         * linux-nat.c: All implementations adjusted.
10962         * linux-nat.h: All implementations adjusted.
10963         * mips-linux-nat.c: All implementations adjusted.
10964         * nto-procfs.c: All implementations adjusted.
10965         * ppc-linux-nat.c: All implementations adjusted.
10966         * procfs.c: All implementations adjusted.
10967         * ravenscar-thread.c: All implementations adjusted.
10968         * record-btrace.c: All implementations adjusted.
10969         * record-full.c: All implementations adjusted.
10970         * remote-sim.c: All implementations adjusted.
10971         * remote.c: All implementations adjusted.
10972         * s390-linux-nat.c: All implementations adjusted.
10973         * sol-thread.c: All implementations adjusted.
10974         * spu-multiarch.c: All implementations adjusted.
10975         * target-delegates.c: All implementations adjusted.
10976         * target.c: All implementations adjusted.
10977         * target.h: All implementations adjusted.
10978         * tracefile-tfile.c: All implementations adjusted.
10979         * tracefile.c: All implementations adjusted.
10980         * tracefile.h: All implementations adjusted.
10981         * windows-nat.c: All implementations adjusted.
10982         * x86-linux-nat.h: All implementations adjusted.
10983         * x86-nat.h: All implementations adjusted.
10984
10985 2018-05-02  Pedro Alves  <palves@redhat.com>
10986
10987         * make-target-delegates (scan_target_h): Don't trim lines here.
10988         Replace sequences of tabs and/or whitespace with a single
10989         whitespace.
10990         (top level, parsing methods): Trim each line before processing it
10991         here.
10992
10993 2018-05-02  Pedro Alves  <palves@redhat.com>
10994             John Baldwin  <jhb@freebsd.org>
10995
10996         * target.h (enum strata) <debug_stratum>: New.
10997         (struct target_ops) <all delegation methods>: Replace by C++
10998         virtual methods, and drop "to_" prefix.  All references updated
10999         throughout.
11000         <to_shortname, to_longname, to_doc, to_data,
11001         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11002         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11003         virtual methods.  All references updated throughout.
11004         <can_attach, supports_terminal_ours, can_create_inferior,
11005         get_thread_control_capabilities, attach_no_wait>: New
11006         virtual methods.
11007         <insert_breakpoint, remove_breakpoint>: Now
11008         TARGET_DEFAULT_NORETURN methods.
11009         <info_proc>: Now returns bool.
11010         <to_magic>: Delete.
11011         (OPS_MAGIC): Delete.
11012         (current_target): Delete.  All references replaced by references
11013         to ...
11014         (target_stack): ... this.  New.
11015         (target_shortname, target_longname): Adjust.
11016         (target_can_run): Now a function declaration.
11017         (default_child_has_all_memory, default_child_has_memory)
11018         (default_child_has_stack, default_child_has_registers)
11019         (default_child_has_execution): Remove target_ops parameter.
11020         (complete_target_initialization): Delete.
11021         (memory_breakpoint_target): New template class.
11022         (test_target_ops): Refactor as a C++ class with virtual methods.
11023         * make-target-delegates (NAME_PART): Tighten.
11024         (POINTER_PART, CP_SYMBOL): New.
11025         (SIMPLE_RETURN_PART): Reimplement.
11026         (VEC_RETURN_PART): Expect less.
11027         (RETURN_PART, VIRTUAL_PART): New.
11028         (METHOD): Adjust to C++ virtual methods.
11029         (scan_target_h): Remove reference to C99.
11030         (dname): Output "target_ops::" prefix.
11031         (write_function_header): Adjust to output a C++ class method.
11032         (write_declaration): New.
11033         (write_delegator): Adjust to output a C++ class method.
11034         (tdname): Output "dummy_target::" prefix.
11035         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11036         method.
11037         (tdefault_names, debug_names): Delete.
11038         (return_types, tdefaults, styles, argtypes_array): New.
11039         (top level): All methods are delegators.
11040         (print_class): New.
11041         (top level): Print dummy_target and debug_target classes.
11042         * target-delegates.c: Regenerate.
11043         * target-debug.h (target_debug_print_enum_info_proc_what)
11044         (target_debug_print_thread_control_capabilities)
11045         (target_debug_print_thread_info_p): New.
11046         * target.c (dummy_target): Delete.
11047         (the_dummy_target, the_debug_target): New.
11048         (target_stack): Now extern.
11049         (set_targetdebug): Push/unpush debug target.
11050         (default_child_has_all_memory, default_child_has_memory)
11051         (default_child_has_stack, default_child_has_registers)
11052         (default_child_has_execution): Remove target_ops parameter.
11053         (complete_target_initialization): Delete.
11054         (add_target_with_completer): No longer call
11055         complete_target_initialization.
11056         (target_supports_terminal_ours): Use regular delegation.
11057         (update_current_target): Delete.
11058         (push_target): No longer check magic number.  Don't call
11059         update_current_target.
11060         (unpush_target): Don't call update_current_target.
11061         (target_is_pushed): No longer check magic number.
11062         (target_require_runnable): Skip for all stratums over
11063         process_stratum.
11064         (target_ops::info_proc): New.
11065         (target_info_proc): Use find_target_at and
11066         find_default_run_target.
11067         (target_supports_disable_randomization): Use regular delegation.
11068         (target_get_osdata): Use find_target_at.
11069         (target_ops::open, target_ops::close, target_ops::can_attach)
11070         (target_ops::attach, target_ops::can_create_inferior)
11071         (target_ops::create_inferior, target_ops::can_run)
11072         (target_can_run): New.
11073         (default_fileio_target): Use regular delegation.
11074         (target_ops::fileio_open, target_ops::fileio_pwrite)
11075         (target_ops::fileio_pread, target_ops::fileio_fstat)
11076         (target_ops::fileio_close, target_ops::fileio_unlink)
11077         (target_ops::fileio_readlink): New.
11078         (target_fileio_open_1, target_fileio_unlink)
11079         (target_fileio_readlink): Always call the target method.  Handle
11080         FILEIO_ENOSYS.
11081         (return_zero, return_zero_has_execution): Delete.
11082         (init_dummy_target): Delete.
11083         (dummy_target::dummy_target, dummy_target::shortname)
11084         (dummy_target::longname, dummy_target::doc)
11085         (debug_target::debug_target, debug_target::shortname)
11086         (debug_target::longname, debug_target::doc): New.
11087         (target_supports_delete_record): Use regular delegation.
11088         (setup_target_debug): Delete.
11089         (maintenance_print_target_stack): Skip debug_stratum.
11090         (initialize_targets): Instantiate the_dummy_target and
11091         the_debug_target.
11092         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11093         use target_stack.
11094         (target_auxv_search, fprint_target_auxv): Adjust.
11095         (info_auxv_command): Adjust to use target_stack.
11096         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11097         * exceptions.c (print_flush): Handle a NULL target_stack.
11098         * regcache.c (target_ops_no_register): Refactor as class with
11099         virtual methods.
11100
11101         * exec.c (exec_target): New class.
11102         (exec_ops): Now an exec_target.
11103         (exec_open, exec_close_1, exec_get_section_table)
11104         (exec_xfer_partial, exec_files_info, exec_has_memory)
11105         (exec_make_note_section): Refactor as exec_target methods.
11106         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11107         Delete.
11108         (exec_target::find_memory_regions): New.
11109         (_initialize_exec): Don't call init_exec_ops.
11110         * gdbcore.h (exec_file_clear): Delete.
11111
11112         * corefile.c (core_target): Delete.
11113         (core_file_command): Adjust.
11114         * corelow.c (core_target): New class.
11115         (the_core_target): New.
11116         (core_close): Remove target_ops parameter.
11117         (core_close_cleanup): Adjust.
11118         (core_target::close): New.
11119         (core_open, core_detach, get_core_registers, core_files_info)
11120         (core_xfer_partial, core_thread_alive, core_read_description)
11121         (core_pid_to_str, core_thread_name, core_has_memory)
11122         (core_has_stack, core_has_registers, core_info_proc): Rework as
11123         core_target methods.
11124         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11125         (_initialize_corelow): Initialize the_core_target.
11126         * gdbcore.h (core_target): Delete.
11127         (the_core_target): New.
11128
11129         * ctf.c: (ctf_target): New class.
11130         (ctf_ops): Now a ctf_target.
11131         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11132         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11133         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11134         methods.
11135         (init_ctf_ops): Delete.
11136         (_initialize_ctf): Don't call it.
11137         * tracefile-tfile.c (tfile_target): New class.
11138         (tfile_ops): Now a tfile_target.
11139         (tfile_open, tfile_close, tfile_files_info)
11140         (tfile_get_tracepoint_status, tfile_trace_find)
11141         (tfile_fetch_registers, tfile_xfer_partial)
11142         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11143         Refactor as tfile_target methods.
11144         (tfile_xfer_partial_features): Remove target_ops parameter.
11145         (init_tfile_ops): Delete.
11146         (_initialize_tracefile_tfile): Don't call it.
11147         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11148         (tracefile_has_stack, tracefile_has_registers)
11149         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11150         tracefile_target methods.
11151         (init_tracefile_ops): Delete.
11152         (tracefile_target::tracefile_target): New.
11153         * tracefile.h: Include "target.h".
11154         (tracefile_target): New class.
11155         (init_tracefile_ops): Delete.
11156
11157         * spu-multiarch.c (spu_multiarch_target): New class.
11158         (spu_ops): Now a spu_multiarch_target.
11159         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11160         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11161         (spu_search_memory, spu_mourn_inferior): Refactor as
11162         spu_multiarch_target methods.
11163         (init_spu_ops): Delete.
11164         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11165         complete_target_initialization.
11166
11167         * ravenscar-thread.c (ravenscar_thread_target): New class.
11168         (ravenscar_ops): Now a ravenscar_thread_target.
11169         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11170         (ravenscar_thread_alive, ravenscar_pid_to_str)
11171         (ravenscar_fetch_registers, ravenscar_store_registers)
11172         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11173         (ravenscar_stopped_by_hw_breakpoint)
11174         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11175         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11176         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11177         methods.
11178         (init_ravenscar_thread_ops): Delete.
11179         (_initialize_ravenscar): Remove references to
11180         init_ravenscar_thread_ops and complete_target_initialization.
11181
11182         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11183         (bsd_uthread_target): New class.
11184         (bsd_uthread_ops): Now a bsd_uthread_target.
11185         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11186         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11187         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11188         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11189         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11190         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11191         (bsd_uthread_target): Delete function.
11192         (_initialize_bsd_uthread): Remove reference to
11193         complete_target_initialization.
11194
11195         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11196         (target_bfd): ... this new class.
11197         (target_bfd_xfer_partial, target_bfd_get_section_table)
11198         (target_bfd_close): Refactor as target_bfd methods.
11199         (target_bfd::~target_bfd): New.
11200         (target_bfd_reopen): Adjust.
11201         (target_bfd::close): New.
11202
11203         * record-btrace.c (record_btrace_target): New class.
11204         (record_btrace_ops): Now a record_btrace_target.
11205         (record_btrace_open, record_btrace_stop_recording)
11206         (record_btrace_disconnect, record_btrace_close)
11207         (record_btrace_async, record_btrace_info)
11208         (record_btrace_insn_history, record_btrace_insn_history_range)
11209         (record_btrace_insn_history_from, record_btrace_call_history)
11210         (record_btrace_call_history_range)
11211         (record_btrace_call_history_from, record_btrace_record_method)
11212         (record_btrace_is_replaying, record_btrace_will_replay)
11213         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11214         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11215         (record_btrace_store_registers, record_btrace_prepare_to_store)
11216         (record_btrace_to_get_unwinder)
11217         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11218         (record_btrace_commit_resume, record_btrace_wait)
11219         (record_btrace_stop, record_btrace_can_execute_reverse)
11220         (record_btrace_stopped_by_sw_breakpoint)
11221         (record_btrace_supports_stopped_by_sw_breakpoint)
11222         (record_btrace_stopped_by_hw_breakpoint)
11223         (record_btrace_supports_stopped_by_hw_breakpoint)
11224         (record_btrace_update_thread_list, record_btrace_thread_alive)
11225         (record_btrace_goto_begin, record_btrace_goto_end)
11226         (record_btrace_goto, record_btrace_stop_replaying_all)
11227         (record_btrace_execution_direction)
11228         (record_btrace_prepare_to_generate_core)
11229         (record_btrace_done_generating_core): Refactor as
11230         record_btrace_target methods.
11231         (init_record_btrace_ops): Delete.
11232         (_initialize_record_btrace): Remove reference to
11233         init_record_btrace_ops.
11234         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11235         the execution_direction global.
11236         (record_full_base_target, record_full_target)
11237         (record_full_core_target): New classes.
11238         (record_full_ops): Now a record_full_target.
11239         (record_full_core_ops): Now a record_full_core_target.
11240         (record_full_target::detach, record_full_target::disconnect)
11241         (record_full_core_target::disconnect)
11242         (record_full_target::mourn_inferior, record_full_target::kill):
11243         New.
11244         (record_full_open, record_full_close, record_full_async): Refactor
11245         as methods of the record_full_base_target class.
11246         (record_full_resume, record_full_commit_resume): Refactor
11247         as methods of the record_full_target class.
11248         (record_full_wait, record_full_stopped_by_watchpoint)
11249         (record_full_stopped_data_address)
11250         (record_full_stopped_by_sw_breakpoint)
11251         (record_full_supports_stopped_by_sw_breakpoint)
11252         (record_full_stopped_by_hw_breakpoint)
11253         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11254         methods of the record_full_base_target class.
11255         (record_full_store_registers, record_full_xfer_partial)
11256         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11257         Refactor as methods of the record_full_target class.
11258         (record_full_can_execute_reverse, record_full_get_bookmark)
11259         (record_full_goto_bookmark, record_full_execution_direction)
11260         (record_full_record_method, record_full_info, record_full_delete)
11261         (record_full_is_replaying, record_full_will_replay)
11262         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11263         (record_full_stop_replaying): Refactor as methods of the
11264         record_full_base_target class.
11265         (record_full_core_resume, record_full_core_kill)
11266         (record_full_core_fetch_registers)
11267         (record_full_core_prepare_to_store)
11268         (record_full_core_store_registers, record_full_core_xfer_partial)
11269         (record_full_core_insert_breakpoint)
11270         (record_full_core_remove_breakpoint)
11271         (record_full_core_has_execution): Refactor
11272         as methods of the record_full_core_target class.
11273         (record_full_base_target::supports_delete_record): New.
11274         (init_record_full_ops): Delete.
11275         (init_record_full_core_ops): Delete.
11276         (record_full_save): Refactor as method of the
11277         record_full_base_target class.
11278         (_initialize_record_full): Remove references to
11279         init_record_full_ops and init_record_full_core_ops.
11280
11281         * remote.c (remote_target, extended_remote_target): New classes.
11282         (remote_ops): Now a remote_target.
11283         (extended_remote_ops): Now an extended_remote_target.
11284         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11285         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11286         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11287         (remote_pass_signals, remote_set_syscall_catchpoint)
11288         (remote_program_signals, )
11289         (remote_thread_always_alive): Remove target_ops parameter.
11290         (remote_thread_alive, remote_thread_name)
11291         (remote_update_thread_list, remote_threads_extra_info)
11292         (remote_static_tracepoint_marker_at)
11293         (remote_static_tracepoint_markers_by_strid)
11294         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11295         (remote_open): Refactor as methods of remote_target.
11296         (extended_remote_open, extended_remote_detach)
11297         (extended_remote_attach, extended_remote_post_attach):
11298         (extended_remote_supports_disable_randomization)
11299         (extended_remote_create_inferior): : Refactor as method of
11300         extended_remote_target.
11301         (remote_set_permissions, remote_open_1, remote_detach)
11302         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11303         (remote_resume, remote_commit_resume, remote_stop)
11304         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11305         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11306         (remote_prepare_to_store, remote_store_registers)
11307         (remote_flash_erase, remote_flash_done, remote_files_info)
11308         (remote_kill, remote_mourn, remote_insert_breakpoint)
11309         (remote_remove_breakpoint, remote_insert_watchpoint)
11310         (remote_watchpoint_addr_within_range)
11311         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11312         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11313         (remote_supports_stopped_by_sw_breakpoint)
11314         (remote_stopped_by_hw_breakpoint)
11315         (remote_supports_stopped_by_hw_breakpoint)
11316         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11317         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11318         (remote_verify_memory): Refactor as methods of remote_target.
11319         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11320         parameter.
11321         (remote_xfer_partial, remote_get_memory_xfer_limit)
11322         (remote_search_memory, remote_rcmd, remote_memory_map)
11323         (remote_pid_to_str, remote_get_thread_local_address)
11324         (remote_get_tib_address, remote_read_description): Refactor as
11325         methods of remote_target.
11326         (remote_target::fileio_open, remote_target::fileio_pwrite)
11327         (remote_target::fileio_pread, remote_target::fileio_close): New.
11328         (remote_hostio_readlink, remote_hostio_fstat)
11329         (remote_filesystem_is_local, remote_can_execute_reverse)
11330         (remote_supports_non_stop, remote_supports_disable_randomization)
11331         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11332         (remote_supports_enable_disable_tracepoint)
11333         (remote_supports_string_tracing)
11334         (remote_can_run_breakpoint_commands, remote_trace_init)
11335         (remote_download_tracepoint, remote_can_download_tracepoint)
11336         (remote_download_trace_state_variable, remote_enable_tracepoint)
11337         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11338         (remote_trace_start, remote_get_trace_status)
11339         (remote_get_tracepoint_status, remote_trace_stop)
11340         (remote_trace_find, remote_get_trace_state_variable_value)
11341         (remote_save_trace_data, remote_get_raw_trace_data)
11342         (remote_set_disconnected_tracing, remote_core_of_thread)
11343         (remote_set_circular_trace_buffer, remote_traceframe_info)
11344         (remote_get_min_fast_tracepoint_insn_len)
11345         (remote_set_trace_buffer_size, remote_set_trace_notes)
11346         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11347         (remote_disable_btrace, remote_teardown_btrace)
11348         (remote_read_btrace, remote_btrace_conf)
11349         (remote_augmented_libraries_svr4_read, remote_load)
11350         (remote_pid_to_exec_file, remote_can_do_single_step)
11351         (remote_execution_direction, remote_thread_handle_to_thread_info):
11352         Refactor as methods of remote_target.
11353         (init_remote_ops, init_extended_remote_ops): Delete.
11354         (remote_can_async_p, remote_is_async_p, remote_async)
11355         (remote_thread_events, remote_upload_tracepoints)
11356         (remote_upload_trace_state_variables): Refactor as methods of
11357         remote_target.
11358         (_initialize_remote): Remove references to init_remote_ops and
11359         init_extended_remote_ops.
11360
11361         * remote-sim.c (gdbsim_target): New class.
11362         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11363         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11364         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11365         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11366         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11367         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11368         Refactor as methods of gdbsim_target.
11369         (gdbsim_ops): Now a gdbsim_target.
11370         (init_gdbsim_ops): Delete.
11371         (gdbsim_cntrl_c): Adjust.
11372         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11373
11374         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11375         (the_amd64_linux_nat_target): New.
11376         (amd64_linux_fetch_inferior_registers)
11377         (amd64_linux_store_inferior_registers): Refactor as methods of
11378         amd64_linux_nat_target.
11379         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11380         * i386-linux-nat.c: Don't include "linux-nat.h".
11381         (i386_linux_nat_target): New class.
11382         (the_i386_linux_nat_target): New.
11383         (i386_linux_fetch_inferior_registers)
11384         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11385         as methods of i386_linux_nat_target.
11386         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11387         * inf-child.c (inf_child_ops): Delete.
11388         (inf_child_fetch_inferior_registers)
11389         (inf_child_store_inferior_registers): Delete.
11390         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11391         methods of inf_child_target.
11392         (inf_child_target::supports_terminal_ours)
11393         (inf_child_target::terminal_init)
11394         (inf_child_target::terminal_inferior)
11395         (inf_child_target::terminal_ours_for_output)
11396         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11397         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11398         New.
11399         (inf_child_open, inf_child_disconnect, inf_child_close)
11400         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11401         (inf_child_post_startup_inferior, inf_child_can_run)
11402         (inf_child_pid_to_exec_file): Refactor as methods of
11403         inf_child_target.
11404         (inf_child_follow_fork): Delete.
11405         (inf_child_target::can_create_inferior)
11406         (inf_child_target::can_attach): New.
11407         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11408         (inf_child_target::has_stack, inf_child_target::has_registers)
11409         (inf_child_target::has_execution): New.
11410         (inf_child_fileio_open, inf_child_fileio_pwrite)
11411         (inf_child_fileio_pread, inf_child_fileio_fstat)
11412         (inf_child_fileio_close, inf_child_fileio_unlink)
11413         (inf_child_fileio_readlink, inf_child_use_agent)
11414         (inf_child_can_use_agent): Refactor as methods of
11415         inf_child_target.
11416         (return_zero, inf_child_target): Delete.
11417         (inf_child_target::inf_child_target): New.
11418         * inf-child.h: Include "target.h".
11419         (inf_child_target): Delete function prototype.
11420         (inf_child_target): New class.
11421         (inf_child_open_target, inf_child_mourn_inferior)
11422         (inf_child_maybe_unpush_target): Delete.
11423         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11424         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11425         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11426         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11427         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11428         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11429         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11430         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11431         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11432         methods of inf_ptrace_target.
11433         (inf_ptrace_target): Delete function.
11434         * inf-ptrace.h: Include "inf-child.h".
11435         (inf_ptrace_target): Delete function declaration.
11436         (inf_ptrace_target): New class.
11437         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11438         * linux-nat.c (linux_target): New.
11439         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11440         (linux_nat_target::~linux_nat_target): New.
11441         (linux_child_post_attach, linux_child_post_startup_inferior)
11442         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11443         (linux_child_remove_fork_catchpoint)
11444         (linux_child_insert_vfork_catchpoint)
11445         (linux_child_remove_vfork_catchpoint)
11446         (linux_child_insert_exec_catchpoint)
11447         (linux_child_remove_exec_catchpoint)
11448         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11449         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11450         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11451         (linux_nat_stopped_data_address)
11452         (linux_nat_stopped_by_sw_breakpoint)
11453         (linux_nat_supports_stopped_by_sw_breakpoint)
11454         (linux_nat_stopped_by_hw_breakpoint)
11455         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11456         (linux_nat_kill, linux_nat_mourn_inferior)
11457         (linux_nat_xfer_partial, linux_nat_thread_alive)
11458         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11459         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11460         (linux_child_static_tracepoint_markers_by_strid)
11461         (linux_nat_is_async_p, linux_nat_can_async_p)
11462         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11463         (linux_nat_supports_multi_process)
11464         (linux_nat_supports_disable_randomization, linux_nat_async)
11465         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11466         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11467         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11468         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11469         methods of linux_nat_target.
11470         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11471         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11472         parameter.
11473         (check_stopped_by_watchpoint): Adjust.
11474         (linux_xfer_partial): Delete.
11475         (linux_target_install_ops, linux_target, linux_nat_add_target):
11476         Delete.
11477         (linux_nat_target::linux_nat_target): New.
11478         * linux-nat.h: Include "inf-ptrace.h".
11479         (linux_nat_target): New.
11480         (linux_target, linux_target_install_ops, linux_nat_add_target):
11481         Delete function declarations.
11482         (linux_target): Declare global.
11483         * linux-thread-db.c (thread_db_target): New.
11484         (thread_db_target::thread_db_target): New.
11485         (thread_db_ops): Delete.
11486         (the_thread_db_target): New.
11487         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11488         (thread_db_update_thread_list, thread_db_pid_to_str)
11489         (thread_db_extra_thread_info)
11490         (thread_db_thread_handle_to_thread_info)
11491         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11492         (thread_db_resume): Refactor as methods of thread_db_target.
11493         (init_thread_db_ops): Delete.
11494         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11495         * x86-linux-nat.c: Don't include "linux-nat.h".
11496         (super_post_startup_inferior): Delete.
11497         (x86_linux_nat_target::~x86_linux_nat_target): New.
11498         (x86_linux_child_post_startup_inferior)
11499         (x86_linux_read_description, x86_linux_enable_btrace)
11500         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11501         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11502         methods of x86_linux_nat_target.
11503         (x86_linux_create_target): Delete.  Bits folded ...
11504         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11505         pointer.
11506         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11507         (x86_linux_nat_target): New class.
11508         (x86_linux_create_target): Delete.
11509         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11510         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11511         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11512         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11513         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11514         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11515         make extern.
11516         (x86_use_watchpoints): Delete.
11517         * x86-nat.h: Include "breakpoint.h" and "target.h".
11518         (x86_use_watchpoints): Delete.
11519         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11520         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11521         (x86_insert_watchpoint, x86_remove_watchpoint)
11522         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11523         (x86_stopped_by_hw_breakpoint): New declarations.
11524         (x86_nat_target): New template class.
11525
11526         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11527         (the_ppc_linux_nat_target): New.
11528         (ppc_linux_fetch_inferior_registers)
11529         (ppc_linux_can_use_hw_breakpoint)
11530         (ppc_linux_region_ok_for_hw_watchpoint)
11531         (ppc_linux_ranged_break_num_registers)
11532         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11533         (ppc_linux_insert_mask_watchpoint)
11534         (ppc_linux_remove_mask_watchpoint)
11535         (ppc_linux_can_accel_watchpoint_condition)
11536         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11537         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11538         (ppc_linux_watchpoint_addr_within_range)
11539         (ppc_linux_masked_watch_num_registers)
11540         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11541         (ppc_linux_read_description): Refactor as methods of
11542         ppc_linux_nat_target.
11543         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11544
11545         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11546         (procfs_target): New class.
11547         (the_procfs_target): New.
11548         (procfs_target): Delete function.
11549         (procfs_auxv_parse, procfs_attach, procfs_detach)
11550         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11551         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11552         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11553         (procfs_create_inferior, procfs_update_thread_list)
11554         (procfs_thread_alive, procfs_pid_to_str)
11555         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11556         (procfs_stopped_data_address, procfs_insert_watchpoint)
11557         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11558         (proc_find_memory_regions, procfs_info_proc)
11559         (procfs_make_note_section): Refactor as methods of procfs_target.
11560         (_initialize_procfs): Adjust.
11561         * sol-thread.c (sol_thread_target): New class.
11562         (sol_thread_ops): Now a sol_thread_target.
11563         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11564         (sol_thread_fetch_registers, sol_thread_store_registers)
11565         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11566         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11567         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11568         (init_sol_thread_ops): Delete.
11569         (_initialize_sol_thread): Adjust.  Remove references to
11570         init_sol_thread_ops and complete_target_initialization.
11571
11572         * windows-nat.c (windows_nat_target): New class.
11573         (windows_fetch_inferior_registers)
11574         (windows_store_inferior_registers, windows_resume, windows_wait)
11575         (windows_attach, windows_detach, windows_pid_to_exec_file)
11576         (windows_files_info, windows_create_inferior)
11577         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11578         (windows_close, windows_pid_to_str, windows_xfer_partial)
11579         (windows_get_tib_address, windows_get_ada_task_ptid)
11580         (windows_thread_name, windows_thread_alive): Refactor as
11581         windows_nat_target methods.
11582         (do_initial_windows_stuff): Adjust.
11583         (windows_target): Delete function.
11584         (_initialize_windows_nat): Adjust.
11585
11586         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11587         (darwin_mourn_inferior, darwin_kill_inferior)
11588         (darwin_create_inferior, darwin_attach, darwin_detach)
11589         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11590         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11591         (darwin_supports_multi_process): Refactor as darwin_nat_target
11592         methods.
11593         (darwin_resume_to, darwin_files_info): Delete.
11594         (_initialize_darwin_inferior): Rename to ...
11595         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11596         * darwin-nat.h: Include "inf-child.h".
11597         (darwin_nat_target): New class.
11598         (darwin_complete_target): Delete.
11599         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11600         (darwin_target): New.
11601         (i386_darwin_fetch_inferior_registers)
11602         (i386_darwin_store_inferior_registers): Refactor as methods of
11603         darwin_nat_target.
11604         (darwin_complete_target): Delete, with ...
11605         (_initialize_i386_darwin_nat): ... bits factored out here.
11606
11607         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11608         (the_alpha_linux_nat_target): New.
11609         (alpha_linux_register_u_offset): Refactor as
11610         alpha_linux_nat_target method.
11611         (_initialize_alpha_linux_nat): Adjust.
11612         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11613         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11614         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11615         methods of linux_nat_trad_target.
11616         (linux_trad_target): Delete.
11617         * linux-nat-trad.h (linux_trad_target): Delete function.
11618         (linux_nat_trad_target): New class.
11619         * mips-linux-nat.c (mips_linux_nat_target): New class.
11620         (super_fetch_registers, super_store_registers, super_close):
11621         Delete.
11622         (the_mips_linux_nat_target): New.
11623         (mips64_linux_regsets_fetch_registers)
11624         (mips64_linux_regsets_store_registers)
11625         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11626         (mips_linux_register_u_offset, mips_linux_read_description)
11627         (mips_linux_can_use_hw_breakpoint)
11628         (mips_linux_stopped_by_watchpoint)
11629         (mips_linux_stopped_data_address)
11630         (mips_linux_region_ok_for_hw_watchpoint)
11631         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11632         (mips_linux_close): Refactor as methods of mips_linux_nat.
11633         (_initialize_mips_linux_nat): Adjust to C++ification.
11634
11635         * aix-thread.c (aix_thread_target): New class.
11636         (aix_thread_ops): Now an aix_thread_target.
11637         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11638         (aix_thread_fetch_registers, aix_thread_store_registers)
11639         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11640         (aix_thread_thread_alive, aix_thread_pid_to_str)
11641         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11642         Refactor as methods of aix_thread_target.
11643         (init_aix_thread_ops): Delete.
11644         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11645         and complete_target_initialization.
11646         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11647         (rs6000_nat_target): New class.
11648         (the_rs6000_nat_target): New.
11649         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11650         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11651         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11652         (super_create_inferior): Delete.
11653         (_initialize_rs6000_nat): Adjust to C++ification.
11654
11655         * arm-linux-nat.c (arm_linux_nat_target): New class.
11656         (the_arm_linux_nat_target): New.
11657         (arm_linux_fetch_inferior_registers)
11658         (arm_linux_store_inferior_registers, arm_linux_read_description)
11659         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11660         (arm_linux_remove_hw_breakpoint)
11661         (arm_linux_region_ok_for_hw_watchpoint)
11662         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11663         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11664         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11665         arm_linux_nat_target.
11666         (_initialize_arm_linux_nat): Adjust to C++ification.
11667
11668         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11669         (the_aarch64_linux_nat_target): New.
11670         (aarch64_linux_fetch_inferior_registers)
11671         (aarch64_linux_store_inferior_registers)
11672         (aarch64_linux_child_post_startup_inferior)
11673         (aarch64_linux_read_description)
11674         (aarch64_linux_can_use_hw_breakpoint)
11675         (aarch64_linux_insert_hw_breakpoint)
11676         (aarch64_linux_remove_hw_breakpoint)
11677         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11678         (aarch64_linux_region_ok_for_hw_watchpoint)
11679         (aarch64_linux_stopped_data_address)
11680         (aarch64_linux_stopped_by_watchpoint)
11681         (aarch64_linux_watchpoint_addr_within_range)
11682         (aarch64_linux_can_do_single_step): Refactor as methods of
11683         aarch64_linux_nat_target.
11684         (super_post_startup_inferior): Delete.
11685         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11686
11687         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11688         (the_hppa_linux_nat_target): New.
11689         (hppa_linux_fetch_inferior_registers)
11690         (hppa_linux_store_inferior_registers): Refactor as methods of
11691         hppa_linux_nat_target.
11692         (_initialize_hppa_linux_nat): Adjust to C++ification.
11693
11694         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11695         (the_ia64_linux_nat_target): New.
11696         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11697         (ia64_linux_stopped_data_address)
11698         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11699         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11700         ia64_linux_nat_target methods.
11701         (super_xfer_partial): Delete.
11702         (_initialize_ia64_linux_nat): Adjust to C++ification.
11703
11704         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11705         (the_m32r_linux_nat_target): New.
11706         (m32r_linux_fetch_inferior_registers)
11707         (m32r_linux_store_inferior_registers): Refactor as
11708         m32r_linux_nat_target methods.
11709         (_initialize_m32r_linux_nat): Adjust to C++ification.
11710
11711         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11712         (the_m68k_linux_nat_target): New.
11713         (m68k_linux_fetch_inferior_registers)
11714         (m68k_linux_store_inferior_registers): Refactor as
11715         m68k_linux_nat_target methods.
11716         (_initialize_m68k_linux_nat): Adjust to C++ification.
11717
11718         * s390-linux-nat.c (s390_linux_nat_target): New class.
11719         (the_s390_linux_nat_target): New.
11720         (s390_linux_fetch_inferior_registers)
11721         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11722         (s390_insert_watchpoint, s390_remove_watchpoint)
11723         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11724         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11725         (s390_auxv_parse, s390_read_description): Refactor as methods of
11726         s390_linux_nat_target.
11727         (_initialize_s390_nat): Adjust to C++ification.
11728
11729         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11730         (the_sparc_linux_nat_target): New.
11731         (_initialize_sparc_linux_nat): Adjust to C++ification.
11732         * sparc-nat.c (sparc_fetch_inferior_registers)
11733         (sparc_store_inferior_registers): Remove target_ops parameter.
11734         * sparc-nat.h (sparc_fetch_inferior_registers)
11735         (sparc_store_inferior_registers): Remove target_ops parameter.
11736         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11737         (the_sparc64_linux_nat_target): New.
11738         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11739
11740         * spu-linux-nat.c (spu_linux_nat_target): New class.
11741         (the_spu_linux_nat_target): New.
11742         (spu_child_post_startup_inferior, spu_child_post_attach)
11743         (spu_child_wait, spu_fetch_inferior_registers)
11744         (spu_store_inferior_registers, spu_xfer_partial)
11745         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11746         methods.
11747         (_initialize_spu_nat): Adjust to C++ification.
11748
11749         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11750         (the_tilegx_linux_nat_target): New.
11751         (fetch_inferior_registers, store_inferior_registers):
11752         Refactor as methods.
11753         (_initialize_tile_linux_nat): Adjust to C++ification.
11754
11755         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11756         (the_xtensa_linux_nat_target): New.
11757         (xtensa_linux_fetch_inferior_registers)
11758         (xtensa_linux_store_inferior_registers): Refactor as
11759         xtensa_linux_nat_target methods.
11760         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11761
11762         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11763         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11764         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11765         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11766         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11767         (fbsd_stopped_by_sw_breakpoint)
11768         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11769         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11770         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11771         (fbsd_post_startup_inferior, fbsd_post_attach)
11772         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11773         (fbsd_set_syscall_catchpoint)
11774         (super_xfer_partial, super_resume, super_wait)
11775         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11776         (fbsd_handle_debug_trap): Remove target_ops parameter.
11777         (fbsd_nat_add_target): Delete.
11778         * fbsd-nat.h: Include "inf-ptrace.h".
11779         (fbsd_nat_add_target): Delete.
11780         (USE_SIGTRAP_SIGINFO): Define.
11781         (fbsd_nat_target): New class.
11782
11783         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11784         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11785         (amd64bsd_target): Delete.
11786         * amd64-bsd-nat.h: New file.
11787         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11788         "x86-bsd-nat.h".
11789         (amd64_fbsd_nat_target): New class.
11790         (the_amd64_fbsd_nat_target): New.
11791         (amd64fbsd_read_description): Refactor as method of
11792         amd64_fbsd_nat_target.
11793         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11794         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11795         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11796         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11797         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11798         (i386bsd_target): Delete.
11799         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11800         (i386bsd_fetch_inferior_registers)
11801         (i386bsd_store_inferior_registers): Declare.
11802         (i386_bsd_nat_target): New class.
11803         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11804         (the_i386_fbsd_nat_target): New.
11805         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11806         i386_fbsd_nat_target methods.
11807         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11808         (_initialize_i386fbsd_nat): Adjust to C++ification.
11809         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11810         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11811         (_initialize_x86_bsd_nat): Adjust to C++ification.
11812         * x86-bsd-nat.h: Include "x86-nat.h".
11813         (x86bsd_target): Delete declaration.
11814         (x86bsd_nat_target): New class.
11815
11816         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11817         (the_aarch64_fbsd_nat_target): New.
11818         (aarch64_fbsd_fetch_inferior_registers)
11819         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11820         aarch64_fbsd_nat_target.
11821         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11822         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11823         (the_alpha_bsd_nat_target): New.
11824         (alphabsd_fetch_inferior_registers)
11825         (alphabsd_store_inferior_registers): Refactor as
11826         alpha_bsd_nat_target methods.
11827         (_initialize_alphabsd_nat): Refactor as methods of
11828         alpha_bsd_nat_target.
11829         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11830         (the_amd64_nbsd_nat_target): New.
11831         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11832         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11833         (the_amd64_obsd_nat_target): New.
11834         (_initialize_amd64obsd_nat): Adjust to C++ification.
11835         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11836         (the_arm_fbsd_nat_target): New.
11837         (arm_fbsd_fetch_inferior_registers)
11838         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11839         (_initialize_arm_fbsd_nat): Refactor as methods of
11840         arm_fbsd_nat_target.
11841         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11842         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11843         (the_arm_netbsd_nat_target): New.
11844         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11845         arm_netbsd_nat_target.
11846         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11847         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11848         (the_hppa_nbsd_nat_target): New.
11849         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11850         hppa_nbsd_nat_target methods.
11851         (_initialize_hppanbsd_nat): Adjust to C++ification.
11852         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11853         (the_hppa_obsd_nat_target): New.
11854         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11855         methods of hppa_obsd_nat_target.
11856         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11857         add_target.
11858         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11859         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11860         add_target.
11861         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11862         (_initialize_i386obsd_nat): Use add_target.
11863         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11864         (the_m68k_bsd_nat_target): New.
11865         (m68kbsd_fetch_inferior_registers)
11866         (m68kbsd_store_inferior_registers): Refactor as methods of
11867         m68k_bsd_nat_target.
11868         (_initialize_m68kbsd_nat): Adjust to C++ification.
11869         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11870         (the_mips_fbsd_nat_target): New.
11871         (mips_fbsd_fetch_inferior_registers)
11872         (mips_fbsd_store_inferior_registers): Refactor as methods of
11873         mips_fbsd_nat_target.
11874         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11875         add_target.
11876         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11877         (the_mips_nbsd_nat_target): New.
11878         (mipsnbsd_fetch_inferior_registers)
11879         (mipsnbsd_store_inferior_registers): Refactor as methods of
11880         mips_nbsd_nat_target.
11881         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11882         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11883         (the_mips64_obsd_nat_target): New.
11884         (mips64obsd_fetch_inferior_registers)
11885         (mips64obsd_store_inferior_registers): Refactor as methods of
11886         mips64_obsd_nat_target.
11887         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11888         add_target.
11889         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11890         nbsd_nat_target.
11891         * nbsd-nat.h: Include "inf-ptrace.h".
11892         (nbsd_nat_target): New class.
11893         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11894         (obsd_wait): Refactor as methods of obsd_nat_target.
11895         (obsd_add_target): Delete.
11896         * obsd-nat.h: Include "inf-ptrace.h".
11897         (obsd_nat_target): New class.
11898         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11899         (the_ppc_fbsd_nat_target): New.
11900         (ppcfbsd_fetch_inferior_registers)
11901         (ppcfbsd_store_inferior_registers): Refactor as methods of
11902         ppc_fbsd_nat_target.
11903         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11904         add_target.
11905         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11906         (the_ppc_nbsd_nat_target): New.
11907         (ppcnbsd_fetch_inferior_registers)
11908         (ppcnbsd_store_inferior_registers): Refactor as methods of
11909         ppc_nbsd_nat_target.
11910         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11911         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11912         (the_ppc_obsd_nat_target): New.
11913         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11914         methods of ppc_obsd_nat_target.
11915         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11916         add_target.
11917         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11918         (the_sh_nbsd_nat_target): New.
11919         (shnbsd_fetch_inferior_registers)
11920         (shnbsd_store_inferior_registers): Refactor as methods of
11921         sh_nbsd_nat_target.
11922         (_initialize_shnbsd_nat): Adjust to C++ification.
11923         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11924         (inf_ptrace_xfer_partial): Delete.
11925         (sparc_xfer_partial, sparc_target): Delete.
11926         * sparc-nat.h (sparc_fetch_inferior_registers)
11927         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11928         (sparc_target): Delete function declaration.
11929         (sparc_target): New template class.
11930         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11931         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11932         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11933         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11934         add_target.
11935         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11936         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11937         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11938         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11939         add_target.
11940         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11941         (the_vax_bsd_nat_target): New.
11942         (vaxbsd_fetch_inferior_registers)
11943         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11944         methods.
11945         (_initialize_vaxbsd_nat): Adjust to C++ification.
11946
11947         * bsd-kvm.c (bsd_kvm_target): New class.
11948         (bsd_kvm_ops): Now a bsd_kvm_target.
11949         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11950         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11951         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11952         bsd_kvm_target.
11953         (bsd_kvm_return_one): Delete.
11954         (bsd_kvm_add_target): Adjust to C++ification.
11955
11956         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11957         (nto_procfs_target_procfs): New classes.
11958         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11959         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11960         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11961         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11962         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11963         (procfs_remove_hw_breakpoint, procfs_resume)
11964         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11965         (procfs_kill_inferior, procfs_store_registers)
11966         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11967         as methods of nto_procfs_target.
11968         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11969         (nto_native_ops): Delete.
11970         (procfs_open, procfs_native_open): Delete.
11971         (nto_native_ops): Now an nto_procfs_target_native.
11972         (init_procfs_targets): Adjust to C++ification.
11973         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11974         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11975         Refactor as methods of nto_procfs_target.
11976
11977         * go32-nat.c (go32_nat_target): New class.
11978         (the_go32_nat_target): New.
11979         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11980         (go32_store_registers, go32_xfer_partial, go32_files_info)
11981         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11982         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11983         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11984         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11985         (go32_target): Delete.
11986         (_initialize_go32_nat): Adjust to C++ification.
11987
11988         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11989         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11990         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11991         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11992         gnu_nat_target.
11993         (gnu_target): Delete.
11994         * gnu-nat.h (gnu_target): Delete.
11995         (gnu_nat_target): New class.
11996         * i386-gnu-nat.c (gnu_base_target): New.
11997         (i386_gnu_nat_target): New class.
11998         (the_i386_gnu_nat_target): New.
11999         (_initialize_i386gnu_nat): Adjust to C++ification.
12000
12001 2018-05-02  Pedro Alves  <palves@redhat.com>
12002
12003         * bfd-target.c (target_bfd_xclose): Rename to ...
12004         (target_bfd_close): ... this.
12005         (target_bfd_reopen): Adjust.
12006         * target.c (target_close): Remove references to to_xclose.
12007         * target.h (target_ops::to_xclose): Delete.
12008         (target_ops::to_close): Update comments.
12009
12010 2018-05-02  Pedro Alves  <palves@redhat.com>
12011
12012         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12013         "linux-nat.h".
12014         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12015         * inf-ptrace.c (inf_ptrace_register_u_offset)
12016         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12017         (inf_ptrace_store_register, inf_ptrace_store_registers)
12018         (inf_ptrace_trad_target): Move to ...
12019         * linux-nat-trad.c: ... this new file.
12020         * linux-nat-trad.h: New file.
12021         * linux-nat.c (linux_target_install_ops): Make extern.
12022         (linux_trad_target): Delete.
12023         * linux-nat.h (linux_trad_target): Delete declaration.
12024         (linux_target_install_ops): Declare.
12025         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12026         "linux-nat.h".
12027
12028 2018-05-02  Pedro Alves  <palves@redhat.com>
12029
12030         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12031         procfs_target/add_target here.
12032         * procfs.c (procfs_target): Make static.
12033         (_initialize_procfs): Call add_target here.
12034         * procfs.h (struct target_ops): Remove forward declaration.
12035         (procfs_target): Remove declaration.
12036         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12037
12038 2018-05-02  Pedro Alves  <palves@redhat.com>
12039
12040         * procfs.c (procfs_stopped_by_watchpoint)
12041         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12042         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12043         Forward declare.
12044         (procfs_use_watchpoints): Delete, move contents...
12045         (procfs_target): ... here.
12046         * procfs.h (procfs_use_watchpoints): Delete declaration.
12047         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12048         procfs_use_watchpoints.
12049         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12050         procfs_use_watchpoints.
12051
12052 2018-05-02  Tom Tromey  <tom@tromey.com>
12053
12054         PR python/20084:
12055         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12056         and var_zuinteger_unlimited.
12057         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12058         and PARAM_ZUINTEGER_UNLIMITED.
12059         (set_parameter_value): Handle var_zuinteger and
12060         var_zuinteger_unlimited.
12061         (add_setshow_generic): Likewise.
12062         (parmpy_init): Likewise.
12063
12064 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12065
12066         PR rust/23124
12067         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12068         pointer is not null before dereferencing it.
12069
12070 2018-04-30  Tom Tromey  <tom@tromey.com>
12071
12072         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12073         is_mi_like_p.
12074
12075 2018-04-30  Tom Tromey  <tom@tromey.com>
12076
12077         * breakpoint.c (mention): Remove use of is_mi_like_p.
12078         (print_mention_ranged_breakpoint): Likewise.
12079         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12080         of is_mi_like_p.
12081
12082 2018-04-30  Tom Tromey  <tom@tromey.com>
12083
12084         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12085
12086 2018-04-30  Tom Tromey  <tom@tromey.com>
12087
12088         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12089         (info_spu_event_command): Remove some uses of is_mi_like_p.
12090
12091 2018-04-30  Tom Tromey  <tom@tromey.com>
12092
12093         * python/py-framefilter.c (py_print_single_arg)
12094         (enumerate_locals, py_print_args, py_print_frame): Remove some
12095         uses of is_mi_like_p.
12096
12097 2018-04-30  Tom Tromey  <tom@tromey.com>
12098
12099         * ui-out.c: Update.
12100         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12101         * ui-out.h (ui_out::is_mi_like_p): Now const.
12102         (ui_out::do_is_mi_like_p): Now const.
12103         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12104
12105 2018-04-30  Tom Tromey  <tom@tromey.com>
12106
12107         * varobj.c (varobj_set_visualizer): Use new_reference.
12108         * python/python.c (gdbpy_decode_line): Use new_reference.
12109         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12110         new_reference.
12111
12112 2018-04-30  Tom Tromey  <tom@tromey.com>
12113
12114         * varobj.c (install_new_value): Use new_reference.
12115         * value.h (value_incref): Return void.  Swap intro comment with
12116         value_decref.
12117         * value.c (set_value_parent): Use new_reference.
12118         (value_incref): Return void.  Update intro comment.
12119         (release_value): Use new_reference.
12120         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12121
12122 2018-04-30  Tom Tromey  <tom@tromey.com>
12123
12124         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12125         * gdb_bfd.h (new_bfd_ref): Remove.
12126         (gdb_bfd_open): Update comment.
12127         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12128         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12129         (gdb_bfd_fdopenr): Use new_reference.
12130         * exec.c (exec_file_attach): Use new_reference.
12131
12132 2018-04-30  Tom Tromey  <tom@tromey.com>
12133
12134         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12135         method.
12136
12137 2018-04-30  Tom Tromey  <tom@tromey.com>
12138
12139         * jit.c (jit_read_code_entry): Use type_align.
12140         * i386-tdep.c (i386_gdbarch_init): Don't call
12141         set_gdbarch_long_long_align_bit.
12142         * gdbarch.sh: Remove long_long_align_bit.
12143         * gdbarch.c, gdbarch.h: Rebuild.
12144         * arc-tdep.c (arc_type_align): New function.
12145         (arc_gdbarch_init): Use arc_type_align.  Don't call
12146         set_gdbarch_long_long_align_bit.
12147
12148 2018-04-30  Tom Tromey  <tom@tromey.com>
12149
12150         * rust-lang.c (rust_type_alignment): Remove.
12151         (rust_composite_type): Use type_align.
12152
12153 2018-04-30  Tom Tromey  <tom@tromey.com>
12154
12155         * NEWS: Mention Type.align.
12156         * python/py-type.c (typy_get_alignof): New function.
12157         (type_object_getset): Add "alignof".
12158
12159 2018-04-30  Tom Tromey  <tom@tromey.com>
12160
12161         PR exp/17095:
12162         * NEWS: Update.
12163         * std-operator.def (UNOP_ALIGNOF): New operator.
12164         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12165         New.
12166         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12167         * c-lang.c (c_op_print_tab): Add alignof.
12168         * c-exp.y (ALIGNOF): New token.
12169         (exp): Add "ALIGNOF" production.
12170         (ident_tokens): Add _Alignof and alignof.
12171
12172 2018-04-30  Tom Tromey  <tom@tromey.com>
12173
12174         * i386-tdep.c (i386_type_align): New function.
12175         (i386_gdbarch_init): Update.
12176         * gdbarch.sh (type_align): New method.
12177         * gdbarch.c, gdbarch.h: Rebuild.
12178         * arch-utils.h (default_type_align): Declare.
12179         * arch-utils.c (default_type_align): New function.
12180         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12181         (struct type) <align_log2>: New field.
12182         <instance_flags>: Now a bitfield.
12183         (TYPE_RAW_ALIGN): New macro.
12184         (type_align, type_raw_align, set_type_align): Declare.
12185         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12186         functions.
12187         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12188         (get_alignment, maybe_set_alignment): New functions.
12189         (read_structure_type, read_enumeration_type, read_array_type)
12190         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12191         (read_subrange_type, read_base_type): Set type alignment.
12192
12193 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12194
12195         * dwarf2read.c (read_index_from_section): Use bool.
12196
12197 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12198
12199         PR gdb/22950
12200         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12201         with #ifdef.
12202
12203 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12204
12205         PR build/22873
12206         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12207         last step, and do it atomically.
12208
12209 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12210
12211         * compile/compile-c-types.c (convert_int, convert_float):
12212         Update for C FE v1.
12213
12214 2018-04-27  Tom Tromey  <tom@tromey.com>
12215
12216         PR rust/22545:
12217         * rust-lang.c (rust_inclusive_range_type_p): New function.
12218         (rust_range): Handle inclusive ranges.
12219         (rust_compute_range): Likewise.
12220         * rust-exp.y (struct rust_op) <inclusive>: New field.
12221         (DOTDOTEQ): New constant.
12222         (range_expr): Add "..=" productions.
12223         (operator_tokens): Add "..=" token.
12224         (ast_range): Add "inclusive" parameter.
12225         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12226         ranges.
12227         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12228         bounds values.
12229         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12230         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12231         Update comments.
12232         * expprint.c (print_subexp_standard): Handle new bounds values.
12233         (dump_subexp_body_standard): Likewise.
12234
12235 2018-04-27  Tom Tromey  <tom@tromey.com>
12236
12237         * configure: Rebuild.
12238         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12239         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12240         "OVERRIDE".
12241         (class symbol_needs_eval_context): Likewise.
12242         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12243         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12244         "virtual".
12245         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12246         "override".
12247         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12248         * aarch64-tdep.c (instruction_reader::read): Use "override".
12249         (instruction_reader_test::read): Likewise.
12250         * arm-tdep.c (instruction_reader::read): Use "override".
12251         (instruction_reader_thumb::read): Likewise.
12252
12253 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12254
12255         PR remote/9665
12256         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12257         instead of remote_send.
12258         (remote_send): Remove.
12259
12260 2018-04-26  Pedro Alves  <palves@redhat.com>
12261
12262         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12263         find_function_start_sal instead of find_pc_line.
12264
12265 2018-04-26  Pedro Alves  <palves@redhat.com>
12266
12267         * breakpoint.c (set_breakpoint_location_function): Handle
12268         mst_data_gnu_ifunc.
12269         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12270         * elfread.c (elf_symtab_read): Give data symbols with
12271         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12272         (elf_rel_plt_read): Update comment.
12273         * linespec.c (convert_linespec_to_sals): Handle
12274         mst_data_gnu_ifunc.
12275         (minsym_found): Handle mst_data_gnu_ifunc.
12276         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12277         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12278         * parse.c (find_minsym_type_and_address): Handle
12279         mst_data_gnu_ifunc.
12280         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12281         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12282         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12283         comment.
12284         <mst_data_gnu_ifunc>: New enumerator.
12285
12286 2018-04-26  Pedro Alves  <palves@redhat.com>
12287
12288         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12289         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12290         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12291         Handle it.
12292         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12293         (lookup_minimal_symbol_by_pc): Adjust.
12294         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12295         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12296         * minsyms.h (lookup_msym_prefer): New enum.
12297         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12298         parameter by a lookup_msym_prefer parameter.
12299
12300 2018-04-26  Pedro Alves  <palves@redhat.com>
12301
12302         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12303         ends in "@plt" instead of looking at the symbol's section.
12304
12305 2018-04-26  Pedro Alves  <palves@redhat.com>
12306
12307         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12308         all references.
12309         (find_pc_partial_function_gnu_ifunc): Rename to ...
12310         (find_pc_partial_function): ... this, and remove references to
12311         'is_gnu_ifunc_p'.
12312         (find_pc_partial_function): Delete old implementation.
12313         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12314
12315 2018-04-26  Pedro Alves  <palves@redhat.com>
12316
12317         * linespec.c (struct bound_minimal_symbol_search_key): New.
12318         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12319         skip first line if we found a GNU ifunc minimal symbol by name.
12320         (compare_msymbols): Change parameters to work with a destructured
12321         lhs minsym.
12322         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12323         functions.
12324
12325 2018-04-26  Pedro Alves  <palves@redhat.com>
12326
12327         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12328         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12329         address/name.
12330         (add_location_to_breakpoint): Store the minsym and the objfile in
12331         the breakpoint location.
12332         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12333         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12334         Record the minsym in the sal.
12335         * symtab.h (symtab_and_line) <msymbol>: New field.
12336
12337 2018-04-26  Pedro Alves  <palves@redhat.com>
12338
12339         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12340         unless we actually resolved the ifunc.
12341
12342 2018-04-26  Pedro Alves  <palves@redhat.com>
12343
12344         * c-exp.y (variable production): Prefer ifunc minsyms over
12345         regular function symbols.
12346         * symtab.c (find_gnu_ifunc): New function.
12347         * minsyms.h (lookup_msym_prefer): New enum.
12348         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12349         parameter by a lookup_msym_prefer parameter.
12350         * symtab.h (find_gnu_ifunc): New declaration.
12351
12352 2018-04-26  Pedro Alves  <palves@redhat.com>
12353
12354         * blockframe.c (find_gnu_ifunc_target_type): New function.
12355         (find_function_type): New.
12356         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12357         return a value with a memory address.
12358         (eval_call): For calls to GNU ifunc functions, try to find the
12359         type of the target function from the type that the resolver
12360         returns.
12361         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12362         symbols.
12363         * infcall.c (find_function_return_type): Delete.
12364         (find_function_addr): Add 'function_type' parameter.  For calls to
12365         GNU ifunc functions, try to find the type of the target function
12366         from the type that the resolver returns, and return it via
12367         FUNCTION_TYPE.
12368         (call_function_by_hand_dummy): Adjust to use the function type
12369         returned by find_function_addr.
12370         (find_function_addr): Add 'function_type' parameter and move
12371         description here.
12372         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12373         declarations.
12374
12375 2018-04-26  Pedro Alves  <palves@redhat.com>
12376
12377         * c-exp.y (variable production): Skip finding an alias for ifunc
12378         symbols.
12379
12380 2018-04-26  Pedro Alves  <palves@redhat.com>
12381
12382         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12383
12384 2018-04-25  Pedro Alves  <palves@redhat.com>
12385
12386         * infcmd.c (kill_command): Print the pid as string, not the whole
12387         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12388         message.
12389         * remote.c (remote_detach_1): Print the pid as string, not the
12390         whole thread's ptid.
12391
12392 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12393             Sergio Durigan Junior  <sergiodj@redhat.com>
12394             Pedro Alves  <palves@redhat.com>
12395
12396         * infcmd.c (kill_command): Print message when inferior has
12397         been killed.
12398         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12399         '1'.
12400         (add_inferior): Improve message printed when
12401         'print_inferior_events' is on.
12402         (exit_inferior): Remove message printed when
12403         'print_inferior_events' is on.
12404         (detach_inferior): Improve message printed when
12405         'print_inferior_events' is on.
12406         (initialize_inferiors): Use 'add_inferior_silent' to set
12407         'current_inferior_'.
12408         * inferior.h (print_inferior_events): Declare here as
12409         'extern'.
12410         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12411         '[Detaching...]' messages when 'print_inferior_events' is on.
12412         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12413         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12414         'Detaching after fork from child...', replace it by '... from
12415         parent...'.
12416         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12417         prefix/suffix when printing 'Detaching...' messages.  Print
12418         them when 'print_inferior_events' is on.
12419         * remote.c (remote_detach_1): Print message when detaching
12420         from inferior and '!is_fork_parent'.
12421
12422 2018-04-24  Tom Tromey  <tom@tromey.com>
12423
12424         * cli-out.h: Reindent.
12425
12426 2018-04-24  Tom Tromey  <tom@tromey.com>
12427
12428         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12429         (cli_ui_out::do_field_string): Use fputs_filtered.
12430         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12431
12432 2018-04-23  Tom Tromey  <tom@tromey.com>
12433
12434         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12435         gdb::unique_xmalloc_ptr.
12436
12437 2018-04-23  Tom Tromey  <tom@tromey.com>
12438
12439         * configure: Rebuild.
12440
12441 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12442
12443         PR gdb/23095
12444         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12445         prepare_for_testing.  Set normal_bp to r_debug_state if target
12446         is bsd.
12447
12448 2018-04-21  Pedro Alves  <palves@redhat.com>
12449             Rajendra SY  <rajendra.sy@gmail.com>
12450
12451         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12452         * remote.c (extended_remote_attach): In all-stop mode, mark the
12453         thread as executing.
12454
12455 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12456
12457         * thread.c (thread_apply_all_command): Fix comment.
12458         (thread_command): Fix comment.
12459
12460 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12461
12462         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12463         parameter.
12464         * features/aarch64-core.c (create_feature_aarch64_core):
12465         Regenerate.
12466         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12467         Likewise.
12468         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12469         Likewise.
12470         * features/i386/32bit-avx512.c
12471         (create_feature_i386_32bit_avx512): Likewise.
12472         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12473         Likewise.
12474         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12475         Likewise.
12476         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12477         Likewise.
12478         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12479         Likewise.
12480         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12481         Likewise.
12482         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12483         Likewise.
12484         * features/i386/64bit-avx512.c
12485         (create_feature_i386_64bit_avx512): Likewise.
12486         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12487         Likewise.
12488         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12489         Likewise.
12490         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12491         Likewise.
12492         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12493         Likewise.
12494         * features/i386/64bit-segments.c
12495         (create_feature_i386_64bit_segments): Likewise.
12496         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12497         Likewise.
12498         * features/i386/x32-core.c
12499         (create_feature_i386_x32_core): Likewise.
12500         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12501         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12502         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12503         * target-descriptions.c: In generated code, don't pass xml
12504         filename.
12505
12506 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12507
12508         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12509         (print_xml_feature::visit_post): Likewise.
12510         (print_xml_feature::visit): Likewise.
12511         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12512         (print_xml_feature): Add new class.
12513         * regformats/regdat.sh: Null xmltarget on feature targets.
12514         * target-descriptions.c (struct target_desc): Add xmltarget.
12515         (maintenance_check_tdesc_xml_convert): Add unittest function.
12516         (tdesc_get_features_xml): Add function to get xml.
12517         (maintenance_check_xml_descriptions): Test xml generation.
12518         * xml-tdesc.c (string_read_description_xml): Add function.
12519         * xml-tdesc.h (string_read_description_xml): Add declaration.
12520
12521 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12522
12523         * features/Makefile: Add feature marker to targets with new style
12524         target descriptions.
12525         * regformats/aarch64.dat: Regenerate.
12526         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12527         * regformats/i386/amd64-avx-linux.dat: Likewise.
12528         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12529         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12530         * regformats/i386/amd64-linux.dat: Likewise.
12531         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12532         * regformats/i386/amd64.dat: Likewise.
12533         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12534         * regformats/i386/i386-avx-linux.dat: Likewise.
12535         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12536         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12537         * regformats/i386/i386-linux.dat: Likewise.
12538         * regformats/i386/i386-mmx-linux.dat: Likewise.
12539         * regformats/i386/i386-mpx-linux.dat: Likewise.
12540         * regformats/i386/i386.dat: Likewise.
12541         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12542         * regformats/i386/x32-avx-linux.dat: Likewise.
12543         * regformats/i386/x32-linux.dat: Likewise.
12544         * regformats/tic6x-c62x-linux.dat: Likewise.
12545         * regformats/tic6x-c64x-linux.dat: Likewise.
12546         * regformats/tic6x-c64xp-linux.dat: Likewise.
12547         * regformats/regdat.sh: Parse feature marker.
12548
12549 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12550
12551         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12552         (tdesc_osabi_name): Likewise.
12553         * target-descriptions.c (tdesc_architecture_name): Add new
12554         function.
12555         (tdesc_osabi_name): Likewise.
12556
12557 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12558
12559         * common/tdesc.c (tdesc_predefined_type): Move to here.
12560         (tdesc_named_type): Likewise.
12561         (tdesc_create_vector): Likewise.
12562         (tdesc_create_struct): Likewise.
12563         (tdesc_set_struct_size): Likewise.
12564         (tdesc_create_union): Likewise.
12565         (tdesc_create_flags): Likewise.
12566         (tdesc_create_enum): Likewise.
12567         (tdesc_add_field): Likewise.
12568         (tdesc_add_typed_bitfield): Likewise.
12569         (tdesc_add_bitfield): Likewise.
12570         (tdesc_add_flag): Likewise.
12571         (tdesc_add_enum_value): Likewise.
12572         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12573         (struct tdesc_type_vector): Likewise.
12574         (struct tdesc_type_field): Likewise.
12575         (struct tdesc_type_with_fields): Likewise.
12576         (tdesc_create_enum): Add declaration.
12577         (tdesc_add_typed_bitfield): Likewise.
12578         (tdesc_add_enum_value): Likewise.
12579         * target-descriptions.c (tdesc_type_field): Move from here.
12580         (tdesc_type_builtin): Likewise.
12581         (tdesc_type_vector): Likewise.
12582         (tdesc_type_with_fields): Likewise.
12583         (tdesc_predefined_types): Likewise.
12584         (tdesc_named_type): Likewise.
12585         (tdesc_create_vector): Likewise.
12586         (tdesc_create_struct): Likewise.
12587         (tdesc_set_struct_size): Likewise.
12588         (tdesc_create_union): Likewise.
12589         (tdesc_create_flags): Likewise.
12590         (tdesc_create_enum): Likewise.
12591         (tdesc_add_field): Likewise.
12592         (tdesc_add_typed_bitfield): Likewise.
12593         (tdesc_add_bitfield): Likewise.
12594         (tdesc_add_flag): Likewise.
12595         (tdesc_add_enum_value): Likewise.
12596         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12597         (tdesc_add_typed_bitfield): Likewise.
12598         (tdesc_add_enum_value): Likewise.
12599
12600 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12601
12602         * common/tdesc.c (tdesc_feature::accept): Move to here.
12603         (tdesc_feature::operator==): Likewise.
12604         (tdesc_create_reg): Likewise.
12605         * common/tdesc.h (tdesc_type_kind): Likewise.
12606         (struct tdesc_type): Likewise.
12607         (struct tdesc_feature): Likewise.
12608         * regformats/regdat.sh: Create a feature.
12609         * target-descriptions.c (tdesc_type_kind): Move from here.
12610         (tdesc_type): Likewise.
12611         (tdesc_type_up): Likewise.
12612         (tdesc_feature): Likewise.
12613         (tdesc_create_reg): Likewise.
12614
12615 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12616
12617         * Makefile.in: Add arch/tdesc.c
12618         * common/tdesc.c: New file.
12619         * common/tdesc.h (tdesc_element_visitor): Move to here.
12620         (tdesc_element): Likewise.
12621         (tdesc_reg): Likewise.
12622         (tdesc_reg_up): Likewise.
12623         * regformats/regdef.h (reg): Add offset to constructors.
12624         * target-descriptions.c (tdesc_element_visitor): Move from here.
12625         (tdesc_element): Likewise.
12626         (tdesc_reg): Likewise.
12627         (tdesc_reg_up): Likewise.
12628
12629 2018-04-17  Tom Tromey  <tom@tromey.com>
12630
12631         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12632         discriminant field.
12633
12634 2018-04-17  Tom Tromey  <tom@tromey.com>
12635
12636         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12637
12638 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12639
12640         * symtab.c (print_symbol_info): Skip printing filename and line
12641         number when `last' is NULL.
12642         (symtab_symbol_info): Use empty string instead of NULL for first
12643         invocation of print_symbol_info.
12644         (rbreak_command): Pass NULL to `last' parameter of
12645         print_symbol_info.
12646
12647 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12648
12649         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12650         instead of nullptr.
12651
12652 2018-04-16  Pedro Alves  <palves@redhat.com>
12653
12654         * MAINTAINERS (sh): Remove.
12655         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12656         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12657         (ALLDEPFILES): Remove sh64-tdep.c.
12658         * NEWS: Mentions that support for SH-5/SH64 is removed.
12659         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12660         (sh*-*-openbsd*): Ditto.
12661         (sh64-*-elf*): Remove.
12662         (sh*): Remove.
12663         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12664         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12665         * sh-tdep.c: No longer include "sh64-tdep.h".
12666         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12667         * sh64-tdep.c, sh64-tdep.h: Remove files.
12668
12669 2018-04-16  Pedro Alves  <palves@redhat.com>
12670
12671         * MAINTAINERS: Remove m88k.
12672         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12673         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12674         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12675         * NEWS: Mention that support for m88k was removed.
12676         * configure.host (m88*-*-*): Remove support.
12677         * configure.nat (m88k-*-*): Remove support.
12678         * configure.tgt (m88*-*-openbsd*): Remove.
12679         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12680
12681 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12682
12683         * configure.tgt (x86_tobjs): New variable.
12684         (amd64_tobjs, i386_tobjs): Use it.
12685
12686 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12687
12688         * symtab.c (print_symbol_info): Precede the symbol definition by
12689         the line number when available.
12690         * NEWS: Advertise this enhancement.
12691
12692 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12693
12694         * NEWS (New options): announce set/show record btrace cpu.
12695         * btrace.c: Include record-btrace.h.
12696         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12697         the vendor is unknown.
12698         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12699         Maybe overwrite the btrace configuration's cpu.
12700         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12701         (btrace_fetch): Add cpu parameter.  Update callers.
12702         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12703         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12704         errata workarounds if the vendor is unknown.
12705         * python/py-record-btrace.c: Include record-btrace.h.
12706         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12707         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12708         * record-btrace.c (record_btrace_cpu_state_kind): New.
12709         (record_btrace_cpu): New.
12710         (set_record_btrace_cpu_cmdlist): New.
12711         (record_btrace_get_cpu): New.
12712         (require_btrace_thread, record_btrace_info)
12713         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12714         (cmd_set_record_btrace_cpu_none): New.
12715         (cmd_set_record_btrace_cpu_auto): New.
12716         (cmd_set_record_btrace_cpu): New.
12717         (cmd_show_record_btrace_cpu): New.
12718         (_initialize_record_btrace): Initialize set/show record btrace cpu
12719         commands.
12720         * record-btrace.h (record_btrace_get_cpu): New.
12721
12722 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12723
12724         * record.c (set_record_command): Fix typo in message.
12725
12726 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12727
12728         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12729
12730 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12731
12732         * infrun.c (process_event_stop_test): Call
12733         gdbarch_in_indirect_branch_thunk.
12734         * gdbarch.sh (in_indirect_branch_thunk): New.
12735         * gdbarch.c: Regenerated.
12736         * gdbarch.h: Regenerated.
12737         * x86-tdep.h: New.
12738         * x86-tdep.c: New.
12739         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12740         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12741         (ALLDEPFILES): Add x86-tdep.c.
12742         * arch-utils.h (default_in_indirect_branch_thunk): New.
12743         * arch-utils.c (default_in_indirect_branch_thunk): New.
12744         * i386-tdep: Include x86-tdep.h.
12745         (i386_in_indirect_branch_thunk): New.
12746         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12747         function.
12748         * amd64-tdep: Include x86-tdep.h.
12749         (amd64_in_indirect_branch_thunk): New.
12750         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12751
12752 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12753
12754         PR gdb/23053
12755         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12756         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12757         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12758         regression.
12759
12760 2018-04-12  Tom Tromey  <tom@tromey.com>
12761
12762         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12763         (rust_evaluate_subexp): Likewise.
12764
12765 2018-04-12  Pedro Alves  <palves@redhat.com>
12766
12767         * procfs.c (procfs_detach): Make forward declaration's prototype
12768         match definition's protototype.
12769         (proc_get_LDT_entry): Remove stale do_cleanups call.
12770
12771 2018-04-12  Pedro Alves  <palves@redhat.com>
12772
12773         * target.h (target_ops::to_has_exited): Delete.
12774         (target_has_exited): Delete.
12775         * target-delegates.c: Regenerate.
12776
12777 2018-04-11  Pedro Alves  <palves@redhat.com>
12778
12779         * target.c (fileio_fh_t::t): Add comment.
12780         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12781         (target_fileio_close): Handle a NULL target.
12782         (invalidate_fileio_fh): New.
12783         (target_close): Call it.
12784         * remote.c (remote_hostio_send_command): No longer check whether
12785         remote_desc is open.
12786
12787 2018-04-11  Pedro Alves  <palves@redhat.com>
12788
12789         * target.c (fileio_fh_t): Make it a named struct instead of a
12790         typedef.
12791         (fileio_fh_t::is_closed): New method.
12792         (DEF_VEC_O (fileio_fh_t)): Remove.
12793         (fileio_fhandles): Now a std::vector.
12794         (is_closed_fileio_fh): Delete.
12795         (acquire_fileio_fd): Adjust.  Rename parameters.
12796         (release_fileio_fd): Adjust.
12797         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12798         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12799         (target_fileio_close): Adjust.
12800
12801 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12802
12803         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12804         index.
12805
12806 2018-04-10  Pedro Alves  <palves@redhat.com>
12807
12808         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12809         (scoped_finish_thread_state): New class.
12810         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12811         cleanup.
12812         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12813         (fetch_inferior_event, normal_stop): Likewise.
12814         * thread.c (finish_thread_state_cleanup): Delete.
12815
12816 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12817             Pedro Alves  <palves@redhat.com>
12818
12819         * value.c: Include "selftest.h" and "common/array-view.h".
12820         (struct range) <operator ==>: New.
12821         (test_ranges_contain): New.
12822         (check_ranges_vector): New.
12823         (test_insert_into_bit_range_vector): New.
12824         (_initialize_values): Register selftests.
12825         * common/array-view.h (operator==, operator!=): New.
12826
12827 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12828
12829         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12830         an iterator.
12831         * inline-frame.c: Include <algorithm>.
12832         (struct inline_state): Add constructor.
12833         (inline_state_s): Remove.
12834         (DEF_VEC_O(inline_state_s)): Remove.
12835         (inline_states): Change type to std::vector.
12836         (find_inline_frame_state): Adjust to std::vector.
12837         (allocate_inline_frame_state): Remove.
12838         (clear_inline_frame_state): Adjust to std::vector.
12839         (skip_inline_frames): Adjust to std::vector.
12840
12841 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12842
12843         * tracepoint.h (struct trace_state_variable): Add constructor.
12844         <name>: Change type to std::string.
12845         * tracepoint.c (tsv_s): Remove.
12846         (DEF_VEC_O(tsv_s)): Remove.
12847         (tvariables): Change to std::vector.
12848         (create_trace_state_variable): Adjust to std::vector.
12849         (find_trace_state_variable): Likewise.
12850         (find_trace_state_variable_by_number): Likewise.
12851         (delete_trace_state_variable): Likewise.
12852         (trace_variable_command): Adjust to std::string.
12853         (delete_trace_variable_command): Likewise.
12854         (tvariables_info_1): Adjust to std::vector.
12855         (save_trace_state_variables): Likewise.
12856         (start_tracing): Likewise.
12857         (merge_uploaded_trace_state_variables): Adjust to std::vector
12858         and std::string.
12859         * target.h (struct target_ops)
12860         <to_download_trace_state_variable>: Pass reference to
12861         trace_state_variable.
12862         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12863         * target-delegates.c: Re-generate.
12864         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12865         (mi_tsv_deleted): Likewise.
12866         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12867         * remote.c (remote_download_trace_state_variable): Change
12868         pointer to reference and adjust.
12869         * make-target-delegates (parse_argtypes): Handle references.
12870         (write_function_header): Likewise.
12871         (munge_type): Likewise.
12872
12873 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12874
12875         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12876         string_view-selftests.c.
12877         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12878         testsuite.
12879         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12880         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12881         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12882         * unittests/basic_string_view/element_access/char/1.cc:
12883         Likewise.
12884         * unittests/basic_string_view/element_access/char/empty.cc:
12885         Likewise.
12886         * unittests/basic_string_view/element_access/char/front_back.cc:
12887         Likewise.
12888         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12889         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12890         Likewise.
12891         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12892         Likewise.
12893         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12894         Likewise.
12895         * unittests/basic_string_view/operations/compare/char/1.cc:
12896         Likewise.
12897         * unittests/basic_string_view/operations/compare/char/13650.cc:
12898         Likewise.
12899         * unittests/basic_string_view/operations/copy/char/1.cc:
12900         Likewise.
12901         * unittests/basic_string_view/operations/data/char/1.cc:
12902         Likewise.
12903         * unittests/basic_string_view/operations/find/char/1.cc:
12904         Likewise.
12905         * unittests/basic_string_view/operations/find/char/2.cc:
12906         Likewise.
12907         * unittests/basic_string_view/operations/find/char/3.cc:
12908         Likewise.
12909         * unittests/basic_string_view/operations/find/char/4.cc:
12910         Likewise.
12911         * unittests/basic_string_view/operations/rfind/char/1.cc:
12912         Likewise.
12913         * unittests/basic_string_view/operations/rfind/char/2.cc:
12914         Likewise.
12915         * unittests/basic_string_view/operations/rfind/char/3.cc:
12916         Likewise.
12917         * unittests/basic_string_view/operations/substr/char/1.cc:
12918         Likewise.
12919         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12920         * unittests/string_view-selftests.c: New file.
12921
12922 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12923
12924         * unittests/basic_string_view/capacity/1.cc: New file.
12925         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12926         * unittests/basic_string_view/cons/char/1.cc: New file.
12927         * unittests/basic_string_view/cons/char/2.cc: New file.
12928         * unittests/basic_string_view/cons/char/3.cc: New file.
12929         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12930         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12931         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12932         * unittests/basic_string_view/element_access/char/1.cc: New file.
12933         * unittests/basic_string_view/element_access/char/2.cc: New file.
12934         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12935         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12936         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12937         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12938         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12939         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12940         * unittests/basic_string_view/include.cc: New file.
12941         * unittests/basic_string_view/inserters/char/1.cc: New file.
12942         * unittests/basic_string_view/inserters/char/2.cc: New file.
12943         * unittests/basic_string_view/inserters/char/3.cc: New file.
12944         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12945         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12946         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12947         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12948         * unittests/basic_string_view/literals/types.cc: New file.
12949         * unittests/basic_string_view/literals/values.cc: New file.
12950         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12951         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12952         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12953         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12954         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12955         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12956         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12957         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12958         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12959         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12960         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12961         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12962         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12963         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12964         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12965         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12966         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12967         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12968         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12969         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12970         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12971         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12972         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12973         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12974         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12975         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12976         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12977         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12978         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12979         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12980         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12981         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12982         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12983         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12984         * unittests/basic_string_view/operators/char/2.cc: New file.
12985         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12986         * unittests/basic_string_view/range_access/char/1.cc: New file.
12987         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12988         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12989         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12990         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12991         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12992         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12993         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12994         * unittests/basic_string_view/typedefs.cc: New file.
12995         * unittests/basic_string_view/types/1.cc: New file.
12996
12997 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12998
12999         * common/gdb_string_view.h: Remove libstdc++ implementation
13000         details, adjust to gdb reality.
13001         * common/gdb_string_view.tcc: Likewise.
13002         * cli/cli-script.c (struct string_view): Remove.
13003         (user_args) <m_args>: Change element type to gdb::string_view.
13004         (user_args::insert_args): Adjust.
13005
13006 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13007
13008         * common/gdb_string_view.h: New file.
13009         * common/gdb_string_view.tcc: New file.
13010
13011 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13012
13013         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13014         * configure: Re-generate.
13015
13016 2018-04-09  Pedro Alves  <palves@redhat.com>
13017
13018         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13019         (set_target_gdbarch): Call
13020         gdb::observers::architecture_changed.notify instead of
13021         observer_notify_architecture_changed.
13022
13023 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13024
13025         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13026         (do_restore_current_traceframe_cleanup): Remove.
13027         (restore_current_traceframe_cleanup_dtor): Remove.
13028         (make_cleanup_restore_current_traceframe): Remove.
13029         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13030         New.
13031         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13032         * infrun.c (fetch_inferior_event): Use
13033         scoped_restore_current_traceframe.
13034
13035 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13036
13037         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13038         Remove.
13039         <n_allocated_type_units>: Remove.
13040         <all_type_units>: Change to std::vector.
13041         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13042         to std::vector change.
13043         (dwarf2_per_objfile::get_cutu): Likewise.
13044         (dwarf2_per_objfile::get_tu): Likewise.
13045         (create_signatured_type_table_from_index): Likewise.
13046         (create_signatured_type_table_from_debug_names): Likewise.
13047         (dw2_symtab_iter_next): Likewise.
13048         (dw2_print_stats): Likewise.
13049         (dw2_expand_all_symtabs): Likewise.
13050         (dw2_expand_marked_cus): Likewise.
13051         (dw2_debug_names_iterator::next): Likewise.
13052         (dwarf2_initialize_objfile): Likewise.
13053         (add_signatured_type_cu_to_table): Likewise.
13054         (create_all_type_units): Likewise.
13055         (add_type_unit): Likewise.
13056         (struct tu_abbrev_offset): Add constructor.
13057         (build_type_psymtabs_1): Adjust to std::vector change.
13058         (print_tu_stats): Likewise.
13059         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13060         (write_debug_names): Likewise.
13061
13062 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13063
13064         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13065         Make an std::vector.
13066         <n_comp_units>: Remove.
13067         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13068         to std::vector change.
13069         (dwarf2_per_objfile::get_cutu): Likewise.
13070         (dwarf2_per_objfile::get_cu): Likewise.
13071         (create_cus_from_index): Likewise.
13072         (create_addrmap_from_index): Likewise.
13073         (create_addrmap_from_aranges): Likewise.
13074         (dwarf2_read_index): Likewise.
13075         (dw2_find_last_source_symtab): Likewise.
13076         (dw2_map_symtabs_matching_filename): Likewise.
13077         (dw2_symtab_iter_next): Likewise.
13078         (dw2_print_stats): Likewise.
13079         (dw2_expand_all_symtabs): Likewise.
13080         (dw2_expand_symtabs_with_fullname): Likewise.
13081         (dw2_expand_marked_cus): Likewise.
13082         (dw2_map_symbol_filenames): Likewise.
13083         (create_cus_from_debug_names): Likewise.
13084         (dwarf2_read_debug_names): Likewise.
13085         (dw2_debug_names_iterator::next): Likewise.
13086         (dwarf2_initialize_objfile): Likewise.
13087         (set_partial_user): Likewise.
13088         (dwarf2_build_psymtabs_hard): Likewise.
13089         (read_comp_units_from_section): Remove arguments, adjust to
13090         std::vector change.
13091         (create_all_comp_units): Adjust to std::vector and
13092         read_comp_units_from_section changes.
13093         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13094         change.
13095         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13096         (psyms_seen_size): Likewise.
13097         (write_gdbindex): Likewise.
13098         (write_debug_names): Likewise.
13099
13100 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13101
13102         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13103         with dwarf2_per_objfile.
13104         (create_cus_from_index): Likewise.
13105         (create_signatured_type_table_from_index): Likewise.
13106         (dwarf2_read_index): Likewise.
13107         (dwarf2_initialize_objfile): Likewise.
13108         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13109         per_cu rather than get_dwarf2_per_objfile.
13110
13111 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13112
13113         * dwarf2read.h (struct signatured_type): Forward declare.
13114         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13115         New methods.
13116         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13117         (dw2_get_cutu): ...this.
13118         (dwarf2_per_objfile::get_cu): Rename from...
13119         (dw2_get_cu): ...this.
13120         (dwarf2_per_objfile::get_tu): New.
13121         (create_addrmap_from_index): Adjust.
13122         (create_addrmap_from_aranges): Adjust.
13123         (dw2_find_last_source_symtab): Adjust.
13124         (dw2_map_symtabs_matching_filename): Adjust.
13125         (dw2_symtab_iter_next): Adjust.
13126         (dw2_print_stats): Adjust.
13127         (dw2_expand_all_symtabs): Adjust.
13128         (dw2_expand_symtabs_with_fullname): Adjust.
13129         (dw2_expand_marked_cus): Adjust.
13130         (dw_expand_symtabs_matching_file_matcher): Adjust.
13131         (dw2_map_symbol_filenames): Adjust.
13132         (dw2_debug_names_iterator::next): Adjust.
13133         (dwarf2_initialize_objfile): Adjust.
13134         (set_partial_user): Adjust.
13135         (dwarf2_build_psymtabs_hard): Adjust.
13136
13137 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13138
13139         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13140         Remove unused variables.
13141         (dw2_map_symtabs_matching_filename): Likewise.
13142         (dwarf2_record_block_ranges): Likewise.
13143         (dwarf2_read_addr_index): Likewise.
13144         (follow_die_offset): Likewise.
13145
13146 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13147
13148         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13149         to symbol_file_add_main.
13150
13151 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13152
13153         PR mi/22299
13154         * mi/mi-console.c (do_fputc_async_safe): New.
13155         (mi_console_file::write_async_safe): New.
13156         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13157         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13158         New.
13159         * ui-file.c (ui_file::putstrn): Adjust call to
13160         fputstrn_unfiltered.
13161         * utils.c (printchar): Replace do_fputs and do_fprintf
13162         parameters by do_fputc.
13163         (fputstr_filtered): Adjust call to printchar.
13164         (fputstr_unfiltered): Likewise.
13165         (fputstrn_filtered): Likewise.
13166         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13167         printchar.
13168         * utils.h (do_fputc_ftype): New typedef.
13169         (fputstrn_unfiltered): Add do_fputc parameter.
13170
13171 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13172
13173         * regformats/i386/i386-avx.dat: Remove.
13174
13175 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13176
13177         PR gdb/22979
13178         * amd64-tdep.c (amd64_none_init_abi): New function.
13179         (amd64_x32_none_init_abi): New function.
13180         (_initialize_amd64_tdep): Register handlers for x86-64 and
13181         x64_32 with GDB_OSABI_NONE.
13182         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13183         GDB_OSABI_NONE osabi.
13184
13185 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13186
13187         PR gdb/22980
13188         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13189         GDB_OSABI_NONE.
13190         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13191         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13192
13193 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13194
13195         * common/byte-vector.h (char_vector): New type.
13196         * target.h (target_read_alloc): Return
13197         gdb::optional<byte_vector>.
13198         (target_read_stralloc): Return gdb::optional<char_vector>.
13199         (target_get_osdata): Return gdb::optional<char_vector>.
13200         * target.c (target_read_alloc_1): Templatize.  Replacement
13201         manual memory management with vector.
13202         (target_read_alloc): Change return type, adjust.
13203         (target_read_stralloc): Change return type, adjust.
13204         (target_get_osdata): Change return type, adjust.
13205         * auxv.c (struct auxv_info) <length>: Remove.
13206         <data>: Change type to gdb::optional<byte_vector>.
13207         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13208         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13209         (target_auxv_search): Adjust.
13210         (fprint_target_auxv): Adjust.
13211         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13212         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13213         (linux_make_corefile_notes): Adjust.
13214         * osdata.c (get_osdata): Adjust.
13215         * remote.c (remote_get_threads_with_qxfer): Adjust.
13216         (remote_memory_map): Adjust.
13217         (remote_traceframe_info): Adjust.
13218         (btrace_read_config): Adjust.
13219         (remote_read_btrace): Adjust.
13220         (remote_pid_to_exec_file): Adjust.
13221         * solib-aix.c (solib_aix_get_library_list): Adjust.
13222         * solib-dsbt.c (decode_loadmap): Don't free buf.
13223         (dsbt_get_initial_loadmaps): Adjust.
13224         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13225         * solib-target.c (solib_target_current_sos): Adjust.
13226         * tracepoint.c (sdata_make_value): Adjust.
13227         * xml-support.c (xinclude_start_include): Adjust.
13228         (xml_fetch_content_from_file): Adjust.
13229         * xml-support.h (xml_fetch_another): Change return type.
13230         (xml_fetch_content_from_file): Change return type.
13231         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13232         * xml-tdesc.c (file_read_description_xml): Adjust.
13233         (fetch_available_features_from_target): Change return type.
13234         (target_fetch_description_xml): Adjust.
13235         (target_read_description_xml): Adjust.
13236
13237 2018-04-06  Tom Tromey  <tom@tromey.com>
13238
13239         * value.c (~value): Update.
13240         (struct value) <contents>: Now unique_xmalloc_ptr.
13241         (value_contents_bits_eq, allocate_value_contents)
13242         (value_contents_raw, value_contents_all_raw)
13243         (value_contents_for_printing, value_contents_for_printing_const)
13244         (set_value_enclosing_type): Update.
13245
13246 2018-04-06  Tom Tromey  <tom@tromey.com>
13247
13248         * value.c (range_s): Remove typedef, VEC.
13249         (struct range): Add operator<.
13250         (range_lessthan): Remove.
13251         (ranges_contain): Change type.
13252         (~value): Update.
13253         (struct value) <unavailable, optimized_out>: Now std::vector.
13254         (value_entirely_available)
13255         (value_entirely_covered_by_range_vector)
13256         (value_entirely_unavailable, value_entirely_optimized_out):
13257         Update.
13258         (insert_into_bit_range_vector): Change argument type.
13259         (find_first_range_overlap): Likewise.
13260         (struct ranges_and_idx, value_contents_bits_eq)
13261         (require_not_optimized_out, require_available): Update.
13262         (ranges_copy_adjusted): Change argument types.
13263         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13264
13265 2018-04-06  Tom Tromey  <tom@tromey.com>
13266
13267         * value.c (~value): Update.
13268         (struct value) <parent>: Now a value_ref_ptr.
13269         (value_parent, set_value_parent, value_address, value_copy):
13270         Update.
13271
13272 2018-04-06  Tom Tromey  <tom@tromey.com>
13273
13274         * value.c (struct value): Add constructor, destructor, and member
13275         initializers.
13276         (allocate_value_lazy, value_decref): Update.
13277
13278 2018-04-06  Tom Tromey  <tom@tromey.com>
13279
13280         * value.c (struct value) <released, next>: Remove.
13281         (all_values): Now a std::vector.
13282         (allocate_value_lazy): Update.
13283         (value_next): Remove.
13284         (value_mark, value_free_to_mark, release_value)
13285         (value_release_to_mark): Update.
13286
13287 2018-04-06  Tom Tromey  <tom@tromey.com>
13288
13289         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13290         (free_value_chain): Remove.
13291         * value.c (free_value_chain): Remove.
13292         (value_release_to_mark): Return a std::vector.
13293         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13294         std::vector.
13295         (check_condition): Update.
13296         * eval.c (fetch_subexp_value): Change "val_chain" to a
13297         std::vector.
13298         * breakpoint.c (update_watchpoint): Update.
13299         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13300
13301 2018-04-06  Tom Tromey  <tom@tromey.com>
13302
13303         * value.h (free_all_values): Remove.
13304         * value.c (free_all_values): Remove.
13305
13306 2018-04-06  Tom Tromey  <tom@tromey.com>
13307
13308         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13309         (value_history_chain, value_history_count): Remove.
13310         (value_history): New global.
13311         (record_latest_value, access_value_history, show_values)
13312         (preserve_values): Update.
13313
13314 2018-04-06  Tom Tromey  <tom@tromey.com>
13315
13316         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13317         * varobj.c (varobj_set_display_format, varobj_set_value)
13318         (install_default_visualizer, construct_visualizer)
13319         (install_new_value, ~varobj, varobj_get_value_type)
13320         (my_value_of_variable, varobj_editable_p): Update.
13321         * c-varobj.c (c_describe_child, c_value_of_variable)
13322         (cplus_number_of_children, cplus_describe_child): Update.
13323         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13324         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13325         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13326
13327 2018-04-06  Tom Tromey  <tom@tromey.com>
13328
13329         * printcmd.c (last_examine_address): Change type to
13330         value_ref_ptr.
13331         (do_examine, x_command): Update.
13332
13333 2018-04-06  Tom Tromey  <tom@tromey.com>
13334
13335         * value.c (release_value): Update.
13336         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13337         (struct bpstats) <val>: Now a value_ref_ptr.
13338         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13339         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13340         (~watchpoint, print_it_watchpoint, watch_command_1)
13341         (invalidate_bp_value_on_memory_change): Update.
13342
13343 2018-04-06  Tom Tromey  <tom@tromey.com>
13344
13345         * varobj.c (varobj_clear_saved_item)
13346         (update_dynamic_varobj_children, install_new_value, ~varobj):
13347         Update.
13348         * value.h (value_incref): Move declaration earlier.
13349         (value_decref): Rename from value_free.
13350         (struct value_ref_policy): New.
13351         (value_ref_ptr): New typedef.
13352         (struct value_deleter): Remove.
13353         (gdb_value_up): Remove typedef.
13354         (release_value): Change return type.
13355         (release_value_or_incref): Remove.
13356         * value.c (set_value_parent): Update.
13357         (value_incref): Change return type.
13358         (value_decref): Rename from value_free.
13359         (value_free_to_mark, free_all_values, free_value_chain): Update.
13360         (release_value): Return value_ref_ptr.
13361         (release_value_or_incref): Remove.
13362         (record_latest_value, set_internalvar, clear_internalvar):
13363         Update.
13364         * stack.c (info_frame_command): Don't call value_free.
13365         * python/py-value.c (valpy_dealloc, valpy_new)
13366         (value_to_value_object): Update.
13367         * printcmd.c (do_examine): Update.
13368         * opencl-lang.c (lval_func_free_closure): Update.
13369         * mi/mi-main.c (register_changed_p): Don't call value_free.
13370         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13371         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13372         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13373         value_free.
13374         * guile/scm-value.c (vlscm_free_value_smob)
13375         (vlscm_scm_from_value): Update.
13376         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13377         (frame_unwind_register_unsigned, get_frame_register_bytes)
13378         (put_frame_register_bytes): Don't call value_free.
13379         * findvar.c (address_from_register): Don't call value_free.
13380         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13381         * dwarf2loc.c (entry_data_value_free_closure)
13382         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13383         (dwarf2_evaluate_loc_desc_full): Update.
13384         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13385         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13386         (~watchpoint, watch_command_1)
13387         (invalidate_bp_value_on_memory_change): Update.
13388         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13389
13390 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13391
13392         PR gdb/23022
13393         * warning.m4: Add -Wno-error=deprecated-register.
13394         * configure: Re-generate.
13395
13396 2018-04-05  Tom Tromey  <tom@tromey.com>
13397
13398         * linespec.h: Remove include of "vec.h".
13399
13400 2018-04-05  Tom Tromey  <tom@tromey.com>
13401
13402         * linespec.c (typep): Remove typedef.
13403         (find_methods, find_superclass_methods): Take a std::vector.
13404         (find_method): Use std::vector.
13405
13406 2018-04-05  Tom Tromey  <tom@tromey.com>
13407
13408         * utils.c (compare_strings): Remove.
13409         * utils.h (compare_strings): Remove.
13410         * objc-lang.h (find_imps): Update.
13411         * objc-lang.c (find_methods): Take a std::vector.
13412         (uniquify_strings, find_imps): Likewise.
13413         * linespec.c (find_methods): Take a std::vector.
13414         (decode_objc): Use std::vector.
13415         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13416         a std::vector.
13417         (find_method, find_function_symbols): Use std::vector.
13418
13419 2018-04-05  Tom Tromey  <tom@tromey.com>
13420
13421         * completer.c (completion_tracker::completion_tracker): Remove
13422         cast.
13423         (completion_tracker::discard_completions): Likewise.
13424         * breakpoint.c (ambiguous_names_p): Remove cast.
13425         * ada-lang.c (_initialize_ada_language): Remove cast.
13426         * utils.h (streq): Update.
13427         (streq_hash): Add new declaration.
13428         * utils.c (streq): Return bool.
13429         (streq_hash): New function.
13430
13431 2018-04-05  Tom Tromey  <tom@tromey.com>
13432
13433         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13434         Remove a string copy.
13435
13436 2018-04-05  Tom Tromey  <tom@tromey.com>
13437
13438         * linespec.c (filter_results): Use std::vector.
13439         (decode_line_2, decode_line_full): Update.
13440
13441 2018-04-05  Tom Tromey  <tom@tromey.com>
13442
13443         * linespec.c (canonical_to_fullform): Return std::string.
13444         (filter_results): Update.
13445         (struct decode_line_2_item): Add constructor.
13446         <fullform, displayform>: Now std::string.
13447         (decode_line_2_compare_items): Now a std::sort comparator.
13448         (decode_line_2): Update.
13449
13450 2018-04-05  Tom Tromey  <tom@tromey.com>
13451
13452         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13453         (unexpected_linespec_error): Update.
13454         (linespec_parse_basic, parse_linespec): Update.
13455
13456 2018-04-05  Tom Tromey  <tom@tromey.com>
13457
13458         * linespec.c (linespec_parse_basic): Reindent.
13459
13460 2018-04-05  Tom Tromey  <tom@tromey.com>
13461
13462         * minsyms.h (iterate_over_minimal_symbols): Update.
13463         * minsyms.c (iterate_over_minimal_symbols): Take a
13464         gdb::function_view.
13465         * linespec.c (struct collect_minsyms): Remove.
13466         (compare_msyms): Now a std::sort comparator.
13467         (add_minsym): Add parameters.
13468         (search_minsyms_for_name): Update.  Use std::vector.
13469
13470 2018-04-03  Tom Tromey  <tom@tromey.com>
13471
13472         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13473         gdb::byte_vector.
13474
13475 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13476
13477         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13478
13479 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13480
13481         PR gdb/16959
13482         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13483         printing static type.
13484
13485 2018-04-01  Tom Tromey  <tom@tromey.com>
13486
13487         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13488         (rs6000_xfer_shared_libraries): Update.
13489
13490 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13491
13492         * common/gdb_vecs.h (char_ptr): Remove.
13493         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13494
13495 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13496
13497         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13498         with std::vector.
13499         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13500
13501 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13502
13503         * tracepoint.h (struct uploaded_tp): Initialize fields.
13504         <actions, step_actions, cmd_strings>: Change type to
13505         std::vector<char *>.
13506         * tracepoint.c (get_uploaded_tp): Allocate with new.
13507         (free_uploaded_tps): Free with delete.
13508         (parse_tracepoint_definition): Adjust to std::vector change.
13509         * breakpoint.c (read_uploaded_action): Likewise.
13510         (create_tracepoint_from_upload): Likewise.
13511         * ctf.c (ctf_write_uploaded_tp): Likewise.
13512         (SET_ARRAY_FIELD): Likewise.
13513         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13514
13515 2018-03-30  Tom Tromey  <tom@tromey.com>
13516
13517         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13518         std::unique_ptr.
13519         (svr4_keep_data_in_core): Update.
13520         (svr4_read_so_list): Update.
13521
13522 2018-03-30  Tom Tromey  <tom@tromey.com>
13523
13524         * windows-nat.c (handle_output_debug_string, handle_exception):
13525         Update.
13526         * target.h (target_read_string): Update.
13527         * target.c (target_read_string): Change "string" to
13528         unique_xmalloc_ptr.
13529         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13530         Update.
13531         * solib-frv.c (frv_current_sos): Update.
13532         * solib-dsbt.c (dsbt_current_sos): Update.
13533         * solib-darwin.c (darwin_current_sos): Update.
13534         * linux-thread-db.c (inferior_has_bug): Update.
13535         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13536         Update.  Remove alloca.
13537         * ada-lang.c (ada_main_name): Update.
13538
13539 2018-03-30  Tom Tromey  <tom@tromey.com>
13540
13541         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13542         (struct dwo_file_deleter): New.
13543         (dwo_file_up): New typedef.
13544         (open_and_init_dwo_file): Use dwo_file_up.
13545         (free_dwo_file_cleanup): Remove.
13546
13547 2018-03-30  Tom Tromey  <tom@tromey.com>
13548
13549         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13550         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13551
13552 2018-03-30  Tom Tromey  <tom@tromey.com>
13553
13554         * dwarf2read.c (class free_cached_comp_units): New class.
13555         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13556         (free_cached_comp_units): Remove function.
13557
13558 2018-03-30  Tom Tromey  <tom@tromey.com>
13559
13560         * utils.h (make_cleanup_unpush_target): Remove.
13561         * inf-ptrace.c (struct target_unpusher): New.
13562         (target_unpush_up) New typedef.
13563         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13564         target_unpush_up.
13565         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13566
13567 2018-03-27  Tom Tromey  <tom@tromey.com>
13568
13569         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13570
13571 2018-03-27  Pedro Alves  <palves@redhat.com>
13572             Tom Tromey  <tom@tromey.com>
13573
13574         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13575         destructor.  Now a class.
13576         (gdb_readline_wrapper_cleanup): Remove function.
13577         (gdb_readline_wrapper): Remove cleanups.
13578
13579 2018-03-27  Tom Tromey  <tom@tromey.com>
13580
13581         * typeprint.h (struct type_print_options) <local_typedefs,
13582         global_typedefs>: Remove "struct" keyword.
13583         (class typedef_hash_table): New class.
13584         (recursively_update_typedef_hash, add_template_parameters)
13585         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13586         (find_typedef_in_hash): Don't declare.
13587         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13588         (typedef_hash_table::recursively_update): Rename from
13589         recursively_update_typedef_hash.  Now a member.
13590         (typedef_hash_table::add_template_parameters): Rename from
13591         add_template_parameters.  Now a member.
13592         (typedef_hash_table::typedef_hash_table): Now a constructor;
13593         rename from create_typedef_hash.
13594         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13595         rename from free_typedef_hash.
13596         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13597         (do_free_global_table): Remove.
13598         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13599         from copy_type_recursive.
13600         (create_global_typedef_table): Remove.
13601         (typedef_hash_table::find_global_typedef): Now a member of
13602         typedef_hash_table.
13603         (typedef_hash_table::find_typedef): Rename from
13604         find_typedef_in_hash; now a member.
13605         (whatis_exp): Update.
13606         * extension.h (struct ext_lang_type_printers): Add constructor and
13607         destructor.
13608         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13609         declare.
13610         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13611         Now a constructor; rename from start_ext_lang_type_printers.
13612         (ext_lang_type_printers): Now a destructor; rename from
13613         free_ext_lang_type_printers.
13614         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13615         Update.
13616         (c_type_print_base_struct_union): Update.  Remove cleanups.
13617
13618 2018-03-27  Tom Tromey  <tom@tromey.com>
13619
13620         * dwarf-index-write.c: Include <cmath>.
13621
13622 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13623
13624         * NEWS: Add entry describing new "set|show varsize-limit" command.
13625         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13626         command.
13627         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13628         "set variable".
13629
13630 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13631
13632         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13633         dwarf-index-write.c
13634         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13635         * dwarf-index-common.c: New file.
13636         * dwarf-index-common.h: New file.
13637         * dwarf-index-write.c: New file.
13638         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13639         (struct dwarf2_section_info): Move from here.
13640         (dwarf2_section_info_def): Likewise.
13641         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13642         (offset_type): Likewise.
13643         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13644         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13645         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13646         (byte_swap): Likewise.
13647         (MAYBE_SWAP): Likewise.
13648         (dwarf2_per_cu_ptr): Likewise.
13649         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13650         (struct tu_stats): Likewise.
13651         (struct dwarf2_per_objfile): Likewise.
13652         (struct dwarf2_per_cu_data): Likewise.
13653         (struct signatured_type): Likewise.
13654         (sig_type_ptr): Likewise.
13655         (DEF_VEC_P (sig_type_ptr)): Likewise.
13656         (INDEX4_SUFFIX): Likewise.
13657         (INDEX5_SUFFIX): Likewise.
13658         (DEBUG_STR_SUFFIX): Likewise.
13659         (dwarf2_read_section): Make non-static.
13660         (mapped_index_string_hash): Move from here.
13661         (dwarf5_djb_hash): Likewise.
13662         (file_write): Likewise.
13663         (class data_buf): Likewise.
13664         (struct symtab_index_entry): Likewise.
13665         (struct mapped_symtab): Likewise.
13666         (find_slot): Likewise.
13667         (hash_expand): Likewise.
13668         (add_index_entry): Likewise.
13669         (uniquify_cu_indices): Likewise.
13670         (class c_str_view): Likewise.
13671         (class c_str_view_hasher): Likewise.
13672         (class vector_hasher): Likewise.
13673         (write_hash_table): Likewise.
13674         (psym_index_map): Likewise.
13675         (struct addrmap_index_data): Likewise.
13676         (add_address_entry): Likewise.
13677         (add_address_entry_worker): Likewise.
13678         (write_address_map): Likewise.
13679         (symbol_kind): Likewise.
13680         (write_psymbols): Likewise.
13681         (struct signatured_type_index_data): Likewise.
13682         (write_one_signatured_type): Likewise.
13683         (recursively_count_psymbols): Likewise.
13684         (recursively_write_psymbols): Likewise.
13685         (class debug_names): Likewise.
13686         (check_dwarf64_offsets): Likewise.
13687         (psyms_seen_size): Likewise.
13688         (write_gdbindex): Likewise.
13689         (write_debug_names): Likewise.
13690         (assert_file_size): Likewise.
13691         (write_psymtabs_to_index): Likewise.
13692         (save_gdb_index_command): Likewise.
13693         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13694         command.
13695         * dwarf2read.h: New file.
13696
13697 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13698
13699         PR gdb/22670
13700         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13701         symbol name if the CU's language stores symbol names in linkage
13702         format.
13703         * language.h (struct language_defn)
13704         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13705         all instances of this struct.
13706
13707 2018-03-26  Tom Tromey  <tom@tromey.com>
13708
13709         * stack.c (backtrace_command_1): Remove verbose code.
13710
13711 2018-03-26  Tom Tromey  <tom@tromey.com>
13712
13713         * python/py-framefilter.c (py_print_type): Don't catch
13714         exceptions.  Return void.
13715         (py_print_value): Likewise.
13716         (py_print_single_arg): Likewise.
13717         (enumerate_args): Don't catch exceptions.
13718         (py_print_args): Likewise.
13719         (py_print_frame): Likewise.
13720         (gdbpy_apply_frame_filter): Catch exceptions here.
13721
13722 2018-03-26  Tom Tromey  <tom@tromey.com>
13723
13724         * stack.c (_initialize_stack): Remove trailing newlines from help
13725         text.  Add "Usage" line to "backtrace" help.
13726
13727 2018-03-26  Tom Tromey  <tom@tromey.com>
13728
13729         PR python/16486:
13730         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13731
13732 2018-03-26  Tom Tromey  <tom@tromey.com>
13733
13734         * python/py-framefilter.c (py_print_single_arg): Return
13735         EXT_LANG_BT_ERROR from catch.
13736
13737 2018-03-26  Tom Tromey  <tom@tromey.com>
13738
13739         PR backtrace/15584:
13740         * stack.c (backtrace_command_1): Move some code into no-filters
13741         "if".
13742
13743 2018-03-26  Tom Tromey  <tom@tromey.com>
13744
13745         * python/py-framefilter.c (throw_quit_or_print_exception): New
13746         function.
13747         (gdbpy_apply_frame_filter): Use it.
13748
13749 2018-03-26  Tom Tromey  <tom@tromey.com>
13750
13751         PR cli/17716:
13752         * python/py-framefilter.c (py_print_type, py_print_value)
13753         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13754         RETURN_MASK_ERROR.
13755
13756 2018-03-26  Tom Tromey  <tom@tromey.com>
13757
13758         * python/py-framefilter.c (enumerate_args): Use
13759         gdb::unique_xmalloc_ptr.
13760
13761 2018-03-26  Tom Tromey  <tom@tromey.com>
13762
13763         * python/py-framefilter.c (py_print_frame): Return
13764         EXT_LANG_BT_OK.
13765         (gdbpy_apply_frame_filter): Update comment.
13766         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13767         Remove.
13768         <EXT_LANG_BT_NO_FILTERS>: Change value.
13769
13770 2018-03-26  Tom Tromey  <tom@tromey.com>
13771
13772         PR backtrace/15582:
13773         * stack.c (backtrace_command): Parse "hide" argument.
13774         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13775         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13776         constant.
13777
13778 2018-03-26  Tom Tromey  <tom@tromey.com>
13779
13780         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13781         add "flags".
13782         (backtrace_command): Remove "fulltrace", add "flags".
13783
13784 2018-03-26  Tom Tromey  <tom@tromey.com>
13785
13786         * stack.c (backtrace_command): Rewrite command line parsing.
13787
13788 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13789
13790         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13791
13792 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13793
13794         * filename-seen-cache.h: Add include guard.
13795
13796 2018-03-26  Keith Seitz  <keiths@redhat.com>
13797
13798         * symfile.c (place_section): Remove "struct" from section_addr_info
13799         in comment.
13800         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13801         "struct" keyword from section_addr_info.
13802
13803 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13804
13805         * regformats/regdef.h (reg): Add constructors.
13806
13807 2018-03-25  Pedro Alves  <palves@redhat.com>
13808
13809         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13810         if then/else bodies in var_func_name extraction.
13811
13812 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13813
13814         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13815         lookup_minimal_symbol() to find symbol entry.
13816         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13817
13818 2018-03-23  Keith Seitz  <keiths@redhat.com>
13819
13820         PR c++/22968
13821         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13822         nested type definitions for C++, too.
13823
13824 2018-03-23  Tom Tromey  <tom@tromey.com>
13825
13826         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13827         a typedef.
13828         (macho_register_oso): Remove.
13829         (macho_symtab_read): Take a std::vector.
13830         (oso_el_compare_name): Now a std::sort comparator.
13831         (macho_symfile_read_all_oso): Take a std::vector.
13832         (macho_symfile_read): Use std::vector.  Remove cleanups.
13833
13834 2018-03-22  Tom Tromey  <tom@tromey.com>
13835
13836         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13837         (record_full_goto_bookmark): Use std::string.
13838
13839 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13840
13841         PR tdep/18295
13842         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13843         a single mask.
13844
13845 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13846
13847         * rs6000-tdep.c (store_insn_p): New function.
13848         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13849         and cr_reg to their unshifted values. Use store_insn_p to
13850         match LR saves using either R1 or fdata->alloca_reg. Use
13851         store_insn_p to match CR saves. Set alloca_reg_offset
13852         when alloca_reg and framep are set. Remove lr_reg shift
13853         when assigning to fdata->lr_register.
13854
13855 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13856
13857         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13858         command line args instead of emitting a warning.
13859
13860 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13861
13862         * tracepoint.h (struct static_tracepoint_marker): Initialize
13863         fields, define default constructor, move constructor and move
13864         assignment, disable the rest.
13865         <str_id, extra>: Make std::string.
13866         (release_static_tracepoint_marker): Remove.
13867         (free_current_marker): Remove.
13868         * tracepoint.c (free_current_marker): Remove.
13869         (parse_static_tracepoint_marker_definition): Adjust to
13870         std::string, use new hex2str overload.
13871         (release_static_tracepoint_marker): Remove.
13872         (print_one_static_tracepoint_marker): Get marker by reference
13873         and adjust to std::string.
13874         (info_static_tracepoint_markers_command): Adjust to std::vector
13875         changes
13876         * target.h (static_tracepoint_marker_p): Remove typedef.
13877         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13878         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13879         bool.
13880         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13881         * target-debug.h
13882         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13883         (target_debug_print_std_vector_static_tracepoint_marker): New.
13884         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13885         to...
13886         (target_debug_print_static_tracepoint_marker_p): ... this.
13887         * target-delegates.c: Re-generate.
13888         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13889         Make std::string.
13890         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13891         (decode_static_tracepoint_spec): Adjust to std::vector.
13892         (tracepoint_print_one_detail): Adjust to std::string.
13893         (strace_marker_decode_location): Adjust to std::string.
13894         (update_static_tracepoint): Adjust to std::string, remove call
13895         to release_static_tracepoint_marker.
13896         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13897         Adjust to std::vector.
13898         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13899         (remote_static_tracepoint_markers_by_strid): Adjust to
13900         std::vector.
13901         * common/rsp-low.h (hex2str): New overload with explicit count
13902         of bytes.
13903         * common/rsp-low.c (hex2str): New overload with explicit count
13904         of bytes.
13905         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13906         (_initialize_rsp_low_selftests): Add test_hex2str test.
13907         * unittests/tracepoint-selftests.c
13908         (test_parse_static_tracepoint_marker_definition): Adjust to
13909         std::string.
13910
13911 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13912
13913         * tracepoint.c (parse_static_tracepoint_marker_definition):
13914         Consider case where the definition is followed by more
13915         definitions.
13916         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13917         tracepoint-selftests.c.
13918         * unittests/tracepoint-selftests.c: New.
13919
13920 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13921
13922         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13923         Carvalho.
13924
13925 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13926
13927         * symtab.c (find_pc_sect_line): fixed indentation.
13928
13929 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13930
13931         * symtab.c (find_pc_sect_line): now uses binary search.
13932
13933 2018-03-19  Tom Tromey  <tom@tromey.com>
13934
13935         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13936         "IDENT" production.
13937
13938 2018-03-19  Pedro Alves  <palves@redhat.com>
13939             Tom Tromey  <tom@tromey.com>
13940
13941         * unittests/observable-selftests.c: New file.
13942         * common/observable.h: New file.
13943         * observable.h: New file.
13944         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13945         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13946         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13947         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13948         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13949         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13950         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13951         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13952         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13953         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13954         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13955         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13956         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13957         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13958         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13959         tui/tui-interp.c, valops.c: Update all users.
13960         * tui/tui-hooks.c (tui_bp_created_observer)
13961         (tui_bp_deleted_observer, tui_bp_modified_observer)
13962         (tui_inferior_exit_observer, tui_before_prompt_observer)
13963         (tui_normal_stop_observer, tui_register_changed_observer):
13964         Remove.
13965         (tui_observers_token): New global.
13966         (attach_or_detach, tui_attach_detach_observers): New functions.
13967         (tui_install_hooks, tui_remove_hooks): Use
13968         tui_attach_detach_observers.
13969         * record-btrace.c (record_btrace_thread_observer): Remove.
13970         (record_btrace_thread_observer_token): New global.
13971         * observer.sh: Remove.
13972         * observer.c: Rename to observable.c.
13973         * observable.c (namespace gdb_observers): Define new objects.
13974         (observer_debug): Move into gdb_observers namespace.
13975         (struct observer, struct observer_list, xalloc_observer_list_node)
13976         (xfree_observer_list_node, generic_observer_attach)
13977         (generic_observer_detach, generic_observer_notify): Remove.
13978         (_initialize_observer): Update.
13979         Don't include observer.inc.
13980         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13981         (clean mostlyclean): Likewise.
13982         (observer.h, observer.inc): Remove targets.
13983         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13984         (COMMON_SFILES): Use observable.c, not observer.c.
13985         * .gitignore: Remove observer.h.
13986
13987 2018-03-18  Tom Tromey  <tom@tromey.com>
13988
13989         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13990         gdb::def_vector.
13991         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13992
13993 2018-03-17  Tom Tromey  <tom@tromey.com>
13994
13995         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13996
13997 2018-03-17  Tom Tromey  <tom@tromey.com>
13998
13999         * target.c (class scoped_target_fd): New.
14000         (target_fileio_close_cleanup): Remove.
14001         (target_fileio_read_alloc_1): Use scoped_target_fd.
14002
14003 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14004
14005         * silent-rules.mk: New.
14006         * Makefile.in: Include silent-rules.mk
14007         (srcdir, VPATH, top_srcdir): Move up.
14008         (COMPILE): Add ECHO_CXX.
14009         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14010         (init.c): Add ECHO_INIT_C.
14011         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14012         (version.c): Add ECHO_GEN.
14013         (printcmd.o): Add ECHO_CXX.
14014         (target-float.o): Add ECHO_CXX.
14015         (ada-exp.o): Add ECHO_CXX.
14016         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14017         (insight$(EXEEXT)): Add ECHO_CXXLD.
14018         * gnulib/configure.ac: Add AM_SILENT_RULES.
14019         * gnulib/aclocal.m4: Re-generate.
14020         * gnulib/configure: Re-generate.
14021         * gnulib/import/Makefile.in: Re-generate.
14022
14023 2018-03-16  Tom Tromey  <tom@tromey.com>
14024
14025         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14026         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14027         * utils.c (do_free_section_addr_info)
14028         (make_cleanup_free_section_addr_info): Remove.
14029         * symfile.h (struct other_sections): Add constructor.
14030         (struct section_addr_info): Remove.
14031         (section_addr_info): New typedef.
14032         (struct sym_fns) <sym_offsets>: Change type of parameter.
14033         (build_section_addr_info_from_objfile)
14034         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14035         (default_symfile_offsets, symbol_file_add)
14036         (symbol_file_add_from_bfd)
14037         (build_section_addr_info_from_section_table): Update.
14038         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14039         * symfile.c (alloc_section_addr_info): Remove.
14040         (build_section_addr_info_from_section_table): Change return type.
14041         Update.
14042         (build_section_addr_info_from_bfd)
14043         (build_section_addr_info_from_objfile): Likewise.
14044         (free_section_addr_info): Remove.
14045         (relative_addr_info_to_section_offsets): Change type of "addrs".
14046         (addrs_section_compar): Now a std::sort comparator.
14047         (addrs_section_sort): Change return type.
14048         (addr_info_make_relative): Change type of "addrs".  Update.
14049         (default_symfile_offsets, syms_from_objfile_1)
14050         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14051         (symbol_file_add_separate): Update.
14052         (symbol_file_add): Change type of "addrs".  Update.
14053         (add_symbol_file_command): Update.  Remove cleanups.
14054         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14055         cleanups.
14056         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14057         * solib.c (solib_read_symbols): Update.
14058         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14059         * machoread.c (macho_symfile_offsets): Update.
14060         * jit.c (jit_bfd_try_read_symtab): Update.
14061
14062 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14063
14064         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14065         unittests/utils-selftests.c.
14066         * unittests/utils-selftests.c: New file.
14067
14068 2018-03-14  Tom Tromey  <tom@tromey.com>
14069
14070         PR cli/14977:
14071         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14072         for NULL.
14073
14074 2018-03-14  Tom Tromey  <tom@tromey.com>
14075
14076         PR cli/19918:
14077         * printcmd.c (printf_pointer): Allow "-" in format.
14078
14079 2018-03-14  Tom Tromey  <tom@tromey.com>
14080
14081         * printcmd.c (_initialize_printcmd): Add usage to printf.
14082
14083 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14084
14085         * MAINTAINERS: Update my email address.
14086
14087 2018-03-13  Tom Tromey  <tom@tromey.com>
14088
14089         * machoread.c (macho_check_dsym): Change filenamep to a
14090         std::string*.
14091         (macho_symfile_read): Update.
14092         * symfile.c (load_command): Use std::string.
14093
14094 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14095
14096         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14097         to error message string.
14098         (riscv_register_name): Use xsnprintf instead of sprintf.
14099         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14100         internal_error.
14101         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14102         error.
14103         (riscv_push_dummy_call): Likewise.
14104
14105 2018-03-12  Tom Tromey  <tom@tromey.com>
14106
14107         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14108         Use gdb::byte_vector.
14109         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14110
14111 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14112
14113         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14114         parameter type to readable_regcache.
14115         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14116         the declaration.
14117
14118 2018-03-11  Tom Tromey  <tom@tromey.com>
14119
14120         * dwarf2read.c (struct nextfield): Add initializers.
14121         (struct nextfnfield): Remove.
14122         (struct fnfieldlist): Add initializers.  Remove "length" and
14123         "head", use std::vector.
14124         (struct decl_field_list): Remove.
14125         (struct field_info): Add initializers.
14126         <fields, baseclasses>: Now std::vector.
14127         <nbaseclasses, nfnfields, typedef_field_list_count,
14128         nested_types_list_count>: Remove.
14129         (dwarf2_add_field, dwarf2_add_type_defn)
14130         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14131         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14132         (process_structure_scope): Update.
14133
14134 2018-03-11  Tom Tromey  <tom@tromey.com>
14135
14136         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14137         for use by std::sort.
14138         (build_type_psymtabs_1): Use std::vector.
14139
14140 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14141
14142         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14143         and LIBMPFR in the printed configuration.
14144
14145 2018-03-08  Tom Tromey  <tom@tromey.com>
14146
14147         * source.c (get_filename_and_charpos): Use scoped_fd.
14148         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14149         (procfs_pidlist): Likewise.
14150         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14151         (iterate_over_mappings): Likewise.
14152
14153 2018-03-08  Tom Tromey  <tom@tromey.com>
14154
14155         * infcall.c (struct call_return_meta_info)
14156         <stack_temporaries_enabled>: Remove.
14157         (get_call_return_value, call_function_by_hand_dummy): Update.
14158         * thread.c (disable_thread_stack_temporaries): Remove.
14159         (enable_thread_stack_temporaries): Remove.
14160         (thread_stack_temporaries_enabled_p): Return bool.
14161         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14162         (get_last_thread_stack_temporary): Update.
14163         * eval.c (evaluate_subexp): Update.
14164         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14165         class, not a function.
14166         (value_ptr, value_vec): Remove typedefs.
14167         (class thread_info) <stack_temporaries_enabled>: Now bool.
14168         <stack_temporaries>: Now a std::vector.
14169         (thread_stack_temporaries_enabled_p)
14170         (value_in_thread_stack_temporaries): Return bool.
14171
14172 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14173
14174         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14175         (getpkt_or_notif_sane_1): Likewise.
14176
14177 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14178
14179         * build-id.c (build_id_to_debug_bfd): Use std::string.
14180
14181 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14182
14183         * build-id.c (find_separate_debug_file_by_buildid): Return
14184         std::string.
14185         * build-id.h (find_separate_debug_file_by_buildid): Return
14186         std::string.
14187         * coffread.c (coff_symfile_read): Adjust to std::string.
14188         * elfread.c (elf_symfile_read): Adjust to std::string.
14189         * symfile.c (separate_debug_file_exists): Change parameter to
14190         std::string.
14191         (find_separate_debug_file): Return std::string.
14192         (find_separate_debug_file_by_debuglink): Return std::string.
14193         * symfile.h (find_separate_debug_file_by_debuglink): Return
14194         std::string.
14195
14196 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14197
14198         * common/xml-utils.c (xml_escape_text): Move code to...
14199         (xml_escape_text_append): ... this new function.
14200         * common/xml-utils.h (xml_escape_text_append): New declaration.
14201         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14202         New function.
14203         (_initialize_xml_utils): register test_xml_escape_text_append as
14204         a selftest.
14205
14206 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14207
14208         * defs.h: Remove MAX_REGISTER_SIZE.
14209         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14210         asserts.
14211         * python/py-unwind.c (pyuw_sniffer): Likewise.
14212
14213 2018-03-07  Tom Tromey  <tom@tromey.com>
14214
14215         * linux-tdep.c (linux_info_proc): Update.
14216         * target.h (struct target_ops) <to_fileio_readlink>: Return
14217         optional<string>.
14218         (target_fileio_readlink): Return optional<string>.
14219         * remote.c (remote_hostio_readlink): Return optional<string>.
14220         * inf-child.c (inf_child_fileio_readlink): Return
14221         optional<string>.
14222         * target.c (target_fileio_readlink): Return optional<string>.
14223
14224 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14225
14226         * regcache.c (cooked_read_test): Add riscv to the list of
14227         architectures that have a save_reggroup.
14228
14229 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14230
14231         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14232         value is not a dynamic class object.
14233
14234 2018-03-06  Tom Tromey  <tom@tromey.com>
14235
14236         * rust-exp.y: Formatting fixes.
14237
14238 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14239
14240         * riscv-tdep.c (riscv_register_name): Remove target description
14241         support.
14242         (riscv_gdbarch_init): Remove target description check.
14243
14244 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14245
14246         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14247         comment.
14248         * riscv-tdep.h: Likewise.
14249
14250 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14251
14252         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14253         (riscv_pseudo_register_write): Delete.
14254         (riscv_gdbarch_init): Remove all use of pseudo registers.
14255
14256 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14257
14258         * record-btrace.c (btrace_print_lines): Replace cleanup
14259         parameter with RAII equivalents.
14260         (btrace_insn_history): Replace cleanup with RAII equivalents.
14261         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14262         make_cleanup_ui_out_tuple_begin_end): Remove.
14263         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14264         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14265         make_cleanup_ui_out_list_begin_end): Remove.
14266
14267 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14268
14269         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14270         parameter types to std::vector.  Use bool.
14271         (record_btrace_wait): Replace VEC(tp_t) with
14272         std::vector<thread_info *>.
14273         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14274
14275 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14276
14277         * record-btrace.c (record_btrace_disable_callback): Remove.
14278         (struct scoped_btrace_disable): New.
14279         (record_btrace_open): Use scoped_btrace_disable.
14280
14281 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14282
14283         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14284         reading values from registers.
14285
14286 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14287
14288         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14289         where appropriate.
14290
14291 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14292
14293         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14294         change parameter type.  Use GDB's print functions, and use
14295         core_addr_to_string where appropriate.
14296         (riscv_push_dummy_call): Use core_addr_to_string where
14297         appropriate, update call to riscv_print_arg_location, and reindent
14298         a few lines.
14299         (riscv_return_value): Update call to riscv_print_arg_location.
14300
14301 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14302             Tim Newsome <tim@sifive.com>
14303             Albert Ou <a0u@eecs.berkeley.edu>
14304             Darius Rad <darius@bluespec.com>
14305
14306         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14307         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14308         (ALLDEPFILES): Add riscv-tdep.c
14309         * configure.tgt: Add riscv support.
14310         * riscv-tdep.c: New file.
14311         * riscv-tdep.h: New file.
14312         * NEWS: Mention new target.
14313         * MAINTAINERS: Add entry for riscv.
14314
14315 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14316
14317         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14318         fields within aggregates.
14319
14320 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14321
14322         * record-btrace.c (btrace_print_lines): Change type of flags to
14323         gdb_disassembly_flags.
14324
14325 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14326
14327         * fbsd-nat.c: Include "inf-ptrace.h".
14328         (USE_SIGTRAP_SIGINFO): Conditionally define.
14329         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14330         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14331         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14332         function.
14333         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14334         Likewise.
14335         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14336         Likewise.
14337         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14338         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14339         "supports_stopped_by_hw_breakpoint" target methods.
14340
14341 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14342
14343         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14344         * fbsd-nat.c (debug_fbsd_nat): New variable.
14345         (show_fbsd_nat_debug): New function.
14346         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14347         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14348
14349 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14350
14351         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14352         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14353         prototype.
14354         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14355         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14356         method.
14357
14358 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14359
14360         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14361         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14362
14363 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14364
14365         * charset.c (struct charset_vector): New.
14366         (charsets): Change type to charset_vector.
14367         (find_charset_names): Adjust.
14368         (add_one): Adjust.
14369         (_initialize_charset): Adjust.
14370
14371 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14372
14373         * progspace.h (struct program_space) <deleted_solibs>: Change
14374         type to std::vector<std::string>.
14375         * progspace.c (clear_program_space_solib_cache): Adjust.
14376         * breakpoint.c (print_solib_event): Adjust.
14377         (check_status_catch_solib): Adjust.
14378         * solib.c (update_solib_list): Adjust.
14379         * ui-out.h (class ui_out) <field_string>: New overload.
14380         * ui-out.c (ui_out::field_string): New overload.
14381
14382 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14383
14384         * progspace.h (struct program_space): Add constructor and
14385         destructor, initialize fields.
14386         (add_program_space): Remove.
14387         * progspace.c (add_program_space): Rename to...
14388         (program_space::program_space): ... this.
14389         (release_program_space): Rename to...
14390         (program_space::~program_space): ... this.
14391         (delete_program_space): Use delete to delete program_space.
14392         (initialize_progspace): Use new to allocate program_space.
14393         * inferior.c (add_inferior_with_spaces): Likewise.
14394         (clone_inferior_command): Likewise.
14395         * infrun.c (follow_fork_inferior): Likewise.
14396         (handle_vfork_child_exec_or_exit): Likewise.
14397
14398 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14399
14400         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14401         (delim_string_to_char_ptr_vec): Return std::vector of
14402         gdb::unique_xmalloc_ptr.
14403         (dirnames_to_char_ptr_vec_append): Take std::vector of
14404         gdb::unique_xmalloc_ptr.
14405         (dirnames_to_char_ptr_vec): Return std::vector of
14406         gdb::unique_xmalloc_ptr.
14407         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14408         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14409         (delim_string_to_char_ptr_vec): Return an std::vector of
14410         gdb::unique_xmalloc_ptr, adjust the code.
14411         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14412         gdb::unique_xmalloc_ptr, adjust the code.
14413         (dirnames_to_char_ptr_vec): Return an std::vector of
14414         gdb::unique_xmalloc_ptr, adjust the code.
14415         * auto-load.c (auto_load_safe_path_vec): Change type to
14416         std::vector of gdb::unique_xmalloc_ptr.
14417         (auto_load_expand_dir_vars): Return an std::vector of
14418         gdb::unique_xmalloc_ptr, adjust the code.
14419         (auto_load_safe_path_vec_update): Adjust.
14420         (filename_is_in_auto_load_safe_path_vec): Adjust.
14421         (auto_load_objfile_script_1): Adjust.
14422         * build-id.c (build_id_to_debug_bfd): Adjust.
14423         * linux-thread-db.c (thread_db_load_search): Adjust.
14424         * source.c (add_path): Adjust.
14425         (openp): Adjust.
14426         * symfile.c (find_separate_debug_file): Adjust.
14427         * utils.c (do_free_char_ptr_vec): Remove.
14428         (make_cleanup_free_char_ptr_vec): Remove.
14429
14430 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14431
14432         PR gdb/22907
14433         * common/pathstuff.c: Conditionally include "<windows.h>".
14434
14435 2018-03-01  Georg Sauthoff  <mail@georg.so>
14436
14437         PR gdb/22888
14438         * gcore.in: Quote variables and switch interpreter to bash.
14439
14440 2018-03-01  Tom Tromey  <tom@tromey.com>
14441
14442         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14443         assertion.  Add assertion for discriminant_index.
14444         (quirk_rust_enum): Use correct base type name in univariant case.
14445
14446 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14447
14448         * record.c (get_call_history_modifiers): Return a
14449         record_print_flags.
14450         (cmd_record_call_history): Adjust.
14451         * record-btrace.c (record_btrace_call_history): Adjust.
14452         (record_btrace_call_history_range): Adjust.
14453         (record_btrace_call_history_from): Adjust.
14454         * target-debug.h (target_debug_print_record_print_flags): New.
14455         * target-delegates.c: Re-generate.
14456         * target.c (target_call_history): Change flags type.
14457         (target_call_history_from): Likewise.
14458         (target_call_history_range): Likewise.
14459         * target.h (struct target_ops) <target_call_history>: Likewise.
14460         (target_call_history_from): Likewise.
14461         (target_call_history_range): Likewise.
14462
14463 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14464             Simon Marchi  <simon.marchi@polymtl.ca>
14465
14466         * common/common-utils.c: Include "sys/stat.h".
14467         (is_regular_file): Move here from "source.c"; change return
14468         type to "bool".
14469         * common/common-utils.h (is_regular_file): New prototype.
14470         * common/pathstuff.c (contains_dir_separator): New function.
14471         * common/pathstuff.h (contains_dir_separator): New prototype.
14472         * source.c: Don't include "sys/stat.h".
14473         (is_regular_file): Move to "common/common-utils.c".
14474
14475 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14476
14477         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14478         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14479         * auto-load.c: Include "common/pathstuff.h".
14480         * common/common-def.h (current_directory): Move here.
14481         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14482         function.
14483         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14484         prototype.
14485         * common/pathstuff.c: New file.
14486         * common/pathstuff.h: New file.
14487         * compile/compile.c: Include "common/pathstuff.h".
14488         * defs.h (current_directory): Move to "common/common-defs.h".
14489         * dwarf2read.c: Include "common/pathstuff.h".
14490         * exec.c: Likewise.
14491         * guile/scm-safe-call.c: Likewise.
14492         * linux-thread-db.c: Likewise.
14493         * main.c: Likewise.
14494         * nto-tdep.c: Likewise.
14495         * objfiles.c: Likewise.
14496         * source.c: Likewise.
14497         * symtab.c: Likewise.
14498         * utils.c: Include "common/pathstuff.h".
14499         (gdb_realpath): Move to "common/pathstuff.c".
14500         (gdb_realpath_keepfile): Likewise.
14501         (gdb_abspath): Likewise.
14502         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14503         (gdb_realpath_keepfile): Likewise.
14504         (gdb_abspath): Likewise.
14505
14506 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14507
14508         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14509         wildcard process pid for super_resume for kernels with a
14510         specific bug.
14511
14512 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14513
14514         * compile/compile.c (get_args): Add additional comments
14515         explaining function.
14516
14517 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14518             Tom Tromey  <tom@tromey.com>
14519
14520         * target.h (memory_write_request_s): Remove typedef.  Don't define
14521         VEC.
14522         (target_write_memory_blocks): Change argument to std::vector.
14523         (struct memory_write_request): Add constructor.
14524         * target-memory.c (compare_block_starting_address): Return bool.
14525         Change argument types.
14526         (claim_memory): Change arguments to use std::vector.
14527         (split_regular_and_flash_blocks, blocks_to_erase)
14528         (compute_garbled_blocks): Likewise.
14529         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14530         (target_write_memory_blocks): Change argument to std::vector.
14531         * symfile.c (struct load_section_data): Add constructor and
14532         destructor.  Use std::vector for "requests".
14533         (struct load_progress_data): Add initializers.
14534         (load_section_callback): Update.  Use "new".
14535         (clear_memory_write_data): Remove.
14536         (generic_load): Update.
14537
14538 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14539
14540         * arch/aarch64.h: Use common/tdesc.h.
14541
14542 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14543
14544         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14545         architecture with a 64-bit ABI.
14546
14547 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14548
14549         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14550         ahead of target description loading.
14551
14552 2018-02-26  Tom Tromey  <tom@tromey.com>
14553
14554         * stack.c (backtrace_command_1): Update.
14555         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14556         of "flags".
14557         * python/py-framefilter.c (py_print_frame)
14558         (gdbpy_apply_frame_filter): Change type of "flags".
14559         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14560         of "flags".
14561         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14562         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14563         * extension.h (enum frame_filter_flag): Rename from
14564         frame_filter_flags.
14565         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14566         (apply_ext_lang_frame_filter): Change type of "flags".
14567         * extension.c (apply_ext_lang_frame_filter): Change type of
14568         "flags".
14569         * extension-priv.h (struct extension_language_ops)
14570         <apply_frame_filter>: Change type of "flags".
14571
14572 2018-02-26  Tom Tromey  <tom@tromey.com>
14573
14574         PR python/16497:
14575         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14576         off-by-one in py_end computation.
14577         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14578         PRINT_MORE_FRAMES.
14579         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14580         constant.
14581
14582 2018-02-26  Tom Tromey  <tom@tromey.com>
14583
14584         * dwarf2read.c (struct variant_field): New.
14585         (struct nextfield) <variant>: New field.
14586         (dwarf2_add_field): Handle DW_TAG_variant_part.
14587         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14588         discriminated union.
14589         (read_structure_type): Handle DW_TAG_variant_part.
14590         (handle_struct_member_die): New function, extracted from
14591         process_structure_scope.  Handle DW_TAG_variant.
14592         (process_structure_scope): Handle discriminated unions.  Call
14593         handle_struct_member_die.
14594
14595 2018-02-26  Tom Tromey  <tom@tromey.com>
14596
14597         * rust-lang.h (rust_last_path_segment): Declare.
14598         * rust-lang.c (rust_last_path_segment): Now public.  Change
14599         contract.
14600         (struct disr_info): Remove.
14601         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14602         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14603         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14604         (rust_enum_p, rust_enum_variant): New function.
14605         (rust_underscore_fields): Remove "offset" parameter.
14606         (rust_print_enum): New function.
14607         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14608         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14609         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14610         enums.
14611         (rust_internal_print_type): New function, from rust_print_type.
14612         Remove enum code.
14613         (rust_print_type): Call rust_internal_print_type.
14614         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14615         Update enum handling.
14616         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14617         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14618         (rust_union_quirks): New functions.
14619         (process_full_comp_unit, process_full_type_unit): Call
14620         rust_union_quirks.
14621         (process_structure_scope): Update rust_unions if necessary.
14622
14623 2018-02-26  Tom Tromey  <tom@tromey.com>
14624
14625         * value.h (value_union_variant): Declare.
14626         * valops.c (value_union_variant): New function.
14627         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14628         (struct discriminant_info): New.
14629         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14630         enumerator.
14631         (struct main_type) <flag_discriminated_union>: New field.
14632
14633 2018-02-26  Tom Tromey  <tom@tromey.com>
14634
14635         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14636         unittests/unpack-selftests.c.
14637         * unittests/unpack-selftests.c: New file.
14638         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14639
14640 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14641
14642         * dwarf2read.c (struct partial_die_info) <read>: New method.
14643         (read_partial_die): Remove the declaration.
14644         (load_partial_dies): Update.
14645         (partial_die_info::partial_die_info):
14646         (read_partial_die): Change it to partial_die_info::read.
14647
14648 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14649
14650         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14651         (fixup_partial_die): Remove declaration.
14652         (scan_partial_symbols): Update.
14653         (partial_die_parent_scope): Likewise.
14654         (partial_die_full_name): Likewise.
14655         (fixup_partial_die): Change it to partial_die_info::fixup.
14656
14657 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14658
14659         * dwarf2read.c (read_partial_die): Update the declaration.
14660         (load_partial_dies): Caller update.
14661         (read_partial_die): Remove one argument abbrev_len.
14662
14663 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14664
14665         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14666         assignment operator.
14667         (load_partial_dies): Use ctor and copy ctor.
14668         (read_partial_die): Update.
14669         (dwarf2_cu::find_partial_die): Use ctor.
14670
14671 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14672
14673         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14674         (find_partial_die_in_comp_unit): Change it to
14675         dwarf2_cu::find_partial_die.
14676         (find_partial_die): Update.
14677
14678 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14679
14680         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14681         is NULL.
14682
14683 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14684
14685         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14686
14687 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14688
14689         * arch/amd64.h: Use common/tdesc.h.
14690         * arch/i386.c: Likewise.
14691         * arch/i386.h: Likewise.
14692         * arch/tic6x.c: Likewise.
14693         * arch/tdesc.h: Move file from here...
14694         * common/tdesc.h: ...to here.
14695         * features/aarch64-core.c: Regenerate.
14696         * features/aarch64-fpu.c: Regenerate.
14697         * features/i386/32bit-avx.c: Regenerate.
14698         * features/i386/32bit-avx512.c: Regenerate.
14699         * features/i386/32bit-core.c: Regenerate.
14700         * features/i386/32bit-linux.c: Regenerate.
14701         * features/i386/32bit-mpx.c: Regenerate.
14702         * features/i386/32bit-pkeys.c: Regenerate.
14703         * features/i386/32bit-sse.c: Regenerate.
14704         * features/i386/64bit-avx.c: Regenerate.
14705         * features/i386/64bit-avx512.c: Regenerate.
14706         * features/i386/64bit-core.c: Regenerate.
14707         * features/i386/64bit-linux.c: Regenerate.
14708         * features/i386/64bit-mpx.c: Regenerate.
14709         * features/i386/64bit-pkeys.c: Regenerate.
14710         * features/i386/64bit-segments.c: Regenerate.
14711         * features/i386/64bit-sse.c: Regenerate.
14712         * features/i386/x32-core.c: Regenerate.
14713         * features/tic6x-c6xp.c: Regenerate.
14714         * features/tic6x-core.c: Regenerate.
14715         * features/tic6x-gp.c: Regenerate.
14716         * target-descriptions.c: Use common/tdesc.h.
14717         * target-descriptions.h: Likewise.
14718
14719 2018-02-24  Tom Tromey  <tom@tromey.com>
14720
14721         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14722         (try_thread_db_load_from_dir, thread_db_load_search): Use
14723         std::string.
14724         (info_auto_load_libthread_db_compare): Return bool.  Change
14725         argument types.
14726         (info_auto_load_libthread_db): Use std::vector, std::string.
14727         Remove cleanups.
14728
14729 2018-02-24  Tom Tromey  <tom@tromey.com>
14730
14731         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14732         std::string.
14733         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14734         std::string*.
14735         * gdbarch.c: Rebuild.
14736         * gdbarch.h: Rebuild.
14737         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14738         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14739         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14740         std::string*.
14741
14742 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14743
14744         * gdbtypes.h (sect_offset): Change type to uint64_t.
14745         (sect_offset_str): New function.
14746         * dwarf2read.c (create_addrmap_from_aranges): Use
14747         sect_offset_str.
14748         (error_check_comp_unit_head): Likewise.
14749         (create_debug_type_hash_table): Likewise.
14750         (read_cutu_die_from_dwo): Likewise.
14751         (init_cutu_and_read_dies): Likewise.
14752         (init_cutu_and_read_dies_no_follow): Likewise.
14753         (process_psymtab_comp_unit_reader): Likewise.
14754         (partial_die_parent_scope): Likewise.
14755         (peek_die_abbrev): Likewise.
14756         (process_queue): Likewise.
14757         (dwarf2_physname): Likewise.
14758         (read_namespace_alias): Likewise.
14759         (read_import_statement): Likewise.
14760         (create_dwo_cu_reader): Likewise.
14761         (create_cus_hash_table): Likewise.
14762         (lookup_dwo_cutu): Likewise.
14763         (inherit_abstract_dies): Likewise.
14764         (read_func_scope): Likewise.
14765         (read_call_site_scope): Likewise.
14766         (dwarf2_add_member_fn): Likewise.
14767         (read_common_block): Likewise.
14768         (read_module_type): Likewise.
14769         (read_typedef): Likewise.
14770         (read_subrange_type): Likewise.
14771         (load_partial_dies): Likewise.
14772         (read_partial_die): Likewise.
14773         (find_partial_die): Likewise.
14774         (read_str_index): Likewise.
14775         (dwarf2_string_attr): Likewise.
14776         (build_error_marker_type): Likewise.
14777         (lookup_die_type): Likewise.
14778         (dump_die_shallow): Likewise.
14779         (follow_die_ref): Likewise.
14780         (dwarf2_fetch_die_loc_sect_off): Likewise.
14781         (dwarf2_fetch_constant_bytes): Likewise.
14782         (follow_die_sig): Likewise.
14783         (get_signatured_type): Likewise.
14784         (get_DW_AT_signature_type): Likewise.
14785         (dwarf2_find_containing_comp_unit): Likewise.
14786         (set_die_type): Likewise.
14787
14788 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14789
14790         * arch/aarch64.c: Include "common-defs.h".
14791         * arch/amd64.c: Likewise.
14792         * arch/i386.c: Likewise.
14793
14794 2018-02-21  Tom Tromey  <tom@tromey.com>
14795
14796         * value.h: (extract_field_op): Update.
14797         * eval.c (extract_field_op): Return a const char *.
14798         * expression.h (parse_expression_for_completion): Update.
14799         * completer.c (complete_expression): Update.
14800         (add_struct_fields): Make fieldname const.
14801         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14802         (mark_completion_tag, parse_exp_in_context_1): Update.
14803         (parse_expression_for_completion): Change "name" to
14804         unique_xmalloc_ptr*.
14805
14806 2018-02-21  Tom Tromey  <tom@tromey.com>
14807
14808         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14809
14810 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14811
14812         * avr-tdep.c (avr_read_pc): Change parameter type to
14813         readable_regcache.
14814         * gdbarch.sh (read_pc): Likewise.
14815         * gdbarch.c: Re-generated.
14816         * gdbarch.h: Re-generated.
14817         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14818         readable_regcache.
14819         * ia64-tdep.c (ia64_read_pc): Likewise.
14820         * mips-tdep.c (mips_read_pc): Likewise.
14821         * spu-tdep.c (spu_read_pc): Likewise.
14822
14823 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14824
14825         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14826         * regcache-dump.c: New file.
14827         * regcache.c: Move register_dump to regcache-dump.c.
14828         (maintenance_print_registers): Likewise.
14829         (maintenance_print_raw_registers): Likewise.
14830         (maintenance_print_cooked_registers): Likewise.
14831         (maintenance_print_register_groups): Likewise.
14832         (maintenance_print_remote_registers): Likewise.
14833         (_initialize_regcache): Likewise.
14834         * regcache.h (register_dump): Moved from regcache.c.
14835
14836 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14837
14838         * regcache.c (regcache::regcache): Update.
14839         (regcache::invalidate): Move it to detached_regcache::invalidate.
14840         (get_thread_arch_aspace_regcache): Update.
14841         (regcache::raw_update): Update.
14842         (regcache::cooked_read): Remove some code.
14843         (regcache::cooked_read_value): Likewise.
14844         (regcache::raw_write): Remove assert on m_readonly_p.
14845         (regcache::raw_supply_integer): Move it to
14846         detached_regcache::raw_supply_integer.
14847         (regcache::raw_supply_zeroed): Likewise.
14848         * regcache.h (detached_regcache) <raw_supply_integer>: New
14849         declaration.
14850         <raw_supply_zeroed, invalidate>: Likewise.
14851         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14852         <invalidate>: Likewise.
14853         <m_readonly_p>: Removed.
14854
14855 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14856
14857         * infcmd.c (get_return_value): Let stop_regs point to
14858         get_current_regcache.
14859         * regcache.c (regcache::regcache): Remove.
14860         (register_dump_reg_buffer): New class.
14861         (regcache_print): Adjust.
14862         * regcache.h (regcache): Remove constructors.
14863
14864 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14865
14866         * regcache.c (class register_dump): New class.
14867         (register_dump_regcache, register_dump_none): New class.
14868         (register_dump_remote, register_dump_groups): New class.
14869         (regcache_print): Update.
14870         * regcache.h (regcache_dump_what): Move it to regcache.c.
14871         (regcache) <dump>: Remove.
14872
14873 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14874
14875         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14876          reg_buffer_rw *.
14877         (jit_unwind_reg_set_impl): Call raw_supply.
14878         (jit_frame_sniffer): Use reg_buffer_rw.
14879         * record-full.c (record_full_core_regbuf): Change its type.
14880         (record_full_core_open_1): Use reg_buffer_rw.
14881         (record_full_close): Likewise.
14882         (record_full_core_fetch_registers): Use regcache->raw_supply.
14883         (record_full_core_store_registers): Likewise.
14884         * regcache.c (regcache::get_register_status): Move it to
14885         reg_buffer.
14886         (regcache_raw_set_cached_value): Remove.
14887         (regcache::raw_set_cached_value): Remove.
14888         (regcache::raw_write): Call raw_supply.
14889         (regcache::raw_supply): Move it to reg_buffer_rw.
14890         * regcache.h (regcache_raw_set_cached_value): Remove.
14891         (reg_buffer_rw): New class.
14892
14893 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14894
14895         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14896         readonly_detached_regcache.
14897         (dummy_frame_prev_register): Use regcache->cooked_read.
14898         * frame.c (frame_save_as_regcache): Change return type.
14899         (frame_pop): Update.
14900         * frame.h (frame_save_as_regcache): Update declaration.
14901         * inferior.h (get_infcall_suspend_state_regcache): Update
14902         declaration.
14903         * infrun.c (infcall_suspend_state) <registers>: use
14904         readonly_detached_regcache.
14905         (save_infcall_suspend_state): Don't use regcache_dup.
14906         (get_infcall_suspend_state_regcache): Change return type.
14907         * linux-fork.c (struct fork_info) <savedregs>: Change to
14908         readonly_detached_regcache.
14909         <pc>: New field.
14910         (fork_save_infrun_state): Don't use regcache_dup.
14911         (info_checkpoints_command): Adjust.
14912         * mi/mi-main.c (register_changed_p): Update declaration.
14913         (mi_cmd_data_list_changed_registers): Use
14914         readonly_detached_regcache.
14915         (register_changed_p): Change parameter type to
14916         readonly_detached_regcache.
14917         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14918         readonly_detached_regcache.
14919         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14920         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14921         New.
14922         (regcache::save): Move it to reg_buffer.
14923         (regcache::restore): Change parameter type.
14924         (regcache_dup): Remove.
14925         * regcache.h (reg_buffer) <save>: New method.
14926         (readonly_detached_regcache): New class.
14927         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14928         readonly_detached_regcache.
14929         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14930
14931 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14932
14933         * frame.c (frame_save_as_regcache): Use regcache method save.
14934         (frame_pop): Use regcache method restore.
14935         * infrun.c (restore_infcall_suspend_state): Likewise.
14936         * linux-fork.c (fork_load_infrun_state): Likewise.
14937         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14938         save.
14939         * regcache.c (regcache_save): Remove.
14940         (regcache::restore): More asserts.
14941         (regcache_cpy): Remove.
14942         * regcache.h (regcache_save): Remove the declaration.
14943         (regcache::restore): Move from private to public.
14944         Remove the friend declaration of regcache_cpy.
14945         (regcache_cpy): Remove declaration.
14946
14947 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14948
14949         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14950         parameter type to 'readable_regcache *'.
14951         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14952         * arm-tdep.c (arm_neon_quad_read): Likewise.
14953         (arm_pseudo_read): Likewise.
14954         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14955         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14956         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14957         * gdbarch.c: Re-generated.
14958         * gdbarch.h: Re-generated.
14959         * gdbarch.sh (pseudo_register_read): Change parameter type to
14960         'readable_regcache *'.
14961         (pseudo_register_read_value): Likewise.
14962         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14963         (h8300_pseudo_register_read): Likewise.
14964         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14965         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14966         (i386_pseudo_register_read_into_value): Likewise.
14967         (i386_pseudo_register_read_value): Likewise.
14968         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14969         declaration.
14970         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14971         * m32c-tdep.c (m32c_raw_read): Likewise.
14972         (m32c_read_flg): Likewise.
14973         (m32c_banked_register): Likewise.
14974         (m32c_banked_read): Likewise.
14975         (m32c_sb_read): Likewise.
14976         (m32c_part_read): Likewise.
14977         (m32c_cat_read): Likewise.
14978         (m32c_r3r2r1r0_read): Likewise.
14979         (m32c_pseudo_register_read): Likewise.
14980         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14981         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14982         (mep_pseudo_cr64_read): Likewise.
14983         (mep_pseudo_register_read): Likewise.
14984         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14985         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14986         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14987         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14988         (regcache::cooked_read): Likewise.
14989         (regcache::cooked_read_value): Likewise.
14990         (regcache_cooked_read_signed):
14991         (regcache::cooked_read): Likewise.
14992         * regcache.h (readable_regcache): New class.
14993         (regcache): Inherit readable_regcache.  Move some methods to
14994         readable_regcache.
14995         * rl78-tdep.c (rl78_pseudo_register_read): Change
14996         parameter type to 'readable_regcache *'.
14997         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14998         (e500_pseudo_register_read): Change parameter type to
14999         'readable_regcache *'.
15000         (dfp_pseudo_register_read): Likewise.
15001         (vsx_pseudo_register_read): Likewise.
15002         (efpr_pseudo_register_read): Likewise.
15003         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15004         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15005         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15006         (sh64_pseudo_register_read): Likewise.
15007         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15008         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15009         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15010         (spu_pseudo_register_read): Likewise.
15011         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15012         (xtensa_pseudo_register_read): Likewise.
15013
15014 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15015
15016         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15017         (regcache::arch): Move it to reg_buffer::arch.
15018         (regcache::register_buffer): Likewise.
15019         (regcache::assert_regnum): Likewise.
15020         (regcache::num_raw_registers): Likewise.
15021         * regcache.h (reg_buffer): New class.
15022         (regcache): Inherit reg_buffer.
15023
15024 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15025
15026         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15027         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15028
15029 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15030
15031         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15032
15033 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15034
15035         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15036         (SFILES): Remove common/*.c files.
15037         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15038         * common/common.host: Add common reference.
15039         * configure.ac: Likewise.
15040         * configure: Regenerate.
15041
15042 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15043
15044         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15045         (block_initialize_namespace): Use new.
15046         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15047         (dwarf2_free_objfile): Use delete.
15048         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15049         (copy_type_recursive): Use new.
15050         * gdb_obstack.h (allocate_on_obstack): New.
15051
15052 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15053
15054         PR gdb/22849
15055         * inferior.c (exit_inferior_1): Reset inf->control.
15056
15057 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15058
15059         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15060         declaration.
15061
15062 2018-02-14  Pedro Alves  <palves@redhat.com>
15063
15064         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15065         frame_cleanup_after_sniffer on exception.
15066
15067 2018-02-14  Tom Tromey  <tom@tromey.com>
15068
15069         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15070         const.
15071         (solib_bfd_open): Make pathname const.
15072         * solib.c (solib_bfd_open): Make pathname const.
15073         * solib-spu.c (spu_bfd_fopen): Make name const.
15074         (spu_bfd_open): Make pathname const.
15075         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15076         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15077
15078 2018-02-14  Tom Tromey  <tom@tromey.com>
15079
15080         * symfile.c (symfile_bfd_open): Update.
15081         * source.h (openp, source_full_path_of, find_and_open_source):
15082         Change argument type to unique_xmalloc_ptr.
15083         * source.c (openp): Take a unique_xmalloc_ptr.
15084         (source_full_path_of, find_and_open_source): Likewise.
15085         (open_source_file, symtab_to_fullname): Update.
15086         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15087         unique_xmalloc_ptr.
15088         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15089         (exec_file_find): Update.
15090         * psymtab.c (psymtab_to_fullname): Update.
15091         * nto-tdep.h (nto_find_and_open_solib): Update.
15092         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15093         unique_xmalloc_ptr.
15094         * exec.c (exec_file_attach): Update.
15095         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15096         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15097
15098 2018-02-14  Tom Tromey  <tom@tromey.com>
15099
15100         * solib.c: Include source.h.
15101         * nto-tdep.c: Include source.h.
15102         * mi/mi-cmd-env.c: Include source.h.
15103         * infcmd.c: Include source.h.
15104         * exec.c: Include source.h.
15105         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15106         (add_path, directory_switch, source_path, init_source_path): Move
15107         declarations...
15108         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15109         (add_path, directory_switch, source_path, init_source_path):
15110         ...here.
15111
15112 2018-02-14  Tom Tromey  <tom@tromey.com>
15113
15114         * solist.h (exec_file_find, solib_find): Return
15115         unique_xmalloc_ptr.
15116         (solib_bfd_fopen): Take a const char *.
15117         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15118         (exec_file_find, solib_find): Likewise.
15119         (solib_bfd_fopen): Do not take ownership of "pathname".
15120         (solib_bfd_open): Use unique_xmalloc_ptr.
15121         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15122         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15123         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15124         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15125
15126 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15127
15128         * ada-lang.c (name_match_type_from_name): Remove reference to
15129         ada_name_for_lookup in function's documentation.
15130         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15131
15132 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15133
15134         * defs.h (enum openp_flags): New enum.
15135         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15136         Move to enum openp_flags.
15137         (openp_flags): New enum flags.
15138         (openp): Change parameter type to openp_flags.
15139         * source.c (openp): Change parameter type to openp_flags.
15140         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15141         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15142
15143 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15144
15145         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15146         per-command.
15147
15148 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15149
15150         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15151         into...
15152         (class dwarf2_queue_guard): ...the destructor of this new class.
15153         (dw2_do_instantiate_symtab): Create instance of the new class
15154         dwarf2_queue_guard, remove cleanup.
15155
15156 2018-02-09  Tom Tromey  <tom@tromey.com>
15157
15158         * source.c (find_source_lines): Don't reference past the end of
15159         the vector.
15160
15161 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15162
15163         * remote.c (remote_btrace_maybe_reopen): Change error message.
15164         * btrace.c (btrace_enable): Likewise.
15165         (parse_xml_btrace): Likewise.
15166         (parse_xml_btrace_conf): Likewise.
15167
15168 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15169
15170         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15171         (linux_enable_pt, linux_enable_bts): Call
15172         diagnose_perf_event_open_fail.
15173
15174 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15175
15176         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15177         Remove parameter and change return type.  Update callers.  Move it.
15178         (linux_enable_bts, linux_enable_pt): Improve error message.
15179         (linux_enable_pt): Remove zero buffer size check.
15180         (linux_enable_btrace): Improve error messages.  Remove NULL return
15181         check.
15182
15183 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15184
15185         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15186         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15187         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15188         (linux_supports_pt, linux_supports_btrace): Remove.
15189         (linux_enable_bts): Call cpu_supports_bts.
15190         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15191         * remote.c (remote_supports_btrace): Remove.
15192         (init_remote_ops): Remove remote_supports_btrace.
15193         * target-delegates.c: Regenerated.
15194         * target.c (target_supports_btrace): Remove.
15195         * target.h (target_ops) <to_supports_btrace>: Remove
15196         (target_supports_btrace): Remove.
15197         * x86-linux-nat.c (x86_linux_create_target): Remove
15198         linux_supports_btrace.
15199
15200 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15201
15202         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15203         btrace failed.
15204         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15205         exception and use message in own exception.
15206
15207 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15208
15209         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15210         (perf_event_pt_event_type): Use gdb_file_up.
15211         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15212         scoped_fd, and scoped_mmap.
15213
15214 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15215
15216         * common/scoped_mmap.h: New.
15217         * unittests/scoped_mmap-selftest.c: New.
15218         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15219         unittests/scoped_mmap-selftest.c.
15220
15221 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15222
15223         * common/scoped_fd.h: New.
15224         * unittests/scoped_fd-selftest.c: New.
15225         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15226         unittests/scoped_fd-selftest.c.
15227
15228 2018-02-09  Tom Tromey  <tom@tromey.com>
15229
15230         * auto-load.c (auto_load_section_scripts): Use
15231         gdb::unique_xmalloc_ptr.
15232
15233 2018-02-09  Tom Tromey  <tom@tromey.com>
15234
15235         * auto-load.c (execute_script_contents): Use std::string.
15236
15237 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15238
15239         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15240         Python function, rather than a new command.
15241
15242 2018-02-08  Tom Tromey  <tom@tromey.com>
15243
15244         * solib.c (solib_find_1): Use std::string.
15245         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15246
15247 2018-02-08  Tom Tromey  <tom@tromey.com>
15248
15249         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15250
15251 2018-02-08  Tom Tromey  <tom@tromey.com>
15252
15253         * source.c (find_source_lines): Use gdb::def_vector.
15254
15255 2018-02-08  Tom Tromey  <tom@tromey.com>
15256
15257         * macrocmd.c (struct temporary_macro_definition): New.
15258         (macro_define_command): Use temporary_macro_definition.  Remove
15259         cleanups.
15260         (free_macro_definition_ptr): Remove.
15261
15262 2018-02-08  Tom Tromey  <tom@tromey.com>
15263
15264         * macroexp.c (maybe_expand): Use std::string.
15265
15266 2018-02-08  Tom Tromey  <tom@tromey.com>
15267
15268         * macroexp.c (struct macro_buffer): Add initializers for some
15269         members.
15270         (init_buffer, init_shared_buffer, free_buffer)
15271         (free_buffer_return_text): Remove.
15272         (macro_buffer): New constructors.
15273         (~macro_buffer): New destructor.
15274         (macro_buffer::set_shared): New method.
15275         (macro_buffer::resize_buffer, macro_buffer::appendc)
15276         (macro_buffer::appendmem): Now methods, not free functions.
15277         (set_token, append_tokens_without_splicing, stringify)
15278         (macro_stringify): Update.
15279         (gather_arguments): Change return type.  Remove argc_p argument,
15280         add args_ptr argument.  Use std::vector.
15281         (substitute_args): Remove argc argument.  Accept std::vector.
15282         (expand): Update.  Use std::vector.
15283         (scan, macro_expand, macro_expand_next): Update.
15284
15285 2018-02-08  Tom Tromey  <tom@tromey.com>
15286
15287         * symtab.c (default_collect_symbol_completion_matches_break_on):
15288         Use unique_xmalloc_ptr.
15289         * macroscope.h: (sal_macro_scope, user_macro_scope)
15290         (default_macro_scope): Return unique_xmalloc_ptr.
15291         * macroscope.c (sal_macro_scope, user_macro_scope)
15292         (default_macro_scope): Return unique_xmalloc_ptr.
15293         * macroexp.h (macro_expand, macro_expand_once): Return
15294         unique_xmalloc_ptr.
15295         * macroexp.c (macro_expand, macro_expand_once): Return
15296         unique_xmalloc_ptr.
15297         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15298         (info_macro_command, info_macros_command): Use
15299         unique_xmalloc_ptr.
15300         * compile/compile-c-support.c (write_macro_definitions): Use
15301         unique_xmalloc_ptr.
15302         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15303
15304 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15305
15306         * value.c (value_static_field): Assign field type instead of
15307         containing type when returning an optimized out value.
15308
15309 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15310
15311         * ft32-tdep.c (ft32_read_pc): Remove.
15312         (ft32_write_pc): Remove.
15313         (ft32_gdbarch_init): Update.
15314         * m32r-tdep.c (m32r_read_pc): Remove.
15315         (m32r_gdbarch_init): Update.
15316         * mep-tdep.c (mep_read_pc): Remove.
15317         (mep_gdbarch_init): Update.
15318         * microblaze-tdep.c (microblaze_write_pc): Remove.
15319         (microblaze_gdbarch_init): Update.
15320         * mn10300-tdep.c (mn10300_read_pc): Remove.
15321         (mn10300_write_pc): Remove.
15322         (mn10300_gdbarch_init): Update.
15323         * moxie-tdep.c (moxie_read_pc): Remove.
15324         (moxie_write_pc): Remove.
15325         (moxie_gdbarch_init): Update.
15326
15327 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15328
15329         * expprint.c (print_subexp_standard): Handle
15330         OP_F77_UNDETERMINED_ARGLIST.
15331         (dump_subexp_body_standard): Likewise.
15332
15333 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15334
15335         * target-descriptions.c (tdesc_element_visitor) Add empty
15336         implementations.
15337         (tdesc_type): Move make_gdb_type from here.
15338         (tdesc_type_builtin): Likewise.
15339         (tdesc_type_vector): Likewise.
15340         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15341         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15342         (make_gdb_type_union): Likewise.
15343         (make_gdb_type_flags): Likewise.
15344         (make_gdb_type_enum): Likewise.
15345         (make_gdb_type): New function.
15346         (tdesc_register_type): Use static make_gdb_type.
15347
15348 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15349
15350         * infcmd.c (default_print_one_register_info): Align natural-format
15351         column values consistently one under another.
15352         (pad_to_column): New function.
15353
15354 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15355
15356         * dwarf2read.c (dwarf2_physname): Move commment.
15357
15358 2018-02-01  Leszek Swirski  <leszeks@google.com>
15359
15360         * varobj.c (varobj_formatted_print_options): Allow recursive
15361         pretty printing if pretty printing is enabled.
15362
15363 2018-02-01  Leszek Swirski  <leszeks@google.com>
15364
15365         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15366         names after a structop as a filename.
15367
15368 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15369
15370         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15371         (arm_record_coproc_data_proc): Likewise.
15372
15373 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15374
15375         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15376
15377 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15378
15379         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15380         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15381
15382 2018-01-31  Pedro Alves  <palves@redhat.com>
15383
15384         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15385         * inflow.c (child_terminal_save_inferior): Wrap reference to
15386         tcgetpgrp in HAVE_TERMIOS_H.
15387         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15388         _WIN32.
15389         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15390         always iterate over all inferiors.
15391         (gdbsim_cntrl_c): Adjust.
15392         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15393
15394 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15395
15396         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15397         index type is objfile-owned if the element type is as well.
15398
15399 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15400
15401         GDB 8.1 released.
15402
15403 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15404
15405         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15406         "features/s390x-linux64.c".
15407         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15408         s390_linux32 and s390x_linux64.
15409         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15410         default tdesc.
15411         * s390-tdep.c: Include "features/s390-linux32.c" and
15412         "features/s390x-linux64.c".
15413         (s390_tdesc_valid): Add check for tdesc_has_registers.
15414         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15415         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15416         tdesc_s390x_linux64.
15417         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15418         tdesc_s390x_linux64 to...
15419         * s390-tdep.h: ...here.
15420
15421 2018-01-30  Pedro Alves  <palves@redhat.com>
15422
15423         PR gdb/13211
15424         * config.in, configure: Regenerate.
15425         * configure.ac: Check for getpgid.
15426         * go32-nat.c (go32_pass_ctrlc): New.
15427         (go32_target): Install it.
15428         * inf-child.c (inf_child_target): Install
15429         child_terminal_save_inferior, child_pass_ctrlc and
15430         child_interrupt.
15431         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15432         (inf_ptrace_target): No longer install it.
15433         * infcmd.c (interrupt_target_1): Adjust.
15434         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15435         (child_interrupt): Declare.
15436         (inferior::terminal_state): New.
15437         * inflow.c (struct terminal_info): Update comments.
15438         (inferior_process_group): Delete.
15439         (terminal_is_ours): Delete.
15440         (gdb_tty_state): New.
15441         (child_terminal_init): Adjust.
15442         (is_gdb_terminal, sharing_input_terminal_1)
15443         (sharing_input_terminal): New functions.
15444         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15445         Set the process's actual process group in the foreground if
15446         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15447         mark terminal as the inferior's if not sharing GDB's terminal.
15448         Don't check attach_flag.
15449         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15450         pass down a target_terminal_state.
15451         (child_terminal_save_inferior): New, factored out from ...
15452         (child_terminal_ours_1): ... this.  Handle
15453         target_terminal_state::is_ours_for_output.
15454         (child_interrupt, child_pass_ctrlc): New.
15455         (inflow_inferior_exit): Clear the inferior's terminal_state.
15456         (copy_terminal_info): Copy the inferior's terminal state.
15457         (_initialize_inflow): Remove reference to terminal_is_ours.
15458         * inflow.h (inferior_process_group): Delete.
15459         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15460         * procfs.c (procfs_target): Don't install procfs_interrupt.
15461         (procfs_interrupt): Delete.
15462         * remote.c (remote_serial_quit_handler): Adjust.
15463         (remote_interrupt): Remove ptid parameter.  Adjust.
15464         * target-delegates.c: Regenerate.
15465         * target.c: Include "terminal.h".
15466         (target_terminal::terminal_state): Rename to ...
15467         (target_terminal::m_terminal_state): ... this.
15468         (target_terminal::init): Adjust.
15469         (target_terminal::inferior): Adjust to per-inferior
15470         terminal_state.
15471         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15472         (target_terminal::ours, target_terminal::ours_for_output): Use
15473         target_terminal_is_ours_kind.
15474         (target_interrupt): Remove ptid parameter.  Adjust.
15475         (default_target_pass_ctrlc): Adjust.
15476         * target.h (target_ops::to_terminal_save_inferior): New field.
15477         (target_ops::to_interrupt): Remove ptid_t parameter.
15478         (target_interrupt): Remove ptid_t parameter.  Update comment.
15479         (target_pass_ctrlc): Update comment.
15480         * target/target.h (target_terminal_state): New scoped enum,
15481         factored out of ...
15482         (target_terminal::terminal_state): ... here.
15483         (target_terminal::inferior): Update comments.
15484         (target_terminal::restore_inferior): New.
15485         (target_terminal::is_inferior, target_terminal::is_ours)
15486         (target_terminal::is_ours_for_output): Adjust.
15487         (target_terminal::scoped_restore_terminal_state): Adjust to
15488         rename, and call restore_inferior() instead of inferior().
15489         (target_terminal::scoped_restore_terminal_state::m_state): Change
15490         type.
15491         (target_terminal::terminal_state): Rename to ...
15492         (target_terminal::m_terminal_state): ... this and change type.
15493
15494 2018-01-30  Pedro Alves  <palves@redhat.com>
15495
15496         * linux-nat.c (wait_for_signal): New function.
15497         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15498         directly.
15499         (async_terminal_is_ours)
15500         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15501         (linux_nat_add_target): Don't override
15502         to_terminal_inferior/to_terminal_ours.
15503
15504 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15505
15506         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15507
15508 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15509
15510         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15511         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15512         dwarf2_per_objfile_free here.
15513         (dwarf2_per_objfile_free): Remove.
15514         (_initialize_dwarf2_read): Don't register
15515         dwarf2_per_objfile_free as a registry cleanup.
15516
15517 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15518
15519         Avoid compilation errors in MinGW native builds
15520
15521         The error is triggered by including python-internal.h, and the
15522         error message is:
15523
15524              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15525                       from build-gnulib/import/math.h:27,
15526                       from d:/usr/Python26/include/pyport.h:235,
15527                       from d:/usr/Python26/include/Python.h:58,
15528                       from python/python-internal.h:94,
15529                       from python/py-arch.c:24:
15530              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15531         using ::hypot;
15532                 ^~~~~
15533
15534         This happens because Python headers define 'hypot' to expand t
15535         '_hypot' in the Windows builds.
15536         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15537         'hypoth'.  This avoids a compilation error.
15538
15539 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15540
15541         * MAINTAINERS (Write After Approval): Fix ordering.
15542
15543 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15544
15545         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15546
15547 2018-01-26  Alan Modra  <amodra@gmail.com>
15548
15549         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15550         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15551         Remove nop.  Make const.  Comment.
15552         (powerpc32_plt_stub_so_2): New.
15553         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15554         Correct count.  Update uses.
15555         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15556         Move common code reading PLT entry word.  Correct
15557         powerpc32_plt_stub PLT address calculation.
15558         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15559         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15560         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15561         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15562         (ppc64_standard_linkage8): Likewise.
15563         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15564         Correct insns description.
15565         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15566
15567 2018-01-24  Pedro Alves  <palves@redhat.com>
15568
15569         GCC PR libstdc++/83906
15570         * gdbtypes.c (operator==(const dynamic_prop &,
15571         const dynamic_prop &)): New.
15572         (operator==(const range_bounds &, const range_bounds &)): New.
15573         (check_types_equal): Use them instead of memcmp.
15574         * gdbtypes.h (operator==(const dynamic_prop &,
15575         const dynamic_prop &)): Declare.
15576         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15577         (operator==(const range_bounds &, const range_bounds &)): Declare.
15578         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15579
15580 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15581
15582         * s390-linux-tdep.c (s390_record_address_mask)
15583         (s390_record_calc_disp_common, s390_record_calc_disp)
15584         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15585         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15586         (s390_process_record): Move to s390-tdep.c.
15587         (s390_linux_init_abi_any): Adjust.
15588         * s390-tdep.c (s390_record_address_mask)
15589         (s390_record_calc_disp_common, s390_record_calc_disp)
15590         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15591         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15592         (s390_process_record): Moved from s390-linux-tdep.c
15593         (s390_gdbarch_init): Adjust.
15594
15595 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15596
15597         * s390-linux-nat.c (s390-tdep.h): New include.
15598         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15599         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15600         (ALLDEPFILES): Add s390-tdep.c.
15601         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15602         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15603         * s390-tdep.h: ...this.  New file.
15604         * s390-linux-tdep.c (s390-tdep.h): New include.
15605         (_initialize_s390_tdep): Rename to...
15606         (_initialize_s390_linux_tdep): ...this and adjust.
15607         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15608         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15609         s390-tdep.h.
15610         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15611         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15612         (s390_is_partial_instruction, s390_software_single_step)
15613         (is_non_branch_ril, s390_displaced_step_copy_insn)
15614         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15615         (s390_prologue_data, s390_addr, s390_store, s390_load)
15616         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15617         (s390_register_call_saved, s390_guess_tracepoint_registers)
15618         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15619         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15620         (s390_pseudo_register_name, s390_pseudo_register_type)
15621         (s390_pseudo_register_read, s390_pseudo_register_write)
15622         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15623         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15624         (s390_addr_bits_remove, s390_address_class_type_flags)
15625         (s390_address_class_type_flags_to_name)
15626         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15627         (s390_function_arg_float, s390_function_arg_vector)
15628         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15629         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15630         (s390_frame_align, s390_register_return_value, s390_return_value)
15631         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15632         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15633         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15634         (s390_trad_frame_prev_register, s390_unwind_cache)
15635         (s390_prologue_frame_unwind_cache)
15636         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15637         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15638         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15639         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15640         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15641         (s390_frame_base_address, s390_local_base_address)
15642         (s390_frame_base, s390_gcc_target_options)
15643         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15644         (s390_validate_reg_range, s390_tdesc_valid)
15645         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15646         * s390-tdep.c: ...this.  New file.
15647
15648 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15649
15650         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15651         (s390_process_record, s390_gdbarch_tdep_alloc)
15652         (s390_linux_init_abi_any): Use/set new hook.
15653
15654 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15655
15656         * s390-linux-tdep.c (osabi.h): New include.
15657         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15658         (s390_linux_init_abi_any): New functions.
15659         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15660
15661 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15662
15663         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15664         tdesc_has_registers check
15665
15666 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15667
15668         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15669         (s390_validate_reg_range): New macro.
15670         (s390_gdbarch_init): Adjust.
15671
15672 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15673
15674         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15675         (s390_gdbarch_tdep_alloc): Adjust.
15676         (s390_gdbarch_init): Adjust.
15677
15678 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15679
15680         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15681         <have_tdb>: Change type to bool.
15682         (s390_gdbarch_tdep_alloc): Adjust.
15683         (s390_gdbarch_init): Adjust.
15684
15685 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15686
15687         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15688         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15689         (s390_gdbarch_tdep_alloc): New function.
15690         (s390_gdbarch_init): Allocate tdep at start and use its fields
15691         instead of separate variables.
15692
15693 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15694
15695         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15696         when looking for cached gdbarch and add comment for remaining.
15697
15698 2018-01-22  Pedro Alves  <palves@redhat.com>
15699             Sergio Durigan Junior  <sergiodj@redhat.com>
15700
15701         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15702         case.
15703
15704 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15705
15706         * MAINTAINERS: Update my company e-mail address.
15707
15708 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15709
15710         * regcache.c (cooked_write_test): New function.
15711         (_initialize_regcache): Register the test.
15712
15713 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15714
15715         * ia64-tdep.c (ia64_pseudo_register_read): Call
15716         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15717         * m32c-tdep.c (m32c_cat_read): Likewise.
15718         (m32c_r3r2r1r0_read): Likewise.
15719         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15720         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15721
15722 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15723
15724         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15725         method raw_read instead of regcache_raw_read.
15726         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15727         * arm-tdep.c (arm_neon_quad_read): Likewise.
15728         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15729         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15730         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15731         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15732         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15733         (i386_pseudo_register_read_into_value): Likewise.
15734         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15735         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15736         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15737         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15738         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15739         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15740         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15741         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15742         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15743
15744 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15745
15746         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15747         * configure.tgt: Remove target mt.
15748         * mt-tdep.c: Remove.
15749         * regcache.c (cooked_read_test): Remove the check for mt.
15750
15751 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15752
15753         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15754         instead of gdbarch_pseudo_register_read_value.
15755
15756 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15757
15758         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15759         language is Ada.
15760
15761 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15762
15763         * linespec.c (create_sals_line_offset): Remove code that preserved
15764         the symtab_and_line's line number.
15765
15766 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15767
15768         * varobj.c (varobj_create): Don't set valid_block when creating a
15769         floating varobj.
15770
15771 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15772
15773         * varobj.c (varobj_create): Remove out of date comment.
15774
15775 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15776
15777         PR mi/20395
15778         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15779         updating innermost block.
15780         * parse.c (innermost_block_tracker::update): Take extra type
15781         parameter, and check types match before updating innermost block.
15782         (write_dollar_variable): Update innermost block for registers.
15783         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15784         (innermost_block_tracker::innermost_block_tracker): Initialise
15785         m_types member.
15786         (innermost_block_tracker::reset): Take type parameter.
15787         (innermost_block_tracker::update): Take type parameter, and pass
15788         type through as needed.
15789         (innermost_block_tracker::m_types): New member.
15790         * varobj.c (varobj_create): Pass type when reseting innermost
15791         block.
15792
15793 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15794
15795         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15796         * ada-lang.c (resolve_subexp): Likewise.
15797         * breakpoint.c (set_breakpoint_condition) Likewise.
15798         (watch_command_1) Likewise.
15799         * c-exp.y (variable): Likewise.
15800         * d-exp.y (PrimaryExpression): Likewise.
15801         * f-exp.y (variable): Likewise.
15802         * go-exp.y (variable): Likewise.
15803         * m2-exp.y (variable): Likewise.
15804         * objfiles.c (objfile::~objfile): Likewise.
15805         * p-exp.y (variable): Likewise.
15806         * parse.c (innermost_block): Change type.
15807         * parser-defs.h (class innermost_block_tracker): New.
15808         (innermost_block): Change to innermost_block_tracker.
15809         * printcmd.c (display_command): Switch to innermost_block API.
15810         (do_one_display): Likewise.
15811         * rust-exp.y (do_one_display): Likewise.
15812         * symfile.c (clear_symtab_users): Likewise.
15813         * varobj.c (varobj_create): Switch to innermost_block API, replace
15814         use of innermost_block with block stored on varobj object.
15815
15816 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15817
15818         * expression.h (innermost_block): Remove declaration.
15819         * varobj.c: Add 'parser-defs.h' include.
15820
15821 2018-01-19  Tom Tromey  <tom@tromey.com>
15822
15823         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15824         symbols in the static and global blocks.
15825
15826 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15827
15828         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15829         gdb_ptrace.h, and move including gdb_wait.h ...
15830         * nat/linux-ptrace.h: ... to here.
15831
15832 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15833
15834         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15835         inf_ptrace_detach_success.
15836         (inf_ptrace_detach_success): Add inferior parameter, use it
15837         instead of inferior_ptid, pass it to detach_inferior.
15838         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15839         parameter.
15840         * inferior.c (detach_inferior): Add overload that takes an
15841         inferior object.
15842         * inferior.h (detach_inferior): Likewise.
15843         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15844         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15845         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15846
15847 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15848
15849         * target.h (struct target_ops) <to_detach>: Add inferior
15850         parameter.
15851         (target_detach): Likewise.
15852         * target.c (dispose_inferior): Pass inferior down.
15853         (target_detach): Pass inferior down.  Assert that it is equal to
15854         the current inferior.
15855         * aix-thread.c (aix_thread_detach): Pass inferior down.
15856         * corefile.c (core_file_command): Pass current_inferior() down.
15857         * corelow.c (core_detach): Add inferior parameter.
15858         * darwin-nat.c (darwin_detach): Likewise.
15859         * gnu-nat.c (gnu_detach): Likewise.
15860         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15861         * infcmd.c (detach_command): Pass current_inferior() down to
15862         target_detach.
15863         * infrun.c (follow_fork_inferior): Pass parent_inf to
15864         target_detach.
15865         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15866         target_detach.
15867         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15868         * linux-thread-db.c (thread_db_detach): Likewise.
15869         * nto-procfs.c (procfs_detach): Likewise.
15870         * procfs.c (procfs_detach): Likewise.
15871         * record.c (record_detach): Likewise.
15872         * record.h (struct inferior): Forward-declare.
15873         (record_detach): Add inferior parameter.
15874         * remote-sim.c (gdbsim_detach): Likewise.
15875         * remote.c (remote_detach_1): Likewise.
15876         (remote_detach): Likewise.
15877         (extended_remote_detach): Likewise.
15878         * sol-thread.c (sol_thread_detach): Likewise.
15879         * target-debug.h (target_debug_print_inferior_p): New macro.
15880         * target-delegates.c: Re-generate.
15881         * top.c (kill_or_detach): Pass inferior down to target_detach.
15882         * windows-nat.c (windows_detach): Add inferior parameter.
15883
15884 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15885
15886         * target.h (struct target_ops) <to_detach>: Remove args
15887         parameter.
15888         (target_detach): Likewise.
15889         * target.c (dispose_inferior): Adjust.
15890         (target_detach): Remove args parameter, adjust.
15891         * aix-thread.c (aix_thread_detach): Adjust.
15892         * corefile.c (core_file_command): Adjust.
15893         * corelow.c (core_detach): Adjust.
15894         * darwin-nat.c (darwin_detach): Adjust.
15895         * gnu-nat.c (gnu_detach): Adjust.
15896         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15897         * infcmd.c (detach_command): Adjust
15898         * infrun.c (follow_fork_inferior): Adjust.
15899         (handle_vfork_child_exec_or_exit): Adjust.
15900         * linux-fork.c (linux_fork_detach): Remove args parameter.
15901         * linux-fork.h (linux_fork_detach): Likewise.
15902         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15903         * linux-thread-db.c (thread_db_detach): Likewise.
15904         * nto-procfs.c (procfs_detach): Likewise.
15905         * procfs.c (procfs_detach): Likewise.
15906         (do_detach): Remove signo parameter.
15907         * record.c (record_detach): Remove args parameter.
15908         * record.h (record_detach): Likewise.
15909         * remote-sim.c (gdbsim_detach): Likewise.
15910         * remote.c (remote_detach_1): Likewise.
15911         (remote_detach): Likewise.
15912         (extended_remote_detach): Likewise.
15913         * sol-thread.c (sol_thread_detach): Likewise.
15914         * target-delegates.c: Re-generate.
15915         * top.c (struct qt_args) <args>: Remove field.
15916         (kill_or_detach): Don't pass args.
15917         (quit_force): Don't set args.
15918         * windows-nat.c (windows_detach): Remove args parameter.
15919
15920 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15921
15922         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15923         (arm_linux_init_abi): Install it.
15924
15925 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15926
15927         * osabi.c (gdb_osabi_names): Extend the regexp for
15928         arm-linux-gnueabihf.
15929
15930 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15931
15932         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15933         m_abbrevs.
15934         (abbrev_table::add_abbrev): Update.
15935         (abbrev_table::lookup_abbrev): Update.
15936
15937 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15938
15939         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15940
15941 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15942
15943         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15944         to "std::string".
15945
15946 2018-01-17  Tom Tromey  <tom@tromey.com>
15947
15948         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15949
15950 2018-01-17  Tom Tromey  <tom@tromey.com>
15951
15952         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15953         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15954         (create_array_type_with_stride): Update.
15955         * dwarf2read.c (set_die_type): Update.
15956
15957 2018-01-17  Tom Tromey  <tom@tromey.com>
15958
15959         * dwarf2read.c (delayed_method_info): Remove typedef.
15960         (dwarf2_cu::method_info): Now a std::vector.
15961         (add_to_method_list): Update.
15962         (free_delayed_list): Remove.
15963         (compute_delayed_physnames): Update.
15964         (process_full_comp_unit, process_full_type_unit): Clear the method
15965         list.  Remove cleanups.
15966         (psymtab_include_file_name): Add name_holder parameter.  Use
15967         unique_xmalloc_ptr.
15968         (dwarf_decode_lines): Update.
15969
15970 2018-01-17  Tom Tromey  <tom@tromey.com>
15971             Simon Marchi  <simon.marchi@ericsson.com>
15972
15973         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15974         (dwarf2_per_objfile::free_cached_comp_units)
15975         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15976         (init_cutu_and_read_dies_no_follow): Update.
15977         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15978         (dwarf2_cu::~dwarf2_cu): New.
15979         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15980         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15981
15982 2018-01-17  Tom Tromey  <tom@tromey.com>
15983             Simon Marchi  <simon.marchi@ericsson.com>
15984
15985         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15986         (struct die_reader_specs) <abbrev_table>: New member.
15987         (struct abbrev_table): Add constructor.
15988         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15989         <abbrev_obstack>: Now an auto_obstack.
15990         (abbrev_table_up): New typedef.
15991         (init_cu_die_reader): Add abbrev_table parameter.
15992         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15993         Add result_dwo_abbrev_table.
15994         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15995         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15996         Update.
15997         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15998         parameter.
15999         (skip_children): Update.
16000         (abbrev_table::alloc_abbrev): Rename from
16001         abbrev_table_alloc_abbrev.
16002         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16003         (abbrev_table::lookup_abbrev): Rename from
16004         abbrev_table_lookup_abbrev.
16005         (abbrev_table_read_table): Return abbrev_table_up.
16006         (abbrev_table_free, abbrev_table_free_cleanup)
16007         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16008         (load_partial_dies): Update.
16009
16010 2018-01-17  Tom Tromey  <tom@tromey.com>
16011
16012         * dwarf2read.c (dwarf2_compute_name): Update comment.
16013         (read_func_scope, read_variable): Update.
16014         (new_symbol): Remove.
16015         (new_symbol_full): Rename to new_symbol.
16016
16017 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16018
16019         PR gdb/16577
16020         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16021         a warning instead of throwing an error, set section size to 0 and return
16022         NULL.
16023         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16024
16025 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16026
16027         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16028         std::string.
16029         (linux_ptrace_attach_fail_reason_string): Likewise.
16030         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16031         Likewise.
16032         (linux_ptrace_attach_fail_reason_string): Likewise.
16033         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16034
16035 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16036
16037         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16038
16039 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16040
16041         PR gdb/21559
16042         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16043         checking for fs_base/gs_base fields in struct user_regs_struct.
16044         * configure: Regenerate.
16045
16046 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16047
16048         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16049         function.
16050         (aarch64_linux_init_abi): Install it to gdbarch hook
16051         gcc_target_options.
16052
16053 2018-01-15  Pedro Alves  <palves@redhat.com>
16054
16055         * common/signals-state-save-restore.c
16056         (save_original_signals_state): Fix typos.
16057
16058 2017-01-12  Tom Tromey  <tom@tromey.com>
16059             Sergio Durigan Junior  <sergiodj@redhat.com>
16060
16061         * Makefile.in (install-only): Install gdb-add-index.
16062
16063 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16064
16065         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16066
16067 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16068
16069         * infrun.c (keep_going_pass_signal): Clear step-over info when
16070         insert_breakpoints fails.
16071
16072 2018-01-11  Pedro Alves  <palves@redhat.com>
16073
16074         PR gdb/22583
16075         * infrun.c (resume): Rename to ...
16076         (resume_1): ... this.
16077         (resume): Reimplement as wrapper around resume_1.
16078
16079 2018-01-11  Pedro Alves  <palves@redhat.com>
16080
16081         PR remote/22597
16082         * remote.c (remote_parse_stop_reply): Default to the last-set
16083         general thread instead of to 'magic_null_ptid'.
16084
16085 2018-01-10  Pedro Alves  <palves@redhat.com>
16086
16087         * language.h (language_get_symbol_name_matcher): Rename ...
16088         (get_symbol_name_matcher): ... this.
16089         * language.c (language_get_symbol_name_matcher): Ditto.
16090         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16091         callers adjusted.
16092
16093 2018-01-10  Pedro Alves  <palves@redhat.com>
16094
16095         PR gdb/22670
16096         * dwarf2read.c
16097         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16098         Adjust to use language_get_symbol_name_matcher instead of
16099         language_defn::la_get_symbol_name_matcher.
16100         * language.c (language_get_symbol_name_matcher): If in Ada mode
16101         and the lookup name is a verbatim match, return Ada's matcher.
16102         * language.h (language_get_symbol_name_matcher): Adjust comment.
16103         (ada_lookup_name_info::verbatim_p):: New method.
16104
16105 2018-01-10  Pedro Alves  <palves@redhat.com>
16106
16107         PR gdb/22670
16108         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16109         minsym's language is language_auto or language_cplus, pass down
16110         language_ada instead.
16111         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16112
16113 2018-01-10  Pedro Alves  <palves@redhat.com>
16114
16115         PR gdb/22670
16116         * minsyms.c (linkage_name_str): New function.
16117         (iterate_over_minimal_symbols): Use it.
16118
16119 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16120
16121         * NEWS: Document that 'info proc' now works on FreeBSD.
16122
16123 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16124
16125         * configure.ac: Check for kinfo_getfile in libutil.
16126         * configure: Regenerate.
16127         * config.in: Regenerate.
16128         * fbsd-nat.c: Include "fbsd-tdep.h".
16129         (fbsd_fetch_cmdline): New.
16130         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16131         rather than calling error.
16132         (fbsd_info_proc): New.
16133         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16134         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16135         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16136
16137 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16138
16139         * fbsd-nat.c (struct free_deleter): Remove.
16140         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16141
16142 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16143
16144         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16145         NULL for an empty pathname.
16146
16147 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16148
16149         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16150         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16151         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16152         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16153         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16154         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16155         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16156         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16157         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16158         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16159         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16160         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16161         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16162         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16163         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16164
16165 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16166
16167         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16168         (gnu_xfer_auxv): New function.
16169         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16170         TARGET_OBJECT_AUXV.
16171
16172 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16173             Simon Marchi  <simon.marchi@ericsson.com>
16174
16175         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16176         common/selftest.c.
16177         (COMMON_OBS): Remove selftest.o.
16178         * configure.ac: Append selftest-arch.c and common/selftest.c to
16179         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16180         * configure: Re-generated.
16181         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16182         GDB_SELF_TEST.
16183         (maintenance_info_selftests): Likewise.
16184
16185 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16186
16187         * ada-valprint.c (val_print_packed_array_elements): Use
16188         proper number of elements when printing an array indexed
16189         by an enumeration type.
16190
16191 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16192
16193         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16194         (dw2_get_file_names_reader): Adjust.
16195         (lookup_dwo_signatured_type): Adjust.
16196         (lookup_dwp_signatured_type): Adjust.
16197         (lookup_signatured_type): Adjust.
16198         (create_type_unit_group): Adjust.
16199         (get_type_unit_group): Adjust.
16200         (process_psymtab_comp_unit_reader): Adjust.
16201         (build_type_psymtabs_reader): Adjust.
16202         (scan_partial_symbols): Adjust.
16203         (add_partial_symbol): Adjust.
16204         (add_partial_subprogram): Adjust.
16205         (peek_die_abbrev): Adjust.
16206         (fixup_go_packaging): Adjust.
16207         (process_imported_unit_die): Adjust.
16208         (dwarf2_compute_name): Adjust.
16209         (dwarf2_physname): Adjust.
16210         (read_import_statement): Adjust.
16211         (handle_DW_AT_stmt_list): Adjust.
16212         (read_file_scope): Adjust.
16213         (read_func_scope): Adjust.
16214         (read_lexical_block_scope): Adjust.
16215         (read_call_site_scope): Adjust.
16216         (read_variable): Adjust.
16217         (dwarf2_rnglists_process): Adjust.
16218         (dwarf2_ranges_process): Adjust.
16219         (dwarf2_ranges_read): Adjust.
16220         (dwarf2_get_pc_bounds): Adjust.
16221         (dwarf2_record_block_ranges): Adjust.
16222         (dwarf2_add_field): Adjust.
16223         (dwarf2_add_member_fn): Adjust.
16224         (read_structure_type): Adjust.
16225         (process_structure_scope): Adjust.
16226         (read_enumeration_type): Adjust.
16227         (read_array_type): Adjust.
16228         (mark_common_block_symbol_computed): Adjust.
16229         (read_common_block): Adjust.
16230         (read_namespace_type): Adjust.
16231         (read_namespace): Adjust.
16232         (read_module_type): Adjust.
16233         (read_tag_pointer_type): Adjust.
16234         (read_tag_ptr_to_member_type): Adjust.
16235         (read_tag_string_type): Adjust.
16236         (read_subroutine_type): Adjust.
16237         (read_typedef): Adjust.
16238         (read_base_type): Adjust.
16239         (attr_to_dynamic_prop): Adjust.
16240         (read_subrange_type): Adjust.
16241         (read_unspecified_type): Adjust.
16242         (dwarf2_read_abbrevs): Adjust.
16243         (load_partial_dies): Adjust.
16244         (read_partial_die): Adjust.
16245         (find_partial_die): Adjust.
16246         (guess_partial_die_structure_name): Adjust.
16247         (fixup_partial_die): Adjust.
16248         (read_attribute_value): Adjust.
16249         (read_addr_index): Adjust.
16250         (read_addr_index_from_leb128): Adjust.
16251         (read_str_index): Adjust.
16252         (dwarf2_string_attr): Adjust.
16253         (get_debug_line_section): Adjust.
16254         (dwarf_decode_line_header): Adjust.
16255         (lnp_state_machine::check_line_address): Adjust.
16256         (dwarf_decode_lines_1): Adjust.
16257         (dwarf_decode_lines): Adjust.
16258         (dwarf2_start_symtab): Adjust.
16259         (var_decode_location): Adjust.
16260         (new_symbol_full): Adjust.
16261         (dwarf2_const_value_data): Adjust.
16262         (dwarf2_const_value_attr): Adjust.
16263         (dwarf2_const_value): Adjust.
16264         (die_type): Adjust.
16265         (die_containing_type): Adjust.
16266         (build_error_marker_type): Adjust.
16267         (lookup_die_type): Adjust.
16268         (guess_full_die_structure_name): Adjust.
16269         (anonymous_struct_prefix): Adjust.
16270         (determine_prefix): Adjust.
16271         (dwarf2_name): Adjust.
16272         (follow_die_ref_or_sig): Adjust.
16273         (follow_die_offset): Adjust.
16274         (follow_die_ref): Adjust.
16275         (follow_die_sig_1): Adjust.
16276         (follow_die_sig): Adjust.
16277         (get_signatured_type): Adjust.
16278         (get_DW_AT_signature_type): Adjust.
16279         (decode_locdesc): Adjust.
16280         (dwarf_decode_macros): Adjust.
16281         (cu_debug_loc_section): Adjust.
16282         (fill_in_loclist_baton): Adjust.
16283         (dwarf2_symbol_mark_computed): Adjust.
16284         (init_one_comp_unit): Don't assign
16285         dwarf2_cu::dwarf2_per_objfile.
16286         (set_die_type): Adjust.
16287
16288 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16289
16290         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16291         <dwarf2_per_objfile>: New field.
16292         (dwarf2_per_objfile): Remove global.
16293         (get_dwarf2_per_objfile): New function.
16294         (set_dwarf2_per_objfile): New function.
16295         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16296         dwarf2_per_objfile.
16297         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16298         (read_abbrev_offset): Likewise.
16299         (read_indirect_string): Likewise.
16300         (read_indirect_line_string): Likewise.
16301         (read_indirect_string_at_offset): Likewise.
16302         (read_indirect_string_from_dwz): Likewise.
16303         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16304         dwarf2_per_objfile.
16305         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16306         (create_all_comp_units): Change objfile parameter to
16307         dwarf2_per_objfile.
16308         (create_all_type_units): Likewise.
16309         (process_queue): Add dwarf2_per_objfile parameter.
16310         (read_and_check_comp_unit_head): Likewise.
16311         (lookup_dwo_unit_in_dwp): Likewise.
16312         (get_dwp_file): Likewise.
16313         (process_cu_includes): Likewise.
16314         (struct free_dwo_file_cleanup_data): New struct.
16315         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16316         set_dwarf2_per_objfile.
16317         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16318         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16319         context, adjust calls.
16320         (dw2_instantiate_symtab): Likewise.
16321         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16322         (dw2_get_cu): Likewise.
16323         (create_cu_from_index_list): Change objfile parameter to
16324         dwarf2_per_objfile.
16325         (create_cus_from_index_list): Get dwarf2_per_objfile from
16326         context, adjust calls.
16327         (create_cus_from_index): Likewise.
16328         (create_signatured_type_table_from_index): Change objfile
16329         parameter to dwarf2_per_objfile.
16330         (create_signatured_type_table_from_debug_names): Change objfile
16331         parameter to dwarf2_per_objfile.
16332         (create_addrmap_from_index): Likewise.
16333         (create_addrmap_from_aranges): Likewise.
16334         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16335         (dw2_setup): Remove.
16336         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16337         context.
16338         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16339         get_dwarf2_per_objfile.
16340         (dw2_forget_cached_source_info): Likewise.
16341         (dw2_map_symtabs_matching_filename): Likewise.
16342         (struct dw2_symtab_iterator) <index>: Remove.
16343         <dwarf2_per_objfile>: New field.
16344         (dw2_symtab_iter_init): Replace index parameter with
16345         dwarf2_per_objfile.
16346         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16347         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16348         (dw2_print_stats): Likewise.
16349         (dw2_dump): Likewise.
16350         (dw2_expand_symtabs_for_function): Likewise.
16351         (dw2_expand_all_symtabs): Likewise.
16352         (dw2_expand_symtabs_with_fullname): Likewise.
16353         (dw2_expand_marked_cus): Replace index and objfile parameters
16354         with dwarf2_per_objfile.
16355         (dw_expand_symtabs_matching_file_matcher): Add
16356         dwarf2_per_objfile parameter and adjust calls.
16357         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16358         adjust calls.
16359         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16360         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16361         adjust calls.
16362         (create_cus_from_debug_names_list): Replace objfile parameter
16363         with dwarf2_per_objfile and adjust calls.
16364         (create_cus_from_debug_names): Likewise.
16365         (dwarf2_read_debug_names): Likewise.
16366         (mapped_debug_names::namei_to_name): Adjust call.
16367         (dw2_debug_names_iterator::next): Likewise.
16368         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16369         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16370         (dw2_debug_names_dump): Likewise.
16371         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16372         (dw2_debug_names_expand_symtabs_matching): Likewise.
16373         (dwarf2_initialize_objfile): Likewise.
16374         (dwarf2_build_psymtabs): Likewise.
16375         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16376         this_cu.
16377         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16378         (read_and_check_comp_unit_head): Likewise.
16379         (read_abbrev_offset): Likewise.
16380         (create_debug_type_hash_table): Likewise.
16381         (create_debug_types_hash_table): Likewise.
16382         (create_all_type_units): Replace objfile parameter with
16383         dwarf2_per_objfile.
16384         (add_type_unit): Add dwarf2_per_objfile parameter.
16385         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16386         with dwarf2_per_objfile.
16387         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16388         (lookup_dwp_signatured_type): Likewise.
16389         (lookup_signatured_type): Likewise.
16390         (read_cutu_die_from_dwo): Likewise.
16391         (init_tu_and_read_dwo_dies): Likewise.
16392         (init_cutu_and_read_dies): Likewise.
16393         (init_cutu_and_read_dies_no_follow): Likewise.
16394         (allocate_type_unit_groups_table): Add objfile parameter.
16395         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16396         (get_type_unit_group): Likewise.
16397         (process_psymtab_comp_unit): Update call.
16398         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16399         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16400         (print_tu_stats): Likewise.
16401         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16402         in void* parameter.
16403         (build_type_psymtabs): Change objfile parameter to
16404         dwarf2_per_objfile.
16405         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16406         passed in void* parameter.
16407         (process_skeletonless_type_units): Change objfile parameter to
16408         dwarf2_per_objfile.
16409         (set_partial_user): Likewise.
16410         (dwarf2_build_psymtabs_hard): Likewise.
16411         (read_comp_units_from_section): Likewise.
16412         (create_all_comp_units): Likewise.
16413         (scan_partial_symbols): Update calls.
16414         (add_partial_symbol): Likewise.
16415         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16416         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16417         (process_queue): Add dwarf2_per_objfile parameter.
16418         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16419         (compute_compunit_symtab_includes): Likewise.
16420         (process_cu_includes): Add dwarf2_per_objfile parameter.
16421         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16422         (process_full_type_unit): Likewise.
16423         (process_imported_unit_die): Update call.
16424         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16425         (read_file_scope): Likewise.
16426         (allocate_dwo_file_hash_table): Add objfile parameter.
16427         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16428         (create_cus_hash_table): Likewise.
16429         (create_dwp_hash_table): Likewise.
16430         (create_dwo_unit_in_dwp_v1): Likewise.
16431         (create_dwp_v2_section): Likewise.
16432         (create_dwo_unit_in_dwp_v2): Likewise.
16433         (lookup_dwo_unit_in_dwp): Likewise.
16434         (try_open_dwop_file): Likewise.
16435         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16436         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16437         cleanup to include a reference to dwarf2_per_objfile.
16438         (open_dwp_file): Add dwarf2_per_objfile parameter.
16439         (open_and_init_dwp_file): Likewise.
16440         (get_dwp_file): Likewise.
16441         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16442         (queue_and_load_all_dwo_tus): Update call.
16443         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16444         data.
16445         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16446         (dwarf2_ranges_process): Likewise.
16447         (dwarf2_get_pc_bounds): Likewise.
16448         (mark_common_block_symbol_computed): Likewise.
16449         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16450         (dwarf2_read_abbrevs): Update call.
16451         (read_partial_die): Use dwarf2_per_objfile from cu.
16452         (find_partial_die): Likewise.
16453         (fixup_partial_die): Likewise.
16454         (read_attribute_value): Likewise.
16455         (read_indirect_string_at_offset_from): Add objfile parameter.
16456         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16457         parameter.
16458         (read_indirect_string_from_dwz): Add objfile parameter.
16459         (read_indirect_string): Add objfile parameter.
16460         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16461         (read_addr_index): Use dwarf2_per_objfile from cu.
16462         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16463         call dw2_setup.
16464         (read_str_index): Use dwarf2_per_objfile from cu.
16465         (get_debug_line_section): Likewise.
16466         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16467         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16468         (new_symbol_full): Use dwarf2_per_objfile from cu.
16469         (build_error_marker_type): Likewise.
16470         (lookup_die_type): Likewise.
16471         (determine_prefix): Likewise.
16472         (follow_die_offset): Likewise.
16473         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16474         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16475         (dwarf2_fetch_die_type_sect_off): Likewise.
16476         (dwarf2_get_die_type): Likewise.
16477         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16478         (get_signatured_type): Likewise.
16479         (get_DW_AT_signature_type): Likewise.
16480         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16481         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16482         (cu_debug_loc_section): Likewise.
16483         (fill_in_loclist_baton): Likewise.
16484         (dwarf2_symbol_mark_computed): Likewise.
16485         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16486         dwarf2_per_objfile.
16487         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16488         parameter.
16489         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16490         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16491         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16492         (set_die_type): Use dwarf2_free_objfile from cu.
16493         (get_die_type_at_offset): Likewise.
16494         (dwarf2_per_objfile_free): Don't assign global variable.
16495         (debug_names) <constructor>: Add dwarf2_per_objfile
16496         parameter, update m_debugstrlookup construction.
16497         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16498         parameter.
16499         <m_dwarf2_per_objfile>: New field.
16500         <lookup>: Use m_dwarf2_per_objfile.
16501         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16502         (psyms_seen_size): Likewise.
16503         (write_gdbindex): Replace objfile parameter with
16504         dwarf2_per_objfile.
16505         (write_debug_names): Likewise.
16506         (write_psymtabs_to_index): Likewise.
16507         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16508         calls.
16509
16510 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16511
16512         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16513         <dwarf2_per_objfile>: New field.
16514         (struct dwarf2_per_cu_data) <objfile>: Remove.
16515         <dwarf2_per_objfile>: New field.
16516         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16517         of objfile.
16518         (create_signatured_type_table_from_index): Likewise.
16519         (create_debug_type_hash_table): Likewise.
16520         (fill_in_sig_entry_from_dwo_entry): Likewise.
16521         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16522         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16523         objfile.
16524         (create_partial_symtab): Access objfile through
16525         dwarf2_per_objfile.
16526         (process_psymtab_comp_unit_reader): Likewise.
16527         (read_comp_units_from_section): Likewise.
16528         (scan_partial_symbols): Likewise.
16529         (add_partial_symbol): Likewise.
16530         (add_partial_subprogram): Likewise.
16531         (peek_die_abbrev): Likewise.
16532         (fixup_go_packaging): Likewise.
16533         (process_full_comp_unit): Likewise.
16534         (process_full_type_unit): Likewise.
16535         (process_imported_unit_die): Likewise.
16536         (dwarf2_compute_name): Likewise.
16537         (dwarf2_physname): Likewise.
16538         (read_import_statement): Likewise.
16539         (create_cus_hash_table): Assign dwarf2_physname instead of
16540         objfile.
16541         (read_func_scope): Access objfile through dwarf2_per_objfile.
16542         (read_lexical_block_scope): Likewise.
16543         (read_call_site_scope): Likewise.
16544         (read_variable): Likewise.
16545         (dwarf2_rnglists_process): Likewise.
16546         (dwarf2_ranges_process): Likewise.
16547         (dwarf2_ranges_read): Likewise.
16548         (dwarf2_record_block_ranges): Likewise.
16549         (dwarf2_add_field): Likewise.
16550         (dwarf2_add_member_fn): Likewise.
16551         (read_structure_type): Likewise.
16552         (process_structure_scope): Likewise.
16553         (read_enumeration_type): Likewise.
16554         (read_array_type): Likewise.
16555         (read_common_block): Likewise.
16556         (read_namespace_type): Likewise.
16557         (read_namespace): Likewise.
16558         (read_module_type): Likewise.
16559         (read_tag_pointer_type): Likewise.
16560         (read_tag_ptr_to_member_type): Likewise.
16561         (read_tag_string_type): Likewise.
16562         (read_subroutine_type): Likewise.
16563         (read_typedef): Likewise.
16564         (read_base_type): Likewise.
16565         (attr_to_dynamic_prop): Likewise.
16566         (read_subrange_type): Likewise.
16567         (read_unspecified_type): Likewise.
16568         (load_partial_dies): Likewise.
16569         (read_partial_die): Likewise.
16570         (find_partial_die): Likewise.
16571         (guess_partial_die_structure_name): Likewise.
16572         (fixup_partial_die): Likewise.
16573         (read_attribute_value): Likewise.
16574         (read_addr_index_from_leb128): Likewise.
16575         (dwarf2_read_addr_index): Likewise.
16576         (dwarf2_string_attr): Likewise.
16577         (lnp_state_machine::check_line_address): Likewise.
16578         (dwarf_decode_lines_1): Likewise.
16579         (dwarf_decode_lines): Likewise.
16580         (dwarf2_start_symtab): Likewise.
16581         (var_decode_location): Likewise.
16582         (new_symbol_full): Likewise.
16583         (dwarf2_const_value_data): Likewise.
16584         (dwarf2_const_value_attr): Likewise.
16585         (dwarf2_const_value): Likewise.
16586         (die_type): Likewise.
16587         (die_containing_type): Likewise.
16588         (lookup_die_type): Likewise.
16589         (guess_full_die_structure_name): Likewise.
16590         (anonymous_struct_prefix): Likewise.
16591         (dwarf2_name): Likewise.
16592         (follow_die_ref_or_sig): Likewise.
16593         (follow_die_offset): Likewise.
16594         (follow_die_ref): Likewise.
16595         (dwarf2_fetch_die_loc_sect_off): Likewise.
16596         (dwarf2_fetch_constant_bytes): Likewise.
16597         (dwarf2_fetch_die_type_sect_off): Likewise.
16598         (dwarf2_get_die_type): Likewise.
16599         (follow_die_sig): Likewise.
16600         (decode_locdesc): Likewise.
16601         (dwarf2_per_cu_objfile): Likewise.
16602         (dwarf2_per_cu_text_offset): Likewise.
16603         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16604         objfile.
16605         (set_die_type): Access objfile through
16606         dwarf2_per_objfile.
16607
16608 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16609
16610         * valprint.c (converted_character_d): Remove typedef.
16611         (DEF_VEC_O (converted_character_d)): Remove.
16612         (count_next_character): Use std::vector.
16613         (print_converted_chars_to_obstack): Likewise.
16614         (generic_printstr): Likewise.
16615
16616 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16617
16618         * xml-support.h (struct gdb_xml_value): Add constructor.
16619         <value>: Change type to unique_xmalloc_ptr.
16620         (gdb_xml_value_s): Remove typedef.
16621         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16622         (gdb_xml_element_start_handler): Change parameter type to
16623         std::vector.
16624         (xml_find_attribute): Likewise.
16625         * xml-support.c (xml_find_attribute): Change parameter type to
16626         std::vector and adjust.
16627         (gdb_xml_values_cleanup): Remove.
16628         (gdb_xml_parser::start_element): Adjust to std::vector.
16629         (xinclude_start_include): Change paraeter type to std::vector
16630         and adjust.
16631         * btrace.c (check_xml_btrace_version): Likewise.
16632         (parse_xml_btrace_block): Likewise.
16633         (parse_xml_btrace_pt_config_cpu): Likewise.
16634         (parse_xml_btrace_pt): Likewise.
16635         (parse_xml_btrace_conf_bts): Likewise.
16636         (parse_xml_btrace_conf_pt): Likewise.
16637         * memory-map.c (memory_map_start_memory): Likewise.
16638         (memory_map_start_property): Likewise.
16639         * osdata.c (osdata_start_osdata): Likewise.
16640         (osdata_start_item): Likewise.
16641         (osdata_start_column): Likewise.
16642         * remote.c (start_thread): Likewise.
16643         * solib-aix.c (library_list_start_library): Likewise.
16644         (library_list_start_list): Likewise.
16645         * solib-svr4.c (library_list_start_library): Likewise.
16646         (svr4_library_list_start_list): Likewise.
16647         * solib-target.c (library_list_start_segment): Likewise.
16648         (library_list_start_section): Likewise.
16649         (library_list_start_library): Likewise.
16650         (library_list_start_list): Likewise.
16651         * tracepoint.c (traceframe_info_start_memory): Likewise.
16652         (traceframe_info_start_tvar): Likewise.
16653         * xml-syscall.c (syscall_start_syscall): Likewise.
16654         * xml-tdesc.c (tdesc_start_target): Likewise.
16655         (tdesc_start_feature): Likewise.
16656         (tdesc_start_reg): Likewise.
16657         (tdesc_start_union): Likewise.
16658         (tdesc_start_struct): Likewise.
16659         (tdesc_start_flags): Likewise.
16660         (tdesc_start_enum): Likewise.
16661         (tdesc_start_field): Likewise.
16662         (tdesc_start_enum_value): Likewise.
16663         (tdesc_start_vector): Likewise.
16664
16665 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16666
16667         * extension.h (struct xmethod_worker) <clone>: Remove.
16668         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16669         Remove.
16670         (python_xmethod_worker::clone): Remove.
16671         * valops.c (find_overload_match): Use std::move instead of
16672         clone.
16673
16674 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16675
16676         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16677         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16678         <free_xmethod_worker_data>: Remove.
16679         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16680         <get_xmethod_arg_types>: Remove.
16681         <get_xmethod_result_type>: Remove.
16682         <invoke_xmethod>: Remove.
16683         * extension.c (new_xmethod_worker): Remove.
16684         (clone_xmethod_worker): Remove.
16685         (get_matching_xmethod_workers): Return void, pass std::vector by
16686         pointer.
16687         (get_xmethod_arg_types): Rename to...
16688         (xmethod_worker::get_arg_types): ... this, and adjust.
16689         (get_xmethod_result_type): Rename to...
16690         (xmethod_worker::get_result_type): ... this, and adjust.
16691         (invoke_xmethod): Remove.
16692         (free_xmethod_worker): Remove.
16693         (free_xmethod_worker_vec): Remove.
16694         * extension.h (enum ext_lang_rc): Move here from
16695         extension-priv.h.
16696         (struct xmethod_worker): Add constructor and destructor.
16697         <data>: Remove.
16698         <value>: Remove.
16699         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16700         virtual pure methods.
16701         <get_arg_types, get_result_type>: New methods.
16702         (xmethod_worker_ptr): Remove typedef.
16703         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16704         (xmethod_worker_vec): Remove typedef.
16705         (xmethod_worker_up): New typedef.
16706         (invoke_xmethod): Remove.
16707         (clone_xmethod_worker): Remove.
16708         (free_xmethod_worker): Remove.
16709         (free_xmethod_worker_vec): Remove.
16710         (get_xmethod_arg_types): Remove.
16711         (get_xmethod_result_type): Remove.
16712         * valops.c (find_method_list): Use std::vector, don't use
16713         intermediate vector.
16714         (value_find_oload_method_list): Use std::vector.
16715         (find_overload_match): Use std::vector.
16716         (find_oload_champ): Use std::vector.
16717         * value.c (value_free): Use operator delete.
16718         (value_of_xmethod): Rename to...
16719         (value_from_xmethod): ... this.  Don't assign
16720         xmethod_worker::value, take rvalue-reference.
16721         (result_type_of_xmethod): Adjust.
16722         (call_xmethod): Adjust.
16723         * value.h: Include extension.h.
16724         (struct xmethod_worker): Don't forward-declare.
16725         (value_of_xmethod): Rename to...
16726         (value_from_xmethod): ... this, take rvalue-reference.
16727         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16728         (struct python_xmethod_worker): ... this, add constructor and
16729         destructor.
16730         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16731         (gdbpy_free_xmethod_worker_data): Rename to...
16732         (python_xmethod_worker::~python_xmethod_worker): ... this and
16733         adjust.
16734         (gdbpy_clone_xmethod_worker_data): Rename to...
16735         (python_xmethod_worker::clone): ... this and adjust.
16736         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16737         temporary vector.
16738         (gdbpy_get_xmethod_arg_types): Rename to...
16739         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16740         (gdbpy_get_xmethod_result_type): Rename to...
16741         (python_xmethod_worker::do_get_result_type): ... this and
16742         adjust.
16743         (gdbpy_invoke_xmethod): Rename to...
16744         (python_xmethod_worker::invoke): ... this and adjust.
16745         (new_python_xmethod_worker): Rename to...
16746         (python_xmethod_worker::python_xmethod_worker): ... this and
16747         adjust.
16748         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16749         Remove.
16750         (gdbpy_free_xmethod_worker_data): Remove.
16751         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16752         (gdbpy_get_xmethod_arg_types): Remove.
16753         (gdbpy_get_xmethod_result_type): Remove.
16754         (gdbpy_invoke_xmethod): Remove.
16755         * python/python.c (python_extension_ops): Remove obsolete
16756         callbacks.
16757
16758 2018-01-05  Pedro Alves  <palves@redhat.com>
16759
16760         PR gdb/18653
16761         * common/signals-state-save-restore.c
16762         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16763         find a custom handler preinstalled, instead of internal erroring.
16764         But only warn if !quiet.
16765         * common/signals-state-save-restore.h
16766         (save_original_signals_state): New parameter 'quiet'.
16767         * main.c (captured_main_1): Move save_original_signals_state call
16768         after option handling, and pass QUIET.
16769
16770 2018-01-05  Pedro Alves  <palves@redhat.com>
16771
16772         * spu-tdep.c (spu_catch_start): Pass
16773         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16774
16775 2018-01-05  Pedro Alves  <palves@redhat.com>
16776
16777         PR gdb/22670
16778         * ada-lang.c (literal_symbol_name_matcher): New function.
16779         (ada_get_symbol_name_matcher): Use it for
16780         symbol_name_match_type::SEARCH_NAME.
16781         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16782         it down instead of assuming symbol_name_match_type::FULL.
16783         * block.h (block_lookup_symbol): New parameter 'match_type'.
16784         * c-valprint.c (print_unpacked_pointer): Use
16785         lookup_symbol_search_name instead of lookup_symbol.
16786         * compile/compile-object-load.c (get_out_value_type): Pass down
16787         symbol_name_match_type::SEARCH_NAME.
16788         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16789         symbol_name_match_type::FULL.
16790         * cp-support.c (cp_get_symbol_name_matcher): Handle
16791         symbol_name_match_type::SEARCH_NAME.
16792         * infrun.c (insert_exception_resume_breakpoint): Use
16793         lookup_symbol_search_name.
16794         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16795         * psymtab.c (maintenance_check_psymtabs): Use
16796         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16797         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16798         SYMBOL_SEARCH_NAME.
16799         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16800         if symbol_name_match_type::SEARCH_NAME.
16801         (lookup_symbol_in_language): Pass down
16802         symbol_name_match_type::FULL.
16803         (lookup_symbol_search_name): New.
16804         (lookup_language_this): Pass down
16805         symbol_name_match_type::SEARCH_NAME.
16806         (lookup_symbol_aux, lookup_local_symbol): New parameter
16807         'match_type'.  Pass it down.
16808         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16809         (lookup_symbol_search_name): New declaration.
16810         (lookup_symbol_in_block): New 'match_type' parameter.
16811
16812 2018-01-05  Pedro Alves  <palves@redhat.com>
16813
16814         PR gdb/22670
16815         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16816         ada_lookup_symbol.
16817         (ada_lookup_symbol): Reimplement in terms of
16818         ada_lookup_symbol_list, bits factored out from
16819         ada_lookup_encoded_symbol.
16820
16821 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16822
16823         * ada-exp.y (write_object_renaming): When subscripting an array
16824         using a symbol as the index, pass the block in call to
16825         ada_lookup_encoded_symbol when looking that symbol up.
16826
16827 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16828
16829         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16830         TYPE_INDEX_TYPE.
16831
16832 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16833
16834         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16835         the case where VALUE_LVAL (val0) is not lval_memory.
16836
16837 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16838
16839         * ada-valprint.c (print_optional_low_bound): Handle
16840         character-indexed array printing like boolean-indexed array
16841         printing.
16842
16843 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16844
16845         * NEWS: Create a new section for the next release branch.
16846         Rename the section of the current branch, now that it has
16847         been cut.
16848
16849 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16850
16851         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16852         * version.in: Bump version to 8.1.50.DATE-git.
16853
16854 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16855
16856         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16857         Add field.
16858         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16859         Add field.
16860         (default_exception_support_info) <catch_handlers_sym>: Add field.
16861         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16862         (ada_exception_name_addr_1): Add "catch handlers" handling.
16863         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16864         Update all callers.
16865         (create_excep_cond_exprs) <ex>: Add parameter.
16866         (re_set_exception): Update create_excep_cond_exprs call.
16867         (print_it_exception, print_one_exception, print_mention_exception)
16868         (print_recreate_exception): Add "catch handler" handling.
16869         (allocate_location_catch_handlers, re_set_catch_handlers)
16870         (check_status_catch_handlers, print_it_catch_handlers)
16871         (print_one_catch_handlers, print_mention_catch_handlers)
16872         (print_recreate_catch_handlers): New function.
16873         (catch_handlers_breakpoint_ops): New variable.
16874         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16875         Add parameter.  Add "catch handler" handling.
16876         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16877         Add "catch handler" handling.
16878         (ada_exception_catchpoint_cond_string): Add "catch handler"
16879         handling.
16880         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16881         call.
16882         (catch_ada_handlers_command): New function.
16883         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16884         operations structure.
16885         (_initialize_ada_language): Add "catch handlers" command entry.
16886         * NEWS: Document "catch handlers" feature.
16887
16888 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16889
16890         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16891         account when creating the array type of the slice.
16892         (ada_value_slice): Likewise.
16893
16894 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16895
16896         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16897         New enum value.
16898         (create_array_type_with_stride): Add byte_stride_prop parameter.
16899         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16900         New parameter.  Update all callers in this file.
16901         (array_type_has_dynamic_stride): New function.
16902         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16903         of arrays with dynamic byte strides.
16904         * dwarf2read.c (read_array_type): Add support for dynamic
16905         DW_AT_byte_stride attributes.
16906
16907 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16908
16909         * dwarf2read.c (read_unspecified_type): Treat
16910         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16911
16912 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16913
16914         Update copyright year range in all GDB files.
16915
16916 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16917
16918         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16919         and gdb/testsuite/gdb.base/step-line.c.
16920
16921 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16922
16923         * copyright.py (main): Dump the contents of
16924         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16925         even if BY_HAND is empty.
16926
16927 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16928
16929         * top.c (print_gdb_version): Update Copyright year in version
16930         message.
16931
16932 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16933
16934         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16935
16936 For older changes see ChangeLog-2017.
16937 \f
16938 Local Variables:
16939 mode: change-log
16940 left-margin: 8
16941 fill-column: 74
16942 version-control: never
16943 coding: utf-8
16944 End: