Build gdb "nat" files in subdirectory
[external/binutils.git] / gdb / ChangeLog
1 2018-12-27  Tom Tromey  <tom@tromey.com>
2
3         * configure.nat (NATDEPFILES): Use nat/ prefix.
4         * Makefile.in (CONFIG_SRC_SUBDIR): Add nat.
5         (%.o: ${srcdir}/nat/%.c): Remove rule.
6         (INIT_FILES): Do not filter out NATDEPFILES.
7
8 2018-12-27  Tom Tromey  <tom@tromey.com>
9
10         * Makefile.in (INIT_FILES): Redefine.
11         (stamp-init): Remove sed, tr invocations.  Use for loop.  Don't
12         set LANG or LC_ALL.
13
14 2018-12-27  Tom Tromey  <tom@tromey.com>
15
16         * Makefile.in (stamp-init): Remove gdbtypes special case.
17
18 2018-12-27  John Baldwin  <jhb@FreeBSD.org>
19
20         * config/i386/nm-fbsd.h: Remove file.
21         * Makefile.in (HFILES_NO_SRCDIR): Remove config/i386/nm-fbsd.h.
22         * configure.nat: Remove NAT_FILE for FreeBSD/i386.
23
24 2018-12-27  Tom Tromey  <tom@tromey.com>
25
26         * minsyms.h (class minimal_symbol_reader): Use
27         DISABLE_COPY_AND_ASSIGN.
28
29 2018-12-27  Tom Tromey  <tom@tromey.com>
30
31         * python/python.c (python_interactive_command): Use std::string.
32         (gdbpy_parameter): Likewise.
33         * python/py-utils.c (unicode_to_encoded_string): Update comment.
34         * python/py-symtab.c (salpy_str): Use PyString_FromFormat.
35         * python/py-record-btrace.c (recpy_bt_insn_data): Use
36         byte_vector.
37         * python/py-objfile.c (objfpy_get_build_id): Use
38         unique_xmalloc_ptr.
39         * python/py-inferior.c (infpy_read_memory): Use
40         unique_xmalloc_ptr.
41         * python/py-cmd.c (gdbpy_parse_command_name): Use std::string.
42
43 2018-12-26  Simon Marchi  <simon.marchi@polymtl.ca>
44
45         * target.c (target_terminal::restore_inferior): Remove struct keyword.
46
47 2018-12-26  Simon Marchi  <simon.marchi@ericsson.com>
48
49         * build-id.c (build_id_to_debug_bfd): Enhance debug output.
50         * symfile.c (separate_debug_file_exists): Likewise.
51
52 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
53
54         * c-exp.y (field_name): Allow DOUBLE_KEYWORD, INT_KEYWORD, LONG,
55         SHORT, SIGNED_KEYWORD, and UNSIGNED tokens to act as a field
56         names.
57         (typename_stoken): New function.
58
59 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
60
61         * c-exp.y (field_name): New %token, and new rule.
62         (exp): Replace uses of 'name' with 'field_name' where appropriate.
63
64 2018-12-24  Andrew Burgess  <andrew.burgess@embecosm.com>
65
66         PR gdb/13368
67         * c-exp.y (typebase): Extend the comment.
68         (ident_tokens): Likewise.
69
70 2018-12-18  Tom Tromey  <tom@tromey.com>
71
72         * dwarf2read.c (dwarf2_find_containing_comp_unit): Don't take
73         address of sect_off.
74
75 2018-12-23  Joel Brobecker  <brobecker@adacore.com>
76
77         GDB 8.2.1 released.
78
79 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
80
81         * riscv-tdep.c (riscv_call_arg_struct): Don't adjust size before
82         assigning locations.
83         (riscv_return_value): Take more care not to read/write outside of
84         argument buffer.  Cast return value between the declared type and
85         the abi type.
86
87 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
88
89         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
90         fflags, and frm registers.
91
92 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
93
94         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
95         (riscv_gdbarch_init): Register new function with gdbarch.
96         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
97
98 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
99
100         * minsyms.c (mst_str): New.
101         (minimal_symbol_reader::record_full): Add debug output.
102
103 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
104
105         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
106         equal PL_FLAG_SI.
107         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
108
109 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
110
111         PR gdb/23974
112         * target.c (target_read_stralloc): Check for empty vector.
113
114 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
115
116         * top.c (print_gdb_configuration): Print "--without-python"
117         if GDB was configured without Python.
118
119 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
120
121         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
122         a signed offset as a string.
123
124 2018-12-21  Dave Murphy  <davem@devkitpro.org>
125
126         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
127         initialise.
128         * probe.c (any_static_probe_ops): Ditto.
129         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
130         * stap-probe.c (stap_static_probe_ops): Ditto.
131         * tui/tui-hooks.c (tui_observers_token): Ditto.
132         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
133
134 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
135
136         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
137         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
138         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
139         (default_unwind_sp): Define new function.
140         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
141         (default_unwind_sp): Declare new function.
142         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
143         available.
144         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
145         * gdb/gdbarch.c: Regenerate.
146         * gdb/gdbarch.h: Regenerate.
147         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
148         unwind_sp.  Add additional header files to be included in
149         generated file.
150
151 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
152
153         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
154         sp clobbers.
155
156 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
157
158         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
159         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
160         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
161         'processing_has_namespace_info' from unsigned int to bool.  Update
162         comments.
163         (producer_is_icc_lt_14): Update return type.
164         (producer_is_gcc_lt_4_3): Likewise.
165         (producer_is_gxx_lt_4_6): Likewise.
166         (process_die): Write true instead of 1 into predicate fields.
167         (dwarf2_start_symtab): Likewise.
168         (var_decode_location): Likewise.
169         (dwarf2_mark_helper): Likewise.
170         (dwarf2_mark): Likewise.
171         (dwarf2_clear_marks): Write false instead of 0 into predicate
172         field.
173         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
174         0.
175
176 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
177
178         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
179         asm/sigcontext.h.
180
181 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
182
183         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
184         warning trailing new line.
185
186 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
187
188         * nat/linux-ptrace.c (kill_child): New function.
189         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
190         Add a call to kill_child in case of early return after fork.
191         (linux_check_ptrace_features): Use kill_child instead of local code.
192         (linux_test_for_tracefork): Likewise.
193
194 2018-12-14  Tom Tromey  <tom@tromey.com>
195
196         * Makefile.in: Remove "alloca" comment.
197         (INFOFILES): Remove.
198         (local-maintainer-clean): Don't use INFOFILES.
199
200 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
201
202         * syscalls/update-freebsd.sh: New file.
203         * syscalls/freebsd.xml: Regenerate.
204
205 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
206
207         * NEWS: Add entry documenting system call aliases.
208         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
209         to get_syscalls_by_name.
210         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
211         * gdbarch.h: Regenerate.
212         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
213         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
214         from get_syscall_by_name.  Now accepts a pointer to a vector of
215         integers and returns a bool.
216         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
217         (syscall_create_syscall_desc): Add alias parameter and pass it to
218         syscall_desc constructor.
219         (syscall_start_syscall): Handle alias attribute.
220         (syscall_attr): Add alias attribute.
221         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
222         Now accepts a pointer to a vector of integers and returns a
223         bool.  Add syscalls whose alias or name matches the requested
224         name.
225         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
226         accepts a pointer to a vector of integers and returns a bool.
227         * xml-syscall.h (get_syscalls_by_name): Likewise.
228
229 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
230
231         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
232         to get_syscalls_by_group.
233         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
234         false.
235         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
236         numbers to an existing vector of integers and return a bool.
237         (get_syscalls_by_group): Accept pointer to vector of integers
238         and change return type to bool.
239         * xml-syscall.h (get_syscalls_by_group): Likewise.
240
241 2018-12-13  Jim Wilson  <jimw@sifive.com>
242
243         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
244         comment for SD field, and correct xlen calculation.  For MISA, add
245         comment for MXL field, add call to register_size, and correct base
246         calculation.
247
248 2018-12-13  Stafford Horne  <shorne@gmail.com>
249
250         * NEWS(New targets): Add or1k*-*-linux*.
251
252 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
253
254         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
255         declare on one line to fix ARI warning.
256
257 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
258
259         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
260         (infcall_suspend_state::registers): New.
261         (infcall_suspend_state::restore): New.
262         (infcall_suspend_state::thread_suspend): Rename to...
263         (infcall_suspend_state::m_thread_suspend): ...this.
264         (infcall_suspend_state::registers): Rename to...
265         (infcall_suspend_state::m_registers): ...this.
266         (infcall_suspend_state::siginfo_gdbarch): Rename to...
267         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
268         (infcall_suspend_state::siginfo_data): Rename to...
269         (infcall_suspend_state::m_siginfo_data): ...this.
270         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
271         constructor.
272         (restore_infcall_suspend_state): Rewrite to use
273         infcall_suspend_state::restore method.
274         (get_infcall_suspend_state_regcache): Use
275         infcall_suspend_state::registers method.
276
277 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
278
279         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
280         arguments are passed in integer registers.
281         (riscv_call_arg_complex_float): Likewise.
282
283 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
284
285         * nat/linux-osdata.c (common_getter): New function.
286         (struct osdata_type): Change getter to take_snapshot.
287         Add LONGEST len_avail and struct buffer buffer.
288         Change all elements in the initializer.
289         Add an element for the list of types.
290         (linux_xfer_osdata_info_os_types): New function.
291         (linux_common_xfer_osdata): Use common_getter for the list of types.
292         Replace getter call by common_getter.
293         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
294         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
295         (linux_xfer_osdata_fds): Likewise.
296         (linux_xfer_osdata_modules): Likewise.
297         (linux_xfer_osdata_msg): Likewise.
298         (linux_xfer_osdata_processes): Likewise.
299         (linux_xfer_osdata_processgroups): Likewise.
300         (linux_xfer_osdata_sem): Likewise.
301         (linux_xfer_osdata_shm): Likewise.
302         (linux_xfer_osdata_isockets): Likewise.
303         (linux_xfer_osdata_threads): Likewise.
304
305 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
306
307         * nat/linux-osdata.c: Removed various trailing spaces.
308
309 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
310
311         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
312         leading whitespace before #include line.
313
314 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
315             Дилян Палаузов  <dilyan.palauzov@aegee.org>
316
317         PR gdb/23950
318         * configure.ac: Search for tgetent in libtinfow.
319         * configure: Re-generate.
320
321 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
322
323         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
324         (thread_db_err_str): Forward declare.
325         (delete_thread_db_info): Call td_ta_delete_p if available.
326         (try_thread_db_load_1): Acquire td_ta_delete address.
327         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
328
329 2018-12-08  Pedro Alves  <palves@redhat.com>
330
331         * source.c (forward_search_command): Rename to ...
332         (search_command_helper): ... this.  Add 'forward' parameter.
333         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
334         buffer.  Handle backward searches too.
335         (forward_search_command, reverse_search_command): Reimplement by
336         calling search_command_helper.
337
338 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
339
340         * .dir-locals.el: Copy most of the settings from c-mode over to
341         c++-mode.
342
343 2018-12-08  Stafford Horne  <shorne@gmail.com>
344
345         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
346         * configure.tgt: Add or1k*-*-linux*.
347         * or1k-linux-tdep.c: New file.
348         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
349
350 2018-12-07  Pedro Alves  <palves@redhat.com>
351
352         * dwarf2read.c (get_gdb_index_contents_from_section): Use
353         gdb::make_array_view.
354
355 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
356
357         * language.c (_initialize_language): Fix leak by assigning
358         a static string to language.  Same for range and case_sensitive,
359         even if no leak is detected for these variables.
360
361 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
362
363         * configure: Re-generate.
364         * configure.ac: Use separate sed expressions to escape variables
365         in auto-load directories.
366
367 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
368
369         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
370         (riscv_find_default_target_description): Use new function to
371         extract feature from gdbarch_info.
372         (riscv_gdbarch_init): Add error checks for xlen and flen between
373         target description and bfd headers.  Be smarter about when we
374         think the hardware floating point abi should be used.
375
376 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
377
378         * nat/aarch64-linux-hw-point.c
379         (aarch64_linux_any_set_debug_regs_state): New function.
380         * nat/aarch64-linux-hw-point.h
381         (aarch64_linux_any_set_debug_regs_state): New declaration.
382         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
383         BPs or WPs are set.
384
385 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
386
387         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
388         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
389
390 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
391             Simon Marchi  <simon.marchi@ericsson.com>
392
393         * linespec.c (symtab_vector_up): Remove.
394         (symtabs_from_filename): Change return type to std::vector.
395         (collect_symtabs_from_filename): Likewise.
396         (create_sals_line_offset): Assign return value of
397         collect_symtabs_from_filename to *ls->file_symtabs.
398         (convert_explicit_location_to_linespec): Remove call to release.
399         (parse_linespec): Likewise.
400         (symtab_collector) <symtab_collector>: Remove initialization of
401         m_symtabs.
402         <release_symtabs>: Change return type to std::vector<symtab *>.
403         <operator ()>: Adjust.
404
405 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
406
407         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
408         defined.
409         (union sigval32, struct siginfo32, fbsd_siginfo_size)
410         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
411         of KERN_PROC_AUXV and PT_LWPINFO.
412         (fbsd_nat_target::xfer_partial): Define method unconditionally.
413         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
414         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
415         Make TARGET_OBJECT_FREEBSD_VMMAP and
416         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
417         and KERN_PROC_PS_STRINGS.
418         * fbsd-nat.h: Include <sys/proc.h>.
419         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
420
421 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
422
423         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
424         header files.
425         (riscv_linux_nat_target::read_description): New method.
426
427 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
428
429         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
430         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
431         (riscv_tdesc_cache): New global.
432         (riscv_create_target_description): Look in the cache before
433         creating a new target description.
434
435 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
436
437         * arch/riscv.h (riscv_gdb_features::operator==): New.
438         (riscv_gdb_features::operator!=): New.
439         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
440         operator.
441
442 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
443
444         * arch/riscv.h (riscv_create_target_description): Make return type
445         const.
446         * arch/riscv.c (riscv_create_target_description): Likewise.
447         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
448
449 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
450             Keith Seitz  <keiths@redhat.com>
451             Tom Tromey  <tom@tromey.com>
452             Sergio Durigan Junior  <sergiodj@redhat.com>
453
454         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
455         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
456         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
457         inside the CU.
458
459 2018-11-30  Pedro Alves  <palves@redhat.com>
460
461         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
462         <stratum>: New override.
463         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
464         <stratum>: New override.
465         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
466         <stratum>: New override.
467         * exec.c (exec_target) <exec_target>: Delete.
468         <stratum>: New override.
469         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
470         stratum method instead of the to_stratum field.
471         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
472         <stratum>: New override.
473         (thread_db_target::thread_db_target): Delete.
474         * make-target-delegates (print_class): Don't print a ctor
475         declaration.  Print a stratum method override declaration.
476         * process-stratum-target.h (process_stratum_target)
477         <process_stratum_target>: Delete.
478         <stratum>: New override.
479         * ravenscar-thread.c (ravenscar_thread_target)
480         <ravenscar_thread_target>: Delete.
481         <stratum>: New override.
482         * record-btrace.c (record_btrace_target)
483         <record_btrace_target>: Delete.
484         <stratum>: New override.
485         * record-full.c (record_full_base_target)
486         <record_full_base_target>: Delete.
487         <stratum>: New override.
488         * record.c (record_disconnect, record_detach)
489         (record_mourn_inferior, record_kill): Adjust to use the stratum
490         method instead of the to_stratum field.
491         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
492         * sol-thread.c (sol_thread_target)
493         <sol_thread_target>: Delete.
494         <stratum>: New override.
495         * spu-multiarch.c (spu_multiarch_target)
496         <spu_multiarch_target>: Delete.
497         <stratum>: New override.
498         * target-delegates.c: Regenerate.
499         * target.c (target_stack::push, target_stack::unpush)
500         (pop_all_targets_above, pop_all_targets_at_and_above)
501         (info_target_command, target_require_runnable)
502         (target_stack::find_beneath): Adjust to use the stratum method
503         instead of the to_stratum field.
504         (dummy_target::dummy_target): Delete.
505         (dummy_target::stratum): New.
506         (debug_target::debug_target): Delete.
507         (debug_target::stratum): New.
508         (maintenance_print_target_stack): Adjust to use the stratum method
509         instead of the to_stratum field.
510         * target.h (struct target_ops) <stratum>: New method.
511         <to_stratum>: Delete.
512         <is_pushed>: Adjust to use the stratum method
513         instead of the to_stratum field.
514
515 2018-11-30  Pedro Alves  <palves@redhat.com>
516
517         * corelow.c (core_target) <has_all_memory, has_execution>: New
518         overrides.
519         * inf-child.c (inf_child_target::has_all_memory)
520         (inf_child_target::has_memory, inf_child_target::has_stack)
521         (inf_child_target::has_registers)
522         (inf_child_target::has_execution): Delete.
523         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
524         has_stack, has_registers, has_execution>: Delete.
525         * process-stratum-target.c
526         (process_stratum_target::has_all_memory)
527         (process_stratum_target::has_memory)
528         (process_stratum_target::has_stack)
529         (process_stratum_target::has_registers)
530         (process_stratum_target::has_execution): New.
531         * process-stratum-target.h (process_stratum_target)
532         <has_all_memory, has_memory, has_stack, has_registers,
533         has_execution>: New method overrides.
534         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
535         has_memory, has_stack, has_registers, has_execution>: Delete.
536         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
537         has_execution>: Delete.
538         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
539         has_registers, has_execution>: Delete.
540         * target.c (default_child_has_all_memory)
541         (default_child_has_memory, default_child_has_stack)
542         (default_child_has_registers, default_child_has_execution):
543         Delete.
544         * target.h (default_child_has_all_memory)
545         (default_child_has_memory, default_child_has_stack)
546         (default_child_has_registers, default_child_has_execution):
547         Delete.
548         * tracefile.h (tracefile_target) <has_execution>: New override.
549
550 2018-11-30  Pedro Alves  <palves@redhat.com>
551
552         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
553         * bsd-kvm.c: Include "process-stratum-target.h".
554         (bsd_kvm_target): Now inherits from process_stratum_target.
555         (bsd_kvm_target::bsd_kvm_target): Default it.
556         * corelow.c: Include "process-stratum-target.h".
557         (core_target): Now inherits from process_stratum_target.
558         (core_target::core_target): Don't set to_stratum here.
559         * inf-child.c (inf_child_target::inf_child_target): Delete.
560         * inf-child.h: Include "process-stratum-target.h".
561         (inf_child_target): Inherit from process_stratum_target.
562         (inf_child_target) <inf_child_target>: Default it.
563         <can_async_p, supports_non_stop, supports_disable_randomization>:
564         Delete overrides.
565         * process-stratum-target.c: New file.
566         * process-stratum-target.h: New file.
567         * remote-sim.c: Include "process-stratum-target.h".
568         (gdbsim_target): Inherit from process_stratum_target.
569         <gdbsim_target>: Default it.
570         * remote.c: Include "process-stratum-target.h".
571         (remote_target): Inherit from process_stratum_target.
572         <remote_target>: Default it.
573         * target.c (default_thread_address_space)
574         (default_thread_architecture): Delete.
575         * target.h (target_ops) <thread_architecture>: Now returns NULL by
576         default.
577         <thread_address_space>: Ditto.
578         * test-target.h: Include "process-stratum-target.h" instead of
579         "target.h".
580         (test_target_ops): Inherit from process_stratum_target.
581         <test_target_ops>: Default it.
582         * tracefile.c (tracefile_target::tracefile_target): Delete.
583         * tracefile.h: Include "process-stratum-target.h".
584         (tracefile_target): Inherit from process_stratum_target.
585         <tracefile_target>: Default it.
586         * target-delegates.c: Regenerate.
587
588 2018-11-30  Pedro Alves  <palves@redhat.com>
589
590         * Makefile.in (COMMON_SFILES): Add test-target.c.
591         * gdbarch-selftests.c: Include "test-target.h".
592         * regcache.c: Include "test-target.h".
593         * target.c (test_target_info, test_target_ops::info): Move to ...
594         * test-target.c: ... this new file.
595         * target.h (test_target_ops): Move to ...
596         * test-target.h: ... this new file.
597
598 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
599
600         * source.c (forward_search_command): Fix leak by using
601         xrealloc even for the first allocation in the loop, as buf
602         is static.
603
604 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
605
606         PR gdb/23093
607         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
608         (fbsd_gdb_signal_to_target): New.
609         (fbsd_init_abi): Install gdbarch "signal_from_target" and
610         "signal_to_target" methods.
611
612 2018-11-29  Tom Tromey  <tom@tromey.com>
613
614         * valarith.c (value_x_unop): Don't set argvec[3].
615
616 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
617
618         PR gdb/23917
619         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
620         semicolon.
621
622 2018-11-26  Pedro Alves  <palves@redhat.com>
623
624         * procfs.c (procfs_notice_thread): Replace uses of
625         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
626         * sol-thread.c (sol_thread_target::wait)
627         (sol_update_thread_list_callback): Likewise.
628
629 2018-11-25  Tom Tromey  <tom@tromey.com>
630
631         * ui-out.c (ui_out::field_fmt): Remove comment.
632         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
633         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
634
635 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
636
637         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
638         leak in open_source_file' has been partially undone by '2179fbc36d23
639         Return scoped_fd from open_source_file'. Re-add the transfer of
640         current s->fullname to the unique_xmalloc_ptr fullname given
641         to find_and_open_source.
642
643 2018-11-23  Pedro Alves  <palves@redhat.com>
644
645         * gdbthread.h (enum thread_state): Move comments here.
646         (is_running, is_stopped, is_exited): Remove declarations.
647
648 2018-11-22  Pedro Alves  <palves@redhat.com>
649
650         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
651         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
652         ALL_NON_EXITED_THREADS with all_non_exited_threads.
653         (print_one_breakpoint_location): Replace ALL_INFERIORS with
654         all_inferiors.
655         * bsd-kvm.c: Include inferior.h.
656         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
657         with all_non_exited_threads.
658         * common/filtered-iterator.h: New.
659         * common/safe-iterator.h: New.
660         * corelow.c (core_target_open): Don't call init_thread_list here.
661         * darwin-nat.c (thread_info_from_private_thread_info): Replace
662         ALL_THREADS with all_threads.
663         * fbsd-nat.c (fbsd_nat_target::resume): Replace
664         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
665         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
666         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
667         * fork-child.c (postfork_hook): Don't call init_thread_list here.
668         * gdbarch-selftests.c (register_to_value_test): Adjust.
669         * gdbthread.h: Don't include "inferior.h" here.
670         (struct inferior): Forward declare.
671         (enum step_over_calls_kind): Moved here from inferior.h.
672         (thread_info::deletable): Definition moved to thread.c.
673         (find_thread_ptid (inferior *, ptid_t)): Declare.
674         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
675         Include "thread-iter.h".
676         (all_threads, all_non_exited_threads, all_threads_safe): New.
677         (any_thread_p): Declare.
678         (thread_list): Delete.
679         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
680         all_non_exited_threads.
681         (proceed_after_attach_callback): Delete.
682         (proceed_after_attach): Take an inferior pointer instead of an
683         integer PID.  Adjust to use range-for.
684         (attach_post_wait): Pass down inferior pointer instead of pid.
685         Use range-for instead of ALL_NON_EXITED_THREADS.
686         (detach_command): Remove init_thread_list call.
687         * inferior-iter.h: New.
688         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
689         (delete_thread_of_inferior): Delete.
690         (delete_inferior, exit_inferior_1): Use range-for with
691         inf->threads_safe() instead of iterate_over_threads.
692         (inferior_appeared): Call init_thread_list here.
693         (discard_all_inferiors): Use all_non_exited_inferiors.
694         (find_inferior_id, find_inferior_pid): Use all_inferiors.
695         (iterate_over_inferiors): Use all_inferiors_safe.
696         (have_inferiors, number_of_live_inferiors): Use
697         all_non_exited_inferiors.
698         (number_of_inferiors): Use all_inferiors and std::distance.
699         (print_inferior): Use all_inferiors.
700         * inferior.h: Include gdbthread.h.
701         (enum step_over_calls_kind): Moved to gdbthread.h.
702         (struct inferior) <thread_list>: New field.
703         <threads, non_exited_threads, threads_safe>: New methods.
704         (ALL_INFERIORS): Delete.
705         Include "inferior-iter.h".
706         (ALL_NON_EXITED_INFERIORS): Delete.
707         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
708         functions.
709         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
710         ALL_NON_EXITED_THREADS with all_non_exited_threads.
711         * infrun.c (follow_exec): Use all_threads_safe.
712         (clear_proceed_status, proceed): Use all_non_exited_threads.
713         (init_wait_for_inferior): Don't clear inline frame state here.
714         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
715         all_threads instead of ALL_NON_EXITED_THREADS.
716         (random_pending_event_thread): Use all_non_exited_threads instead
717         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
718         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
719         instead of ALL_NON_EXITED_THREADS.
720         (handle_no_resumed): Use all_non_exited_threads instead of
721         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
722         ALL_INFERIORS.
723         (restart_threads, switch_back_to_stepped_thread): Use
724         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
725         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
726         all_inferiors.
727         (kill_unfollowed_fork_children): Use inf->non_exited_threads
728         instead of ALL_NON_EXITED_THREADS.
729         * linux-tdep.c (linux_make_corefile_notes): Use
730         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
731         * linux-thread-db.c (thread_db_target::update_thread_list):
732         Replace ALL_INFERIORS with all_inferiors.
733         (thread_db_target::thread_handle_to_thread_info): Use
734         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
735         * mi/mi-interp.c (multiple_inferiors_p): New.
736         (mi_on_resume_1): Simplify using all_non_exited_threads and
737         multiple_inferiors_p.
738         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
739         instead of ALL_NON_EXITED_THREADS.
740         * nto-procfs.c (nto_procfs_target::open): Don't call
741         init_thread_list here.
742         * record-btrace.c (record_btrace_target_open)
743         (record_btrace_target::stop_recording)
744         (record_btrace_target::close)
745         (record_btrace_target::record_is_replaying)
746         (record_btrace_target::resume, record_btrace_target::wait)
747         (record_btrace_target::record_stop_replaying): Use
748         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
749         * record-full.c (record_full_wait_1): Use all_non_exited_threads
750         instead of ALL_NON_EXITED_THREADS.
751         * regcache.c (cooked_read_test): Remove reference to global
752         thread_list.
753         * remote-sim.c (gdbsim_target::create_inferior): Don't call
754         init_thread_list here.
755         * remote.c (remote_target::update_thread_list): Use
756         all_threads_safe instead of ALL_NON_EXITED_THREADS.
757         (remote_target::process_initial_stop_replies): Replace
758         ALL_INFERIORS with all_non_exited_inferiors and use
759         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
760         (remote_target::open_1): Don't call init_thread_list here.
761         (remote_target::append_pending_thread_resumptions)
762         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
763         instead of ALL_NON_EXITED_THREADS.
764         (remote_target::commit_resume)
765         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
766         with all_non_exited_inferiors and use all_non_exited_threads
767         instead of ALL_NON_EXITED_THREADS.
768         (remote_target::kill_new_fork_children): Use
769         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
770         init_thread_list and init_wait_for_inferior calls.
771         (remote_target::remote_btrace_maybe_reopen)
772         (remote_target::thread_handle_to_thread_info): Use
773         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
774         * target.c (target_terminal::restore_inferior)
775         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
776         all_non_exited_inferiors.
777         * thread-iter.c: New file.
778         * thread-iter.h: New file.
779         * thread.c: Include "inline-frame.h".
780         (thread_list): Delete.
781         (clear_thread_inferior_resources): Call clear_inline_frame_state.
782         (init_thread_list): Use all_threads_safe instead of
783         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
784         (new_thread): Adjust to per-inferior thread lists.
785         (add_thread_silent): Pass inferior to find_thread_ptid.
786         (thread_info::deletable): New, moved from the header.
787         (delete_thread_1): Adjust to per-inferior thread lists.
788         (find_thread_global_id): Use inf->threads().
789         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
790         find_thread_ptid.
791         (find_thread_ptid(inferior*, ptid_t)): New overload.
792         (iterate_over_threads): Use all_threads_safe.
793         (any_thread_p): New.
794         (thread_count): Use all_threads and std::distance.
795         (live_threads_count): Use all_non_exited_threads and
796         std::distance.
797         (valid_global_thread_id): Use all_threads.
798         (in_thread_list): Use find_thread_ptid.
799         (first_thread_of_inferior): Adjust to per-inferior thread lists.
800         (any_thread_of_inferior, any_live_thread_of_inferior): Use
801         inf->non_exited_threads().
802         (prune_threads, delete_exited_threads): Use all_threads_safe.
803         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
804         (set_resumed, set_running): Use all_non_exited_threads.
805         (is_thread_state, is_stopped, is_exited, is_running)
806         (is_executing): Delete.
807         (set_executing, set_stop_requested, finish_thread_state): Use
808         all_non_exited_threads.
809         (print_thread_info_1): Use all_inferiors and all_threads.
810         (thread_apply_all_command): Use all_non_exited_threads.
811         (thread_find_command): Use all_threads.
812         (update_threads_executing): Use all_non_exited_threads.
813         * tid-parse.c (parse_thread_id): Use inf->threads.
814         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
815
816 2018-11-22  Pedro Alves  <palves@redhat.com>
817
818         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
819         switch to it before calling into try_open_exec_file.
820
821 2018-11-22  Pedro Alves  <palves@redhat.com>
822
823         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
824         inferior_thread instead of find_thread_ptid, and only when
825         inferior_ptid is not null_ptid.
826         * inferior.c (add_inferior): Don't include target_pid_to_str
827         output when the inferior is not started.
828         * python/py-inferior.c (python_on_normal_stop): Don't use
829         find_thread_ptid.
830         (tui_on_user_selected_context_changed): Use inferior_thread
831         instead of find_thread_ptid, and only when inferior_ptid is not
832         null_ptid.
833
834 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
835
836         PR python/23714
837         * gdb/python/python.c (execute_gdb_command): Call
838         prevent_dont_repeat earlier to avoid affecting dont_repeat.
839
840 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
841
842         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
843         (HFILES_NO_SRCDIR): Add arch/riscv.h.
844         * arch/riscv.c: New file.
845         * arch/riscv.h: New file.
846         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
847         this list, and add arch/riscv.o.
848         * features/Makefile: Add riscv features.
849         * features/riscv/32bit-cpu.c: New file.
850         * features/riscv/32bit-cpu.xml: New file.
851         * features/riscv/32bit-csr.c: New file.
852         * features/riscv/32bit-csr.xml: New file.
853         * features/riscv/32bit-fpu.c: New file.
854         * features/riscv/32bit-fpu.xml: New file.
855         * features/riscv/64bit-cpu.c: New file.
856         * features/riscv/64bit-cpu.xml: New file.
857         * features/riscv/64bit-csr.c: New file.
858         * features/riscv/64bit-csr.xml: New file.
859         * features/riscv/64bit-fpu.c: New file.
860         * features/riscv/64bit-fpu.xml: New file.
861         * features/riscv/rebuild-csr-xml.sh: New file.
862         * riscv-tdep.c: Add 'arch/riscv.h' include.
863         (riscv_gdb_reg_names): Delete.
864         (csr_reggroup): New global.
865         (struct riscv_register_alias): Delete.
866         (struct riscv_register_feature): New structure.
867         (riscv_register_aliases): Delete.
868         (riscv_xreg_feature): New global.
869         (riscv_freg_feature): New global.
870         (riscv_virtual_feature): New global.
871         (riscv_csr_feature): New global.
872         (riscv_create_csr_aliases): New function.
873         (riscv_read_misa_reg): Delete.
874         (riscv_has_feature): Delete.
875         (riscv_isa_xlen): Simplify, just return cached xlen.
876         (riscv_isa_flen): Simplify, just return cached flen.
877         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
878         (riscv_register_name): Update to make use of tdesc_register_name.
879         Look up xreg and freg names in the new globals riscv_xreg_feature
880         and riscv_freg_feature.  Don't supply csr aliases here.
881         (riscv_fpreg_q_type): Delete.
882         (riscv_register_type): Use tdesc_register_type in almost all
883         cases, override the returned type in a few specific cases only.
884         (riscv_print_one_register_info): Handle errors reading registers.
885         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
886         registers that are otherwise unknown to GDB.  Also check the
887         csr_reggroup.
888         (riscv_print_registers_info): Remove assert about upper register
889         number, and use gdbarch_register_reggroup_p instead of
890         short-cutting.
891         (riscv_find_default_target_description): New function.
892         (riscv_check_tdesc_feature): New function.
893         (riscv_add_reggroups): New function.
894         (riscv_setup_register_aliases): New function.
895         (riscv_init_reggroups): New function.
896         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
897         setup register groups.  Register new riscv debug variable.
898         * riscv-tdep.h: Add 'arch/riscv.h' include.
899         (struct gdbarch_tdep): Remove abi union, and add
900         riscv_gdbarch_features field.  Remove cached quad floating point
901         type, and provide initialisation for double type field.
902         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
903         the list of targets using the feature based target descriptions.
904         * NEWS: Mention target description support.
905
906 2018-11-21  Pedro Alves  <palves@redhat.com>
907
908         * valops.c (find_method_list, value_find_oload_method_list)
909         (find_overload_match, find_oload_champ): Rename parameters and
910         locals.
911
912 2018-11-21  Pedro Alves  <palves@redhat.com>
913
914         * valops.c (find_method_list): Replace pointer and length
915         parameters with an gdb::array_view.  Adjust.
916         (value_find_oload_method_list): Likewise.
917         (find_overload_match): Use gdb::array_view for methods list.
918         Adjust to find_oload_champ interface change.
919         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
920         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
921
922 2018-11-21  Pedro Alves  <palves@redhat.com>
923
924         * gdbtypes.c (compare_badness): Change type of parameters to const
925         reference.  Adjust to badness_vector being a std::vector now.
926         (rank_function): Adjust to badness_vector being a std::vector now.
927         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
928         (LENGTH_MATCH): Delete.
929         (compare_badness): Change type of parameters to const reference.
930         (rank_function): Return a badness_vector by value now.
931         (find_overload_match): Adjust to badness_vector being a
932         std::vector now.  Remove cleanups.
933         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
934         badness_vector pointer.
935         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
936         a badness_vector pointer.  Adjust to badness_vector being a
937         std::vector now.  Remove cleanups.
938         (find_oload_champ): 'oload_champ_bv' parameter now
939         a badness_vector pointer.  Adjust to badness_vector being a
940         std::vector now.  Remove cleanups.
941
942 2018-11-21  Pedro Alves  <palves@redhat.com>
943
944         * cp-support.c (sym_return_val_size, sym_return_val_index)
945         (sym_return_val): Delete.
946         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
947         add to the vector.
948         (make_symbol_overload_list): Adjust to return a std::vector
949         instead of maintaining a global open coded vector.
950         (make_symbol_overload_list_block): Add std::vector parameter.
951         (make_symbol_overload_list_block): Rename to ...
952         (add_symbol_overload_list_block): ... this and add std::vector
953         parameter.
954         (make_symbol_overload_list_namespace): Rename to ...
955         (add_symbol_overload_list_namespace): ... this and add std::vector
956         parameter.
957         (make_symbol_overload_list_adl_namespace): Rename to ...
958         (add_symbol_overload_list_adl_namespace): ... this and add
959         std::vector parameter.
960         (make_symbol_overload_list_adl): Delete.
961         (add_symbol_overload_list_adl): New.
962         (make_symbol_overload_list_using): Rename to ...
963         (add_symbol_overload_list_using): ... this and add std::vector
964         parameter.
965         (make_symbol_overload_list_qualified): Rename to ...
966         (add_symbol_overload_list_qualified): ... this and add std::vector
967         parameter.
968         * cp-support.h: Include "common/array-view.h" and <vector>.
969         (make_symbol_overload_list): Change return type to std::vector.
970         (make_symbol_overload_list_adl): Delete declaration.
971         (add_symbol_overload_list_adl): New declaration.
972         * valops.c (find_overload_match): Local 'oload_syms' now a
973         std::vector.
974         (find_oload_champ_namespace): 'oload_syms' parameter now a
975         std::vector pointer.
976         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
977         std::vector pointer.  Adjust to new make_symbol_overload_list
978         interface.
979
980 2018-11-21  Pedro Alves  <palves@redhat.com>
981
982         * common/array-view.h (array_view::splice(size_type, size_t)): New.
983         (array_view::splice(size_type)): New.
984         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
985         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
986         std::vector.
987         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
988         * extension.h: Include "common/array-view.h".
989         (xmethod_worker::invoke): Adjust to use gdb::array_view.
990         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
991         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
992         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
993         (xmethod_worker::do_get_result_type): Adjust to use
994         gdb::array_view.
995         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
996         * gdbtypes.h: Include "common/array-view.h".
997         (rank_function): Adjust to use gdb::array_view.
998         * python/py-xmethods.c (python_xmethod_worker::invoke)
999         (python_xmethod_worker::do_get_arg_types)
1000         (python_xmethod_worker::do_get_result_type)
1001         (python_xmethod_worker::invoke): Adjust to new interfaces.
1002         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
1003         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
1004         * valops.c (find_overload_match, find_oload_champ_namespace)
1005         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
1006         gdb:array_view and the new xmethod_worker interfaces.
1007         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
1008         gdb::array_view.
1009         * value.h (find_overload_match, result_type_of_xmethod)
1010         (call_xmethod): Adjust to use gdb::array_view.
1011         * unittests/array-view-selftests.c: Add slicing tests.
1012
1013 2018-11-21  Pedro Alves  <palves@redhat.com>
1014
1015         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
1016         * common/array-view.h (make_array_view): New.
1017         * compile/compile-object-run.c (compile_object_run): Adjust to
1018         pass an array_view.
1019         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
1020         * eval.c (eval_call): Adjust to pass an array_view.
1021         (evaluate_subexp_standard): Adjust to pass an array_view.
1022         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
1023         * guile/scm-value.c (gdbscm_value_call): Likewise.
1024         * infcall.c (push_dummy_code): Replace pointer + size parameters
1025         with an array_view parameter.
1026         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
1027         adjust.
1028         * infcall.h: Include "common/array-view.h".
1029         (call_function_by_hand, call_function_by_hand_dummy): Replace
1030         pointer + size parameters with an array_view parameter.
1031         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
1032         * linux-tdep.c (linux_infcall_mmap): Likewise.
1033         * objc-lang.c (lookup_objc_class, lookup_child_selector)
1034         (value_nsstring, print_object_command): Likewise.
1035         * python/py-value.c (valpy_call): Likewise.
1036         * rust-lang.c (rust_evaluate_funcall): Likewise.
1037         * spu-tdep.c (flush_ea_cache): Likewise.
1038         * valarith.c (value_x_binop, value_x_unop): Likewise.
1039         * valops.c (value_allocate_space_in_inferior): Likewise.
1040         * unittests/array-view-selftests.c (run_tests): Add
1041         gdb::make_array_view test.
1042
1043 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1044
1045         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
1046         than a fixed size buffer.
1047
1048 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
1049
1050         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
1051         and remove insertion of extra spaces in GDB's output.
1052         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
1053         Layout field into a temporary buffer, and then output it as a
1054         string field.
1055
1056 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1057
1058         * NEWS: Document the language choice done by
1059         'info [types|functions|variables]|rbreak'.
1060
1061 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1062
1063         * symtab.c (treg_matches_sym_type_name): Use
1064         scoped_switch_to_sym_language_if_auto instead of local logic.
1065         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
1066         to switch to SYM language when language mode is auto.
1067
1068 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1069
1070         * language.h (scoped_switch_to_sym_language_if_auto): New class.
1071
1072 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1073
1074         * symtab.c (search_symbols): Properly check absence of type regexp
1075         before entering the loop scanning the minimal symbols.
1076
1077 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
1078
1079         * s12z-tdep.c (s12z_extract_return_value): New function.
1080         (inv_reg_perm) New array.
1081         (s12z_return_value): Populate readbuf if non-null.
1082
1083 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
1084
1085         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1086         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1087         to MinGW fixed by Gnulib.
1088         (O_NOINHERIT): Define if not defined.
1089
1090 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1091
1092         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1093
1094 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1095
1096         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1097
1098 2018-11-19  Tom Tromey  <tom@tromey.com>
1099
1100         * source.c (get_filename_and_charpos): Return void.
1101
1102 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1103
1104         * skip.c (_initialize_step_skip): Fix "info skip" help.
1105
1106 2018-11-16  Tom Tromey  <tom@tromey.com>
1107
1108         PR rust/23625:
1109         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1110
1111 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1112
1113         * infrun.c (displaced_step_inferior_states): Change type to
1114         std::forward_list.
1115         (get_displaced_stepping_state): Adjust.
1116         (displaced_step_in_progress_any_inferior): Adjust.
1117         (add_displaced_stepping_state): Adjust.
1118         (remove_displaced_stepping_state): Adjust.
1119
1120 2018-11-18  Tom Tromey  <tom@tromey.com>
1121
1122         PR build/23814:
1123         * target-delegates.c: Rebuild.
1124         * ia64-linux-nat.c (class ia64_linux_nat_target)
1125         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1126         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1127         "self" argument.
1128         (ia64_linux_nat_target::low_new_thread): Rename.
1129         (class ia64_linux_nat_target) <read_description>: Don't declare.
1130         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1131         bool.
1132
1133 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1134
1135         PR gdb/22736:
1136         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1137         lang_struct_return code.
1138
1139 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1140
1141         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1142         return_method.
1143         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1144         * amd64-tdep.c (amd64_push_arguments): Likewise.
1145         (amd64_push_dummy_call): Likewise.
1146         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1147         * arc-tdep.c (arc_push_dummy_call): Likewise.
1148         * arm-tdep.c (arm_push_dummy_call): Likewise.
1149         * avr-tdep.c (avr_push_dummy_call): Likewise.
1150         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1151         * cris-tdep.c (cris_push_dummy_call): Likewise.
1152         * csky-tdep.c (csky_push_dummy_call): Likewise.
1153         * frv-tdep.c (frv_push_dummy_call): Likewise.
1154         * gdbarch.c: Regenerate.
1155         * gdbarch.h: Regenerate.
1156         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1157         return_method.
1158         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1159         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1160         (hppa64_push_dummy_call): Likewise.
1161         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1162         * i386-tdep.c (i386_push_dummy_call): Likewise.
1163         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1164         * infcall.c (call_function_by_hand_dummy): Likewise.
1165         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1166         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1167         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1168         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1169         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1170         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1171         * mep-tdep.c (mep_push_dummy_call): Likewise.
1172         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1173         (mips_n32n64_push_dummy_call): Likewise.
1174         (mips_o32_push_dummy_call): Likewise.
1175         (mips_o64_push_dummy_call): Likewise.
1176         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1177         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1178         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1179         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1180         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1181         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1182         (ppc64_sysv_abi_push_dummy_call): Likewise.
1183         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1184         (ppc64_sysv_abi_push_dummy_call): Likewise.
1185         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1186         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1187         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1188         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1189         * rx-tdep.c (rx_push_dummy_call): Likewise.
1190         * s390-tdep.c (s390_push_dummy_call): Likewise.
1191         * score-tdep.c (score_push_dummy_call): Likewise.
1192         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1193         (sh_push_dummy_call_nofpu): Likewise.
1194         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1195         (sparc32_push_dummy_call): Likewise.
1196         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1197         (sparc64_push_dummy_call): Likewise.
1198         * spu-tdep.c (spu_push_dummy_call): Likewise.
1199         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1200         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1201         * v850-tdep.c (v850_push_dummy_call): Likewise.
1202         * vax-tdep.c (vax_push_dummy_call): Likewise.
1203         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1204         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1205
1206 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1207
1208         * gdbarch.sh (enum function_call_return_method): Add enum.
1209         * gdbarch.h: Regenerate.
1210         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1211
1212 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1213
1214         * unittests/copy_bitwise-selftests.c: New file.
1215         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1216         (selftests::copy_bitwise_tests): Delete, moving this code to
1217         unittests/copy_bitwise-selftests.c instead.
1218         (_initialize_utils): Do not register copy_bitwise tests.
1219         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1220         unittests/copy_bitwise-selftests.c.
1221
1222 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1223
1224         * ada-lang.c (move_bits): Delete. Update all callers to use
1225         copy_bitwise instead.
1226         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1227         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1228         Move from here to utils.c.
1229         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1230         selftests.
1231         * utils.h (copy_bitwise): Add declaration.
1232         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1233         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1234         Moved here from dwarf2loc.c.
1235         (_initialize_utils): Register copy_bitwise selftests.
1236
1237 2018-11-14  Jim Wilson  <jimw@sifive.com>
1238
1239         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1240         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1241         then increment next_regnum if odd.
1242         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1243         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1244         function type.  Pass new arg to riscv_arg_location based on function
1245         type.
1246         (riscv_return_value): Pass new arg to riscv_arg_location.
1247
1248         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1249         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1250         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1251
1252         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1253         setting len.  New local align, set to max of arg align and xlen,
1254         and pass to first riscv_assign_stack_location call.
1255
1256 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1257
1258         * skip.c (complete_skip_number): New function.
1259         (_initialize_step_skip): Add completers to some skip commands.
1260
1261 2018-11-09  Tom Tromey  <tom@tromey.com>
1262
1263         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1264         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1265         <guesses>: Now a std::vector.
1266         (remote_g_packet_data_init, register_remote_g_packet_guess):
1267         Update.
1268         (remote_read_description_p): Update.  Return bool.
1269         (remote_target::read_description): Update.
1270         (struct remote_g_packet_guess): Add constructor.
1271
1272 2018-11-09  Tom Tromey  <tom@tromey.com>
1273
1274         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1275         move assignment operator.
1276         * psymtab.c (psymtab_to_fullname): Update.
1277         * source.h (open_source_file): Return scoped_fd.
1278         (find_and_open_source): Likewise.
1279         * source.c (open_source_file): Return scoped_fd.
1280         (get_filename_and_charpos): Update.
1281         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1282         (forward_search_command): Likewise.
1283         (reverse_search_command): Likewise.
1284         (find_and_open_source): Return scoped_fd.
1285         * tui/tui-source.c (tui_set_source_content): Update.  Use
1286         gdb_file_up.
1287
1288 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1289
1290         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1291         overflow.
1292
1293 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1294
1295         * configure: Regenerate.
1296
1297 2018-11-09  Tom de Vries  <tdevries@suse.de>
1298
1299         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1300         unconditionally, to set the language of the symbol.  Manage freeing
1301         returned pointer using gdb::unique_xmalloc_ptr.
1302
1303 2018-11-08  Tom Tromey  <tom@tromey.com>
1304
1305         * record.c (require_record_target): Upper-case "<TAB>".
1306
1307 2018-11-08  Tom Tromey  <tom@tromey.com>
1308
1309         * python/lib/gdb/command/pretty_printers.py
1310         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1311
1312 2018-11-08  Tom Tromey  <tom@tromey.com>
1313
1314         PR gdb/23555:
1315         PR gdb/23838:
1316         * target.h (target_supports_terminal_ours): Return bool.
1317         * target.c (target_supports_terminal_ours): Handle case where
1318         current_top_target returns nullptr.  Return bool.
1319
1320 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1321
1322         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1323         return the correct count for potential HFAs.
1324
1325 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1326
1327         * i387-tdep.c (i387_supply_xsave): Split handling of
1328         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1329         (i387_collect_xsave): Likewise.
1330
1331 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1332
1333         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1334         (riscv_frame_this_id): Catch errors thrown while building the
1335         frame cache, leave the frame id as the default, which is the outer
1336         frame id.
1337
1338 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1339
1340         * ada-lang.c (read_atcb): Only set task_info->called_task if
1341         task_info->state == Entry_Caller_Sleep.
1342         (print_ada_task_info): Do not check task_info->state before
1343         checking task_info->called_task.
1344         (info_task): Likewise.
1345
1346 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1347
1348         * ada-tasks.c (read_atcb): Clear task_info before computing
1349         the value of each of its fields.
1350
1351 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1352
1353         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1354         NULL before dereferencing it.
1355
1356 2018-11-06  Tom de Vries  <tdevries@suse.de>
1357
1358         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1359         program headers.
1360
1361 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1362
1363         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1364         so that it applies to uclinux as well.
1365
1366 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1367
1368         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1369         when on AAPCS.
1370
1371 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1372
1373         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1374         RISCV_CSR_SSTATUS_REGNUM.
1375
1376 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1377
1378         * source.c (open_source_file): Fix leak by transferring the
1379         current s->fullname to the unique_xmalloc_ptr fullname given
1380         to find_and_open_source.
1381
1382 2018-11-04  Tom Tromey  <tom@tromey.com>
1383
1384         * varobj.c (install_default_visualizer): Update.
1385         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1386         Return gdbpy_ref.
1387         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1388         (find_pretty_printer_from_progspace)
1389         (find_pretty_printer_from_gdb, find_pretty_printer)
1390         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1391         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1392         Update.
1393
1394 2018-11-04  Tom Tromey  <tom@tromey.com>
1395
1396         * python/python.c (gdbpy_parameter_value): Update.
1397         * python/python-internal.h (python_string_to_unicode)
1398         (python_string_to_target_python_string)
1399         (host_string_to_python_string): Return gdbpy_ref.
1400         * python/py-utils.c (python_string_to_unicode)
1401         (unicode_to_encoded_python_string)
1402         (unicode_to_target_python_string)
1403         (python_string_to_target_string)
1404         (python_string_to_target_python_string): Return gdbpy_ref.
1405         (python_string_to_host_string): Update.
1406         (host_string_to_python_string): Return gdbpy_ref.
1407         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1408         (stpy_fullname): Update.
1409         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1410         Update.
1411         * python/py-prettyprint.c (print_string_repr): Update.
1412         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1413         (objfpy_get_build_id): Update.
1414         * python/py-breakpoint.c (bppy_get_location)
1415         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1416         Update.
1417
1418 2018-11-04  Tom Tromey  <tom@tromey.com>
1419
1420         * python/python-internal.h (gdb_py_object_from_longest)
1421         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1422         * python/py-value.c (valpy_int): Update.
1423         * python/py-utils.c (gdb_py_object_from_longest): Return
1424         gdbpy_ref.
1425         (gdb_py_object_from_ulongest): Likewise.
1426         * python/py-type.c (typy_get_alignof): Update.
1427         * python/py-linetable.c (ltpy_get_all_source_lines)
1428         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1429         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1430
1431 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1432
1433         * ada-lang.c (_initialize_ada_language): Fix typo.
1434
1435 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1436
1437         * language.c (type): Remove.
1438         (_initialize_language): Remove assignment to type.
1439
1440 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1441
1442         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1443         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1444         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1445         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1446         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1447         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1448         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1449         and aarch64-ravenscar-thread.o.
1450         * NEWS: Add entry documenting Ravenscar tasking support
1451         on AArch64 ELF.
1452
1453 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1454
1455         * symtab.c (info_functions_command): Initialize quiet flag.
1456         * stack.c (info_args_command): Likewise.
1457
1458 2018-11-01  Jim Wilson  <jimw@sifive.com>
1459
1460         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1461         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1462         debugging messages.
1463
1464 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1465
1466         * ada-lang.c (ada_watch_location_expression): New function.
1467         (ada_language_defn): Set la_watch_location_expression to
1468         ada_watch_location_expression.
1469
1470 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1471
1472         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1473
1474 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1475
1476         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1477         shifting.
1478
1479 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1480             Joel Brobecker  <brobecker@adacore.com>
1481
1482         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1483         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1484         * arm-pikeos-tdep.c: New file.
1485         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1486         embedded system.
1487         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1488
1489 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1490
1491         * common/pathstuff.c (get_standard_temp_dir): New.
1492         * common/pathstuff.h (get_standard_temp_dir): New.
1493         * config.in: Re-generate.
1494         * configure: Re-generate.
1495         * configure.ac: Don't check for mkdtemp.
1496         * gnulib/aclocal-m4-deps.mk: Re-generate.
1497         * gnulib/aclocal.m4: Re-generate.
1498         * gnulib/config.in: Re-generate.
1499         * gnulib/configure: Re-generate.
1500         * gnulib/import/Makefile.am: Re-generate.
1501         * gnulib/import/Makefile.in: Re-generate.
1502         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1503         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1504         * gnulib/import/m4/mkdtemp.m4: New file.
1505         * gnulib/import/mkdtemp.c: New file.
1506         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1507         Add mkdtemp module.
1508         * unittests/mkdir-recursive-selftests.c (test): Use
1509         get_standard_temp_dir.
1510         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1511         ifdef.
1512         * compile/compile.c (get_compile_file_tempdir): Likewise.
1513
1514 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1515
1516         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1517         (SIG_FRAME_LR_OFFSET64): New define.
1518         (SIG_FRAME_FP_OFFSET64): New define.
1519         (aix_sighandle_frame_cache): New Function.
1520         (aix_sighandle_frame_this_id): New Function.
1521         (aix_sighandle_frame_prev_register): New Function.
1522         (aix_sighandle_frame_sniffer): New Function.
1523         (aix_sighandle_frame_unwind): New global variable.
1524         (rs6000_aix_init_osabi): Install new frame unwinder.
1525
1526 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1527
1528         PR gdb/23835
1529         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1530         already defined.
1531
1532 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1533
1534         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1535
1536 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1537
1538         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1539         (producer_is_icc): New function.
1540         (check_producer): Set producer_is_icc field on dwarf2_cu.
1541         (dwarf2_init_integer_type): New function.
1542         (read_base_type): Call dwarf2_init_integer_type instead of
1543         init_integer_type in all cases.
1544         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1545         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1546         LEN is greater than 0.
1547
1548 2018-10-30  Tom Tromey  <tom@tromey.com>
1549
1550         * main.c (captured_main_1): Check return value of bfd_init.
1551
1552 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1553
1554         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1555         Adjust comments.
1556
1557 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1558
1559         * procfs.c: Include common/pathstuff.h.
1560
1561 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1562
1563         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1564         Add missing braces.  No functional change.
1565
1566 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1567
1568         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1569         to report a bad option and fix indentation.
1570         * demangle.c (demangle_command): Use report_unrecognized_option_error
1571         to report a bad option and correctly report the bad option.
1572
1573 2018-10-27  Tom Tromey  <tom@tromey.com>
1574
1575         PR cli/23364:
1576         * darwin-nat.c (copied_shell): New global.
1577         (may_have_sip): Rename from should_disable_startup_with_shell.
1578         (copy_shell_to_cache, maybe_cache_shell): New functions.
1579         (darwin_nat_target::create_inferior): Update.  Use
1580         copied_shell.
1581
1582 2018-10-27  Tom Tromey  <tom@tromey.com>
1583
1584         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1585         (run_tests): Call test_to_file.
1586         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1587         temporary files.
1588         * common/scoped_fd.h (scoped_fd::to_file): New method.
1589
1590 2018-10-27  Tom Tromey  <tom@tromey.com>
1591
1592         * unittests/scoped_mmap-selftests.c (test_normal): Use
1593         gdb_mkostemp_cloexec.
1594         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1595         Use gdb_mkostemp_cloexec.
1596         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1597         gnulib/config.in, gnulib/configure,
1598         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1599         gnulib/import/m4/gnulib-cache.m4,
1600         gnulib/import/m4/gnulib-comp.m4: Update.
1601         * gnulib/import/m4/mkostemp.m4: New file.
1602         * gnulib/import/m4/mkstemp.m4: Remove.
1603         * gnulib/import/mkostemp.c: New file.
1604         * gnulib/import/mkstemp.m4: Remove.
1605         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1606         mkstemp, add mkostemp.  Apply new patch.
1607         * gnulib/import/stdlib.in.h: Apply patch.
1608         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1609         New file.
1610         * dwarf-index-write.c (write_psymtabs_to_index): Use
1611         gdb_mkostemp_cloexec.
1612         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1613
1614 2018-10-27  Tom Tromey  <tom@tromey.com>
1615
1616         * unittests/mkdir-recursive-selftests.c: New file.
1617         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1618         unittests/mkdir-recursive-selftests.c.
1619         * dwarf-index-cache.c (mkdir_recursive): Move to
1620         common/filestuff.c.
1621         (index_cache::store): Check return value of mkdir_recursive.
1622         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1623         (_initialize_index_cache): Don't register test.
1624         * common/filestuff.h (mkdir_recursive): Declare.
1625         * common/filestuff.c (mkdir_recursive): Move from
1626         dwarf-index-cache.c.  Return bool.
1627
1628 2018-10-27  Tom Tromey  <tom@tromey.com>
1629
1630         * dwarf-index-write.c (write_psymtabs_to_index): Move
1631         make_temp_filename to common/pathstuff.c.
1632         * common/pathstuff.h (make_temp_filename): Declare.
1633         * common/pathstuff.c (make_temp_filename): New function, moved
1634         from dwarf-index-write.c.
1635
1636 2018-10-27  Tom Tromey  <tom@tromey.com>
1637
1638         * procfs.c (procfs_target::create_inferior): Use get_shell.
1639         * cli/cli-cmds.c (shell_escape): Use get_shell.
1640         * windows-nat.c (windows_nat_target::create_inferior): Use
1641         get_shell.
1642         * common/pathstuff.c (get_shell): New function.
1643         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1644         (fork_inferior): Use get_shell.
1645         * common/pathstuff.h (get_shell): Declare.
1646
1647 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1648
1649         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1650
1651 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1652
1653         * stack.c (print_variable_and_value_data): Add preg and treg.
1654         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1655         and update callers.
1656         (print_frame_arg_vars): Likewise.
1657         (prepare_reg): New function.
1658         (info_locals_command): Extract info print args and use them.
1659         (info_args_command): Likewise.
1660         (_initialize_stack): Modify on-line help.
1661         * symtab.c (treg_matches_sym_type_name): New function.
1662         (search_symbols): New arg t_regexp.
1663         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1664         (info_variables_command): Extract info print args and use them.
1665         (info_functions_command): Likewise.
1666         (info_types_command): Update call to symtab_symbol_info.
1667         (_initialize_symtab): Modify on-line help.
1668         * symtab.h (treg_matches_sym_type_name): New function.
1669         (search_symbols): New t_regexp arg.
1670
1671 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1672
1673         * cli-utils.c (extract_arg_maybe_quoted): New function.
1674         (extract_info_print_args): New function.
1675         (info_print_args_help): New function.
1676         (report_unrecognized_option_error): New function.
1677         * cli-utils.h (extract_arg_maybe_quoted): New function.
1678         (extract_info_print_args): New function.
1679         (info_print_args_help): New function.
1680         (report_unrecognized_option_error): New function.
1681
1682 2018-10-26  Tom Tromey  <tom@tromey.com>
1683
1684         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1685         (compute_compunit_symtab_includes): Update.
1686         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1687         (compunit_symtab_ptr): Likewise.
1688
1689 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1690
1691         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1692         default_print_auxv_entry for specific tag values.
1693
1694 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1695
1696         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1697
1698 2018-10-26  Jim Wilson  <jimw@sifive.com>
1699
1700         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1701         (riscv_linux_sigframe_init): Declare.
1702         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1703         (riscv_linux_sigframe): New.
1704         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1705         (riscv_linux_sigframe_init): Define.
1706         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1707
1708         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1709         (riscv_isa_flen): Likewise.  Drop static.
1710         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1711         (riscv_isa_flen): Likewise.  Declare.
1712
1713 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1714             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1715
1716         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1717         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1718         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1719         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1720         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1721         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1722         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1723         Define.
1724         (struct ppc_linux_features) <htm>: New field.
1725         (ppc_linux_no_features): Add initializer for htm field.
1726         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1727         new tdescs.
1728         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1729         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1730         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1731         Define if not already defined.
1732         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1733         and rs6000/powerpc-isa207-htm-vsx64l.
1734         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1735         rs6000/powerpc-isa207-htm-vsx64l.xml.
1736         * features/rs6000/power-htm-spr.xml: New file.
1737         * features/rs6000/power-htm-core.xml: New file.
1738         * features/rs6000/power64-htm-core.xml: New file.
1739         * features/rs6000/power-htm-fpu.xml: New file.
1740         * features/rs6000/power-htm-altivec.xml: New file.
1741         * features/rs6000/power-htm-vsx.xml: New file.
1742         * features/rs6000/power-htm-ppr.xml: New file.
1743         * features/rs6000/power-htm-dscr.xml: New file.
1744         * features/rs6000/power-htm-tar.xml: New file.
1745         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1746         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1747         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1748         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1749         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1750         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1751         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1752         fetch_regset with HTM regsets.
1753         (store_register, store_ppc_registers): Call store_regset with HTM
1754         regsets.
1755         (ppc_linux_nat_target::read_description): Set htm field in the
1756         features struct if needed.
1757         * ppc-linux-tdep.c: Include
1758         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1759         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1760         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1761         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1762         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1763         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1764         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1765         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1766         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1767         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1768         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1769         (ppc32_linux_ctarregset): New globals.
1770         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1771         (ppc_linux_collect_core_cpgrregset): New function.
1772         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1773         regsets.
1774         (ppc_linux_core_read_description): Check if the tm spr section is
1775         present and set htm in the features struct.
1776         (_initialize_ppc_linux_tdep): Call
1777         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1778         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1779         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1780         Declare.
1781         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1782         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1783         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1784         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1785         New fields.
1786         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1787         Likewise.
1788         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1789         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1790         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1791         New enum fields.
1792         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1793         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1794         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1795         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1796         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1797         <PPC_CTAR_REGNUM>: Likewise.
1798         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1799         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1800         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1801         (IS_CEFP_PSEUDOREG): Define.
1802         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1803         registers.  Return names for the checkpointed DFP, VSX, and EFP
1804         pseudo registers.
1805         (rs6000_pseudo_register_type): Remove initial assert and raise an
1806         internal error in the else clause instead.  Return types for the
1807         checkpointed DFP, VSX, and EFP pseudo registers.
1808         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1809         checkpointed DFP pseudo registers.
1810         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1811         checkpointed VSX pseudo registers.
1812         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1813         from efpr_pseudo_register_read and
1814         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1815         registers.
1816         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1817         Handle checkpointed DFP, VSX, and EFP registers.
1818         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1819         (efp_ax_pseudo_register_collect): New functions.
1820         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1821         register logic to new functions.  Handle checkpointed DFP, VSX,
1822         and EFP pseudo registers.
1823         (rs6000_gdbarch_init): Look for and validate the htm features.
1824         Include checkpointed DFP, VSX and EFP pseudo-registers.
1825         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1826         HTM registers.
1827
1828 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1829
1830         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1831         without altivec or fpu.
1832
1833 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1834             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1835
1836         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1837         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1838         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1839         Define if not already defined.
1840         * features/rs6000/power-ebb.xml: New file.
1841         * features/rs6000/power-linux-pmu.xml: New file.
1842         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1843         features.
1844         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1845         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1846         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1847         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1848         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1849         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1850         fetch_regset with ebb and pmu regsets.
1851         (store_register, store_ppc_registers): Call store_regset with ebb
1852         and pmu regsets.
1853         (ppc_linux_nat_target::read_description): Set isa207 field in the
1854         features struct if ebb and pmu are avaiable.
1855         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1856         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1857         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1858         and pmu regsets.
1859         (ppc_linux_core_read_description): Check if the pmu section is
1860         present and set isa207 in the features struct.
1861         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1862         (ppc32_linux_pmuregset): Declare.
1863         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1864         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1865         <ppc_sier_regnum>: New field.
1866         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1867         New enum values.
1868         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1869         values.
1870         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1871         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1872         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1873         ebb and pmu features.
1874
1875 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1876             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1877
1878         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1879         (tdesc_powerpc_isa207_vsx64l): Declare.
1880         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1881         (struct ppc_linux_features) <isa207>: New field.
1882         (ppc_linux_no_features): Add initializer for isa207 field.
1883         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1884         new tdescs.
1885         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1886         (NT_PPC_TAR): Define if not already defined.
1887         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1888         rs6000/powerpc-isa207-vsx64l.
1889         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1890         rs6000/powerpc-isa207-vsx64l.xml.
1891         * features/rs6000/power-tar.xml: New file.
1892         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1893         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1894         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1895         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1896         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1897         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1898         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1899         fetch_regset with the TAR regset.
1900         (store_register, store_ppc_registers): Call store_regset with the
1901         TAR regset.
1902         (ppc_linux_nat_target::read_description): Set isa207 field in the
1903         features struct if needed.
1904         * ppc-linux-tdep.c: Include
1905         features/rs6000/powerpc-isa207-vsx32l.c and
1906         features/rs6000/powerpc-isa207-vsx64l.c.
1907         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1908         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1909         regset.
1910         (ppc_linux_core_read_description): Check if the tar section is
1911         present and set isa207 in the features struct.
1912         (_initialize_ppc_linux_tdep): Call
1913         initialize_tdesc_powerpc_isa207_vsx32l and
1914         initialize_tdesc_powerpc_isa207_vsx64l.
1915         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1916         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1917         (enum) <PPC_TAR_REGNUM>: New enum value.
1918         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1919         feature.
1920         (ppc_process_record_op31): Record changes to TAR.
1921
1922 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1923             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1924
1925         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1926         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1927         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1928         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1929         (struct ppc_linux_features) <ppr_dscr>: New field.
1930         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1931         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1932         new tdescs.
1933         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1934         Define if not already defined.
1935         * features/Makefile (WHICH): Add
1936         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1937         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1938         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1939         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1940         * features/rs6000/power-dscr.xml: New file.
1941         * features/rs6000/power-ppr.xml: New file.
1942         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1943         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1944         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1945         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1946         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1947         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1948         * ppc-linux-nat.c: Include <sys/uio.h>.
1949         (fetch_regset, store_regset, check_regset): New functions.
1950         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1951         DSCR and PPR regsets.
1952         (store_register, store_ppc_registers): Call store_regset with
1953         DSCR and PPR regsets.
1954         (ppc_linux_get_hwcap2): New function.
1955         (ppc_linux_nat_target::read_description): Call
1956         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1957         features struct if needed.
1958         * ppc-linux-tdep.c: Include
1959         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1960         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1961         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1962         (ppc32_linux_dscrregset): New globals.
1963         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1964         and dscr regsets.
1965         (ppc_linux_core_read_description): Check if the ppr and dscr
1966         sections are present and set ppr_dscr in the features struct.
1967         (_initialize_ppc_linux_tdep): Call
1968         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1969         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1970         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1971         (ppc32_linux_dscrregset): Declare.
1972         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1973         <ppc_dscr_regnum>: New field.
1974         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1975         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1976         and dscr features.
1977         (ppc_process_record_op31): Record changes to PPR and DSCR.
1978
1979 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1980
1981         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1982         second initializer line for the have_* variables.  Initialize
1983         have_fpu to 0 instead of 1.
1984
1985 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1986
1987         * arch/ppc-linux-common.c (ppc_linux_match_description):
1988         Parenthesize tdesc assignements and indent them properly.
1989
1990 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1991
1992         * ppc-linux-nat.c (fetch_register): Change if statement to else
1993         if.
1994         (store_register): Likewise.
1995
1996 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1997
1998         * rs6000-tdep.c: Remove reggroups.h include.
1999         (rs6000_pseudo_register_reggroup_p): Remove.
2000         (rs6000_gdbarch_init): Remove call to
2001         set_tdesc_pseudo_register_reggroup_p.
2002
2003 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2004
2005         * reggroups.c (default_register_reggroup_p): Return true for
2006         decfloat registers and float_reggroup.
2007
2008 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2009
2010         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
2011         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
2012         ppc_linux_collect_vrregset by regcache_collect_regset.
2013
2014 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
2015
2016         * linux-tdep.c (linux_collect_regset_section_cb): Use
2017         std::vector<gdb_byte> instead of char * and malloc for buf.
2018         Remove xfree.
2019
2020 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
2021
2022         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
2023         symtab_start instead of always using language_unknown.
2024
2025 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2026
2027         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
2028         READ_P parameter, catch and ignore register access errors from
2029         either the old or new MISA location.
2030         (riscv_has_feature): Update call to riscv_read_misa_reg.
2031
2032 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2033
2034         * python/py-function.c (convert_values_to_python): Return
2035         gdbpy_ref<>.  Add header comment.
2036         (fnpy_call): Adjust.
2037
2038 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2039
2040         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
2041         (cmdpy_completer_handle_brkchars): Adjust.
2042         (cmdpy_completer): Adjust.
2043
2044 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
2045
2046         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
2047         Pass correct regnum to raw_supply_zeroed.
2048
2049 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
2050
2051         * regcache.c (cooked_read_test): Add CSKY to the list of
2052         architectures with a save_reggroup
2053
2054 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
2055
2056         PR gdb/23368
2057         * infrun.c (follow_exec): In the follow_exec_mode_new case,
2058         transfer terminal state from old new new inferior.
2059         * terminal.h (swap_terminal_info): New function.
2060         * inflow.c (swap_terminal_info): New function.
2061
2062 2018-10-23  Tom Tromey  <tom@tromey.com>
2063
2064         * record-btrace.c (get_thread_current_frame_id): Rename from
2065         get_thread_current_frame.  Return a frame_id.
2066         (record_btrace_start_replaying): Update.
2067
2068 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2069
2070         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
2071         for CSRs.
2072
2073 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
2074
2075         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
2076         have_nonsteppable_watchpoint attribute to 1.
2077
2078 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
2079
2080         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
2081         register names.
2082         (struct register_alias): Rename to...
2083         (struct riscv_register_alias): ...this, and update comment.
2084         (riscv_register_aliases): Update type, and alias names.  Remove
2085         CSR names from this list.
2086         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2087         register names.  Add an extra assertion.
2088         (riscv_is_regnum_a_named_csr): New function.
2089         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2090
2091 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2092
2093         * configure.tgt: Add configuration for s12z.
2094         * s12z-tdep.c:  New file.
2095         * NEWS: Mention new target.
2096
2097 2018-10-22  Jim Wilson  <jimw@sifive.com>
2098
2099         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2100         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2101
2102         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2103         (riscv_register_type): Use them.
2104         (riscv_print_one_register_info): Handle union of floats same as float.
2105         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2106         riscv_fpreg_q_type fields.
2107
2108 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2109
2110         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2111         * gdbarch.h: Re-generate.
2112         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2113         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2114         * eval.c (evaluate_subexp_standard): Likewise.
2115         * findvar.c (value_of_register): Likewise.
2116         (value_of_register_lazy): Likewise.
2117         (address_from_register): Likewise.
2118         * frame.c (get_frame_register_bytes): Likewise.
2119         * gdbarch-selftests.c (register_to_value_test): Likewise.
2120         * h8300-tdep.c (h8300_register_type): Likewise.
2121         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2122         (i386_svr4_reg_to_regnum): Likewise.
2123         * infcmd.c (default_print_registers_info): Likewise.
2124         (registers_info): Likewise.
2125         (print_vector_info): Likewise.
2126         (default_print_float_info): Likewise.
2127         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2128         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2129         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2130         (mi_cmd_data_list_changed_registers): Likewise.
2131         (mi_cmd_data_list_register_values): Likewise.
2132         (mi_cmd_data_write_register_values): Likewise.
2133         (mi_cmd_trace_frame_collected): Likewise.
2134         * mips-tdep.c (print_gp_register_row): Likewise.
2135         (mips_print_registers_info): Likewise.
2136         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2137         * regcache.c (init_regcache_descr): Likewise.
2138         (register_size): Likewise.
2139         (register_dump::dump): Likewise.
2140         (cooked_read_test): Likewise.
2141         (cooked_write_test): Likewise.
2142         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2143         (rs6000_gdbarch_init): Likewise.
2144         * stabsread.c (stab_reg_to_regnum): Likewise.
2145         * stack.c (info_frame_command): Likewise.
2146         * target-descriptions.c (tdesc_register_name): Likewise.
2147         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2148         * tui/tui-regs.c (tui_show_register_group): Likewise.
2149         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2150         (user_reg_map_regnum_to_name): Likewise.
2151         (value_of_user_reg): Likewise.
2152         (maintenance_print_user_registers): Likewise.
2153         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2154         (xtensa_register_name): Likewise.
2155         (xtensa_register_type): Likewise.
2156         (xtensa_reg_to_regnum): Likewise.
2157         (xtensa_pseudo_register_read): Likewise.
2158         (xtensa_pseudo_register_write): Likewise.
2159
2160 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2161
2162         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2163         correctly-sized buffer with raw_read.
2164         (amd64_pseudo_register_write): Use correctly-sized buffer for
2165         raw_read/raw_write.
2166
2167 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2168
2169         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2170         in add_prefix_cmd of set print type.
2171
2172 2018-10-19  Tom Tromey  <tom@tromey.com>
2173
2174         PR tui/18388:
2175         * NEWS: Mention tabset deprecation.
2176         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2177         (update_tab_width): New function.
2178         (tui_set_tab_width, tui_show_tab_width): New functions.
2179         (tui_set_tab_width_command): Use update_tab_width.
2180         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2181         Add new "set tui tab-width" command.
2182         * tui/tui-source.c (tui_set_source_content): Update.
2183         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2184         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2185         Don't declare.
2186         (tui_tab_width): Declare.
2187         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2188         (tui_set_default_tab_len): Remove.
2189
2190 2018-10-19  Tom Tromey  <tom@tromey.com>
2191
2192         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2193         (key_is_backspace, tui_getc): Don't declare.
2194         * tui/tui-io.c (key_is_start_sequence): Now static.
2195         (key_is_end_sequence, key_is_backspace): Remove.
2196         (tui_getc): Now static.
2197
2198 2018-10-19  Tom Tromey  <tom@tromey.com>
2199
2200         * symfile.c (reread_symbols): Clear "static_links".
2201
2202 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2203
2204         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2205         define.
2206         (aarch64_linux_sigframe_init): Extra boundary checks.
2207
2208 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2209
2210         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2211         the possibly non-existent tdesc type 'vec128', but the type of raw
2212         register v16 instead.
2213
2214 2018-10-19  Gary Benson <gbenson@redhat.com>
2215
2216         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2217
2218 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2219
2220         PR cli/23785
2221         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2222         NULL.
2223
2224 2018-10-17  Paul Koning  <paul_koning@dell.com>
2225
2226         * charset.c (convert_between_encodings): Fix unsigned overflow.
2227
2228 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2229
2230         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2231         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2232         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2233         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2234         New functions.
2235         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2236         and fbsd_info_proc_mappings_header.
2237         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2238         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2239         New.
2240
2241 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2242
2243         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2244         Solaris Maintainer.
2245
2246 2018-10-15  Tom Tromey  <tom@tromey.com>
2247
2248         * tui/tui.c (strcat_to_buf): Remove casts.
2249         * tui/tui-winsource.c (tui_show_source_line)
2250         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2251         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2252         * tui/tui-windata.c (tui_first_data_item_displayed)
2253         (tui_delete_data_content_windows, tui_erase_data_content)
2254         (tui_display_all_data, tui_display_data_from)
2255         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2256         * tui/tui-win.c (tui_set_win_height)
2257         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2258         casts.
2259         * tui/tui-win.c (tui_resize_all): Remove casts.
2260         (tui_scroll_backward_command, tui_set_focus)
2261         (tui_set_tab_width_command): Likewise.
2262         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2263         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2264         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2265         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2266         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2267         Remove casts.
2268
2269 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2270
2271         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2272         AArch64/ARM maintainer.
2273
2274 2018-10-11  Gary Benson <gbenson@redhat.com>
2275
2276         * interps.h (interp::m_name): Make private and mutable.
2277         * interps.c (interp::~interp): Free m_name.
2278
2279 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2280             Simon Marchi <simark@simark.ca>
2281
2282         * README (`configure' options): Add documentation for new
2283         "--enable-unit-tests" option.
2284         * acinclude.m4: Include "selftest.m4".
2285         * configure: Regenerate.
2286         * configure.ac: Use "GDB_AC_SELFTEST".
2287         * maint.c (maintenance_selftest): Update message informing
2288         that selftests have been disabled.
2289         (maintenance_info_selftests): Likewise.
2290         * selftest.m4: New file.
2291
2292 2018-10-10  Gary Benson <gbenson@redhat.com>
2293
2294         * remote.c (remote_target::remote_send_printf): Add
2295         missing va_end found by Coverity.
2296
2297 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2298
2299         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2300
2301 2018-10-09  Tom Tromey  <tom@tromey.com>
2302
2303         * configure: Rebuild.
2304         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2305         * NEWS: Update --enable-ubsan documentation.
2306
2307 2018-10-09  Gary Benson <gbenson@redhat.com>
2308
2309         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2310         found by Coverity.
2311
2312 2018-10-08  Tom Tromey  <tom@tromey.com>
2313
2314         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2315         variable.
2316         (riscv_fbsd_init_abi): Likewise.
2317
2318 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2319         * valops.c (value_struct_elt_for_reference): Rename local variable
2320         to work around the shadowing a previous local warning.
2321
2322 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2323
2324         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2325         * NEWS: Mention new FreeBSD/riscv native configuration.
2326         * configure.host: Add riscv*-*-freebsd*.
2327         * configure.nat: Likewise.
2328         * riscv-fbsd-nat.c: New file.
2329
2330 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2331
2332         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2333         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2334         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2335         * NEWS: Mention new FreeBSD/riscv target.
2336         * configure.tgt: Add riscv*-*-freebsd*.
2337         * riscv-fbsd-tdep.c: New file.
2338         * riscv-fbsd-tdep.h: New file.
2339
2340 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2341
2342         * regcache.h (struct regcache_map_entry): Note that this type can
2343         be used with traditional frame caches.
2344         * trad-frame.c (trad_frame_set_reg_regmap): New.
2345         * trad-frame.h (trad_frame_set_reg_regmap): New.
2346
2347 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2348
2349         PR c++/16841
2350         * valops.c (get_virtual_base_offset): New function.
2351         (value_struct_elt_for_reference): Use it to get virtual base offset
2352         and add it in calculating class member address.
2353
2354 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2355
2356         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2357         (check_producer): Check if the producer is codewarrior.
2358         (producer_is_codewarrior): New function.
2359         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2360         produced by codewarrior.
2361         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2362
2363 2018-10-06  Tom Tromey  <tom@tromey.com>
2364
2365         PR python/19399:
2366         * python/py-inferior.c: Add "architecture" entry.
2367         (infpy_architecture): New function.
2368
2369 2018-10-06  Tom Tromey  <tom@tromey.com>
2370
2371         PR python/21765:
2372         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2373         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2374         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2375         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2376
2377 2018-10-06  Tom Tromey  <tom@tromey.com>
2378
2379         PR build/17077:
2380         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2381         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2382         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2383         #include.
2384
2385 2018-10-06  Tom Tromey  <tom@tromey.com>
2386
2387         * python/py-breakpoint.c (bppy_get_location): Handle a
2388         bp_breakpoint without a location.
2389
2390 2018-10-06  Tom Tromey  <tom@tromey.com>
2391
2392         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2393         (_RegEx): Reformat help text.
2394         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2395         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2396         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2397         text.
2398         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2399         (EnableXMethod, DisableXMethod): Remove help indentation.
2400         Capitalize meta-syntactic variables.
2401         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2402         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2403         Capitalize meta-syntactic variables.
2404         * python/lib/gdb/command/explore.py (ExploreCommand)
2405         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2406         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2407         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2408         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2409         Remove help indentation.
2410         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2411         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2412         (DisableFrameFilter, SetFrameFilterPriority)
2413         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2414
2415 2018-10-06  Tom Tromey  <tom@tromey.com>
2416
2417         PR tui/28819:
2418         * tui/tui-io.c (gdb_wgetch): New function.
2419         (tui_mld_getc, tui_getc): Use it.
2420
2421 2018-10-05  Tom Tromey  <tom@tromey.com>
2422
2423         * sol-thread.c (sol_thread_target::wait): Rename inner
2424         "save_ptid".
2425
2426 2018-10-04  Tom Tromey  <tom@tromey.com>
2427
2428         * configure: Rebuild.
2429         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2430
2431 2018-10-04  Tom Tromey  <tom@tromey.com>
2432
2433         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2434         declaration of "block".
2435
2436 2018-10-04  Tom Tromey  <tom@tromey.com>
2437
2438         * common/filestuff.c (fdwalk): Remove inner declaration of
2439         "result".
2440
2441 2018-10-04  Tom Tromey  <tom@tromey.com>
2442
2443         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2444         "structs_addr" and hoist declaration.
2445
2446 2018-10-04  Tom Tromey  <tom@tromey.com>
2447
2448         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2449         variable "size".
2450
2451 2018-10-04  Tom Tromey  <tom@tromey.com>
2452
2453         * mdebugread.c (parse_partial_symbols): Use std::string.
2454
2455 2018-10-04  Tom Tromey  <tom@tromey.com>
2456
2457         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2458         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2459         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2460         header.
2461         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2462         more inner scope.
2463         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2464         * varobj.c (varobj_update): Rename inner "newobj",
2465         "type_changed".
2466         * valprint.c (generic_emit_char): Rename inner "buf".
2467         * valops.c (find_overload_match): Rename inner "temp".
2468         (value_struct_elt_for_reference): Declare "v" in more inner
2469         scope.
2470         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2471         * unittests/array-view-selftests.c (run_tests): Rename inner
2472         "vec".
2473         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2474         header.
2475         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2476         "tsv" in more inner scope.
2477         (print_one_static_tracepoint_marker): Rename inner
2478         "tuple_emitter".
2479         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2480         (tic6x_push_dummy_call): Don't redeclare "addr".
2481         * target-float.c: Declare "dto" lower.
2482         * symtab.c (lookup_local_symbol): Rename inner "sym".
2483         (find_pc_sect_line): Rename inner "pc".
2484         * stack.c (print_frame): Don't redeclare "gdbarch".
2485         (return_command): Rename inner "gdbarch".
2486         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2487         "sp".
2488         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2489         header.
2490         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2491         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2492         scope.
2493         * remote.c (remote_target::update_thread_list): Don't redeclare
2494         "tp".
2495         (remote_target::process_initial_stop_replies): Rename inner
2496         "thread".
2497         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2498         (remote_target::wait_as): Don't redeclare "stop_reply".
2499         (remote_target::get_thread_local_address): Rename inner
2500         "result".
2501         (remote_target::get_tib_address): Likewise.
2502
2503         * regcache.c (cooked_read_test): Rename "regnum".
2504         * record-btrace.c (cmd_record_btrace_start): Rename inner
2505         "exception".
2506         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2507         loop header.
2508         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2509         header.
2510         (ppu2spu_sniffer): Rename inner "buf".
2511         * parse.c (operator_check_standard): Rename inner "type",
2512         "objfile".
2513         * p-valprint.c (pascal_val_print): Introduce new scope for
2514         "low_bound", "high_bound".
2515         * p-exp.y (yylex): Declare "i" in loop header.
2516         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2517         Lower declaration of "s".
2518         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2519         header.
2520         (nios2_push_dummy_call): Rename "len".
2521         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2522         "buf".
2523         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2524         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2525         (linux_xfer_osdata_modules): Likewise.
2526         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2527         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2528         (mips_o64_push_dummy_call): Likewise.
2529         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2530         "op".
2531         * mi/mi-main.c (list_available_thread_groups): Rename inner
2532         "tuple_emitter".
2533         (mi_cmd_data_read_memory): Rename inner "opts".
2534         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2535         "tuple_emitter".
2536         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2537         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2538         more inner scope.
2539         (parse_partial_symbols): Rename inner "pst", "p", "name"
2540         * main.c (captured_main_1): Rename inner "i"s.
2541         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2542         "oso2".
2543         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2544         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2545         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2546         (handle_signal_stop): Rename inner "gdbarch".
2547         (handle_command): Declare "signum" in loop header.
2548         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2549         "status".
2550         (examine_prologue): Rename inner "sol" and "sof".
2551         (ia64_extract_return_value): Rename inner "val".  Declare another
2552         "val" in a more inner scope.
2553         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2554         inner scope.
2555         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2556         "except".
2557         * findvar.c (default_read_var_value): Don't redeclare "addr".
2558         * f-exp.y (yylex): Declare "i" in loop header.
2559         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2560         Rename inner "type", "expect_type".
2561         (evaluate_subexp_for_sizeof): Rename inner "pc".
2562         * elfread.c (elf_symfile_read): Rename inner "abfd".
2563         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2564         "bytes_read".
2565         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2566         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2567         (dwarf_decode_line_header): Rename inner "lh".
2568         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2569         "offset".  Declare "i" in loop header.
2570         (disassemble_dwarf_expression): Rename inner "addr_size".
2571         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2572         inner "result".
2573         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2574         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2575         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2576         "inner_list_emitter".
2577         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2578         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2579         declaration in a block.
2580         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2581         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2582         "obstack_final_size".
2583         * cp-support.c (inspect_type): Declare "i" in loop header.
2584         * compile/compile.c (compile_instance::insert_symbol_error):
2585         Rename inner "e".
2586         * common/agent.c (agent_run_command): Remove inner "ret"
2587         declaration.
2588         * coffread.c (coff_symfile_read): Rename inner "name".
2589         (coff_symfile_read): Rename inner "abfd".
2590         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2591         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2592         "high".
2593         * c-exp.y (lex_one_token): Move "len" declaration lower.
2594         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2595         "gdbarch".
2596         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2597         "b".
2598         (watch_command_1): Declare "mark" later.
2599         (clear_command): Don't shadow "a" or "b".
2600         (delete_command): Rename inner "b".
2601         (delete_trace_command): Likewise.
2602         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2603         "op".
2604         (arm_gdbarch_init): Remove inner "e_flags".
2605         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2606         "offset" in inner blocks.
2607
2608 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2609
2610         * dwarf-index-write.c (file_write): Don't write if the vector is
2611         empty.
2612
2613 2018-10-05  Tom de Vries  <tdevries@suse.de>
2614
2615         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2616         PyArg_ParseTuple call.
2617
2618 2018-10-05  Tom de Vries  <tdevries@suse.de>
2619
2620         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2621         PyArg_ParseTuple call.
2622
2623 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2624
2625         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2626         to avoid exceeding 80 characters per line limit.
2627
2628 2018-10-04  Tom Tromey  <tom@tromey.com>
2629
2630         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2631         (reread_symbols): Update.
2632         * complaints.h (clear_complaints): Remove argument.
2633         * complaints.c (enum complaint_series): Remove.
2634         (series): Remove global.
2635         (complaint_internal): Update.
2636         (clear_complaints): Remove argument.
2637
2638 2018-10-04  Tom Tromey  <tom@tromey.com>
2639
2640         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2641         debugging symbols" message if there is a separate debug objfile.
2642
2643 2018-10-04  Tom Tromey  <tom@tromey.com>
2644
2645         PR cli/19551:
2646         * symfile.c (symbol_file_add_with_addrs): Update output.
2647         * psymtab.c (require_partial_symbols): Update output.
2648
2649 2018-10-04  Tom Tromey  <tom@tromey.com>
2650
2651         PR cli/22234:
2652         * complaints.c: Emit \n.
2653
2654 2018-10-04  Tom Tromey  <tom@tromey.com>
2655
2656         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2657         (separate_debug_file_exists, find_separate_debug_file)
2658         (add_symbol_file_command, reread_symbols, allocate_symtab)
2659         (allocate_compunit_symtab): Use filtered printing, not
2660         unfiltered.
2661         * psymtab.c (require_partial_symbols, dump_psymtab)
2662         (allocate_psymtab): Use filtered printing, not unfiltered.
2663
2664 2018-10-04  Tom Tromey  <tom@tromey.com>
2665
2666         * complaints.c (complaint_internal): Correctly check complaint
2667         count.
2668
2669 2018-10-04  Tom Tromey  <tom@tromey.com>
2670
2671         * complaints.h (struct complaints): Remove declaration.
2672         * complaints.c (clear_complaints): Remove an unused variable.
2673
2674 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2675
2676         * MAINTAINERS (Write After Approval): Add self.
2677
2678 2018-10-03  Tom Tromey  <tom@tromey.com>
2679
2680         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2681         "buffer_contents".
2682         * coffread.c (coff_symtab_read): Initialize "newobj".
2683
2684 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2685
2686         * dwarf2read.c (read_func_scope): Remove struct keyword in
2687         range-based for.
2688
2689 2018-10-03  Tom Tromey  <tom@tromey.com>
2690
2691         * README: Mention --enable-ubsan.
2692         * NEWS: Mention --enable-ubsan.
2693         * acinclude.m4: Include sanitize.m4.
2694         * configure: Rebuild.
2695         * configure.ac: Call AM_GDB_UBSAN.
2696         * sanitize.m4: New file.
2697
2698 2018-10-03  Tom Tromey  <tom@tromey.com>
2699
2700         * expression.h (enum exp_opcode): Use uint8_t as base type.
2701         * expprint.c (op_name): Handle invalid opcodes.
2702
2703 2018-10-03  Tom Tromey  <tom@tromey.com>
2704
2705         * parse.c (prefixify_expression): Add assert.
2706         (parse_exp_in_context_1): Throw exception if the expression is
2707         empty.
2708
2709 2018-10-03  Tom Tromey  <tom@tromey.com>
2710
2711         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2712
2713 2018-10-03  Tom Tromey  <tom@tromey.com>
2714
2715         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2716
2717 2018-10-03  Tom Tromey  <tom@tromey.com>
2718
2719         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2720         unsigned.
2721
2722 2018-10-03  Tom Tromey  <tom@tromey.com>
2723
2724         * findvar.c (extract_integer): Do work in an unsigned type.
2725
2726 2018-10-03  Tom Tromey  <tom@tromey.com>
2727
2728         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2729         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2730         base type.
2731         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2732         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2733         type.
2734         * c-lang.h (enum c_string_type_values): Use unsigned as base
2735         type.
2736         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2737
2738 2018-10-03  Tom Tromey  <tom@tromey.com>
2739
2740         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2741         <~dwarf2_frame_state_reg_info>: Update.
2742         <dwarf2_frame_state_reg_info>: Update.
2743         <alloc_regs>: Add assertion.  Update.
2744         <reg>: Now a std::vector.
2745         <num_regs>: Remove.
2746         <swap>: Update.
2747         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2748         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2749
2750 2018-10-03  Tom Tromey  <tom@tromey.com>
2751
2752         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2753
2754 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2755
2756         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2757
2758 2018-10-02  Tom Tromey  <tom@tromey.com>
2759
2760         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2761
2762 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2763
2764         * NEWS: Mention changed commands.
2765         * ser-uds.c: New file.
2766         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2767         * configure: Regenerate.
2768         * Makefile.in: Add new file.
2769         * serial.c (serial_open): Check if filename is a socket
2770         and lookup the appropriate interface accordingly.
2771
2772 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2773
2774         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2775         define.
2776         (AARCH64_EXTRA_MAGIC): Likewise.
2777         (AARCH64_FPSIMD_MAGIC): Likewise.
2778         (AARCH64_SVE_MAGIC): Likewise.
2779         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2780         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2781         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2782         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2783         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2784         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2785         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2786         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2787         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2788         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2789         (read_aarch64_ctx): Add function.
2790         (aarch64_linux_sigframe_init): Detect FP registers.
2791
2792 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2793
2794         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2795         (AARCH64_D0_REGNUM): Likewise.
2796         (AARCH64_S0_REGNUM): Likewise.
2797         (AARCH64_H0_REGNUM): Likewise.
2798         (AARCH64_B0_REGNUM): Likewise.
2799         (AARCH64_SVE_V0_REGNUM): Likewise.
2800         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2801         (AARCH64_D0_REGNUM): Likewise.
2802         (AARCH64_S0_REGNUM): Likewise.
2803         (AARCH64_H0_REGNUM): Likewise.
2804         (AARCH64_B0_REGNUM): Likewise.
2805         (AARCH64_SVE_V0_REGNUM): Likewise.
2806
2807 2018-10-01  Gary Benson <gbenson@redhat.com>
2808
2809         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2810         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2811         prfpregset_t instead of gdb_prfpregset_t.
2812         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2813         * configure, config.in: Rebuild.
2814
2815 2018-10-01  Gary Benson <gbenson@redhat.com>
2816
2817         * common/gdb_proc_service.h: New file, factored out from...
2818         * gdb_proc_service.h: Moved common code to the above file.
2819         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2820
2821 2018-10-01  Gary Benson <gbenson@redhat.com>
2822
2823         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2824         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2825
2826 2018-10-01  Gary Benson <gbenson@redhat.com>
2827
2828         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2829         (AC_CHECK_HEADERS): Check for linux/elf.h.
2830         * configure, config.in: Rebuild.
2831         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2832         doesn't define elf_fpregset_t.
2833
2834 2018-10-01  Gary Benson <gbenson@redhat.com>
2835
2836         * gdb_proc_service.h: Whitespace change.
2837
2838 2018-10-01  Tom Tromey  <tom@tromey.com>
2839
2840         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2841         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2842         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2843
2844 2018-10-01  Tom Tromey  <tom@tromey.com>
2845
2846         * README: Minor change.
2847
2848 2018-09-30  Pedro Alves  <palves@redhat.com>
2849
2850         * darwin-nat-info.c (darwin_debug_regions_recurse)
2851         (info_mach_exceptions_command): Remove unused local variables.
2852         * darwin-nat.c (darwin_decode_notify_message)
2853         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2854         (darwin_stop_inferior, darwin_setup_exceptions)
2855         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2856         (darwin_nat_target::attach, darwin_nat_target::detach)
2857         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2858         local variables.
2859         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2860         variables.
2861
2862 2018-09-29  Tom Tromey  <tom@tromey.com>
2863
2864         * README: Remove some leftover text.
2865
2866 2018-09-29  Tom Tromey  <tom@tromey.com>
2867
2868         * PROBLEMS: Rewrite.
2869         * README: Update.
2870
2871 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2872
2873         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2874         case with explicit breakpoint kind.
2875         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2876         'additional_info' and related logic.
2877         (riscv_debug_breakpoints): New variable.
2878         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2879         instruction to determine the breakpoint kind.
2880         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2881         flag.  Update description of 'set/show riscv
2882         use-compressed-breakpoints' flag.
2883
2884 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2885
2886         (NEWS): Mention changes to frame related commands.
2887         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2888         (add_prefix_cmd_suppress_notification): New function.
2889         (add_com_suppress_notification): Call
2890         add_cmd_suppress_notification.
2891         * command.h (add_cmd_suppress_notification): Declare.
2892         (add_prefix_cmd_suppress_notification): Declare.
2893         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2894         (parse_frame_specification): Moved from stack.c, with
2895         simplification to handle a single argument.
2896         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2897         switch to the selected frame.  Add a header comment.
2898         * stack.c: Remove 'safe-ctype.h' include.
2899         (find_frame_for_function): Add declaration.
2900         (find_frame_for_address): New function.
2901         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2902         (frame_selection_by_function_completer): New function.
2903         (info_frame_command): Rename to...
2904         (info_frame_command_core): ...this, and update parameter types.
2905         (select_frame_command): Rename to...
2906         (select_frame_command_core): ...this, and update parameter types.
2907         (frame_command): Rename to...
2908         (frame_command_core): ...this, and update parameter types.
2909         (class frame_command_helper): New class to wrap implementations of
2910         frame related sub-commands.
2911         (frame_apply_cmd_list): New static global.
2912         (frame_cmd_list): Make static.
2913         (select_frame_cmd_list): New global for sub-commands.
2914         (info_frame_cmd_list): New global for sub-commands.
2915         (_initialize_stack): Register sub-commands for 'frame',
2916         'select-frame', and 'info frame'.  Update 'frame apply' commands
2917         to use frame_apply_cmd_list.  Move function local static
2918         frame_apply_list to file static frame_apply_cmd_list for
2919         consistency.
2920         * stack.h (select_frame_command): Delete declarationn.
2921         (select_frame_for_mi): Declare new function.
2922
2923 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2924
2925         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2926         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2927         and NOP.
2928
2929 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2930
2931         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2932
2933 2018-09-26  Tom Tromey  <tom@tromey.com>
2934
2935         * valops.c (auto_abandon): Remove dead code.
2936
2937 2018-09-26  Tom Tromey  <tom@tromey.com>
2938
2939         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2940
2941 2018-09-24  Tom Tromey  <tom@tromey.com>
2942
2943         * common/pathstuff.c (get_standard_cache_dir): Make
2944         "xdg_cache_home" and "home" const.
2945         * top.c (init_history): Make "tmpenv" const.
2946         * main.c (get_init_files): Make "homedir" const.
2947
2948 2018-09-23  Tom Tromey  <tom@tromey.com>
2949
2950         PR python/18852:
2951         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2952
2953 2018-09-23  Tom Tromey  <tom@tromey.com>
2954
2955         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2956         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2957         * python/python-internal.h (gdbpy_handle_exception): Declare.
2958         * python/py-utils.c (gdbpy_handle_exception): New function.
2959
2960 2018-09-23  Tom Tromey  <tom@tromey.com>
2961
2962         PR python/17284:
2963         * python/py-type.c (typy_template_argument): Check for negative
2964         argument number.
2965
2966 2018-09-23  Tom Tromey  <tom@tromey.com>
2967
2968         PR python/14062:
2969         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2970
2971 2018-09-23  Tom Tromey  <tom@tromey.com>
2972
2973         PR python/18170:
2974         * python/py-value.c (valpy_int): Allow conversion from pointer
2975         type.
2976
2977 2018-09-23  Tom Tromey  <tom@tromey.com>
2978
2979         PR python/20126:
2980         * python/py-value.c (valpy_int): Respect type sign.
2981
2982 2018-09-23  Tom Tromey  <tom@tromey.com>
2983
2984         PR python/18352;
2985         * python/py-value.c (valpy_float): Allow conversions from int or
2986         char.
2987         (valpy_int, valpy_long): Allow conversions from float.
2988
2989 2018-09-23  Tom Tromey  <tom@tromey.com>
2990
2991         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2992         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2993
2994 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2995
2996         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2997         __sighndlr.
2998         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2999
3000 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
3001
3002         * windows-nat.c (windows_nat_target::wait): Remove a spurious
3003         target_terminal::ours().
3004
3005 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
3006
3007         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
3008         of vl to ULONGEST.
3009
3010 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
3011
3012         * breakpoint.c (update_inserted_breakpoint_locations): Remove
3013         redundant condition.
3014
3015 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3016
3017         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
3018
3019         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
3020         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
3021         * sol-thread.c (ps_pdmodel): Don't guard definition.
3022
3023         * procfs.c: Fix formatting.
3024
3025         * procfs.c (sysset_t_alloc): Remove.
3026         (create_procinfo): Use XNEW instead of sysset_t_alloc.
3027         (procfs_debug_inferior): Likewise.
3028         (procfs_set_exec_trap): Likewise.
3029         (proc_set_traced_sysentry): Don't allocate argp dynamically.
3030         (proc_set_traced_sysexit): Likewise.
3031
3032         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
3033         (dead_procinfo): Likewise.
3034         (proc_warn): Likewise.
3035         (proc_error): Likewise.
3036         (proc_get_LDT_entry): Likewise.
3037         (do_attach): Likewise.
3038         (procfs_target::pid_to_str): Likewise.
3039         (iterate_over_mappings): Likewise.
3040
3041         * procfs.c (create_procinfo): Fix ARI warning.
3042         (proc_get_status): Likewise.
3043         (proc_stop_process): Likewise.
3044         (proc_run_process): Likewise.
3045         (proc_kill): Likewise.
3046         (proc_get_LDT_entry): Likewise.
3047         (procfs_find_LDT_entry): Likewise.
3048         (proc_update_threads): Likewise.
3049         (proc_iterate_over_threads): Likewise.
3050         (do_attach): Likewise.
3051         (procfs_xfer_memory): Likewise.
3052         (invalidate_cache): Likewise.
3053         (procfs_target::resume): Likewise.
3054         (procfs_init_inferior): Likewise.
3055         (procfs_set_exec_trap): Likewise.
3056         (procfs_target::thread_alive): Likewise.
3057         (procfs_target::pid_to_exec_file): Likewise.
3058         (iterate_over_mappings): Likewise.
3059         (procfs_target::make_corefile_notes): Likewise.
3060         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
3061
3062         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
3063         (procfs_find_LDT_entry): Likewise.
3064         * sol-thread.c (ps_lgetLDT): Likewise.
3065
3066 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3067
3068         PR tdep/17903
3069         * procfs.c (procfs_target): Declare pid_to_exec_file.
3070         (procfs_target::pid_to_exec_file): New.
3071
3072 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3073
3074         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
3075         renaming.
3076         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
3077         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
3078
3079 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3080
3081         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
3082         (supply_fpregset, fill_fpregset): Move ...
3083         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
3084         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
3085         Remove references to ioctl-based procfs.
3086         Include <sys/reg.h>.
3087         Remove PR_MODEL_NATIVE guards.
3088         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3089         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3090
3091 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3092
3093         PR gdb/20981:
3094         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3095         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3096         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3097
3098 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3099
3100         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3101         (fbsd_print_sockaddr_in6): Likewise.
3102
3103 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3104             Chris January  <chris.january@arm.com>
3105
3106         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3107         (evaluate_subexp_standard): Return a dummy type when
3108         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3109         OP_F77_UNDETERMINED_ARGLIST case.
3110         * expression.h (enum noside): Update comment.
3111
3112 2018-09-19  George Vasick <george.vasick@oracle.com>
3113
3114         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3115
3116 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3117             April Chin <april.chin@oracle.com>
3118             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3119
3120         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3121         uint_t lwpid_t.
3122         (create_procinfo): Print pids in /proc without leading zeros.
3123
3124 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3125
3126         * nios2-tdep.c (nios2_gcc_target_options): New.
3127         (nios2_gdb_arch_init): Install new hook.
3128
3129 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3130
3131         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3132         New file.
3133         * update-gnulib.sh: Apply patch.
3134         * configure: Re-generate.
3135
3136 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3137
3138         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3139         description.  Make "info proc" command descriptions more
3140         consistent.
3141
3142 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3143
3144         * NEWS: Mention 'info proc files' command.
3145
3146 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3147
3148         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3149         descriptors for IP_FILES and IP_ALL.
3150
3151 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3152
3153         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3154         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3155         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3156         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3157         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3158         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3159         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3160         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3161         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3162         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3163         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3164         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3165         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3166         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3167         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3168         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3169         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3170         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3171         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3172         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3173         (struct fbsd_sockaddr_un): New types.
3174         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3175         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3176         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3177         (fbsd_core_info_proc_files): New functions.
3178         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3179         IP_ALL.
3180         * fbsd-tdep.h (fbsd_info_proc_files_header)
3181         (fbsd_info_proc_files_entry): New.
3182
3183 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3184
3185         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3186         * infcmd.c (info_proc_cmd_files): New function.
3187         (_initialize_infcmd): Register 'info proc files' command.
3188
3189 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3190
3191         * gnulib/aclocal-m4-deps.mk: Re-generate.
3192         * gnulib/aclocal.m4: Re-generate.
3193         * gnulib/config.in: Re-generate.
3194         * gnulib/configure: Re-generate.
3195         * gnulib/import/Makefile.am: Re-generate.
3196         * gnulib/import/Makefile.in: Re-generate.
3197         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3198         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3199         * gnulib/import/arpa_inet.in.h: New file.
3200         * gnulib/import/inet_ntop.c: New file.
3201         * gnulib/import/m4/arpa_inet_h.m4: New file.
3202         * gnulib/import/m4/inet_ntop.m4: New file.
3203         * gnulib/import/m4/netinet_in_h.m4: New file.
3204         * gnulib/import/m4/socklen.m4: New file.
3205         * gnulib/import/m4/sockpfaf.m4: New file.
3206         * gnulib/import/m4/stdalign.m4: New file.
3207         * gnulib/import/m4/sys_uio_h.m4: New file.
3208         * gnulib/import/netinet_in.in.h: New file.
3209         * gnulib/import/stdalign.in.h: New file.
3210         * gnulib/import/sys_socket.c: New file.
3211         * gnulib/import/sys_socket.in.h: New file.
3212         * gnulib/import/sys_uio.in.h: New file.
3213         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3214         module.
3215
3216 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3217
3218         * gnulib/aclocal-m4-deps.mk: New file.
3219         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3220         deterministically.
3221
3222 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3223
3224         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3225         KVE_PATH.
3226
3227 2018-09-18  Tom Tromey  <tom@tromey.com>
3228
3229         * compile/compile-object-load.c (struct
3230         link_hash_table_cleanup_data): Add constructor and destructor.
3231         Use DISABLE_COPY_AND_ASSIGN.
3232         (~link_hash_table_cleanup_data): Rename from
3233         link_hash_table_free.  Now a destructor.
3234         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3235
3236 2018-09-18  Tom Tromey  <tom@tromey.com>
3237
3238         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3239         * compile/compile-object-load.c (struct munmap_list): Move to
3240         header file.
3241         (munmap_list::add): Rename from munmap_list_add; rewrite.
3242         (munmap_list::~munmap_list): Rename from munmap_list_free.
3243         (munmap_listp_free_cleanup): Remove.
3244         (compile_object_load): Update.
3245         * compile/compile-object-load.h (struct munmap_list): Move from
3246         compile-object-load.c.  Rewrite.
3247
3248 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3249
3250         * aarch64-tdep.c (pass_in_v): Use register size.
3251         (aarch64_extract_return_value): Likewise.
3252         (aarch64_store_return_value): Likewise.
3253
3254 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3255
3256         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3257         rlim_t.
3258
3259 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3260
3261         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3262         Fix short help line.
3263
3264 2018-09-17  Tom Tromey  <tom@tromey.com>
3265
3266         PR python/20445:
3267         * configure: Rebuild.
3268         * configure.ac: Conditionally use -DNDEBUG for Python.
3269
3270 2018-09-17  Tom Tromey  <tom@tromey.com>
3271
3272         * configure: Rebuild.
3273         * configure.ac: Use gmp as a library dependency when checking for
3274         mpfr.
3275
3276 2018-09-17  Pedro Alves  <palves@redhat.com>
3277
3278         * python/py-inferior.c (find_inferior_object): Delete.
3279
3280 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3281
3282         * compile/compile-cplus-types.c
3283         (compile_cplus_instance::enter_scope): Don't use new_scope after
3284         std::move.
3285
3286 2018-09-17  Tom Tromey  <tom@tromey.com>
3287
3288         * common/pathstuff.c (get_standard_cache_dir): Use
3289         ~/Library/Caches on macOS.
3290         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3291
3292 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3293
3294         PR python/23669
3295         * breakpoint.c (commands_cmd_element): New.
3296         (_initialize_breakpoint): Assign commands_cmd_element.
3297         * breakpoint.h (commands_cmd_element): New.
3298         * cli/cli-script.c (while_cmd_element, if_command,
3299         define_cmd_element): New.
3300         (command_name_equals): Remove.
3301         (process_next_line): Compare commands by pointer, not by name.
3302         (_initialize_cli_script): Assign the various cmd_list_element
3303         variables.
3304         * compile/compile.c (compile_cmd_element): New.
3305         (_initialize_compile): Assign compile_cmd_element.
3306         * compile/compile.h (compile_cmd_element): New.
3307         * guile/guile.c (guile_cmd_element): New.
3308         (install_gdb_commands): Assign guile_cmd_element.
3309         * guile/guile.h (guile_cmd_element): New.
3310         * python/python.c (python_cmd_element): New.
3311         (_initialize_python): Assign python_cmd_element.
3312         * python/python.h (python_cmd_element): New.
3313         * tracepoint.c (while_stepping_cmd_element): New.
3314         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3315         * tracepoint.h (while_stepping_cmd_element): New.
3316
3317 2018-09-17  Tom Tromey  <tom@tromey.com>
3318
3319         * infrun.c (save_infcall_suspend_state): Return
3320         infcall_suspend_state_up.
3321         (save_infcall_control_state): Return infcall_control_state_up.
3322         * inferior.h (save_infcall_suspend_state)
3323         (save_infcall_control_state): Declare later.  Return unique
3324         pointers.
3325
3326 2018-09-17  Tom Tromey  <tom@tromey.com>
3327
3328         * infrun.c (struct stop_context): Declare constructor,
3329         destructor, "changed" method.
3330         (stop_context::stop_context): Rename from save_stop_context.
3331         (stop_context::~stop_context): Rename from
3332         release_stop_context_cleanup.
3333         (normal_stop): Update.
3334         (stop_context::changed): Rename from stop_context_changed.  Return
3335         bool.
3336
3337 2018-09-17  Tom Tromey  <tom@tromey.com>
3338
3339         * inferior.h (struct infcall_suspend_state_deleter): New.
3340         (infcall_suspend_state_up): New typedef.
3341         (struct infcall_control_state_deleter): New.
3342         (infcall_control_state_up): New typedef.
3343         (make_cleanup_restore_infcall_suspend_state)
3344         (make_cleanup_restore_infcall_control_state): Don't declare.
3345         * infcall.c (call_function_by_hand_dummy): Update.
3346         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3347         (make_cleanup_restore_infcall_suspend_state): Remove.
3348         (do_restore_infcall_control_state_cleanup)
3349         (make_cleanup_restore_infcall_control_state): Remove.
3350
3351 2018-09-17  Tom Tromey  <tom@tromey.com>
3352
3353         * gdbthread.h (struct thread_control_state): Add initializer.
3354         (class thread_info) <control>: Remove initializer.
3355         * inferior.h (struct inferior_control_state): Add initializer.
3356         (class inferior) <control>: Remove initializer.
3357         (exit_inferior_1): Update.
3358         * infrun.c (struct infcall_control_state): Add constructors.
3359         (save_infcall_control_state): Use new.
3360         (restore_infcall_control_state, discard_infcall_control_state):
3361         Use delete.
3362
3363 2018-09-17  Tom Tromey  <tom@tromey.com>
3364
3365         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3366         unique_ptr.
3367         <siginfo_data>: Now a unique_xmalloc_ptr.
3368         (save_infcall_suspend_state, restore_infcall_suspend_state)
3369         (discard_infcall_suspend_state)
3370         (get_infcall_suspend_state_regcache): Update.
3371
3372 2018-09-17  Tom Tromey  <tom@tromey.com>
3373
3374         * gdbthread.h (struct thread_suspend_state): Add initializers.
3375         (class thread_info) <suspend>: Remove initializer.
3376         * infrun.c (struct infcall_suspend_state): Add initializers.
3377         (save_infcall_suspend_state): Use new.
3378         (discard_infcall_suspend_state): Use delete.
3379
3380 2018-09-16  Tom Tromey  <tom@tromey.com>
3381
3382         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3383         Remove.
3384         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3385         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3386         (py_varobj_iter_new): Likewise.
3387         (py_varobj_get_iterator): Use gdbpy_ref.
3388
3389 2018-09-16  Tom Tromey  <tom@tromey.com>
3390
3391         * python/py-threadevent.c (py_get_event_thread): Simplify.
3392         * python/py-inferior.c (infpy_thread_from_thread_handle):
3393         Return immediately after calling thread_to_thread_object.  Use
3394         Py_RETURN_NONE.
3395         (thread_to_thread_object): Set the exception on a NULL return.
3396
3397 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3398
3399         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3400
3401 2018-09-16  Tom Tromey  <tom@tromey.com>
3402
3403         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3404         Remove.
3405
3406 2018-09-16  Tom Tromey  <tom@tromey.com>
3407
3408         * python/python-internal.h (thread_to_thread_object): Change
3409         return type.
3410         * python/py-inferior.c (thread_to_thread_object): Return a new
3411         reference.
3412         (infpy_thread_from_thread_handle): Update.
3413         * python/py-infthread.c (gdbpy_selected_thread): Update.
3414         * python/py-stopevent.c (create_stop_event_object): Update.
3415         * python/py-threadevent.c (py_get_event_thread): Return a new
3416         reference.
3417         (py_get_event_thread): Update.
3418         * python/py-event.h (py_get_event_thread): Change return type.
3419         * python/py-continueevent.c (create_continue_event_object):
3420         Update.
3421
3422 2018-09-16  Tom Tromey  <tom@tromey.com>
3423
3424         * python/py-progspace.c (pspy_get_objfiles): Update.
3425         * python/python-internal.h (objfile_to_objfile_object): Change
3426         return type.
3427         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3428         Update.
3429         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3430         Update.
3431         * python/python.c (gdbpy_get_current_objfile): Update.
3432         (gdbpy_objfiles): Update.
3433         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3434         Update.
3435         (objfile_to_objfile_object): Return a new reference.
3436         * python/py-symtab.c (stpy_get_objfile): Update.
3437         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3438         Update.
3439
3440 2018-09-16  Tom Tromey  <tom@tromey.com>
3441
3442         * python/py-inferior.c (infpy_get_progspace): Update.
3443         * python/python-internal.h (pspace_to_pspace_object): Change
3444         return type.
3445         * python/py-newobjfileevent.c
3446         (create_clear_objfiles_event_object): Update.
3447         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3448         Update.
3449         * python/python.c (gdbpy_get_current_progspace): Update.
3450         (gdbpy_progspaces): Update.
3451         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3452         reference.
3453         * python/py-objfile.c (objfpy_get_progspace): Update.
3454         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3455         Update.
3456
3457 2018-09-16  Tom Tromey  <tom@tromey.com>
3458
3459         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3460         (solib_name, block_for_pc, find_pc_line): New functions.
3461         (execute_unwinders): Update.
3462         * python/py-block.c (gdbpy_block_for_pc): Remove.
3463         * python/py-inferior.c (infpy_get_progspace): New function.
3464         (inferior_object_getset) <progspace>: Add.
3465         * python/py-progspace.c (pspy_objfiles): Rewrite.
3466         (pspy_solib_name, pspy_block_for_pc)
3467         (pspy_find_pc_line, pspy_is_valid): New functions.
3468         (progspace_object_methods): Add entries for solib_name,
3469         block_for_pc, find_pc_line, is_valid.
3470         * python/python-internal.h (gdbpy_block_for_pc)
3471         (build_objfiles_list): Don't declare.
3472         * python/python.c: Don't include solib.h.
3473         (gdbpy_solib_name, gdbpy_find_pc_line)
3474         (gdbpy_get_current_progspace, build_objfiles_list)
3475         (gdbpy_objfiles): Remove.
3476         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3477         solib_name, find_pc_line>: Remove entries.
3478
3479 2018-09-16  Tom Tromey  <tom@tromey.com>
3480
3481         * top.c (new_ui_command): Use GNU style for metasyntactic
3482         variables.
3483         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3484         variables.
3485         * maint.c (maintenance_translate_address): Remove "<>" around
3486         text.
3487         * interps.c (interpreter_exec_cmd): Use GNU style for
3488         metasyntactic variables.
3489         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3490         metasyntactic variables.
3491         * tracepoint.c (tfind_range_command): Use GNU style for
3492         metasyntactic variables.
3493         (tfind_outside_command): Likewise.
3494         (_initialize_tracepoint): Likewise.
3495         * remote.c (extended_remote_target::create_inferior): Use GNU
3496         style for metasyntactic variables.
3497         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3498         metasyntactic variables.
3499         (adi_assign_command): Likewise.
3500
3501 2018-09-16  Tom Tromey  <tom@tromey.com>
3502
3503         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3504         metasyntactic variables.  Print message if no disassembler options
3505         are available.
3506
3507 2018-09-15  Tom Tromey  <tom@tromey.com>
3508
3509         * infcmd.c (get_inferior_args): Return const char *.
3510         * inferior.h (get_inferior_args): Return type now const.
3511         * linux-tdep.c (linux_fill_prpsinfo): Update.
3512         * procfs.c (procfs_target::make_corefile_notes): Update.
3513
3514 2018-09-07  Tom Tromey  <tom@tromey.com>
3515
3516         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3517         inside the TRY.
3518
3519 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3520
3521         * nios2-tdep.c (nios2_type_align): New.
3522         (nios2_gdb_arch_init): Install type_align hook.
3523
3524 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3525
3526         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3527         type that is neither object file owned, nor gdbarch owned.
3528         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3529         gdbarch is non-NULL.
3530         (alloc_type_instance): Allocate non-objfile owned types on the
3531         gdbarch obstack.
3532         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3533         using TYPE_ALLOC to ensure memory is allocated on the correct
3534         obstack.
3535         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3536         obstack, or the gdbarch obstack.
3537         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3538
3539 2018-09-14  Tom Tromey  <tom@tromey.com>
3540
3541         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3542         block.
3543
3544 2018-09-14  Tom Tromey  <tom@tromey.com>
3545
3546         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3547
3548 2018-09-13  Tom Tromey  <tom@tromey.com>
3549
3550         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3551         static.
3552
3553 2018-09-13  Tom Tromey  <tom@tromey.com>
3554
3555         * exec.c (try_open_exec_file): Use std::string.
3556
3557 2018-09-13  Tom Tromey  <tom@tromey.com>
3558
3559         * utils.h (gdb_bfd_errmsg): Return std::string.
3560         * exec.c (exec_file_attach): Update.
3561         * compile/compile-object-load.c (compile_object_load): Update.
3562         * utils.c (gdb_bfd_errmsg): Return std::string.
3563
3564 2018-09-13  Tom Tromey  <tom@tromey.com>
3565
3566         * procfs.c (struct procinfo_deleter): New.
3567         (procinfo_up): New typedef.
3568         (do_destroy_procinfo_cleanup): Remove.
3569         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3570
3571 2018-09-13  Tom Tromey  <tom@tromey.com>
3572
3573         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3574
3575 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3576 2018-09-13  Tom Tromey  <tom@tromey.com>
3577
3578         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3579         (pspy_get_objfiles): New function.
3580         (progspace_object_methods): New.
3581         (pspace_object_type): Add tp_methods callback.
3582         * python/python-internal.h (build_objfiles_list): New
3583         declaration.
3584         * python/python.c (build_objfiles_list): New function.
3585         (gdbpy_objfiles): Implement using build_objfiles_list.
3586         * NEWS: Mention the Progspace.objfiles method.
3587
3588 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3589
3590         * python/py-inferior.c (infpy_get_progspace): New function.
3591         (inferior_object_getset): Add progspace property.
3592         * NEWS: Mention the new property.
3593
3594 2018-09-13  Tom Tromey  <tom@tromey.com>
3595
3596         PR rust/23650:
3597         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3598
3599 2018-09-13  Tom Tromey  <tom@tromey.com>
3600
3601         PR rust/23626:
3602         * rust-lang.c (rust_enum_variant): Now static.
3603         (rust_empty_enum_p): New function.
3604         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3605         Handle empty enum.
3606
3607 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3608
3609         * python/py-inferior.c (infpy_repr): New.
3610         (inferior_object_type): Register infpy_repr.
3611         * python/py-objfile.c (objfpy_repr): New.
3612         (objfile_object_type): Register objfpy_repr.
3613
3614 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3615
3616         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3617
3618 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3619
3620         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3621         typo.
3622
3623 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3624
3625         * common/common-utils.c: Don't include '<sys/stat.h>'.
3626         (is_regular_file): Move to...
3627         * common/filestuff.c (is_regular_file): ... here.
3628         * common/common-utils.h (is_regular_file): Move to...
3629         * common/filestuff.h (is_regular_file): ... here.
3630
3631 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3632
3633         * skip.c (debug_skip): New variable.
3634         (skiplist_entry::do_skip_file_p): Add debug output.
3635         (skiplist_entry::do_skip_gfile_p): Likewise.
3636         (skiplist_entry::skip_function_p): Likewise.
3637         (_initialize_step_skip): Create debug command.
3638         * NEWS: Mention set/show debug skip.
3639
3640 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3641
3642         * darwin-nat.c (should_disable_startup_with_shell):
3643         New function.
3644         (darwin_nat_target::create_inferior): Add call.
3645
3646 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3647
3648         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3649         inf_port, msg_state>: Initialize.
3650         (struct darwin_thread_info) <signaled, single_step>: Change
3651         type and initialize.
3652         (struct darwin_thread_info) <event>: Initialize.
3653
3654 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3655
3656         PR gdb/23555
3657         PR gdb/23558
3658         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3659         guesses.
3660
3661 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3662
3663         Revert:
3664         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3665
3666         PR gdb/23555
3667         PR gdb/23558
3668         * gnulib/aclocal.m4: Regenerate.
3669         * gnulib/config.in: Regenerate.
3670         * gnulib/configure: Regenerate.
3671         * gnulib/import/Makefile.am: Update.
3672         * gnulib/import/Makefile.in: Update.
3673         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3674         * gnulib/import/_Noreturn.h: ... this.
3675         * gnulib/import/alloca.in.h: Update.
3676         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3677         * gnulib/import/arg-nonnull.h: ... this.
3678         * gnulib/import/assure.h: Update.
3679         * gnulib/import/at-func.c: Update.
3680         * gnulib/import/basename-lgpl.c: Update.
3681         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3682         * gnulib/import/c++defs.h: ... this.
3683         * gnulib/import/canonicalize-lgpl.c: Update.
3684         * gnulib/import/cdefs.h: Update.
3685         * gnulib/import/chdir-long.c: Update.
3686         * gnulib/import/chdir-long.h: Update.
3687         * gnulib/import/cloexec.c: Update.
3688         * gnulib/import/cloexec.h: Update.
3689         * gnulib/import/close.c: Update.
3690         * gnulib/import/closedir.c: Update.
3691         * gnulib/import/config.charset: Update.
3692         * gnulib/import/dirent-private.h: Update.
3693         * gnulib/import/dirent.in.h: Update.
3694         * gnulib/import/dirfd.c: Update.
3695         * gnulib/import/dirname-lgpl.c: Update.
3696         * gnulib/import/dirname.h: Update.
3697         * gnulib/import/dosname.h: Update.
3698         * gnulib/import/dup-safer-flag.c: Update.
3699         * gnulib/import/dup-safer.c: Update.
3700         * gnulib/import/dup.c: Update.
3701         * gnulib/import/dup2.c: Update.
3702         * gnulib/import/errno.in.h: Update.
3703         * gnulib/import/error.c: Update.
3704         * gnulib/import/error.h: Update.
3705         * gnulib/import/exitfail.c: Update.
3706         * gnulib/import/exitfail.h: Update.
3707         * gnulib/import/extra/update-copyright: Update.
3708         * gnulib/import/fchdir.c: Update.
3709         * gnulib/import/fcntl.c: Update.
3710         * gnulib/import/fcntl.in.h: Update.
3711         * gnulib/import/fd-hook.c: Update.
3712         * gnulib/import/fd-hook.h: Update.
3713         * gnulib/import/fd-safer-flag.c: Update.
3714         * gnulib/import/fd-safer.c: Update.
3715         * gnulib/import/fdopendir.c: Update.
3716         * gnulib/import/filename.h: Update.
3717         * gnulib/import/filenamecat-lgpl.c: Update.
3718         * gnulib/import/filenamecat.h: Update.
3719         * gnulib/import/flexmember.h: Update.
3720         * gnulib/import/float+.h: Update.
3721         * gnulib/import/float.c: Update.
3722         * gnulib/import/float.in.h: Update.
3723         * gnulib/import/fnmatch.c: Update.
3724         * gnulib/import/fnmatch.in.h: Update.
3725         * gnulib/import/fnmatch_loop.c: Update.
3726         * gnulib/import/fpucw.h: Update.
3727         * gnulib/import/frexp.c: Update.
3728         * gnulib/import/frexpl.c: Update.
3729         * gnulib/import/fstat.c: Update.
3730         * gnulib/import/fstatat.c: Update.
3731         * gnulib/import/getcwd-lgpl.c: Update.
3732         * gnulib/import/getcwd.c: Update.
3733         * gnulib/import/getdtablesize.c: Update.
3734         * gnulib/import/getlogin_r.c: Update.
3735         * gnulib/import/getprogname.c: Update.
3736         * gnulib/import/getprogname.h: Update.
3737         * gnulib/import/gettext.h: Update.
3738         * gnulib/import/gettimeofday.c: Update.
3739         * gnulib/import/glob-libc.h: Update.
3740         * gnulib/import/glob.c: Update.
3741         * gnulib/import/glob.in.h: Update.
3742         * gnulib/import/glob_internal.h: Update.
3743         * gnulib/import/glob_pattern_p.c: Update.
3744         * gnulib/import/globfree.c: Update.
3745         * gnulib/import/hard-locale.c: Update.
3746         * gnulib/import/hard-locale.h: Update.
3747         * gnulib/import/intprops.h: Update.
3748         * gnulib/import/inttypes.in.h: Update.
3749         * gnulib/import/isnan.c: Update.
3750         * gnulib/import/isnand-nolibm.h: Update.
3751         * gnulib/import/isnand.c: Update.
3752         * gnulib/import/isnanl-nolibm.h: Update.
3753         * gnulib/import/isnanl.c: Update.
3754         * gnulib/import/itold.c: Update.
3755         * gnulib/import/libc-config.h: Update.
3756         * gnulib/import/limits.in.h: Update.
3757         * gnulib/import/localcharset.c: Update.
3758         * gnulib/import/localcharset.h: Update.
3759         * gnulib/import/localtime-buffer.c: Update.
3760         * gnulib/import/localtime-buffer.h: Update.
3761         * gnulib/import/lstat.c: Update.
3762         * gnulib/import/m4/00gnulib.m4: Update.
3763         * gnulib/import/m4/__inline.m4: Update.
3764         * gnulib/import/m4/absolute-header.m4: Update.
3765         * gnulib/import/m4/alloca.m4: Update.
3766         * gnulib/import/m4/builtin-expect.m4: Update.
3767         * gnulib/import/m4/canonicalize.m4: Update.
3768         * gnulib/import/m4/chdir-long.m4: Update.
3769         * gnulib/import/m4/close.m4: Update.
3770         * gnulib/import/m4/closedir.m4: Update.
3771         * gnulib/import/m4/configmake.m4: Update.
3772         * gnulib/import/m4/d-ino.m4: Update.
3773         * gnulib/import/m4/d-type.m4: Update.
3774         * gnulib/import/m4/dirent_h.m4: Update.
3775         * gnulib/import/m4/dirfd.m4: Update.
3776         * gnulib/import/m4/dirname.m4: Update.
3777         * gnulib/import/m4/double-slash-root.m4: Update.
3778         * gnulib/import/m4/dup.m4: Update.
3779         * gnulib/import/m4/dup2.m4: Update.
3780         * gnulib/import/m4/eealloc.m4: Update.
3781         * gnulib/import/m4/environ.m4: Update.
3782         * gnulib/import/m4/errno_h.m4: Update.
3783         * gnulib/import/m4/error.m4: Update.
3784         * gnulib/import/m4/exponentd.m4: Update.
3785         * gnulib/import/m4/exponentl.m4: Update.
3786         * gnulib/import/m4/extensions.m4: Update.
3787         * gnulib/import/m4/extern-inline.m4: Update.
3788         * gnulib/import/m4/fchdir.m4: Update.
3789         * gnulib/import/m4/fcntl-o.m4: Update.
3790         * gnulib/import/m4/fcntl.m4: Update.
3791         * gnulib/import/m4/fcntl_h.m4: Update.
3792         * gnulib/import/m4/fdopendir.m4: Update.
3793         * gnulib/import/m4/filenamecat.m4: Update.
3794         * gnulib/import/m4/flexmember.m4: Update.
3795         * gnulib/import/m4/float_h.m4: Update.
3796         * gnulib/import/m4/fnmatch.m4: Update.
3797         * gnulib/import/m4/fnmatch_h.m4: Update.
3798         * gnulib/import/m4/fpieee.m4: Update.
3799         * gnulib/import/m4/frexp.m4: Update.
3800         * gnulib/import/m4/frexpl.m4: Update.
3801         * gnulib/import/m4/fstat.m4: Update.
3802         * gnulib/import/m4/fstatat.m4: Update.
3803         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3804         * gnulib/import/m4/getcwd-path-max.m4: Update.
3805         * gnulib/import/m4/getcwd.m4: Update.
3806         * gnulib/import/m4/getdtablesize.m4: Update.
3807         * gnulib/import/m4/getlogin.m4: Update.
3808         * gnulib/import/m4/getlogin_r.m4: Update.
3809         * gnulib/import/m4/getpagesize.m4: Update.
3810         * gnulib/import/m4/getprogname.m4: Update.
3811         * gnulib/import/m4/gettimeofday.m4: Update.
3812         * gnulib/import/m4/glibc21.m4: Update.
3813         * gnulib/import/m4/glob.m4: Update.
3814         * gnulib/import/m4/glob_h.m4: Update.
3815         * gnulib/import/m4/gnulib-cache.m4: Update.
3816         * gnulib/import/m4/gnulib-common.m4: Update.
3817         * gnulib/import/m4/gnulib-comp.m4: Update.
3818         * gnulib/import/m4/gnulib-tool.m4: Update.
3819         * gnulib/import/m4/hard-locale.m4: Update.
3820         * gnulib/import/m4/include_next.m4: Update.
3821         * gnulib/import/m4/inttypes-pri.m4: Update.
3822         * gnulib/import/m4/inttypes.m4: Update.
3823         * gnulib/import/m4/isnand.m4: Update.
3824         * gnulib/import/m4/isnanl.m4: Update.
3825         * gnulib/import/m4/largefile.m4: Update.
3826         * gnulib/import/m4/limits-h.m4: Update.
3827         * gnulib/import/m4/localcharset.m4: Update.
3828         * gnulib/import/m4/locale-fr.m4: Update.
3829         * gnulib/import/m4/locale-ja.m4: Update.
3830         * gnulib/import/m4/locale-zh.m4: Update.
3831         * gnulib/import/m4/localtime-buffer.m4: Update.
3832         * gnulib/import/m4/longlong.m4: Update.
3833         * gnulib/import/m4/lstat.m4: Update.
3834         * gnulib/import/m4/malloc.m4: Update.
3835         * gnulib/import/m4/malloca.m4: Update.
3836         * gnulib/import/m4/math_h.m4: Update.
3837         * gnulib/import/m4/mbrtowc.m4: Update.
3838         * gnulib/import/m4/mbsinit.m4: Update.
3839         * gnulib/import/m4/mbsrtowcs.m4: Update.
3840         * gnulib/import/m4/mbstate_t.m4: Update.
3841         * gnulib/import/m4/memchr.m4: Update.
3842         * gnulib/import/m4/memmem.m4: Update.
3843         * gnulib/import/m4/mempcpy.m4: Update.
3844         * gnulib/import/m4/memrchr.m4: Update.
3845         * gnulib/import/m4/mkdir.m4: Update.
3846         * gnulib/import/m4/mkstemp.m4: Update.
3847         * gnulib/import/m4/mmap-anon.m4: Update.
3848         * gnulib/import/m4/mode_t.m4: Update.
3849         * gnulib/import/m4/msvc-inval.m4: Update.
3850         * gnulib/import/m4/msvc-nothrow.m4: Update.
3851         * gnulib/import/m4/multiarch.m4: Update.
3852         * gnulib/import/m4/nocrash.m4: Update.
3853         * gnulib/import/m4/off_t.m4: Update.
3854         * gnulib/import/m4/onceonly.m4: Update.
3855         * gnulib/import/m4/open-cloexec.m4: Update.
3856         * gnulib/import/m4/open.m4: Update.
3857         * gnulib/import/m4/openat.m4: Update.
3858         * gnulib/import/m4/opendir.m4: Update.
3859         * gnulib/import/m4/pathmax.m4: Update.
3860         * gnulib/import/m4/rawmemchr.m4: Update.
3861         * gnulib/import/m4/readdir.m4: Update.
3862         * gnulib/import/m4/readlink.m4: Update.
3863         * gnulib/import/m4/realloc.m4: Update.
3864         * gnulib/import/m4/rename.m4: Update.
3865         * gnulib/import/m4/rewinddir.m4: Update.
3866         * gnulib/import/m4/rmdir.m4: Update.
3867         * gnulib/import/m4/save-cwd.m4: Update.
3868         * gnulib/import/m4/secure_getenv.m4: Update.
3869         * gnulib/import/m4/setenv.m4: Update.
3870         * gnulib/import/m4/signal_h.m4: Update.
3871         * gnulib/import/m4/ssize_t.m4: Update.
3872         * gnulib/import/m4/stat-time.m4: Update.
3873         * gnulib/import/m4/stat.m4: Update.
3874         * gnulib/import/m4/std-gnu11.m4: Update.
3875         * gnulib/import/m4/stdbool.m4: Update.
3876         * gnulib/import/m4/stddef_h.m4: Update.
3877         * gnulib/import/m4/stdint.m4: Update.
3878         * gnulib/import/m4/stdio_h.m4: Update.
3879         * gnulib/import/m4/stdlib_h.m4: Update.
3880         * gnulib/import/m4/strchrnul.m4: Update.
3881         * gnulib/import/m4/strdup.m4: Update.
3882         * gnulib/import/m4/strerror.m4: Update.
3883         * gnulib/import/m4/string_h.m4: Update.
3884         * gnulib/import/m4/strstr.m4: Update.
3885         * gnulib/import/m4/strtok_r.m4: Update.
3886         * gnulib/import/m4/sys_socket_h.m4: Update.
3887         * gnulib/import/m4/sys_stat_h.m4: Update.
3888         * gnulib/import/m4/sys_time_h.m4: Update.
3889         * gnulib/import/m4/sys_types_h.m4: Update.
3890         * gnulib/import/m4/tempname.m4: Update.
3891         * gnulib/import/m4/time_h.m4: Update.
3892         * gnulib/import/m4/unistd-safer.m4: Update.
3893         * gnulib/import/m4/unistd_h.m4: Update.
3894         * gnulib/import/m4/warn-on-use.m4: Update.
3895         * gnulib/import/m4/wchar_h.m4: Update.
3896         * gnulib/import/m4/wchar_t.m4: Update.
3897         * gnulib/import/m4/wctype_h.m4: Update.
3898         * gnulib/import/m4/wint_t.m4: Update.
3899         * gnulib/import/malloc.c: Update.
3900         * gnulib/import/malloc/scratch_buffer.h: Update.
3901         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3902         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3903         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3904         * gnulib/import/malloca.c: Update.
3905         * gnulib/import/malloca.h: Update.
3906         * gnulib/import/malloca.valgrind: Update.
3907         * gnulib/import/math.in.h: Update.
3908         * gnulib/import/mbrtowc.c: Update.
3909         * gnulib/import/mbsinit.c: Update.
3910         * gnulib/import/mbsrtowcs-impl.h: Update.
3911         * gnulib/import/mbsrtowcs-state.c: Update.
3912         * gnulib/import/mbsrtowcs.c: Update.
3913         * gnulib/import/memchr.c: Update.
3914         * gnulib/import/memmem.c: Update.
3915         * gnulib/import/mempcpy.c: Update.
3916         * gnulib/import/memrchr.c: Update.
3917         * gnulib/import/mkdir.c: Update.
3918         * gnulib/import/mkstemp.c: Update.
3919         * gnulib/import/msvc-inval.c: Update.
3920         * gnulib/import/msvc-inval.h: Update.
3921         * gnulib/import/msvc-nothrow.c: Update.
3922         * gnulib/import/msvc-nothrow.h: Update.
3923         * gnulib/import/open.c: Update.
3924         * gnulib/import/openat-die.c: Update.
3925         * gnulib/import/openat-priv.h: Update.
3926         * gnulib/import/openat-proc.c: Update.
3927         * gnulib/import/openat.c: Update.
3928         * gnulib/import/openat.h: Update.
3929         * gnulib/import/opendir.c: Update.
3930         * gnulib/import/pathmax.h: Update.
3931         * gnulib/import/pipe-safer.c: Update.
3932         * gnulib/import/rawmemchr.c: Update.
3933         * gnulib/import/readdir.c: Update.
3934         * gnulib/import/readlink.c: Update.
3935         * gnulib/import/realloc.c: Update.
3936         * gnulib/import/ref-add.sin: Update.
3937         * gnulib/import/ref-del.sin: Update.
3938         * gnulib/import/rename.c: Update.
3939         * gnulib/import/rewinddir.c: Update.
3940         * gnulib/import/rmdir.c: Update.
3941         * gnulib/import/same-inode.h: Update.
3942         * gnulib/import/save-cwd.c: Update.
3943         * gnulib/import/save-cwd.h: Update.
3944         * gnulib/import/scratch_buffer.h: Update.
3945         * gnulib/import/secure_getenv.c: Update.
3946         * gnulib/import/setenv.c: Update.
3947         * gnulib/import/signal.in.h: Update.
3948         * gnulib/import/stat-time.c: Update.
3949         * gnulib/import/stat-time.h: Update.
3950         * gnulib/import/stat-w32.c: Update.
3951         * gnulib/import/stat-w32.h: Update.
3952         * gnulib/import/stat.c: Update.
3953         * gnulib/import/stdbool.in.h: Update.
3954         * gnulib/import/stddef.in.h: Update.
3955         * gnulib/import/stdint.in.h: Update.
3956         * gnulib/import/stdio.in.h: Update.
3957         * gnulib/import/stdlib.in.h: Update.
3958         * gnulib/import/str-two-way.h: Update.
3959         * gnulib/import/strchrnul.c: Update.
3960         * gnulib/import/strdup.c: Update.
3961         * gnulib/import/streq.h: Update.
3962         * gnulib/import/strerror-override.c: Update.
3963         * gnulib/import/strerror-override.h: Update.
3964         * gnulib/import/strerror.c: Update.
3965         * gnulib/import/string.in.h: Update.
3966         * gnulib/import/stripslash.c: Update.
3967         * gnulib/import/strnlen1.c: Update.
3968         * gnulib/import/strnlen1.h: Update.
3969         * gnulib/import/strstr.c: Update.
3970         * gnulib/import/strtok_r.c: Update.
3971         * gnulib/import/sys_stat.in.h: Update.
3972         * gnulib/import/sys_time.in.h: Update.
3973         * gnulib/import/sys_types.in.h: Update.
3974         * gnulib/import/tempname.c: Update.
3975         * gnulib/import/tempname.h: Update.
3976         * gnulib/import/time.in.h: Update.
3977         * gnulib/import/unistd--.h: Update.
3978         * gnulib/import/unistd-safer.h: Update.
3979         * gnulib/import/unistd.in.h: Update.
3980         * gnulib/import/unsetenv.c: Update.
3981         * gnulib/import/verify.h: Update.
3982         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3983         * gnulib/import/wchar.in.h: Update.
3984         * gnulib/import/wctype.in.h: Update.
3985         * gnulib/import/xalloc-oversized.h: Update.
3986         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3987         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3988
3989 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3990
3991         * record-btrace.c (get_thread_current_frame): Remove
3992         old_inferior_ptid.
3993
3994 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3995
3996         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3997         with check_tag to 1 if and only if the type is tagged and the
3998         component being searched cannot been found in the current
3999         view. Otherwise, always call ada_to_fixed_type with
4000         check_tag to 0.
4001
4002 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4003
4004         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
4005         declaration.
4006         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
4007         * ada-varobj.c (ada_varobj_get_number_of_children,
4008         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
4009
4010 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4011
4012         * ada-valprint.c (ada_value_print): Use type instead of
4013         enclosing type.
4014
4015 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4016
4017         * ada-lang.c (ada_value_subscript): Handle case when parameter is
4018         an array of access to unconstrained array.
4019
4020 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4021
4022         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
4023         (ada_check_typedef): Use it.
4024
4025 2018-09-10  Xavier Roirand  <roirand@adacore.com>
4026
4027         * ada-varobj.c (ada_varobj_describe_struct_child)
4028         (ada_varobj_describe_child): Handle union case like struct one.
4029
4030 2018-09-10  Tom Tromey  <tom@tromey.com>
4031
4032         PR python/18380:
4033         * python/python.c (_initialize_python): Make example in "python"
4034         help work in Python 3.
4035
4036 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
4037
4038         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
4039         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
4040         $(EXEEXT) to the script, as it is not a program.
4041
4042 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
4043
4044         * python/py-prettyprint.c (pretty_print_one_value): Return
4045         gdbpy_ref<>.
4046         (print_string_repr): Adjust.
4047         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
4048         * python/python-internal.h (apply_varobj_pretty_printer): Return
4049         gdbpy_ref<>.
4050         * varobj.c (varobj_value_get_print_value): Adjust.
4051
4052 2018-09-08  Tom Tromey  <tom@tromey.com>
4053
4054         PR python/16047:
4055         * python/py-prettyprint.c (pretty_print_one_value): Check for
4056         to_string method.
4057
4058 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4059
4060         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
4061         replace_operator_with_call.
4062
4063 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4064
4065         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
4066
4067 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4068
4069         * ada-typeprint.c (print_range): Print the bounds using TYPE
4070         rather than its TYPE_TARGET_TYPE.
4071
4072 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4073
4074         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
4075         call to ada_to_fixed_value_create.
4076
4077 2018-09-08  Jerome Guitton  <guitton@adacore.com>
4078
4079         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
4080
4081 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4082
4083         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
4084         by calls to error.
4085
4086 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4087
4088         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4089         Move update of loop variable "fi".
4090
4091 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4092
4093         * ada-lang.c (value_assign_to_component): In the case of
4094         big-endian targets, extract the bits of the given VAL
4095         using an src_offset of zero if container is not a scalar.
4096
4097 2018-09-06  Simon Ser  <contact@emersion.fr>
4098
4099         PR gdb/23105
4100         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4101         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4102         * fbsd-tdep.c (fbsd_make_note_desc): New.
4103         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4104         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4105         * target.h (enum target_object) Add FreeBSD-specific
4106         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4107
4108 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4109
4110         * compile/compile-c.h (generate_c_for_variable_locations):
4111         Change reference to pointer.
4112         * compile/compile-c-support.c (compile_program) <compute>:
4113         Likewise.
4114         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4115         (generate_c_for_for_one_variable): Likewise
4116         (generate_c_for_variable_locations): Likewise
4117         * compile/compile-c-types.c (compile_c_instance::convert_type):
4118         Likewise
4119         * compile/compile-cplus-symbols.c (convert_one_symbol):
4120         std::move the scope passed to enter_scope.
4121         * compile/compile-cplus-types.c
4122         (compile_cplus_instance::enter_scope): Make parameter
4123         rvalue-reference.
4124         (compile_cplus_instance::new_scope): Change reference to
4125         pointer.
4126         (compile_cplus_instance::convert_type): Likewise
4127         (compile_cplus_convert_typedef): std::move the scope passed to
4128         enter_scope.
4129         (compile_cplus_convert_struct_or_union): Likewise.
4130         (compile_cplus_convert_enum): Likewise.
4131         (compile_cplus_convert_namespace): Likewise.
4132         * compile/compile-cplus.h (compile_cplus_instance)
4133         <enter_scope>: Make parameter rvalue-reference.
4134         * compile/compile-internal.h (compile_instance)
4135         <get_cached_type>: Likewise
4136         * compile/compile-loc2c.c (push): Likewise
4137         (pushf): Likewise
4138         (unary): Likewise
4139         (binary): Likewise
4140         (print_label): Likewise
4141         (pushf_register_address): Likewise
4142         (pushf_register): Likewise
4143         (do_compile_dwarf_expr_to_c): Likewise
4144         (compile_dwarf_expr_to_c): Likewise
4145         (compile_dwarf_bounds_to_c): Likewise
4146         * compile/compile.c (compile_instance::get_cached_type):
4147         Likewise
4148         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4149         (compile_dwarf_bounds_to_c): Likewise
4150         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4151         (dwarf2_compile_property_to_c): Likewise
4152         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4153         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4154         Likewise
4155
4156 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4157
4158         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4159         * tui/tui-data.c (init_content_element): Don't initialize it.
4160
4161 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4162
4163         * tui/tui-data.h (struct tui_win_info)
4164         <detail::opaque>: Remove.
4165         * tui/tui-data.c (init_win_info): Remove assignment.
4166
4167 2018-09-05  Tom Tromey  <tom@tromey.com>
4168
4169         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4170         -Wformat-nonliteral.
4171         * target-float.c (host_float_ops<T>::to_string)
4172         (host_float_ops<T>::from_string): Use
4173         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4174         * configure: Rebuild.
4175
4176 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4177
4178         * printcmd.c (printf_c_string): Use
4179         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4180         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4181
4182 2018-09-05  Tom Tromey  <tom@tromey.com>
4183
4184         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4185
4186 2018-09-05  Tom de Vries  <tdevries@suse.de>
4187
4188         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4189         with resolve_abstract_p == true.
4190         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4191         defaulting to false. Propagate resolve_abstract_p to
4192         dwarf2_fetch_die_loc_sect_off.
4193         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4194         parameter, defaulting to false.
4195         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4196         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4197         parameter.
4198         * dwarf2read.h (struct die_info): Forward-declare.
4199         (die_info_ptr): New typedef.
4200         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4201
4202 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4203
4204         GDB 8.2 released.
4205
4206 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4207             Pedro Alves  <palves@redhat.com>
4208
4209         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4210         "aclocal-m4-deps.mk".  Include file here.
4211         $(srcdir)/aclocal.m4: Add "configure.ac".
4212         * gnulib/aclocal-m4-deps.mk: New file.
4213         * gnulib/update-gnulib.sh: Automatically update
4214         "aclocal-m4-deps.mk".
4215
4216 2018-09-04  Tom Tromey  <tom@tromey.com>
4217
4218         * configure: Rebuild.
4219         * configure.ac: Remove multi-ice code.
4220
4221 2018-09-04  Tom Tromey  <tom@tromey.com>
4222
4223         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4224         (ada-exp.o): Update.
4225
4226 2018-09-04  Tom Tromey  <tom@tromey.com>
4227
4228         * Makefile.in (printcmd.o, target-float.o): Remove.
4229         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4230
4231 2018-09-04  Tom Tromey  <tom@tromey.com>
4232
4233         * gnulib/Makefile.in: Remove obsolete comment.
4234         * Makefile.in: Remove obsolete comment.
4235
4236 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4237
4238         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4239         line with '+'.
4240
4241 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4242
4243         * riscv-tdep.c: Add 'prologue-value.h' include.
4244         (struct riscv_unwind_cache): New struct.
4245         (riscv_debug_unwinder): New global.
4246         (riscv_scan_prologue): Update arguments, capture register details
4247         from prologue scan.
4248         (riscv_skip_prologue): Reformat arguments line, move end of
4249         prologue calculation into riscv_scan_prologue.
4250         (riscv_frame_cache): Update return type, create
4251         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4252         details.
4253         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4254         (riscv_frame_prev_register): Use the trad_frame within the
4255         riscv_unwind_cache.
4256         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4257         flag.
4258
4259 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4260
4261         * trad-frame.h (trad_frame_set_realreg): Declare.
4262         (trad_frame_set_addr): Declare.
4263         * trad-frame.c (trad_frame_set_realreg): Define new function.
4264         (trad_frame_set_addr): Define new function.
4265         (trad_frame_set_reg_realreg): Use new function.
4266         (trad_frame_set_reg_addr): Use new function.
4267
4268 2018-09-01  Keith Seitz  <keiths@redhat.com>
4269
4270         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4271         pulongest instead of "%lld".
4272         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4273         ATTRIBUTE_UNUSED.
4274
4275 2018-08-31  Tom Tromey  <tom@tromey.com>
4276
4277         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4278         variant part type.
4279
4280 2018-08-31  Pedro Alves  <palves@redhat.com>
4281
4282         * gdbarch.h: Regenerate.
4283
4284 2018-08-31  Pedro Alves  <palves@redhat.com>
4285
4286         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4287         * target.h (Hardware watchpoint interfaces): Describe
4288         continuable/steppable/non-steppable watchpoints.
4289         * gdbarch.h, gdbarch.c: Regenerate.
4290
4291 2018-08-31  Pedro Alves  <palves@redhat.com>
4292
4293         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4294         Delete.
4295         * s390-linux-nat.c
4296         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4297         * target.h (target_ops::have_continuable_watchpoint): Delete.
4298         (target_have_continuable_watchpoint): Delete.
4299         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4300         * target-delegates.c: Regenerate.
4301
4302 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4303
4304         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4305         the files present in "gnulib/import/m4/".
4306
4307 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4308
4309         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4310         c.sw, c.swsp, and c.sdsp.
4311
4312 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4313
4314         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4315         (riscv_read_misa_reg): Don't cache value read into inferior data.
4316         (riscv_new_inferior_data): Delete.
4317         (riscv_inferior_data_cleanup): Delete.
4318         (riscv_inferior_data): Delete.
4319         (riscv_invalidate_inferior_data): Delete.
4320         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4321
4322 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4323
4324         * compile/compile-cplus-types.c
4325         (compile_cplus_instance::leave_scope): Take the address of scope
4326         object.
4327         (compile_cplus_instance::convert_qualified_base): Compare quals
4328         to 0.
4329
4330 2018-08-30  Keith Seitz  <keiths@redhat.com>
4331
4332         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4333         Use "%s" and host_address_to_string instead of "%p" in printf.
4334
4335 2018-08-29  Keith Seitz  <keiths@redhat.com>
4336
4337         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4338         and compile-cplus-types.c.
4339         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4340         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4341         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4342         Declare.
4343         * compile/compile-c-support.c: Include compile-cplus.h.
4344         (load_libcompile): Templatize.
4345         (get_compile_context): "New" function.
4346         (c_get_compile_context): Use get_compile_context.
4347         (cplus_get_compile_context): New function.
4348         (cplus_push_user_expression, cplus_pop_user_expression)
4349         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4350         (cplus_compute_program): Define new structs/functions.
4351         * compile/compile-cplus-symmbols.c: New file.
4352         * compile/compile-cplus-types.c: New file.
4353         * compile/compile-cplus.h: New file.
4354         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4355         Declare.
4356         * compile/compile-object-load.c (get_out_value_type): Use
4357         strncmp_iw when comparing symbol names.
4358         (compile_object_load): Add mst_bss and mst_data.
4359         * compile/compile.c (_initialize_compile): Remove
4360         -Wno-implicit-function-declaration from `compile_args'.
4361         * compile/gcc-cp-plugin.h: New file.
4362         * NEWS: Mention C++ compile support and new debug options.
4363
4364 2018-08-29  Keith Seitz  <keiths@redhat.com>
4365
4366         * linespec.c (collect_info::add_symbol): Make virtual.
4367         (struct symbol_searcher_collect_info): New struct.
4368         (symbol_searcher::find_all_symbols): New method.
4369         * symtab.h (class symbol_searcher): New class.
4370
4371 2018-08-29  Keith Seitz  <keiths@redhat.com>
4372
4373         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4374         Change to vector of block_symbol.  Update all users.
4375         (struct collect_info) <symbols>: Likewise.
4376         (collect_info::add_symbol): Take block_symbol as argument.
4377         Update all callers.
4378         (decode_compound_collector) <m_symbols>: Change type to vector
4379         of block_symbol.  Update all users.
4380         (decode_compound_collector::operator ()): Change parameter type
4381         to block_symbol.
4382         (find_method, find_function_symbols, find_linespec_symbols)
4383         (find_label_symbols_in_block, find_label_symbols): Change symbol
4384         vectors to block_symbol vectors.
4385         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4386         block_symbol.
4387
4388 2018-08-29  Keith Seitz  <keiths@redhat.com>
4389
4390         * linespec.c (symbolp): Remove typedef and VEC definitions.
4391         (bound_minimal_symbol_d): Likewise.
4392
4393 2018-08-29  Keith Seitz  <keiths@redhat.com>
4394
4395         * linespec.c (decode_compound_collector::decode_compound_collector):
4396         Remove initialization for `m_symtabs'.
4397         (decode_compound_collector::release_symbols): Change return type
4398         to std::vector.  Update all callers.
4399         (class decode_compound_collector) <m_symbols>: Change type to
4400         std::vector.
4401         (lookup_prefix_sym): Change return type to std::vector.  Update all
4402         callers.
4403         (compare_symbols): Remove.
4404         (std_compare_symbols): Rename to `compare_symbols'.
4405         (find_method): Change `sym_classes' parameter to std::vector.
4406         Update all callers.  Use std::sort to sort sym_classes.
4407         (find_linespec_symbols): Remove cleanup.
4408
4409 2018-08-29  Keith Seitz  <keiths@redhat.com>
4410
4411         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4412         std::vector.  Update all users.
4413         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4414         (struct collect_info) <minimal_symbols>: Likewise.
4415         (compare_msymbols): Return bool.  Change parameters to const
4416         bound_minimal_symbol references.
4417         (find_method, find_function_symbols, find_linespec_symbols): Change
4418         `minsyms' parameter to std::vector.  Update all callers.
4419
4420 2018-08-29  Keith Seitz  <keiths@redhat.com>
4421
4422         * linespec.c (struct linespec) <label_symbols>: Change type to
4423         std::vector.  Update all users.
4424         (find_label_symbols_in_block): Change `result' parameter to
4425         std::vector.  Update all callers.
4426         (find_label_symbols): Return std::vector.  Update all callers.
4427
4428 2018-08-29  Keith Seitz  <keiths@redhat.com>
4429
4430         * linespec.c (struct linespec) <function_symbols>: Change type to
4431         std::vector.  Update all users.
4432         (struct collect_info) <function_symbols>: Likewise.
4433         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4434         (std_compare_symbols): New function.
4435         (find_method, find_function_symbols, find_linespec_symbols)
4436         (find_label_symbols_in_block): Change `symbols' parameter to
4437         std::vector.  Update all callers.
4438         (find_label_symbols): Likewise for `function_symbols' and
4439         `label_funcs_ret'.
4440
4441 2018-08-29  Keith Seitz  <keiths@redhat.com>
4442
4443         * linespec.c (symtab_vector_up): Define.
4444         (struct linespec) <file_symtabs>: Change type to std::vector *.
4445         Update all uses.
4446         (struct collect_info) <file_symtabs>: Likewise.
4447         (collect_symtabs_from_filename): Return symtab_vector_up.
4448         Update all callers.
4449         (decode_objc): Remove cleanup.
4450         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4451         (symtab_collector::release_symtabs): Return symtab_vector_up.
4452         Update all callers.
4453         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4454         Update all users.
4455         (collect_symtabs_from_filename, symtabs_from_filename): Return
4456         symtab_vector_up.  Update all callers.
4457
4458 2018-08-29  Tom Tromey  <tom@tromey.com>
4459
4460         * csky-tdep.c (csky_analyze_prologue): Use
4461         core_addr_to_string_nz.
4462
4463 2018-08-29  Tom Tromey  <tom@tromey.com>
4464
4465         * windows-nat.c (struct xlate_exception) <them>: Change type to
4466         DWORD.
4467         (xlate): Fix formatting.  Remove last entry.
4468         (struct xlate_exception, xlate): Comment out.
4469         (windows_nat_target::resume): Use ranged for.
4470
4471 2018-08-29  Jim Wilson  <jimw@sifive.com>
4472
4473         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4474         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4475         of NT_PRFPREG.
4476         (riscv_linux_nat_target::store_registers): Likewise.
4477
4478 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4479
4480         PR gdb/23555
4481         PR gdb/23558
4482         * gnulib/aclocal.m4: Regenerate.
4483         * gnulib/config.in: Regenerate.
4484         * gnulib/configure: Regenerate.
4485         * gnulib/import/Makefile.am: Update.
4486         * gnulib/import/Makefile.in: Update.
4487         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4488         * gnulib/import/_Noreturn.h: ... this.
4489         * gnulib/import/alloca.in.h: Update.
4490         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4491         * gnulib/import/arg-nonnull.h: ... this.
4492         * gnulib/import/assure.h: Update.
4493         * gnulib/import/at-func.c: Update.
4494         * gnulib/import/basename-lgpl.c: Update.
4495         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4496         * gnulib/import/c++defs.h: ... this.
4497         * gnulib/import/canonicalize-lgpl.c: Update.
4498         * gnulib/import/cdefs.h: Update.
4499         * gnulib/import/chdir-long.c: Update.
4500         * gnulib/import/chdir-long.h: Update.
4501         * gnulib/import/cloexec.c: Update.
4502         * gnulib/import/cloexec.h: Update.
4503         * gnulib/import/close.c: Update.
4504         * gnulib/import/closedir.c: Update.
4505         * gnulib/import/config.charset: Update.
4506         * gnulib/import/dirent-private.h: Update.
4507         * gnulib/import/dirent.in.h: Update.
4508         * gnulib/import/dirfd.c: Update.
4509         * gnulib/import/dirname-lgpl.c: Update.
4510         * gnulib/import/dirname.h: Update.
4511         * gnulib/import/dosname.h: Update.
4512         * gnulib/import/dup-safer-flag.c: Update.
4513         * gnulib/import/dup-safer.c: Update.
4514         * gnulib/import/dup.c: Update.
4515         * gnulib/import/dup2.c: Update.
4516         * gnulib/import/errno.in.h: Update.
4517         * gnulib/import/error.c: Update.
4518         * gnulib/import/error.h: Update.
4519         * gnulib/import/exitfail.c: Update.
4520         * gnulib/import/exitfail.h: Update.
4521         * gnulib/import/extra/update-copyright: Update.
4522         * gnulib/import/fchdir.c: Update.
4523         * gnulib/import/fcntl.c: Update.
4524         * gnulib/import/fcntl.in.h: Update.
4525         * gnulib/import/fd-hook.c: Update.
4526         * gnulib/import/fd-hook.h: Update.
4527         * gnulib/import/fd-safer-flag.c: Update.
4528         * gnulib/import/fd-safer.c: Update.
4529         * gnulib/import/fdopendir.c: Update.
4530         * gnulib/import/filename.h: Update.
4531         * gnulib/import/filenamecat-lgpl.c: Update.
4532         * gnulib/import/filenamecat.h: Update.
4533         * gnulib/import/flexmember.h: Update.
4534         * gnulib/import/float+.h: Update.
4535         * gnulib/import/float.c: Update.
4536         * gnulib/import/float.in.h: Update.
4537         * gnulib/import/fnmatch.c: Update.
4538         * gnulib/import/fnmatch.in.h: Update.
4539         * gnulib/import/fnmatch_loop.c: Update.
4540         * gnulib/import/fpucw.h: Update.
4541         * gnulib/import/frexp.c: Update.
4542         * gnulib/import/frexpl.c: Update.
4543         * gnulib/import/fstat.c: Update.
4544         * gnulib/import/fstatat.c: Update.
4545         * gnulib/import/getcwd-lgpl.c: Update.
4546         * gnulib/import/getcwd.c: Update.
4547         * gnulib/import/getdtablesize.c: Update.
4548         * gnulib/import/getlogin_r.c: Update.
4549         * gnulib/import/getprogname.c: Update.
4550         * gnulib/import/getprogname.h: Update.
4551         * gnulib/import/gettext.h: Update.
4552         * gnulib/import/gettimeofday.c: Update.
4553         * gnulib/import/glob-libc.h: Update.
4554         * gnulib/import/glob.c: Update.
4555         * gnulib/import/glob.in.h: Update.
4556         * gnulib/import/glob_internal.h: Update.
4557         * gnulib/import/glob_pattern_p.c: Update.
4558         * gnulib/import/globfree.c: Update.
4559         * gnulib/import/hard-locale.c: Update.
4560         * gnulib/import/hard-locale.h: Update.
4561         * gnulib/import/intprops.h: Update.
4562         * gnulib/import/inttypes.in.h: Update.
4563         * gnulib/import/isnan.c: Update.
4564         * gnulib/import/isnand-nolibm.h: Update.
4565         * gnulib/import/isnand.c: Update.
4566         * gnulib/import/isnanl-nolibm.h: Update.
4567         * gnulib/import/isnanl.c: Update.
4568         * gnulib/import/itold.c: Update.
4569         * gnulib/import/libc-config.h: Update.
4570         * gnulib/import/limits.in.h: Update.
4571         * gnulib/import/localcharset.c: Update.
4572         * gnulib/import/localcharset.h: Update.
4573         * gnulib/import/localtime-buffer.c: Update.
4574         * gnulib/import/localtime-buffer.h: Update.
4575         * gnulib/import/lstat.c: Update.
4576         * gnulib/import/m4/00gnulib.m4: Update.
4577         * gnulib/import/m4/__inline.m4: Update.
4578         * gnulib/import/m4/absolute-header.m4: Update.
4579         * gnulib/import/m4/alloca.m4: Update.
4580         * gnulib/import/m4/builtin-expect.m4: Update.
4581         * gnulib/import/m4/canonicalize.m4: Update.
4582         * gnulib/import/m4/chdir-long.m4: Update.
4583         * gnulib/import/m4/close.m4: Update.
4584         * gnulib/import/m4/closedir.m4: Update.
4585         * gnulib/import/m4/configmake.m4: Update.
4586         * gnulib/import/m4/d-ino.m4: Update.
4587         * gnulib/import/m4/d-type.m4: Update.
4588         * gnulib/import/m4/dirent_h.m4: Update.
4589         * gnulib/import/m4/dirfd.m4: Update.
4590         * gnulib/import/m4/dirname.m4: Update.
4591         * gnulib/import/m4/double-slash-root.m4: Update.
4592         * gnulib/import/m4/dup.m4: Update.
4593         * gnulib/import/m4/dup2.m4: Update.
4594         * gnulib/import/m4/eealloc.m4: Update.
4595         * gnulib/import/m4/environ.m4: Update.
4596         * gnulib/import/m4/errno_h.m4: Update.
4597         * gnulib/import/m4/error.m4: Update.
4598         * gnulib/import/m4/exponentd.m4: Update.
4599         * gnulib/import/m4/exponentl.m4: Update.
4600         * gnulib/import/m4/extensions.m4: Update.
4601         * gnulib/import/m4/extern-inline.m4: Update.
4602         * gnulib/import/m4/fchdir.m4: Update.
4603         * gnulib/import/m4/fcntl-o.m4: Update.
4604         * gnulib/import/m4/fcntl.m4: Update.
4605         * gnulib/import/m4/fcntl_h.m4: Update.
4606         * gnulib/import/m4/fdopendir.m4: Update.
4607         * gnulib/import/m4/filenamecat.m4: Update.
4608         * gnulib/import/m4/flexmember.m4: Update.
4609         * gnulib/import/m4/float_h.m4: Update.
4610         * gnulib/import/m4/fnmatch.m4: Update.
4611         * gnulib/import/m4/fnmatch_h.m4: Update.
4612         * gnulib/import/m4/fpieee.m4: Update.
4613         * gnulib/import/m4/frexp.m4: Update.
4614         * gnulib/import/m4/frexpl.m4: Update.
4615         * gnulib/import/m4/fstat.m4: Update.
4616         * gnulib/import/m4/fstatat.m4: Update.
4617         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4618         * gnulib/import/m4/getcwd-path-max.m4: Update.
4619         * gnulib/import/m4/getcwd.m4: Update.
4620         * gnulib/import/m4/getdtablesize.m4: Update.
4621         * gnulib/import/m4/getlogin.m4: Update.
4622         * gnulib/import/m4/getlogin_r.m4: Update.
4623         * gnulib/import/m4/getpagesize.m4: Update.
4624         * gnulib/import/m4/getprogname.m4: Update.
4625         * gnulib/import/m4/gettimeofday.m4: Update.
4626         * gnulib/import/m4/glibc21.m4: Update.
4627         * gnulib/import/m4/glob.m4: Update.
4628         * gnulib/import/m4/glob_h.m4: Update.
4629         * gnulib/import/m4/gnulib-cache.m4: Update.
4630         * gnulib/import/m4/gnulib-common.m4: Update.
4631         * gnulib/import/m4/gnulib-comp.m4: Update.
4632         * gnulib/import/m4/gnulib-tool.m4: Update.
4633         * gnulib/import/m4/hard-locale.m4: Update.
4634         * gnulib/import/m4/include_next.m4: Update.
4635         * gnulib/import/m4/inttypes-pri.m4: Update.
4636         * gnulib/import/m4/inttypes.m4: Update.
4637         * gnulib/import/m4/isnand.m4: Update.
4638         * gnulib/import/m4/isnanl.m4: Update.
4639         * gnulib/import/m4/largefile.m4: Update.
4640         * gnulib/import/m4/limits-h.m4: Update.
4641         * gnulib/import/m4/localcharset.m4: Update.
4642         * gnulib/import/m4/locale-fr.m4: Update.
4643         * gnulib/import/m4/locale-ja.m4: Update.
4644         * gnulib/import/m4/locale-zh.m4: Update.
4645         * gnulib/import/m4/localtime-buffer.m4: Update.
4646         * gnulib/import/m4/longlong.m4: Update.
4647         * gnulib/import/m4/lstat.m4: Update.
4648         * gnulib/import/m4/malloc.m4: Update.
4649         * gnulib/import/m4/malloca.m4: Update.
4650         * gnulib/import/m4/math_h.m4: Update.
4651         * gnulib/import/m4/mbrtowc.m4: Update.
4652         * gnulib/import/m4/mbsinit.m4: Update.
4653         * gnulib/import/m4/mbsrtowcs.m4: Update.
4654         * gnulib/import/m4/mbstate_t.m4: Update.
4655         * gnulib/import/m4/memchr.m4: Update.
4656         * gnulib/import/m4/memmem.m4: Update.
4657         * gnulib/import/m4/mempcpy.m4: Update.
4658         * gnulib/import/m4/memrchr.m4: Update.
4659         * gnulib/import/m4/mkdir.m4: Update.
4660         * gnulib/import/m4/mkstemp.m4: Update.
4661         * gnulib/import/m4/mmap-anon.m4: Update.
4662         * gnulib/import/m4/mode_t.m4: Update.
4663         * gnulib/import/m4/msvc-inval.m4: Update.
4664         * gnulib/import/m4/msvc-nothrow.m4: Update.
4665         * gnulib/import/m4/multiarch.m4: Update.
4666         * gnulib/import/m4/nocrash.m4: Update.
4667         * gnulib/import/m4/off_t.m4: Update.
4668         * gnulib/import/m4/onceonly.m4: Update.
4669         * gnulib/import/m4/open-cloexec.m4: Update.
4670         * gnulib/import/m4/open.m4: Update.
4671         * gnulib/import/m4/openat.m4: Update.
4672         * gnulib/import/m4/opendir.m4: Update.
4673         * gnulib/import/m4/pathmax.m4: Update.
4674         * gnulib/import/m4/rawmemchr.m4: Update.
4675         * gnulib/import/m4/readdir.m4: Update.
4676         * gnulib/import/m4/readlink.m4: Update.
4677         * gnulib/import/m4/realloc.m4: Update.
4678         * gnulib/import/m4/rename.m4: Update.
4679         * gnulib/import/m4/rewinddir.m4: Update.
4680         * gnulib/import/m4/rmdir.m4: Update.
4681         * gnulib/import/m4/save-cwd.m4: Update.
4682         * gnulib/import/m4/secure_getenv.m4: Update.
4683         * gnulib/import/m4/setenv.m4: Update.
4684         * gnulib/import/m4/signal_h.m4: Update.
4685         * gnulib/import/m4/ssize_t.m4: Update.
4686         * gnulib/import/m4/stat-time.m4: Update.
4687         * gnulib/import/m4/stat.m4: Update.
4688         * gnulib/import/m4/std-gnu11.m4: Update.
4689         * gnulib/import/m4/stdbool.m4: Update.
4690         * gnulib/import/m4/stddef_h.m4: Update.
4691         * gnulib/import/m4/stdint.m4: Update.
4692         * gnulib/import/m4/stdio_h.m4: Update.
4693         * gnulib/import/m4/stdlib_h.m4: Update.
4694         * gnulib/import/m4/strchrnul.m4: Update.
4695         * gnulib/import/m4/strdup.m4: Update.
4696         * gnulib/import/m4/strerror.m4: Update.
4697         * gnulib/import/m4/string_h.m4: Update.
4698         * gnulib/import/m4/strstr.m4: Update.
4699         * gnulib/import/m4/strtok_r.m4: Update.
4700         * gnulib/import/m4/sys_socket_h.m4: Update.
4701         * gnulib/import/m4/sys_stat_h.m4: Update.
4702         * gnulib/import/m4/sys_time_h.m4: Update.
4703         * gnulib/import/m4/sys_types_h.m4: Update.
4704         * gnulib/import/m4/tempname.m4: Update.
4705         * gnulib/import/m4/time_h.m4: Update.
4706         * gnulib/import/m4/unistd-safer.m4: Update.
4707         * gnulib/import/m4/unistd_h.m4: Update.
4708         * gnulib/import/m4/warn-on-use.m4: Update.
4709         * gnulib/import/m4/wchar_h.m4: Update.
4710         * gnulib/import/m4/wchar_t.m4: Update.
4711         * gnulib/import/m4/wctype_h.m4: Update.
4712         * gnulib/import/m4/wint_t.m4: Update.
4713         * gnulib/import/malloc.c: Update.
4714         * gnulib/import/malloc/scratch_buffer.h: Update.
4715         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4716         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4717         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4718         * gnulib/import/malloca.c: Update.
4719         * gnulib/import/malloca.h: Update.
4720         * gnulib/import/malloca.valgrind: Update.
4721         * gnulib/import/math.in.h: Update.
4722         * gnulib/import/mbrtowc.c: Update.
4723         * gnulib/import/mbsinit.c: Update.
4724         * gnulib/import/mbsrtowcs-impl.h: Update.
4725         * gnulib/import/mbsrtowcs-state.c: Update.
4726         * gnulib/import/mbsrtowcs.c: Update.
4727         * gnulib/import/memchr.c: Update.
4728         * gnulib/import/memmem.c: Update.
4729         * gnulib/import/mempcpy.c: Update.
4730         * gnulib/import/memrchr.c: Update.
4731         * gnulib/import/mkdir.c: Update.
4732         * gnulib/import/mkstemp.c: Update.
4733         * gnulib/import/msvc-inval.c: Update.
4734         * gnulib/import/msvc-inval.h: Update.
4735         * gnulib/import/msvc-nothrow.c: Update.
4736         * gnulib/import/msvc-nothrow.h: Update.
4737         * gnulib/import/open.c: Update.
4738         * gnulib/import/openat-die.c: Update.
4739         * gnulib/import/openat-priv.h: Update.
4740         * gnulib/import/openat-proc.c: Update.
4741         * gnulib/import/openat.c: Update.
4742         * gnulib/import/openat.h: Update.
4743         * gnulib/import/opendir.c: Update.
4744         * gnulib/import/pathmax.h: Update.
4745         * gnulib/import/pipe-safer.c: Update.
4746         * gnulib/import/rawmemchr.c: Update.
4747         * gnulib/import/readdir.c: Update.
4748         * gnulib/import/readlink.c: Update.
4749         * gnulib/import/realloc.c: Update.
4750         * gnulib/import/ref-add.sin: Update.
4751         * gnulib/import/ref-del.sin: Update.
4752         * gnulib/import/rename.c: Update.
4753         * gnulib/import/rewinddir.c: Update.
4754         * gnulib/import/rmdir.c: Update.
4755         * gnulib/import/same-inode.h: Update.
4756         * gnulib/import/save-cwd.c: Update.
4757         * gnulib/import/save-cwd.h: Update.
4758         * gnulib/import/scratch_buffer.h: Update.
4759         * gnulib/import/secure_getenv.c: Update.
4760         * gnulib/import/setenv.c: Update.
4761         * gnulib/import/signal.in.h: Update.
4762         * gnulib/import/stat-time.c: Update.
4763         * gnulib/import/stat-time.h: Update.
4764         * gnulib/import/stat-w32.c: Update.
4765         * gnulib/import/stat-w32.h: Update.
4766         * gnulib/import/stat.c: Update.
4767         * gnulib/import/stdbool.in.h: Update.
4768         * gnulib/import/stddef.in.h: Update.
4769         * gnulib/import/stdint.in.h: Update.
4770         * gnulib/import/stdio.in.h: Update.
4771         * gnulib/import/stdlib.in.h: Update.
4772         * gnulib/import/str-two-way.h: Update.
4773         * gnulib/import/strchrnul.c: Update.
4774         * gnulib/import/strdup.c: Update.
4775         * gnulib/import/streq.h: Update.
4776         * gnulib/import/strerror-override.c: Update.
4777         * gnulib/import/strerror-override.h: Update.
4778         * gnulib/import/strerror.c: Update.
4779         * gnulib/import/string.in.h: Update.
4780         * gnulib/import/stripslash.c: Update.
4781         * gnulib/import/strnlen1.c: Update.
4782         * gnulib/import/strnlen1.h: Update.
4783         * gnulib/import/strstr.c: Update.
4784         * gnulib/import/strtok_r.c: Update.
4785         * gnulib/import/sys_stat.in.h: Update.
4786         * gnulib/import/sys_time.in.h: Update.
4787         * gnulib/import/sys_types.in.h: Update.
4788         * gnulib/import/tempname.c: Update.
4789         * gnulib/import/tempname.h: Update.
4790         * gnulib/import/time.in.h: Update.
4791         * gnulib/import/unistd--.h: Update.
4792         * gnulib/import/unistd-safer.h: Update.
4793         * gnulib/import/unistd.in.h: Update.
4794         * gnulib/import/unsetenv.c: Update.
4795         * gnulib/import/verify.h: Update.
4796         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4797         * gnulib/import/wchar.in.h: Update.
4798         * gnulib/import/wctype.in.h: Update.
4799         * gnulib/import/xalloc-oversized.h: Update.
4800         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4801         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4802
4803 2018-08-16  Gary Benson <gbenson@redhat.com>
4804
4805         PR gdb/13000:
4806         * gdb/main.c (captured_main_1): Exit with nonzero status
4807         in batch mode if the last command to be executed failed.
4808         * NEWS: Mention the above.
4809
4810 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4811
4812         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4813         end of warning message.
4814
4815 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4816
4817         PR gdb/22943:
4818         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4819         (aarch64_extract_return_value): Use
4820         aapcs_is_vfp_call_or_return_candidate.
4821         (aarch64_return_in_memory): Likewise.
4822         (aarch64_store_return_value): Likewise.
4823
4824 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4825
4826         * aarch64-tdep.c
4827         (aapcs_is_vfp_call_or_return_candidate): Make static
4828         (pass_in_v_or_stack): Remove function.
4829         (pass_in_v_vfp_candidate): New function.
4830         (aarch64_push_dummy_call): Check for float register candidates.
4831
4832 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4833
4834         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4835         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4836         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4837
4838 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4839
4840         PR build/23399
4841         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4842         (struct ipa_sym_addresses): Rename to...
4843         (struct ipa_sym_addresses_common): ... this.
4844         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4845
4846 2018-08-28  Tom Tromey  <tom@tromey.com>
4847
4848         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4849         (token_fifo): Now a std::vector.
4850         (yylex, c_parse): Update.
4851         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4852         (token_fifo): Now a std::vector.
4853         (yylex, d_parse): Update.
4854         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4855         (token_fifo): Now a std::vector.
4856         (yylex, go_parse): Update.
4857
4858 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4859
4860         * parser-defs.h (struct type_stack) <elements>: Change type to
4861         std::vector<union type_stack_elt>.
4862         <depth, size>: Remove.
4863         * parse.c (parse_exp_in_context_1): Adjust.
4864         (type_stack_reserve): Remove.
4865         (check_type_stack_depth): Remove.
4866         (insert_into_type_stack): Adjust to std::vector.
4867         (insert_type): Likewise.
4868         (push_type): Likewise.
4869         (push_type_int): Likewise.
4870         (insert_type_address_space): Likewise.
4871         (pop_type): Likewise.
4872         (pop_type_int): Likewise.
4873         (pop_typelist): Likewise.
4874         (pop_type_stack): Likewise.
4875         (append_type_stack): Likewise.
4876         (push_type_stack): Likewise.
4877         (get_type_stack): Likewise.
4878         (type_stack_cleanup): Likewise.
4879         (push_typelist): Likewise.
4880         (follow_types): Likewise.
4881         (_initialize_parse): Likewise.
4882
4883 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4884
4885         * NEWS: Mention csky target.
4886
4887 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4888             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4889             Don Breazeal  <donb@codesourcery.com>
4890
4891         * csky-linux-tdep.c: New file.
4892         * csky-tdep.c: Likewise.
4893         * csky-tdep.h: Likewise.
4894         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4895         csky-tdep.o.
4896         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4897         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4898         * configure.tgt: Add csky support.
4899
4900 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4901
4902         * python/py-framefilter.c (py_print_frame): Print frame architecture
4903         when printing on an MI output.
4904
4905 2018-08-27  Tom Tromey  <tom@tromey.com>
4906
4907         PR build/23087:
4908         * configure: Rebuild.
4909         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4910
4911 2018-08-27  Tom Tromey  <tom@tromey.com>
4912
4913         * aarch64-linux-tdep.c
4914         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4915         casts to int.
4916
4917 2018-08-27  Tom Tromey  <tom@tromey.com>
4918
4919         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4920         unsigned.
4921         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4922         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4923         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4924         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4925         unsigned.
4926
4927 2018-08-27  Tom Tromey  <tom@tromey.com>
4928
4929         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4930         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4931
4932 2018-08-27  Tom Tromey  <tom@tromey.com>
4933
4934         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4935         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4936         ULONGEST_MAX.
4937         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4938         ULONGEST_MAX.
4939         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4940         ULONGEST_MAX.
4941         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4942         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4943         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4944         ULONGEST_MAX.
4945         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4946         (ppc64_linux_sigaction_tramp_frame)
4947         (ppc32_linux_sighandler_tramp_frame)
4948         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4949         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4950         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4951         * mn10300-linux-tdep.c (am33_linux_sigframe)
4952         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4953         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4954         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4955         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4956         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4957         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4958         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4959         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4960         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4961         * microblaze-linux-tdep.c
4962         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4963         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4964         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4965         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4966         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4967         * common/common-types.h (ULONGEST_MAX): New define.
4968         (CORE_ADDR_MAX): Fix formatting.
4969         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4970         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4971         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4972         (arm_linux_rt_sigreturn_tramp_frame)
4973         (arm_eabi_linux_sigreturn_tramp_frame)
4974         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4975         (thumb2_eabi_linux_sigreturn_tramp_frame)
4976         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4977         (arm_linux_restart_syscall_tramp_frame)
4978         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4979         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4980         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4981         ULONGEST_MAX.
4982         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4983
4984 2018-08-27  Tom Tromey  <tom@tromey.com>
4985
4986         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4987         CORE_ADDR_MAX.
4988         * mips-tdep.c (mips_deal_with_atomic_sequence)
4989         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4990         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4991         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4992         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4993         CORE_ADDR_MAX.
4994         * aarch64-tdep.c (aarch64_software_single_step): Use
4995         CORE_ADDR_MAX.
4996
4997 2018-08-27  Tom Tromey  <tom@tromey.com>
4998
4999         * linespec.c (complete_linespec_component): Add cast to "char".
5000         * completer.c (completion_tracker::build_completion_result): Add
5001         cast to "char".
5002
5003 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5004
5005         * solist.h (struct solist, struct target_so_ops): Fix
5006         indentation.
5007
5008 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5009
5010         * ada-tasks.c (ada_task_info_s): Remove typedef.
5011         (DEF_VEC_O(ada_task_info_s)): Remove.
5012         (struct ada_tasks_inferior_data): Initialize fields.
5013         <task_list>: Make an std::vector.
5014         (get_ada_tasks_inferior_data): Allocate with new.
5015         (ada_get_task_number): Adjust.
5016         (get_task_number_from_id): Likewise.
5017         (valid_task_id): Likewise.
5018         (ada_get_task_info_from_ptid): Likewise.
5019         (iterate_over_live_ada_tasks): Likewise.
5020         (add_ada_task): Likewise.
5021         (read_known_tasks): Likewise.
5022         (ada_build_task_list): Likewise.
5023         (print_ada_task_info): Likewise.
5024         (info_task): Likewise.
5025         (task_command_1): Likewise.
5026
5027 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
5028
5029         * ada-lang.c (add_angle_brackets): Return std::string.
5030
5031 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
5032
5033         * python/py-threadevent.c (py_get_event_thread): Initialize
5034         pythread.
5035
5036 2018-08-24  Pedro Alves  <palves@redhat.com>
5037
5038         * python/py-bpevent.c (create_breakpoint_event_object): Use
5039         copy-initialization.
5040         * python/py-continueevent.c (emit_continue_event): Use
5041         copy-initialization.
5042         * python/py-exitedevent.c (create_exited_event_object): Return a
5043         gdbpy_ref<>.
5044         (emit_exited_event): Use copy-initialization.
5045         * python/py-inferior.c (python_new_inferior)
5046         (python_inferior_deleted, add_thread_object): Use
5047         copy-initialization.
5048         * python/py-infevents.c (create_inferior_call_event_object)
5049         (create_register_changed_event_object)
5050         (create_memory_changed_event_object): Return a gdbpy_ref<>.
5051         (emit_inferior_call_event, emit_memory_changed_event)
5052         (emit_register_changed_event): Use copy-initialization.
5053         * python/py-newobjfileevent.c (create_new_objfile_event_object):
5054         Return a gdbpy_ref<>.
5055         (emit_new_objfile_event): Use copy-initialization.
5056         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
5057         (emit_clear_objfiles_event): Use copy-initialization.
5058         * python/py-signalevent.c (create_signal_event_object): Use
5059         copy-initialization.
5060         * python/py-threadevent.c (create_thread_event_object): Use
5061         copy-initialization.
5062
5063 2018-08-24  Pedro Alves  <palves@redhat.com>
5064             Simon Marchi  <simon.marchi@ericsson.com>
5065
5066         PR gdb/23379
5067         * python/py-continueevent.c: Include "gdbthread.h".
5068         (create_continue_event_object): Add intro comment.  Add 'ptid'
5069         parameter.  Use it to find thread to pass to
5070         create_thread_event_object.
5071         (emit_continue_event): Pass PTID down to
5072         create_continue_event_object.
5073         * python/py-event.h (py_get_event_thread): Declare.
5074         (create_thread_event_object): Remove default from 'thread'
5075         parameter.
5076         * python/py-stopevent.c (create_stop_event_object): Use
5077         py_get_event_thread.
5078         * python/py-threadevent.c (get_event_thread): Rename to ...
5079         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
5080         and use it to find the thread.
5081         (create_thread_event_object): Assert that THREAD isn't null.
5082         Don't find the event thread here.
5083
5084 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
5085
5086         * block.h (blockrange, blockranges): New struct declarations.
5087         (struct block): Add new field named `ranges'.
5088         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5089         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5090         macros for accessing ranges in struct block.
5091         (make_blockranges): New declaration.
5092         block.c (make_blockranges): New function.
5093         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5094         for block.
5095         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5096         * blockframe.c (cache_pc_function_block): New static global.
5097         (clear_pc_function_cache): Clear cache_pc_function_block.
5098         (find_pc_partial_function): Move comment to symtab.h.  Add
5099         support for non-contiguous blocks.
5100         * cli/cli-cmds.c (block.h): Include.
5101         (print_disassembly): Handle printing of non-contiguous blocks.
5102         (disassemble_current_function): Likewise.
5103         (disassemble_command): Likewise.
5104
5105         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5106         BLOCK_START.
5107         * blockframe.c (get_pc_function_start): Likewise.
5108         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5109         (gcc_symbol_address): Likewise.
5110         * compile/compile-object-run.c (compile_object_run): Likewise.
5111         * compile/compile.c (get_expr_block_and_pc): Likewise.
5112         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5113         (func_addr_to_tail_call_list): Likewise.
5114         * findvar.c (default_read_var_value): Likewise.
5115         * inline-frame.c (inline_frame_this_id): Likewise.
5116         (skip-inline_frames): Likewise.
5117         * infcmd.c (until_next_command): Likewise.
5118         * linespec.c (convert_linespec_to_sals): Likewise.
5119         * parse.c (parse_exp_in_context_1): Likewise.
5120         * printcmd.c (build_address_symbolic): likewise.
5121         (info_address_command): Likewise.
5122         symtab.c (find_function_start_sal): Likewise.
5123         (skip_prologue_sal): Likewise.
5124         (find_function_alias_target): Likewise.
5125         (find_gnu_ifunc): Likewise.
5126         * stack.c (find_frame_funname): Likewise.
5127         * symtab.c (fixup_symbol_section): Likewise.
5128         (find_function_start_sal): Likewise.
5129         (skip_prologue_sal): Likewsie.
5130         (find_function_alias_target): Likewise.
5131         (find_gnu_ifunc): Likewise.
5132         * tracepoint.c (info_scope_command): Likewise.
5133         * value.c (value_fn_field): Likewise.
5134
5135         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5136         in place of find_pc_partial_function.
5137         * blockframe.c (find_function_entry_range_from_pc): New function.
5138         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5139         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5140         for each range in a block.
5141
5142
5143 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5144
5145         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5146         incrementation.
5147
5148 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5149
5150         * solib-svr4.c (read_program_headers_from_bfd): Return
5151         gdb::optional<gdb::byte_vector>.
5152         (svr4_exec_displacement): Adjust.
5153
5154 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5155
5156         * solib-svr4.c (read_program_header): Return
5157         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5158         (find_program_interpreter): Return
5159         gdb::optional<gdb::byte_vector>.
5160         (scan_dyntag_auxv): Adjust.
5161         (enable_break): Adjust.
5162         (svr4_exec_displacement): Adjust.
5163
5164 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5165
5166         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5167         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5168
5169 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5170
5171         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5172         string_vprintf.
5173         * guile/scm-utils.c (gdbscm_printf): Likewise.
5174         * serial.c (serial_printf): Likewise.
5175         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5176
5177 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5178
5179         * stack.c (print_frame): Print frame architecture when printing on
5180         an MI output.
5181         * NEWS: Mention new "arch" attribute in frame output.
5182
5183 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5184
5185         * arch/aarch64.h (aarch64_regnum): Update comment.
5186
5187 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5188
5189         * NEWS: Add SVE to 8.2 section.
5190
5191 2018-08-21  Pedro Alves  <palves@redhat.com>
5192
5193         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5194         out from gdbscm_parse_function_args.
5195         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5196         gdbscm_parse_function_args_1.
5197
5198 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5199
5200         PR gdb/17816
5201         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5202         operator.
5203
5204 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5205
5206         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5207
5208 2018-08-19  Michael Spang  <spang@google.com>
5209
5210         PR gdb/11786
5211         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5212         for PT_TLS segments.
5213
5214 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5215
5216         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5217         dwarf_variable_value.
5218         * dwarf2-frame.c (class dwarf_expr_executor):
5219         Add override for dwarf_variable_value.
5220         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5221         (class symbol_needs_eval_context): Likewise.
5222         (indirect_synthetic_pointer): Add forward declaration.
5223         (sect_variable_value): New function.
5224         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5225         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5226         for DW_OP_GNU_variable_value.
5227
5228 2018-08-16  Tom Tromey  <tom@tromey.com>
5229
5230         * top.c (read_command_file): Update.
5231         (command_line_input): Remove "repeat" argument.
5232         * ada-lang.c (get_selections): Update.
5233         * linespec.c (decode_line_2): Update.
5234         * defs.h (command_line_input): Remove argument.
5235         * cli/cli-script.c (read_next_line): Update.
5236         * python/py-gdb-readline.c: Update.
5237
5238 2018-08-17  Tom Tromey  <tom@tromey.com>
5239
5240         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5241         command_line_input.
5242
5243 2018-08-15  Tom Tromey  <tom@tromey.com>
5244
5245         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5246
5247 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5248
5249         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5250         If used, use find_pc_partial_function to find address range
5251         to disassemble.
5252         * mi/mi-main.c (mi_cmd_list_features): Report
5253         "data-disassemble-a-option" feature.
5254         * NEWS: Mention new -data-disassemble option -a.
5255
5256 2018-08-13  Tom Tromey  <tom@tromey.com>
5257
5258         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5259
5260 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5261
5262         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5263         (aarch64_linux_collect_sve_regset): Likewise.
5264         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5265         * regcache.h (regcache_map_entry_size): New function.
5266
5267 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5268
5269         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5270         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5271         (SVE_HEADER_VL_LENGTH): Likewise.
5272         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5273         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5274         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5275         (SVE_HEADER_SIZE_OFFSET): Likewise.
5276         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5277         (SVE_HEADER_VL_OFFSET): Likewise.
5278         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5279         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5280         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5281         (SVE_HEADER_SIZE): Likewise.
5282         (aarch64_linux_core_read_vq): Add function.
5283         (aarch64_linux_core_read_description): Check for SVE section.
5284
5285 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5286
5287         * aarch64-fbsd-tdep.c
5288         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5289         collect_size.
5290         * aarch64-linux-tdep.c
5291         (aarch64_linux_iterate_over_regset_sections): Likewise.
5292         * alpha-linux-tdep.c
5293         (alpha_linux_iterate_over_regset_sections):
5294         * alpha-nbsd-tdep.c
5295         (alphanbsd_iterate_over_regset_sections): Likewise.
5296         * amd64-fbsd-tdep.c
5297         (amd64fbsd_iterate_over_regset_sections): Likewise.
5298         * amd64-linux-tdep.c
5299         (amd64_linux_iterate_over_regset_sections): Likewise.
5300         * arm-bsd-tdep.c
5301         (armbsd_iterate_over_regset_sections): Likewise.
5302         * arm-fbsd-tdep.c
5303         (arm_fbsd_iterate_over_regset_sections): Likewise.
5304         * arm-linux-tdep.c
5305         (arm_linux_iterate_over_regset_sections): Likewise.
5306         * corelow.c (get_core_registers_cb): Likewise.
5307         (core_target::fetch_registers): Likewise.
5308         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5309         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5310         * gdbarch.h (void): Regenerate.
5311         * gdbarch.sh: Add supply_size and collect_size.
5312         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5313         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5314         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5315         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5316         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5317         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5318         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5319         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5320         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5321         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5322         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5323         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5324         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5325         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5326         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5327         Likewise.
5328         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5329         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5330         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5331         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5332         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5333         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5334         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5335         Likewise.
5336         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5337         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5338         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5339         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5340         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5341         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5342         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5343         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5344
5345 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5346
5347         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5348         with string_printf.
5349
5350 2018-08-10  Keith Seitz  <keiths@redhat.com>
5351
5352         * compile/compile-c-support.c (add_code_header, add_code_footer):
5353         Move into policy class.
5354         (c_push_user_expression, pop_user_expression_nop)
5355         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5356         (compile_program): New host class.
5357         (c_compile_program): New typedef.
5358         (c_compute_porgram): Use c_compile_program.
5359
5360 2018-08-10  Keith Seitz  <keiths@redhat.com>
5361
5362         * compile/compile-internal.h (compile_instance::~compile_instance):
5363         Remove calls to htab_delete.
5364         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5365         * compile.c (compile_instance::compile_instance): Initialize
5366         htab unique pointers.
5367         (compile_instance::get_cached_type, compile_instance::insert_type)
5368         (compile_instance::error_symbol_once): Update for unique_ptr.
5369
5370 2018-08-10  Keith Seitz  <keiths@redhat.com>
5371
5372         * compile/compile-c-symbols.c (struct symbol_error)
5373         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5374         (compile_instance::insert_symbol_error)
5375         (compile_instance::error_symbol_once): Move to ...
5376         * compile/compile.c: ... here.
5377
5378 2018-08-10  Keith Seitz  <keiths@redhat.com>
5379
5380         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5381         instead of `new_compile_instance'.
5382         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5383         Update description.
5384         If the symbol error map is not initialized, create it.
5385         (generate_c_for_for_one_symbol): Do not check/initialize
5386         the symbol error map.
5387         * compile/compile-c-types.c (compile_c_instance): Make a class.
5388         Update all callers.
5389         (compile_instance::compile_instance): Initialize the type cache.
5390         (get_cached_type): New function.
5391         (insert_type): Update description.
5392         (compile_c_instance::m_default_cflags): Define.
5393         (convert_type): Update description.  Use get_cached_type.
5394         (delete_instance): Moved to destructor.
5395         (new_compile_instance): Moved to constructor.
5396         * compile/compile-c.h (compile_c_instance): Make class inheriting
5397         from compile_instance.
5398         <base>: Remove field.
5399         <type_map, symbol_err_map>: Move to base class.
5400         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5401         * compile/compile-internal.h (compile_instance): Make class.
5402         <type_map_t, symbol_err_map_t>: Define.
5403         <fe>: Rename to `m_gcc_fe'.
5404         <scope, block, gcc_target_options>: Add `m_' prefix.
5405         <m_type_map, m_symbol_err_map>: New fields, moved from
5406         compile_c_instance.
5407         <destroy>: Remove.
5408         (convert_type, new_compile_instance): Remove.
5409         * compile/compile.c (cleanup_compile_instance): Remove.
5410         (compile_to_object): Use unique_ptr to eliminate cleanups.
5411         (compile_instance::set_print_callback, compile_instance::version)
5412         (compile_instance::set_verbose)
5413         (compile_instance::set_driver_filename)
5414         (compile_instance::set_triplet_regexp)
5415         (compile_instance::set_arguments)
5416         (compile_instance::set_source_file)
5417         (compile_instance::compile): Define.
5418
5419 2018-08-10  Keith Seitz  <keiths@redhat.com>
5420
5421         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5422         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5423         gcc-c-fe.def to define C plugin.
5424         (delete_instance): Delete `c_plugin'.
5425         (new_compile_instance): Initialize `c_plugin'.
5426         * compile/compile-c.h: Include gcc_c_plugin.h.
5427         (struct compile_c_instance) <c_plugin>: New member.
5428         * gcc-c-plugin.h: New file.
5429         Update all callers with API change.
5430
5431 2018-08-10  Keith Seitz  <keiths@redhat.com>
5432
5433         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5434         (HFILES_NO_SRCDIR): ... to here.
5435         Add compile-internal.h and compile-c.h.
5436         * compile/compile-c-support.c: Include compile-c.h.
5437         * compile/compile-c-symbols.c: Include compile-c.h.
5438         (generate_c_for_variable_locations): Update comment.
5439         * compile/compile-c-types.c: Include compile-c.h.
5440         * compile/compile-c.h: New file -- moved C language declarations
5441         from other files here.
5442         * compile/compile-internal.h: Do not include hashtab.h or
5443         common/enum-flags.h.
5444         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5445         (gcc_convert_symbol, gcc_symbol_address)
5446         (generate_c_for_variable_locations, c_get_mode_for_size)
5447         (c_get_range_decl_name): Definitions moved to compile-c.h.
5448         * compile/compile-loc2c.c: Include compile-c.h.
5449
5450 2018-08-10  Keith Seitz  <keiths@redhat.com>
5451
5452         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5453         (c_symbol_substitution_name): ... this.
5454         Update all callers.
5455
5456 2018-08-10  Keith Seitz  <keiths@redhat.com>
5457
5458         * compile/compile-c-support.c (c_compute_program): Use
5459         unique_xmalloc_ptr to eliminate cleanup.
5460         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5461         Return a unique_xmalloc_ptr and eliminate cleanup.
5462         * compile/compile-internal.h (generate_c_for_variable_locations):
5463         Return unique_xmalloc_ptr and update description.
5464
5465 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5466
5467         * corelow.c (core_target::get_core_register_section): Rename
5468         min_size to section_min_size.
5469
5470 2018-08-09  Jim Wilson  <jimw@sifive.com>
5471
5472         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5473         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5474         * NEWS: Mention new GNU/Linux RISC-V target.
5475         * configure.host: Add riscv*-*-linux*.
5476         * configure.nat: Add riscv*.
5477         * configure.tgt: Add riscv*-*-linux*.
5478         * riscv-linux-nat.c: New file.
5479         * riscv-linux-tdep.c: New file.
5480
5481 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5482
5483         * infrun.c (resume): Make static, add forward declaration.
5484         (proceed): Update header comment.
5485         * infrun.h (resume): Delete declaration.
5486
5487 2018-08-09  Tom Tromey  <tom@tromey.com>
5488
5489         * riscv-tdep.h: Minor formatting fixes.
5490
5491 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5492
5493         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5494         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5495         (test_mkdir_recursive): Likewise.
5496         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5497
5498 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5499
5500         * valarith.c (value_subscripted_rvalue): If an array is not in
5501         memory, and we don't know the upper bound, then we can't know that
5502         the requested element exists or not.
5503
5504 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5505
5506         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5507         (target_options_to_string): Add comment.
5508
5509 2018-08-08  Tom Tromey  <tom@tromey.com>
5510
5511         * unittests/scoped_mmap-selftests.c: Check result of "write".
5512
5513 2018-08-08  Jim Wilson  <jimw@sifive.com>
5514
5515         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5516         (decode_register_index_short): New.
5517         (decode_j_type_insn, decode_cj_type_insn): New.
5518         (decode_b_type_insn, decode_cb_type_insn): New.
5519         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5520         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5521         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5522         is_c_sw_insn instead of is_sw_insn.
5523         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5524         (riscv_software_single_step): New.
5525         * riscv-tdep.h (riscv_software_single_step): Declare.
5526
5527         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5528         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5529
5530 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5531
5532         PR gdb/18050:
5533         * target.c (dispose_inferior): Don't dispose of inferiors that are
5534         already killed.
5535
5536 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5537
5538         * remote.c (remote_target::download_tracepoint): Change char* to
5539         const char*.
5540
5541 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5542
5543         * target.h (target_options_to_string): Return an std::string.
5544         * target.c (str_comma_list_concat_elem): Return void, use
5545         std::string.
5546         (do_option): Likewise.
5547         (target_options_to_string): Return an std::string.
5548         * linux-nat.c (linux_nat_target::wait): Adjust.
5549         * target-debug.h (target_debug_print_options): Adjust.
5550
5551 2018-08-07  Tom Tromey  <tom@tromey.com>
5552
5553         * Makefile.in (CPPFLAGS): New variable.
5554         (INTERNAL_CPPFLAGS): Use it.
5555
5556 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5557
5558         * NEWS: Mention the index cache.
5559
5560 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5561
5562         * common/pathstuff.h (get_standard_cache_dir): New.
5563         * common/pathstuff.c (get_standard_cache_dir): New.
5564         * build-id.h (build_id_to_string): New.
5565         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5566         DEBUG_STR_SUFFIX): Move to here.
5567         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5568         DEBUG_STR_SUFFIX): Move from there.
5569         (write_psymtabs_to_index): Make non-static, add basename
5570         parameter.  Write to temporary files, rename when done.
5571         (save_gdb_index_command): Adjust call to
5572         write_psymtabs_to_index.
5573         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5574         field.
5575         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5576         (get_gdb_index_contents_from_cache): New.
5577         (get_gdb_index_contents_from_cache_dwz): New.
5578         (dwarf2_initialize_objfile): Read index from cache.
5579         (dwarf2_build_psymtabs): Save to index.
5580         * dwarf-index-cache.h: New file.
5581         * dwarf-index-cache.c: New file.
5582         * dwarf-index-write.h: New file.
5583
5584 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5585
5586         * gnulib/aclocal.m4: Re-generate.
5587         * gnulib/config.in: Re-generate.
5588         * gnulib/configure: Re-generate.
5589         * gnulib/import/Makefile.am: Re-generate.
5590         * gnulib/import/Makefile.in: Re-generate.
5591         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5592         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5593         * gnulib/import/m4/mkdir.m4: New file.
5594         * gnulib/import/mkdir.c: New file.
5595         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5596         module.
5597
5598 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5599
5600         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5601         * common/scoped_mmap.c: New file.
5602         * common/scoped_mmap.h (destroy): New method.
5603         (~scoped_mmap, reset): Use destroy.
5604         (scoped_mmap): New move constructor.
5605         (mmap_file): New declaration.
5606         * unittests/scoped_mmap-selftests.c (test_normal,
5607         test_invalid_filename, run_tests): New functions.
5608         (_initialize_scoped_mmap_selftests): Register selftest.
5609
5610 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5611
5612         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5613         (read_gdb_index_from_buffer): ... this.  Remove section
5614         parameter, add buffer parameter.
5615         (get_gdb_index_contents_ftype,
5616         get_gdb_index_contents_dwz_ftype): New typedefs.
5617         (dwarf2_read_gdb_index): Add callback parameters to get the
5618         index contents.
5619         (get_gdb_index_contents_from_section): New.
5620         (dwarf2_initialize_objfile): Update call to
5621         dwarf2_read_gdb_index.
5622
5623 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5624
5625         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5626         (gdb_open_cloexec): Likewise.
5627         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5628         (commandline_from_pid): Likewise.
5629         (linux_xfer_osdata_threads): Likewise.
5630         (linux_xfer_osdata_fds): Likewise.
5631         * ada-lang.c (is_package_name): Likewise.
5632         * auxv.c (procfs_xfer_auxv): Likewise.
5633         * breakpoint.c (print_one_breakpoint_location): Use
5634         uiout::field_fmt.
5635         (print_one_catch_solib): Use string_printf.
5636         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5637         (add_pe_forwarded_sym): Likewise.
5638         * dwarf2read.c (create_type_unit_group): Likewise.
5639         (build_error_marker_type): Likewise.
5640         * infcall.c (get_function_name): Likewise.
5641         * valprint.c (print_converted_chars_to_obstack): Likewise.
5642         * xtensa-tdep.c (xtensa_register_type): Likewise.
5643
5644 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5645
5646         * remote.c (remote_target::download_tracepoint): Fix format
5647         string errors.
5648
5649 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5650
5651         * tracefile.c: Include common/byte-vector.h.
5652         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5653         with trace_regblock_size if needed.  Update uses of buf.
5654
5655 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5656
5657         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5658         std::vector<unsigned char>.
5659         * tracepoint.c (collection_list::collection_list): Remove
5660         m_regs_mask initializer from initializer list.  Resize
5661         m_regs_mask using the largest remote register number.
5662         (collection_list::add_remote_register): Remove size check on
5663         m_regs_mask.  Use at to access element.
5664         (collection_list::stringify): Change type of temp_buf to
5665         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5666         stringify the register mask.  Use pack_hex_byte for the register
5667         mask.
5668
5669 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5670
5671         * tracepoint.h (class collection_list) <add_register>: Remove.
5672         <add_remote_register, add_ax_registers, add_local_register>:
5673         Declare.
5674         <add_memrange>: Add scope parameter.
5675         * tracepoint.c (encode_actions_1): Likewise.
5676         (collection_list::add_register): Rename to ...
5677         (collection_list::add_remote_register): ... this.  Update
5678         comment.
5679         (collection_list::add_ax_registers, add_local_register): New
5680         methods.
5681         (collection_list::add_memrange): Add scope parameter.  Call
5682         add_local_register instead of add_register.
5683         (finalize_tracepoint_aexpr): New function.
5684         (collection_list::collect_symbol): Update calls to add_memrange.
5685         Call add_local_register instead of add_register.  Call
5686         add_ax_registers.  Call finalize_tracepoint_aexpr.
5687         (encode_actions_1): Get remote regnos for $reg action.  Call
5688         add_remote_register, add_ax_registers, and add_local_register.
5689         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5690         (validate_actionline): Call finalize_tracepoint_aexpr.
5691
5692 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5693
5694         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5695         Replace array buf with gdb::char_vector buf, of size
5696         get_remote_packet_size ().  Replace references to buf and
5697         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5698         and xsnprintf with snprintf.  Raise errors if the buffer is too
5699         small.
5700
5701 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5702
5703         * remote.c (remote_target::download_tracepoint): Fix the has_more
5704         predicate in the QTDP action list iteration.
5705
5706 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5707
5708         * remote.c (remote_target::download_tracepoint): Fix indentation
5709         in for block.
5710
5711 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5712
5713         * proc-api.c (_initialize_proc_api): Remove c, unused.
5714         * procfs.c (procfs_init_inferior): Remove signals, unused.
5715         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5716         unused.
5717
5718 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5719             Andrew Burgess  <andrew.burgess@embecosm.com>
5720
5721         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5722         'W_STOPCODE (0)' as this could be ambiguous.
5723
5724 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5725
5726         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5727         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5728         "ai_socktype").
5729
5730 2018-08-02  Tom Tromey  <tom@tromey.com>
5731
5732         PR symtab/16842.
5733         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5734         symbols.
5735         (process_structure_scope): Likewise.
5736
5737 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5738
5739         PR gdb/22629:
5740         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5741         kill inferior.
5742
5743 2018-08-02  Tom Tromey  <tom@tromey.com>
5744
5745         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5746         (darwin_suspend_inferior, darwin_resume_inferior)
5747         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5748         (darwin_check_new_threads): Check result of get_darwin_inferior.
5749
5750 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5751
5752         GDB 8.1.1 released.
5753
5754 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5755
5756         * varobj.c (varobj_get_path_expr_parent): Report an error if
5757         parent is a dynamic varobj.
5758
5759 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5760
5761         * gnulib/aclocal.m4: Re-generate.
5762         * gnulib/config.in: Re-generate.
5763         * gnulib/configure: Re-generate.
5764         * gnulib/import/Makefile.in: Re-generate.
5765         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5766         * gnulib/import/m4/onceonly.m4: Re-generate.
5767
5768 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5769
5770         * target-descriptions.c (struct xml_test_tdesc): New.
5771         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5772         (record_xml_tdesc): Update.
5773         (maintenance_check_xml_descriptions): Update.
5774         * target-descriptions.h (record_xml_tdesc): Update comment.
5775
5776 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5777
5778         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5779         checking array bounds are defined.
5780
5781 2018-07-30  Tom Tromey  <tom@tromey.com>
5782
5783         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5784         irreflexivity violation.
5785
5786 2018-07-30  Tom Tromey  <tom@tromey.com>
5787
5788         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5789         * value.c (unpack_long): Remove lint code.
5790         * valops.c (value_ind): Remove lint code.
5791         * valarith.c (value_x_binop, value_x_unop, value_equal)
5792         (value_pos): Remove lint code.
5793
5794 2018-07-28  Tom de Vries  <tdevries@suse.de>
5795
5796         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5797         with undefined upper bound as <optimized out>.
5798
5799 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5800
5801         * gcore.in: Rename variable "name" to "prefix".  Expand
5802         "usage" text.
5803
5804 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5805
5806         * windows-nat.c (windows_nat_target::create_inferior): Update to
5807         call close() in global namespace.
5808
5809 2018-07-26  Tom Tromey  <tom@tromey.com>
5810
5811         * dwarf-index-write.c (add_address_entry): Don't add objfile
5812         offsets.
5813         * dbxread.c (find_stab_function): Rename from
5814         find_stab_function_addr.  Return a bound_minimal_symbol.
5815         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5816         Don't add objfile offsets.
5817         (end_psymtab): Use raw_text_low, raw_text_high,
5818         MSYMBOL_VALUE_RAW_ADDRESS.
5819         (read_ofile_symtab): Update.
5820         (process_one_symbol): Update.
5821         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5822         offsets.
5823         (dw2_relocate): Remove.
5824         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5825         searching addrmap.
5826         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5827         Update.
5828         (process_psymtab_comp_unit_reader, add_partial_symbol)
5829         (add_partial_subprogram, dwarf2_ranges_read): Update.
5830         (load_partial_dies): Update.
5831         (add_address_entry): Don't add objfile offsets.
5832         (dwarf2_build_include_psymtabs): Update.
5833         (create_addrmap_from_aranges): Don't add objfile offsets.
5834         (dw2_find_pc_sect_compunit_symtab): Update.
5835         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5836         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5837         Update.
5838         (parse_partial_symbols): Don't add objfile offsets.  Use
5839         raw_text_low, raw_text_high.  Update.
5840         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5841         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5842         or call 'relocate' quick function.  Clear psymbol_map.
5843         * psympriv.h (struct partial_symbol) <address>: Add section
5844         offset.
5845         <set_unrelocated_address>: Rename from set_address.
5846         <raw_text_low, raw_text_high>: New methods.
5847         <text_low, text_high>: Add objfile parameter.
5848         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5849         set_unrelocated_address.
5850         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5851         (find_pc_psymbol): Update.
5852         (fixup_psymbol_section, relocate_psymtabs): Remove.
5853         (dump_psymtab, psym_functions): Update.
5854         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5855         parameter.
5856         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5857         (start_psymtab_common): Update.
5858         * symfile-debug.c (debug_qf_relocate): Remove.
5859         (debug_sym_quick_functions): Update.
5860         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5861         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5862         Update.
5863
5864 2018-07-26  Tom Tromey  <tromey@redhat.com>
5865
5866         * dbxread.c (end_psymtab): Use text_high_valid and
5867         text_low_valid.
5868         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5869         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5870         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5871         Update comment.
5872         <text_low_valid, text_high_valid>: New fields.
5873         <set_text_low, set_text_high>: Update.
5874         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5875
5876 2018-07-26  Tom Tromey  <tom@tromey.com>
5877
5878         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5879         Update.
5880         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5881         textlow and texthigh fields.
5882         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5883         Update.
5884         * mdebugread.c (parse_lines, parse_partial_symbols)
5885         (psymtab_to_symtab_1): Update.
5886         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5887         Rename fields.  Update comment.  Now private.
5888         <text_low, text_high, set_text_low, set_text_high>: New methods.
5889         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5890         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5891         (start_psymtab_common, maintenance_info_psymtabs)
5892         (maintenance_check_psymtabs): Update.
5893         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5894         texthigh fields.
5895         (scan_xcoff_symtab): Update.
5896
5897 2018-07-26  Tom Tromey  <tromey@redhat.com>
5898
5899         * psympriv.h (struct partial_symbol) <unrelocated_address,
5900         address, set_address>: New methods.
5901         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5902         (fixup_psymbol_section, relocate_psymtabs): Update.
5903         (print_partial_symbols): Add 'objfile' parameter.  Update.
5904         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5905         Update.
5906
5907 2018-07-26  Tom Tromey  <tom@tromey.com>
5908
5909         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5910         (debug_names::write_psymbols): Update.
5911         * psympriv.h (struct partial_symbol): Derive from
5912         general_symbol_info.
5913         <obj_section>: New method.
5914         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5915         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5916         (find_pc_sect_psymbol, fixup_psymbol_section)
5917         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5918         (print_partial_symbols, recursively_search_psymtabs)
5919         (compare_psymbols, psymbol_hash, psymbol_compare)
5920         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5921         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5922
5923 2018-07-26  Tom Tromey  <tromey@redhat.com>
5924
5925         * dbxread.c (end_psymtab): Remove dead code.
5926
5927 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5928
5929         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5930         DWARF unwinders are disabled.
5931         * dwarf2-frame.c: Add dwarf2read.h include.
5932         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5933         disabled.
5934         (dwarf2_frame_unwinders_enabled_p): Define.
5935         (show_dwarf_unwinders_enabled_p): New function.
5936         (_initialize_dwarf2_frame): Register switch to control DWARF
5937         unwinder use.
5938         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5939         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5940         (show_dwarf_cmdlist): Remove static keyword.
5941         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5942         (show_dwarf_cmdlist): Declare.
5943         * NEWS: Document new feature.
5944
5945 2018-07-26  Tom de Vries  <tdevries@suse.de>
5946
5947         PR breakpoints/23366
5948         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5949
5950 2018-07-26  Tom de Vries  <tdevries@suse.de>
5951
5952         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5953         DW_AT_count can't be translated to a dynamic prop.
5954
5955 2018-07-25  Tom de Vries  <tdevries@suse.de>
5956
5957         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5958         try/catch.
5959
5960 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5961
5962         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5963
5964 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5965
5966         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5967
5968 2018-07-24  Keith Seitz  <keiths@redhat.comt
5969
5970         PR symtab/23010
5971         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5972         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5973         instead of add_symbol_to_list.
5974         (read_file_scope): Call prepare_one_comp_unit before reading
5975         any other DIEs.
5976
5977 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5978
5979         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5980
5981 2018-07-24  Tom Tromey  <tom@tromey.com>
5982
5983         * utils.c (malloc, realloc, free): Don't declare.
5984         * configure, config.in: Rebuild.
5985         * configure.ac: Don't check for declarations of free, malloc, or
5986         realloc.
5987
5988 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5989
5990         * aarch64-linux-nat.c
5991         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5992         variable.
5993         * arm-linux-nat.c (fetch_regs): Likewise.
5994         (store_regs): Likewise.
5995         (fetch_vfp_regs): Likewise.
5996         (store_vfp_regs): Likewise.
5997         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5998         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5999         (arm_linux_nat_target::insert_watchpoint): Likewise.
6000         (arm_linux_nat_target::remove_watchpoint): Likewise.
6001         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
6002         Likewise.
6003         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
6004         Likewise.
6005         * ppc-linux-nat.c (fetch_register): Likewise.
6006         (fetch_all_gp_regs): Likewise.
6007         (fetch_ppc_registers): Likewise.
6008         (store_all_gp_regs): Likewise.
6009         (store_ppc_registers): Likewise.
6010         (hwdebug_insert_point): Likewise.
6011         (can_use_watchpoint_cond_accel): Likewise.
6012         * remote-sim.c (gdb_os_write_stdout): Likewise.
6013
6014 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
6015             Tom Tromey  <tom@tromey.com>
6016
6017         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
6018         test for it.
6019         * configure: Rebuild.
6020
6021 2018-07-22  Tom Tromey  <tom@tromey.com>
6022
6023         * regformats/regdat.sh: Define xmltarget_${name} inside
6024         #ifndef IN_PROCESS_AGENT.
6025
6026 2018-07-22  Tom Tromey  <tom@tromey.com>
6027
6028         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
6029
6030 2018-07-22  Tom Tromey  <tom@tromey.com>
6031
6032         * symfile.c (reread_symbols): Notify iter, not objfile.
6033
6034 2018-07-22  Tom Tromey  <tom@tromey.com>
6035
6036         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
6037         Use arch_ops.
6038         (ravenscar_thread_target::prepare_to_store): Likewise.
6039
6040 2018-07-22  Tom Tromey  <tom@tromey.com>
6041
6042         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
6043         unused variable.  Call value_fetch_lazy when needed.
6044         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
6045         Remove unused variable.  Call value_fetch_lazy when needed.
6046
6047 2018-07-22  Tom Tromey  <tom@tromey.com>
6048
6049         * m32c-tdep.c (mark_dma): Return void.
6050         (make_regs): Remove unused declarations.
6051
6052 2018-07-22  Tom Tromey  <tom@tromey.com>
6053
6054         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
6055         cmdscm_get_valid_command_smob_arg_unsafe for effect.
6056         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
6057         bkscm_get_valid_block_smob_arg_unsafe for effect.
6058
6059 2018-07-22  Tom Tromey  <tom@tromey.com>
6060
6061         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
6062         value_type.
6063
6064 2018-07-22  Tom Tromey  <tom@tromey.com>
6065
6066         * windows-nat.c (saved_context): Conditionally define.
6067         * remote.c (remote_target::remote_btrace_maybe_reopen):
6068         Conditionally declare "warned".
6069         * inflow.c (sigquit_ours): Conditionally define.
6070         (new_tty): Move "tty" declaration inside #if.
6071         * guile/guile.c (guile_datadir): Conditionally define.
6072         * charset.c (set_be_le_names): Move some declarations inside #if.
6073         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
6074         #if.
6075         (parse_xml_btrace_conf): Likewise.
6076
6077 2018-07-22  Tom Tromey  <tom@tromey.com>
6078
6079         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
6080
6081 2018-07-22  Tom Tromey  <tom@tromey.com>
6082
6083         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
6084         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
6085         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6086         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6087         * stack.c (frame_apply_level_command): Remove unused variable.
6088         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6089         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6090         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6091         unused variable.
6092         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6093         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6094         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6095         variable.
6096         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6097         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6098         variable.
6099         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6100         Remove unused variable.
6101         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6102         variable.
6103         * common/tdesc.c (print_xml_feature::visit): Remove unused
6104         variable.
6105         * compile/compile-object-load.c (store_regs): Remove unused
6106         variables.
6107         * complaints.c (clear_complaints): Remove unused variable.
6108         * corelow.c (core_target_open): Remove unused variable.
6109         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6110         variable.
6111         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6112         variable.
6113         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6114         variable.
6115         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6116         variable.
6117         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6118         variable.
6119         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6120         variable.
6121         * ia64-tdep.c (examine_prologue): Remove unused variable.
6122         * infcall.c (run_inferior_call): Remove unused variable.
6123         * inferior.c (exit_inferior): Remove unused variable.
6124         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6125         * linespec.c (decode_line_2): Remove unused variable.
6126         * linux-nat.c (super_close): Remove.
6127         * linux-tdep.c (linux_info_proc): Remove unused variable.
6128         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6129         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6130         Remove unused variable.
6131         * parse.c (find_minsym_type_and_address): Remove unused variable.
6132         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6133         variable.
6134         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6135         variable.
6136         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6137         variables.
6138         * record-btrace.c (record_btrace_target::store_registers): Remove
6139         unused variable.
6140         (cmd_show_record_btrace_cpu): Remove unused variable.
6141         * riscv-tdep.c (riscv_register_reggroup_p)
6142         (riscv_push_dummy_call, riscv_return_value): Remove unused
6143         variable.
6144         * rust-exp.y (literal): Remove unused variable.
6145         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6146         unused variable.
6147         <STRUCTOP_ANONYMOUS>: Likewise.
6148         * s390-linux-tdep.c (s390_linux_init_abi_31)
6149         (s390_linux_init_abi_64): Remove unused variable.
6150         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6151         (file_select_thread, net_windows_open, _initialize_ser_windows):
6152         Remove unused variables.
6153         * symtab.c (find_pc_sect_line): Remove unused variable.
6154         * target-memory.c (compute_garbled_blocks): Remove unused
6155         variable.
6156         (target_write_memory_blocks): Remove unused variable.
6157         * target.c (target_stack::unpush): Remove unused variables.
6158         * tracepoint.c (start_tracing, all_tracepoint_actions)
6159         (merge_uploaded_trace_state_variables)
6160         (print_one_static_tracepoint_marker): Remove unused variable.
6161         * unittests/basic_string_view/element_access/char/1.cc (test01):
6162         Remove unused variable.
6163         * windows-nat.c (windows_continue, windows_add_all_dlls)
6164         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6165         Remove unused variables.
6166
6167 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6168
6169         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6170         attr_profile in HAVE_ELF.
6171         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6172         HAVE_ELF.
6173
6174 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6175
6176         * frame.c (frame_register_unwind): Change parameter name.
6177         (frame_unwind_register): Likewise.
6178         (frame_unwind_register_value): Likewise.
6179         (frame_unwind_register_signed): Likewise.
6180         (frame_unwind_register_unsigned): Likewise.
6181         * frame.h (frame_register_unwind): Likewise.
6182         (frame_unwind_register): Likewise.
6183         (frame_unwind_register_value): Likewise.
6184         (frame_unwind_register_signed): Likewise.
6185         (frame_unwind_register_unsigned): Likewise.
6186         (frame_unwind_arch): Likewise.
6187
6188 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6189
6190         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6191         ISA maintenance.
6192
6193 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6194
6195         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6196         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6197         hand.
6198
6199 2018-07-20  Keith Seitz  <keiths@redhat.com>
6200
6201         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6202         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6203         m_compunit_symtab, m_language>: Add "m_" prefix.
6204         Update all uses.
6205         * buildsym.c: Update all uses.
6206
6207 2018-07-20  Tom Tromey  <tom@tromey.com>
6208
6209         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6210         * buildsym.h (record_line_ftype): Remove typedef.
6211
6212 2018-07-20  Tom Tromey  <tom@tromey.com>
6213
6214         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6215         (end_expandable_symtab): Likewise.
6216         (end_symtab_get_static_block): Likewise.
6217         (end_symtab_from_static_block): Likewise.
6218         * buildsym-legacy.c (augment_type_symtab): Remove.
6219         (end_expandable_symtab): Remove.
6220         (end_symtab_get_static_block): Remove.
6221         (end_symtab_from_static_block): Remove.
6222
6223 2018-07-20  Tom Tromey  <tom@tromey.com>
6224
6225         * dwarf2read.c: Include buildsym.h.
6226         (struct dwarf2_cu) <builder>: New method.
6227         (fixup_go_packaging): Update.
6228         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6229         use scoped_free_pendings.
6230         (using_directives): Add "cu" parameter, remove "language".
6231         (read_import_statement, setup_type_unit_groups, )
6232         (read_func_scope, read_lexical_block_scope)
6233         (dwarf2_record_block_ranges, read_namespace): Update.
6234         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6235         (lnp_state_machine::handle_end_sequence): Update.
6236         (class lnp_state_machine) <m_cu>: New member.
6237         <m_record_line_callback>: Remove.
6238         <m_currently_recording_lines>: New member.
6239         (lnp_state_machine::handle_set_file): Update.
6240         (noop_record_line): Remove.
6241         (dwarf_record_line_p): Add cu parameter.
6242         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6243         (lnp_state_machine::record_line)
6244         (lnp_state_machine::lnp_state_machine)
6245         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6246         (dwarf_decode_lines): Update.
6247         (dwarf2_start_subfile): Add cu parameter.
6248         (dwarf2_start_symtab, new_symbol): Update.
6249         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6250         Remove dwarf2_per_objfile parameter.
6251         (dwarf_decode_macros): Update.
6252
6253 2018-07-20  Tom Tromey  <tom@tromey.com>
6254
6255         * stabsread.c (define_symbol): Update.
6256         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6257         * dwarf2read.c (new_symbol): Update.
6258         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6259         * cp-namespace.c: Include buildsym.h.
6260         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6261         * buildsym-legacy.c (get_buildsym_compunit): New function.
6262
6263 2018-07-20  Tom Tromey  <tom@tromey.com>
6264
6265         * xcoffread.c: Include buildsym-legacy.h.
6266         * windows-nat.c: Include buildsym-legacy.h.
6267         * stabsread.c: Include buildsym-legacy.h.
6268         * mdebugread.c: Include buildsym-legacy.h.
6269         * buildsym-legacy.h: New file.
6270         * buildsym-legacy.c: New file, from buildsym.c.
6271         * go32-nat.c: Include buildsym-legacy.h.
6272         * dwarf2read.c: Include buildsym-legacy.h.
6273         * dbxread.c: Include buildsym-legacy.h.
6274         * cp-namespace.c: Include buildsym-legacy.h.
6275         * coffread.c: Include buildsym-legacy.h.
6276         * buildsym.h: Move some contents to buildsym-legacy.h.
6277         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6278         buildsym-legacy.c.
6279         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6280
6281 2018-07-20  Tom Tromey  <tom@tromey.com>
6282
6283         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6284         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6285         (buildsym_compunit::buildsym_compunit)
6286         (buildsym_compunit::~buildsym_compunit)
6287         (buildsym_compunit::get_macro_table): Define.
6288
6289 2018-07-20  Tom Tromey  <tom@tromey.com>
6290
6291         * buildsym.c (reset_symtab_globals): Remove.
6292         (buildsym_compunit::end_symtab_from_static_block): Update.
6293         (buildsym_compunit::augment_type_symtab): Update.
6294         (end_symtab_from_static_block): Call free_buildsym_compunit.
6295         (augment_type_symtab, end_symtab, end_expandable_symtab):
6296         Likewise.
6297
6298 2018-07-20  Tom Tromey  <tom@tromey.com>
6299
6300         * arch-utils.c: Do not include buildsym.h.
6301         * mipsread.c: Do not include buildsym.h.
6302         * machoread.c: Do not include buildsym.h.
6303         * elfread.c: Do not include buildsym.h.
6304
6305 2018-07-20  Tom Tromey  <tom@tromey.com>
6306
6307         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6308         initialization.
6309         (buildsym_compunit): Add new constructor.
6310         (struct buildsym_compunit) <get_last_source_file, finish_block,
6311         record_block_range, start_subfile, patch_subfile_names,
6312         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6313         set_last_source_start_addr, get_last_source_start_addr,
6314         get_local_using_directives, set_local_using_directives,
6315         get_global_using_directives, outermost_context_p,
6316         get_current_context_stack, get_context_stack_depth,
6317         get_current_subfile, get_local_symbols, get_file_symbols,
6318         get_global_symbols, record_debugformat, record_producer,
6319         push_context, pop_context, end_symtab_get_static_block,
6320         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6321         New public methods.
6322         <record_pending_block, finish_block_internal, make_blockvector,
6323         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6324         private methods.
6325         Update all users.
6326
6327 2018-05-22  Tom Tromey  <tom@tromey.com>
6328
6329         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6330         parameter.
6331         (finish_block_internal): Update.
6332
6333 2018-07-20  Tom Tromey  <tom@tromey.com>
6334
6335         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6336         parameter.
6337         (finish_block_internal): Update.
6338
6339 2018-07-20  Tom Tromey  <tom@tromey.com>
6340
6341         * buildsym.h (EXTERN): Don't define or undef.
6342         * buildsym.c (EXTERN): Don't define.
6343
6344 2018-07-20  Tom Tromey  <tom@tromey.com>
6345
6346         * buildsym.c: Remove TODO comment.
6347
6348 2018-07-20  Tom Tromey  <tom@tromey.com>
6349
6350         * coffread.c (coff_symtab_read): Update.
6351         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6352         (xcoff_new_init): Update.
6353         * mipsread.c (mipscoff_new_init): Update.
6354         * mdebugread.c (mdebug_build_psymtabs): Update.
6355         * elfread.c (elf_new_init): Update.
6356         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6357         Update.
6358         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6359         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6360         (stabsect_build_psymtabs): Update.
6361         * buildsym.h (buildsym_init): Don't declare.
6362         * buildsym.c: Update comment.
6363         (prepare_for_building): Remove.
6364         (start_symtab, restart_symtab): Update.
6365         (reset_symtab_globals): Update comment.
6366         (buildsym_init): Remove.
6367
6368 2018-07-20  Tom Tromey  <tom@tromey.com>
6369
6370         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6371         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6372         (read_enum_type, common_block_start, common_block_end)
6373         (cleanup_undefined_types_1, finish_global_stabs): Update.
6374         * mdebugread.c (psymtab_to_symtab_1): Update.
6375         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6376         (read_lexical_block_scope, new_symbol): Update.
6377         * dbxread.c (process_one_symbol): Update.
6378         * coffread.c (coff_symtab_read, process_coff_symbol)
6379         (coff_read_enum_type): Update.
6380         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6381         declare.
6382         (get_local_symbols, get_file_symbols, get_global_symbols): New
6383         functions.
6384         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6385         m_global_symbols.
6386         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6387         (~scoped_free_pendings): Update.
6388         (finish_block, prepare_for_building, reset_symtab_globals)
6389         (end_symtab_get_static_block, end_symtab_with_blockvector)
6390         (augment_type_symtab, push_context): Update.
6391         (get_local_symbols, get_file_symbols, get_global_symbols): New
6392         functions.
6393         (buildsym_init): Update.
6394
6395 2018-07-20  Tom Tromey  <tom@tromey.com>
6396
6397         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6398         (process_full_type_unit): Likewise.
6399         (dwarf2_start_symtab): Set list_in_scope.
6400
6401 2018-07-20  Tom Tromey  <tom@tromey.com>
6402
6403         * dwarf2read.c (process_psymtab_comp_unit_reader)
6404         (build_type_psymtabs_reader): Do not set list_in_scope.
6405
6406 2018-07-20  Tom Tromey  <tom@tromey.com>
6407
6408         * buildsym.c (free_pendings): Remove.
6409         (add_symbol_to_list, scoped_free_pendings)
6410         (finish_block_internal, buildsym_init): Update.
6411
6412 2018-07-20  Tom Tromey  <tom@tromey.com>
6413
6414         * xcoffread.c (read_xcoff_symtab): Update.
6415         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6416         Update.
6417         * dbxread.c (process_one_symbol): Update.
6418         * coffread.c (coff_symtab_read): Update.
6419         * buildsym.h (finish_block): Update.
6420         * buildsym.c (finish_block): Remove "listhead" argument.
6421         (end_symtab_get_static_block): Update.
6422
6423 2018-07-20  Tom Tromey  <tom@tromey.com>
6424
6425         * buildsym.h (class scoped_free_pendings): Remove constructor.
6426         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6427         method.
6428         <m_pending_block_obstack, m_pending_blocks>: New members.
6429         (pending_block_obstack, pending_blocks): Remove.
6430         (scoped_free_pendings::scoped_free_pendings): Default.
6431         (~scoped_free_pendings): Update.
6432         (free_pending_blocks): Remove.
6433         (finish_block_internal, record_pending_block, make_blockvector)
6434         (end_symtab_get_static_block, augment_type_symtab, push_context)
6435         (buildsym_init): Update.
6436
6437 2018-07-20  Tom Tromey  <tom@tromey.com>
6438
6439         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6440         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6441         members.
6442         (pending_addrmap, pending_addrmap_obstack)
6443         (pending_addrmap_interesting): Remove.
6444         (scoped_free_pendings, record_block_range, make_blockvector)
6445         (prepare_for_building, reset_symtab_globals, buildsym_init):
6446         Update.
6447
6448 2018-07-20  Tom Tromey  <tom@tromey.com>
6449
6450         * xcoffread.c (process_linenos): Update.
6451         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6452         * mdebugread.c (psymtab_to_symtab_1): Update.
6453         * dwarf2read.c (setup_type_unit_groups)
6454         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6455         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6456         * dbxread.c (process_one_symbol): Update.
6457         * coffread.c (coff_symtab_read, enter_linenos)
6458         (process_coff_symbol): Update.
6459         * buildsym.h (current_subfile): Don't declare.
6460         (get_current_subfile): Declare.
6461         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6462         member.
6463         (start_subfile, free_buildsym_compunit, push_subfile)
6464         (prepare_for_building, start_symtab): Update.
6465         (get_current_subfile): New function.
6466
6467 2018-07-20  Tom Tromey  <tom@tromey.com>
6468
6469         * coffread.c (coff_symtab_read): Update.
6470         * xcoffread.c (read_xcoff_symtab): Update.
6471         * dwarf2read.c (new_symbol): Update.
6472         (read_func_scope, read_lexical_block_scope): Update.
6473         * dbxread.c (process_one_symbol): Update.
6474         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6475         (outermost_context_p): Remove macro.
6476         (outermost_context_p, get_current_context_stack)
6477         (get_context_stack_depth): Declare.
6478         (pop_context): Return struct context_stack.
6479         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6480         member.
6481         (context_stack_size): Remove.
6482         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6483         (prepare_for_building, end_symtab_get_static_block)
6484         (augment_type_symtab, push_context): Update.
6485         (pop_context): Return struct context_stack.
6486         (outermost_context_p, get_current_context_stack)
6487         (get_context_stack_depth): New functions.
6488         (buildsym_init): Update.
6489
6490 2018-07-20  Tom Tromey  <tom@tromey.com>
6491
6492         * rust-exp.y: Now a pure parser.  Update all rules.
6493         (%union): Move earlier.
6494         (current_parser, work_obstack): Remove globals.
6495         (rust_parser, ~rust_parser): Update.
6496         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6497         lex_character, lex_number, lex_string, lex_identifier,
6498         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6499         convert_name, convert_params_to_expression,
6500         convert_ast_to_expression, ast_basic_type, ast_operation,
6501         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6502         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6503         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6504         ast_array_type, ast_slice_type, ast_reference_type,
6505         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6506         (rust_parse): Update.
6507         (rustyyerror, rustyylex): Add parser parameter.
6508         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6509         (rust_lex_stringish_test, rust_lex_test_sequence)
6510         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6511         (rust_lex_test_push_back, rust_lex_tests): Update.
6512
6513 2018-07-19  Pedro Alves  <palves@redhat.com>
6514
6515         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6516         gdb::unique_xmalloc_ptr.
6517         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6518         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6519         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6520         copy-initialization.
6521         * guile/scm-pretty-print.c (ppscm_print_children): Use
6522         gdb::unique_xmalloc_ptr instead of cleanups.
6523         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6524         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6525         gdb::unique_xmalloc_ptr.
6526         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6527         Adjust to use gdb::unique_xmalloc_ptr.
6528         * guile/scm-utils.c (extract_arg): Adjust.
6529         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6530         gdb::unique_xmalloc_ptr instead of a cleanup.
6531
6532 2018-07-19  Tom Tromey  <tom@tromey.com>
6533
6534         * utils.c (do_value_free_to_mark)
6535         (make_cleanup_value_free_to_mark): Remove.
6536         * utils.h (make_cleanup_value_free_to_mark): Remove.
6537
6538 2018-07-19  Pedro Alves  <palves@redhat.com>
6539
6540         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6541         forwarding reference.
6542
6543 2018-07-18  Pedro Alves  <palves@redhat.com>
6544
6545         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6546         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6547         cleanup.
6548
6549 2018-07-18  Pedro Alves  <palves@redhat.com>
6550
6551         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6552         exceptions.
6553         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6554         (gdbscm_wrap): New.
6555         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6556         directly instead of a cleanup.
6557         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6558         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6559         (vlscm_binop_gdbthrow): New, factored out from ...
6560         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6561         (vlscm_rich_compare): Use gdbscm_wrap.
6562         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6563         instead of a cleanup.
6564         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6565         cleanup.
6566         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6567         Use xfree directly instead of a cleanup.
6568         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6569         Adjust to use gdbscm_wrap and scoped_value_mark.
6570         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6571         (gdbscm_value_address, gdbscm_value_dereference)
6572         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6573         scoped_value_mark.
6574         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6575         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6576         scoped_value_mark.
6577         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6578         gdbscm_wrap and scoped_value_mark.
6579         (gdbscm_value_to_string): Use xfree directly instead of a
6580         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6581         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6582         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6583         scoped_value_mark.
6584         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6585         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6586         scoped_value_mark.
6587         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6588         gdbscm_wrap.
6589
6590 2018-07-18  Tom de Vries  <tdevries@suse.de>
6591
6592         * findvar.c (default_read_var_value): Also resolve dynamic type for
6593         LOC_OPTIMIZED_OUT vars.
6594
6595 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6596
6597         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6598         decoding.
6599
6600 2018-07-17  Tom Tromey  <tom@tromey.com>
6601
6602         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6603         (compute_enum_list, pascm_set_param_value_x)
6604         (gdbscm_parameter_value): Update.
6605         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6606         (gdbscm_scm_to_host_string): Update.
6607         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6608         Update.
6609         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6610         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6611         * guile/scm-string.c (gdbscm_scm_to_string): Return
6612         unique_xmalloc_ptr.
6613         (gdbscm_scm_to_host_string): Likewise.
6614
6615 2018-07-17  Tom Tromey  <tom@tromey.com>
6616
6617         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6618         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6619         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6620         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6621         unique_xmalloc_ptr.
6622
6623 2018-07-17  Tom Tromey  <tom@tromey.com>
6624
6625         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6626         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6627         Update.
6628         * guile/scm-cmd.c (cmdscm_function): Update.
6629         * guile/scm-pretty-print.c
6630         (ppscm_print_exception_unless_memory_error): Update.
6631         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6632         Return unique_xmalloc_ptr.
6633
6634 2018-07-17  Tom Tromey  <tom@tromey.com>
6635
6636         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6637         Use string_printf.
6638
6639 2018-07-17  Jim Wilson  <jimw@sifive.com>
6640
6641         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6642         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6643         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6644         unecessary braces after EF_RISCV_RVC test.  Delete call to
6645         set_gdbarch_decr_pc_after_break.
6646
6647         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6648         RISCV_LAST_FP_REGNUM + 1.
6649         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6650
6651 2018-07-17  Tom Tromey  <tom@tromey.com>
6652
6653         * configure.ac: Remove --disable-gdbcli.
6654         * configure: Rebuild.
6655         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6656         (SUBDIR_CLI_CFLAGS): Remove.
6657         (SFILES): Use SUBDIR_CLI_SRCS.
6658         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6659
6660 2018-07-17  Tom Tromey  <tom@tromey.com>
6661
6662         PR gdb/18624:
6663         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6664
6665 2018-07-16  Jim Wilson  <jimw@sifive.com>
6666
6667         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6668
6669 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6670
6671         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6672         variable.
6673         (libunwind_frame_sniffer): Likewise.
6674         (libunwind_frame_prev_register): Likewise.
6675         (libunwind_sigtramp_frame_sniffer): Likewise.
6676         * ia64-tdep.c (ia64_access_reg): Likewise.
6677         (ia64_access_rse_reg): Likewise.
6678         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6679         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6680
6681 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6682
6683         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6684
6685 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6686
6687         * remote-sim.c (gdbsim_target::close,
6688         gdbsim_target::mourn_inferior): Remove unused variables.
6689
6690 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6691
6692         * ia64-tdep.c (ktab_buf): New global.
6693         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6694         (get_kernel_table): Adjust.
6695
6696 2018-07-16  Tom Tromey  <tom@tromey.com>
6697
6698         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6699         * dwarf2read.c (using_directives, new_symbol): Use
6700         outermost_context_p.
6701         * dbxread.c (process_one_symbol): Use outermost_context_p.
6702         * coffread.c (coff_symtab_read): Use outermost_context_p.
6703
6704 2018-07-16  Tom Tromey  <tom@tromey.com>
6705
6706         * dwarf2read.c (using_directives, read_func_scope)
6707         (read_lexical_block_scope): Update.
6708         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6709         * buildsym.h (local_using_directives, global_using_directives):
6710         Don't declare.
6711         (get_local_using_directives, set_local_using_directives)
6712         (get_global_using_directives): Declare.
6713         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6714         m_global_using_directives>: New members.
6715         (finish_block_internal, prepare_for_building)
6716         (reset_symtab_globals, end_symtab_get_static_block)
6717         (push_context): Update.
6718         (get_local_using_directives, set_local_using_directives)
6719         (get_global_using_directives): New functions.
6720         (buildsym_init): Update.
6721
6722 2018-07-16  Tom Tromey  <tom@tromey.com>
6723
6724         * xcoffread.c (xcoff_initial_scan): Don't call
6725         free_pending_blocks.
6726         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6727         * buildsym.h (class scoped_free_pendings): Add constructor.
6728         (free_pending_blocks): Don't declare.
6729         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6730         (free_pending_blocks): Now static.
6731
6732 2018-07-16  Tom Tromey  <tom@tromey.com>
6733
6734         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6735         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6736         member.
6737         (struct subfile_stack): Remove.
6738         (subfile_stack): Remove.
6739         (push_subfile, pop_subfile, buildsym_init): Update.
6740
6741 2018-07-16  Tom Tromey  <tom@tromey.com>
6742
6743         * buildsym.c (push_subfile): Use gdb_assert.
6744         (pop_subfile): Use gdb_assert.
6745
6746 2018-07-16  Tom Tromey  <tom@tromey.com>
6747
6748         * buildsym.h (merge_symbol_lists): Remove.
6749         * buildsym.c (merge_symbol_lists): Remove.
6750
6751 2018-07-16  Tom Tromey  <tom@tromey.com>
6752
6753         * stabsread.c (scan_file_globals): Update comment.
6754         * stabsread.h (scan_file_globals): Move from buildsym.h.
6755         * buildsym.h (scan_file_globals): Move to stabsread.h.
6756
6757 2018-07-16  Tom Tromey  <tom@tromey.com>
6758
6759         * xcoffread.c (xcoff_new_init): Update.
6760         * mipsread.c (mipscoff_new_init): Update.
6761         * mdebugread.c (mdebug_build_psymtabs): Update.
6762         * elfread.c (elf_new_init): Update.
6763         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6764         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6765         * buildsym.h (buildsym_new_init): Don't declare.
6766         * buildsym.c (buildsym_new_init): Remove.
6767
6768 2018-07-16  Tom Tromey  <tom@tromey.com>
6769
6770         * stabsread.h (within_function): Move from buildsym.h.
6771         * stabsread.c (start_stabs): Clear within_function.
6772         * coffread.c (coff_start_symtab): Clear within_function.
6773         * buildsym.h (within_function): Move to stabsread.h.
6774         * buildsym.c (prepare_for_building): Update.
6775
6776 2018-07-16  Tom Tromey  <tom@tromey.com>
6777
6778         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6779         * dwarf2read.c (dwarf2_start_symtab): Don't set
6780         processing_gcc_compilation.
6781         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6782
6783 2018-07-16  Tom Tromey  <tom@tromey.com>
6784
6785         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6786         (next_symbol_text_func): Move from buildsym.h.
6787         * stabsread.c (hashname): Move from buildsym.c.
6788         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6789         (next_symbol_text_func, hashname): Move to stabsread.h.
6790         * buildsym.c: Don't include bcache.h
6791         (hashname): Move to stasbread.c.
6792
6793 2018-07-16  Tom Tromey  <tom@tromey.com>
6794
6795         * buildsym.h (context_stack_size): Don't declare.
6796         * buildsym.c (context_stack_size): New global.
6797
6798 2018-07-16  Tom Tromey  <tom@tromey.com>
6799
6800         * dbxread.c (processing_acc_compilation): New global.
6801         * buildsym.h (processing_acc_compilation): Don't declare.
6802
6803 2018-07-16  Tom Tromey  <tom@tromey.com>
6804
6805         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6806         * dbxread.c (read_ofile_symtab): Update.
6807         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6808         * buildsym.h (last_source_start_addr): Remove.
6809         (set_last_source_start_addr, get_last_source_start_addr):
6810         Declare.
6811         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6812         parameter.
6813         (struct buildsym_compunit) <m_last_source_start_addr>: New
6814         member.
6815         (prepare_for_building): Remove start_addr parameter.
6816         (start_symtab, restart_symtab, end_symtab_get_static_block)
6817         (end_symtab_with_blockvector): Update.
6818         (set_last_source_start_addr, get_last_source_start_addr): New
6819         functions.
6820
6821 2018-07-16  Tom Tromey  <tom@tromey.com>
6822
6823         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6824         member.
6825         (have_line_numbers): Remove.
6826         (record_line, prepare_for_building, end_symtab_get_static_block)
6827         (augment_type_symtab): Update.
6828
6829 2018-07-16  Tom Tromey  <tom@tromey.com>
6830
6831         * buildsym.c (~buildsym_compunit): Free the macro table.
6832         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6833         methods.
6834         <m_pending_macros>: New member.
6835         (pending_macros): Remove.
6836         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6837         (reset_symtab_globals, end_symtab_get_static_block)
6838         (end_symtab_with_blockvector, augment_type_symtab)
6839         (buildsym_init): Update.
6840
6841 2018-07-16  Tom Tromey  <tom@tromey.com>
6842
6843         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6844         parameter.
6845         (buildsym_compunit::set_last_source_file): New method.
6846         <m_last_source_file>: New member.
6847         (prepare_for_building): Remove "name" parameter.
6848         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6849         (last_source_file): Remove.
6850         (set_last_source_file, get_last_source_file): Update.
6851
6852 2018-07-16  Tom Tromey  <tom@tromey.com>
6853
6854         * buildsym.c (prepare_for_building): Add assert.
6855
6856 2018-07-16  Tom Tromey  <tom@tromey.com>
6857
6858         * buildsym.c (~buildsym_compunit): Update.
6859         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6860         (start_subfile, patch_subfile_names)
6861         (end_symtab_with_blockvector): Update.
6862
6863 2018-07-16  Tom Tromey  <tom@tromey.com>
6864
6865         * buildsym.c (struct buildsym_compunit): Add constructor,
6866         destructor, initializers.
6867         (start_buildsym_compunit): Remove.
6868         (free_buildsym_compunit): Use "delete".
6869         (start_symtab, restart_symtab): Use "new".
6870
6871 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6872
6873         * symfile.c (set_objfile_default_section_offset): Remove struct
6874         keyword.
6875
6876 2018-07-14  Stafford Horne  <shorne@gmail.com>
6877
6878         * (Responsible Maintainers): Add myself as or1k maintainer.
6879
6880 2018-07-13  Tom Tromey  <tom@tromey.com>
6881
6882         * symfile.c (set_objfile_default_section_offset): Use extra braces
6883         around initializer.
6884
6885 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6886
6887         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6888         non-branching basr.
6889
6890 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6891
6892         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6893         unittests/cli-utils-selftests.c
6894         * unittests/cli-utils-selftests.c: New file.
6895
6896 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6897
6898         * NEWS: Mention new commands. Mention change to 'thread apply'.
6899
6900 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6901
6902         * thread.c (thr_try_catch_cmd): New function.
6903         (thread_apply_all_command): Handle qcs flags.
6904         (thread_apply_command): Handle qcs flags.
6905         (taas_command): New function.
6906         (tfaas_command): New function.
6907         (_initialize_thread): Update to setup the new commands 'taas
6908         and 'tfaas'. Change doc string for 'thread apply'.
6909
6910 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6911
6912         * stack.c: (trailing_outermost_frame): New function, mostly
6913         extracted from backtrace_command_1.
6914         (leading_innermost_frame): New function.
6915         (backtrace_command_1): Update to call trailing_outermost_frame.
6916         (frame_apply_command_count): New function.
6917         (frame_apply_level_command): New function.
6918         (frame_apply_all_command): New function.
6919         (frame_apply_command): New function.
6920         (faas_command): New function.
6921         (frame_cmd_list): New variable.
6922         (_initialize_stack): Update to setup the new commands 'frame apply'
6923         and 'faas'.
6924
6925 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6926
6927         * cli-utils.c (number_or_range_parser::get_number): Only handle
6928         numbers or convenience var as numbers.
6929         (parse_flags): New function.
6930         (parse_flags_qcs): New function.
6931         (number_or_range_parser::finished): Ensure parsing end is detected
6932         before end of string.
6933         * cli-utils.h (parse_flags): New function.
6934         (parse_flags_qcs): New function.
6935         (number_or_range_parser): Remove m_finished bool.
6936         (number_or_range_parser::skip_range): Set m_in_range to false.
6937
6938 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6939
6940         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6941         on Windows.
6942
6943 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6944             Jan Kratochvil  <jan.kratochvil@redhat.com>
6945             Paul Fertser  <fercerpav@gmail.com>
6946             Tsutomu Seki  <sekiriki@gmail.com>
6947             Pedro Alves  <palves@redhat.com>
6948
6949         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6950         'unittests/parse-connection-spec-selftests.c'.
6951         (COMMON_SFILES): Add 'common/netstuff.c'.
6952         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6953         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6954         * common/netstuff.c: New file.
6955         * common/netstuff.h: New file.
6956         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6957         (wait_for_connect): Update comment.  New parameter
6958         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6959         Use 'sock' directly instead of 'scb->fd'.
6960         (try_connect): New function, with code from 'net_open'.
6961         (net_open): Rewrite main loop to deal with multiple
6962         sockets/addresses.  Handle IPv6-style hostnames; implement
6963         support for IPv6 connections.
6964         * unittests/parse-connection-spec-selftests.c: New file.
6965
6966 2018-07-11  Pedro Alves  <palves@redhat.com>
6967
6968         PR gdb/23377
6969         * remote.c (remote_target::remote_detach_pid): Call
6970         set_current_process.
6971
6972 2018-07-11  Pedro Alves  <palves@redhat.com>
6973
6974         * h8300-tdep.c (h8300_gdbarch_init): Remove
6975         set_gdbarch_ecoff_reg_to_regnum calls.
6976
6977 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6978
6979         PR c++/23373
6980         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6981         offsets/sizes for static members of a class/struct.
6982
6983 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6984
6985         * target-descriptions.c (tdesc_register_bitsize): Rename.
6986         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6987         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6988         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6989
6990 2018-07-10  Tom Tromey  <tom@tromey.com>
6991
6992         * breakpoint.c (moribund_locations): Now static and a
6993         std::vector.
6994         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6995         (build_bpstat_chain, update_global_location_list)
6996         (breakpoint_retire_moribund): Update.
6997         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6998         VEC.
6999
7000 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7001
7002         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
7003         (riscv_register_reggroup_p): Use new function, remove unneeded
7004         parenthesis.
7005         (riscv_push_dummy_call): Extend assert to compare against xlen or
7006         flen based on register type.
7007
7008 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
7009
7010         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
7011
7012 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
7013
7014         * remote.c (show_hardware_watchpoint_limit): New function.
7015         (show_hardware_watchpoint_length_limit): New function.
7016         (show_hardware_breakpoint_limit): New function.
7017         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
7018         where appropriate, update help text.
7019
7020 2018-07-09  Tom Tromey  <tom@tromey.com>
7021
7022         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
7023         (CLIBS): Don't mention NAT_CLIBS.
7024
7025 2018-07-09  Tom Tromey  <tom@tromey.com>
7026
7027         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
7028         (LIBGDB_OBS, clean mostlyclean): Update.
7029         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
7030
7031 2018-07-09  Tom Tromey  <tom@tromey.com>
7032
7033         * Makefile.in (%.c: %.y): Use ECHO_YACC.
7034         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
7035         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
7036
7037 2018-07-09  Tom Tromey  <tom@tromey.com>
7038
7039         * Makefile.in (ALLDEPFILES): Remove exec.c.
7040         (COMMON_OBS): Remove exec.o.
7041         (COMMON_SFILES): Add exec.c.
7042
7043 2018-07-09  Tom Tromey  <tom@tromey.com>
7044
7045         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
7046
7047 2018-07-09  Tom Tromey  <tom@tromey.com>
7048
7049         * Makefile.in (clean mostlyclean): Remove stamp-version.
7050         (version.c): Depend on stamp-version.
7051         (stamp-version): New rule, from version.c rule.
7052
7053 2018-07-09  Tom Tromey  <tom@tromey.com>
7054
7055         * Makefile.in (init.c): Depend on stamp-init.
7056         (stamp-init): New rule, from init.c rule.
7057         (clean mostlyclean): Remove stamp-init.
7058
7059 2018-07-09  Tom Tromey  <tom@tromey.com>
7060
7061         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
7062         SUBDIR_GCC_COMPILE_SRCS.
7063
7064 2018-07-09  Tom Tromey  <tom@tromey.com>
7065
7066         * Makefile.in (init.c): Remove some unused sed rules.
7067
7068 2018-07-09  Tom Tromey  <tom@tromey.com>
7069
7070         * Makefile.in (TSOBS): Remove.
7071         (INIT_FILES): Update.
7072         (LIBGDB_OBS): Update.
7073         (COMMON_SFILES): Add inflow.c.
7074         (SFILES): Remove inflow.c.
7075
7076 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
7077
7078         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
7079
7080 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
7081
7082         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
7083         get_saveloc_name, is_signal_frame_name, step_name,
7084         init_remote_name, create_addr_space_name,
7085         destroy_addr_space_name, search_unwind_table_name,
7086         find_dyn_list_name): Constify.
7087
7088 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7089
7090         * darwin-nat.c (darwin_pthread_kill): New function.
7091         (darwin_resume_thread): Use darwin_pthread_kill.
7092
7093 2018-07-05  Tom de Vries  <tdevries@suse.de>
7094
7095         * macroexp.c (macro_buffer) <operator=>: New member function.
7096
7097 2018-07-04  Tom Tromey  <tom@tromey.com>
7098
7099         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7100
7101 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7102
7103         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7104         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7105         * maint.c: Likewise.
7106         * top.c: Likewise.
7107
7108 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7109
7110         * NEWS: Create a new section for the next release branch.
7111         Rename the section of the current branch, now that it has
7112         been cut.
7113
7114 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7115
7116         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7117         * version.in: Bump version to 8.2.50.DATE-git.
7118
7119 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7120             Pedro Alves  <palves@redhat.com>
7121
7122         * linux-nat.c (linux_init_ptrace): Rename to ...
7123         (linux_init_ptrace_procfs): ... this.  Call
7124         linux_proc_init_warnings.
7125         (linux_nat_target::post_attach)
7126         (linux_nat_target::post_startup_inferior): Adjust.
7127         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7128         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7129
7130 2018-07-04  Tom de Vries  <tdevries@suse.de>
7131
7132         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7133         check ...
7134         (read_comp_unit_head): ... here.
7135
7136 2018-07-03  Tom Tromey  <tom@tromey.com>
7137
7138         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7139         (stop_tracing, tstatus_command)
7140         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7141         (print_one_static_tracepoint_marker): Update.
7142         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7143         std::vector.
7144         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7145         VEC.
7146         (all_tracepoints, static_tracepoints_here): Return std::vector.
7147
7148 2018-07-03  Tom Tromey  <tom@tromey.com>
7149
7150         * common/ptid.c (ptid_equal): Remove.
7151         * common/ptid.h (ptid_equal): Don't declare.
7152         * ada-tasks.c: Update.
7153         * breakpoint.c: Update.
7154         * common/agent.c: Update.
7155         * corelow.c: Update.
7156         * darwin-nat-info.c: Update.
7157         * darwin-nat.c: Update.
7158         * dcache.c: Update.
7159         * dtrace-probe.c: Update.
7160         * dummy-frame.c: Update.
7161         * fbsd-nat.c: Update.
7162         * frame.c: Update.
7163         * gdbthread.h: Update.
7164         * gnu-nat.c: Update.
7165         * go32-nat.c: Update.
7166         * inf-loop.c: Update.
7167         * inf-ptrace.c: Update.
7168         * infcall.c: Update.
7169         * infcmd.c: Update.
7170         * inflow.c: Update.
7171         * infrun.c: Update.
7172         * linux-fork.c: Update.
7173         * linux-nat.c: Update.
7174         * linux-thread-db.c: Update.
7175         * mi/mi-cmd-var.c: Update.
7176         * mi/mi-interp.c: Update.
7177         * mi/mi-main.c: Update.
7178         * nto-procfs.c: Update.
7179         * ppc-linux-tdep.c: Update.
7180         * procfs.c: Update.
7181         * python/py-inferior.c: Update.
7182         * python/py-record-btrace.c: Update.
7183         * python/py-record.c: Update.
7184         * ravenscar-thread.c: Update.
7185         * regcache.c: Update.
7186         * remote-sim.c: Update.
7187         * remote.c: Update.
7188         * sol-thread.c: Update.
7189         * solib.c: Update.
7190         * target.c: Update.
7191         * tui/tui-stack.c: Update.
7192         * varobj.c: Update.
7193         * windows-nat.c: Update.
7194         * windows-tdep.c: Update.
7195
7196 2018-07-03  Tom Tromey  <tom@tromey.com>
7197
7198         * common/ptid.c (ptid_match): Remove.
7199         * common/ptid.h (ptid_match): Don't declare.
7200         * fbsd-nat.c: Update.
7201         * infcmd.c: Update.
7202         * infrun.c: Update.
7203         * linux-nat.c: Update.
7204         * record-btrace.c: Update.
7205         * regcache.c: Update.
7206         * remote.c: Update.
7207
7208 2018-07-03  Tom Tromey  <tom@tromey.com>
7209
7210         * common/ptid.c (ptid_tid_p): Remove.
7211         * common/ptid.h (ptid_tid_p): Don't declare.
7212         * sol-thread.c: Update.
7213
7214 2018-07-03  Tom Tromey  <tom@tromey.com>
7215
7216         * common/ptid.c (ptid_lwp_p): Remove.
7217         * common/ptid.h (ptid_lwp_p): Don't declare.
7218         * fbsd-nat.c: Update.
7219         * linux-nat.c: Update.
7220         * nat/linux-procfs.c: Update.
7221         * nat/x86-linux-dregs.c: Update.
7222         * sol-thread.c: Update.
7223
7224 2018-07-03  Tom Tromey  <tom@tromey.com>
7225
7226         * common/ptid.c (ptid_is_pid): Remove.
7227         * common/ptid.h (ptid_is_pid): Don't declare.
7228         * infrun.c: Update.
7229         * linux-nat.c: Update.
7230         * mi/mi-interp.c: Update.
7231         * remote.c: Update.
7232         * thread.c: Update.
7233
7234 2018-07-03  Tom Tromey  <tom@tromey.com>
7235
7236         * common/ptid.c (ptid_get_tid): Remove.
7237         * common/ptid.h (ptid_get_tid): Don't declare.
7238         * ada-tasks.c: Update.
7239         * aix-thread.c: Update.
7240         * bsd-uthread.c: Update.
7241         * darwin-nat.c: Update.
7242         * fbsd-nat.c: Update.
7243         * i386-darwin-nat.c: Update.
7244         * infrun.c: Update.
7245         * linux-tdep.c: Update.
7246         * nto-procfs.c: Update.
7247         * ppc-ravenscar-thread.c: Update.
7248         * python/py-infthread.c: Update.
7249         * ravenscar-thread.c: Update.
7250         * sol-thread.c: Update.
7251         * sparc-ravenscar-thread.c: Update.
7252         * windows-nat.c: Update.
7253
7254 2018-07-03  Tom Tromey  <tom@tromey.com>
7255
7256         * common/ptid.c (ptid_get_lwp): Remove.
7257         * common/ptid.h (ptid_get_lwp): Don't declare.
7258         * aarch64-linux-nat.c: Update.
7259         * ada-tasks.c: Update.
7260         * aix-thread.c: Update.
7261         * amd64-linux-nat.c: Update.
7262         * arm-linux-nat.c: Update.
7263         * corelow.c: Update.
7264         * fbsd-nat.c: Update.
7265         * fbsd-tdep.c: Update.
7266         * gnu-nat.c: Update.
7267         * i386-cygwin-tdep.c: Update.
7268         * i386-gnu-nat.c: Update.
7269         * i386-linux-nat.c: Update.
7270         * ia64-linux-nat.c: Update.
7271         * inf-ptrace.c: Update.
7272         * infrun.c: Update.
7273         * linux-fork.c: Update.
7274         * linux-nat.c: Update.
7275         * linux-tdep.c: Update.
7276         * linux-thread-db.c: Update.
7277         * mips-linux-nat.c: Update.
7278         * nat/aarch64-linux-hw-point.c: Update.
7279         * nat/aarch64-linux.c: Update.
7280         * nat/linux-btrace.c: Update.
7281         * nat/linux-osdata.c: Update.
7282         * nat/linux-procfs.c: Update.
7283         * nat/x86-linux-dregs.c: Update.
7284         * obsd-nat.c: Update.
7285         * ppc-fbsd-nat.c: Update.
7286         * ppc-linux-nat.c: Update.
7287         * procfs.c: Update.
7288         * python/py-infthread.c: Update.
7289         * ravenscar-thread.c: Update.
7290         * remote.c: Update.
7291         * s390-linux-nat.c: Update.
7292         * sol-thread.c: Update.
7293         * sol2-tdep.c: Update.
7294         * spu-linux-nat.c: Update.
7295         * x86-linux-nat.c: Update.
7296         * xtensa-linux-nat.c: Update.
7297
7298 2018-07-03  Tom Tromey  <tom@tromey.com>
7299
7300         * common/ptid.c (ptid_get_pid): Remove.
7301         * common/ptid.h (ptid_get_pid): Don't declare.
7302         * aarch64-linux-nat.c: Update.
7303         * ada-lang.c: Update.
7304         * aix-thread.c: Update.
7305         * alpha-bsd-nat.c: Update.
7306         * amd64-fbsd-nat.c: Update.
7307         * amd64-linux-nat.c: Update.
7308         * arm-linux-nat.c: Update.
7309         * arm-nbsd-nat.c: Update.
7310         * auxv.c: Update.
7311         * break-catch-syscall.c: Update.
7312         * breakpoint.c: Update.
7313         * bsd-uthread.c: Update.
7314         * corelow.c: Update.
7315         * ctf.c: Update.
7316         * darwin-nat.c: Update.
7317         * fbsd-nat.c: Update.
7318         * fbsd-tdep.c: Update.
7319         * gcore.c: Update.
7320         * gnu-nat.c: Update.
7321         * hppa-nbsd-nat.c: Update.
7322         * hppa-obsd-nat.c: Update.
7323         * i386-fbsd-nat.c: Update.
7324         * ia64-linux-nat.c: Update.
7325         * inf-ptrace.c: Update.
7326         * infcmd.c: Update.
7327         * inferior.c: Update.
7328         * inferior.h: Update.
7329         * inflow.c: Update.
7330         * infrun.c: Update.
7331         * linux-fork.c: Update.
7332         * linux-nat.c: Update.
7333         * linux-tdep.c: Update.
7334         * linux-thread-db.c: Update.
7335         * m68k-bsd-nat.c: Update.
7336         * mi/mi-interp.c: Update.
7337         * mi/mi-main.c: Update.
7338         * mips-linux-nat.c: Update.
7339         * mips-nbsd-nat.c: Update.
7340         * mips64-obsd-nat.c: Update.
7341         * nat/aarch64-linux-hw-point.c: Update.
7342         * nat/aarch64-linux.c: Update.
7343         * nat/linux-btrace.c: Update.
7344         * nat/linux-osdata.c: Update.
7345         * nat/linux-procfs.c: Update.
7346         * nat/x86-linux-dregs.c: Update.
7347         * nto-procfs.c: Update.
7348         * obsd-nat.c: Update.
7349         * ppc-linux-nat.c: Update.
7350         * ppc-nbsd-nat.c: Update.
7351         * ppc-obsd-nat.c: Update.
7352         * proc-service.c: Update.
7353         * procfs.c: Update.
7354         * python/py-inferior.c: Update.
7355         * python/py-infthread.c: Update.
7356         * ravenscar-thread.c: Update.
7357         * record.c: Update.
7358         * remote-sim.c: Update.
7359         * remote.c: Update.
7360         * rs6000-nat.c: Update.
7361         * s390-linux-nat.c: Update.
7362         * sh-nbsd-nat.c: Update.
7363         * sol-thread.c: Update.
7364         * sparc-nat.c: Update.
7365         * sparc64-tdep.c: Update.
7366         * spu-linux-nat.c: Update.
7367         * spu-tdep.c: Update.
7368         * target-debug.h: Update.
7369         * target.c: Update.
7370         * thread.c: Update.
7371         * tid-parse.c: Update.
7372         * tracefile-tfile.c: Update.
7373         * vax-bsd-nat.c: Update.
7374         * windows-nat.c: Update.
7375         * x86-linux-nat.c: Update.
7376         * x86-nat.c: Update.
7377
7378 2018-07-03  Tom Tromey  <tom@tromey.com>
7379
7380         * common/ptid.c (pid_to_ptid): Remove.
7381         * common/ptid.h (pid_to_ptid): Don't declare.
7382         * aix-thread.c: Update.
7383         * arm-linux-nat.c: Update.
7384         * common/ptid.c: Update.
7385         * common/ptid.h: Update.
7386         * corelow.c: Update.
7387         * ctf.c: Update.
7388         * darwin-nat.c: Update.
7389         * fbsd-nat.c: Update.
7390         * fork-child.c: Update.
7391         * gnu-nat.c: Update.
7392         * go32-nat.c: Update.
7393         * inf-ptrace.c: Update.
7394         * infcmd.c: Update.
7395         * inferior.c: Update.
7396         * infrun.c: Update.
7397         * linux-fork.c: Update.
7398         * linux-nat.c: Update.
7399         * nat/aarch64-linux-hw-point.c: Update.
7400         * nat/fork-inferior.c: Update.
7401         * nat/x86-linux-dregs.c: Update.
7402         * nto-procfs.c: Update.
7403         * obsd-nat.c: Update.
7404         * procfs.c: Update.
7405         * progspace.c: Update.
7406         * remote.c: Update.
7407         * rs6000-nat.c: Update.
7408         * s390-linux-nat.c: Update.
7409         * sol-thread.c: Update.
7410         * spu-linux-nat.c: Update.
7411         * target.c: Update.
7412         * top.c: Update.
7413         * tracefile-tfile.c: Update.
7414         * windows-nat.c: Update.
7415
7416 2018-07-03  Tom Tromey  <tom@tromey.com>
7417
7418         * common/ptid.h (ptid_build): Don't declare.
7419         * common/ptid.c (ptid_build): Remove.
7420         * aix-thread.c: Update.
7421         * bsd-kvm.c: Update.
7422         * bsd-uthread.c: Update.
7423         * common/agent.c: Update.
7424         * common/ptid.c: Update.
7425         * common/ptid.h: Update.
7426         * corelow.c: Update.
7427         * darwin-nat.c: Update.
7428         * fbsd-nat.c: Update.
7429         * gnu-nat.c: Update.
7430         * linux-fork.c: Update.
7431         * linux-nat.c: Update.
7432         * linux-thread-db.c: Update.
7433         * nat/linux-osdata.c: Update.
7434         * nat/linux-procfs.c: Update.
7435         * nto-procfs.c: Update.
7436         * obsd-nat.c: Update.
7437         * proc-service.c: Update.
7438         * procfs.c: Update.
7439         * ravenscar-thread.c: Update.
7440         * remote-sim.c: Update.
7441         * remote.c: Update.
7442         * sol-thread.c: Update.
7443         * target.c: Update.
7444         * windows-nat.c: Update.
7445
7446 2018-07-03  Tom Tromey  <tom@tromey.com>
7447
7448         * infrun.c (follow_exec): Use exit_inferior_silent.
7449         * inferior.c (exit_inferior_num_silent): Remove.
7450         * inferior.h (exit_inferior_num_silent): Don't declare.
7451
7452 2018-07-03  Tom Tromey  <tom@tromey.com>
7453
7454         PR cli/23340:
7455         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7456         inferior_ptid on error.
7457
7458 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7459             Simon Marchi  <simon.marchi@polymtl.ca>
7460
7461         PR tdep/8282
7462         * disasm.h (gdb_disassembler): Add
7463         `m_disassembler_options_holder'. member
7464         * disasm.c (get_all_disassembler_options): New function.
7465         (gdb_disassembler::gdb_disassembler): Use it.
7466         (gdb_buffered_insn_length_init_dis): Likewise.
7467         (gdb_buffered_insn_length): Adjust accordingly.
7468         (set_disassembler_options): Handle options with arguments.
7469         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7470         line if showing options with descriptions.
7471         (disassembler_options_completer): Adapt to using the
7472         `disasm_options_and_args_t' structure.
7473         * mips-tdep.c (mips_disassembler_options): New variable.
7474         (mips_disassembler_options_o32): Likewise.
7475         (mips_disassembler_options_n32): Likewise.
7476         (mips_disassembler_options_n64): Likewise.
7477         (gdb_print_insn_mips): Don't set `disassembler_options'.
7478         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7479         functions.
7480         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7481         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7482         `gdbarch_disassembler_options_implicit' and
7483         `gdbarch_valid_disassembler_options'.
7484         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7485         `disasm_options_and_args_t' structure.
7486         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7487         method.
7488         (valid_disassembler_options): Switch from `disasm_options_t' to
7489         the `disasm_options_and_args_t' structure.
7490         * NEWS: Document `set disassembler-options' support for the MIPS
7491         target.
7492         * gdbarch.h: Regenerate.
7493         * gdbarch.c: Regenerate.
7494
7495 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7496
7497         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7498
7499 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7500
7501         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7502         parameter in call to amd64_target_description.
7503         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7504         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7505         (amd64fbsd_init_abi): Likewise.
7506         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7507         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7508         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7509         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7510
7511 2018-06-29  Pedro Alves  <palves@redhat.com>
7512
7513         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7514         "segments" parameter.
7515         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7516         (_initialize_amd64_tdep): Update call to
7517         amd64_create_target_description.
7518         (amd64_target_description): Add "segments" parameter.  Adjust
7519         the implementation to use it.
7520         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7521         call to amd64_create_target_description.
7522         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7523         * gdb/arch/amd64.h (amd64_create_target_description): Add
7524         "segments" register.
7525         * gdb/arch/amd64.c (amd64_create_target_description): Add
7526         "segments" parameter.  Call create_feature_i386_64bit_segments
7527         only if SEGMENTS is true.
7528         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7529         call to amd64_create_target_description.
7530
7531 2018-06-29  Pedro Alves  <palves@redhat.com>
7532
7533         * thread.c (thread_target_id_str): New, factored out from ...
7534         (print_thread_info_1): ... here.  Use it to compute the max
7535         "Target Id" column width.
7536
7537 2018-06-29  Pedro Alves  <palves@redhat.com>
7538
7539         * remote.c (remote_target::extra_thread_info): Delete
7540         'display_buf' and 'n' locals.  from the cache, regardless of
7541         packet mechanims is in use.  Use cache for qThreadExtra and qP
7542         methods too.
7543
7544 2018-06-29  Pedro Alves  <palves@redhat.com>
7545
7546         * blockframe.c (find_pc_sect_containing_function): New function.
7547         * breakpoint.c (print_breakpoint_location): Don't call
7548         find_pc_sect_function.
7549         * linespec.c (create_sals_line_offset): Record the location's
7550         symbol in the sal.
7551         * linespec.c (convert_address_location_to_sals): Fill in sal's
7552         symbol with find_pc_sect_containing_function.
7553         * symtab.c (find_function_start_sal): Rename to ...
7554         (find_function_start_sal_1): ... this.
7555         (find_function_start_sal): Reimplement as wrapper around
7556         find_function_start_sal_1, and use
7557         find_pc_sect_containing_function to fill in the sal's symbol.
7558         (find_function_start_sal(symbol*, bool)): Adjust.
7559         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7560         comments.
7561         (find_pc_sect_containing_function): Declare.
7562
7563 2018-06-29  Pedro Alves  <palves@redhat.com>
7564
7565         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7566         true if the the location has no symbol.
7567
7568 2018-06-28  Tom Tromey  <tom@tromey.com>
7569
7570         * NEWS: Mention --enable-codesign.
7571         * silent-rules.mk (ECHO_SIGN): New variable.
7572         * configure.ac: Add --enable-codesign.
7573         * configure: Rebuild.
7574         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7575         (gdb$(EXEEXT)): Optionally invoke codesign.
7576
7577 2018-06-28  Pedro Alves  <palves@redhat.com>
7578
7579         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7580         comments.
7581         (switch_to_thread_no_regs): Adjust comment.
7582         * infcmd.c (stop_pc): Delete.
7583         (post_create_inferior, info_program_command): Replace references
7584         to stop_pc with references to thread_info->suspend.stop_pc.
7585         * inferior.h (stop_pc): Delete declaration.
7586         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7587         (handle_inferior_event_1, handle_signal_stop)
7588         (process_event_stop_test, keep_going_stepped_thread)
7589         (handle_step_into_function, handle_step_into_function_backward)
7590         (print_stop_location): Replace references to stop_pc with
7591         references to thread_info->suspend.stop_pc.
7592         (struct infcall_suspend_state) <stop_pc>: Delete field.
7593         (save_infcall_suspend_state, restore_infcall_suspend_state):
7594         Remove references to inf_stat->stop_pc.
7595         * linux-fork.c (fork_load_infrun_state): Likewise.
7596         * record-btrace.c (record_btrace_set_replay): Likewise.
7597         * record-full.c (record_full_goto_entry): Likewise.
7598         * remote.c (print_one_stopped_thread): Likewise.
7599         * target.c (target_resume): Extend comment.
7600         * thread.c (set_executing_thread): New.
7601         (set_executing): Use it.
7602         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7603         Remove references to stop_pc.
7604
7605 2018-06-28  Pedro Alves  <palves@redhat.com>
7606
7607         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7608         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7609
7610 2018-06-28  Tom Tromey  <tom@tromey.com>
7611
7612         * coffread.c (coff_symfile_finish): Update.
7613         * xcoffread.c (xcoff_symfile_finish): Update.
7614         * elfread.c (elf_symfile_finish): Update.
7615         * symfile.h (dwarf2_free_objfile): Don't declare.
7616         * dwarf2read.c (_initialize_dwarf2_read): Use
7617         register_objfile_data_with_cleanup.
7618         (dwarf2_free_objfile): Now static.  Change signature.
7619
7620 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7621
7622         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7623         option "-o" to add-symbol-file-load to add an offset to each
7624         section's load address.
7625         * symfile.c (set_objfile_default_section_offset): New function.
7626
7627 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7628
7629         * symfile.c (add_symbol_file_command): Make sure that sections
7630         with the same name are sorted in the same order.
7631
7632 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7633
7634         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7635         require the second argument.  If omitted, load sections at the
7636         addresses specified in the file.
7637
7638 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7639
7640         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7641         (_initialize_symfile): Add option "-o" to symbol-file to add an
7642         offset to each section of the symbol file.
7643
7644 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7645
7646         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7647
7648 2018-06-27  Tom Tromey  <tom@tromey.com>
7649
7650         * stack.c (_initialize_stack): Update "func" help text.
7651
7652 2018-06-27  Tom Tromey  <tom@tromey.com>
7653
7654         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7655         std::vector.
7656         (unwind_infopy_str, pyuw_create_unwind_info)
7657         (unwind_infopy_add_saved_register, pyuw_sniffer)
7658         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7659         Update.
7660         (struct saved_reg): Add constructor.
7661         <value>: Now a gdbpy_ref<>.
7662
7663 2018-06-27  Tom Tromey  <tom@tromey.com>
7664
7665         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7666
7667 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7668
7669         * gdb-gdb.py.in: Format using autopep8.
7670
7671 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7672
7673         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7674         (type_lookup_function): Recognize CORE_ADDR values.
7675
7676 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7677
7678         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7679         print tag_name.
7680
7681 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7682
7683         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7684         <__lt__>: Add.
7685
7686 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7687
7688         * gdb-gdb.py: Move to...
7689         * gdb-gdb.py.in: ... here.
7690         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7691         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7692         dependencies.
7693         (distclean): Remove gdb-gdb.py when cleaning.
7694         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7695         * configure: Re-generate.
7696
7697 2018-06-27  Pedro Alves  <palves@redhat.com>
7698
7699         * proc-service.c (get_ps_regcache): New.
7700         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7701         (ps_lsetfpregs): Use it.
7702
7703 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7704
7705         PR gdb/21695
7706         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7707         declaration.
7708         (dwarf_decode_lines_1): Adjust.
7709
7710 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7711
7712         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7713         override.
7714         <info_proc>: Likewise.
7715
7716 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7717
7718         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7719         to windows_fetch_one_register, and only handle the case of
7720         fetching one register.  Move the code that reloads the context
7721         and iterates over all registers if R is negative to...
7722         (windows_nat_target::fetch_registers): ... here.
7723         (do_windows_store_inferior_registers): Rename to
7724         windows_store_one_register, and only handle the case of storing
7725         one register.  Move the code that handles the case where r is
7726         negative to...
7727         (windows_nat_target::store_registers) ... here.
7728
7729 2018-06-26  Tom Tromey  <tom@tromey.com>
7730
7731         PR rust/22574:
7732         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7733         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7734         Update.
7735         (rust_internal_print_type): Add podata parameter.
7736         (rust_print_type): Update.
7737
7738 2018-06-26  Tom Tromey  <tom@tromey.com>
7739
7740         * typeprint.h (struct print_offset_data) <update, finish,
7741         maybe_print_hole>: New methods.
7742         <indentation>: New constant.
7743         * typeprint.c (print_offset_data::indentation): Define.
7744         (print_offset_data::maybe_print_hole, print_offset_data::update)
7745         (print_offset_data::finish): Move from c-typeprint.c and rename.
7746         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7747         (print_spaces_filtered_with_print_options): Update.
7748         (c_print_type_union_field_offset, maybe_print_hole)
7749         (c_print_type_struct_field_offset): Move to typeprint.c and
7750         rename.
7751         (c_type_print_base_struct_union): Update.
7752
7753 2018-06-25  Pedro Alves  <palves@redhat.com>
7754
7755         * gdbthread.h (thread_info_ref, delete_thread)
7756         (delete_thread_silent, first_thread_of_inferior)
7757         (any_thread_of_inferior, switch_to_thread)
7758         (enable_thread_stack_temporaries)
7759         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7760         (get_last_thread_stack_temporary)
7761         (value_in_thread_stack_temporaries, can_access_registers_thread):
7762         Spell out "struct thread_info" instead of just "thread_info".
7763         * inferior.h (notice_new_inferior): Likewise.
7764
7765 2018-06-25  Pedro Alves  <palves@redhat.com>
7766
7767         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7768         pass thread_info pointer to delete_thread.
7769         (windows_nat_target::detach): Pass inferior pointer to
7770         detach_inferior.
7771         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7772         delete_thread.
7773         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7774         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7775         and pass a thread_info pointer to delete_thread.
7776         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7777         pass thread_info pointer to delete_thread.
7778         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7779         delete_thread_silent call.
7780         * procfs.c (procfs_target::detach): Pass inferior pointer to
7781         detach_inferior.
7782         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7783         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7784         delete_thread_silent call.
7785         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7786         pass thread_info pointer to delete_thread.
7787         (windows_nat_target::detach): Pass inferior pointer to
7788         delete_inferior.
7789
7790 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7791
7792         * regcache.c (readable_regcache::read_part): Fix asserts.
7793         (reg_buffer::raw_collect_part): New function.
7794         (regcache::write_part): Fix asserts.
7795         (reg_buffer::raw_supply_part): New function.
7796         (regcache::transfer_regset_register): New helper function.
7797         (regcache::transfer_regset): Call new functions.
7798         (regcache_supply_regset): Use gdb_byte*.
7799         (regcache::supply_regset): Likewise.
7800         (regcache_collect_regset): Likewise.
7801         (regcache::collect_regset): Likewise.
7802         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7803         (reg_buffer::raw_supply_part): Likewise.
7804         (regcache::transfer_regset_register): Likewise.
7805         (regcache::transfer_regset): Use gdb_byte*.
7806
7807 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7808
7809         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7810
7811 2018-06-21  Pedro Alves  <palves@redhat.com>
7812
7813         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7814         instead of a ptid_t.  All callers adjusted.
7815         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7816         adjusted.
7817         (print_ada_task_info, display_current_task_id, task_command_1):
7818         Adjust.
7819         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7820         inferior_thread.
7821         (breakpoint_kind): Adjust.
7822         (remove_breakpoints_pid): Rename to ...
7823         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7824         pointer.  All callers adjusted.
7825         (bpstat_clear_actions): Use inferior_thread.
7826         (get_bpstat_thread): New.
7827         (bpstat_do_actions): Use it.
7828         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7829         to take a thread_info pointer.  All callers adjusted.
7830         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7831         (breakpoint_re_set_thread): Use inferior_thread.
7832         * breakpoint.h (struct inferior): Forward declare.
7833         (bpstat_stop_status): Update.
7834         (remove_breakpoints_pid): Delete.
7835         (remove_breakpoints_inf): New.
7836         * bsd-uthread.c (bsd_uthread_target::wait)
7837         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7838         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7839         (maint_btrace_packet_history_cmd)
7840         (maint_btrace_clear_packet_history_cmd): Adjust.
7841         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7842         inferior_thread.
7843         * cli/cli-interp.c: Include "inferior.h".
7844         * common/refcounted-object.h (struct
7845         refcounted_object_ref_policy): New.
7846         * compile/compile-object-load.c: Include gdbthread.h.
7847         (store_regs): Use inferior_thread.
7848         * corelow.c (core_target::close): Use current_inferior.
7849         (core_target_open): Adjust to use first_thread_of_inferior and use
7850         the current inferior.
7851         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7852         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7853         <thread>: ... this new field.  All references adjusted.
7854         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7855         Take a thread_info pointer instead of a ptid_t.
7856         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7857         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7858         thread_info pointer instead of a ptid_t.
7859         * elfread.c: Include "inferior.h".
7860         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7861         Use inferior_thread.
7862         * eval.c (evaluate_subexp): Likewise.
7863         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7864         inferior_thread.
7865         * gdb_proc_service.h (struct thread_info): Forward declare.
7866         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7867         <thread>: ... this new field.  All references adjusted.
7868         * gdbarch.h, gdbarch.c: Regenerate.
7869         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7870         'thread' parameter.  All implementations and callers adjusted.
7871         * gdbthread.h (thread_info) <set_running>: New method.
7872         (delete_thread, delete_thread_silent): Take a thread_info pointer
7873         instead of a ptid.
7874         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7875         (first_thread_of_process): Delete, replaced by ...
7876         (first_thread_of_inferior): ... this new function.  All callers
7877         adjusted.
7878         (any_live_thread_of_process): Delete, replaced by ...
7879         (any_live_thread_of_inferior): ... this new function.  All callers
7880         adjusted.
7881         (switch_to_thread, switch_to_no_thread): Declare.
7882         (is_executing): Delete.
7883         (enable_thread_stack_temporaries): Update comment.
7884         <enable_thread_stack_temporaries>: Take a thread_info pointer
7885         instead of a ptid_t.  Incref the thread.
7886         <~enable_thread_stack_temporaries>: Decref the thread.
7887         <m_ptid>: Delete
7888         <m_thr>: New.
7889         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7890         (get_last_thread_stack_temporary)
7891         (value_in_thread_stack_temporaries, can_access_registers_thread):
7892         Take a thread_info pointer instead of a ptid_t.  All callers
7893         adjusted.
7894         * infcall.c (get_call_return_value): Use inferior_thread.
7895         (run_inferior_call): Work with thread pointers instead of ptid_t.
7896         (call_function_by_hand_dummy): Work with thread pointers instead
7897         of ptid_t.  Use thread_info_ref.
7898         * infcmd.c (proceed_thread_callback): Access thread's state
7899         directly.
7900         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7901         access thread's state directly.
7902         (continue_command): Use inferior_thread.
7903         (info_program_command): Use find_thread_ptid and access thread
7904         state directly.
7905         (proceed_after_attach_callback): Use thread state directly.
7906         (notice_new_inferior): Take a thread_info pointer instead of a
7907         ptid_t.  All callers adjusted.
7908         (exit_inferior): Take an inferior pointer instead of a pid.  All
7909         callers adjusted.
7910         (exit_inferior_silent): New.
7911         (detach_inferior): Delete.
7912         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7913         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7914         (detach_inferior_command, kill_inferior_command): Use
7915         find_inferior_id instead of valid_gdb_inferior_id and
7916         gdb_inferior_id_to_pid.
7917         (inferior_command): Use inferior and thread pointers.
7918         * inferior.h (struct thread_info): Forward declare.
7919         (notice_new_inferior): Take a thread_info pointer instead of a
7920         ptid_t.  All callers adjusted.
7921         (detach_inferior): Delete declaration.
7922         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7923         instead of a pid.  All callers adjusted.
7924         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7925         (valid_gdb_inferior_id): Delete.
7926         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7927         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7928         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7929         ...
7930         <inf>: ... this new field.
7931         <step_ptid>: Delete, replaced by ...
7932         <step_thread>: ... this new field.
7933         (get_displaced_stepping_state): Take an inferior pointer instead
7934         of a pid.  All callers adjusted.
7935         (displaced_step_in_progress_any_inferior): Adjust.
7936         (displaced_step_in_progress_thread): Take a thread pointer instead
7937         of a ptid_t.  All callers adjusted.
7938         (displaced_step_in_progress, add_displaced_stepping_state): Take
7939         an inferior pointer instead of a pid.  All callers adjusted.
7940         (get_displaced_step_closure_by_addr): Adjust.
7941         (remove_displaced_stepping_state): Take an inferior pointer
7942         instead of a pid.  All callers adjusted.
7943         (displaced_step_prepare_throw, displaced_step_prepare)
7944         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7945         All callers adjusted.
7946         (start_step_over): Adjust.
7947         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7948         displaced step queue.
7949         (do_target_resume): Adjust.
7950         (fetch_inferior_event): Use inferior_thread.
7951         (context_switch, get_inferior_stop_soon): Take an
7952         execution_control_state pointer instead of a ptid_t.  All callers
7953         adjusted.
7954         (switch_to_thread_cleanup): Delete.
7955         (stop_all_threads): Use scoped_restore_current_thread.
7956         * inline-frame.c: Include "gdbthread.h".
7957         (inline_state) <inline_state>: Take a thread pointer instead of a
7958         ptid_t.  All callers adjusted.
7959         <ptid>: Delete, replaced by ...
7960         <thread>: ... this new field.
7961         (find_inline_frame_state): Take a thread pointer instead of a
7962         ptid_t.  All callers adjusted.
7963         (skip_inline_frames, step_into_inline_frame)
7964         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7965         pointer instead of a ptid_t.  All callers adjusted.
7966         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7967         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7968         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7969         pointers directly.
7970         * linux-nat.c (get_detach_signal): Likewise.
7971         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7972         (thread_db_notice_clone): Adjust.
7973         (thread_db_find_new_threads_silently)
7974         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7975         a thread pointer instead of a ptid_t.  All callers adjusted.
7976         * mi/mi-cmd-var.c: Include "inferior.h".
7977         (mi_cmd_var_update_iter): Update to use thread pointers.
7978         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7979         inferior directly.
7980         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7981         out to ...
7982         (mi_output_running): ... this new function.
7983         (mi_on_resume_1): Adjust to use it.
7984         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7985         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7986         directly.
7987         (interrupt_thread_callback): : Adjust to use thread and inferior
7988         pointers.
7989         * proc-service.c: Include "gdbthread.h".
7990         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7991         * progspace-and-thread.c: Include "inferior.h".
7992         * progspace.c: Include "inferior.h".
7993         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7994         hold a reference to an inferior_object.
7995         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7996         inferior_thread.
7997         * python/py-inferior.c (struct inferior_object): Give the type a
7998         tag name instead of a typedef.
7999         (python_on_normal_stop): No need to check if the current thread is
8000         listed.
8001         (inferior_to_inferior_object): Change return type to
8002         inferior_object.  All callers adjusted.
8003         (find_thread_object): Delete, bits factored out to ...
8004         (thread_to_thread_object): ... this new function.
8005         * python/py-infthread.c (create_thread_object): Use
8006         inferior_to_inferior_object.
8007         (thpy_is_stopped): Use thread pointer directly.
8008         (gdbpy_selected_thread): Use inferior_thread.
8009         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
8010         field, replaced with ...
8011         <thread>: ... this new field.  All users adjusted.
8012         (btpy_insn_or_gap_new): Drop const.
8013         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
8014         callers adjusted.
8015         * python/py-record.c: Include "gdbthread.h".
8016         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8017         a ptid_t.  All callers adjusted.
8018         (gdbpy_current_recording): Use inferior_thread.
8019         * python/py-record.h (recpy_record_object) <ptid>: Delete
8020         field, replaced with ...
8021         <thread>: ... this new field.  All users adjusted.
8022         (recpy_element_object) <ptid>: Delete
8023         field, replaced with ...
8024         <thread>: ... this new field.  All users adjusted.
8025         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
8026         a ptid_t.  All callers adjusted.
8027         * python/py-threadevent.c: Include "gdbthread.h".
8028         (get_event_thread): Use thread_to_thread_object.
8029         * python/python-internal.h (struct inferior_object): Forward
8030         declare.
8031         (find_thread_object, find_inferior_object): Delete declarations.
8032         (thread_to_thread_object, inferior_to_inferior_object): New
8033         declarations.
8034         * record-btrace.c: Include "inferior.h".
8035         (require_btrace_thread): Use inferior_thread.
8036         (record_btrace_frame_sniffer)
8037         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
8038         (get_thread_current_frame): Use scoped_restore_current_thread and
8039         switch_to_thread.
8040         (get_thread_current_frame): Use thread pointer directly.
8041         (record_btrace_replay_at_breakpoint): Use thread's inferior
8042         pointer directly.
8043         * record-full.c: Include "inferior.h".
8044         * regcache.c: Include "gdbthread.h".
8045         (get_thread_arch_regcache): Use the inferior's address space
8046         directly.
8047         (get_thread_regcache, registers_changed_thread): New.
8048         * regcache.h (get_thread_regcache(thread_info *thread)): New
8049         overload.
8050         (registers_changed_thread): New.
8051         (remote_target) <remote_detach_1>: Swap order of parameters.
8052         (remote_add_thread): <remote_add_thread>: Return the new thread.
8053         (get_remote_thread_info(ptid_t)): New overload.
8054         (remote_target::remote_notice_new_inferior): Use thread pointers
8055         directly.
8056         (remote_target::process_initial_stop_replies): Use
8057         thread_info::set_running.
8058         (remote_target::remote_detach_1, remote_target::detach)
8059         (extended_remote_target::detach): Adjust.
8060         * stack.c (frame_show_address): Use inferior_thread.
8061         * target-debug.h (target_debug_print_thread_info_pp): New.
8062         * target-delegates.c: Regenerate.
8063         * target.c (default_thread_address_space): Delete.
8064         (memory_xfer_partial_1): Use current_inferior.
8065         (target_detach): Use current_inferior.
8066         (target_thread_address_space): Delete.
8067         (generic_mourn_inferior): Use current_inferior.
8068         * target.h (struct target_ops) <thread_address_space>: Delete.
8069         (target_thread_address_space): Delete.
8070         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
8071         pointers directly.
8072         (delete_thread_1, delete_thread, delete_thread_silent): Take a
8073         thread pointer instead of a ptid_t.  Adjust all callers.
8074         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
8075         (first_thread_of_process): Delete, replaced by ...
8076         (first_thread_of_inferior): ... this new function.  All callers
8077         adjusted.
8078         (any_thread_of_process): Rename to ...
8079         (any_thread_of_inferior): ... this, and take an inferior pointer.
8080         (any_live_thread_of_process): Rename to ...
8081         (any_live_thread_of_inferior): ... this, and take an inferior
8082         pointer.
8083         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
8084         (value_in_thread_stack_temporaries)
8085         (get_last_thread_stack_temporary): Take a thread pointer instead
8086         of a ptid_t.  Adjust all callers.
8087         (thread_info::set_running): New.
8088         (validate_registers_access): Use inferior_thread.
8089         (can_access_registers_ptid): Rename to ...
8090         (can_access_registers_thread): ... this, and take a thread
8091         pointer.
8092         (print_thread_info_1): Adjust to compare thread pointers instead
8093         of ptids.
8094         (switch_to_no_thread, switch_to_thread): Make extern.
8095         (scoped_restore_current_thread::~scoped_restore_current_thread):
8096         Use m_thread pointer directly.
8097         (scoped_restore_current_thread::scoped_restore_current_thread):
8098         Use inferior_thread.
8099         (thread_command): Use thread pointer directly.
8100         (thread_num_make_value_helper): Use inferior_thread.
8101         * top.c (execute_command): Use inferior_thread.
8102         * tui/tui-interp.c: Include "inferior.h".
8103         * varobj.c (varobj_create): Use inferior_thread.
8104         (value_of_root_1): Use find_thread_global_id instead of
8105         global_thread_id_to_ptid.
8106
8107 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8108
8109         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8110         possible.
8111         (regcache::write_part): Likewise.
8112         (readable_regcache::cooked_read_part): Update comment.
8113         (readable_regcache::cooked_write_part): Likewise.
8114         * regcache.h: (readable_regcache::read_part): Likewise.
8115         (regcache::write_part): Likewise.
8116
8117 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8118             Dirk Schubert  <dirk.schubert@arm.com>
8119
8120         * aarch64-linux-nat.c (post_attach): New.
8121         (aarch64_linux_nat_target::post_attach): Override post_attach to
8122         record the number of hardware debug registers.
8123
8124 2018-06-20  Tom Tromey  <tom@tromey.com>
8125
8126         * python/py-param.c (add_setshow_generic): Make parameters const.
8127         (parmpy_init): Update.
8128
8129 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8130
8131         * regcache.h (regcache_cooked_read_ftype): Rename to...
8132         (register_read_ftype): ...this, change type to function_view.
8133         (class reg_buffer) <save>: Remove src parameter.
8134         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8135         parameter non-const in first overload.  Remove src parameter in
8136         second overload.
8137         * regcache.c (do_cooked_read): Remove.
8138         (readonly_detached_regcache::readonly_detached_regcache): Make
8139         parameter non-const, adjust call to other constructor.
8140         (reg_buffer::save): Remove src parameter.
8141         * frame.c (do_frame_register_read): Remove.
8142         (frame_save_as_regcache): Use lambda function.
8143         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8144         parameter to ppu2spu_data *.
8145         (ppu2spu_sniffer): Use lambda function.
8146
8147 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8148
8149         * record-full.c (record_full_target::insert_breakpoint): Remove
8150         "struct" keyword, add const.
8151
8152 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8153
8154         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8155         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8156         * configure.ac: Remove AC_PREREQ, add missing quoting.
8157         * gnulib/configure.ac: Modernize usage of
8158         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8159         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8160         (AUTOMAKE_VERSION): Bump to 1.15.1.
8161         * configure: Re-generate.
8162         * config.in: Re-generate.
8163         * aclocal.m4: Re-generate.
8164         * gnulib/aclocal.m4: Re-generate.
8165         * gnulib/config.in: Re-generate.
8166         * gnulib/configure: Re-generate.
8167         * gnulib/import/Makefile.in: Re-generate.
8168
8169 2018-06-19  Pedro Alves  <palves@redhat.com>
8170
8171         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8172         (lookup_minimal_symbol_by_pc_section): ... here with
8173         gdb_assert_not_reached added.
8174
8175 2018-06-19  Pedro Alves  <palves@redhat.com>
8176
8177         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8178         parameter with a block parameter.  Compare location's block symbol
8179         with the frame's block instead of addresses.
8180         (skip_inline_frames): Pass the current block instead of the
8181         frame's address.  Break out as soon as we determine the frame
8182         should not be skipped.
8183
8184 2018-06-18  Tom Tromey  <tom@tromey.com>
8185
8186         * solib-aix.c (solib_aix_get_section_offsets): Return
8187         unique_xmalloc_ptr.
8188         (solib_aix_solib_create_inferior_hook): Update.
8189
8190 2018-06-18  Tom Tromey  <tom@tromey.com>
8191
8192         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8193
8194 2018-06-18  Tom Tromey  <tom@tromey.com>
8195
8196         * solib-frv.c (frv_relocate_main_executable): Use
8197         unique_xmalloc_ptr.
8198         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8199         unique_xmalloc_ptr.
8200
8201 2018-06-18  Tom Tromey  <tom@tromey.com>
8202
8203         * objfiles.h (inhibit_section_map_updates): Update.
8204         (resume_section_map_updates, resume_section_map_updates_cleanup):
8205         Remove.
8206         * solib-svr4.c (svr4_handle_solib_event): Update.
8207         * objfiles.c (inhibit_section_map_updates): Return
8208         scoped_restore_tmpl<int>.
8209         (resume_section_map_updates, resume_section_map_updates_cleanup):
8210         Remove.
8211
8212 2018-06-18  Tom Tromey  <tom@tromey.com>
8213
8214         * valprint.h (read_string): Update.
8215         * valprint.c (read_string): Change type of "buffer".
8216         (val_print_string): Update.
8217         * python/py-value.c (valpy_string): Update.
8218         * language.h (struct language_defn) <la_get_string>: Change
8219         type of "buffer".
8220         (default_get_string, c_get_string): Update.
8221         * language.c (default_get_string): Change type of "buffer".
8222         * guile/scm-value.c (gdbscm_value_to_string): Update.
8223         * c-lang.c (c_get_string): Change type of "buffer".
8224
8225 2018-06-18  Tom Tromey  <tom@tromey.com>
8226
8227         * ser-mingw.c (struct pipe_state_destroyer): New.
8228         (pipe_state_up): New typedef.
8229         (cleanup_pipe_state): Remove.
8230         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8231
8232 2018-06-18  Tom Tromey  <tom@tromey.com>
8233
8234         * rust-lang.h (rust_yyerror): Don't declare.
8235         * rust-lang.c (rust_language_defn): Update.
8236         * rust-exp.y (yyerror): Now static.
8237         * parse.c (parse_exp_in_context_1): Update.
8238         * p-lang.h (p_yyerror): Don't declare.
8239         * p-lang.c (p_language_defn): Update.
8240         * p-exp.y (yyerror): Now static.
8241         * opencl-lang.c (opencl_language_defn): Update.
8242         * objc-lang.c (objc_language_defn): Update.
8243         * m2-lang.h (m2_yyerror): Don't declare.
8244         * m2-lang.c (m2_language_defn): Update.
8245         * m2-exp.y (yyerror): Now static.
8246         * language.h (struct language_defn) <la_error>: Remove.
8247         * language.c (unk_lang_error): Remove.
8248         (unknown_language_defn, auto_language_defn): Remove.
8249         * go-lang.h (go_yyerror): Don't declare.
8250         * go-lang.c (go_language_defn): Update.
8251         * go-exp.y (yyerror): Now static.
8252         * f-lang.h (f_yyerror): Don't declare.
8253         * f-lang.c (f_language_defn): Update.
8254         * f-exp.y (yyerror): Now static.
8255         * d-lang.h (d_yyerror): Don't declare.
8256         * d-lang.c (d_language_defn): Update.
8257         * d-exp.y (yyerror): Now static.
8258         * c-lang.h (c_yyerror): Don't declare.
8259         * c-lang.c (c_language_defn, cplus_language_defn)
8260         (asm_language_defn, minimal_language_defn): Update.
8261         * c-exp.y (yyerror): Now static.
8262         * ada-lang.h (ada_yyerror): Don't declare.
8263         * ada-lang.c (ada_language_defn): Update.
8264         * ada-exp.y (yyerror): Now static.
8265
8266 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8267
8268         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8269         (store_sveregs_to_thread): Likewise.
8270         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8271         (aarch64_linux_store_inferior_registers): Likewise.
8272         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8273         function.
8274         (aarch64_sve_regs_copy_to_regcache): Likewise.
8275         (aarch64_sve_regs_copy_from_regcache): Likewise.
8276         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8277         declaration.
8278         (aarch64_sve_regs_copy_to_regcache): Likewise.
8279         (aarch64_sve_regs_copy_from_regcache): Likewise.
8280         (sve_context): Structure from Linux headers.
8281         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8282         (SVE_SIG_ZREG_SIZE): Likewise.
8283         (SVE_SIG_PREG_SIZE): Likewise.
8284         (SVE_SIG_FFR_SIZE): Likewise.
8285         (SVE_SIG_REGS_OFFSET): Likewise.
8286         (SVE_SIG_ZREGS_OFFSET): Likewise.
8287         (SVE_SIG_ZREG_OFFSET): Likewise.
8288         (SVE_SIG_ZREGS_SIZE): Likewise.
8289         (SVE_SIG_PREGS_OFFSET): Likewise.
8290         (SVE_SIG_PREG_OFFSET): Likewise.
8291         (SVE_SIG_PREGS_SIZE): Likewise.
8292         (SVE_SIG_FFR_OFFSET): Likewise.
8293         (SVE_SIG_REGS_SIZE): Likewise.
8294         (SVE_SIG_CONTEXT_SIZE): Likewise.
8295         (SVE_PT_REGS_MASK): Likewise.
8296         (SVE_PT_REGS_FPSIMD): Likewise.
8297         (SVE_PT_REGS_SVE): Likewise.
8298         (SVE_PT_VL_INHERIT): Likewise.
8299         (SVE_PT_VL_ONEXEC): Likewise.
8300         (SVE_PT_REGS_OFFSET): Likewise.
8301         (SVE_PT_FPSIMD_OFFSET): Likewise.
8302         (SVE_PT_FPSIMD_SIZE): Likewise.
8303         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8304         (SVE_PT_SVE_PREG_SIZE): Likewise.
8305         (SVE_PT_SVE_FFR_SIZE): Likewise.
8306         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8307         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8308         (__SVE_SIG_TO_PT): Likewise.
8309         (SVE_PT_SVE_OFFSET): Likewise.
8310         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8311         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8312         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8313         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8314         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8315         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8316         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8317         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8318         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8319         (SVE_PT_SVE_SIZE): Likewise.
8320         (SVE_PT_SIZE): Likewise.
8321         (HAS_SVE_STATE): New define.
8322
8323 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8324
8325         * nat/aarch64-sve-linux-sigcontext.h: New file.
8326         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8327         new files.
8328         (SVE_VQ_MIN): Likewise.
8329         (SVE_VQ_MAX): Likewise.
8330         (SVE_VL_MIN): Likewise.
8331         (SVE_VL_MAX): Likewise.
8332         (SVE_NUM_ZREGS): Likewise.
8333         (SVE_NUM_PREGS): Likewise.
8334         (sve_vl_valid): Likewise.
8335         (struct user_sve_header): Likewise.
8336
8337 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8338             Richard Bunt <Richard.Bunt@arm.com>
8339
8340         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8341         was requested by GDB.
8342
8343 2018-06-15  Tom de Vries  <tdevries@suse.de>
8344
8345         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8346
8347 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8348
8349         * gnulib/update-gnulib.sh: Print expected versions of
8350         autoconf/aclocal.
8351
8352 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8353
8354         * arch-utils.c (default_type_align): Use type_length_units.
8355         * gdbtypes.c (type_align): Use type_length_units.
8356
8357 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8358
8359         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8360         of 'define' command.
8361
8362 2018-06-14  Tom de Vries  <tdevries@suse.de>
8363
8364         PR cli/22573
8365         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8366         get_no_prettyformat_print_options.
8367
8368 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8369
8370         * sparc-nat.h: Include target.h.
8371         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8372         <fetch_registers>: Remove this argument in function call.
8373         <store_registers>: Remove this argument in function call, remove
8374         extra semicolon.
8375         <low_forget_process>: Call sparc64_forget_process instead of
8376         sparc_forget_process.
8377
8378 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8379
8380         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8381         (procfs_target::make_corefile_notes): Adjust to new
8382         target_read_alloc return type.
8383
8384 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8385             Stephen Roberts  <stephen.roberts@arm.com>
8386
8387         PR gdb/22882
8388         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8389         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8390         Move should_notify_stop local into more inner scope.
8391
8392 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8393             Stephen Roberts  <stephen.roberts@arm.com>
8394
8395         PR gdb/22882
8396         * infrun.c (resume_1): Add call to mark_async_event_handler.
8397
8398 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8399
8400         * infrun.c (do_target_wait): Change old version of $pc printed.
8401
8402 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8403
8404         * dwarf2read.c (read_index_from_section): Rename to...
8405         (read_gdb_index_from_section): ... this, update all callers.
8406         (dwarf2_read_index): Rename to...
8407         (dwarf2_read_gdb_index): ... this, update all callers.
8408
8409 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8410
8411         * hppa-linux-nat.c
8412         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8413         hppa_linux_nat_target::fetch_registers.
8414
8415 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8416
8417         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8418         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8419         (AARCH64_DWARF_SVE_FFR): Likewise.
8420         (AARCH64_DWARF_SVE_P0): Likewise.
8421         (AARCH64_DWARF_SVE_Z0): Likewise.
8422
8423 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8424
8425         * common/common-regcache.h (raw_compare): New function.
8426         * regcache.c (regcache::raw_compare): Likewise.
8427         * regcache.h (regcache::raw_compare): New declaration.
8428
8429 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8430
8431         * common/common-regcache.h (reg_buffer_common): New structure.
8432         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8433         (reg_buffer::raw_supply): Likewise.
8434         (reg_buffer::raw_supply_integer): Likewise.
8435         (reg_buffer::raw_supply_zeroed): Likewise.
8436         (reg_buffer::raw_collect): Likewise.
8437         (reg_buffer::raw_collect_integer): Likewise.
8438         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8439         (reg_buffer::raw_supply): Likewise.
8440         (reg_buffer::raw_supply_integer): Likewise.
8441         (reg_buffer::raw_supply_zeroed): Likewise.
8442         (reg_buffer::raw_collect): Likewise.
8443         (reg_buffer::raw_collect_integer): Likewise.
8444
8445 2018-06-10  Tom Tromey  <tom@tromey.com>
8446
8447         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8448         (class remote_state) <stop_reply_queue>: Now std::vector.
8449         (remote_state::~remote_state)
8450         (remote_target::stop_reply_queue_length): Update.
8451         (struct queue_iter_param, remove_child_of_pending_fork)
8452         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8453         (check_pending_event_prevents_wildcard_vcont_callback)
8454         (remove_stop_reply_for_inferior)
8455         (remove_stop_reply_of_remote_state)
8456         (remote_notif_remove_once_on_match)
8457         (stop_reply_match_ptid_and_ws)
8458         (remote_kill_child_of_pending_fork): Remove.
8459         (remote_target::remove_new_fork_children)
8460         (remote_target::check_pending_events_prevent_wildcard_vcont)
8461         (remote_target::discard_pending_stop_replies)
8462         (remote_target::discard_pending_stop_replies_in_queue)
8463         (remote_target::remote_notif_remove_queued_reply)
8464         (remote_target::queued_stop_reply)
8465         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8466         (remote_target::wait, remote_target::kill_new_fork_children)
8467         (remote_target::async): Update.
8468
8469 2018-06-10  Tom Tromey  <tom@tromey.com>
8470
8471         * record-full.c (record_full_arch_list_cleanups): Remove.
8472         (record_full_message): Use try/catch.
8473         (record_full_wait_cleanups): Remove.
8474         (record_full_wait_1): Use try/catch.
8475         (record_full_restore): Likewise.
8476
8477 2018-06-10  Tom Tromey  <tom@tromey.com>
8478
8479         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8480         declare VEC.  Add constructor.
8481         <in_target_beneath>: Now bool.
8482         (record_full_breakpoints): Now a std::vector, static.
8483         (record_full_sync_record_breakpoints)
8484         (record_full_init_record_breakpoints)
8485         (record_full_target::insert_breakpoint)
8486         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8487
8488 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8489
8490         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8491         * serial.c (serial_interface_lookup): Remove struct keyword.
8492
8493 2018-06-10  Tom Tromey  <tom@tromey.com>
8494
8495         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8496         method.
8497         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8498         a method.
8499         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8500         method.
8501         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8502         "beneath" as a method.
8503         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8504         Use "beneath" as a method.
8505
8506 2018-06-10  Tom Tromey  <tom@tromey.com>
8507
8508         * tracefile.c (struct trace_file_writer_deleter): New.
8509         <operator()>: Rename from trace_file_writer_xfree.
8510         (trace_file_writer_up): New typedef.
8511         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8512
8513 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8514
8515         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8516         <m_registers, m_register_status>: Change type to
8517         std::unique_ptr.
8518         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8519         XCNEWVEC.
8520
8521 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8522
8523         * common/common-regcache.h (enum register_status): Add
8524         underlying type "signed char".
8525         * regcache.h (reg_buffer) <m_register_status>: Change type to
8526         register_status *.
8527         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8528         register_status instead of signed char.
8529         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8530         (reg_buffer::get_register_status): Remove cast.
8531         (readable_regcache::raw_read): Remove cast.
8532         (readable_regcache::cooked_read): Remove cast.
8533
8534 2018-06-09  Tom Tromey  <tom@tromey.com>
8535
8536         * source.c (reverse_search_command, forward_search_command): Use
8537         scoped_fd.
8538
8539 2018-06-09  Tom Tromey  <tom@tromey.com>
8540
8541         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8542         (serial_ops_list): Now static, std::vector.
8543         (serial_interface_lookup, serial_add_interface): Update.
8544
8545 2018-06-09  Tom Tromey  <tom@tromey.com>
8546
8547         * dwarf2read.c (process_cu_includes): Update.
8548         (process_full_comp_unit): Update.
8549         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8550         std::vector.
8551
8552 2018-06-08  Paul Koning  <paul_koning@dell.com>
8553
8554         PR gdb/23252
8555
8556         * python/python.c (do_start_initialization):
8557         Avoid call to internal Python API.
8558         (init__gdb_module): New function.
8559
8560 2018-06-08  Gary Benson <gbenson@redhat.com>
8561
8562         * linux-thread-db.c (valprint.h): New include.
8563         (struct check_thread_db_info): New structure.
8564         (check_thread_db_on_load, tdb_testinfo): New static globals.
8565         (check_thread_db, check_thread_db_callback): New functions.
8566         (try_thread_db_load_1): Run integrity checks if requested.
8567         (maintenance_check_libthread_db): New function.
8568         (_initialize_thread_db): Register "maint check libthread-db"
8569         and "maint set/show check-libthread-db".
8570         * NEWS: Mention the above new commands.
8571
8572 2018-06-08  Tom Tromey  <tom@tromey.com>
8573
8574         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8575         now a method.
8576
8577 2018-06-08  Tom Tromey  <tom@tromey.com>
8578
8579         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8580
8581 2018-06-08  Tom Tromey  <tom@tromey.com>
8582
8583         * common/btrace-common.h (struct btrace_data): Add constructor,
8584         destructor, move assignment operator.
8585         <empty, clear, fini>: New methods.
8586         <format>: Initialize.
8587         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8588         (btrace_data_empty): Don't declare.
8589         * common/btrace-common.c (btrace_data_init): Remove.
8590         (btrace_data::fini): Rename from btrace_data_fini.
8591         (btrace_data::empty): Rename from btrace_data_empty.
8592         (btrace_data::clear): Rename from btrace_data_clear.  Return
8593         bool.
8594         * btrace.h (make_cleanup_btrace_data): Don't declare.
8595         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8596         (parse_xml_btrace): Update.
8597         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8598         (maint_btrace_clear_packet_history_cmd): Update.
8599
8600 2018-06-07  Pedro Alves  <palves@redhat.com>
8601
8602         * target.h (target_ops) <beneath>: Now a method.  All references
8603         updated.
8604         (class target_stack): New.
8605         * target.c (g_target_stack): New.
8606         (g_current_top_target): Delete.
8607         (current_top_target): Get the top target out of g_target_stack.
8608         (target_stack::push, target_stack::unpush): New.
8609         (push_target, unpush_target): Reimplement.
8610         (target_is_pushed): Reimplement in terms of g_target_stack.
8611         (target_ops::beneath, target_stack::find_beneath): New.
8612
8613 2018-06-07  Pedro Alves  <palves@redhat.com>
8614
8615         * target.h (find_target_beneath): Delete declaration.
8616         * target.c (find_target_beneath): Delete definition.
8617         * aix-thread.c: All callers of find_target_beneath adjusted to
8618         call target_ops::beneath instead.
8619         * bsd-uthread.c: Likewise.
8620         * linux-thread-db.c: Likewise.
8621         * ravenscar-thread.c: Likewise.
8622         * sol-thread.c: Likewise.
8623         * spu-multiarch.c: Likewise.
8624
8625 2018-06-07  Pedro Alves  <palves@redhat.com>
8626
8627         * target.h (target_ops) <beneath>: Now a method.  All references
8628         updated.
8629         (target_ops) <m_beneath>: New.
8630         * target.c (target_ops::beneath): New.
8631         * corelow.c: Adjust all references to target_ops::beneath.
8632         * linux-thread-db.c: Likewise.
8633         * make-target-delegates: Likewise.
8634         * record-btrace.c: Likewise.
8635         * record-full.c: Likewise.
8636         * remote.c: Likewise.
8637         * target.c: Likewise.
8638         * target-delegates.c: Regenerate.
8639
8640 2018-06-07  Pedro Alves  <palves@redhat.com>
8641
8642         * target.h (target_stack): Delete.
8643         (current_top_target): Declare function.
8644         * target.c (target_stack): Delete.
8645         (g_current_top_target): New.
8646         (current_top_target): New function.
8647         * auxv.c: Use current_top_target instead of target_stack
8648         throughout.
8649         * avr-tdep.c: Likewise.
8650         * breakpoint.c: Likewise.
8651         * corefile.c: Likewise.
8652         * elfread.c: Likewise.
8653         * eval.c: Likewise.
8654         * exceptions.c: Likewise.
8655         * frame.c: Likewise.
8656         * gdbarch-selftests.c: Likewise.
8657         * gnu-v3-abi.c: Likewise.
8658         * ia64-tdep.c: Likewise.
8659         * ia64-vms-tdep.c: Likewise.
8660         * infcall.c: Likewise.
8661         * infcmd.c: Likewise.
8662         * infrun.c: Likewise.
8663         * linespec.c: Likewise.
8664         * linux-tdep.c: Likewise.
8665         * minsyms.c: Likewise.
8666         * ppc-linux-nat.c: Likewise.
8667         * ppc-linux-tdep.c: Likewise.
8668         * procfs.c: Likewise.
8669         * regcache.c: Likewise.
8670         * remote.c: Likewise.
8671         * rs6000-tdep.c: Likewise.
8672         * s390-linux-nat.c: Likewise.
8673         * s390-tdep.c: Likewise.
8674         * solib-aix.c: Likewise.
8675         * solib-darwin.c: Likewise.
8676         * solib-dsbt.c: Likewise.
8677         * solib-spu.c: Likewise.
8678         * solib-svr4.c: Likewise.
8679         * solib-target.c: Likewise.
8680         * sparc-tdep.c: Likewise.
8681         * sparc64-tdep.c: Likewise.
8682         * spu-tdep.c: Likewise.
8683         * symfile.c: Likewise.
8684         * symtab.c: Likewise.
8685         * target-descriptions.c: Likewise.
8686         * target-memory.c: Likewise.
8687         * target.c: Likewise.
8688         * target.h: Likewise.
8689         * tracefile-tfile.c: Likewise.
8690         * tracepoint.c: Likewise.
8691         * valops.c: Likewise.
8692         * valprint.c: Likewise.
8693         * value.c: Likewise.
8694         * windows-tdep.c: Likewise.
8695         * mi/mi-main.c: Likewise.
8696
8697 2018-06-07  Tom Tromey  <tom@tromey.com>
8698
8699         * valprint.h (build_address_symbolic): Declare.
8700         * printcmd.c (print_address_symbolic): Update.
8701         (build_address_symbolic): Change "name" and "filename" to
8702         std::string.
8703         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8704         Update.
8705         * defs.h (build_address_symbolic): Remove declaration.
8706
8707 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8708
8709         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8710         (aarch64_vnv_type): Add function.
8711         (aarch64_pseudo_register_name): Add V regs for SVE.
8712         (aarch64_pseudo_register_type): Likewise.
8713         (aarch64_pseudo_register_reggroup_p): Likewise.
8714         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8715         (aarch64_pseudo_read_value): Add V regs for SVE.
8716         (aarch64_pseudo_write_2): Use V0 offset for SVE
8717         (aarch64_pseudo_write): Add V regs for SVE.
8718         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8719
8720 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8721
8722         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8723         (sve_vl_from_vq): Likewise.
8724
8725 2018-06-05  Tom Tromey  <tom@tromey.com>
8726
8727         * cli/cli-cmds.c (show_version): Update.
8728         * top.c (print_gdb_version): Add "interactive" parameter.
8729         Update.
8730         * main.c (captured_main_1): Update.
8731         * top.h (print_gdb_version): Add "interactive" parameter and a
8732         comment.
8733
8734 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8735
8736         * common/enum-flags.h: Add trailing semicolon to example in
8737         comment.
8738
8739 2018-06-05  Tom Tromey  <tom@tromey.com>
8740
8741         PR cli/12326:
8742         * NEWS: Add entry about pager.
8743         * utils.c (pagination_disabled_for_command): New global.
8744         (prompt_for_continue): Allow "c" response to prompt.
8745         (reinitialize_more_filter): Clear
8746         pagination_disabled_for_command.
8747         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8748
8749 2018-06-04  Tom Tromey  <tom@tromey.com>
8750
8751         * ada-lang.h (ada_lookup_symbol_list): Update.
8752         * ada-lang.c (resolve_subexp): Update.
8753         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8754         parameter.
8755         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8756         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8757         results parameter to std::vector.
8758         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8759         Update.
8760         * ada-exp.y (block_lookup): Update.
8761         (select_possible_type_sym): Change type of syms.  Remove nsyms
8762         parameter.
8763         (write_var_or_type, write_name_assoc): Update.
8764
8765 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8766
8767         * windows-nat.c (windows_nat_target::xfer_partial): Return
8768         TARGET_XFER_E_IO if we need to delegate to the target beneath
8769         but BENEATH is NULL.
8770
8771 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8772
8773         * Makefile.in (config.status): Add configure.nat as a
8774         dependency.
8775
8776 2018-06-04  Tom Tromey  <tom@tromey.com>
8777
8778         * cp-name-parser.y (cpname_state): Add method declarations.
8779         (HANDLE_QUAL): Update.
8780         (cpname_state::d_grab, cpname_state::fill_comp)
8781         (cpname_state::make_operator, cpname_state::make_dtor)
8782         (cpname_state::make_builtin_type, cpname_state::make_name)
8783         (cpname_state::d_qualify, cpname_state::d_int_type)
8784         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8785         (%union): Move earlier.
8786
8787 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8788
8789         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8790
8791 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8792
8793         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8794         (aarch64_pseudo_write_1): Likewise.
8795         (aarch64_pseudo_read_value): Use helper.
8796         (aarch64_pseudo_write): Likewise.
8797
8798 2018-06-04  Pedro Alves  <palves@redhat.com>
8799
8800         * darwin-nat.c (darwin_ops): Delete.
8801         (darwin_attach_pid): Use get_native_target.
8802
8803 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8804
8805         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8806         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8807
8808 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8809
8810         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8811         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8812         (aarch64_gdbarch_init): Check for SVE.
8813         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8814
8815 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8816
8817         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8818         * aarch64-tdep.h (aarch64_read_description): Likewise.
8819         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8820         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8821         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8822         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8823         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8824
8825 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8826
8827         * value.c (value_fetch_lazy_bitfield): New.
8828         (value_fetch_lazy_memory): New.
8829         (value_fetch_lazy_register): New.
8830         (value_fetch_lazy): Factor out to smaller functions.
8831
8832 2018-06-01  Tom Tromey  <tom@tromey.com>
8833
8834         * cp-name-parser.y (backslashable, represented): Now const.
8835
8836 2018-06-01  Tom Tromey  <tom@tromey.com>
8837
8838         * cp-name-parser.y: Include parser-defs.h.
8839         (parser_fprintf): Remove declaration.
8840
8841 2018-06-01  Tom Tromey  <tom@tromey.com>
8842
8843         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8844         %parse-param.
8845         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8846         (global_result): Remove globals.
8847         (struct cpname_state): New.
8848         (yyparse): Don't declare.
8849         (yylex, yyerror): Move declarations after %union.
8850         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8851         (make_name): Add state parameter.
8852         Update all callers.
8853         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8854         parameter.
8855         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8856         Update.
8857         (yylex): Add lvalp, state parameters.
8858         (yyerror): Add state parameter.
8859         (cp_demangled_name_to_comp): Update.
8860
8861 2018-06-01  Tom Tromey  <tom@tromey.com>
8862
8863         * cp-name-parser.y (parser_fprintf): Declare.
8864         (GDB_YY_REMAP_PREFIX): Define.
8865         Include yy-remap.h.  Don't redefine yy* identifiers.
8866
8867 2018-06-01  Tom Tromey  <tom@tromey.com>
8868
8869         * python/py-type.c (typy_legacy_template_argument): Update.
8870         * cp-support.h (cp_demangled_name_to_comp): Update.
8871         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8872         parameter to be a "std::string *".
8873         (main): Update.
8874
8875 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8876
8877         * ada-lex.l: Include "diagnostics.h" instead of
8878         "common/diagnostics.h".
8879         * unittests/environ-selftests.c: Likewise.
8880         * common/diagnostics.h: Moved to ../include.
8881
8882 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8883
8884         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8885         to language_mode_manual while calling breakpoint_re_set_one.
8886
8887 2018-06-01  Tom Tromey  <tom@tromey.com>
8888
8889         * valops.c (value_cast_structs, destructor_name_p): Update.
8890         * symtab.c (gdb_mangle_name): Update.
8891         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8892         Update.
8893         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8894         (pascal_object_print_value_fields, pascal_object_print_value):
8895         Update.
8896         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8897         * linespec.c (find_methods): Update.
8898         * gdbtypes.h (type_name_no_tag): Remove.
8899         (type_name_or_error): Rename from type_name_no_tag_or_error.
8900         * gdbtypes.c (type_name_no_tag): Remove.
8901         (type_name_or_error): Rename from type_name_no_tag_or_error.
8902         (lookup_struct_elt_type, check_typedef): Update.
8903         * expprint.c (print_subexp_standard): Update.
8904         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8905         * d-namespace.c (d_lookup_nested_symbol): Update.
8906         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8907         (cp_print_class_member): Update.
8908         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8909         * completer.c (add_struct_fields): Update.
8910         * c-typeprint.c (cp_type_print_derivation_info)
8911         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8912         Update.
8913         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8914         (ada_prefer_type, ada_is_exception_sym): Update.
8915
8916 2018-06-01  Tom Tromey  <tom@tromey.com>
8917
8918         * valops.c (enum_constant_from_type, value_namespace_elt)
8919         (value_maybe_namespace_elt): Update.
8920         * valarith.c (find_size_for_pointer_math): Update.
8921         * target-descriptions.c (make_gdb_type): Update.
8922         * symmisc.c (print_symbol): Update.
8923         * stabsread.c (define_symbol, read_type)
8924         (complain_about_struct_wipeout, add_undefined_type)
8925         (cleanup_undefined_types_1): Update.
8926         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8927         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8928         (rust_internal_print_type, rust_composite_type)
8929         (rust_evaluate_funcall, rust_evaluate_subexp)
8930         (rust_inclusive_range_type_p): Update.
8931         * python/py-type.c (typy_get_tag): Update.
8932         * p-typeprint.c (pascal_type_print_base): Update.
8933         * mdebugread.c (parse_symbol, parse_type): Update.
8934         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8935         Update.
8936         * guile/scm-type.c (gdbscm_type_tag): Update.
8937         * go-lang.c (sixg_string_p): Update.
8938         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8939         Update.
8940         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8941         (TYPE_TAG_NAME): Remove.
8942         * gdbtypes.c (type_name_no_tag): Simplify.
8943         (check_typedef, check_types_equal, recursive_dump_type)
8944         (copy_type_recursive, arch_composite_type): Update.
8945         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8946         in summary mode when needed.
8947         * eval.c (evaluate_funcall): Update.
8948         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8949         (process_structure_scope, read_enumeration_type)
8950         (read_namespace_type, read_module_type, determine_prefix): Update.
8951         * cp-support.c (inspect_type): Update.
8952         * coffread.c (process_coff_symbol, decode_base_type): Update.
8953         * c-varobj.c (c_is_path_expr_parent): Update.
8954         * c-typeprint.c (c_type_print_base_struct_union): Update.
8955         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8956         summary when using C language.
8957         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8958         (gen_maybe_namespace_elt): Update.
8959         * ada-lang.c (ada_type_name): Simplify.
8960         (empty_record, ada_template_to_fixed_record_type_1)
8961         (template_to_static_fixed_type)
8962         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8963
8964 2018-06-01  Tom Tromey  <tom@tromey.com>
8965
8966         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8967         c_print_type.
8968         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8969         (c_print_type): Update.
8970         (c_print_type): New overload.
8971         (c_type_print_varspec_prefix, c_type_print_args)
8972         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8973         (c_type_print_base_struct_union, c_type_print_base_1)
8974         (cp_type_print_method_args): Add "language" parameter.
8975         (c_type_print_base): Update.
8976         * c-lang.h (c_print_type): Add new overload.
8977
8978 2018-06-01  Tom Tromey  <tom@tromey.com>
8979
8980         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8981         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8982
8983 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8984
8985         * aarch64-tdep.c (aarch64_sve_register_names): New const
8986         var.
8987         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8988         (AARCH64_SVE_Z_REGS_NUM): New define.
8989         (AARCH64_SVE_P_REGS_NUM): Likewise.
8990         (AARCH64_SVE_NUM_REGS): Likewise.
8991
8992 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8993
8994         * nat/linux-ptrace.h [__alpha__]
8995         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8996         definitions.
8997
8998 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8999
9000         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
9001         the endianness selected.
9002         * NEWS: Document `set endian auto' mode operation update.
9003
9004 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9005
9006         * Makefile.in: Add new header.
9007         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
9008         (sve_vl_from_vg): Likewise.
9009         (sve_vq_from_vl): Likewise.
9010         (sve_vl_from_vq): Likewise.
9011         (sve_vq_from_vg): Likewise.
9012         (sve_vg_from_vq): Likewise.
9013         * configure.nat: Add new c file.
9014         * nat/aarch64-sve-linux-ptrace.c: New file.
9015         * nat/aarch64-sve-linux-ptrace.h: New file.
9016
9017 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
9018
9019         * aarch64-linux-nat.c (aarch64_linux_read_description):
9020         Add parmeter zero.
9021         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
9022         Likewise.
9023         * aarch64-tdep.c (tdesc_aarch64_list): Add.
9024         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
9025         (aarch64_gdbarch_init): Add parmeter zero.
9026         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
9027         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
9028         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
9029         parmeter.
9030         * doc/gdb.texinfo: Describe SVE feature
9031         * features/aarch64-sve.c: New file.
9032
9033 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
9034
9035         PR gdb/23210
9036         * gdbarch.sh (significant_addr_bit): Default to zero when
9037         not set by target architecture.
9038         * gdbarch.c: Re-generated.
9039         * utils.c (address_significant): Update.
9040
9041 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
9042
9043         * stack.c (func_command): Remove trailing newline in call to error.
9044
9045 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9046
9047         * regcache.h (regcache_raw_collect): Remove, update callers to
9048         use regcache::raw_collect.
9049         * regcache.c (regcache_raw_collect): Remove.
9050
9051 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9052
9053         * regcache.h (regcache_raw_supply): Remove, update callers to
9054         use detached_regcache::raw_supply.
9055         * regcache.c (regcache_raw_supply): Remove.
9056
9057 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9058
9059         * regcache.h (regcache_cooked_write_part): Remove, update
9060         callers to use regcache::cooked_write_part.
9061         * regcache.c (regcache_cooked_write_part): Remove.
9062
9063 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9064
9065         * regcache.h (regcache_cooked_read_part): Remove, update callers
9066         to use readable_regcache::cooked_read_part.
9067         * regcache.c (regcache_cooked_read_part): Remove.
9068
9069 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9070
9071         * regcache.h (regcache_cooked_read_value): Remove, update
9072         callers to use readable_regcache::cooked_read_value.
9073         * regcache.c (regcache_cooked_read_value): Remove.
9074
9075 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9076
9077         * regcache.h (regcache_cooked_write): Remove, update callers to
9078         use regcache::cooked_write.
9079         * regcache.c (regcache_cooked_write): Remove.
9080
9081 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9082
9083         * regcache.h (regcache_invalidate): Remove, update callers to
9084         use detached_regcache::invalidate instead.
9085         * regcache.c (regcache_invalidate): Remove.
9086
9087 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9088
9089         * regcache.h (regcache_raw_write_part): Remove, update callers
9090         to use regcache::raw_write_part instead.
9091         * regcache.c (regcache_raw_write_part): Remove.
9092
9093 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9094
9095         * regcache.h (regcache_raw_read_part): Remove, update callers to
9096         use readable_regcache::raw_read_part instead.
9097         * regcache.c (regcache_raw_read_part): Remove.
9098
9099 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9100
9101         * regcache.h (regcache_cooked_read): Remove, update callers to
9102         use readable_regcache::cooked_read instead.
9103         * regcache.c (regcache_cooked_read): Remove.
9104
9105 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9106
9107         * regcache.h (regcache_raw_write): Remove, update callers to use
9108         regcache::raw_write instead.
9109         * regcache.c (regcache_raw_write): Remove.
9110
9111 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9112
9113         * regcache.h (regcache_raw_read): Remove, update callers to use
9114         readable_regcache::raw_read instead.
9115         * regcache.c (regcache_raw_read): Remove.
9116
9117 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9118
9119         * regcache.h (regcache_raw_update): Remove, update callers to
9120         use readable_regcache::raw_update instead.
9121         * regcache.c (regcache_raw_update): Remove.
9122
9123 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9124
9125         * regcache.h (regcache_register_status): Remove, update callers
9126         to use reg_buffer::get_register_status directly instead.
9127         * regcache.c (regcache_register_status): Remove.
9128
9129 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9130
9131         * regcache.h (regcache_get_ptid): Remove, update all callers to
9132         call regcache::ptid instead.
9133         * regcache.c (regcache_get_ptid): Remove.
9134
9135 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9136
9137         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9138
9139 2018-05-30  Pedro Alves  <palves@redhat.com>
9140
9141         * common/common-exceptions.h (exception_rethrow): Use
9142         ATTRIBUTE_NORETURN.
9143
9144 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9145
9146         * breakpoint.c (print_solib_event, check_status_catch_solib):
9147         Remove struct keyword in range-based for loops.
9148         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9149         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9150         Likewise.
9151         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9152         Likewise.
9153         * symfile.c (addr_info_make_relative): Likewise.
9154         * thread.c (value_in_thread_stack_temporaries): Likewise.
9155
9156 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9157
9158         PR gdb/16841
9159         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9160         aggregate type to get its real type before accessing it.
9161
9162 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9163
9164         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9165         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9166         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9167         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9168         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9169         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9170         * printcmd.c (info_address_command): Likewise.
9171
9172 2018-05-29  Tom Tromey  <tom@tromey.com>
9173
9174         * windows-nat.c (handle_exception): Update fall-through comment.
9175
9176 2018-05-29  Tom Tromey  <tom@tromey.com>
9177
9178         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9179         (struct program_space) <added_solibs>: Now a std::vector.
9180         * breakpoint.c (print_solib_event): Update.
9181         (check_status_catch_solib): Update.
9182         * progspace.c (clear_program_space_solib_cache): Update.
9183         * solib.c (update_solib_list): Update.
9184
9185 2018-05-29  Tom Tromey  <tom@tromey.com>
9186
9187         * python/py-type.c (typy_richcompare): Update.
9188         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9189         * gdbtypes.h (types_deeply_equal): Return bool.
9190         (types_equal): Likewise.
9191         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9192         declare VEC.
9193         (check_types_equal): Change worklist to std::vector.  Return
9194         bool.
9195         (struct type_equality_entry): Add constructor.
9196         (compare_maybe_null_strings): Return bool.
9197         (check_types_worklist): Return bool.  Change worklist to
9198         std::vector.
9199         (types_deeply_equal): Use std::vector.
9200         (types_equal): Return bool.
9201         (compare_maybe_null_strings): Simplify.
9202
9203 2018-05-29  Tom Tromey  <tom@tromey.com>
9204
9205         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9206
9207 2018-05-29  Tom Tromey  <tom@tromey.com>
9208
9209         * objc-lang.h: Don't include cp-support.h.
9210         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9211         declare VEC.
9212
9213 2018-05-27  Tom Tromey  <tom@tromey.com>
9214
9215         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9216
9217 2018-05-25  Tom Tromey  <tom@tromey.com>
9218
9219         * value.c (value::location): Initialize.
9220
9221 2018-05-25  Tom Tromey  <tom@tromey.com>
9222
9223         * dbxread.c (init_bincl_list): Remove.
9224         (bincl_list): Now a std::vector.
9225         (bincls_allocated, next_bincl): Remove.
9226         (free_bincl_list, do_free_bincl_list_cleanup)
9227         (make_cleanup_free_bincl_list): Remove.
9228         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9229         unique_xmalloc_ptr.
9230         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9231         (struct header_file_location): Add constructor.
9232         (add_bincl_to_list): Remove.
9233
9234 2018-05-25  Tom Tromey  <tom@tromey.com>
9235
9236         * tui/tui.c (tui_enable): Update.
9237         * mi/mi-interp.c (mi_interp::init): Update.
9238         * interps.h (class interp) <name>: New method.
9239         <m_name>: Rename from name.
9240         (~scoped_restore_interp): Update.
9241         * interps.c (interp::interp): Update.
9242         (interp_add, interp_set, interp_lookup_existing)
9243         (current_interp_named_p): Update.
9244
9245 2018-05-25  Tom Tromey  <tom@tromey.com>
9246
9247         * interps.c (interp_name): Remove.
9248         * mi/mi-interp.c (mi_interp::init): Update.
9249         * interps.h (interp_name): Remove.
9250         (~scoped_restore_interp): Update.
9251         * tui/tui.c (tui_enable): Update.
9252
9253 2018-05-25  Tom Tromey  <tom@tromey.com>
9254
9255         * utils.c (fputs_maybe_filtered): Update.
9256         * linespec.c (decode_line_full): Update.
9257         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9258         (mi_print_breakpoint_for_event, mi_solib_loaded)
9259         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9260         (mi_user_selected_context_changed): Update.
9261         * mi/mi-main.c (mi_execute_command): Update.
9262         * cli/cli-script.c (execute_control_command): Update.
9263         * python/python.c (execute_gdb_command): Update.
9264         * solib.c (info_sharedlibrary_command): Update.
9265         * interps.c (interp_ui_out): Remove.
9266         * interps.h (interp_ui_out): Remove.
9267
9268 2018-05-25  Tom Tromey  <tom@tromey.com>
9269
9270         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9271         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9272         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9273
9274 2018-05-25  Tom Tromey  <tom@tromey.com>
9275
9276         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9277         * interps.c (interp_exec): Use scoped_restore.
9278
9279 2018-05-25  Tom Tromey  <tom@tromey.com>
9280
9281         * remote.c (remote_target::remote_file_get): Use
9282         gdb::byte_vector.
9283         (remote_target::remote_file_put): Likewise.
9284
9285 2018-05-25  Tom Tromey  <tom@tromey.com>
9286
9287         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9288         a std::string.
9289         (get_pe_section_index, add_pe_exported_sym): Update.
9290         (read_pe_exported_syms): Use gdb::def_vector.
9291
9292 2018-05-25  Tom Tromey  <tom@tromey.com>
9293
9294         * frame.c (remove_prev_frame): Remove.
9295         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9296
9297 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9298
9299         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9300         Remove prototypes.
9301         * mips-linux-nat.c (supply_fpregset): Always call
9302         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9303         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9304         `mips_fill_fpregset'.
9305         * mips-linux-tdep.c (mips_supply_fpregset)
9306         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9307         (mips_fill_fpregset_wrapper): Remove functions.
9308         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9309         (mips_linux_fpregset): Remove variable.
9310         (mips_linux_iterate_over_regset_sections): Use
9311         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9312         (mips_linux_o32_sigframe_init): Remove comment.
9313
9314 2018-05-25  Pedro Alves  <palves@redhat.com>
9315
9316         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9317         (struct readahead_cache, struct packet_reg, struct
9318         remote_arch_state, class remote_state): Move higher up in the
9319         file.
9320         (remote_target::m_remote_state): Now an object instead of a pointer.
9321         (remote_target::get_remote_state): Adjust.
9322
9323 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9324
9325         * stack.c (select_and_print_frame): Delete.
9326         (struct function_bounds): Move struct within function.
9327         (func_command): Most content moved into new function
9328         find_frame_for_function, use new function, print result, add
9329         function comment.
9330         (find_frame_for_function): New function, now returns a result.
9331
9332 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9333
9334         * stack.c (iterate_over_block_arg_vars): Fix comment.
9335         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9336
9337 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9338
9339         PR gdb/23203
9340         * frame.c
9341         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9342         Define.
9343         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9344         Define.
9345         * frame.h (class scoped_restore_selected_frame): New class.
9346         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9347         of any exception, use scoped_restore_selected_frame to restore the
9348         frame instead.
9349
9350 2018-05-24  Pedro Alves  <palves@redhat.com>
9351
9352         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9353         override.
9354
9355 2018-05-23  Tom Tromey  <tom@tromey.com>
9356
9357         * complaints.c (struct complaints): Remove.
9358         (symfile_complaint_book): Remove.
9359         (series): New global.
9360         (complaint_internal): Update.
9361         (clear_complaints): Update.
9362
9363 2018-05-23  Tom Tromey  <tom@tromey.com>
9364
9365         * complaints.c (counters): New global.
9366         (struct complain): Remove.
9367         (struct complaints) <root>: Remove.
9368         (complaint_sentinel): Remove.
9369         (symfile_complaint_book): Update.
9370         (find_complaint) Remove.
9371         (complaint_internal, clear_complaints): Update.
9372
9373 2018-05-23  Tom Tromey  <tom@tromey.com>
9374
9375         * complaints.c (struct complain) <file, line>: Remove.
9376         (find_complaint): Remove file, line parameters.
9377         (complaint_internal): Update.
9378
9379 2018-05-23  Tom Tromey  <tom@tromey.com>
9380
9381         * complaints.c (vcomplaint): Remove.
9382         (complaint_internal) Merge in contents of vcomplaint.
9383
9384 2018-05-23  Tom Tromey  <tom@tromey.com>
9385
9386         * complaints.c (struct complaints) <explanation>: Remove.
9387         (symfile_explanations): Remove.
9388         (symfile_complaint_book): Update.
9389         (vcomplaint): Update.
9390         (struct explanation): Remove.
9391
9392 2018-05-23  Tom Tromey  <tom@tromey.com>
9393
9394         * complaints.c (symfile_complaints): Remove.
9395         (complaint_internal): Remove "complaints" parameter.
9396         (clear_complaints, vcomplaint): Remove "c" parameter.
9397         (get_complaints): Remove.
9398         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9399         (dwarf2_debug_line_missing_file_complaint)
9400         (dwarf2_debug_line_missing_end_sequence_complaint)
9401         (dwarf2_complex_location_expr_complaint)
9402         (dwarf2_const_value_length_mismatch_complaint)
9403         (dwarf2_section_buffer_overflow_complaint)
9404         (dwarf2_macro_malformed_definition_complaint)
9405         (dwarf2_invalid_attrib_class_complaint)
9406         (create_addrmap_from_index, dw2_symtab_iter_next)
9407         (dw2_expand_marked_cus)
9408         (dw2_debug_names_iterator::find_vec_in_debug_names)
9409         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9410         (create_debug_type_hash_table, init_cutu_and_read_dies)
9411         (partial_die_parent_scope, add_partial_enumeration)
9412         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9413         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9414         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9415         (create_cus_hash_table, create_dwp_hash_table)
9416         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9417         (dwarf2_rnglists_process, dwarf2_ranges_process)
9418         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9419         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9420         (handle_struct_member_die, process_structure_scope)
9421         (read_array_type, read_common_block, read_module_type)
9422         (read_tag_pointer_type, read_typedef, read_base_type)
9423         (read_subrange_type, load_partial_dies, partial_die_info::read)
9424         (partial_die_info::read, partial_die_info::read)
9425         (partial_die_info::read, read_checked_initial_length_and_offset)
9426         (dwarf2_string_attr, read_formatted_entries)
9427         (dwarf_decode_line_header)
9428         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9429         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9430         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9431         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9432         (get_signatured_type, get_DW_AT_signature_type)
9433         (decode_locdesc, file_file_name, consume_improper_spaces)
9434         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9435         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9436         (dwarf2_symbol_mark_computed, set_die_type)
9437         (read_attribute_value): Update.
9438         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9439         Update.
9440         * dbxread.c (unknown_symtype_complaint)
9441         (lbrac_mismatch_complaint, repeated_header_complaint)
9442         (set_namestring, function_outside_compilation_unit_complaint)
9443         (read_dbx_symtab, process_one_symbol): Update.
9444         * gdbtypes.c (stub_noname_complaint): Update.
9445         * windows-nat.c (handle_unload_dll): Update.
9446         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9447         (decode_base_type): Update.
9448         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9449         (eb_complaint, record_include_begin, record_include_end)
9450         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9451         (process_xcoff_symbol, read_symbol)
9452         (function_outside_compilation_unit_complaint)
9453         (scan_xcoff_symtab): Update.
9454         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9455         * buildsym.c (finish_block_internal, make_blockvector)
9456         (end_symtab_get_static_block, augment_type_symtab): Update.
9457         * dtrace-probe.c (dtrace_process_dof)
9458         (dtrace_static_probe_ops::get_probes): Update.
9459         * complaints.h (struct complaint): Don't declare.
9460         (symfile_complaints): Remove.
9461         (complaint_internal): Remove "complaints" parameter.
9462         (complaint): Likewise.
9463         (clear_complaints): Likewise.
9464         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9465         (reread_symbols): Update.
9466         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9467         (dwarf2_frame_cache, decode_frame_entry): Update.
9468         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9469         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9470         (info_selectors_command): Update.
9471         * macrotab.c (macro_include, check_for_redefinition)
9472         (macro_undef): Update.
9473         * objfiles.c (filter_overlapping_sections): Update.
9474         * stabsread.c (invalid_cpp_abbrev_complaint)
9475         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9476         (define_symbol, error_type, read_type, rs6000_builtin_type)
9477         (stabs_method_name_from_physname, read_member_functions)
9478         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9479         (attach_fields_to_type, complain_about_struct_wipeout)
9480         (read_range_type, read_args, common_block_start)
9481         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9482         Update.
9483         * mdebugread.c (index_complaint, unknown_ext_complaint)
9484         (basic_type_complaint, bad_tag_guess_complaint)
9485         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9486         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9487         (parse_procedure, parse_lines)
9488         (function_outside_compilation_unit_complaint)
9489         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9490         (bad_tag_guess_complaint, reg_value_complaint): Update.
9491         * cp-support.c (demangled_name_complaint): Update.
9492         * macroscope.c (sal_macro_scope): Update.
9493         * dwarf-index-write.c (class debug_names): Update.
9494
9495 2018-05-23  Tom Tromey  <tom@tromey.com>
9496
9497         * complaints.c (clear_complaints): Remove "noisy" parameter.
9498         * complaints.h (clear_complaints): Update.
9499         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9500         (reread_symbols): Update.
9501
9502 2018-05-23  Tom Tromey  <tom@tromey.com>
9503
9504         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9505         SUBSEQUENT_MESSAGE.
9506         (vcomplaint, clear_complaints): Update.
9507         (symfile_explanations): Remove some messages.
9508
9509 2018-05-23  Tom Tromey  <tom@tromey.com>
9510
9511         * complaints.c (internal_complaint): Remove.
9512         * complaints.h (internal_complaint): Remove.
9513
9514 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9515
9516         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9517
9518 2018-05-22  Pedro Alves  <palves@redhat.com>
9519
9520         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9521         (remote_fileio_badfd, remote_fileio_return_errno)
9522         (remote_fileio_return_success, remote_fileio_func_open)
9523         (remote_fileio_func_open, remote_fileio_func_close)
9524         (remote_fileio_func_read, remote_fileio_func_write)
9525         (remote_fileio_func_lseek, remote_fileio_func_rename)
9526         (remote_fileio_func_unlink, remote_fileio_func_stat)
9527         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9528         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9529         remote_target parameter.
9530         (remote_fio_func_map) <func>: Add remote_target parameter.
9531         (do_remote_fileio_request, remote_fileio_request):
9532         * remote-fileio.h (remote_fileio_request):
9533         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9534         remote_target parameter.
9535         (remote_notif_process, handle_notification): Adjust to pass down
9536         the remote.
9537         (remote_notif_state_allocate): Add remote_target parameter.  Save
9538         it.
9539         * remote-notif.h (struct remote_target): Forward declare.
9540         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9541         remote_target parameter.
9542         (struct remote_notif_state) <remote>: New field.
9543         (remote_notif_ack, remote_notif_parse): Add remote_target
9544         parameter.
9545         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9546         remote_target parameter.
9547         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9548         (threads_listing_context, rmt_thread_action, protocol_feature)
9549         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9550         (packet_result, struct threads_listing_context, remote_state):
9551         Move definitions and declarations higher up.
9552         (remote_target) <~remote_target>: Declare.
9553         (remote_download_command_source, remote_file_put, remote_file_get)
9554         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9555         (remote_hostio_pread_vFile, remote_hostio_send_command)
9556         (remote_hostio_set_filesystem, remote_hostio_open)
9557         (remote_hostio_close, remote_hostio_unlink, remote_state)
9558         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9559         (get_memory_write_packet_size, get_memory_read_packet_size)
9560         (append_pending_thread_resumptions, remote_detach_1)
9561         (append_resumption, remote_resume_with_vcont)
9562         (add_current_inferior_and_thread, wait_ns, wait_as)
9563         (process_stop_reply, remote_notice_new_inferior)
9564         (process_initial_stop_replies, remote_add_thread)
9565         (btrace_sync_conf, remote_btrace_maybe_reopen)
9566         (remove_new_fork_children, kill_new_fork_children)
9567         (discard_pending_stop_replies, stop_reply_queue_length)
9568         (check_pending_events_prevent_wildcard_vcont)
9569         (discard_pending_stop_replies_in_queue, stop_reply)
9570         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9571         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9572         (remote_interrupt_as, remote_interrupt_ns)
9573         (remote_get_noisy_reply, remote_query_attached)
9574         (remote_add_inferior, remote_current_thread, get_current_thread)
9575         (set_thread, set_general_thread, set_continue_thread)
9576         (set_general_process, write_ptid)
9577         (remote_unpack_thread_info_response, remote_get_threadinfo)
9578         (parse_threadlist_response, remote_get_threadlist)
9579         (remote_threadlist_iterator, remote_get_threads_with_ql)
9580         (remote_get_threads_with_qxfer)
9581         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9582         (get_offsets, remote_check_symbols, remote_supported_packet)
9583         (remote_query_supported, remote_packet_size)
9584         (remote_serial_quit_handler, remote_detach_pid)
9585         (remote_vcont_probe, remote_resume_with_hc)
9586         (send_interrupt_sequence, interrupt_query)
9587         (remote_notif_get_pending_events, fetch_register_using_p)
9588         (send_g_packet, process_g_packet, fetch_registers_using_g)
9589         (store_register_using_P, store_registers_using_G)
9590         (set_remote_traceframe, check_binary_download)
9591         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9592         (remote_xfer_live_readonly_partial, remote_read_bytes)
9593         (remote_send_printf, remote_flash_write, readchar)
9594         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9595         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9596         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9597         (extended_remote_disable_randomization, extended_remote_run)
9598         (send_environment_packet, extended_remote_environment_support)
9599         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9600         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9601         (packet_command): Now methods of ...
9602         (remote_target): ... this class.
9603         (m_remote_state) <remote_target>: New field.
9604         (struct remote_state) <stop_reply_queue,
9605         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9606         fields.
9607         (remote_state::remote_state): Allocate stop_reply_queue.
9608         (remote_state): Delete global.
9609         (get_remote_state_raw): Delete.
9610         (remote_target::get_remote_state): Allocate m_remote_state on
9611         demand.
9612         (get_current_remote_target): New.
9613         (remote_ops, extended_remote_ops): Delete.
9614         (wait_forever_enabled_p, remote_async_inferior_event_token):
9615         Delete, moved to struct remote_state.
9616         (remote_target::close): Delete self.  Destruction bits split to
9617         ...
9618         (remote_target::~remote_target): ... this.
9619         (show_memory_packet_size): Adjust to use
9620         get_current_remote_target.
9621         (struct protocol_feature) <func>: Add remote_target parameter.
9622         All callers adjusted.
9623         (curr_quit_handler_target): New.
9624         (remote_serial_quit_handler): Reimplement.
9625         (remote_target::open_1): Adjust to use get_current_remote_target.
9626         Heap-allocate remote_target/extended_remote_target instances.
9627         (vcont_builder::vcont_builder): Add remote_target parameter, and
9628         save it in m_remote.  All callers adjusted.
9629         (vcont_builder::m_remote): New field.
9630         (vcont_builder::restart, vcont_builder::flush)
9631         (vcont_builder::push_action): Use it.
9632         (remote_target::commit_resume): Use it.
9633         (struct queue_iter_param) <remote>: New field.
9634         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9635         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9636         (check_pending_event_prevents_wildcard_vcont_callback)
9637         (remote_target::check_pending_events_prevent_wildcard_vcont)
9638         (remote_target::discard_pending_stop_replies)
9639         (remote_target::discard_pending_stop_replies_in_queue)
9640         (remote_target::remote_notif_remove_queued_reply): Fill in
9641         'remote' field.
9642         (remote_notif_get_pending_events): New.
9643         (remote_target::readchar, remote_target::remote_serial_write):
9644         Save/restore curr_quit_handler_target.
9645         (putpkt): New.
9646         (kill_new_fork_children): Fill in 'remote' field.
9647         (packet_command): Use get_current_remote_target, defer to
9648         remote_target method of same name.
9649         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9650         parameter, and save it in m_remote.  All callers adjusted.
9651         (scoped_remote_fd::release): Use m_remote.
9652         (scoped_remote_fd::m_remote): New field.
9653         (remote_file_put, remote_file_get, remote_file_delete): Use
9654         get_current_remote_target, defer to remote_target method of same
9655         name.
9656         (remote_btrace_reset): Add remote_state paremeter.  Update all
9657         callers.
9658         (remote_async_inferior_event_handler). Pass down 'data'.
9659         (remote_new_objfile): Use get_current_remote_target.
9660         (remote_target::vcont_r_supported): New.
9661         (set_range_stepping): Use get_current_remote_target and
9662         remote_target::vcont_r_supported.
9663         (_initialize_remote): Don't allocate 'remote_state' and
9664         'stop_reply_queue' globals.
9665         * remote.h (struct remote_target): Forward declare.
9666         (getpkt, putpkt, remote_notif_get_pending_events): Add
9667         'remote_target' parameter.
9668
9669 2018-05-22  Pedro Alves  <palves@redhat.com>
9670
9671         * remote.c (vcont_builder): Now a class.  Make all data members
9672         private.
9673         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9674         Declare methods.
9675         (vcont_builder_restart): Rename to ...
9676         (vcont_builder::restart): ... this.
9677         (vcont_builder_flush): Rename to ...
9678         (vcont_builder::flush): ... this.
9679         (vcont_builder_push_action): Rename to ...
9680         (vcont_builder::push_action): ... this.
9681         (remote_target::commit_resume): Adjust.
9682
9683 2018-05-22  Pedro Alves  <palves@redhat.com>
9684
9685         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9686         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9687         (get_fixed_memory_packet_size): New.
9688         (get_memory_packet_size): Use it.
9689         (set_memory_packet_size): Don't override the config size with
9690         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9691         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9692         Don't refer to get_memory_packet_size if not connected to a remote
9693         target.  Show "(default)" if configured size is 0.
9694
9695 2018-05-22  Pedro Alves  <palves@redhat.com>
9696
9697         * remote.c (remote_target::mourn_inferior): Move
9698         discard_pending_stop_replies call here from ...
9699         (_initialize_remote): ... here.
9700
9701 2018-05-22  Pedro Alves  <palves@redhat.com>
9702
9703         * remote.c (compare_section_command): Remove set_general_process
9704         call.
9705
9706 2018-05-22  Pedro Alves  <palves@redhat.com>
9707
9708         * remote.c (struct packet_reg, struct remote_arch_state):
9709         Move higher up in the file.
9710         (remote_state) <m_arch_states>: Store remote_arch_state values
9711         instead of remote_arch_state pointers.
9712         (remote_state::get_remote_arch_state): Adjust.
9713
9714 2018-05-22  Pedro Alves  <palves@redhat.com>
9715
9716         * remote.c: Include <unordered_map>.
9717         (remote_state): Now a class.
9718         (remote_state) <get_remote_arch_state>: Declare method.
9719         <get_remote_arch_state>: New field.
9720         (remote_arch_state) <remote_arch_state>: Declare ctor.
9721         <regs>: Now a unique_ptr.
9722         (remote_gdbarch_data_handle): Delete.
9723         (get_remote_arch_state): Delete.
9724         (remote_state::get_remote_arch_state): New.
9725         (get_remote_state): Adjust to call remote_state's
9726         get_remote_arch_state method.
9727         (init_remote_state): Delete, bits factored out to ...
9728         (remote_arch_state::remote_arch_state): ... this new method.
9729         (get_remote_packet_size, get_memory_packet_size)
9730         (process_g_packet, remote_target::fetch_registers)
9731         (remote_target::prepare_to_store, store_registers_using_G)
9732         (remote_target::store_registers, remote_target::get_trace_status):
9733         Adjust to call remote_state's method.
9734         (_initialize_remote): Remove reference to
9735         remote_gdbarch_data_handle.
9736
9737 2018-05-22  Pedro Alves  <palves@redhat.com>
9738
9739         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9740         pread>: New method declarations.
9741         (remote_target::open_1): Adjust.
9742         (readahead_cache_invalidate): Rename to ...
9743         (readahead_cache::invalidate): ... this, and adjust to be a class
9744         method.
9745         (readahead_cache_invalidate_fd): Rename to ...
9746         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9747         class method.
9748         (remote_hostio_pwrite): Adjust.
9749         (remote_hostio_pread_from_cache): Rename to ...
9750         (readahead_cache::pread): ... this, and adjust to be a class
9751         method.
9752         (remote_hostio_close): Adjust.
9753
9754 2018-05-22  Pedro Alves  <palves@redhat.com>
9755
9756         * remote.c (remote_hostio_close_cleanup): Delete.
9757         (class scoped_remote_fd): New.
9758         (remote_file_put, remote_file_get): Use it.
9759
9760 2018-05-22  Pedro Alves  <palves@redhat.com>
9761
9762         (struct vCont_action_support): Use bool and initialize all fields.
9763         (struct readahead_cache): Initialize all fields.
9764         (remote_state): Use bool and initialize all fields.
9765         (remote_state::remote_state, remote_state::~remote_state): New.
9766         (new_remote_state): Delete.
9767         (_initialize_remote): Use new to allocate remote_state.
9768
9769 2018-05-22  Pedro Alves  <palves@redhat.com>
9770             張俊芝  <zjz@zjz.name>
9771
9772         PR gdb/22973
9773         * c-exp.y: Include "c-support.h".
9774         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9775         of tolower.  Use c_ident_is_alpha to scan names.
9776         * c-lang.c: Include "c-support.h".
9777         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9778         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9779         * c-support.h: New file, with bits factored out from ...
9780         * cp-name-parser.y: ... this file.
9781         Include "c-support.h".
9782         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9783         c-support.h and renamed.
9784         (symbol_end, yylex): Adjust.
9785
9786 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9787
9788         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9789         parameter type to CORE_ADDR.
9790         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9791         parameter type in declaration to CORE_ADDR.
9792         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9793         target_auxv_search to get AT_HWCAP and use the result to get the
9794         target description.
9795         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9796         to CORE_ADDR. Remove the cast of the return value to unsigned
9797         long. Fix error predicate of target_auxv_search.
9798         (ppc_linux_nat_target::read_description): Change the type of the
9799         hwcap variable to CORE_ADDR.
9800
9801 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9802
9803         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9804         if the size of fpscr is larger than 32 bits.
9805
9806 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9807
9808         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9809         (ppc32_linux_vsxregmap): New global.
9810         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9811         regcache_supply_regset, and regcache_collect_regset.
9812         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9813         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9814         (fetch_vsx_register, store_vsx_register): Remove.
9815         (fetch_vsx_registers): Add regno parameter. Get regset using
9816         ppc_linux_vsxregset. Use regset to supply registers.
9817         (store_vsx_registers): Add regno parameter. Get regset using
9818         ppc_linux_vsxregset. Use regset to collect registers.
9819         (fetch_register): Call fetch_vsx_registers instead of
9820         fetch_vsx_register.
9821         (store_register): Call store_vsx_registers instead of
9822         store_vsx_register.
9823         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9824         new regno parameter.
9825         (store_ppc_registers): Call store_vsx_registers with -1 for the
9826         new regno parameter.
9827         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9828         (ppc_collect_vsxregset): Remove.
9829
9830 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9831
9832         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9833         offset fields.
9834         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9835         for vector register offset fields.
9836         (ppc64_fbsd_reg_offsets): Likewise.
9837         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9838         to vector register offset fields.
9839         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9840         to vector register offset fields.
9841         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9842         vector register offset fields.
9843         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9844         initializers for vector register offset fields.
9845         (rs6000_aix64_reg_offsets): Likewise.
9846         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9847         (ppc_supply_vrregset): Remove.
9848         (ppc_collect_vrregset): Remove.
9849         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9850         (ppc_linux_vrregset) : New function.
9851         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9852         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9853         (ppc32_linux_vrregset): Remove.
9854         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9855         and use result instead of ppc32_linux_vrregset.
9856         (ppc32_linux_reg_offsets): Remove initializers for vector register
9857         offset fields.
9858         (ppc64_linux_reg_offsets): Likewise.
9859         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9860         * ppc-linux-nat.c: Include regset.h.
9861         (gdb_vrregset_t): Adjust comment to account for little-endian
9862         mode.
9863         (supply_vrregset, fill_vrregset): Remove.
9864         (fetch_altivec_register, store_altivec_register): Remove.
9865         (fetch_altivec_registers): Add regno parameter. Get regset using
9866         ppc_linux_vrregset. Use regset to supply registers.
9867         (store_altivec_registers): Add regno parameter. Get regset using
9868         ppc_linux_vrregset. Use regset to collect registers.
9869         (fetch_register): Call fetch_altivec_registers instead of
9870         fetch_altivec_register.
9871         (store_register): Call store_altivec_registers instead of
9872         store_altivec_register.
9873         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9874         the new regno parameter.
9875         (store_ppc_registers): Call store_altivec_registers with -1 for
9876         the new regno parameter.
9877
9878 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9879
9880         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9881         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9882         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9883         (gdb_vrregset_t): Change array type size to
9884         PPC_LINUX_SIZEOF_VRREGSET.
9885         (gdb_vsxregset_t): Change array type size to
9886         PPC_LINUX_SIZEOF_VSXREGSET.
9887         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9888         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9889         PPC_LINUX_SIZEOF_VSXREGSET.
9890
9891 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9892
9893         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9894         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9895         nat/ppc-linux.c.
9896         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9897         ppc_linux_target_wordsize with tid.
9898         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9899         wordsize with tid.
9900         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9901         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9902         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9903         tid parameter. Remove static specifier.
9904         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9905         (ppc_linux_target_wordsize): New declaration.
9906
9907 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9908
9909         * arch/ppc-linux-common.c: New file.
9910         * arch/ppc-linux-common.h: New file.
9911         * arch/ppc-linux-tdesc.h: New file.
9912         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9913         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9914         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9915         arch/ppc-linux-tdesc.h.
9916         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9917         arch/ppc-linux-tdesc.h.
9918         (ppc_linux_nat_target::read_description): Remove target
9919         description matching code. Fill a ppc_linux_features struct and
9920         call ppc_linux_match_description with it. Move comment about ISA
9921         2.05 to ppc-linux-common.c.
9922         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9923         arch/ppc-linux-tdesc.h.
9924         (ppc_linux_core_read_description): Remove target description
9925         matching code. Fill a ppc_linux_features struct and call
9926         ppc_linux_match_description with it.
9927         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9928         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9929         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9930         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9931         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9932         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9933         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9934         (tdesc_powerpc_e500l): Remove.
9935
9936 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9937
9938         * ada-lang.c (catch_assert_command): Pass empty string instead
9939         of NULL for excep_string argument.
9940
9941 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9942
9943         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9944         the width of the requested register exceeds the width of the
9945         `ptrace' data type.
9946
9947 2018-05-21  Tom Tromey  <tom@tromey.com>
9948
9949         * printcmd.c (output_command): Remove.
9950         (output_command_const): Rename to output_command.
9951         * valprint.h (output_command): Rename from output_command_const.
9952         * tracepoint.c (trace_dump_actions): Call output_command.
9953
9954 2018-05-21  Tom Tromey  <tom@tromey.com>
9955
9956         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9957         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9958         * ada-lang.h (create_ada_exception_catchpoint): Update.
9959         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9960         std::string.
9961         (create_excep_cond_exprs, ~ada_catchpoint)
9962         (should_stop_exception, print_one_exception)
9963         (print_mention_exception, print_recreate_exception): Update.
9964         (ada_get_next_arg): Remove.
9965         (catch_ada_exception_command_split): Use std::string.  Change type
9966         of "excep_string", "cond_string".
9967         (catch_ada_exception_command): Update.
9968         (create_ada_exception_catchpoint): Change type of excep_string.
9969         (ada_exception_sal): Remove excep_string parameter.
9970         (~ada_catchpoint): Remove.
9971
9972 2018-05-21  Tom Tromey  <tom@tromey.com>
9973
9974         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9975         cleanup.
9976
9977 2018-05-21  Tom Tromey  <tom@tromey.com>
9978
9979         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9980         Return unique_xmalloc_ptr.
9981         (print_it_exception): Update.
9982
9983 2018-05-21  Tom Tromey  <tom@tromey.com>
9984
9985         * tracepoint.c (trace_dump_actions): Use std::string.
9986
9987 2018-05-21  Tom Tromey  <tom@tromey.com>
9988
9989         * symfile.c (reread_symbols): Use std::string for original_name.
9990
9991 2018-05-21  Tom Tromey  <tom@tromey.com>
9992
9993         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9994         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9995         constructor.
9996
9997 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9998
9999         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
10000         instance to...
10001         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
10002         * objfiles.c (get_objfile_bfd_data): Allocate
10003         objfile_per_bfd_storage with obstack_new when allocating on
10004         obstack.
10005
10006 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10007
10008         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
10009         OBSTACK_ZALLOC.
10010         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
10011         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
10012         * mdebugread.c (mdebug_build_psymtabs): Likewise.
10013         (add_pending): Likewise.
10014         (parse_symbol): Likewise.
10015         (parse_partial_symbols): Likewise.
10016         (psymtab_to_symtab_1): Likewise.
10017         (new_psymtab): Likewise.
10018         (elfmdebug_build_psymtabs): Likewise.
10019         * minsyms.c (terminate_minimal_symbol_table): Likewise.
10020         * objfiles.c (get_objfile_bfd_data): Likewise.
10021         (objfile_register_static_link): Likewise.
10022         * psymtab.c (allocate_psymtab): Likewise.
10023         * stabsread.c (read_member_functions): Likewise.
10024         * xcoffread.c (xcoff_end_psymtab): Likewise.
10025
10026 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
10027
10028         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
10029         compiler supports std::is_trivially_constructible.
10030         * common/poison.h: Include obstack.h.
10031         (IsMallocable): Define to is_trivially_constructible if the
10032         compiler supports it, define to true_type otherwise.
10033         (xobnew): New.
10034         (XOBNEW): Redefine.
10035         (xobnewvec): New.
10036         (XOBNEWVEC): Redefine.
10037         * gdb_obstack.h (obstack_zalloc): New.
10038         (OBSTACK_ZALLOC): Redefine.
10039         (obstack_calloc): New.
10040         (OBSTACK_CALLOC): Redefine.
10041         (obstack_new): New.
10042         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
10043         (gdbarch_obstack): New declaration in gdbarch.h, definition in
10044         gdbarch.c.
10045         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
10046         obstack_calloc/obstack_zalloc.
10047         (gdbarch_obstack_zalloc): Remove.
10048         * target-descriptions.c (tdesc_data_init): Use obstack_new.
10049
10050 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10051
10052         * stack.c (backtrace_command_1): Remove useless variable int i.
10053
10054 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
10055
10056         * stack.c (print_frame_info): Fix comment.
10057
10058 2018-05-18  Tom Tromey  <tom@tromey.com>
10059
10060         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
10061         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
10062         (~dwarf2_per_objfile): Update
10063         (dwarf2_get_dwz_file): Use new.
10064         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
10065         unique_ptr.
10066
10067 2018-05-18  Tom Tromey  <tom@tromey.com>
10068
10069         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
10070         unique_ptr.
10071         * dwarf2read.c (struct dwp_file): Add constructor and
10072         initializers.
10073         (open_and_init_dwp_file): Return a unique_ptr.
10074         (dwarf2_per_objfile, create_dwp_hash_table)
10075         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
10076         (lookup_dwo_unit_in_dwp): Update.
10077         (open_and_init_dwp_file, get_dwp_file): Update.
10078
10079 2018-05-18  Tom Tromey  <tom@tromey.com>
10080
10081         * dwarf2read.c (dwarf2_per_objfile): Update.
10082         (struct mapped_index): Add initializers.
10083         (dwarf2_read_index): Use new.
10084         (dw2_symtab_iter_init): Update.
10085         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10086         unique_ptr.
10087
10088 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10089
10090         * dwarf2read.c (mapped_index) <total_size>: Remove.
10091
10092 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10093
10094         * unittests/format_pieces-selftests.c (test_format_specifier):
10095         Add ARI comments.
10096
10097 2018-05-18  Tom Tromey  <tom@tromey.com>
10098
10099         * c-typeprint.c (maybe_print_hole): New function.
10100         (c_print_type_struct_field_offset): Update.
10101         (c_type_print_base_struct_union): Call maybe_print_hole.
10102
10103 2018-05-17  Keith Seitz  <keiths@redhat.com>
10104
10105         * breakpoint.c (build_bpstat_chain): New function, moved from
10106         bpstat_stop_status.
10107         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10108         If no stop chain is passed, call build_bpstat_chain to build it.
10109         * breakpoint.h (build_bpstat_chain): Declare.
10110         (bpstat_stop_status): Move documentation here from breakpoint.c.
10111         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10112         build the stop chain and pass it to skip_inline_frames.
10113         Pass this stop chain to bpstat_stop_status.
10114         * inline-frame.c: Include breakpoint.h.
10115         (stopped_by_user_bp_inline_frame): New function.
10116         (skip_inline_frames): Add parameter `stop_chain'.
10117         Move documention to inline-frame.h.
10118         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10119         whether the frame should be elided.
10120         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10121         Add moved documentation and update for new parameter.
10122
10123 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10124
10125         PR cli/14975
10126         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10127         unittests/format_pieces-selftests.c.
10128         * common/format.h (format_piece) <operator==>: New.
10129         (format_pieces) <operator[]>: Remove.
10130         * common/format.c (format_pieces::format_pieces): Handle \e.
10131         * unittests/format_pieces-selftests.c: New.
10132
10133 2018-05-17  Tom Tromey  <tom@tromey.com>
10134
10135         PR symtab/23010:
10136         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10137         (dw2_instantiate_symtab): Add skip_partial parameter.
10138         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10139         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10140         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10141         (dw2_expand_symtabs_matching_one)
10142         (dw2_find_pc_sect_compunit_symtab)
10143         (dw2_debug_names_lookup_symbol)
10144         (dw2_debug_names_expand_symtabs_for_function): Update.
10145         (init_cutu_and_read_dies): Add skip_partial parameter.
10146         (process_psymtab_comp_unit, build_type_psymtabs_1)
10147         (process_skeletonless_type_unit, load_partial_comp_unit)
10148         (psymtab_to_symtab_1): Update.
10149         (load_full_comp_unit): Add skip_partial parameter.
10150         (process_imported_unit_die, dwarf2_read_addr_index)
10151         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10152         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10153         (read_signatured_type): Update.
10154
10155 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10156
10157         * value.c (release_value): Remove unused variable.
10158         (record_latest_value): Likewise.
10159         (access_value_history): Likewise.
10160         (preserve_values): Likewise.
10161
10162 2018-05-17  Tom Tromey  <tom@tromey.com>
10163
10164         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10165         Initialize.
10166
10167 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10168
10169         PR gdb/22286
10170         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10171         Also handle registers whose width is not a multiple of
10172         PTRACE_TYPE_RET.
10173         (linux_nat_trad_target::store_register): Likewise.
10174
10175 2018-05-16  Tom Tromey  <tom@tromey.com>
10176
10177         * gdbcore.h (core_bfd): Redefine.
10178         * corelow.c (core_target::close): Update.
10179         (core_target_open): Update.
10180         * progspace.h (struct program_space) <cbfd>: Now a
10181         gdb_bfd_ref_ptr.
10182
10183 2018-05-16  Tom Tromey  <tom@tromey.com>
10184
10185         PR cli/19551:
10186         * symfile-add-flags.h (enum symfile_add_flags)
10187         <SYMFILE_NOT_FILENAME>: New constant.
10188         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10189         objfile name from BFD.
10190         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10191         * minidebug.c (find_separate_debug_file_in_section): Put
10192         ".gnu_debugdata" into BFD's file name.
10193
10194 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10195
10196         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10197         Remove.
10198
10199 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10200
10201         PR binutils/21446
10202         * aarch64-tdep.c (aarch64_analyze_prologue,
10203         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10204         Indicate not interested in errors.
10205
10206 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10207
10208         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10209         Supply the MIPS_ZERO_REGNUM register.
10210
10211 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10212
10213         * mips-tdep.c (mask_address_var): Make variable static.
10214
10215 2018-05-14  Tom Tromey  <tom@tromey.com>
10216
10217         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10218
10219 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10220
10221         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10222         FXSAVE_ADDR for the mxcsr register.
10223
10224 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10225
10226         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10227
10228 2018-05-11  Pedro Alves  <palves@redhat.com>
10229
10230         * corelow.c (core_target) <core_target>: No longer inline.
10231         Initialize m_core_gdbarch, m_core_vec and build the section table
10232         here.
10233         <~core_target>: New.
10234         <core_gdbarch, get_core_register_section>: New methods.
10235         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10236         factored out from ...
10237         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10238         (core_ops): Delete.
10239         (sniff_core_bfd): Add gdbarch parameter.
10240         (core_close): Delete, merged into ...
10241         (core_target::close): ... here.  Delete self.
10242         (core_close_cleanup): Delete.
10243         (core_target_open): Allocate a core_target on the heap.  Use a
10244         unique_ptr instead of a cleanup.  Bits moved into the core_target
10245         ctor.  Adjust to use core_target methods instead of globals.
10246         (get_core_register_section): Rename to ...
10247         (core_target::get_core_register_section): ... this and adjust.
10248         (struct get_core_registers_cb_data): New.
10249         (get_core_registers_cb): Use it.  Use bool.
10250         (core_target::fetch_registers, core_target::files_info)
10251         (core_target::xfer_partial, core_target::read_description)
10252         (core_target::pid_to, core_target::thread_name): Adjust to
10253         reference class fields instead of globals.
10254         * target.h (struct target_ops_deleter, target_ops_up): New.
10255
10256 2018-05-11  Pedro Alves  <palves@redhat.com>
10257
10258         * corefile.c (core_file_command): Move to corelow.c.
10259         * corelow.c (the_core_target): Delete.
10260         (core_file_command): Moved from corefile.c.  Check exec_bfd
10261         instead of the_core_target.  Use target_detach instead of calling
10262         into the_core_target directly.
10263         (maybe_say_no_core_file_now): New.
10264         (core_target::detach): Use it.
10265         (_initialize_corelow): Remove references to the_core_target.
10266         * gdbcore.h (the_core_target): Delete.
10267
10268 2018-05-11  Tom Tromey  <tromey@redhat.com>
10269             Pedro Alves  <palves@redhat.com>
10270
10271         * corefile.c (core_bfd): Remove.
10272         * gdbcore.h (core_bfd): Now a macro.
10273         * progspace.h (struct program_space) <cbfd>: New field.
10274
10275 2018-05-11  Tom Tromey  <tom@tromey.com>
10276
10277         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10278         gdb::def_vector.
10279
10280 2018-05-10  Tom Tromey  <tom@tromey.com>
10281
10282         * configure: Rebuild.
10283         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10284
10285 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10286
10287         PR server/23158:
10288         * regformats/regdat.sh: Adjust script, following the addition
10289         of the new expedite_regs parameter to init_target_desc.
10290
10291 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10292     
10293         PR gdb/23127
10294         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10295         set_gdbarch_significant_addr_bit.
10296         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10297         set_gdbarch_significant_addr_bit.
10298         * utils.c (address_significant): Update to sign extend addr.
10299
10300 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10301
10302         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10303         (xtensa_linux_init_abi): Limit tdep->num_regs by
10304         tdep->num_nopriv_regs.
10305         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10306         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10307         not initialized.
10308
10309 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10310
10311         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10312
10313 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10314
10315         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10316         (I387_MXCSR_INIT_VAL): New constant.
10317         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10318         buffer if it was supplied by the inferior.
10319         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10320         (i387_xsave_get_clear_bv): New function.
10321         (i387_supply_xsave): Only read x87 control registers from the
10322         xsave buffer if the feature is enabled, and the state will have
10323         been written, otherwise, provide a suitable default.
10324         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10325         including x87 control registers.  Update control registers if they
10326         have changed from the default value, and mark features as enabled
10327         as required.
10328         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10329
10330 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10331
10332         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10333
10334 2018-05-07  Tom Tromey  <tom@tromey.com>
10335
10336         * configure: Rebuild.
10337         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10338
10339 2018-05-07  Tom Tromey  <tom@tromey.com>
10340
10341         PR tdep/20362:
10342         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10343         bit.  Use correct value for VDIV.
10344
10345 2018-05-04  Tom Tromey  <tom@tromey.com>
10346
10347         * configure: Rebuild.
10348         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10349
10350 2018-05-04  Tom Tromey  <tom@tromey.com>
10351
10352         * linux-record.c (record_linux_system_call) <case
10353         RECORD_SYS_RECVFROM>: Add "break".
10354
10355 2018-05-04  Tom Tromey  <tom@tromey.com>
10356
10357         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10358         Add missing "break".
10359         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10360         Add missing "break".
10361
10362 2018-05-04  Tom Tromey  <tom@tromey.com>
10363
10364         * rs6000-tdep.c (ppc_process_record_op4)
10365         (ppc_process_record_op63): Add fall-through comment.
10366
10367 2018-05-04  Tom Tromey  <tom@tromey.com>
10368
10369         * i386-tdep.c (i386_process_record): Add fall-through comment.
10370
10371 2018-05-04  Tom Tromey  <tom@tromey.com>
10372
10373         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10374         comment.
10375
10376 2018-05-04  Tom Tromey  <tom@tromey.com>
10377
10378         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10379         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10380         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10381         comment.
10382         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10383         comment.
10384         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10385         comment.
10386
10387 2018-05-04  Tom Tromey  <tom@tromey.com>
10388
10389         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10390
10391 2018-05-04  Tom Tromey  <tom@tromey.com>
10392
10393         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10394         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10395         * symfile.c (section_is_mapped): Fix fall-through comment.
10396         * stabsread.c (define_symbol, read_member_functions): Fix
10397         fall-through comment.
10398         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10399         comment.
10400         * remote.c (remote_wait_as): Fix fall-through comment.
10401         * p-exp.y (yylex): Fix fall-through comment.
10402         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10403         comment.
10404         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10405         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10406         * jv-exp.y (yylex): Fix fall-through comment.
10407         * go-exp.y (lex_one_token): Fix fall-through comment.
10408         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10409         fall-through comment.
10410         * f-exp.y (yylex): Fix fall-through comment.
10411         * dwarf2read.c (process_die): Fix fall-through comments.
10412         * dbxread.c (process_one_symbol): Fix fall-through comment.
10413         * d-exp.y (lex_one_token): Fix fall-through comment.
10414         * cp-name-parser.y (yylex): Fix fall-through comment.
10415         * coffread.c (coff_symtab_read): Fix fall-through comment.
10416         * c-exp.y (lex_one_token): Fix fall-through comment.
10417         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10418         comment.
10419         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10420         comment.
10421
10422 2018-05-04  Tom Tromey  <tom@tromey.com>
10423
10424         PR python/22730:
10425         * NEWS: Mention gdb.execute change.
10426         * gdbcmd.h (execute_control_command): Don't declare.
10427         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10428         execute_control_commands, execute_control_commands_to_string.
10429         * cli/cli-script.h (execute_control_commands)
10430         (execute_control_commands_to_string): Declare.
10431         (execute_control_command): Add from_tty parameter.
10432         * cli/cli-script.c (execute_control_commands)
10433         (execute_control_commands_to_string): New functions.
10434         (execute_user_command): Use execute_control_commands.
10435         (execute_control_command_1): Add "from_tty" parameter.  Update.
10436         (execute_control_command): Likewise.
10437
10438 2018-05-04  Tom Tromey  <tom@tromey.com>
10439
10440         PR python/22731:
10441         * NEWS: Mention that breakpoint commands are writable.
10442         * python/py-breakpoint.c (bppy_set_commands): New function.
10443         (breakpoint_object_getset) <"commands">: Use it.
10444
10445 2018-05-04  Tom Tromey  <tom@tromey.com>
10446
10447         * tracepoint.c (actions_command): Update.
10448         * mi/mi-cmd-break.c (mi_command_line_array)
10449         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10450         (mi_read_next_line): Remove.
10451         (mi_cmd_break_commands): Update.
10452         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10453         function_view.
10454         * cli/cli-script.c (get_command_line): Update.
10455         (process_next_line): Use function_view.  Constify.
10456         (recurse_read_control_structure, read_command_lines)
10457         (read_command_lines_1): Change argument types to function_view.
10458         (do_define_command, document_command): Update.
10459         * breakpoint.h (check_tracepoint_command): Don't declare.
10460         * breakpoint.c (check_tracepoint_command): Remove.
10461         (commands_command_1, create_tracepoint_from_upload): Update.
10462
10463 2018-05-04  Tom Tromey  <tom@tromey.com>
10464
10465         PR gdb/11750:
10466         * cli/cli-script.h (enum command_control_type) <define_control>:
10467         New constant.
10468         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10469         (build_command_line, execute_control_command_1)
10470         (process_next_line): Likewise.
10471         (do_define_command): New function, extracted from define_command.
10472         (define_command): Use it.
10473
10474 2018-05-04  Tom Tromey  <tom@tromey.com>
10475
10476         * tracepoint.c (actions_command): Update.
10477         * cli/cli-script.h (read_command_lines): Update.
10478         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10479         (MAX_TMPBUF): Remove define.
10480         (define_command): Use string_printf.
10481         (document_command): Likewise.
10482         * breakpoint.c (commands_command_1): Update.
10483
10484 2018-05-04  Tom Tromey  <tom@tromey.com>
10485
10486         * top.c (execute_command): Update.
10487         * cli/cli-script.h (print_command_lines): Now varargs.
10488         * cli/cli-script.c (print_command_lines): Now varargs.
10489         (execute_control_command_1) <case while_control, case if_control>:
10490         Update.
10491
10492 2018-05-04  Tom Tromey  <tom@tromey.com>
10493
10494         * tracepoint.c (all_tracepoint_actions): Rename from
10495         all_tracepoint_actions_and_cleanup.  Change return type.
10496         (actions_command, encode_actions_1, encode_actions)
10497         (trace_dump_actions, tdump_command): Update.
10498         * remote.c (remote_download_command_source): Update.
10499         * python/python.c (gdbpy_eval_from_control_command)
10500         (python_command, python_interactive_command): Update.
10501         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10502         * guile/guile.c (guile_command)
10503         (gdbscm_eval_from_control_command, guile_command): Update.
10504         * compile/compile.c (compile_code_command)
10505         (compile_print_command, compile_to_object): Update.
10506         * cli/cli-script.h (struct command_lines_deleter): New.
10507         (counted_command_line): New typedef.
10508         (struct command_line): Add constructor, destructor.
10509         <body_list>: Remove.
10510         <body_list_0, body_list_1>: New members.
10511         (command_line_up): Remove typedef.
10512         (read_command_lines, read_command_lines_1, get_command_line):
10513         Update.
10514         (copy_command_lines): Don't declare.
10515         * cli/cli-script.c (build_command_line): Use "new".
10516         (get_command_line): Return counted_command_line.
10517         (print_command_lines, execute_user_command)
10518         (execute_control_command_1, while_command, if_command): Update.
10519         (realloc_body_list): Remove.
10520         (process_next_line, recurse_read_control_structure): Update.
10521         (read_command_lines, read_command_lines_1): Return counted_command_line.
10522         (free_command_lines): Use "delete".
10523         (copy_command_lines): Remove.
10524         (define_command, document_command, show_user_1): Update.
10525         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10526         a counted_command_line.
10527         * breakpoint.h (counted_command_line): Remove typedef.
10528         (breakpoint_set_commands): Update.
10529         * breakpoint.c (check_no_tracepoint_commands)
10530         (validate_commands_for_breakpoint): Update.
10531         (breakpoint_set_commands): Change commands to be a
10532         counted_command_line.
10533         (commands_command_1, update_dprintf_command_list)
10534         (create_tracepoint_from_upload): Update.
10535
10536 2018-05-04  Tom Tromey  <tom@tromey.com>
10537
10538         * cli/cli-decode.h (cmd_list_element): New constructor.
10539         (~cmd_list_element): New destructor.
10540         (struct cmd_list_element): Add initializers.
10541         * cli/cli-decode.c (do_add_cmd): Use "new".
10542         (delete_cmd): Use "delete".
10543
10544 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10545             Pedro Alves <palves@redhat.com>
10546
10547         PR breakpoints/19806 and support for PR external/20207.
10548         * NEWS: Mention Aarch64 watchpoint improvements.
10549         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10550         watchpoints and PR external/20207 watchpoints.
10551         * nat/aarch64-linux-hw-point.c
10552         (kernel_supports_any_contiguous_range): New.
10553         (aarch64_watchpoint_offset): New.
10554         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10555         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10556         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10557         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10558         next_addr_orig_p.  Support PR external/20207 watchpoints.
10559         (aarch64_downgrade_regs): New.
10560         (aarch64_dr_state_insert_one_point): New parameters offset and
10561         addr_orig.
10562         (aarch64_dr_state_remove_one_point): Likewise.
10563         (aarch64_handle_breakpoint): Update caller.
10564         (aarch64_handle_aligned_watchpoint): Likewise.
10565         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10566         aligned_offset.
10567         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10568         aarch64_downgrade_regs.
10569         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10570         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10571         (DR_CONTROL_MASK): ... this.
10572         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10573         (unsigned int aarch64_watchpoint_offset): New prototype.
10574         (aarch64_linux_set_debug_regs): Remove const from state.
10575         * utils.c (align_up, align_down): Move to ...
10576         * common/common-utils.c (align_up, align_down): ... here.
10577         * utils.h (align_up, align_down): Move to ...
10578         * common/common-utils.h (align_up, align_down): ... here.
10579
10580 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10581
10582         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10583         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10584         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10585         Re-implement to match the ABI as summarized in GCC's
10586         gcc/config/sparc/sparc.c.  All callers updated.
10587         (sparc32_store_arguments): Remove assertion.
10588
10589 2018-05-04  Tom Tromey  <tom@tromey.com>
10590
10591         * printcmd.c: Don't include tui.h.
10592         (decode_format): Use skip_spaces.
10593
10594 2018-05-04  Tom Tromey  <tom@tromey.com>
10595
10596         PR gdb/22619:
10597         * printcmd.c (last_count): New global.
10598         (x_command): Use saved count when repeating.
10599
10600 2018-05-04  Tom Tromey  <tom@tromey.com>
10601
10602         * nto-procfs.c (do_closedir_cleanup): Remove.
10603         (procfs_pidlist): Use gdb_dir_up.
10604         * procfs.c (do_closedir_cleanup): Remove.
10605         (proc_update_threads): Use gdb_dir_up.
10606         * common/filestuff.h (struct gdb_dir_deleter): New.
10607         (gdb_dir_up): New typedef.
10608
10609 2018-05-04  Tom Tromey  <tom@tromey.com>
10610
10611         * ada-lang.c (print_mention_exception): Use std::string.
10612
10613 2018-05-04  Tom Tromey  <tom@tromey.com>
10614
10615         * ada-lang.c (create_excep_cond_exprs): Update.
10616         (ada_exception_catchpoint_cond_string): Use std::string.
10617
10618 2018-05-04  Tom Tromey  <tom@tromey.com>
10619
10620         * ada-lang.c (xget_renaming_scope): Return std::string.
10621         (old_renaming_is_invisible): Update.
10622
10623 2018-05-04  Tom Tromey  <tom@tromey.com>
10624
10625         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10626         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10627
10628 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10629
10630         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10631
10632 2018-05-04  Tom Tromey  <tom@tromey.com>
10633
10634         * remote.c (remote_query_supported_append): Change type.
10635         (remote_check_symbols): Update.
10636
10637 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10638
10639         PR gdb/11420
10640         * configure.ac: Prepend libpython.
10641         * python/python-config.py: Likewise.
10642         * configure: Regenerate.
10643
10644 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10645
10646         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10647
10648 2018-05-03  Pedro Alves  <palves@redhat.com>
10649
10650         * s390-linux-nat.c
10651         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10652         override.  Write 'true' instead of '1'.
10653         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10654         declaration.
10655
10656 2018-05-02  Pedro Alves  <palves@redhat.com>
10657
10658         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10659         add_inf_child_target.
10660         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10661         add_inf_child_target.
10662         * aix-thread.c (aix_thread_target_info): New.
10663         (aix_thread_target) <shortname, longname, doc>: Delete.
10664         <info>: New.
10665         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10666         add_inf_child_target.
10667         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10668         add_inf_child_target.
10669         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10670         add_inf_child_target.
10671         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10672         add_inf_child_target.
10673         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10674         add_inf_child_target.
10675         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10676         add_inf_child_target.
10677         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10678         add_inf_child_target.
10679         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10680         add_inf_child_target.
10681         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10682         add_inf_child_target.
10683         * bfd-target.c (target_bfd_target_info): New.
10684         (target_bfd) <shortname, longname, doc>: Delete.
10685         <info>: New.
10686         * bsd-kvm.c (bsd_kvm_target_info): New.
10687         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10688         <info>: New.
10689         (bsd_kvm_target::open): Rename to ...
10690         (bsd_kvm_target_open): ... this.  Adjust.
10691         * bsd-uthread.c (bsd_uthread_target_info): New.
10692         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10693         <info>: New.
10694         * corefile.c (core_file_command): Adjust.
10695         * corelow.c (core_target_info): New.
10696         (core_target) <shortname, longname, doc>: Delete.
10697         <info>: New.
10698         (core_target::open): Rename to ...
10699         (core_target_open): ... this.  Adjust.
10700         * ctf.c (ctf_target_info): New.
10701         (ctf_target) <shortname, longname, doc>: Delete.
10702         <info>: New.
10703         (ctf_target::open): Rename to ...
10704         (ctf_target_open): ... this.
10705         (_initialize_ctf): Adjust.
10706         * exec.c (exec_target_info): New.
10707         (exec_target) <shortname, longname, doc>: Delete.
10708         <info>: New.
10709         (exec_target::open): Rename to ...
10710         (exec_target_open): ... this.
10711         * gdbcore.h (core_target_open): Declare.
10712         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10713         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10714         add_inf_child_target.
10715         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10716         add_inf_child_target.
10717         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10718         add_inf_child_target.
10719         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10720         add_inf_child_target.
10721         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10722         add_inf_child_target.
10723         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10724         add_inf_child_target.
10725         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10726         add_inf_child_target.
10727         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10728         add_inf_child_target.
10729         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10730         add_inf_child_target.
10731         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10732         add_inf_child_target.
10733         * inf-child.c (inf_child_target_info): New.
10734         (inf_child_target::info): New.
10735         (inf_child_open_target): Remove 'target' parameter.  Use
10736         get_native_target instead.
10737         (inf_child_target::open): Delete.
10738         (add_inf_child_target): New.
10739         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10740         Delete.
10741         <info>: New.
10742         (add_inf_child_target): Declare.
10743         (inf_child_open_target): Declare.
10744         * linux-thread-db.c (thread_db_target_info): New.
10745         (thread_db_target) <shortname, longname, doc>: Delete.
10746         <info>: New.
10747         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10748         add_inf_child_target.
10749         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10750         add_inf_child_target.
10751         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10752         add_inf_child_target.
10753         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10754         add_inf_child_target.
10755         * make-target-delegates (print_class): Adjust.
10756         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10757         add_inf_child_target.
10758         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10759         add_inf_child_target.
10760         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10761         add_inf_child_target.
10762         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10763         add_inf_child_target.
10764         * nto-procfs.c (nto_native_target_info): New.
10765         (nto_procfs_target_native) <shortname, longname, doc>:
10766         Delete.
10767         <info>: New.
10768         (nto_procfs_target_info): New.
10769         (nto_procfs_target_procfs) <shortname, longname, doc>:
10770         Delete.
10771         <info>: New.
10772         (init_procfs_targets): Adjust.
10773         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10774         add_inf_child_target.
10775         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10776         add_inf_child_target.
10777         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10778         add_inf_child_target.
10779         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10780         add_inf_child_target.
10781         * ravenscar-thread.c (ravenscar_target_info): New.
10782         (ravenscar_thread_target) <shortname, longname, doc>:
10783         Delete.
10784         <info>: New.
10785         * record-btrace.c (record_btrace_target_info):
10786         (record_btrace_target) <shortname, longname, doc>: Delete.
10787         <info>: New.
10788         (record_btrace_target::open): Rename to ...
10789         (record_btrace_target_open): ... this.  Adjust.
10790         * record-full.c (record_longname, record_doc): New.
10791         (record_full_base_target) <shortname, longname, doc>: Delete.
10792         <info>: New.
10793         (record_full_target_info): New.
10794         (record_full_target): <shortname>: Delete.
10795         <info>: New.
10796         (record_full_core_open_1, record_full_open_1): Update comments.
10797         (record_full_base_target::open): Rename to ...
10798         (record_full_open): ... this.
10799         (cmd_record_full_restore): Update.
10800         (_initialize_record_full): Update.
10801         * remote-sim.c (remote_sim_target_info): New.
10802         (gdbsim_target) <shortname, longname, doc>: Delete.
10803         <info>: New.
10804         (gdbsim_target::open): Rename to ...
10805         (gdbsim_target_open): ... this.
10806         (_initialize_remote_sim): Adjust.
10807         * remote.c (remote_doc): New.
10808         (remote_target_info): New.
10809         (remote_target) <shortname, longname, doc>: Delete.
10810         <info>: New.
10811         (extended_remote_target_info): New.
10812         (extended_remote_target) <shortname, longname, doc>: Delete.
10813         <info>: New.
10814         (remote_target::open_1): Make static.  Adjust.
10815         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10816         * s390-linux-nat.c (_initialize_s390_nat): Use
10817         add_inf_child_target.
10818         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10819         add_inf_child_target.
10820         * sol-thread.c (thread_db_target_info): New.
10821         (sol_thread_target) <shortname, longname, doc>: Delete.
10822         <info>: New.
10823         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10824         add_inf_child_target.
10825         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10826         add_inf_child_target.
10827         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10828         add_inf_child_target.
10829         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10830         add_inf_child_target.
10831         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10832         add_inf_child_target.
10833         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10834         add_inf_child_target.
10835         * spu-linux-nat.c (_initialize_spu_nat): Use
10836         add_inf_child_target.
10837         * spu-multiarch.c (spu_multiarch_target_info): New.
10838         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10839         <info>: New.
10840         * target-delegates.c: Regenerate.
10841         * target.c: Include <unordered_map>.
10842         (target_ops_p): Delete.
10843         (DEF_VEC_P(target_ops_p)): Delete.
10844         (target_factories): New.
10845         (test_target_info): New.
10846         (test_target_ops::info): New.
10847         (open_target): Adjust to use target_factories.
10848         (add_target_with_completer): Rename to ...
10849         (add_target): ... this.  Change prototype.  Register target_info
10850         and open callback in target_factories.  Register target_info in
10851         command context instead of target_ops.
10852         (add_target): Delete old implementation.
10853         (add_deprecated_target_alias): Change prototype.  Adjust.
10854         (the_native_target): New.
10855         (set_native_target, get_native_target): New.
10856         (find_default_run_target): Use the_native_target.
10857         (find_attach_target, find_run_target): Simplify.
10858         (target_ops::open): Delete.
10859         (dummy_target_info): New.
10860         (dummy_target::shortname, dummy_target::longname)
10861         (dummy_target::doc): Delete.
10862         (dummy_target::info): New.
10863         (debug_target::shortname, debug_target::longname)
10864         (debug_target::doc): Delete.
10865         (debug_target::info): New.
10866         * target.h (struct target_info): New.
10867         (target_ops::~target_ops): Add comment.
10868         (target_ops::info): New.
10869         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10870         longer virtual.  Implement in terms of target_info.
10871         (set_native_target, get_native_target): Declare.
10872         (target_open_ftype): New.
10873         (add_target, add_target_with_completer)
10874         (add_deprecated_target_alias): Change prototype.
10875         (test_target) <shortname, longname, doc>: Delete.
10876         <info>: New.
10877         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10878         add_inf_child_target.
10879         * tracefile-tfile.c (tfile_target_info): New.
10880         (tfile_target) <shortname, longname, doc>: Delete.
10881         <info>: New.
10882         (tfile_target::open): Rename to ...
10883         (tfile_target_open): ... this.
10884         (_initialize_tracefile_tfile): Adjust.
10885         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10886         add_inf_child_target.
10887         * windows-nat.c (_initialize_windows_nat): Use
10888         add_inf_child_target.
10889         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10890         add_inf_child_target.
10891
10892 2018-05-02  Pedro Alves  <palves@redhat.com>
10893
10894         * linux-nat.h (linux_nat_target) <low_new_thread,
10895         low_delete_thread, low_new_fork, low_forget_process,
10896         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10897         New virtual methods.
10898         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10899         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10900         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10901         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10902         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10903         Delete.
10904         * linux-fork.c (delete_fork): Adjust to call low method.
10905         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10906         (linux_nat_new_fork, linux_nat_forget_process_hook)
10907         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10908         (linux_nat_status_is_event):
10909         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10910         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10911         to call low method.
10912         (sigtrap_is_event): Rename to ...
10913         (linux_nat_target::low_status_is_event): ... this.
10914         (linux_nat_set_status_is_event): Delete.
10915         (save_stop_reason, linux_nat_wait_1)
10916         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10917         low methods.
10918         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10919         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10920         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10921         (linux_nat_set_prepare_to_resume): Delete.
10922         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10923         low virtual methods.
10924         * amd64-linux-nat.c: Likewise.
10925         * arm-linux-nat.c: Likewise.
10926         * i386-linux-nat.c: Likewise.
10927         * ia64-linux-nat.c: Likewise.
10928         * mips-linux-nat.c: Likewise.
10929         * ppc-linux-nat.c: Likewise.
10930         * s390-linux-nat.c: Likewise.
10931         * sparc64-linux-nat.c: Likewise.
10932         * x86-linux-nat.c: Likewise.
10933         * x86-linux-nat.h: Include "nat/x86-linux.h".
10934         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10935         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10936         Override methods.
10937
10938 2018-05-02  Pedro Alves  <palves@redhat.com>
10939
10940         * target.h (target_ops)
10941         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10942         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10943         stopped_by_watchpoint, have_continuable_watchpoint,
10944         stopped_data_address, watchpoint_addr_within_range,
10945         can_accel_watchpoint_condition, can_run, thread_alive,
10946         has_all_memory, has_memory, has_stack, has_registers,
10947         has_execution, can_async_p, is_async_p, supports_non_stop,
10948         always_non_stop_p, can_execute_reverse, supports_multi_process,
10949         supports_enable_disable_tracepoint,
10950         supports_disable_randomization, supports_string_tracing,
10951         supports_evaluation_of_breakpoint_conditions,
10952         can_run_breakpoint_commands, filesystem_is_local,
10953         can_download_tracepoint, get_trace_state_variable_value,
10954         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10955         record_is_replaying, record_will_replay,
10956         augmented_libraries_svr4_read>: Adjust to return bool.
10957         * aarch64-linux-nat.c: All implementations adjusted.
10958         * aix-thread.c: All implementations adjusted.
10959         * arm-linux-nat.c: All implementations adjusted.
10960         * breakpoint.c: All implementations adjusted.
10961         * bsd-kvm.c: All implementations adjusted.
10962         * bsd-uthread.c: All implementations adjusted.
10963         * corelow.c: All implementations adjusted.
10964         * ctf.c: All implementations adjusted.
10965         * darwin-nat.c: All implementations adjusted.
10966         * darwin-nat.h: All implementations adjusted.
10967         * exec.c: All implementations adjusted.
10968         * fbsd-nat.c: All implementations adjusted.
10969         * fbsd-nat.h: All implementations adjusted.
10970         * gnu-nat.c: All implementations adjusted.
10971         * gnu-nat.h: All implementations adjusted.
10972         * go32-nat.c: All implementations adjusted.
10973         * ia64-linux-nat.c: All implementations adjusted.
10974         * inf-child.c: All implementations adjusted.
10975         * inf-child.h: All implementations adjusted.
10976         * inf-ptrace.c: All implementations adjusted.
10977         * inf-ptrace.h: All implementations adjusted.
10978         * linux-nat.c: All implementations adjusted.
10979         * linux-nat.h: All implementations adjusted.
10980         * mips-linux-nat.c: All implementations adjusted.
10981         * nto-procfs.c: All implementations adjusted.
10982         * ppc-linux-nat.c: All implementations adjusted.
10983         * procfs.c: All implementations adjusted.
10984         * ravenscar-thread.c: All implementations adjusted.
10985         * record-btrace.c: All implementations adjusted.
10986         * record-full.c: All implementations adjusted.
10987         * remote-sim.c: All implementations adjusted.
10988         * remote.c: All implementations adjusted.
10989         * s390-linux-nat.c: All implementations adjusted.
10990         * sol-thread.c: All implementations adjusted.
10991         * spu-multiarch.c: All implementations adjusted.
10992         * target-delegates.c: All implementations adjusted.
10993         * target.c: All implementations adjusted.
10994         * target.h: All implementations adjusted.
10995         * tracefile-tfile.c: All implementations adjusted.
10996         * tracefile.c: All implementations adjusted.
10997         * tracefile.h: All implementations adjusted.
10998         * windows-nat.c: All implementations adjusted.
10999         * x86-linux-nat.h: All implementations adjusted.
11000         * x86-nat.h: All implementations adjusted.
11001
11002 2018-05-02  Pedro Alves  <palves@redhat.com>
11003
11004         * make-target-delegates (scan_target_h): Don't trim lines here.
11005         Replace sequences of tabs and/or whitespace with a single
11006         whitespace.
11007         (top level, parsing methods): Trim each line before processing it
11008         here.
11009
11010 2018-05-02  Pedro Alves  <palves@redhat.com>
11011             John Baldwin  <jhb@freebsd.org>
11012
11013         * target.h (enum strata) <debug_stratum>: New.
11014         (struct target_ops) <all delegation methods>: Replace by C++
11015         virtual methods, and drop "to_" prefix.  All references updated
11016         throughout.
11017         <to_shortname, to_longname, to_doc, to_data,
11018         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
11019         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
11020         virtual methods.  All references updated throughout.
11021         <can_attach, supports_terminal_ours, can_create_inferior,
11022         get_thread_control_capabilities, attach_no_wait>: New
11023         virtual methods.
11024         <insert_breakpoint, remove_breakpoint>: Now
11025         TARGET_DEFAULT_NORETURN methods.
11026         <info_proc>: Now returns bool.
11027         <to_magic>: Delete.
11028         (OPS_MAGIC): Delete.
11029         (current_target): Delete.  All references replaced by references
11030         to ...
11031         (target_stack): ... this.  New.
11032         (target_shortname, target_longname): Adjust.
11033         (target_can_run): Now a function declaration.
11034         (default_child_has_all_memory, default_child_has_memory)
11035         (default_child_has_stack, default_child_has_registers)
11036         (default_child_has_execution): Remove target_ops parameter.
11037         (complete_target_initialization): Delete.
11038         (memory_breakpoint_target): New template class.
11039         (test_target_ops): Refactor as a C++ class with virtual methods.
11040         * make-target-delegates (NAME_PART): Tighten.
11041         (POINTER_PART, CP_SYMBOL): New.
11042         (SIMPLE_RETURN_PART): Reimplement.
11043         (VEC_RETURN_PART): Expect less.
11044         (RETURN_PART, VIRTUAL_PART): New.
11045         (METHOD): Adjust to C++ virtual methods.
11046         (scan_target_h): Remove reference to C99.
11047         (dname): Output "target_ops::" prefix.
11048         (write_function_header): Adjust to output a C++ class method.
11049         (write_declaration): New.
11050         (write_delegator): Adjust to output a C++ class method.
11051         (tdname): Output "dummy_target::" prefix.
11052         (write_tdefault, write_debugmethod): Adjust to output a C++ class
11053         method.
11054         (tdefault_names, debug_names): Delete.
11055         (return_types, tdefaults, styles, argtypes_array): New.
11056         (top level): All methods are delegators.
11057         (print_class): New.
11058         (top level): Print dummy_target and debug_target classes.
11059         * target-delegates.c: Regenerate.
11060         * target-debug.h (target_debug_print_enum_info_proc_what)
11061         (target_debug_print_thread_control_capabilities)
11062         (target_debug_print_thread_info_p): New.
11063         * target.c (dummy_target): Delete.
11064         (the_dummy_target, the_debug_target): New.
11065         (target_stack): Now extern.
11066         (set_targetdebug): Push/unpush debug target.
11067         (default_child_has_all_memory, default_child_has_memory)
11068         (default_child_has_stack, default_child_has_registers)
11069         (default_child_has_execution): Remove target_ops parameter.
11070         (complete_target_initialization): Delete.
11071         (add_target_with_completer): No longer call
11072         complete_target_initialization.
11073         (target_supports_terminal_ours): Use regular delegation.
11074         (update_current_target): Delete.
11075         (push_target): No longer check magic number.  Don't call
11076         update_current_target.
11077         (unpush_target): Don't call update_current_target.
11078         (target_is_pushed): No longer check magic number.
11079         (target_require_runnable): Skip for all stratums over
11080         process_stratum.
11081         (target_ops::info_proc): New.
11082         (target_info_proc): Use find_target_at and
11083         find_default_run_target.
11084         (target_supports_disable_randomization): Use regular delegation.
11085         (target_get_osdata): Use find_target_at.
11086         (target_ops::open, target_ops::close, target_ops::can_attach)
11087         (target_ops::attach, target_ops::can_create_inferior)
11088         (target_ops::create_inferior, target_ops::can_run)
11089         (target_can_run): New.
11090         (default_fileio_target): Use regular delegation.
11091         (target_ops::fileio_open, target_ops::fileio_pwrite)
11092         (target_ops::fileio_pread, target_ops::fileio_fstat)
11093         (target_ops::fileio_close, target_ops::fileio_unlink)
11094         (target_ops::fileio_readlink): New.
11095         (target_fileio_open_1, target_fileio_unlink)
11096         (target_fileio_readlink): Always call the target method.  Handle
11097         FILEIO_ENOSYS.
11098         (return_zero, return_zero_has_execution): Delete.
11099         (init_dummy_target): Delete.
11100         (dummy_target::dummy_target, dummy_target::shortname)
11101         (dummy_target::longname, dummy_target::doc)
11102         (debug_target::debug_target, debug_target::shortname)
11103         (debug_target::longname, debug_target::doc): New.
11104         (target_supports_delete_record): Use regular delegation.
11105         (setup_target_debug): Delete.
11106         (maintenance_print_target_stack): Skip debug_stratum.
11107         (initialize_targets): Instantiate the_dummy_target and
11108         the_debug_target.
11109         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11110         use target_stack.
11111         (target_auxv_search, fprint_target_auxv): Adjust.
11112         (info_auxv_command): Adjust to use target_stack.
11113         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11114         * exceptions.c (print_flush): Handle a NULL target_stack.
11115         * regcache.c (target_ops_no_register): Refactor as class with
11116         virtual methods.
11117
11118         * exec.c (exec_target): New class.
11119         (exec_ops): Now an exec_target.
11120         (exec_open, exec_close_1, exec_get_section_table)
11121         (exec_xfer_partial, exec_files_info, exec_has_memory)
11122         (exec_make_note_section): Refactor as exec_target methods.
11123         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11124         Delete.
11125         (exec_target::find_memory_regions): New.
11126         (_initialize_exec): Don't call init_exec_ops.
11127         * gdbcore.h (exec_file_clear): Delete.
11128
11129         * corefile.c (core_target): Delete.
11130         (core_file_command): Adjust.
11131         * corelow.c (core_target): New class.
11132         (the_core_target): New.
11133         (core_close): Remove target_ops parameter.
11134         (core_close_cleanup): Adjust.
11135         (core_target::close): New.
11136         (core_open, core_detach, get_core_registers, core_files_info)
11137         (core_xfer_partial, core_thread_alive, core_read_description)
11138         (core_pid_to_str, core_thread_name, core_has_memory)
11139         (core_has_stack, core_has_registers, core_info_proc): Rework as
11140         core_target methods.
11141         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11142         (_initialize_corelow): Initialize the_core_target.
11143         * gdbcore.h (core_target): Delete.
11144         (the_core_target): New.
11145
11146         * ctf.c: (ctf_target): New class.
11147         (ctf_ops): Now a ctf_target.
11148         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11149         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11150         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11151         methods.
11152         (init_ctf_ops): Delete.
11153         (_initialize_ctf): Don't call it.
11154         * tracefile-tfile.c (tfile_target): New class.
11155         (tfile_ops): Now a tfile_target.
11156         (tfile_open, tfile_close, tfile_files_info)
11157         (tfile_get_tracepoint_status, tfile_trace_find)
11158         (tfile_fetch_registers, tfile_xfer_partial)
11159         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11160         Refactor as tfile_target methods.
11161         (tfile_xfer_partial_features): Remove target_ops parameter.
11162         (init_tfile_ops): Delete.
11163         (_initialize_tracefile_tfile): Don't call it.
11164         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11165         (tracefile_has_stack, tracefile_has_registers)
11166         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11167         tracefile_target methods.
11168         (init_tracefile_ops): Delete.
11169         (tracefile_target::tracefile_target): New.
11170         * tracefile.h: Include "target.h".
11171         (tracefile_target): New class.
11172         (init_tracefile_ops): Delete.
11173
11174         * spu-multiarch.c (spu_multiarch_target): New class.
11175         (spu_ops): Now a spu_multiarch_target.
11176         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11177         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11178         (spu_search_memory, spu_mourn_inferior): Refactor as
11179         spu_multiarch_target methods.
11180         (init_spu_ops): Delete.
11181         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11182         complete_target_initialization.
11183
11184         * ravenscar-thread.c (ravenscar_thread_target): New class.
11185         (ravenscar_ops): Now a ravenscar_thread_target.
11186         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11187         (ravenscar_thread_alive, ravenscar_pid_to_str)
11188         (ravenscar_fetch_registers, ravenscar_store_registers)
11189         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11190         (ravenscar_stopped_by_hw_breakpoint)
11191         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11192         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11193         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11194         methods.
11195         (init_ravenscar_thread_ops): Delete.
11196         (_initialize_ravenscar): Remove references to
11197         init_ravenscar_thread_ops and complete_target_initialization.
11198
11199         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11200         (bsd_uthread_target): New class.
11201         (bsd_uthread_ops): Now a bsd_uthread_target.
11202         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11203         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11204         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11205         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11206         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11207         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11208         (bsd_uthread_target): Delete function.
11209         (_initialize_bsd_uthread): Remove reference to
11210         complete_target_initialization.
11211
11212         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11213         (target_bfd): ... this new class.
11214         (target_bfd_xfer_partial, target_bfd_get_section_table)
11215         (target_bfd_close): Refactor as target_bfd methods.
11216         (target_bfd::~target_bfd): New.
11217         (target_bfd_reopen): Adjust.
11218         (target_bfd::close): New.
11219
11220         * record-btrace.c (record_btrace_target): New class.
11221         (record_btrace_ops): Now a record_btrace_target.
11222         (record_btrace_open, record_btrace_stop_recording)
11223         (record_btrace_disconnect, record_btrace_close)
11224         (record_btrace_async, record_btrace_info)
11225         (record_btrace_insn_history, record_btrace_insn_history_range)
11226         (record_btrace_insn_history_from, record_btrace_call_history)
11227         (record_btrace_call_history_range)
11228         (record_btrace_call_history_from, record_btrace_record_method)
11229         (record_btrace_is_replaying, record_btrace_will_replay)
11230         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11231         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11232         (record_btrace_store_registers, record_btrace_prepare_to_store)
11233         (record_btrace_to_get_unwinder)
11234         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11235         (record_btrace_commit_resume, record_btrace_wait)
11236         (record_btrace_stop, record_btrace_can_execute_reverse)
11237         (record_btrace_stopped_by_sw_breakpoint)
11238         (record_btrace_supports_stopped_by_sw_breakpoint)
11239         (record_btrace_stopped_by_hw_breakpoint)
11240         (record_btrace_supports_stopped_by_hw_breakpoint)
11241         (record_btrace_update_thread_list, record_btrace_thread_alive)
11242         (record_btrace_goto_begin, record_btrace_goto_end)
11243         (record_btrace_goto, record_btrace_stop_replaying_all)
11244         (record_btrace_execution_direction)
11245         (record_btrace_prepare_to_generate_core)
11246         (record_btrace_done_generating_core): Refactor as
11247         record_btrace_target methods.
11248         (init_record_btrace_ops): Delete.
11249         (_initialize_record_btrace): Remove reference to
11250         init_record_btrace_ops.
11251         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11252         the execution_direction global.
11253         (record_full_base_target, record_full_target)
11254         (record_full_core_target): New classes.
11255         (record_full_ops): Now a record_full_target.
11256         (record_full_core_ops): Now a record_full_core_target.
11257         (record_full_target::detach, record_full_target::disconnect)
11258         (record_full_core_target::disconnect)
11259         (record_full_target::mourn_inferior, record_full_target::kill):
11260         New.
11261         (record_full_open, record_full_close, record_full_async): Refactor
11262         as methods of the record_full_base_target class.
11263         (record_full_resume, record_full_commit_resume): Refactor
11264         as methods of the record_full_target class.
11265         (record_full_wait, record_full_stopped_by_watchpoint)
11266         (record_full_stopped_data_address)
11267         (record_full_stopped_by_sw_breakpoint)
11268         (record_full_supports_stopped_by_sw_breakpoint)
11269         (record_full_stopped_by_hw_breakpoint)
11270         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11271         methods of the record_full_base_target class.
11272         (record_full_store_registers, record_full_xfer_partial)
11273         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11274         Refactor as methods of the record_full_target class.
11275         (record_full_can_execute_reverse, record_full_get_bookmark)
11276         (record_full_goto_bookmark, record_full_execution_direction)
11277         (record_full_record_method, record_full_info, record_full_delete)
11278         (record_full_is_replaying, record_full_will_replay)
11279         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11280         (record_full_stop_replaying): Refactor as methods of the
11281         record_full_base_target class.
11282         (record_full_core_resume, record_full_core_kill)
11283         (record_full_core_fetch_registers)
11284         (record_full_core_prepare_to_store)
11285         (record_full_core_store_registers, record_full_core_xfer_partial)
11286         (record_full_core_insert_breakpoint)
11287         (record_full_core_remove_breakpoint)
11288         (record_full_core_has_execution): Refactor
11289         as methods of the record_full_core_target class.
11290         (record_full_base_target::supports_delete_record): New.
11291         (init_record_full_ops): Delete.
11292         (init_record_full_core_ops): Delete.
11293         (record_full_save): Refactor as method of the
11294         record_full_base_target class.
11295         (_initialize_record_full): Remove references to
11296         init_record_full_ops and init_record_full_core_ops.
11297
11298         * remote.c (remote_target, extended_remote_target): New classes.
11299         (remote_ops): Now a remote_target.
11300         (extended_remote_ops): Now an extended_remote_target.
11301         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11302         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11303         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11304         (remote_pass_signals, remote_set_syscall_catchpoint)
11305         (remote_program_signals, )
11306         (remote_thread_always_alive): Remove target_ops parameter.
11307         (remote_thread_alive, remote_thread_name)
11308         (remote_update_thread_list, remote_threads_extra_info)
11309         (remote_static_tracepoint_marker_at)
11310         (remote_static_tracepoint_markers_by_strid)
11311         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11312         (remote_open): Refactor as methods of remote_target.
11313         (extended_remote_open, extended_remote_detach)
11314         (extended_remote_attach, extended_remote_post_attach):
11315         (extended_remote_supports_disable_randomization)
11316         (extended_remote_create_inferior): : Refactor as method of
11317         extended_remote_target.
11318         (remote_set_permissions, remote_open_1, remote_detach)
11319         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11320         (remote_resume, remote_commit_resume, remote_stop)
11321         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11322         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11323         (remote_prepare_to_store, remote_store_registers)
11324         (remote_flash_erase, remote_flash_done, remote_files_info)
11325         (remote_kill, remote_mourn, remote_insert_breakpoint)
11326         (remote_remove_breakpoint, remote_insert_watchpoint)
11327         (remote_watchpoint_addr_within_range)
11328         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11329         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11330         (remote_supports_stopped_by_sw_breakpoint)
11331         (remote_stopped_by_hw_breakpoint)
11332         (remote_supports_stopped_by_hw_breakpoint)
11333         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11334         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11335         (remote_verify_memory): Refactor as methods of remote_target.
11336         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11337         parameter.
11338         (remote_xfer_partial, remote_get_memory_xfer_limit)
11339         (remote_search_memory, remote_rcmd, remote_memory_map)
11340         (remote_pid_to_str, remote_get_thread_local_address)
11341         (remote_get_tib_address, remote_read_description): Refactor as
11342         methods of remote_target.
11343         (remote_target::fileio_open, remote_target::fileio_pwrite)
11344         (remote_target::fileio_pread, remote_target::fileio_close): New.
11345         (remote_hostio_readlink, remote_hostio_fstat)
11346         (remote_filesystem_is_local, remote_can_execute_reverse)
11347         (remote_supports_non_stop, remote_supports_disable_randomization)
11348         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11349         (remote_supports_enable_disable_tracepoint)
11350         (remote_supports_string_tracing)
11351         (remote_can_run_breakpoint_commands, remote_trace_init)
11352         (remote_download_tracepoint, remote_can_download_tracepoint)
11353         (remote_download_trace_state_variable, remote_enable_tracepoint)
11354         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11355         (remote_trace_start, remote_get_trace_status)
11356         (remote_get_tracepoint_status, remote_trace_stop)
11357         (remote_trace_find, remote_get_trace_state_variable_value)
11358         (remote_save_trace_data, remote_get_raw_trace_data)
11359         (remote_set_disconnected_tracing, remote_core_of_thread)
11360         (remote_set_circular_trace_buffer, remote_traceframe_info)
11361         (remote_get_min_fast_tracepoint_insn_len)
11362         (remote_set_trace_buffer_size, remote_set_trace_notes)
11363         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11364         (remote_disable_btrace, remote_teardown_btrace)
11365         (remote_read_btrace, remote_btrace_conf)
11366         (remote_augmented_libraries_svr4_read, remote_load)
11367         (remote_pid_to_exec_file, remote_can_do_single_step)
11368         (remote_execution_direction, remote_thread_handle_to_thread_info):
11369         Refactor as methods of remote_target.
11370         (init_remote_ops, init_extended_remote_ops): Delete.
11371         (remote_can_async_p, remote_is_async_p, remote_async)
11372         (remote_thread_events, remote_upload_tracepoints)
11373         (remote_upload_trace_state_variables): Refactor as methods of
11374         remote_target.
11375         (_initialize_remote): Remove references to init_remote_ops and
11376         init_extended_remote_ops.
11377
11378         * remote-sim.c (gdbsim_target): New class.
11379         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11380         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11381         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11382         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11383         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11384         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11385         Refactor as methods of gdbsim_target.
11386         (gdbsim_ops): Now a gdbsim_target.
11387         (init_gdbsim_ops): Delete.
11388         (gdbsim_cntrl_c): Adjust.
11389         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11390
11391         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11392         (the_amd64_linux_nat_target): New.
11393         (amd64_linux_fetch_inferior_registers)
11394         (amd64_linux_store_inferior_registers): Refactor as methods of
11395         amd64_linux_nat_target.
11396         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11397         * i386-linux-nat.c: Don't include "linux-nat.h".
11398         (i386_linux_nat_target): New class.
11399         (the_i386_linux_nat_target): New.
11400         (i386_linux_fetch_inferior_registers)
11401         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11402         as methods of i386_linux_nat_target.
11403         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11404         * inf-child.c (inf_child_ops): Delete.
11405         (inf_child_fetch_inferior_registers)
11406         (inf_child_store_inferior_registers): Delete.
11407         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11408         methods of inf_child_target.
11409         (inf_child_target::supports_terminal_ours)
11410         (inf_child_target::terminal_init)
11411         (inf_child_target::terminal_inferior)
11412         (inf_child_target::terminal_ours_for_output)
11413         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11414         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11415         New.
11416         (inf_child_open, inf_child_disconnect, inf_child_close)
11417         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11418         (inf_child_post_startup_inferior, inf_child_can_run)
11419         (inf_child_pid_to_exec_file): Refactor as methods of
11420         inf_child_target.
11421         (inf_child_follow_fork): Delete.
11422         (inf_child_target::can_create_inferior)
11423         (inf_child_target::can_attach): New.
11424         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11425         (inf_child_target::has_stack, inf_child_target::has_registers)
11426         (inf_child_target::has_execution): New.
11427         (inf_child_fileio_open, inf_child_fileio_pwrite)
11428         (inf_child_fileio_pread, inf_child_fileio_fstat)
11429         (inf_child_fileio_close, inf_child_fileio_unlink)
11430         (inf_child_fileio_readlink, inf_child_use_agent)
11431         (inf_child_can_use_agent): Refactor as methods of
11432         inf_child_target.
11433         (return_zero, inf_child_target): Delete.
11434         (inf_child_target::inf_child_target): New.
11435         * inf-child.h: Include "target.h".
11436         (inf_child_target): Delete function prototype.
11437         (inf_child_target): New class.
11438         (inf_child_open_target, inf_child_mourn_inferior)
11439         (inf_child_maybe_unpush_target): Delete.
11440         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11441         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11442         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11443         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11444         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11445         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11446         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11447         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11448         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11449         methods of inf_ptrace_target.
11450         (inf_ptrace_target): Delete function.
11451         * inf-ptrace.h: Include "inf-child.h".
11452         (inf_ptrace_target): Delete function declaration.
11453         (inf_ptrace_target): New class.
11454         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11455         * linux-nat.c (linux_target): New.
11456         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11457         (linux_nat_target::~linux_nat_target): New.
11458         (linux_child_post_attach, linux_child_post_startup_inferior)
11459         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11460         (linux_child_remove_fork_catchpoint)
11461         (linux_child_insert_vfork_catchpoint)
11462         (linux_child_remove_vfork_catchpoint)
11463         (linux_child_insert_exec_catchpoint)
11464         (linux_child_remove_exec_catchpoint)
11465         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11466         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11467         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11468         (linux_nat_stopped_data_address)
11469         (linux_nat_stopped_by_sw_breakpoint)
11470         (linux_nat_supports_stopped_by_sw_breakpoint)
11471         (linux_nat_stopped_by_hw_breakpoint)
11472         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11473         (linux_nat_kill, linux_nat_mourn_inferior)
11474         (linux_nat_xfer_partial, linux_nat_thread_alive)
11475         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11476         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11477         (linux_child_static_tracepoint_markers_by_strid)
11478         (linux_nat_is_async_p, linux_nat_can_async_p)
11479         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11480         (linux_nat_supports_multi_process)
11481         (linux_nat_supports_disable_randomization, linux_nat_async)
11482         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11483         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11484         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11485         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11486         methods of linux_nat_target.
11487         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11488         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11489         parameter.
11490         (check_stopped_by_watchpoint): Adjust.
11491         (linux_xfer_partial): Delete.
11492         (linux_target_install_ops, linux_target, linux_nat_add_target):
11493         Delete.
11494         (linux_nat_target::linux_nat_target): New.
11495         * linux-nat.h: Include "inf-ptrace.h".
11496         (linux_nat_target): New.
11497         (linux_target, linux_target_install_ops, linux_nat_add_target):
11498         Delete function declarations.
11499         (linux_target): Declare global.
11500         * linux-thread-db.c (thread_db_target): New.
11501         (thread_db_target::thread_db_target): New.
11502         (thread_db_ops): Delete.
11503         (the_thread_db_target): New.
11504         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11505         (thread_db_update_thread_list, thread_db_pid_to_str)
11506         (thread_db_extra_thread_info)
11507         (thread_db_thread_handle_to_thread_info)
11508         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11509         (thread_db_resume): Refactor as methods of thread_db_target.
11510         (init_thread_db_ops): Delete.
11511         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11512         * x86-linux-nat.c: Don't include "linux-nat.h".
11513         (super_post_startup_inferior): Delete.
11514         (x86_linux_nat_target::~x86_linux_nat_target): New.
11515         (x86_linux_child_post_startup_inferior)
11516         (x86_linux_read_description, x86_linux_enable_btrace)
11517         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11518         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11519         methods of x86_linux_nat_target.
11520         (x86_linux_create_target): Delete.  Bits folded ...
11521         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11522         pointer.
11523         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11524         (x86_linux_nat_target): New class.
11525         (x86_linux_create_target): Delete.
11526         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11527         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11528         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11529         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11530         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11531         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11532         make extern.
11533         (x86_use_watchpoints): Delete.
11534         * x86-nat.h: Include "breakpoint.h" and "target.h".
11535         (x86_use_watchpoints): Delete.
11536         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11537         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11538         (x86_insert_watchpoint, x86_remove_watchpoint)
11539         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11540         (x86_stopped_by_hw_breakpoint): New declarations.
11541         (x86_nat_target): New template class.
11542
11543         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11544         (the_ppc_linux_nat_target): New.
11545         (ppc_linux_fetch_inferior_registers)
11546         (ppc_linux_can_use_hw_breakpoint)
11547         (ppc_linux_region_ok_for_hw_watchpoint)
11548         (ppc_linux_ranged_break_num_registers)
11549         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11550         (ppc_linux_insert_mask_watchpoint)
11551         (ppc_linux_remove_mask_watchpoint)
11552         (ppc_linux_can_accel_watchpoint_condition)
11553         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11554         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11555         (ppc_linux_watchpoint_addr_within_range)
11556         (ppc_linux_masked_watch_num_registers)
11557         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11558         (ppc_linux_read_description): Refactor as methods of
11559         ppc_linux_nat_target.
11560         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11561
11562         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11563         (procfs_target): New class.
11564         (the_procfs_target): New.
11565         (procfs_target): Delete function.
11566         (procfs_auxv_parse, procfs_attach, procfs_detach)
11567         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11568         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11569         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11570         (procfs_create_inferior, procfs_update_thread_list)
11571         (procfs_thread_alive, procfs_pid_to_str)
11572         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11573         (procfs_stopped_data_address, procfs_insert_watchpoint)
11574         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11575         (proc_find_memory_regions, procfs_info_proc)
11576         (procfs_make_note_section): Refactor as methods of procfs_target.
11577         (_initialize_procfs): Adjust.
11578         * sol-thread.c (sol_thread_target): New class.
11579         (sol_thread_ops): Now a sol_thread_target.
11580         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11581         (sol_thread_fetch_registers, sol_thread_store_registers)
11582         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11583         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11584         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11585         (init_sol_thread_ops): Delete.
11586         (_initialize_sol_thread): Adjust.  Remove references to
11587         init_sol_thread_ops and complete_target_initialization.
11588
11589         * windows-nat.c (windows_nat_target): New class.
11590         (windows_fetch_inferior_registers)
11591         (windows_store_inferior_registers, windows_resume, windows_wait)
11592         (windows_attach, windows_detach, windows_pid_to_exec_file)
11593         (windows_files_info, windows_create_inferior)
11594         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11595         (windows_close, windows_pid_to_str, windows_xfer_partial)
11596         (windows_get_tib_address, windows_get_ada_task_ptid)
11597         (windows_thread_name, windows_thread_alive): Refactor as
11598         windows_nat_target methods.
11599         (do_initial_windows_stuff): Adjust.
11600         (windows_target): Delete function.
11601         (_initialize_windows_nat): Adjust.
11602
11603         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11604         (darwin_mourn_inferior, darwin_kill_inferior)
11605         (darwin_create_inferior, darwin_attach, darwin_detach)
11606         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11607         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11608         (darwin_supports_multi_process): Refactor as darwin_nat_target
11609         methods.
11610         (darwin_resume_to, darwin_files_info): Delete.
11611         (_initialize_darwin_inferior): Rename to ...
11612         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11613         * darwin-nat.h: Include "inf-child.h".
11614         (darwin_nat_target): New class.
11615         (darwin_complete_target): Delete.
11616         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11617         (darwin_target): New.
11618         (i386_darwin_fetch_inferior_registers)
11619         (i386_darwin_store_inferior_registers): Refactor as methods of
11620         darwin_nat_target.
11621         (darwin_complete_target): Delete, with ...
11622         (_initialize_i386_darwin_nat): ... bits factored out here.
11623
11624         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11625         (the_alpha_linux_nat_target): New.
11626         (alpha_linux_register_u_offset): Refactor as
11627         alpha_linux_nat_target method.
11628         (_initialize_alpha_linux_nat): Adjust.
11629         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11630         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11631         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11632         methods of linux_nat_trad_target.
11633         (linux_trad_target): Delete.
11634         * linux-nat-trad.h (linux_trad_target): Delete function.
11635         (linux_nat_trad_target): New class.
11636         * mips-linux-nat.c (mips_linux_nat_target): New class.
11637         (super_fetch_registers, super_store_registers, super_close):
11638         Delete.
11639         (the_mips_linux_nat_target): New.
11640         (mips64_linux_regsets_fetch_registers)
11641         (mips64_linux_regsets_store_registers)
11642         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11643         (mips_linux_register_u_offset, mips_linux_read_description)
11644         (mips_linux_can_use_hw_breakpoint)
11645         (mips_linux_stopped_by_watchpoint)
11646         (mips_linux_stopped_data_address)
11647         (mips_linux_region_ok_for_hw_watchpoint)
11648         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11649         (mips_linux_close): Refactor as methods of mips_linux_nat.
11650         (_initialize_mips_linux_nat): Adjust to C++ification.
11651
11652         * aix-thread.c (aix_thread_target): New class.
11653         (aix_thread_ops): Now an aix_thread_target.
11654         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11655         (aix_thread_fetch_registers, aix_thread_store_registers)
11656         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11657         (aix_thread_thread_alive, aix_thread_pid_to_str)
11658         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11659         Refactor as methods of aix_thread_target.
11660         (init_aix_thread_ops): Delete.
11661         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11662         and complete_target_initialization.
11663         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11664         (rs6000_nat_target): New class.
11665         (the_rs6000_nat_target): New.
11666         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11667         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11668         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11669         (super_create_inferior): Delete.
11670         (_initialize_rs6000_nat): Adjust to C++ification.
11671
11672         * arm-linux-nat.c (arm_linux_nat_target): New class.
11673         (the_arm_linux_nat_target): New.
11674         (arm_linux_fetch_inferior_registers)
11675         (arm_linux_store_inferior_registers, arm_linux_read_description)
11676         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11677         (arm_linux_remove_hw_breakpoint)
11678         (arm_linux_region_ok_for_hw_watchpoint)
11679         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11680         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11681         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11682         arm_linux_nat_target.
11683         (_initialize_arm_linux_nat): Adjust to C++ification.
11684
11685         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11686         (the_aarch64_linux_nat_target): New.
11687         (aarch64_linux_fetch_inferior_registers)
11688         (aarch64_linux_store_inferior_registers)
11689         (aarch64_linux_child_post_startup_inferior)
11690         (aarch64_linux_read_description)
11691         (aarch64_linux_can_use_hw_breakpoint)
11692         (aarch64_linux_insert_hw_breakpoint)
11693         (aarch64_linux_remove_hw_breakpoint)
11694         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11695         (aarch64_linux_region_ok_for_hw_watchpoint)
11696         (aarch64_linux_stopped_data_address)
11697         (aarch64_linux_stopped_by_watchpoint)
11698         (aarch64_linux_watchpoint_addr_within_range)
11699         (aarch64_linux_can_do_single_step): Refactor as methods of
11700         aarch64_linux_nat_target.
11701         (super_post_startup_inferior): Delete.
11702         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11703
11704         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11705         (the_hppa_linux_nat_target): New.
11706         (hppa_linux_fetch_inferior_registers)
11707         (hppa_linux_store_inferior_registers): Refactor as methods of
11708         hppa_linux_nat_target.
11709         (_initialize_hppa_linux_nat): Adjust to C++ification.
11710
11711         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11712         (the_ia64_linux_nat_target): New.
11713         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11714         (ia64_linux_stopped_data_address)
11715         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11716         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11717         ia64_linux_nat_target methods.
11718         (super_xfer_partial): Delete.
11719         (_initialize_ia64_linux_nat): Adjust to C++ification.
11720
11721         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11722         (the_m32r_linux_nat_target): New.
11723         (m32r_linux_fetch_inferior_registers)
11724         (m32r_linux_store_inferior_registers): Refactor as
11725         m32r_linux_nat_target methods.
11726         (_initialize_m32r_linux_nat): Adjust to C++ification.
11727
11728         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11729         (the_m68k_linux_nat_target): New.
11730         (m68k_linux_fetch_inferior_registers)
11731         (m68k_linux_store_inferior_registers): Refactor as
11732         m68k_linux_nat_target methods.
11733         (_initialize_m68k_linux_nat): Adjust to C++ification.
11734
11735         * s390-linux-nat.c (s390_linux_nat_target): New class.
11736         (the_s390_linux_nat_target): New.
11737         (s390_linux_fetch_inferior_registers)
11738         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11739         (s390_insert_watchpoint, s390_remove_watchpoint)
11740         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11741         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11742         (s390_auxv_parse, s390_read_description): Refactor as methods of
11743         s390_linux_nat_target.
11744         (_initialize_s390_nat): Adjust to C++ification.
11745
11746         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11747         (the_sparc_linux_nat_target): New.
11748         (_initialize_sparc_linux_nat): Adjust to C++ification.
11749         * sparc-nat.c (sparc_fetch_inferior_registers)
11750         (sparc_store_inferior_registers): Remove target_ops parameter.
11751         * sparc-nat.h (sparc_fetch_inferior_registers)
11752         (sparc_store_inferior_registers): Remove target_ops parameter.
11753         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11754         (the_sparc64_linux_nat_target): New.
11755         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11756
11757         * spu-linux-nat.c (spu_linux_nat_target): New class.
11758         (the_spu_linux_nat_target): New.
11759         (spu_child_post_startup_inferior, spu_child_post_attach)
11760         (spu_child_wait, spu_fetch_inferior_registers)
11761         (spu_store_inferior_registers, spu_xfer_partial)
11762         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11763         methods.
11764         (_initialize_spu_nat): Adjust to C++ification.
11765
11766         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11767         (the_tilegx_linux_nat_target): New.
11768         (fetch_inferior_registers, store_inferior_registers):
11769         Refactor as methods.
11770         (_initialize_tile_linux_nat): Adjust to C++ification.
11771
11772         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11773         (the_xtensa_linux_nat_target): New.
11774         (xtensa_linux_fetch_inferior_registers)
11775         (xtensa_linux_store_inferior_registers): Refactor as
11776         xtensa_linux_nat_target methods.
11777         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11778
11779         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11780         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11781         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11782         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11783         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11784         (fbsd_stopped_by_sw_breakpoint)
11785         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11786         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11787         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11788         (fbsd_post_startup_inferior, fbsd_post_attach)
11789         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11790         (fbsd_set_syscall_catchpoint)
11791         (super_xfer_partial, super_resume, super_wait)
11792         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11793         (fbsd_handle_debug_trap): Remove target_ops parameter.
11794         (fbsd_nat_add_target): Delete.
11795         * fbsd-nat.h: Include "inf-ptrace.h".
11796         (fbsd_nat_add_target): Delete.
11797         (USE_SIGTRAP_SIGINFO): Define.
11798         (fbsd_nat_target): New class.
11799
11800         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11801         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11802         (amd64bsd_target): Delete.
11803         * amd64-bsd-nat.h: New file.
11804         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11805         "x86-bsd-nat.h".
11806         (amd64_fbsd_nat_target): New class.
11807         (the_amd64_fbsd_nat_target): New.
11808         (amd64fbsd_read_description): Refactor as method of
11809         amd64_fbsd_nat_target.
11810         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11811         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11812         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11813         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11814         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11815         (i386bsd_target): Delete.
11816         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11817         (i386bsd_fetch_inferior_registers)
11818         (i386bsd_store_inferior_registers): Declare.
11819         (i386_bsd_nat_target): New class.
11820         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11821         (the_i386_fbsd_nat_target): New.
11822         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11823         i386_fbsd_nat_target methods.
11824         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11825         (_initialize_i386fbsd_nat): Adjust to C++ification.
11826         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11827         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11828         (_initialize_x86_bsd_nat): Adjust to C++ification.
11829         * x86-bsd-nat.h: Include "x86-nat.h".
11830         (x86bsd_target): Delete declaration.
11831         (x86bsd_nat_target): New class.
11832
11833         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11834         (the_aarch64_fbsd_nat_target): New.
11835         (aarch64_fbsd_fetch_inferior_registers)
11836         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11837         aarch64_fbsd_nat_target.
11838         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11839         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11840         (the_alpha_bsd_nat_target): New.
11841         (alphabsd_fetch_inferior_registers)
11842         (alphabsd_store_inferior_registers): Refactor as
11843         alpha_bsd_nat_target methods.
11844         (_initialize_alphabsd_nat): Refactor as methods of
11845         alpha_bsd_nat_target.
11846         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11847         (the_amd64_nbsd_nat_target): New.
11848         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11849         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11850         (the_amd64_obsd_nat_target): New.
11851         (_initialize_amd64obsd_nat): Adjust to C++ification.
11852         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11853         (the_arm_fbsd_nat_target): New.
11854         (arm_fbsd_fetch_inferior_registers)
11855         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11856         (_initialize_arm_fbsd_nat): Refactor as methods of
11857         arm_fbsd_nat_target.
11858         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11859         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11860         (the_arm_netbsd_nat_target): New.
11861         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11862         arm_netbsd_nat_target.
11863         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11864         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11865         (the_hppa_nbsd_nat_target): New.
11866         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11867         hppa_nbsd_nat_target methods.
11868         (_initialize_hppanbsd_nat): Adjust to C++ification.
11869         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11870         (the_hppa_obsd_nat_target): New.
11871         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11872         methods of hppa_obsd_nat_target.
11873         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11874         add_target.
11875         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11876         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11877         add_target.
11878         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11879         (_initialize_i386obsd_nat): Use add_target.
11880         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11881         (the_m68k_bsd_nat_target): New.
11882         (m68kbsd_fetch_inferior_registers)
11883         (m68kbsd_store_inferior_registers): Refactor as methods of
11884         m68k_bsd_nat_target.
11885         (_initialize_m68kbsd_nat): Adjust to C++ification.
11886         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11887         (the_mips_fbsd_nat_target): New.
11888         (mips_fbsd_fetch_inferior_registers)
11889         (mips_fbsd_store_inferior_registers): Refactor as methods of
11890         mips_fbsd_nat_target.
11891         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11892         add_target.
11893         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11894         (the_mips_nbsd_nat_target): New.
11895         (mipsnbsd_fetch_inferior_registers)
11896         (mipsnbsd_store_inferior_registers): Refactor as methods of
11897         mips_nbsd_nat_target.
11898         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11899         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11900         (the_mips64_obsd_nat_target): New.
11901         (mips64obsd_fetch_inferior_registers)
11902         (mips64obsd_store_inferior_registers): Refactor as methods of
11903         mips64_obsd_nat_target.
11904         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11905         add_target.
11906         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11907         nbsd_nat_target.
11908         * nbsd-nat.h: Include "inf-ptrace.h".
11909         (nbsd_nat_target): New class.
11910         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11911         (obsd_wait): Refactor as methods of obsd_nat_target.
11912         (obsd_add_target): Delete.
11913         * obsd-nat.h: Include "inf-ptrace.h".
11914         (obsd_nat_target): New class.
11915         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11916         (the_ppc_fbsd_nat_target): New.
11917         (ppcfbsd_fetch_inferior_registers)
11918         (ppcfbsd_store_inferior_registers): Refactor as methods of
11919         ppc_fbsd_nat_target.
11920         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11921         add_target.
11922         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11923         (the_ppc_nbsd_nat_target): New.
11924         (ppcnbsd_fetch_inferior_registers)
11925         (ppcnbsd_store_inferior_registers): Refactor as methods of
11926         ppc_nbsd_nat_target.
11927         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11928         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11929         (the_ppc_obsd_nat_target): New.
11930         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11931         methods of ppc_obsd_nat_target.
11932         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11933         add_target.
11934         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11935         (the_sh_nbsd_nat_target): New.
11936         (shnbsd_fetch_inferior_registers)
11937         (shnbsd_store_inferior_registers): Refactor as methods of
11938         sh_nbsd_nat_target.
11939         (_initialize_shnbsd_nat): Adjust to C++ification.
11940         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11941         (inf_ptrace_xfer_partial): Delete.
11942         (sparc_xfer_partial, sparc_target): Delete.
11943         * sparc-nat.h (sparc_fetch_inferior_registers)
11944         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11945         (sparc_target): Delete function declaration.
11946         (sparc_target): New template class.
11947         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11948         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11949         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11950         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11951         add_target.
11952         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11953         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11954         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11955         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11956         add_target.
11957         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11958         (the_vax_bsd_nat_target): New.
11959         (vaxbsd_fetch_inferior_registers)
11960         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11961         methods.
11962         (_initialize_vaxbsd_nat): Adjust to C++ification.
11963
11964         * bsd-kvm.c (bsd_kvm_target): New class.
11965         (bsd_kvm_ops): Now a bsd_kvm_target.
11966         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11967         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11968         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11969         bsd_kvm_target.
11970         (bsd_kvm_return_one): Delete.
11971         (bsd_kvm_add_target): Adjust to C++ification.
11972
11973         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11974         (nto_procfs_target_procfs): New classes.
11975         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11976         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11977         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11978         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11979         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11980         (procfs_remove_hw_breakpoint, procfs_resume)
11981         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11982         (procfs_kill_inferior, procfs_store_registers)
11983         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11984         as methods of nto_procfs_target.
11985         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11986         (nto_native_ops): Delete.
11987         (procfs_open, procfs_native_open): Delete.
11988         (nto_native_ops): Now an nto_procfs_target_native.
11989         (init_procfs_targets): Adjust to C++ification.
11990         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11991         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11992         Refactor as methods of nto_procfs_target.
11993
11994         * go32-nat.c (go32_nat_target): New class.
11995         (the_go32_nat_target): New.
11996         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11997         (go32_store_registers, go32_xfer_partial, go32_files_info)
11998         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11999         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
12000         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
12001         (go32_pid_to_str): Refactor as methods of go32_nat_target.
12002         (go32_target): Delete.
12003         (_initialize_go32_nat): Adjust to C++ification.
12004
12005         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
12006         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
12007         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
12008         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
12009         gnu_nat_target.
12010         (gnu_target): Delete.
12011         * gnu-nat.h (gnu_target): Delete.
12012         (gnu_nat_target): New class.
12013         * i386-gnu-nat.c (gnu_base_target): New.
12014         (i386_gnu_nat_target): New class.
12015         (the_i386_gnu_nat_target): New.
12016         (_initialize_i386gnu_nat): Adjust to C++ification.
12017
12018 2018-05-02  Pedro Alves  <palves@redhat.com>
12019
12020         * bfd-target.c (target_bfd_xclose): Rename to ...
12021         (target_bfd_close): ... this.
12022         (target_bfd_reopen): Adjust.
12023         * target.c (target_close): Remove references to to_xclose.
12024         * target.h (target_ops::to_xclose): Delete.
12025         (target_ops::to_close): Update comments.
12026
12027 2018-05-02  Pedro Alves  <palves@redhat.com>
12028
12029         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
12030         "linux-nat.h".
12031         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
12032         * inf-ptrace.c (inf_ptrace_register_u_offset)
12033         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
12034         (inf_ptrace_store_register, inf_ptrace_store_registers)
12035         (inf_ptrace_trad_target): Move to ...
12036         * linux-nat-trad.c: ... this new file.
12037         * linux-nat-trad.h: New file.
12038         * linux-nat.c (linux_target_install_ops): Make extern.
12039         (linux_trad_target): Delete.
12040         * linux-nat.h (linux_trad_target): Delete declaration.
12041         (linux_target_install_ops): Declare.
12042         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
12043         "linux-nat.h".
12044
12045 2018-05-02  Pedro Alves  <palves@redhat.com>
12046
12047         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12048         procfs_target/add_target here.
12049         * procfs.c (procfs_target): Make static.
12050         (_initialize_procfs): Call add_target here.
12051         * procfs.h (struct target_ops): Remove forward declaration.
12052         (procfs_target): Remove declaration.
12053         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
12054
12055 2018-05-02  Pedro Alves  <palves@redhat.com>
12056
12057         * procfs.c (procfs_stopped_by_watchpoint)
12058         (procfs_insert_watchpoint, procfs_remove_watchpoint)
12059         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
12060         Forward declare.
12061         (procfs_use_watchpoints): Delete, move contents...
12062         (procfs_target): ... here.
12063         * procfs.h (procfs_use_watchpoints): Delete declaration.
12064         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
12065         procfs_use_watchpoints.
12066         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
12067         procfs_use_watchpoints.
12068
12069 2018-05-02  Tom Tromey  <tom@tromey.com>
12070
12071         PR python/20084:
12072         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
12073         and var_zuinteger_unlimited.
12074         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
12075         and PARAM_ZUINTEGER_UNLIMITED.
12076         (set_parameter_value): Handle var_zuinteger and
12077         var_zuinteger_unlimited.
12078         (add_setshow_generic): Likewise.
12079         (parmpy_init): Likewise.
12080
12081 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
12082
12083         PR rust/23124
12084         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
12085         pointer is not null before dereferencing it.
12086
12087 2018-04-30  Tom Tromey  <tom@tromey.com>
12088
12089         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12090         is_mi_like_p.
12091
12092 2018-04-30  Tom Tromey  <tom@tromey.com>
12093
12094         * breakpoint.c (mention): Remove use of is_mi_like_p.
12095         (print_mention_ranged_breakpoint): Likewise.
12096         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12097         of is_mi_like_p.
12098
12099 2018-04-30  Tom Tromey  <tom@tromey.com>
12100
12101         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12102
12103 2018-04-30  Tom Tromey  <tom@tromey.com>
12104
12105         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12106         (info_spu_event_command): Remove some uses of is_mi_like_p.
12107
12108 2018-04-30  Tom Tromey  <tom@tromey.com>
12109
12110         * python/py-framefilter.c (py_print_single_arg)
12111         (enumerate_locals, py_print_args, py_print_frame): Remove some
12112         uses of is_mi_like_p.
12113
12114 2018-04-30  Tom Tromey  <tom@tromey.com>
12115
12116         * ui-out.c: Update.
12117         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12118         * ui-out.h (ui_out::is_mi_like_p): Now const.
12119         (ui_out::do_is_mi_like_p): Now const.
12120         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12121
12122 2018-04-30  Tom Tromey  <tom@tromey.com>
12123
12124         * varobj.c (varobj_set_visualizer): Use new_reference.
12125         * python/python.c (gdbpy_decode_line): Use new_reference.
12126         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12127         new_reference.
12128
12129 2018-04-30  Tom Tromey  <tom@tromey.com>
12130
12131         * varobj.c (install_new_value): Use new_reference.
12132         * value.h (value_incref): Return void.  Swap intro comment with
12133         value_decref.
12134         * value.c (set_value_parent): Use new_reference.
12135         (value_incref): Return void.  Update intro comment.
12136         (release_value): Use new_reference.
12137         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12138
12139 2018-04-30  Tom Tromey  <tom@tromey.com>
12140
12141         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12142         * gdb_bfd.h (new_bfd_ref): Remove.
12143         (gdb_bfd_open): Update comment.
12144         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12145         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12146         (gdb_bfd_fdopenr): Use new_reference.
12147         * exec.c (exec_file_attach): Use new_reference.
12148
12149 2018-04-30  Tom Tromey  <tom@tromey.com>
12150
12151         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12152         method.
12153
12154 2018-04-30  Tom Tromey  <tom@tromey.com>
12155
12156         * jit.c (jit_read_code_entry): Use type_align.
12157         * i386-tdep.c (i386_gdbarch_init): Don't call
12158         set_gdbarch_long_long_align_bit.
12159         * gdbarch.sh: Remove long_long_align_bit.
12160         * gdbarch.c, gdbarch.h: Rebuild.
12161         * arc-tdep.c (arc_type_align): New function.
12162         (arc_gdbarch_init): Use arc_type_align.  Don't call
12163         set_gdbarch_long_long_align_bit.
12164
12165 2018-04-30  Tom Tromey  <tom@tromey.com>
12166
12167         * rust-lang.c (rust_type_alignment): Remove.
12168         (rust_composite_type): Use type_align.
12169
12170 2018-04-30  Tom Tromey  <tom@tromey.com>
12171
12172         * NEWS: Mention Type.align.
12173         * python/py-type.c (typy_get_alignof): New function.
12174         (type_object_getset): Add "alignof".
12175
12176 2018-04-30  Tom Tromey  <tom@tromey.com>
12177
12178         PR exp/17095:
12179         * NEWS: Update.
12180         * std-operator.def (UNOP_ALIGNOF): New operator.
12181         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12182         New.
12183         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12184         * c-lang.c (c_op_print_tab): Add alignof.
12185         * c-exp.y (ALIGNOF): New token.
12186         (exp): Add "ALIGNOF" production.
12187         (ident_tokens): Add _Alignof and alignof.
12188
12189 2018-04-30  Tom Tromey  <tom@tromey.com>
12190
12191         * i386-tdep.c (i386_type_align): New function.
12192         (i386_gdbarch_init): Update.
12193         * gdbarch.sh (type_align): New method.
12194         * gdbarch.c, gdbarch.h: Rebuild.
12195         * arch-utils.h (default_type_align): Declare.
12196         * arch-utils.c (default_type_align): New function.
12197         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12198         (struct type) <align_log2>: New field.
12199         <instance_flags>: Now a bitfield.
12200         (TYPE_RAW_ALIGN): New macro.
12201         (type_align, type_raw_align, set_type_align): Declare.
12202         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12203         functions.
12204         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12205         (get_alignment, maybe_set_alignment): New functions.
12206         (read_structure_type, read_enumeration_type, read_array_type)
12207         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12208         (read_subrange_type, read_base_type): Set type alignment.
12209
12210 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12211
12212         * dwarf2read.c (read_index_from_section): Use bool.
12213
12214 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12215
12216         PR gdb/22950
12217         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12218         with #ifdef.
12219
12220 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12221
12222         PR build/22873
12223         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12224         last step, and do it atomically.
12225
12226 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12227
12228         * compile/compile-c-types.c (convert_int, convert_float):
12229         Update for C FE v1.
12230
12231 2018-04-27  Tom Tromey  <tom@tromey.com>
12232
12233         PR rust/22545:
12234         * rust-lang.c (rust_inclusive_range_type_p): New function.
12235         (rust_range): Handle inclusive ranges.
12236         (rust_compute_range): Likewise.
12237         * rust-exp.y (struct rust_op) <inclusive>: New field.
12238         (DOTDOTEQ): New constant.
12239         (range_expr): Add "..=" productions.
12240         (operator_tokens): Add "..=" token.
12241         (ast_range): Add "inclusive" parameter.
12242         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12243         ranges.
12244         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12245         bounds values.
12246         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12247         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12248         Update comments.
12249         * expprint.c (print_subexp_standard): Handle new bounds values.
12250         (dump_subexp_body_standard): Likewise.
12251
12252 2018-04-27  Tom Tromey  <tom@tromey.com>
12253
12254         * configure: Rebuild.
12255         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12256         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12257         "OVERRIDE".
12258         (class symbol_needs_eval_context): Likewise.
12259         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12260         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12261         "virtual".
12262         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12263         "override".
12264         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12265         * aarch64-tdep.c (instruction_reader::read): Use "override".
12266         (instruction_reader_test::read): Likewise.
12267         * arm-tdep.c (instruction_reader::read): Use "override".
12268         (instruction_reader_thumb::read): Likewise.
12269
12270 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12271
12272         PR remote/9665
12273         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12274         instead of remote_send.
12275         (remote_send): Remove.
12276
12277 2018-04-26  Pedro Alves  <palves@redhat.com>
12278
12279         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12280         find_function_start_sal instead of find_pc_line.
12281
12282 2018-04-26  Pedro Alves  <palves@redhat.com>
12283
12284         * breakpoint.c (set_breakpoint_location_function): Handle
12285         mst_data_gnu_ifunc.
12286         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12287         * elfread.c (elf_symtab_read): Give data symbols with
12288         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12289         (elf_rel_plt_read): Update comment.
12290         * linespec.c (convert_linespec_to_sals): Handle
12291         mst_data_gnu_ifunc.
12292         (minsym_found): Handle mst_data_gnu_ifunc.
12293         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12294         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12295         * parse.c (find_minsym_type_and_address): Handle
12296         mst_data_gnu_ifunc.
12297         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12298         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12299         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12300         comment.
12301         <mst_data_gnu_ifunc>: New enumerator.
12302
12303 2018-04-26  Pedro Alves  <palves@redhat.com>
12304
12305         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12306         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12307         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12308         Handle it.
12309         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12310         (lookup_minimal_symbol_by_pc): Adjust.
12311         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12312         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12313         * minsyms.h (lookup_msym_prefer): New enum.
12314         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12315         parameter by a lookup_msym_prefer parameter.
12316
12317 2018-04-26  Pedro Alves  <palves@redhat.com>
12318
12319         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12320         ends in "@plt" instead of looking at the symbol's section.
12321
12322 2018-04-26  Pedro Alves  <palves@redhat.com>
12323
12324         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12325         all references.
12326         (find_pc_partial_function_gnu_ifunc): Rename to ...
12327         (find_pc_partial_function): ... this, and remove references to
12328         'is_gnu_ifunc_p'.
12329         (find_pc_partial_function): Delete old implementation.
12330         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12331
12332 2018-04-26  Pedro Alves  <palves@redhat.com>
12333
12334         * linespec.c (struct bound_minimal_symbol_search_key): New.
12335         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12336         skip first line if we found a GNU ifunc minimal symbol by name.
12337         (compare_msymbols): Change parameters to work with a destructured
12338         lhs minsym.
12339         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12340         functions.
12341
12342 2018-04-26  Pedro Alves  <palves@redhat.com>
12343
12344         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12345         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12346         address/name.
12347         (add_location_to_breakpoint): Store the minsym and the objfile in
12348         the breakpoint location.
12349         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12350         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12351         Record the minsym in the sal.
12352         * symtab.h (symtab_and_line) <msymbol>: New field.
12353
12354 2018-04-26  Pedro Alves  <palves@redhat.com>
12355
12356         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12357         unless we actually resolved the ifunc.
12358
12359 2018-04-26  Pedro Alves  <palves@redhat.com>
12360
12361         * c-exp.y (variable production): Prefer ifunc minsyms over
12362         regular function symbols.
12363         * symtab.c (find_gnu_ifunc): New function.
12364         * minsyms.h (lookup_msym_prefer): New enum.
12365         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12366         parameter by a lookup_msym_prefer parameter.
12367         * symtab.h (find_gnu_ifunc): New declaration.
12368
12369 2018-04-26  Pedro Alves  <palves@redhat.com>
12370
12371         * blockframe.c (find_gnu_ifunc_target_type): New function.
12372         (find_function_type): New.
12373         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12374         return a value with a memory address.
12375         (eval_call): For calls to GNU ifunc functions, try to find the
12376         type of the target function from the type that the resolver
12377         returns.
12378         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12379         symbols.
12380         * infcall.c (find_function_return_type): Delete.
12381         (find_function_addr): Add 'function_type' parameter.  For calls to
12382         GNU ifunc functions, try to find the type of the target function
12383         from the type that the resolver returns, and return it via
12384         FUNCTION_TYPE.
12385         (call_function_by_hand_dummy): Adjust to use the function type
12386         returned by find_function_addr.
12387         (find_function_addr): Add 'function_type' parameter and move
12388         description here.
12389         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12390         declarations.
12391
12392 2018-04-26  Pedro Alves  <palves@redhat.com>
12393
12394         * c-exp.y (variable production): Skip finding an alias for ifunc
12395         symbols.
12396
12397 2018-04-26  Pedro Alves  <palves@redhat.com>
12398
12399         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12400
12401 2018-04-25  Pedro Alves  <palves@redhat.com>
12402
12403         * infcmd.c (kill_command): Print the pid as string, not the whole
12404         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12405         message.
12406         * remote.c (remote_detach_1): Print the pid as string, not the
12407         whole thread's ptid.
12408
12409 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12410             Sergio Durigan Junior  <sergiodj@redhat.com>
12411             Pedro Alves  <palves@redhat.com>
12412
12413         * infcmd.c (kill_command): Print message when inferior has
12414         been killed.
12415         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12416         '1'.
12417         (add_inferior): Improve message printed when
12418         'print_inferior_events' is on.
12419         (exit_inferior): Remove message printed when
12420         'print_inferior_events' is on.
12421         (detach_inferior): Improve message printed when
12422         'print_inferior_events' is on.
12423         (initialize_inferiors): Use 'add_inferior_silent' to set
12424         'current_inferior_'.
12425         * inferior.h (print_inferior_events): Declare here as
12426         'extern'.
12427         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12428         '[Detaching...]' messages when 'print_inferior_events' is on.
12429         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12430         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12431         'Detaching after fork from child...', replace it by '... from
12432         parent...'.
12433         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12434         prefix/suffix when printing 'Detaching...' messages.  Print
12435         them when 'print_inferior_events' is on.
12436         * remote.c (remote_detach_1): Print message when detaching
12437         from inferior and '!is_fork_parent'.
12438
12439 2018-04-24  Tom Tromey  <tom@tromey.com>
12440
12441         * cli-out.h: Reindent.
12442
12443 2018-04-24  Tom Tromey  <tom@tromey.com>
12444
12445         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12446         (cli_ui_out::do_field_string): Use fputs_filtered.
12447         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12448
12449 2018-04-23  Tom Tromey  <tom@tromey.com>
12450
12451         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12452         gdb::unique_xmalloc_ptr.
12453
12454 2018-04-23  Tom Tromey  <tom@tromey.com>
12455
12456         * configure: Rebuild.
12457
12458 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12459
12460         PR gdb/23095
12461         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12462         prepare_for_testing.  Set normal_bp to r_debug_state if target
12463         is bsd.
12464
12465 2018-04-21  Pedro Alves  <palves@redhat.com>
12466             Rajendra SY  <rajendra.sy@gmail.com>
12467
12468         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12469         * remote.c (extended_remote_attach): In all-stop mode, mark the
12470         thread as executing.
12471
12472 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12473
12474         * thread.c (thread_apply_all_command): Fix comment.
12475         (thread_command): Fix comment.
12476
12477 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12478
12479         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12480         parameter.
12481         * features/aarch64-core.c (create_feature_aarch64_core):
12482         Regenerate.
12483         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12484         Likewise.
12485         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12486         Likewise.
12487         * features/i386/32bit-avx512.c
12488         (create_feature_i386_32bit_avx512): Likewise.
12489         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12490         Likewise.
12491         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12492         Likewise.
12493         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12494         Likewise.
12495         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12496         Likewise.
12497         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12498         Likewise.
12499         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12500         Likewise.
12501         * features/i386/64bit-avx512.c
12502         (create_feature_i386_64bit_avx512): Likewise.
12503         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12504         Likewise.
12505         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12506         Likewise.
12507         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12508         Likewise.
12509         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12510         Likewise.
12511         * features/i386/64bit-segments.c
12512         (create_feature_i386_64bit_segments): Likewise.
12513         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12514         Likewise.
12515         * features/i386/x32-core.c
12516         (create_feature_i386_x32_core): Likewise.
12517         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12518         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12519         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12520         * target-descriptions.c: In generated code, don't pass xml
12521         filename.
12522
12523 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12524
12525         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12526         (print_xml_feature::visit_post): Likewise.
12527         (print_xml_feature::visit): Likewise.
12528         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12529         (print_xml_feature): Add new class.
12530         * regformats/regdat.sh: Null xmltarget on feature targets.
12531         * target-descriptions.c (struct target_desc): Add xmltarget.
12532         (maintenance_check_tdesc_xml_convert): Add unittest function.
12533         (tdesc_get_features_xml): Add function to get xml.
12534         (maintenance_check_xml_descriptions): Test xml generation.
12535         * xml-tdesc.c (string_read_description_xml): Add function.
12536         * xml-tdesc.h (string_read_description_xml): Add declaration.
12537
12538 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12539
12540         * features/Makefile: Add feature marker to targets with new style
12541         target descriptions.
12542         * regformats/aarch64.dat: Regenerate.
12543         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12544         * regformats/i386/amd64-avx-linux.dat: Likewise.
12545         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12546         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12547         * regformats/i386/amd64-linux.dat: Likewise.
12548         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12549         * regformats/i386/amd64.dat: Likewise.
12550         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12551         * regformats/i386/i386-avx-linux.dat: Likewise.
12552         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12553         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12554         * regformats/i386/i386-linux.dat: Likewise.
12555         * regformats/i386/i386-mmx-linux.dat: Likewise.
12556         * regformats/i386/i386-mpx-linux.dat: Likewise.
12557         * regformats/i386/i386.dat: Likewise.
12558         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12559         * regformats/i386/x32-avx-linux.dat: Likewise.
12560         * regformats/i386/x32-linux.dat: Likewise.
12561         * regformats/tic6x-c62x-linux.dat: Likewise.
12562         * regformats/tic6x-c64x-linux.dat: Likewise.
12563         * regformats/tic6x-c64xp-linux.dat: Likewise.
12564         * regformats/regdat.sh: Parse feature marker.
12565
12566 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12567
12568         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12569         (tdesc_osabi_name): Likewise.
12570         * target-descriptions.c (tdesc_architecture_name): Add new
12571         function.
12572         (tdesc_osabi_name): Likewise.
12573
12574 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12575
12576         * common/tdesc.c (tdesc_predefined_type): Move to here.
12577         (tdesc_named_type): Likewise.
12578         (tdesc_create_vector): Likewise.
12579         (tdesc_create_struct): Likewise.
12580         (tdesc_set_struct_size): Likewise.
12581         (tdesc_create_union): Likewise.
12582         (tdesc_create_flags): Likewise.
12583         (tdesc_create_enum): Likewise.
12584         (tdesc_add_field): Likewise.
12585         (tdesc_add_typed_bitfield): Likewise.
12586         (tdesc_add_bitfield): Likewise.
12587         (tdesc_add_flag): Likewise.
12588         (tdesc_add_enum_value): Likewise.
12589         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12590         (struct tdesc_type_vector): Likewise.
12591         (struct tdesc_type_field): Likewise.
12592         (struct tdesc_type_with_fields): Likewise.
12593         (tdesc_create_enum): Add declaration.
12594         (tdesc_add_typed_bitfield): Likewise.
12595         (tdesc_add_enum_value): Likewise.
12596         * target-descriptions.c (tdesc_type_field): Move from here.
12597         (tdesc_type_builtin): Likewise.
12598         (tdesc_type_vector): Likewise.
12599         (tdesc_type_with_fields): Likewise.
12600         (tdesc_predefined_types): Likewise.
12601         (tdesc_named_type): Likewise.
12602         (tdesc_create_vector): Likewise.
12603         (tdesc_create_struct): Likewise.
12604         (tdesc_set_struct_size): Likewise.
12605         (tdesc_create_union): Likewise.
12606         (tdesc_create_flags): Likewise.
12607         (tdesc_create_enum): Likewise.
12608         (tdesc_add_field): Likewise.
12609         (tdesc_add_typed_bitfield): Likewise.
12610         (tdesc_add_bitfield): Likewise.
12611         (tdesc_add_flag): Likewise.
12612         (tdesc_add_enum_value): Likewise.
12613         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12614         (tdesc_add_typed_bitfield): Likewise.
12615         (tdesc_add_enum_value): Likewise.
12616
12617 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12618
12619         * common/tdesc.c (tdesc_feature::accept): Move to here.
12620         (tdesc_feature::operator==): Likewise.
12621         (tdesc_create_reg): Likewise.
12622         * common/tdesc.h (tdesc_type_kind): Likewise.
12623         (struct tdesc_type): Likewise.
12624         (struct tdesc_feature): Likewise.
12625         * regformats/regdat.sh: Create a feature.
12626         * target-descriptions.c (tdesc_type_kind): Move from here.
12627         (tdesc_type): Likewise.
12628         (tdesc_type_up): Likewise.
12629         (tdesc_feature): Likewise.
12630         (tdesc_create_reg): Likewise.
12631
12632 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12633
12634         * Makefile.in: Add arch/tdesc.c
12635         * common/tdesc.c: New file.
12636         * common/tdesc.h (tdesc_element_visitor): Move to here.
12637         (tdesc_element): Likewise.
12638         (tdesc_reg): Likewise.
12639         (tdesc_reg_up): Likewise.
12640         * regformats/regdef.h (reg): Add offset to constructors.
12641         * target-descriptions.c (tdesc_element_visitor): Move from here.
12642         (tdesc_element): Likewise.
12643         (tdesc_reg): Likewise.
12644         (tdesc_reg_up): Likewise.
12645
12646 2018-04-17  Tom Tromey  <tom@tromey.com>
12647
12648         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12649         discriminant field.
12650
12651 2018-04-17  Tom Tromey  <tom@tromey.com>
12652
12653         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12654
12655 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12656
12657         * symtab.c (print_symbol_info): Skip printing filename and line
12658         number when `last' is NULL.
12659         (symtab_symbol_info): Use empty string instead of NULL for first
12660         invocation of print_symbol_info.
12661         (rbreak_command): Pass NULL to `last' parameter of
12662         print_symbol_info.
12663
12664 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12665
12666         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12667         instead of nullptr.
12668
12669 2018-04-16  Pedro Alves  <palves@redhat.com>
12670
12671         * MAINTAINERS (sh): Remove.
12672         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12673         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12674         (ALLDEPFILES): Remove sh64-tdep.c.
12675         * NEWS: Mentions that support for SH-5/SH64 is removed.
12676         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12677         (sh*-*-openbsd*): Ditto.
12678         (sh64-*-elf*): Remove.
12679         (sh*): Remove.
12680         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12681         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12682         * sh-tdep.c: No longer include "sh64-tdep.h".
12683         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12684         * sh64-tdep.c, sh64-tdep.h: Remove files.
12685
12686 2018-04-16  Pedro Alves  <palves@redhat.com>
12687
12688         * MAINTAINERS: Remove m88k.
12689         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12690         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12691         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12692         * NEWS: Mention that support for m88k was removed.
12693         * configure.host (m88*-*-*): Remove support.
12694         * configure.nat (m88k-*-*): Remove support.
12695         * configure.tgt (m88*-*-openbsd*): Remove.
12696         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12697
12698 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12699
12700         * configure.tgt (x86_tobjs): New variable.
12701         (amd64_tobjs, i386_tobjs): Use it.
12702
12703 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12704
12705         * symtab.c (print_symbol_info): Precede the symbol definition by
12706         the line number when available.
12707         * NEWS: Advertise this enhancement.
12708
12709 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12710
12711         * NEWS (New options): announce set/show record btrace cpu.
12712         * btrace.c: Include record-btrace.h.
12713         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12714         the vendor is unknown.
12715         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12716         Maybe overwrite the btrace configuration's cpu.
12717         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12718         (btrace_fetch): Add cpu parameter.  Update callers.
12719         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12720         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12721         errata workarounds if the vendor is unknown.
12722         * python/py-record-btrace.c: Include record-btrace.h.
12723         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12724         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12725         * record-btrace.c (record_btrace_cpu_state_kind): New.
12726         (record_btrace_cpu): New.
12727         (set_record_btrace_cpu_cmdlist): New.
12728         (record_btrace_get_cpu): New.
12729         (require_btrace_thread, record_btrace_info)
12730         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12731         (cmd_set_record_btrace_cpu_none): New.
12732         (cmd_set_record_btrace_cpu_auto): New.
12733         (cmd_set_record_btrace_cpu): New.
12734         (cmd_show_record_btrace_cpu): New.
12735         (_initialize_record_btrace): Initialize set/show record btrace cpu
12736         commands.
12737         * record-btrace.h (record_btrace_get_cpu): New.
12738
12739 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12740
12741         * record.c (set_record_command): Fix typo in message.
12742
12743 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12744
12745         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12746
12747 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12748
12749         * infrun.c (process_event_stop_test): Call
12750         gdbarch_in_indirect_branch_thunk.
12751         * gdbarch.sh (in_indirect_branch_thunk): New.
12752         * gdbarch.c: Regenerated.
12753         * gdbarch.h: Regenerated.
12754         * x86-tdep.h: New.
12755         * x86-tdep.c: New.
12756         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12757         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12758         (ALLDEPFILES): Add x86-tdep.c.
12759         * arch-utils.h (default_in_indirect_branch_thunk): New.
12760         * arch-utils.c (default_in_indirect_branch_thunk): New.
12761         * i386-tdep: Include x86-tdep.h.
12762         (i386_in_indirect_branch_thunk): New.
12763         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12764         function.
12765         * amd64-tdep: Include x86-tdep.h.
12766         (amd64_in_indirect_branch_thunk): New.
12767         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12768
12769 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12770
12771         PR gdb/23053
12772         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12773         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12774         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12775         regression.
12776
12777 2018-04-12  Tom Tromey  <tom@tromey.com>
12778
12779         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12780         (rust_evaluate_subexp): Likewise.
12781
12782 2018-04-12  Pedro Alves  <palves@redhat.com>
12783
12784         * procfs.c (procfs_detach): Make forward declaration's prototype
12785         match definition's protototype.
12786         (proc_get_LDT_entry): Remove stale do_cleanups call.
12787
12788 2018-04-12  Pedro Alves  <palves@redhat.com>
12789
12790         * target.h (target_ops::to_has_exited): Delete.
12791         (target_has_exited): Delete.
12792         * target-delegates.c: Regenerate.
12793
12794 2018-04-11  Pedro Alves  <palves@redhat.com>
12795
12796         * target.c (fileio_fh_t::t): Add comment.
12797         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12798         (target_fileio_close): Handle a NULL target.
12799         (invalidate_fileio_fh): New.
12800         (target_close): Call it.
12801         * remote.c (remote_hostio_send_command): No longer check whether
12802         remote_desc is open.
12803
12804 2018-04-11  Pedro Alves  <palves@redhat.com>
12805
12806         * target.c (fileio_fh_t): Make it a named struct instead of a
12807         typedef.
12808         (fileio_fh_t::is_closed): New method.
12809         (DEF_VEC_O (fileio_fh_t)): Remove.
12810         (fileio_fhandles): Now a std::vector.
12811         (is_closed_fileio_fh): Delete.
12812         (acquire_fileio_fd): Adjust.  Rename parameters.
12813         (release_fileio_fd): Adjust.
12814         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12815         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12816         (target_fileio_close): Adjust.
12817
12818 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12819
12820         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12821         index.
12822
12823 2018-04-10  Pedro Alves  <palves@redhat.com>
12824
12825         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12826         (scoped_finish_thread_state): New class.
12827         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12828         cleanup.
12829         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12830         (fetch_inferior_event, normal_stop): Likewise.
12831         * thread.c (finish_thread_state_cleanup): Delete.
12832
12833 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12834             Pedro Alves  <palves@redhat.com>
12835
12836         * value.c: Include "selftest.h" and "common/array-view.h".
12837         (struct range) <operator ==>: New.
12838         (test_ranges_contain): New.
12839         (check_ranges_vector): New.
12840         (test_insert_into_bit_range_vector): New.
12841         (_initialize_values): Register selftests.
12842         * common/array-view.h (operator==, operator!=): New.
12843
12844 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12845
12846         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12847         an iterator.
12848         * inline-frame.c: Include <algorithm>.
12849         (struct inline_state): Add constructor.
12850         (inline_state_s): Remove.
12851         (DEF_VEC_O(inline_state_s)): Remove.
12852         (inline_states): Change type to std::vector.
12853         (find_inline_frame_state): Adjust to std::vector.
12854         (allocate_inline_frame_state): Remove.
12855         (clear_inline_frame_state): Adjust to std::vector.
12856         (skip_inline_frames): Adjust to std::vector.
12857
12858 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12859
12860         * tracepoint.h (struct trace_state_variable): Add constructor.
12861         <name>: Change type to std::string.
12862         * tracepoint.c (tsv_s): Remove.
12863         (DEF_VEC_O(tsv_s)): Remove.
12864         (tvariables): Change to std::vector.
12865         (create_trace_state_variable): Adjust to std::vector.
12866         (find_trace_state_variable): Likewise.
12867         (find_trace_state_variable_by_number): Likewise.
12868         (delete_trace_state_variable): Likewise.
12869         (trace_variable_command): Adjust to std::string.
12870         (delete_trace_variable_command): Likewise.
12871         (tvariables_info_1): Adjust to std::vector.
12872         (save_trace_state_variables): Likewise.
12873         (start_tracing): Likewise.
12874         (merge_uploaded_trace_state_variables): Adjust to std::vector
12875         and std::string.
12876         * target.h (struct target_ops)
12877         <to_download_trace_state_variable>: Pass reference to
12878         trace_state_variable.
12879         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12880         * target-delegates.c: Re-generate.
12881         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12882         (mi_tsv_deleted): Likewise.
12883         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12884         * remote.c (remote_download_trace_state_variable): Change
12885         pointer to reference and adjust.
12886         * make-target-delegates (parse_argtypes): Handle references.
12887         (write_function_header): Likewise.
12888         (munge_type): Likewise.
12889
12890 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12891
12892         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12893         string_view-selftests.c.
12894         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12895         testsuite.
12896         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12897         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12898         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12899         * unittests/basic_string_view/element_access/char/1.cc:
12900         Likewise.
12901         * unittests/basic_string_view/element_access/char/empty.cc:
12902         Likewise.
12903         * unittests/basic_string_view/element_access/char/front_back.cc:
12904         Likewise.
12905         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12906         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12907         Likewise.
12908         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12909         Likewise.
12910         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12911         Likewise.
12912         * unittests/basic_string_view/operations/compare/char/1.cc:
12913         Likewise.
12914         * unittests/basic_string_view/operations/compare/char/13650.cc:
12915         Likewise.
12916         * unittests/basic_string_view/operations/copy/char/1.cc:
12917         Likewise.
12918         * unittests/basic_string_view/operations/data/char/1.cc:
12919         Likewise.
12920         * unittests/basic_string_view/operations/find/char/1.cc:
12921         Likewise.
12922         * unittests/basic_string_view/operations/find/char/2.cc:
12923         Likewise.
12924         * unittests/basic_string_view/operations/find/char/3.cc:
12925         Likewise.
12926         * unittests/basic_string_view/operations/find/char/4.cc:
12927         Likewise.
12928         * unittests/basic_string_view/operations/rfind/char/1.cc:
12929         Likewise.
12930         * unittests/basic_string_view/operations/rfind/char/2.cc:
12931         Likewise.
12932         * unittests/basic_string_view/operations/rfind/char/3.cc:
12933         Likewise.
12934         * unittests/basic_string_view/operations/substr/char/1.cc:
12935         Likewise.
12936         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12937         * unittests/string_view-selftests.c: New file.
12938
12939 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12940
12941         * unittests/basic_string_view/capacity/1.cc: New file.
12942         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12943         * unittests/basic_string_view/cons/char/1.cc: New file.
12944         * unittests/basic_string_view/cons/char/2.cc: New file.
12945         * unittests/basic_string_view/cons/char/3.cc: New file.
12946         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12947         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12948         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12949         * unittests/basic_string_view/element_access/char/1.cc: New file.
12950         * unittests/basic_string_view/element_access/char/2.cc: New file.
12951         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12952         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12953         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12954         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12955         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12956         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12957         * unittests/basic_string_view/include.cc: New file.
12958         * unittests/basic_string_view/inserters/char/1.cc: New file.
12959         * unittests/basic_string_view/inserters/char/2.cc: New file.
12960         * unittests/basic_string_view/inserters/char/3.cc: New file.
12961         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12962         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12963         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12964         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12965         * unittests/basic_string_view/literals/types.cc: New file.
12966         * unittests/basic_string_view/literals/values.cc: New file.
12967         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12968         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12969         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12970         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12971         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12972         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12973         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12974         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12975         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12976         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12977         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12978         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12979         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12980         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12981         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12982         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12983         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12984         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12985         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12986         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12987         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12988         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12989         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12990         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12991         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12992         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12993         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12994         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12995         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12996         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12997         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12998         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12999         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
13000         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
13001         * unittests/basic_string_view/operators/char/2.cc: New file.
13002         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
13003         * unittests/basic_string_view/range_access/char/1.cc: New file.
13004         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
13005         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
13006         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
13007         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
13008         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
13009         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
13010         * unittests/basic_string_view/requirements/typedefs.cc: New file.
13011         * unittests/basic_string_view/typedefs.cc: New file.
13012         * unittests/basic_string_view/types/1.cc: New file.
13013
13014 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13015
13016         * common/gdb_string_view.h: Remove libstdc++ implementation
13017         details, adjust to gdb reality.
13018         * common/gdb_string_view.tcc: Likewise.
13019         * cli/cli-script.c (struct string_view): Remove.
13020         (user_args) <m_args>: Change element type to gdb::string_view.
13021         (user_args::insert_args): Adjust.
13022
13023 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13024
13025         * common/gdb_string_view.h: New file.
13026         * common/gdb_string_view.tcc: New file.
13027
13028 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
13029
13030         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
13031         * configure: Re-generate.
13032
13033 2018-04-09  Pedro Alves  <palves@redhat.com>
13034
13035         * gdbarch.sh: Include "observable.h" instead of "observer.h".
13036         (set_target_gdbarch): Call
13037         gdb::observers::architecture_changed.notify instead of
13038         observer_notify_architecture_changed.
13039
13040 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13041
13042         * tracepoint.c (struct current_traceframe_cleanup): Remove.
13043         (do_restore_current_traceframe_cleanup): Remove.
13044         (restore_current_traceframe_cleanup_dtor): Remove.
13045         (make_cleanup_restore_current_traceframe): Remove.
13046         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
13047         New.
13048         * tracepoint.h (struct scoped_restore_current_traceframe): New.
13049         * infrun.c (fetch_inferior_event): Use
13050         scoped_restore_current_traceframe.
13051
13052 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13053
13054         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
13055         Remove.
13056         <n_allocated_type_units>: Remove.
13057         <all_type_units>: Change to std::vector.
13058         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13059         to std::vector change.
13060         (dwarf2_per_objfile::get_cutu): Likewise.
13061         (dwarf2_per_objfile::get_tu): Likewise.
13062         (create_signatured_type_table_from_index): Likewise.
13063         (create_signatured_type_table_from_debug_names): Likewise.
13064         (dw2_symtab_iter_next): Likewise.
13065         (dw2_print_stats): Likewise.
13066         (dw2_expand_all_symtabs): Likewise.
13067         (dw2_expand_marked_cus): Likewise.
13068         (dw2_debug_names_iterator::next): Likewise.
13069         (dwarf2_initialize_objfile): Likewise.
13070         (add_signatured_type_cu_to_table): Likewise.
13071         (create_all_type_units): Likewise.
13072         (add_type_unit): Likewise.
13073         (struct tu_abbrev_offset): Add constructor.
13074         (build_type_psymtabs_1): Adjust to std::vector change.
13075         (print_tu_stats): Likewise.
13076         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13077         (write_debug_names): Likewise.
13078
13079 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13080
13081         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
13082         Make an std::vector.
13083         <n_comp_units>: Remove.
13084         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
13085         to std::vector change.
13086         (dwarf2_per_objfile::get_cutu): Likewise.
13087         (dwarf2_per_objfile::get_cu): Likewise.
13088         (create_cus_from_index): Likewise.
13089         (create_addrmap_from_index): Likewise.
13090         (create_addrmap_from_aranges): Likewise.
13091         (dwarf2_read_index): Likewise.
13092         (dw2_find_last_source_symtab): Likewise.
13093         (dw2_map_symtabs_matching_filename): Likewise.
13094         (dw2_symtab_iter_next): Likewise.
13095         (dw2_print_stats): Likewise.
13096         (dw2_expand_all_symtabs): Likewise.
13097         (dw2_expand_symtabs_with_fullname): Likewise.
13098         (dw2_expand_marked_cus): Likewise.
13099         (dw2_map_symbol_filenames): Likewise.
13100         (create_cus_from_debug_names): Likewise.
13101         (dwarf2_read_debug_names): Likewise.
13102         (dw2_debug_names_iterator::next): Likewise.
13103         (dwarf2_initialize_objfile): Likewise.
13104         (set_partial_user): Likewise.
13105         (dwarf2_build_psymtabs_hard): Likewise.
13106         (read_comp_units_from_section): Remove arguments, adjust to
13107         std::vector change.
13108         (create_all_comp_units): Adjust to std::vector and
13109         read_comp_units_from_section changes.
13110         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13111         change.
13112         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13113         (psyms_seen_size): Likewise.
13114         (write_gdbindex): Likewise.
13115         (write_debug_names): Likewise.
13116
13117 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13118
13119         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13120         with dwarf2_per_objfile.
13121         (create_cus_from_index): Likewise.
13122         (create_signatured_type_table_from_index): Likewise.
13123         (dwarf2_read_index): Likewise.
13124         (dwarf2_initialize_objfile): Likewise.
13125         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13126         per_cu rather than get_dwarf2_per_objfile.
13127
13128 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13129
13130         * dwarf2read.h (struct signatured_type): Forward declare.
13131         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13132         New methods.
13133         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13134         (dw2_get_cutu): ...this.
13135         (dwarf2_per_objfile::get_cu): Rename from...
13136         (dw2_get_cu): ...this.
13137         (dwarf2_per_objfile::get_tu): New.
13138         (create_addrmap_from_index): Adjust.
13139         (create_addrmap_from_aranges): Adjust.
13140         (dw2_find_last_source_symtab): Adjust.
13141         (dw2_map_symtabs_matching_filename): Adjust.
13142         (dw2_symtab_iter_next): Adjust.
13143         (dw2_print_stats): Adjust.
13144         (dw2_expand_all_symtabs): Adjust.
13145         (dw2_expand_symtabs_with_fullname): Adjust.
13146         (dw2_expand_marked_cus): Adjust.
13147         (dw_expand_symtabs_matching_file_matcher): Adjust.
13148         (dw2_map_symbol_filenames): Adjust.
13149         (dw2_debug_names_iterator::next): Adjust.
13150         (dwarf2_initialize_objfile): Adjust.
13151         (set_partial_user): Adjust.
13152         (dwarf2_build_psymtabs_hard): Adjust.
13153
13154 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13155
13156         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13157         Remove unused variables.
13158         (dw2_map_symtabs_matching_filename): Likewise.
13159         (dwarf2_record_block_ranges): Likewise.
13160         (dwarf2_read_addr_index): Likewise.
13161         (follow_die_offset): Likewise.
13162
13163 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13164
13165         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13166         to symbol_file_add_main.
13167
13168 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13169
13170         PR mi/22299
13171         * mi/mi-console.c (do_fputc_async_safe): New.
13172         (mi_console_file::write_async_safe): New.
13173         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13174         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13175         New.
13176         * ui-file.c (ui_file::putstrn): Adjust call to
13177         fputstrn_unfiltered.
13178         * utils.c (printchar): Replace do_fputs and do_fprintf
13179         parameters by do_fputc.
13180         (fputstr_filtered): Adjust call to printchar.
13181         (fputstr_unfiltered): Likewise.
13182         (fputstrn_filtered): Likewise.
13183         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13184         printchar.
13185         * utils.h (do_fputc_ftype): New typedef.
13186         (fputstrn_unfiltered): Add do_fputc parameter.
13187
13188 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13189
13190         * regformats/i386/i386-avx.dat: Remove.
13191
13192 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13193
13194         PR gdb/22979
13195         * amd64-tdep.c (amd64_none_init_abi): New function.
13196         (amd64_x32_none_init_abi): New function.
13197         (_initialize_amd64_tdep): Register handlers for x86-64 and
13198         x64_32 with GDB_OSABI_NONE.
13199         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13200         GDB_OSABI_NONE osabi.
13201
13202 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13203
13204         PR gdb/22980
13205         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13206         GDB_OSABI_NONE.
13207         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13208         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13209
13210 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13211
13212         * common/byte-vector.h (char_vector): New type.
13213         * target.h (target_read_alloc): Return
13214         gdb::optional<byte_vector>.
13215         (target_read_stralloc): Return gdb::optional<char_vector>.
13216         (target_get_osdata): Return gdb::optional<char_vector>.
13217         * target.c (target_read_alloc_1): Templatize.  Replacement
13218         manual memory management with vector.
13219         (target_read_alloc): Change return type, adjust.
13220         (target_read_stralloc): Change return type, adjust.
13221         (target_get_osdata): Change return type, adjust.
13222         * auxv.c (struct auxv_info) <length>: Remove.
13223         <data>: Change type to gdb::optional<byte_vector>.
13224         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13225         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13226         (target_auxv_search): Adjust.
13227         (fprint_target_auxv): Adjust.
13228         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13229         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13230         (linux_make_corefile_notes): Adjust.
13231         * osdata.c (get_osdata): Adjust.
13232         * remote.c (remote_get_threads_with_qxfer): Adjust.
13233         (remote_memory_map): Adjust.
13234         (remote_traceframe_info): Adjust.
13235         (btrace_read_config): Adjust.
13236         (remote_read_btrace): Adjust.
13237         (remote_pid_to_exec_file): Adjust.
13238         * solib-aix.c (solib_aix_get_library_list): Adjust.
13239         * solib-dsbt.c (decode_loadmap): Don't free buf.
13240         (dsbt_get_initial_loadmaps): Adjust.
13241         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13242         * solib-target.c (solib_target_current_sos): Adjust.
13243         * tracepoint.c (sdata_make_value): Adjust.
13244         * xml-support.c (xinclude_start_include): Adjust.
13245         (xml_fetch_content_from_file): Adjust.
13246         * xml-support.h (xml_fetch_another): Change return type.
13247         (xml_fetch_content_from_file): Change return type.
13248         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13249         * xml-tdesc.c (file_read_description_xml): Adjust.
13250         (fetch_available_features_from_target): Change return type.
13251         (target_fetch_description_xml): Adjust.
13252         (target_read_description_xml): Adjust.
13253
13254 2018-04-06  Tom Tromey  <tom@tromey.com>
13255
13256         * value.c (~value): Update.
13257         (struct value) <contents>: Now unique_xmalloc_ptr.
13258         (value_contents_bits_eq, allocate_value_contents)
13259         (value_contents_raw, value_contents_all_raw)
13260         (value_contents_for_printing, value_contents_for_printing_const)
13261         (set_value_enclosing_type): Update.
13262
13263 2018-04-06  Tom Tromey  <tom@tromey.com>
13264
13265         * value.c (range_s): Remove typedef, VEC.
13266         (struct range): Add operator<.
13267         (range_lessthan): Remove.
13268         (ranges_contain): Change type.
13269         (~value): Update.
13270         (struct value) <unavailable, optimized_out>: Now std::vector.
13271         (value_entirely_available)
13272         (value_entirely_covered_by_range_vector)
13273         (value_entirely_unavailable, value_entirely_optimized_out):
13274         Update.
13275         (insert_into_bit_range_vector): Change argument type.
13276         (find_first_range_overlap): Likewise.
13277         (struct ranges_and_idx, value_contents_bits_eq)
13278         (require_not_optimized_out, require_available): Update.
13279         (ranges_copy_adjusted): Change argument types.
13280         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13281
13282 2018-04-06  Tom Tromey  <tom@tromey.com>
13283
13284         * value.c (~value): Update.
13285         (struct value) <parent>: Now a value_ref_ptr.
13286         (value_parent, set_value_parent, value_address, value_copy):
13287         Update.
13288
13289 2018-04-06  Tom Tromey  <tom@tromey.com>
13290
13291         * value.c (struct value): Add constructor, destructor, and member
13292         initializers.
13293         (allocate_value_lazy, value_decref): Update.
13294
13295 2018-04-06  Tom Tromey  <tom@tromey.com>
13296
13297         * value.c (struct value) <released, next>: Remove.
13298         (all_values): Now a std::vector.
13299         (allocate_value_lazy): Update.
13300         (value_next): Remove.
13301         (value_mark, value_free_to_mark, release_value)
13302         (value_release_to_mark): Update.
13303
13304 2018-04-06  Tom Tromey  <tom@tromey.com>
13305
13306         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13307         (free_value_chain): Remove.
13308         * value.c (free_value_chain): Remove.
13309         (value_release_to_mark): Return a std::vector.
13310         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13311         std::vector.
13312         (check_condition): Update.
13313         * eval.c (fetch_subexp_value): Change "val_chain" to a
13314         std::vector.
13315         * breakpoint.c (update_watchpoint): Update.
13316         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13317
13318 2018-04-06  Tom Tromey  <tom@tromey.com>
13319
13320         * value.h (free_all_values): Remove.
13321         * value.c (free_all_values): Remove.
13322
13323 2018-04-06  Tom Tromey  <tom@tromey.com>
13324
13325         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13326         (value_history_chain, value_history_count): Remove.
13327         (value_history): New global.
13328         (record_latest_value, access_value_history, show_values)
13329         (preserve_values): Update.
13330
13331 2018-04-06  Tom Tromey  <tom@tromey.com>
13332
13333         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13334         * varobj.c (varobj_set_display_format, varobj_set_value)
13335         (install_default_visualizer, construct_visualizer)
13336         (install_new_value, ~varobj, varobj_get_value_type)
13337         (my_value_of_variable, varobj_editable_p): Update.
13338         * c-varobj.c (c_describe_child, c_value_of_variable)
13339         (cplus_number_of_children, cplus_describe_child): Update.
13340         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13341         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13342         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13343
13344 2018-04-06  Tom Tromey  <tom@tromey.com>
13345
13346         * printcmd.c (last_examine_address): Change type to
13347         value_ref_ptr.
13348         (do_examine, x_command): Update.
13349
13350 2018-04-06  Tom Tromey  <tom@tromey.com>
13351
13352         * value.c (release_value): Update.
13353         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13354         (struct bpstats) <val>: Now a value_ref_ptr.
13355         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13356         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13357         (~watchpoint, print_it_watchpoint, watch_command_1)
13358         (invalidate_bp_value_on_memory_change): Update.
13359
13360 2018-04-06  Tom Tromey  <tom@tromey.com>
13361
13362         * varobj.c (varobj_clear_saved_item)
13363         (update_dynamic_varobj_children, install_new_value, ~varobj):
13364         Update.
13365         * value.h (value_incref): Move declaration earlier.
13366         (value_decref): Rename from value_free.
13367         (struct value_ref_policy): New.
13368         (value_ref_ptr): New typedef.
13369         (struct value_deleter): Remove.
13370         (gdb_value_up): Remove typedef.
13371         (release_value): Change return type.
13372         (release_value_or_incref): Remove.
13373         * value.c (set_value_parent): Update.
13374         (value_incref): Change return type.
13375         (value_decref): Rename from value_free.
13376         (value_free_to_mark, free_all_values, free_value_chain): Update.
13377         (release_value): Return value_ref_ptr.
13378         (release_value_or_incref): Remove.
13379         (record_latest_value, set_internalvar, clear_internalvar):
13380         Update.
13381         * stack.c (info_frame_command): Don't call value_free.
13382         * python/py-value.c (valpy_dealloc, valpy_new)
13383         (value_to_value_object): Update.
13384         * printcmd.c (do_examine): Update.
13385         * opencl-lang.c (lval_func_free_closure): Update.
13386         * mi/mi-main.c (register_changed_p): Don't call value_free.
13387         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13388         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13389         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13390         value_free.
13391         * guile/scm-value.c (vlscm_free_value_smob)
13392         (vlscm_scm_from_value): Update.
13393         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13394         (frame_unwind_register_unsigned, get_frame_register_bytes)
13395         (put_frame_register_bytes): Don't call value_free.
13396         * findvar.c (address_from_register): Don't call value_free.
13397         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13398         * dwarf2loc.c (entry_data_value_free_closure)
13399         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13400         (dwarf2_evaluate_loc_desc_full): Update.
13401         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13402         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13403         (~watchpoint, watch_command_1)
13404         (invalidate_bp_value_on_memory_change): Update.
13405         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13406
13407 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13408
13409         PR gdb/23022
13410         * warning.m4: Add -Wno-error=deprecated-register.
13411         * configure: Re-generate.
13412
13413 2018-04-05  Tom Tromey  <tom@tromey.com>
13414
13415         * linespec.h: Remove include of "vec.h".
13416
13417 2018-04-05  Tom Tromey  <tom@tromey.com>
13418
13419         * linespec.c (typep): Remove typedef.
13420         (find_methods, find_superclass_methods): Take a std::vector.
13421         (find_method): Use std::vector.
13422
13423 2018-04-05  Tom Tromey  <tom@tromey.com>
13424
13425         * utils.c (compare_strings): Remove.
13426         * utils.h (compare_strings): Remove.
13427         * objc-lang.h (find_imps): Update.
13428         * objc-lang.c (find_methods): Take a std::vector.
13429         (uniquify_strings, find_imps): Likewise.
13430         * linespec.c (find_methods): Take a std::vector.
13431         (decode_objc): Use std::vector.
13432         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13433         a std::vector.
13434         (find_method, find_function_symbols): Use std::vector.
13435
13436 2018-04-05  Tom Tromey  <tom@tromey.com>
13437
13438         * completer.c (completion_tracker::completion_tracker): Remove
13439         cast.
13440         (completion_tracker::discard_completions): Likewise.
13441         * breakpoint.c (ambiguous_names_p): Remove cast.
13442         * ada-lang.c (_initialize_ada_language): Remove cast.
13443         * utils.h (streq): Update.
13444         (streq_hash): Add new declaration.
13445         * utils.c (streq): Return bool.
13446         (streq_hash): New function.
13447
13448 2018-04-05  Tom Tromey  <tom@tromey.com>
13449
13450         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13451         Remove a string copy.
13452
13453 2018-04-05  Tom Tromey  <tom@tromey.com>
13454
13455         * linespec.c (filter_results): Use std::vector.
13456         (decode_line_2, decode_line_full): Update.
13457
13458 2018-04-05  Tom Tromey  <tom@tromey.com>
13459
13460         * linespec.c (canonical_to_fullform): Return std::string.
13461         (filter_results): Update.
13462         (struct decode_line_2_item): Add constructor.
13463         <fullform, displayform>: Now std::string.
13464         (decode_line_2_compare_items): Now a std::sort comparator.
13465         (decode_line_2): Update.
13466
13467 2018-04-05  Tom Tromey  <tom@tromey.com>
13468
13469         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13470         (unexpected_linespec_error): Update.
13471         (linespec_parse_basic, parse_linespec): Update.
13472
13473 2018-04-05  Tom Tromey  <tom@tromey.com>
13474
13475         * linespec.c (linespec_parse_basic): Reindent.
13476
13477 2018-04-05  Tom Tromey  <tom@tromey.com>
13478
13479         * minsyms.h (iterate_over_minimal_symbols): Update.
13480         * minsyms.c (iterate_over_minimal_symbols): Take a
13481         gdb::function_view.
13482         * linespec.c (struct collect_minsyms): Remove.
13483         (compare_msyms): Now a std::sort comparator.
13484         (add_minsym): Add parameters.
13485         (search_minsyms_for_name): Update.  Use std::vector.
13486
13487 2018-04-03  Tom Tromey  <tom@tromey.com>
13488
13489         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13490         gdb::byte_vector.
13491
13492 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13493
13494         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13495
13496 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13497
13498         PR gdb/16959
13499         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13500         printing static type.
13501
13502 2018-04-01  Tom Tromey  <tom@tromey.com>
13503
13504         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13505         (rs6000_xfer_shared_libraries): Update.
13506
13507 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13508
13509         * common/gdb_vecs.h (char_ptr): Remove.
13510         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13511
13512 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13513
13514         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13515         with std::vector.
13516         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13517
13518 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13519
13520         * tracepoint.h (struct uploaded_tp): Initialize fields.
13521         <actions, step_actions, cmd_strings>: Change type to
13522         std::vector<char *>.
13523         * tracepoint.c (get_uploaded_tp): Allocate with new.
13524         (free_uploaded_tps): Free with delete.
13525         (parse_tracepoint_definition): Adjust to std::vector change.
13526         * breakpoint.c (read_uploaded_action): Likewise.
13527         (create_tracepoint_from_upload): Likewise.
13528         * ctf.c (ctf_write_uploaded_tp): Likewise.
13529         (SET_ARRAY_FIELD): Likewise.
13530         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13531
13532 2018-03-30  Tom Tromey  <tom@tromey.com>
13533
13534         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13535         std::unique_ptr.
13536         (svr4_keep_data_in_core): Update.
13537         (svr4_read_so_list): Update.
13538
13539 2018-03-30  Tom Tromey  <tom@tromey.com>
13540
13541         * windows-nat.c (handle_output_debug_string, handle_exception):
13542         Update.
13543         * target.h (target_read_string): Update.
13544         * target.c (target_read_string): Change "string" to
13545         unique_xmalloc_ptr.
13546         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13547         Update.
13548         * solib-frv.c (frv_current_sos): Update.
13549         * solib-dsbt.c (dsbt_current_sos): Update.
13550         * solib-darwin.c (darwin_current_sos): Update.
13551         * linux-thread-db.c (inferior_has_bug): Update.
13552         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13553         Update.  Remove alloca.
13554         * ada-lang.c (ada_main_name): Update.
13555
13556 2018-03-30  Tom Tromey  <tom@tromey.com>
13557
13558         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13559         (struct dwo_file_deleter): New.
13560         (dwo_file_up): New typedef.
13561         (open_and_init_dwo_file): Use dwo_file_up.
13562         (free_dwo_file_cleanup): Remove.
13563
13564 2018-03-30  Tom Tromey  <tom@tromey.com>
13565
13566         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13567         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13568
13569 2018-03-30  Tom Tromey  <tom@tromey.com>
13570
13571         * dwarf2read.c (class free_cached_comp_units): New class.
13572         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13573         (free_cached_comp_units): Remove function.
13574
13575 2018-03-30  Tom Tromey  <tom@tromey.com>
13576
13577         * utils.h (make_cleanup_unpush_target): Remove.
13578         * inf-ptrace.c (struct target_unpusher): New.
13579         (target_unpush_up) New typedef.
13580         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13581         target_unpush_up.
13582         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13583
13584 2018-03-27  Tom Tromey  <tom@tromey.com>
13585
13586         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13587
13588 2018-03-27  Pedro Alves  <palves@redhat.com>
13589             Tom Tromey  <tom@tromey.com>
13590
13591         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13592         destructor.  Now a class.
13593         (gdb_readline_wrapper_cleanup): Remove function.
13594         (gdb_readline_wrapper): Remove cleanups.
13595
13596 2018-03-27  Tom Tromey  <tom@tromey.com>
13597
13598         * typeprint.h (struct type_print_options) <local_typedefs,
13599         global_typedefs>: Remove "struct" keyword.
13600         (class typedef_hash_table): New class.
13601         (recursively_update_typedef_hash, add_template_parameters)
13602         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13603         (find_typedef_in_hash): Don't declare.
13604         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13605         (typedef_hash_table::recursively_update): Rename from
13606         recursively_update_typedef_hash.  Now a member.
13607         (typedef_hash_table::add_template_parameters): Rename from
13608         add_template_parameters.  Now a member.
13609         (typedef_hash_table::typedef_hash_table): Now a constructor;
13610         rename from create_typedef_hash.
13611         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13612         rename from free_typedef_hash.
13613         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13614         (do_free_global_table): Remove.
13615         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13616         from copy_type_recursive.
13617         (create_global_typedef_table): Remove.
13618         (typedef_hash_table::find_global_typedef): Now a member of
13619         typedef_hash_table.
13620         (typedef_hash_table::find_typedef): Rename from
13621         find_typedef_in_hash; now a member.
13622         (whatis_exp): Update.
13623         * extension.h (struct ext_lang_type_printers): Add constructor and
13624         destructor.
13625         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13626         declare.
13627         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13628         Now a constructor; rename from start_ext_lang_type_printers.
13629         (ext_lang_type_printers): Now a destructor; rename from
13630         free_ext_lang_type_printers.
13631         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13632         Update.
13633         (c_type_print_base_struct_union): Update.  Remove cleanups.
13634
13635 2018-03-27  Tom Tromey  <tom@tromey.com>
13636
13637         * dwarf-index-write.c: Include <cmath>.
13638
13639 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13640
13641         * NEWS: Add entry describing new "set|show varsize-limit" command.
13642         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13643         command.
13644         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13645         "set variable".
13646
13647 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13648
13649         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13650         dwarf-index-write.c
13651         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13652         * dwarf-index-common.c: New file.
13653         * dwarf-index-common.h: New file.
13654         * dwarf-index-write.c: New file.
13655         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13656         (struct dwarf2_section_info): Move from here.
13657         (dwarf2_section_info_def): Likewise.
13658         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13659         (offset_type): Likewise.
13660         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13661         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13662         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13663         (byte_swap): Likewise.
13664         (MAYBE_SWAP): Likewise.
13665         (dwarf2_per_cu_ptr): Likewise.
13666         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13667         (struct tu_stats): Likewise.
13668         (struct dwarf2_per_objfile): Likewise.
13669         (struct dwarf2_per_cu_data): Likewise.
13670         (struct signatured_type): Likewise.
13671         (sig_type_ptr): Likewise.
13672         (DEF_VEC_P (sig_type_ptr)): Likewise.
13673         (INDEX4_SUFFIX): Likewise.
13674         (INDEX5_SUFFIX): Likewise.
13675         (DEBUG_STR_SUFFIX): Likewise.
13676         (dwarf2_read_section): Make non-static.
13677         (mapped_index_string_hash): Move from here.
13678         (dwarf5_djb_hash): Likewise.
13679         (file_write): Likewise.
13680         (class data_buf): Likewise.
13681         (struct symtab_index_entry): Likewise.
13682         (struct mapped_symtab): Likewise.
13683         (find_slot): Likewise.
13684         (hash_expand): Likewise.
13685         (add_index_entry): Likewise.
13686         (uniquify_cu_indices): Likewise.
13687         (class c_str_view): Likewise.
13688         (class c_str_view_hasher): Likewise.
13689         (class vector_hasher): Likewise.
13690         (write_hash_table): Likewise.
13691         (psym_index_map): Likewise.
13692         (struct addrmap_index_data): Likewise.
13693         (add_address_entry): Likewise.
13694         (add_address_entry_worker): Likewise.
13695         (write_address_map): Likewise.
13696         (symbol_kind): Likewise.
13697         (write_psymbols): Likewise.
13698         (struct signatured_type_index_data): Likewise.
13699         (write_one_signatured_type): Likewise.
13700         (recursively_count_psymbols): Likewise.
13701         (recursively_write_psymbols): Likewise.
13702         (class debug_names): Likewise.
13703         (check_dwarf64_offsets): Likewise.
13704         (psyms_seen_size): Likewise.
13705         (write_gdbindex): Likewise.
13706         (write_debug_names): Likewise.
13707         (assert_file_size): Likewise.
13708         (write_psymtabs_to_index): Likewise.
13709         (save_gdb_index_command): Likewise.
13710         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13711         command.
13712         * dwarf2read.h: New file.
13713
13714 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13715
13716         PR gdb/22670
13717         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13718         symbol name if the CU's language stores symbol names in linkage
13719         format.
13720         * language.h (struct language_defn)
13721         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13722         all instances of this struct.
13723
13724 2018-03-26  Tom Tromey  <tom@tromey.com>
13725
13726         * stack.c (backtrace_command_1): Remove verbose code.
13727
13728 2018-03-26  Tom Tromey  <tom@tromey.com>
13729
13730         * python/py-framefilter.c (py_print_type): Don't catch
13731         exceptions.  Return void.
13732         (py_print_value): Likewise.
13733         (py_print_single_arg): Likewise.
13734         (enumerate_args): Don't catch exceptions.
13735         (py_print_args): Likewise.
13736         (py_print_frame): Likewise.
13737         (gdbpy_apply_frame_filter): Catch exceptions here.
13738
13739 2018-03-26  Tom Tromey  <tom@tromey.com>
13740
13741         * stack.c (_initialize_stack): Remove trailing newlines from help
13742         text.  Add "Usage" line to "backtrace" help.
13743
13744 2018-03-26  Tom Tromey  <tom@tromey.com>
13745
13746         PR python/16486:
13747         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13748
13749 2018-03-26  Tom Tromey  <tom@tromey.com>
13750
13751         * python/py-framefilter.c (py_print_single_arg): Return
13752         EXT_LANG_BT_ERROR from catch.
13753
13754 2018-03-26  Tom Tromey  <tom@tromey.com>
13755
13756         PR backtrace/15584:
13757         * stack.c (backtrace_command_1): Move some code into no-filters
13758         "if".
13759
13760 2018-03-26  Tom Tromey  <tom@tromey.com>
13761
13762         * python/py-framefilter.c (throw_quit_or_print_exception): New
13763         function.
13764         (gdbpy_apply_frame_filter): Use it.
13765
13766 2018-03-26  Tom Tromey  <tom@tromey.com>
13767
13768         PR cli/17716:
13769         * python/py-framefilter.c (py_print_type, py_print_value)
13770         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13771         RETURN_MASK_ERROR.
13772
13773 2018-03-26  Tom Tromey  <tom@tromey.com>
13774
13775         * python/py-framefilter.c (enumerate_args): Use
13776         gdb::unique_xmalloc_ptr.
13777
13778 2018-03-26  Tom Tromey  <tom@tromey.com>
13779
13780         * python/py-framefilter.c (py_print_frame): Return
13781         EXT_LANG_BT_OK.
13782         (gdbpy_apply_frame_filter): Update comment.
13783         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13784         Remove.
13785         <EXT_LANG_BT_NO_FILTERS>: Change value.
13786
13787 2018-03-26  Tom Tromey  <tom@tromey.com>
13788
13789         PR backtrace/15582:
13790         * stack.c (backtrace_command): Parse "hide" argument.
13791         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13792         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13793         constant.
13794
13795 2018-03-26  Tom Tromey  <tom@tromey.com>
13796
13797         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13798         add "flags".
13799         (backtrace_command): Remove "fulltrace", add "flags".
13800
13801 2018-03-26  Tom Tromey  <tom@tromey.com>
13802
13803         * stack.c (backtrace_command): Rewrite command line parsing.
13804
13805 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13806
13807         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13808
13809 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13810
13811         * filename-seen-cache.h: Add include guard.
13812
13813 2018-03-26  Keith Seitz  <keiths@redhat.com>
13814
13815         * symfile.c (place_section): Remove "struct" from section_addr_info
13816         in comment.
13817         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13818         "struct" keyword from section_addr_info.
13819
13820 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13821
13822         * regformats/regdef.h (reg): Add constructors.
13823
13824 2018-03-25  Pedro Alves  <palves@redhat.com>
13825
13826         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13827         if then/else bodies in var_func_name extraction.
13828
13829 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13830
13831         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13832         lookup_minimal_symbol() to find symbol entry.
13833         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13834
13835 2018-03-23  Keith Seitz  <keiths@redhat.com>
13836
13837         PR c++/22968
13838         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13839         nested type definitions for C++, too.
13840
13841 2018-03-23  Tom Tromey  <tom@tromey.com>
13842
13843         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13844         a typedef.
13845         (macho_register_oso): Remove.
13846         (macho_symtab_read): Take a std::vector.
13847         (oso_el_compare_name): Now a std::sort comparator.
13848         (macho_symfile_read_all_oso): Take a std::vector.
13849         (macho_symfile_read): Use std::vector.  Remove cleanups.
13850
13851 2018-03-22  Tom Tromey  <tom@tromey.com>
13852
13853         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13854         (record_full_goto_bookmark): Use std::string.
13855
13856 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13857
13858         PR tdep/18295
13859         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13860         a single mask.
13861
13862 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13863
13864         * rs6000-tdep.c (store_insn_p): New function.
13865         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13866         and cr_reg to their unshifted values. Use store_insn_p to
13867         match LR saves using either R1 or fdata->alloca_reg. Use
13868         store_insn_p to match CR saves. Set alloca_reg_offset
13869         when alloca_reg and framep are set. Remove lr_reg shift
13870         when assigning to fdata->lr_register.
13871
13872 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13873
13874         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13875         command line args instead of emitting a warning.
13876
13877 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13878
13879         * tracepoint.h (struct static_tracepoint_marker): Initialize
13880         fields, define default constructor, move constructor and move
13881         assignment, disable the rest.
13882         <str_id, extra>: Make std::string.
13883         (release_static_tracepoint_marker): Remove.
13884         (free_current_marker): Remove.
13885         * tracepoint.c (free_current_marker): Remove.
13886         (parse_static_tracepoint_marker_definition): Adjust to
13887         std::string, use new hex2str overload.
13888         (release_static_tracepoint_marker): Remove.
13889         (print_one_static_tracepoint_marker): Get marker by reference
13890         and adjust to std::string.
13891         (info_static_tracepoint_markers_command): Adjust to std::vector
13892         changes
13893         * target.h (static_tracepoint_marker_p): Remove typedef.
13894         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13895         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13896         bool.
13897         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13898         * target-debug.h
13899         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13900         (target_debug_print_std_vector_static_tracepoint_marker): New.
13901         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13902         to...
13903         (target_debug_print_static_tracepoint_marker_p): ... this.
13904         * target-delegates.c: Re-generate.
13905         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13906         Make std::string.
13907         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13908         (decode_static_tracepoint_spec): Adjust to std::vector.
13909         (tracepoint_print_one_detail): Adjust to std::string.
13910         (strace_marker_decode_location): Adjust to std::string.
13911         (update_static_tracepoint): Adjust to std::string, remove call
13912         to release_static_tracepoint_marker.
13913         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13914         Adjust to std::vector.
13915         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13916         (remote_static_tracepoint_markers_by_strid): Adjust to
13917         std::vector.
13918         * common/rsp-low.h (hex2str): New overload with explicit count
13919         of bytes.
13920         * common/rsp-low.c (hex2str): New overload with explicit count
13921         of bytes.
13922         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13923         (_initialize_rsp_low_selftests): Add test_hex2str test.
13924         * unittests/tracepoint-selftests.c
13925         (test_parse_static_tracepoint_marker_definition): Adjust to
13926         std::string.
13927
13928 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13929
13930         * tracepoint.c (parse_static_tracepoint_marker_definition):
13931         Consider case where the definition is followed by more
13932         definitions.
13933         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13934         tracepoint-selftests.c.
13935         * unittests/tracepoint-selftests.c: New.
13936
13937 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13938
13939         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13940         Carvalho.
13941
13942 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13943
13944         * symtab.c (find_pc_sect_line): fixed indentation.
13945
13946 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13947
13948         * symtab.c (find_pc_sect_line): now uses binary search.
13949
13950 2018-03-19  Tom Tromey  <tom@tromey.com>
13951
13952         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13953         "IDENT" production.
13954
13955 2018-03-19  Pedro Alves  <palves@redhat.com>
13956             Tom Tromey  <tom@tromey.com>
13957
13958         * unittests/observable-selftests.c: New file.
13959         * common/observable.h: New file.
13960         * observable.h: New file.
13961         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13962         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13963         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13964         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13965         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13966         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13967         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13968         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13969         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13970         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13971         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13972         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13973         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13974         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13975         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13976         tui/tui-interp.c, valops.c: Update all users.
13977         * tui/tui-hooks.c (tui_bp_created_observer)
13978         (tui_bp_deleted_observer, tui_bp_modified_observer)
13979         (tui_inferior_exit_observer, tui_before_prompt_observer)
13980         (tui_normal_stop_observer, tui_register_changed_observer):
13981         Remove.
13982         (tui_observers_token): New global.
13983         (attach_or_detach, tui_attach_detach_observers): New functions.
13984         (tui_install_hooks, tui_remove_hooks): Use
13985         tui_attach_detach_observers.
13986         * record-btrace.c (record_btrace_thread_observer): Remove.
13987         (record_btrace_thread_observer_token): New global.
13988         * observer.sh: Remove.
13989         * observer.c: Rename to observable.c.
13990         * observable.c (namespace gdb_observers): Define new objects.
13991         (observer_debug): Move into gdb_observers namespace.
13992         (struct observer, struct observer_list, xalloc_observer_list_node)
13993         (xfree_observer_list_node, generic_observer_attach)
13994         (generic_observer_detach, generic_observer_notify): Remove.
13995         (_initialize_observer): Update.
13996         Don't include observer.inc.
13997         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13998         (clean mostlyclean): Likewise.
13999         (observer.h, observer.inc): Remove targets.
14000         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
14001         (COMMON_SFILES): Use observable.c, not observer.c.
14002         * .gitignore: Remove observer.h.
14003
14004 2018-03-18  Tom Tromey  <tom@tromey.com>
14005
14006         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
14007         gdb::def_vector.
14008         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
14009
14010 2018-03-17  Tom Tromey  <tom@tromey.com>
14011
14012         * auto-load.c (auto_load_objfile_script_1): Use std::string.
14013
14014 2018-03-17  Tom Tromey  <tom@tromey.com>
14015
14016         * target.c (class scoped_target_fd): New.
14017         (target_fileio_close_cleanup): Remove.
14018         (target_fileio_read_alloc_1): Use scoped_target_fd.
14019
14020 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
14021
14022         * silent-rules.mk: New.
14023         * Makefile.in: Include silent-rules.mk
14024         (srcdir, VPATH, top_srcdir): Move up.
14025         (COMPILE): Add ECHO_CXX.
14026         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
14027         (init.c): Add ECHO_INIT_C.
14028         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
14029         (version.c): Add ECHO_GEN.
14030         (printcmd.o): Add ECHO_CXX.
14031         (target-float.o): Add ECHO_CXX.
14032         (ada-exp.o): Add ECHO_CXX.
14033         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
14034         (insight$(EXEEXT)): Add ECHO_CXXLD.
14035         * gnulib/configure.ac: Add AM_SILENT_RULES.
14036         * gnulib/aclocal.m4: Re-generate.
14037         * gnulib/configure: Re-generate.
14038         * gnulib/import/Makefile.in: Re-generate.
14039
14040 2018-03-16  Tom Tromey  <tom@tromey.com>
14041
14042         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
14043         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
14044         * utils.c (do_free_section_addr_info)
14045         (make_cleanup_free_section_addr_info): Remove.
14046         * symfile.h (struct other_sections): Add constructor.
14047         (struct section_addr_info): Remove.
14048         (section_addr_info): New typedef.
14049         (struct sym_fns) <sym_offsets>: Change type of parameter.
14050         (build_section_addr_info_from_objfile)
14051         (relative_addr_info_to_section_offsets, addr_info_make_relative)
14052         (default_symfile_offsets, symbol_file_add)
14053         (symbol_file_add_from_bfd)
14054         (build_section_addr_info_from_section_table): Update.
14055         (alloc_section_addr_info, free_section_addr_info): Don't declare.
14056         * symfile.c (alloc_section_addr_info): Remove.
14057         (build_section_addr_info_from_section_table): Change return type.
14058         Update.
14059         (build_section_addr_info_from_bfd)
14060         (build_section_addr_info_from_objfile): Likewise.
14061         (free_section_addr_info): Remove.
14062         (relative_addr_info_to_section_offsets): Change type of "addrs".
14063         (addrs_section_compar): Now a std::sort comparator.
14064         (addrs_section_sort): Change return type.
14065         (addr_info_make_relative): Change type of "addrs".  Update.
14066         (default_symfile_offsets, syms_from_objfile_1)
14067         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
14068         (symbol_file_add_separate): Update.
14069         (symbol_file_add): Change type of "addrs".  Update.
14070         (add_symbol_file_command): Update.  Remove cleanups.
14071         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
14072         cleanups.
14073         * symfile-debug.c (debug_sym_offsets): Change type of "info".
14074         * solib.c (solib_read_symbols): Update.
14075         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
14076         * machoread.c (macho_symfile_offsets): Update.
14077         * jit.c (jit_bfd_try_read_symtab): Update.
14078
14079 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
14080
14081         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14082         unittests/utils-selftests.c.
14083         * unittests/utils-selftests.c: New file.
14084
14085 2018-03-14  Tom Tromey  <tom@tromey.com>
14086
14087         PR cli/14977:
14088         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14089         for NULL.
14090
14091 2018-03-14  Tom Tromey  <tom@tromey.com>
14092
14093         PR cli/19918:
14094         * printcmd.c (printf_pointer): Allow "-" in format.
14095
14096 2018-03-14  Tom Tromey  <tom@tromey.com>
14097
14098         * printcmd.c (_initialize_printcmd): Add usage to printf.
14099
14100 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14101
14102         * MAINTAINERS: Update my email address.
14103
14104 2018-03-13  Tom Tromey  <tom@tromey.com>
14105
14106         * machoread.c (macho_check_dsym): Change filenamep to a
14107         std::string*.
14108         (macho_symfile_read): Update.
14109         * symfile.c (load_command): Use std::string.
14110
14111 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14112
14113         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14114         to error message string.
14115         (riscv_register_name): Use xsnprintf instead of sprintf.
14116         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14117         internal_error.
14118         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14119         error.
14120         (riscv_push_dummy_call): Likewise.
14121
14122 2018-03-12  Tom Tromey  <tom@tromey.com>
14123
14124         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14125         Use gdb::byte_vector.
14126         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14127
14128 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14129
14130         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14131         parameter type to readable_regcache.
14132         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14133         the declaration.
14134
14135 2018-03-11  Tom Tromey  <tom@tromey.com>
14136
14137         * dwarf2read.c (struct nextfield): Add initializers.
14138         (struct nextfnfield): Remove.
14139         (struct fnfieldlist): Add initializers.  Remove "length" and
14140         "head", use std::vector.
14141         (struct decl_field_list): Remove.
14142         (struct field_info): Add initializers.
14143         <fields, baseclasses>: Now std::vector.
14144         <nbaseclasses, nfnfields, typedef_field_list_count,
14145         nested_types_list_count>: Remove.
14146         (dwarf2_add_field, dwarf2_add_type_defn)
14147         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14148         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14149         (process_structure_scope): Update.
14150
14151 2018-03-11  Tom Tromey  <tom@tromey.com>
14152
14153         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14154         for use by std::sort.
14155         (build_type_psymtabs_1): Use std::vector.
14156
14157 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14158
14159         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14160         and LIBMPFR in the printed configuration.
14161
14162 2018-03-08  Tom Tromey  <tom@tromey.com>
14163
14164         * source.c (get_filename_and_charpos): Use scoped_fd.
14165         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14166         (procfs_pidlist): Likewise.
14167         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14168         (iterate_over_mappings): Likewise.
14169
14170 2018-03-08  Tom Tromey  <tom@tromey.com>
14171
14172         * infcall.c (struct call_return_meta_info)
14173         <stack_temporaries_enabled>: Remove.
14174         (get_call_return_value, call_function_by_hand_dummy): Update.
14175         * thread.c (disable_thread_stack_temporaries): Remove.
14176         (enable_thread_stack_temporaries): Remove.
14177         (thread_stack_temporaries_enabled_p): Return bool.
14178         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14179         (get_last_thread_stack_temporary): Update.
14180         * eval.c (evaluate_subexp): Update.
14181         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14182         class, not a function.
14183         (value_ptr, value_vec): Remove typedefs.
14184         (class thread_info) <stack_temporaries_enabled>: Now bool.
14185         <stack_temporaries>: Now a std::vector.
14186         (thread_stack_temporaries_enabled_p)
14187         (value_in_thread_stack_temporaries): Return bool.
14188
14189 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14190
14191         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14192         (getpkt_or_notif_sane_1): Likewise.
14193
14194 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14195
14196         * build-id.c (build_id_to_debug_bfd): Use std::string.
14197
14198 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14199
14200         * build-id.c (find_separate_debug_file_by_buildid): Return
14201         std::string.
14202         * build-id.h (find_separate_debug_file_by_buildid): Return
14203         std::string.
14204         * coffread.c (coff_symfile_read): Adjust to std::string.
14205         * elfread.c (elf_symfile_read): Adjust to std::string.
14206         * symfile.c (separate_debug_file_exists): Change parameter to
14207         std::string.
14208         (find_separate_debug_file): Return std::string.
14209         (find_separate_debug_file_by_debuglink): Return std::string.
14210         * symfile.h (find_separate_debug_file_by_debuglink): Return
14211         std::string.
14212
14213 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14214
14215         * common/xml-utils.c (xml_escape_text): Move code to...
14216         (xml_escape_text_append): ... this new function.
14217         * common/xml-utils.h (xml_escape_text_append): New declaration.
14218         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14219         New function.
14220         (_initialize_xml_utils): register test_xml_escape_text_append as
14221         a selftest.
14222
14223 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14224
14225         * defs.h: Remove MAX_REGISTER_SIZE.
14226         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14227         asserts.
14228         * python/py-unwind.c (pyuw_sniffer): Likewise.
14229
14230 2018-03-07  Tom Tromey  <tom@tromey.com>
14231
14232         * linux-tdep.c (linux_info_proc): Update.
14233         * target.h (struct target_ops) <to_fileio_readlink>: Return
14234         optional<string>.
14235         (target_fileio_readlink): Return optional<string>.
14236         * remote.c (remote_hostio_readlink): Return optional<string>.
14237         * inf-child.c (inf_child_fileio_readlink): Return
14238         optional<string>.
14239         * target.c (target_fileio_readlink): Return optional<string>.
14240
14241 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14242
14243         * regcache.c (cooked_read_test): Add riscv to the list of
14244         architectures that have a save_reggroup.
14245
14246 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14247
14248         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14249         value is not a dynamic class object.
14250
14251 2018-03-06  Tom Tromey  <tom@tromey.com>
14252
14253         * rust-exp.y: Formatting fixes.
14254
14255 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14256
14257         * riscv-tdep.c (riscv_register_name): Remove target description
14258         support.
14259         (riscv_gdbarch_init): Remove target description check.
14260
14261 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14262
14263         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14264         comment.
14265         * riscv-tdep.h: Likewise.
14266
14267 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14268
14269         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14270         (riscv_pseudo_register_write): Delete.
14271         (riscv_gdbarch_init): Remove all use of pseudo registers.
14272
14273 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14274
14275         * record-btrace.c (btrace_print_lines): Replace cleanup
14276         parameter with RAII equivalents.
14277         (btrace_insn_history): Replace cleanup with RAII equivalents.
14278         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14279         make_cleanup_ui_out_tuple_begin_end): Remove.
14280         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14281         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14282         make_cleanup_ui_out_list_begin_end): Remove.
14283
14284 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14285
14286         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14287         parameter types to std::vector.  Use bool.
14288         (record_btrace_wait): Replace VEC(tp_t) with
14289         std::vector<thread_info *>.
14290         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14291
14292 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14293
14294         * record-btrace.c (record_btrace_disable_callback): Remove.
14295         (struct scoped_btrace_disable): New.
14296         (record_btrace_open): Use scoped_btrace_disable.
14297
14298 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14299
14300         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14301         reading values from registers.
14302
14303 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14304
14305         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14306         where appropriate.
14307
14308 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14309
14310         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14311         change parameter type.  Use GDB's print functions, and use
14312         core_addr_to_string where appropriate.
14313         (riscv_push_dummy_call): Use core_addr_to_string where
14314         appropriate, update call to riscv_print_arg_location, and reindent
14315         a few lines.
14316         (riscv_return_value): Update call to riscv_print_arg_location.
14317
14318 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14319             Tim Newsome <tim@sifive.com>
14320             Albert Ou <a0u@eecs.berkeley.edu>
14321             Darius Rad <darius@bluespec.com>
14322
14323         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14324         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14325         (ALLDEPFILES): Add riscv-tdep.c
14326         * configure.tgt: Add riscv support.
14327         * riscv-tdep.c: New file.
14328         * riscv-tdep.h: New file.
14329         * NEWS: Mention new target.
14330         * MAINTAINERS: Add entry for riscv.
14331
14332 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14333
14334         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14335         fields within aggregates.
14336
14337 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14338
14339         * record-btrace.c (btrace_print_lines): Change type of flags to
14340         gdb_disassembly_flags.
14341
14342 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14343
14344         * fbsd-nat.c: Include "inf-ptrace.h".
14345         (USE_SIGTRAP_SIGINFO): Conditionally define.
14346         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14347         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14348         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14349         function.
14350         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14351         Likewise.
14352         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14353         Likewise.
14354         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14355         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14356         "supports_stopped_by_hw_breakpoint" target methods.
14357
14358 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14359
14360         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14361         * fbsd-nat.c (debug_fbsd_nat): New variable.
14362         (show_fbsd_nat_debug): New function.
14363         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14364         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14365
14366 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14367
14368         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14369         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14370         prototype.
14371         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14372         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14373         method.
14374
14375 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14376
14377         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14378         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14379
14380 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14381
14382         * charset.c (struct charset_vector): New.
14383         (charsets): Change type to charset_vector.
14384         (find_charset_names): Adjust.
14385         (add_one): Adjust.
14386         (_initialize_charset): Adjust.
14387
14388 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14389
14390         * progspace.h (struct program_space) <deleted_solibs>: Change
14391         type to std::vector<std::string>.
14392         * progspace.c (clear_program_space_solib_cache): Adjust.
14393         * breakpoint.c (print_solib_event): Adjust.
14394         (check_status_catch_solib): Adjust.
14395         * solib.c (update_solib_list): Adjust.
14396         * ui-out.h (class ui_out) <field_string>: New overload.
14397         * ui-out.c (ui_out::field_string): New overload.
14398
14399 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14400
14401         * progspace.h (struct program_space): Add constructor and
14402         destructor, initialize fields.
14403         (add_program_space): Remove.
14404         * progspace.c (add_program_space): Rename to...
14405         (program_space::program_space): ... this.
14406         (release_program_space): Rename to...
14407         (program_space::~program_space): ... this.
14408         (delete_program_space): Use delete to delete program_space.
14409         (initialize_progspace): Use new to allocate program_space.
14410         * inferior.c (add_inferior_with_spaces): Likewise.
14411         (clone_inferior_command): Likewise.
14412         * infrun.c (follow_fork_inferior): Likewise.
14413         (handle_vfork_child_exec_or_exit): Likewise.
14414
14415 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14416
14417         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14418         (delim_string_to_char_ptr_vec): Return std::vector of
14419         gdb::unique_xmalloc_ptr.
14420         (dirnames_to_char_ptr_vec_append): Take std::vector of
14421         gdb::unique_xmalloc_ptr.
14422         (dirnames_to_char_ptr_vec): Return std::vector of
14423         gdb::unique_xmalloc_ptr.
14424         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14425         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14426         (delim_string_to_char_ptr_vec): Return an std::vector of
14427         gdb::unique_xmalloc_ptr, adjust the code.
14428         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14429         gdb::unique_xmalloc_ptr, adjust the code.
14430         (dirnames_to_char_ptr_vec): Return an std::vector of
14431         gdb::unique_xmalloc_ptr, adjust the code.
14432         * auto-load.c (auto_load_safe_path_vec): Change type to
14433         std::vector of gdb::unique_xmalloc_ptr.
14434         (auto_load_expand_dir_vars): Return an std::vector of
14435         gdb::unique_xmalloc_ptr, adjust the code.
14436         (auto_load_safe_path_vec_update): Adjust.
14437         (filename_is_in_auto_load_safe_path_vec): Adjust.
14438         (auto_load_objfile_script_1): Adjust.
14439         * build-id.c (build_id_to_debug_bfd): Adjust.
14440         * linux-thread-db.c (thread_db_load_search): Adjust.
14441         * source.c (add_path): Adjust.
14442         (openp): Adjust.
14443         * symfile.c (find_separate_debug_file): Adjust.
14444         * utils.c (do_free_char_ptr_vec): Remove.
14445         (make_cleanup_free_char_ptr_vec): Remove.
14446
14447 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14448
14449         PR gdb/22907
14450         * common/pathstuff.c: Conditionally include "<windows.h>".
14451
14452 2018-03-01  Georg Sauthoff  <mail@georg.so>
14453
14454         PR gdb/22888
14455         * gcore.in: Quote variables and switch interpreter to bash.
14456
14457 2018-03-01  Tom Tromey  <tom@tromey.com>
14458
14459         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14460         assertion.  Add assertion for discriminant_index.
14461         (quirk_rust_enum): Use correct base type name in univariant case.
14462
14463 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14464
14465         * record.c (get_call_history_modifiers): Return a
14466         record_print_flags.
14467         (cmd_record_call_history): Adjust.
14468         * record-btrace.c (record_btrace_call_history): Adjust.
14469         (record_btrace_call_history_range): Adjust.
14470         (record_btrace_call_history_from): Adjust.
14471         * target-debug.h (target_debug_print_record_print_flags): New.
14472         * target-delegates.c: Re-generate.
14473         * target.c (target_call_history): Change flags type.
14474         (target_call_history_from): Likewise.
14475         (target_call_history_range): Likewise.
14476         * target.h (struct target_ops) <target_call_history>: Likewise.
14477         (target_call_history_from): Likewise.
14478         (target_call_history_range): Likewise.
14479
14480 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14481             Simon Marchi  <simon.marchi@polymtl.ca>
14482
14483         * common/common-utils.c: Include "sys/stat.h".
14484         (is_regular_file): Move here from "source.c"; change return
14485         type to "bool".
14486         * common/common-utils.h (is_regular_file): New prototype.
14487         * common/pathstuff.c (contains_dir_separator): New function.
14488         * common/pathstuff.h (contains_dir_separator): New prototype.
14489         * source.c: Don't include "sys/stat.h".
14490         (is_regular_file): Move to "common/common-utils.c".
14491
14492 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14493
14494         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14495         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14496         * auto-load.c: Include "common/pathstuff.h".
14497         * common/common-def.h (current_directory): Move here.
14498         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14499         function.
14500         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14501         prototype.
14502         * common/pathstuff.c: New file.
14503         * common/pathstuff.h: New file.
14504         * compile/compile.c: Include "common/pathstuff.h".
14505         * defs.h (current_directory): Move to "common/common-defs.h".
14506         * dwarf2read.c: Include "common/pathstuff.h".
14507         * exec.c: Likewise.
14508         * guile/scm-safe-call.c: Likewise.
14509         * linux-thread-db.c: Likewise.
14510         * main.c: Likewise.
14511         * nto-tdep.c: Likewise.
14512         * objfiles.c: Likewise.
14513         * source.c: Likewise.
14514         * symtab.c: Likewise.
14515         * utils.c: Include "common/pathstuff.h".
14516         (gdb_realpath): Move to "common/pathstuff.c".
14517         (gdb_realpath_keepfile): Likewise.
14518         (gdb_abspath): Likewise.
14519         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14520         (gdb_realpath_keepfile): Likewise.
14521         (gdb_abspath): Likewise.
14522
14523 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14524
14525         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14526         wildcard process pid for super_resume for kernels with a
14527         specific bug.
14528
14529 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14530
14531         * compile/compile.c (get_args): Add additional comments
14532         explaining function.
14533
14534 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14535             Tom Tromey  <tom@tromey.com>
14536
14537         * target.h (memory_write_request_s): Remove typedef.  Don't define
14538         VEC.
14539         (target_write_memory_blocks): Change argument to std::vector.
14540         (struct memory_write_request): Add constructor.
14541         * target-memory.c (compare_block_starting_address): Return bool.
14542         Change argument types.
14543         (claim_memory): Change arguments to use std::vector.
14544         (split_regular_and_flash_blocks, blocks_to_erase)
14545         (compute_garbled_blocks): Likewise.
14546         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14547         (target_write_memory_blocks): Change argument to std::vector.
14548         * symfile.c (struct load_section_data): Add constructor and
14549         destructor.  Use std::vector for "requests".
14550         (struct load_progress_data): Add initializers.
14551         (load_section_callback): Update.  Use "new".
14552         (clear_memory_write_data): Remove.
14553         (generic_load): Update.
14554
14555 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14556
14557         * arch/aarch64.h: Use common/tdesc.h.
14558
14559 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14560
14561         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14562         architecture with a 64-bit ABI.
14563
14564 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14565
14566         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14567         ahead of target description loading.
14568
14569 2018-02-26  Tom Tromey  <tom@tromey.com>
14570
14571         * stack.c (backtrace_command_1): Update.
14572         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14573         of "flags".
14574         * python/py-framefilter.c (py_print_frame)
14575         (gdbpy_apply_frame_filter): Change type of "flags".
14576         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14577         of "flags".
14578         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14579         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14580         * extension.h (enum frame_filter_flag): Rename from
14581         frame_filter_flags.
14582         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14583         (apply_ext_lang_frame_filter): Change type of "flags".
14584         * extension.c (apply_ext_lang_frame_filter): Change type of
14585         "flags".
14586         * extension-priv.h (struct extension_language_ops)
14587         <apply_frame_filter>: Change type of "flags".
14588
14589 2018-02-26  Tom Tromey  <tom@tromey.com>
14590
14591         PR python/16497:
14592         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14593         off-by-one in py_end computation.
14594         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14595         PRINT_MORE_FRAMES.
14596         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14597         constant.
14598
14599 2018-02-26  Tom Tromey  <tom@tromey.com>
14600
14601         * dwarf2read.c (struct variant_field): New.
14602         (struct nextfield) <variant>: New field.
14603         (dwarf2_add_field): Handle DW_TAG_variant_part.
14604         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14605         discriminated union.
14606         (read_structure_type): Handle DW_TAG_variant_part.
14607         (handle_struct_member_die): New function, extracted from
14608         process_structure_scope.  Handle DW_TAG_variant.
14609         (process_structure_scope): Handle discriminated unions.  Call
14610         handle_struct_member_die.
14611
14612 2018-02-26  Tom Tromey  <tom@tromey.com>
14613
14614         * rust-lang.h (rust_last_path_segment): Declare.
14615         * rust-lang.c (rust_last_path_segment): Now public.  Change
14616         contract.
14617         (struct disr_info): Remove.
14618         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14619         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14620         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14621         (rust_enum_p, rust_enum_variant): New function.
14622         (rust_underscore_fields): Remove "offset" parameter.
14623         (rust_print_enum): New function.
14624         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14625         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14626         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14627         enums.
14628         (rust_internal_print_type): New function, from rust_print_type.
14629         Remove enum code.
14630         (rust_print_type): Call rust_internal_print_type.
14631         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14632         Update enum handling.
14633         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14634         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14635         (rust_union_quirks): New functions.
14636         (process_full_comp_unit, process_full_type_unit): Call
14637         rust_union_quirks.
14638         (process_structure_scope): Update rust_unions if necessary.
14639
14640 2018-02-26  Tom Tromey  <tom@tromey.com>
14641
14642         * value.h (value_union_variant): Declare.
14643         * valops.c (value_union_variant): New function.
14644         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14645         (struct discriminant_info): New.
14646         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14647         enumerator.
14648         (struct main_type) <flag_discriminated_union>: New field.
14649
14650 2018-02-26  Tom Tromey  <tom@tromey.com>
14651
14652         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14653         unittests/unpack-selftests.c.
14654         * unittests/unpack-selftests.c: New file.
14655         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14656
14657 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14658
14659         * dwarf2read.c (struct partial_die_info) <read>: New method.
14660         (read_partial_die): Remove the declaration.
14661         (load_partial_dies): Update.
14662         (partial_die_info::partial_die_info):
14663         (read_partial_die): Change it to partial_die_info::read.
14664
14665 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14666
14667         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14668         (fixup_partial_die): Remove declaration.
14669         (scan_partial_symbols): Update.
14670         (partial_die_parent_scope): Likewise.
14671         (partial_die_full_name): Likewise.
14672         (fixup_partial_die): Change it to partial_die_info::fixup.
14673
14674 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14675
14676         * dwarf2read.c (read_partial_die): Update the declaration.
14677         (load_partial_dies): Caller update.
14678         (read_partial_die): Remove one argument abbrev_len.
14679
14680 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14681
14682         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14683         assignment operator.
14684         (load_partial_dies): Use ctor and copy ctor.
14685         (read_partial_die): Update.
14686         (dwarf2_cu::find_partial_die): Use ctor.
14687
14688 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14689
14690         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14691         (find_partial_die_in_comp_unit): Change it to
14692         dwarf2_cu::find_partial_die.
14693         (find_partial_die): Update.
14694
14695 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14696
14697         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14698         is NULL.
14699
14700 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14701
14702         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14703
14704 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14705
14706         * arch/amd64.h: Use common/tdesc.h.
14707         * arch/i386.c: Likewise.
14708         * arch/i386.h: Likewise.
14709         * arch/tic6x.c: Likewise.
14710         * arch/tdesc.h: Move file from here...
14711         * common/tdesc.h: ...to here.
14712         * features/aarch64-core.c: Regenerate.
14713         * features/aarch64-fpu.c: Regenerate.
14714         * features/i386/32bit-avx.c: Regenerate.
14715         * features/i386/32bit-avx512.c: Regenerate.
14716         * features/i386/32bit-core.c: Regenerate.
14717         * features/i386/32bit-linux.c: Regenerate.
14718         * features/i386/32bit-mpx.c: Regenerate.
14719         * features/i386/32bit-pkeys.c: Regenerate.
14720         * features/i386/32bit-sse.c: Regenerate.
14721         * features/i386/64bit-avx.c: Regenerate.
14722         * features/i386/64bit-avx512.c: Regenerate.
14723         * features/i386/64bit-core.c: Regenerate.
14724         * features/i386/64bit-linux.c: Regenerate.
14725         * features/i386/64bit-mpx.c: Regenerate.
14726         * features/i386/64bit-pkeys.c: Regenerate.
14727         * features/i386/64bit-segments.c: Regenerate.
14728         * features/i386/64bit-sse.c: Regenerate.
14729         * features/i386/x32-core.c: Regenerate.
14730         * features/tic6x-c6xp.c: Regenerate.
14731         * features/tic6x-core.c: Regenerate.
14732         * features/tic6x-gp.c: Regenerate.
14733         * target-descriptions.c: Use common/tdesc.h.
14734         * target-descriptions.h: Likewise.
14735
14736 2018-02-24  Tom Tromey  <tom@tromey.com>
14737
14738         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14739         (try_thread_db_load_from_dir, thread_db_load_search): Use
14740         std::string.
14741         (info_auto_load_libthread_db_compare): Return bool.  Change
14742         argument types.
14743         (info_auto_load_libthread_db): Use std::vector, std::string.
14744         Remove cleanups.
14745
14746 2018-02-24  Tom Tromey  <tom@tromey.com>
14747
14748         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14749         std::string.
14750         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14751         std::string*.
14752         * gdbarch.c: Rebuild.
14753         * gdbarch.h: Rebuild.
14754         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14755         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14756         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14757         std::string*.
14758
14759 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14760
14761         * gdbtypes.h (sect_offset): Change type to uint64_t.
14762         (sect_offset_str): New function.
14763         * dwarf2read.c (create_addrmap_from_aranges): Use
14764         sect_offset_str.
14765         (error_check_comp_unit_head): Likewise.
14766         (create_debug_type_hash_table): Likewise.
14767         (read_cutu_die_from_dwo): Likewise.
14768         (init_cutu_and_read_dies): Likewise.
14769         (init_cutu_and_read_dies_no_follow): Likewise.
14770         (process_psymtab_comp_unit_reader): Likewise.
14771         (partial_die_parent_scope): Likewise.
14772         (peek_die_abbrev): Likewise.
14773         (process_queue): Likewise.
14774         (dwarf2_physname): Likewise.
14775         (read_namespace_alias): Likewise.
14776         (read_import_statement): Likewise.
14777         (create_dwo_cu_reader): Likewise.
14778         (create_cus_hash_table): Likewise.
14779         (lookup_dwo_cutu): Likewise.
14780         (inherit_abstract_dies): Likewise.
14781         (read_func_scope): Likewise.
14782         (read_call_site_scope): Likewise.
14783         (dwarf2_add_member_fn): Likewise.
14784         (read_common_block): Likewise.
14785         (read_module_type): Likewise.
14786         (read_typedef): Likewise.
14787         (read_subrange_type): Likewise.
14788         (load_partial_dies): Likewise.
14789         (read_partial_die): Likewise.
14790         (find_partial_die): Likewise.
14791         (read_str_index): Likewise.
14792         (dwarf2_string_attr): Likewise.
14793         (build_error_marker_type): Likewise.
14794         (lookup_die_type): Likewise.
14795         (dump_die_shallow): Likewise.
14796         (follow_die_ref): Likewise.
14797         (dwarf2_fetch_die_loc_sect_off): Likewise.
14798         (dwarf2_fetch_constant_bytes): Likewise.
14799         (follow_die_sig): Likewise.
14800         (get_signatured_type): Likewise.
14801         (get_DW_AT_signature_type): Likewise.
14802         (dwarf2_find_containing_comp_unit): Likewise.
14803         (set_die_type): Likewise.
14804
14805 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14806
14807         * arch/aarch64.c: Include "common-defs.h".
14808         * arch/amd64.c: Likewise.
14809         * arch/i386.c: Likewise.
14810
14811 2018-02-21  Tom Tromey  <tom@tromey.com>
14812
14813         * value.h: (extract_field_op): Update.
14814         * eval.c (extract_field_op): Return a const char *.
14815         * expression.h (parse_expression_for_completion): Update.
14816         * completer.c (complete_expression): Update.
14817         (add_struct_fields): Make fieldname const.
14818         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14819         (mark_completion_tag, parse_exp_in_context_1): Update.
14820         (parse_expression_for_completion): Change "name" to
14821         unique_xmalloc_ptr*.
14822
14823 2018-02-21  Tom Tromey  <tom@tromey.com>
14824
14825         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14826
14827 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14828
14829         * avr-tdep.c (avr_read_pc): Change parameter type to
14830         readable_regcache.
14831         * gdbarch.sh (read_pc): Likewise.
14832         * gdbarch.c: Re-generated.
14833         * gdbarch.h: Re-generated.
14834         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14835         readable_regcache.
14836         * ia64-tdep.c (ia64_read_pc): Likewise.
14837         * mips-tdep.c (mips_read_pc): Likewise.
14838         * spu-tdep.c (spu_read_pc): Likewise.
14839
14840 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14841
14842         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14843         * regcache-dump.c: New file.
14844         * regcache.c: Move register_dump to regcache-dump.c.
14845         (maintenance_print_registers): Likewise.
14846         (maintenance_print_raw_registers): Likewise.
14847         (maintenance_print_cooked_registers): Likewise.
14848         (maintenance_print_register_groups): Likewise.
14849         (maintenance_print_remote_registers): Likewise.
14850         (_initialize_regcache): Likewise.
14851         * regcache.h (register_dump): Moved from regcache.c.
14852
14853 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14854
14855         * regcache.c (regcache::regcache): Update.
14856         (regcache::invalidate): Move it to detached_regcache::invalidate.
14857         (get_thread_arch_aspace_regcache): Update.
14858         (regcache::raw_update): Update.
14859         (regcache::cooked_read): Remove some code.
14860         (regcache::cooked_read_value): Likewise.
14861         (regcache::raw_write): Remove assert on m_readonly_p.
14862         (regcache::raw_supply_integer): Move it to
14863         detached_regcache::raw_supply_integer.
14864         (regcache::raw_supply_zeroed): Likewise.
14865         * regcache.h (detached_regcache) <raw_supply_integer>: New
14866         declaration.
14867         <raw_supply_zeroed, invalidate>: Likewise.
14868         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14869         <invalidate>: Likewise.
14870         <m_readonly_p>: Removed.
14871
14872 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14873
14874         * infcmd.c (get_return_value): Let stop_regs point to
14875         get_current_regcache.
14876         * regcache.c (regcache::regcache): Remove.
14877         (register_dump_reg_buffer): New class.
14878         (regcache_print): Adjust.
14879         * regcache.h (regcache): Remove constructors.
14880
14881 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14882
14883         * regcache.c (class register_dump): New class.
14884         (register_dump_regcache, register_dump_none): New class.
14885         (register_dump_remote, register_dump_groups): New class.
14886         (regcache_print): Update.
14887         * regcache.h (regcache_dump_what): Move it to regcache.c.
14888         (regcache) <dump>: Remove.
14889
14890 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14891
14892         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14893          reg_buffer_rw *.
14894         (jit_unwind_reg_set_impl): Call raw_supply.
14895         (jit_frame_sniffer): Use reg_buffer_rw.
14896         * record-full.c (record_full_core_regbuf): Change its type.
14897         (record_full_core_open_1): Use reg_buffer_rw.
14898         (record_full_close): Likewise.
14899         (record_full_core_fetch_registers): Use regcache->raw_supply.
14900         (record_full_core_store_registers): Likewise.
14901         * regcache.c (regcache::get_register_status): Move it to
14902         reg_buffer.
14903         (regcache_raw_set_cached_value): Remove.
14904         (regcache::raw_set_cached_value): Remove.
14905         (regcache::raw_write): Call raw_supply.
14906         (regcache::raw_supply): Move it to reg_buffer_rw.
14907         * regcache.h (regcache_raw_set_cached_value): Remove.
14908         (reg_buffer_rw): New class.
14909
14910 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14911
14912         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14913         readonly_detached_regcache.
14914         (dummy_frame_prev_register): Use regcache->cooked_read.
14915         * frame.c (frame_save_as_regcache): Change return type.
14916         (frame_pop): Update.
14917         * frame.h (frame_save_as_regcache): Update declaration.
14918         * inferior.h (get_infcall_suspend_state_regcache): Update
14919         declaration.
14920         * infrun.c (infcall_suspend_state) <registers>: use
14921         readonly_detached_regcache.
14922         (save_infcall_suspend_state): Don't use regcache_dup.
14923         (get_infcall_suspend_state_regcache): Change return type.
14924         * linux-fork.c (struct fork_info) <savedregs>: Change to
14925         readonly_detached_regcache.
14926         <pc>: New field.
14927         (fork_save_infrun_state): Don't use regcache_dup.
14928         (info_checkpoints_command): Adjust.
14929         * mi/mi-main.c (register_changed_p): Update declaration.
14930         (mi_cmd_data_list_changed_registers): Use
14931         readonly_detached_regcache.
14932         (register_changed_p): Change parameter type to
14933         readonly_detached_regcache.
14934         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14935         readonly_detached_regcache.
14936         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14937         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14938         New.
14939         (regcache::save): Move it to reg_buffer.
14940         (regcache::restore): Change parameter type.
14941         (regcache_dup): Remove.
14942         * regcache.h (reg_buffer) <save>: New method.
14943         (readonly_detached_regcache): New class.
14944         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14945         readonly_detached_regcache.
14946         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14947
14948 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14949
14950         * frame.c (frame_save_as_regcache): Use regcache method save.
14951         (frame_pop): Use regcache method restore.
14952         * infrun.c (restore_infcall_suspend_state): Likewise.
14953         * linux-fork.c (fork_load_infrun_state): Likewise.
14954         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14955         save.
14956         * regcache.c (regcache_save): Remove.
14957         (regcache::restore): More asserts.
14958         (regcache_cpy): Remove.
14959         * regcache.h (regcache_save): Remove the declaration.
14960         (regcache::restore): Move from private to public.
14961         Remove the friend declaration of regcache_cpy.
14962         (regcache_cpy): Remove declaration.
14963
14964 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14965
14966         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14967         parameter type to 'readable_regcache *'.
14968         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14969         * arm-tdep.c (arm_neon_quad_read): Likewise.
14970         (arm_pseudo_read): Likewise.
14971         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14972         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14973         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14974         * gdbarch.c: Re-generated.
14975         * gdbarch.h: Re-generated.
14976         * gdbarch.sh (pseudo_register_read): Change parameter type to
14977         'readable_regcache *'.
14978         (pseudo_register_read_value): Likewise.
14979         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14980         (h8300_pseudo_register_read): Likewise.
14981         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14982         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14983         (i386_pseudo_register_read_into_value): Likewise.
14984         (i386_pseudo_register_read_value): Likewise.
14985         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14986         declaration.
14987         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14988         * m32c-tdep.c (m32c_raw_read): Likewise.
14989         (m32c_read_flg): Likewise.
14990         (m32c_banked_register): Likewise.
14991         (m32c_banked_read): Likewise.
14992         (m32c_sb_read): Likewise.
14993         (m32c_part_read): Likewise.
14994         (m32c_cat_read): Likewise.
14995         (m32c_r3r2r1r0_read): Likewise.
14996         (m32c_pseudo_register_read): Likewise.
14997         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14998         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14999         (mep_pseudo_cr64_read): Likewise.
15000         (mep_pseudo_register_read): Likewise.
15001         * mips-tdep.c (mips_pseudo_register_read): Likewise.
15002         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15003         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15004         * regcache.c (regcache::raw_read): Move it to readable_regcache.
15005         (regcache::cooked_read): Likewise.
15006         (regcache::cooked_read_value): Likewise.
15007         (regcache_cooked_read_signed):
15008         (regcache::cooked_read): Likewise.
15009         * regcache.h (readable_regcache): New class.
15010         (regcache): Inherit readable_regcache.  Move some methods to
15011         readable_regcache.
15012         * rl78-tdep.c (rl78_pseudo_register_read): Change
15013         parameter type to 'readable_regcache *'.
15014         * rs6000-tdep.c (do_regcache_raw_read): Remove.
15015         (e500_pseudo_register_read): Change parameter type to
15016         'readable_regcache *'.
15017         (dfp_pseudo_register_read): Likewise.
15018         (vsx_pseudo_register_read): Likewise.
15019         (efpr_pseudo_register_read): Likewise.
15020         * s390-tdep.c (s390_pseudo_register_read): Likewise.
15021         * sh-tdep.c (sh_pseudo_register_read): Likewise.
15022         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
15023         (sh64_pseudo_register_read): Likewise.
15024         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
15025         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15026         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
15027         (spu_pseudo_register_read): Likewise.
15028         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15029         (xtensa_pseudo_register_read): Likewise.
15030
15031 2018-02-21  Yao Qi  <yao.qi@linaro.org>
15032
15033         * regcache.c (regcache::regcache): Call reg_buffer ctor.
15034         (regcache::arch): Move it to reg_buffer::arch.
15035         (regcache::register_buffer): Likewise.
15036         (regcache::assert_regnum): Likewise.
15037         (regcache::num_raw_registers): Likewise.
15038         * regcache.h (reg_buffer): New class.
15039         (regcache): Inherit reg_buffer.
15040
15041 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
15042
15043         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
15044         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
15045
15046 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
15047
15048         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
15049
15050 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
15051
15052         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
15053         (SFILES): Remove common/*.c files.
15054         (COMMON_OBS): Remove some *.o files built from common/*.c files.
15055         * common/common.host: Add common reference.
15056         * configure.ac: Likewise.
15057         * configure: Regenerate.
15058
15059 2018-02-16  Yao Qi  <yao.qi@linaro.org>
15060
15061         * block.c (block_namespace_info): Inherit allocate_on_obstack.
15062         (block_initialize_namespace): Use new.
15063         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
15064         (dwarf2_free_objfile): Use delete.
15065         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
15066         (copy_type_recursive): Use new.
15067         * gdb_obstack.h (allocate_on_obstack): New.
15068
15069 2018-02-15  Yao Qi  <yao.qi@linaro.org>
15070
15071         PR gdb/22849
15072         * inferior.c (exit_inferior_1): Reset inf->control.
15073
15074 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
15075
15076         * ada-lang.c (ada_to_fixed_value_create): Delete advance
15077         declaration.
15078
15079 2018-02-14  Pedro Alves  <palves@redhat.com>
15080
15081         * frame-unwind.c (frame_unwind_try_unwinder): Always call
15082         frame_cleanup_after_sniffer on exception.
15083
15084 2018-02-14  Tom Tromey  <tom@tromey.com>
15085
15086         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15087         const.
15088         (solib_bfd_open): Make pathname const.
15089         * solib.c (solib_bfd_open): Make pathname const.
15090         * solib-spu.c (spu_bfd_fopen): Make name const.
15091         (spu_bfd_open): Make pathname const.
15092         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15093         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15094
15095 2018-02-14  Tom Tromey  <tom@tromey.com>
15096
15097         * symfile.c (symfile_bfd_open): Update.
15098         * source.h (openp, source_full_path_of, find_and_open_source):
15099         Change argument type to unique_xmalloc_ptr.
15100         * source.c (openp): Take a unique_xmalloc_ptr.
15101         (source_full_path_of, find_and_open_source): Likewise.
15102         (open_source_file, symtab_to_fullname): Update.
15103         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15104         unique_xmalloc_ptr.
15105         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15106         (exec_file_find): Update.
15107         * psymtab.c (psymtab_to_fullname): Update.
15108         * nto-tdep.h (nto_find_and_open_solib): Update.
15109         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15110         unique_xmalloc_ptr.
15111         * exec.c (exec_file_attach): Update.
15112         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15113         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15114
15115 2018-02-14  Tom Tromey  <tom@tromey.com>
15116
15117         * solib.c: Include source.h.
15118         * nto-tdep.c: Include source.h.
15119         * mi/mi-cmd-env.c: Include source.h.
15120         * infcmd.c: Include source.h.
15121         * exec.c: Include source.h.
15122         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15123         (add_path, directory_switch, source_path, init_source_path): Move
15124         declarations...
15125         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15126         (add_path, directory_switch, source_path, init_source_path):
15127         ...here.
15128
15129 2018-02-14  Tom Tromey  <tom@tromey.com>
15130
15131         * solist.h (exec_file_find, solib_find): Return
15132         unique_xmalloc_ptr.
15133         (solib_bfd_fopen): Take a const char *.
15134         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15135         (exec_file_find, solib_find): Likewise.
15136         (solib_bfd_fopen): Do not take ownership of "pathname".
15137         (solib_bfd_open): Use unique_xmalloc_ptr.
15138         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15139         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15140         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15141         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15142
15143 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15144
15145         * ada-lang.c (name_match_type_from_name): Remove reference to
15146         ada_name_for_lookup in function's documentation.
15147         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15148
15149 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15150
15151         * defs.h (enum openp_flags): New enum.
15152         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15153         Move to enum openp_flags.
15154         (openp_flags): New enum flags.
15155         (openp): Change parameter type to openp_flags.
15156         * source.c (openp): Change parameter type to openp_flags.
15157         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15158         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15159
15160 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15161
15162         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15163         per-command.
15164
15165 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15166
15167         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15168         into...
15169         (class dwarf2_queue_guard): ...the destructor of this new class.
15170         (dw2_do_instantiate_symtab): Create instance of the new class
15171         dwarf2_queue_guard, remove cleanup.
15172
15173 2018-02-09  Tom Tromey  <tom@tromey.com>
15174
15175         * source.c (find_source_lines): Don't reference past the end of
15176         the vector.
15177
15178 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15179
15180         * remote.c (remote_btrace_maybe_reopen): Change error message.
15181         * btrace.c (btrace_enable): Likewise.
15182         (parse_xml_btrace): Likewise.
15183         (parse_xml_btrace_conf): Likewise.
15184
15185 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15186
15187         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15188         (linux_enable_pt, linux_enable_bts): Call
15189         diagnose_perf_event_open_fail.
15190
15191 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15192
15193         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15194         Remove parameter and change return type.  Update callers.  Move it.
15195         (linux_enable_bts, linux_enable_pt): Improve error message.
15196         (linux_enable_pt): Remove zero buffer size check.
15197         (linux_enable_btrace): Improve error messages.  Remove NULL return
15198         check.
15199
15200 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15201
15202         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15203         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15204         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15205         (linux_supports_pt, linux_supports_btrace): Remove.
15206         (linux_enable_bts): Call cpu_supports_bts.
15207         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15208         * remote.c (remote_supports_btrace): Remove.
15209         (init_remote_ops): Remove remote_supports_btrace.
15210         * target-delegates.c: Regenerated.
15211         * target.c (target_supports_btrace): Remove.
15212         * target.h (target_ops) <to_supports_btrace>: Remove
15213         (target_supports_btrace): Remove.
15214         * x86-linux-nat.c (x86_linux_create_target): Remove
15215         linux_supports_btrace.
15216
15217 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15218
15219         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15220         btrace failed.
15221         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15222         exception and use message in own exception.
15223
15224 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15225
15226         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15227         (perf_event_pt_event_type): Use gdb_file_up.
15228         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15229         scoped_fd, and scoped_mmap.
15230
15231 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15232
15233         * common/scoped_mmap.h: New.
15234         * unittests/scoped_mmap-selftest.c: New.
15235         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15236         unittests/scoped_mmap-selftest.c.
15237
15238 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15239
15240         * common/scoped_fd.h: New.
15241         * unittests/scoped_fd-selftest.c: New.
15242         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15243         unittests/scoped_fd-selftest.c.
15244
15245 2018-02-09  Tom Tromey  <tom@tromey.com>
15246
15247         * auto-load.c (auto_load_section_scripts): Use
15248         gdb::unique_xmalloc_ptr.
15249
15250 2018-02-09  Tom Tromey  <tom@tromey.com>
15251
15252         * auto-load.c (execute_script_contents): Use std::string.
15253
15254 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15255
15256         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15257         Python function, rather than a new command.
15258
15259 2018-02-08  Tom Tromey  <tom@tromey.com>
15260
15261         * solib.c (solib_find_1): Use std::string.
15262         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15263
15264 2018-02-08  Tom Tromey  <tom@tromey.com>
15265
15266         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15267
15268 2018-02-08  Tom Tromey  <tom@tromey.com>
15269
15270         * source.c (find_source_lines): Use gdb::def_vector.
15271
15272 2018-02-08  Tom Tromey  <tom@tromey.com>
15273
15274         * macrocmd.c (struct temporary_macro_definition): New.
15275         (macro_define_command): Use temporary_macro_definition.  Remove
15276         cleanups.
15277         (free_macro_definition_ptr): Remove.
15278
15279 2018-02-08  Tom Tromey  <tom@tromey.com>
15280
15281         * macroexp.c (maybe_expand): Use std::string.
15282
15283 2018-02-08  Tom Tromey  <tom@tromey.com>
15284
15285         * macroexp.c (struct macro_buffer): Add initializers for some
15286         members.
15287         (init_buffer, init_shared_buffer, free_buffer)
15288         (free_buffer_return_text): Remove.
15289         (macro_buffer): New constructors.
15290         (~macro_buffer): New destructor.
15291         (macro_buffer::set_shared): New method.
15292         (macro_buffer::resize_buffer, macro_buffer::appendc)
15293         (macro_buffer::appendmem): Now methods, not free functions.
15294         (set_token, append_tokens_without_splicing, stringify)
15295         (macro_stringify): Update.
15296         (gather_arguments): Change return type.  Remove argc_p argument,
15297         add args_ptr argument.  Use std::vector.
15298         (substitute_args): Remove argc argument.  Accept std::vector.
15299         (expand): Update.  Use std::vector.
15300         (scan, macro_expand, macro_expand_next): Update.
15301
15302 2018-02-08  Tom Tromey  <tom@tromey.com>
15303
15304         * symtab.c (default_collect_symbol_completion_matches_break_on):
15305         Use unique_xmalloc_ptr.
15306         * macroscope.h: (sal_macro_scope, user_macro_scope)
15307         (default_macro_scope): Return unique_xmalloc_ptr.
15308         * macroscope.c (sal_macro_scope, user_macro_scope)
15309         (default_macro_scope): Return unique_xmalloc_ptr.
15310         * macroexp.h (macro_expand, macro_expand_once): Return
15311         unique_xmalloc_ptr.
15312         * macroexp.c (macro_expand, macro_expand_once): Return
15313         unique_xmalloc_ptr.
15314         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15315         (info_macro_command, info_macros_command): Use
15316         unique_xmalloc_ptr.
15317         * compile/compile-c-support.c (write_macro_definitions): Use
15318         unique_xmalloc_ptr.
15319         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15320
15321 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15322
15323         * value.c (value_static_field): Assign field type instead of
15324         containing type when returning an optimized out value.
15325
15326 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15327
15328         * ft32-tdep.c (ft32_read_pc): Remove.
15329         (ft32_write_pc): Remove.
15330         (ft32_gdbarch_init): Update.
15331         * m32r-tdep.c (m32r_read_pc): Remove.
15332         (m32r_gdbarch_init): Update.
15333         * mep-tdep.c (mep_read_pc): Remove.
15334         (mep_gdbarch_init): Update.
15335         * microblaze-tdep.c (microblaze_write_pc): Remove.
15336         (microblaze_gdbarch_init): Update.
15337         * mn10300-tdep.c (mn10300_read_pc): Remove.
15338         (mn10300_write_pc): Remove.
15339         (mn10300_gdbarch_init): Update.
15340         * moxie-tdep.c (moxie_read_pc): Remove.
15341         (moxie_write_pc): Remove.
15342         (moxie_gdbarch_init): Update.
15343
15344 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15345
15346         * expprint.c (print_subexp_standard): Handle
15347         OP_F77_UNDETERMINED_ARGLIST.
15348         (dump_subexp_body_standard): Likewise.
15349
15350 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15351
15352         * target-descriptions.c (tdesc_element_visitor) Add empty
15353         implementations.
15354         (tdesc_type): Move make_gdb_type from here.
15355         (tdesc_type_builtin): Likewise.
15356         (tdesc_type_vector): Likewise.
15357         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15358         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15359         (make_gdb_type_union): Likewise.
15360         (make_gdb_type_flags): Likewise.
15361         (make_gdb_type_enum): Likewise.
15362         (make_gdb_type): New function.
15363         (tdesc_register_type): Use static make_gdb_type.
15364
15365 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15366
15367         * infcmd.c (default_print_one_register_info): Align natural-format
15368         column values consistently one under another.
15369         (pad_to_column): New function.
15370
15371 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15372
15373         * dwarf2read.c (dwarf2_physname): Move commment.
15374
15375 2018-02-01  Leszek Swirski  <leszeks@google.com>
15376
15377         * varobj.c (varobj_formatted_print_options): Allow recursive
15378         pretty printing if pretty printing is enabled.
15379
15380 2018-02-01  Leszek Swirski  <leszeks@google.com>
15381
15382         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15383         names after a structop as a filename.
15384
15385 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15386
15387         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15388         (arm_record_coproc_data_proc): Likewise.
15389
15390 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15391
15392         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15393
15394 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15395
15396         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15397         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15398
15399 2018-01-31  Pedro Alves  <palves@redhat.com>
15400
15401         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15402         * inflow.c (child_terminal_save_inferior): Wrap reference to
15403         tcgetpgrp in HAVE_TERMIOS_H.
15404         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15405         _WIN32.
15406         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15407         always iterate over all inferiors.
15408         (gdbsim_cntrl_c): Adjust.
15409         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15410
15411 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15412
15413         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15414         index type is objfile-owned if the element type is as well.
15415
15416 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15417
15418         GDB 8.1 released.
15419
15420 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15421
15422         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15423         "features/s390x-linux64.c".
15424         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15425         s390_linux32 and s390x_linux64.
15426         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15427         default tdesc.
15428         * s390-tdep.c: Include "features/s390-linux32.c" and
15429         "features/s390x-linux64.c".
15430         (s390_tdesc_valid): Add check for tdesc_has_registers.
15431         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15432         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15433         tdesc_s390x_linux64.
15434         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15435         tdesc_s390x_linux64 to...
15436         * s390-tdep.h: ...here.
15437
15438 2018-01-30  Pedro Alves  <palves@redhat.com>
15439
15440         PR gdb/13211
15441         * config.in, configure: Regenerate.
15442         * configure.ac: Check for getpgid.
15443         * go32-nat.c (go32_pass_ctrlc): New.
15444         (go32_target): Install it.
15445         * inf-child.c (inf_child_target): Install
15446         child_terminal_save_inferior, child_pass_ctrlc and
15447         child_interrupt.
15448         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15449         (inf_ptrace_target): No longer install it.
15450         * infcmd.c (interrupt_target_1): Adjust.
15451         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15452         (child_interrupt): Declare.
15453         (inferior::terminal_state): New.
15454         * inflow.c (struct terminal_info): Update comments.
15455         (inferior_process_group): Delete.
15456         (terminal_is_ours): Delete.
15457         (gdb_tty_state): New.
15458         (child_terminal_init): Adjust.
15459         (is_gdb_terminal, sharing_input_terminal_1)
15460         (sharing_input_terminal): New functions.
15461         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15462         Set the process's actual process group in the foreground if
15463         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15464         mark terminal as the inferior's if not sharing GDB's terminal.
15465         Don't check attach_flag.
15466         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15467         pass down a target_terminal_state.
15468         (child_terminal_save_inferior): New, factored out from ...
15469         (child_terminal_ours_1): ... this.  Handle
15470         target_terminal_state::is_ours_for_output.
15471         (child_interrupt, child_pass_ctrlc): New.
15472         (inflow_inferior_exit): Clear the inferior's terminal_state.
15473         (copy_terminal_info): Copy the inferior's terminal state.
15474         (_initialize_inflow): Remove reference to terminal_is_ours.
15475         * inflow.h (inferior_process_group): Delete.
15476         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15477         * procfs.c (procfs_target): Don't install procfs_interrupt.
15478         (procfs_interrupt): Delete.
15479         * remote.c (remote_serial_quit_handler): Adjust.
15480         (remote_interrupt): Remove ptid parameter.  Adjust.
15481         * target-delegates.c: Regenerate.
15482         * target.c: Include "terminal.h".
15483         (target_terminal::terminal_state): Rename to ...
15484         (target_terminal::m_terminal_state): ... this.
15485         (target_terminal::init): Adjust.
15486         (target_terminal::inferior): Adjust to per-inferior
15487         terminal_state.
15488         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15489         (target_terminal::ours, target_terminal::ours_for_output): Use
15490         target_terminal_is_ours_kind.
15491         (target_interrupt): Remove ptid parameter.  Adjust.
15492         (default_target_pass_ctrlc): Adjust.
15493         * target.h (target_ops::to_terminal_save_inferior): New field.
15494         (target_ops::to_interrupt): Remove ptid_t parameter.
15495         (target_interrupt): Remove ptid_t parameter.  Update comment.
15496         (target_pass_ctrlc): Update comment.
15497         * target/target.h (target_terminal_state): New scoped enum,
15498         factored out of ...
15499         (target_terminal::terminal_state): ... here.
15500         (target_terminal::inferior): Update comments.
15501         (target_terminal::restore_inferior): New.
15502         (target_terminal::is_inferior, target_terminal::is_ours)
15503         (target_terminal::is_ours_for_output): Adjust.
15504         (target_terminal::scoped_restore_terminal_state): Adjust to
15505         rename, and call restore_inferior() instead of inferior().
15506         (target_terminal::scoped_restore_terminal_state::m_state): Change
15507         type.
15508         (target_terminal::terminal_state): Rename to ...
15509         (target_terminal::m_terminal_state): ... this and change type.
15510
15511 2018-01-30  Pedro Alves  <palves@redhat.com>
15512
15513         * linux-nat.c (wait_for_signal): New function.
15514         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15515         directly.
15516         (async_terminal_is_ours)
15517         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15518         (linux_nat_add_target): Don't override
15519         to_terminal_inferior/to_terminal_ours.
15520
15521 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15522
15523         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15524
15525 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15526
15527         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15528         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15529         dwarf2_per_objfile_free here.
15530         (dwarf2_per_objfile_free): Remove.
15531         (_initialize_dwarf2_read): Don't register
15532         dwarf2_per_objfile_free as a registry cleanup.
15533
15534 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15535
15536         Avoid compilation errors in MinGW native builds
15537
15538         The error is triggered by including python-internal.h, and the
15539         error message is:
15540
15541              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15542                       from build-gnulib/import/math.h:27,
15543                       from d:/usr/Python26/include/pyport.h:235,
15544                       from d:/usr/Python26/include/Python.h:58,
15545                       from python/python-internal.h:94,
15546                       from python/py-arch.c:24:
15547              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15548         using ::hypot;
15549                 ^~~~~
15550
15551         This happens because Python headers define 'hypot' to expand t
15552         '_hypot' in the Windows builds.
15553         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15554         'hypoth'.  This avoids a compilation error.
15555
15556 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15557
15558         * MAINTAINERS (Write After Approval): Fix ordering.
15559
15560 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15561
15562         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15563
15564 2018-01-26  Alan Modra  <amodra@gmail.com>
15565
15566         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15567         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15568         Remove nop.  Make const.  Comment.
15569         (powerpc32_plt_stub_so_2): New.
15570         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15571         Correct count.  Update uses.
15572         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15573         Move common code reading PLT entry word.  Correct
15574         powerpc32_plt_stub PLT address calculation.
15575         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15576         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15577         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15578         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15579         (ppc64_standard_linkage8): Likewise.
15580         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15581         Correct insns description.
15582         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15583
15584 2018-01-24  Pedro Alves  <palves@redhat.com>
15585
15586         GCC PR libstdc++/83906
15587         * gdbtypes.c (operator==(const dynamic_prop &,
15588         const dynamic_prop &)): New.
15589         (operator==(const range_bounds &, const range_bounds &)): New.
15590         (check_types_equal): Use them instead of memcmp.
15591         * gdbtypes.h (operator==(const dynamic_prop &,
15592         const dynamic_prop &)): Declare.
15593         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15594         (operator==(const range_bounds &, const range_bounds &)): Declare.
15595         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15596
15597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15598
15599         * s390-linux-tdep.c (s390_record_address_mask)
15600         (s390_record_calc_disp_common, s390_record_calc_disp)
15601         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15602         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15603         (s390_process_record): Move to s390-tdep.c.
15604         (s390_linux_init_abi_any): Adjust.
15605         * s390-tdep.c (s390_record_address_mask)
15606         (s390_record_calc_disp_common, s390_record_calc_disp)
15607         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15608         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15609         (s390_process_record): Moved from s390-linux-tdep.c
15610         (s390_gdbarch_init): Adjust.
15611
15612 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15613
15614         * s390-linux-nat.c (s390-tdep.h): New include.
15615         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15616         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15617         (ALLDEPFILES): Add s390-tdep.c.
15618         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15619         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15620         * s390-tdep.h: ...this.  New file.
15621         * s390-linux-tdep.c (s390-tdep.h): New include.
15622         (_initialize_s390_tdep): Rename to...
15623         (_initialize_s390_linux_tdep): ...this and adjust.
15624         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15625         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15626         s390-tdep.h.
15627         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15628         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15629         (s390_is_partial_instruction, s390_software_single_step)
15630         (is_non_branch_ril, s390_displaced_step_copy_insn)
15631         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15632         (s390_prologue_data, s390_addr, s390_store, s390_load)
15633         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15634         (s390_register_call_saved, s390_guess_tracepoint_registers)
15635         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15636         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15637         (s390_pseudo_register_name, s390_pseudo_register_type)
15638         (s390_pseudo_register_read, s390_pseudo_register_write)
15639         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15640         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15641         (s390_addr_bits_remove, s390_address_class_type_flags)
15642         (s390_address_class_type_flags_to_name)
15643         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15644         (s390_function_arg_float, s390_function_arg_vector)
15645         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15646         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15647         (s390_frame_align, s390_register_return_value, s390_return_value)
15648         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15649         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15650         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15651         (s390_trad_frame_prev_register, s390_unwind_cache)
15652         (s390_prologue_frame_unwind_cache)
15653         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15654         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15655         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15656         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15657         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15658         (s390_frame_base_address, s390_local_base_address)
15659         (s390_frame_base, s390_gcc_target_options)
15660         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15661         (s390_validate_reg_range, s390_tdesc_valid)
15662         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15663         * s390-tdep.c: ...this.  New file.
15664
15665 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15666
15667         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15668         (s390_process_record, s390_gdbarch_tdep_alloc)
15669         (s390_linux_init_abi_any): Use/set new hook.
15670
15671 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15672
15673         * s390-linux-tdep.c (osabi.h): New include.
15674         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15675         (s390_linux_init_abi_any): New functions.
15676         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15677
15678 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15679
15680         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15681         tdesc_has_registers check
15682
15683 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15684
15685         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15686         (s390_validate_reg_range): New macro.
15687         (s390_gdbarch_init): Adjust.
15688
15689 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15690
15691         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15692         (s390_gdbarch_tdep_alloc): Adjust.
15693         (s390_gdbarch_init): Adjust.
15694
15695 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15696
15697         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15698         <have_tdb>: Change type to bool.
15699         (s390_gdbarch_tdep_alloc): Adjust.
15700         (s390_gdbarch_init): Adjust.
15701
15702 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15703
15704         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15705         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15706         (s390_gdbarch_tdep_alloc): New function.
15707         (s390_gdbarch_init): Allocate tdep at start and use its fields
15708         instead of separate variables.
15709
15710 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15711
15712         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15713         when looking for cached gdbarch and add comment for remaining.
15714
15715 2018-01-22  Pedro Alves  <palves@redhat.com>
15716             Sergio Durigan Junior  <sergiodj@redhat.com>
15717
15718         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15719         case.
15720
15721 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15722
15723         * MAINTAINERS: Update my company e-mail address.
15724
15725 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15726
15727         * regcache.c (cooked_write_test): New function.
15728         (_initialize_regcache): Register the test.
15729
15730 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15731
15732         * ia64-tdep.c (ia64_pseudo_register_read): Call
15733         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15734         * m32c-tdep.c (m32c_cat_read): Likewise.
15735         (m32c_r3r2r1r0_read): Likewise.
15736         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15737         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15738
15739 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15740
15741         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15742         method raw_read instead of regcache_raw_read.
15743         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15744         * arm-tdep.c (arm_neon_quad_read): Likewise.
15745         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15746         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15747         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15748         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15749         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15750         (i386_pseudo_register_read_into_value): Likewise.
15751         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15752         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15753         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15754         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15755         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15756         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15757         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15758         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15759         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15760
15761 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15762
15763         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15764         * configure.tgt: Remove target mt.
15765         * mt-tdep.c: Remove.
15766         * regcache.c (cooked_read_test): Remove the check for mt.
15767
15768 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15769
15770         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15771         instead of gdbarch_pseudo_register_read_value.
15772
15773 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15774
15775         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15776         language is Ada.
15777
15778 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15779
15780         * linespec.c (create_sals_line_offset): Remove code that preserved
15781         the symtab_and_line's line number.
15782
15783 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15784
15785         * varobj.c (varobj_create): Don't set valid_block when creating a
15786         floating varobj.
15787
15788 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15789
15790         * varobj.c (varobj_create): Remove out of date comment.
15791
15792 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15793
15794         PR mi/20395
15795         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15796         updating innermost block.
15797         * parse.c (innermost_block_tracker::update): Take extra type
15798         parameter, and check types match before updating innermost block.
15799         (write_dollar_variable): Update innermost block for registers.
15800         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15801         (innermost_block_tracker::innermost_block_tracker): Initialise
15802         m_types member.
15803         (innermost_block_tracker::reset): Take type parameter.
15804         (innermost_block_tracker::update): Take type parameter, and pass
15805         type through as needed.
15806         (innermost_block_tracker::m_types): New member.
15807         * varobj.c (varobj_create): Pass type when reseting innermost
15808         block.
15809
15810 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15811
15812         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15813         * ada-lang.c (resolve_subexp): Likewise.
15814         * breakpoint.c (set_breakpoint_condition) Likewise.
15815         (watch_command_1) Likewise.
15816         * c-exp.y (variable): Likewise.
15817         * d-exp.y (PrimaryExpression): Likewise.
15818         * f-exp.y (variable): Likewise.
15819         * go-exp.y (variable): Likewise.
15820         * m2-exp.y (variable): Likewise.
15821         * objfiles.c (objfile::~objfile): Likewise.
15822         * p-exp.y (variable): Likewise.
15823         * parse.c (innermost_block): Change type.
15824         * parser-defs.h (class innermost_block_tracker): New.
15825         (innermost_block): Change to innermost_block_tracker.
15826         * printcmd.c (display_command): Switch to innermost_block API.
15827         (do_one_display): Likewise.
15828         * rust-exp.y (do_one_display): Likewise.
15829         * symfile.c (clear_symtab_users): Likewise.
15830         * varobj.c (varobj_create): Switch to innermost_block API, replace
15831         use of innermost_block with block stored on varobj object.
15832
15833 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15834
15835         * expression.h (innermost_block): Remove declaration.
15836         * varobj.c: Add 'parser-defs.h' include.
15837
15838 2018-01-19  Tom Tromey  <tom@tromey.com>
15839
15840         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15841         symbols in the static and global blocks.
15842
15843 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15844
15845         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15846         gdb_ptrace.h, and move including gdb_wait.h ...
15847         * nat/linux-ptrace.h: ... to here.
15848
15849 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15850
15851         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15852         inf_ptrace_detach_success.
15853         (inf_ptrace_detach_success): Add inferior parameter, use it
15854         instead of inferior_ptid, pass it to detach_inferior.
15855         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15856         parameter.
15857         * inferior.c (detach_inferior): Add overload that takes an
15858         inferior object.
15859         * inferior.h (detach_inferior): Likewise.
15860         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15861         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15862         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15863
15864 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15865
15866         * target.h (struct target_ops) <to_detach>: Add inferior
15867         parameter.
15868         (target_detach): Likewise.
15869         * target.c (dispose_inferior): Pass inferior down.
15870         (target_detach): Pass inferior down.  Assert that it is equal to
15871         the current inferior.
15872         * aix-thread.c (aix_thread_detach): Pass inferior down.
15873         * corefile.c (core_file_command): Pass current_inferior() down.
15874         * corelow.c (core_detach): Add inferior parameter.
15875         * darwin-nat.c (darwin_detach): Likewise.
15876         * gnu-nat.c (gnu_detach): Likewise.
15877         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15878         * infcmd.c (detach_command): Pass current_inferior() down to
15879         target_detach.
15880         * infrun.c (follow_fork_inferior): Pass parent_inf to
15881         target_detach.
15882         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15883         target_detach.
15884         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15885         * linux-thread-db.c (thread_db_detach): Likewise.
15886         * nto-procfs.c (procfs_detach): Likewise.
15887         * procfs.c (procfs_detach): Likewise.
15888         * record.c (record_detach): Likewise.
15889         * record.h (struct inferior): Forward-declare.
15890         (record_detach): Add inferior parameter.
15891         * remote-sim.c (gdbsim_detach): Likewise.
15892         * remote.c (remote_detach_1): Likewise.
15893         (remote_detach): Likewise.
15894         (extended_remote_detach): Likewise.
15895         * sol-thread.c (sol_thread_detach): Likewise.
15896         * target-debug.h (target_debug_print_inferior_p): New macro.
15897         * target-delegates.c: Re-generate.
15898         * top.c (kill_or_detach): Pass inferior down to target_detach.
15899         * windows-nat.c (windows_detach): Add inferior parameter.
15900
15901 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15902
15903         * target.h (struct target_ops) <to_detach>: Remove args
15904         parameter.
15905         (target_detach): Likewise.
15906         * target.c (dispose_inferior): Adjust.
15907         (target_detach): Remove args parameter, adjust.
15908         * aix-thread.c (aix_thread_detach): Adjust.
15909         * corefile.c (core_file_command): Adjust.
15910         * corelow.c (core_detach): Adjust.
15911         * darwin-nat.c (darwin_detach): Adjust.
15912         * gnu-nat.c (gnu_detach): Adjust.
15913         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15914         * infcmd.c (detach_command): Adjust
15915         * infrun.c (follow_fork_inferior): Adjust.
15916         (handle_vfork_child_exec_or_exit): Adjust.
15917         * linux-fork.c (linux_fork_detach): Remove args parameter.
15918         * linux-fork.h (linux_fork_detach): Likewise.
15919         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15920         * linux-thread-db.c (thread_db_detach): Likewise.
15921         * nto-procfs.c (procfs_detach): Likewise.
15922         * procfs.c (procfs_detach): Likewise.
15923         (do_detach): Remove signo parameter.
15924         * record.c (record_detach): Remove args parameter.
15925         * record.h (record_detach): Likewise.
15926         * remote-sim.c (gdbsim_detach): Likewise.
15927         * remote.c (remote_detach_1): Likewise.
15928         (remote_detach): Likewise.
15929         (extended_remote_detach): Likewise.
15930         * sol-thread.c (sol_thread_detach): Likewise.
15931         * target-delegates.c: Re-generate.
15932         * top.c (struct qt_args) <args>: Remove field.
15933         (kill_or_detach): Don't pass args.
15934         (quit_force): Don't set args.
15935         * windows-nat.c (windows_detach): Remove args parameter.
15936
15937 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15938
15939         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15940         (arm_linux_init_abi): Install it.
15941
15942 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15943
15944         * osabi.c (gdb_osabi_names): Extend the regexp for
15945         arm-linux-gnueabihf.
15946
15947 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15948
15949         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15950         m_abbrevs.
15951         (abbrev_table::add_abbrev): Update.
15952         (abbrev_table::lookup_abbrev): Update.
15953
15954 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15955
15956         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15957
15958 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15959
15960         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15961         to "std::string".
15962
15963 2018-01-17  Tom Tromey  <tom@tromey.com>
15964
15965         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15966
15967 2018-01-17  Tom Tromey  <tom@tromey.com>
15968
15969         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15970         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15971         (create_array_type_with_stride): Update.
15972         * dwarf2read.c (set_die_type): Update.
15973
15974 2018-01-17  Tom Tromey  <tom@tromey.com>
15975
15976         * dwarf2read.c (delayed_method_info): Remove typedef.
15977         (dwarf2_cu::method_info): Now a std::vector.
15978         (add_to_method_list): Update.
15979         (free_delayed_list): Remove.
15980         (compute_delayed_physnames): Update.
15981         (process_full_comp_unit, process_full_type_unit): Clear the method
15982         list.  Remove cleanups.
15983         (psymtab_include_file_name): Add name_holder parameter.  Use
15984         unique_xmalloc_ptr.
15985         (dwarf_decode_lines): Update.
15986
15987 2018-01-17  Tom Tromey  <tom@tromey.com>
15988             Simon Marchi  <simon.marchi@ericsson.com>
15989
15990         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15991         (dwarf2_per_objfile::free_cached_comp_units)
15992         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15993         (init_cutu_and_read_dies_no_follow): Update.
15994         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15995         (dwarf2_cu::~dwarf2_cu): New.
15996         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15997         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15998
15999 2018-01-17  Tom Tromey  <tom@tromey.com>
16000             Simon Marchi  <simon.marchi@ericsson.com>
16001
16002         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
16003         (struct die_reader_specs) <abbrev_table>: New member.
16004         (struct abbrev_table): Add constructor.
16005         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
16006         <abbrev_obstack>: Now an auto_obstack.
16007         (abbrev_table_up): New typedef.
16008         (init_cu_die_reader): Add abbrev_table parameter.
16009         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
16010         Add result_dwo_abbrev_table.
16011         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
16012         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
16013         Update.
16014         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
16015         parameter.
16016         (skip_children): Update.
16017         (abbrev_table::alloc_abbrev): Rename from
16018         abbrev_table_alloc_abbrev.
16019         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
16020         (abbrev_table::lookup_abbrev): Rename from
16021         abbrev_table_lookup_abbrev.
16022         (abbrev_table_read_table): Return abbrev_table_up.
16023         (abbrev_table_free, abbrev_table_free_cleanup)
16024         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
16025         (load_partial_dies): Update.
16026
16027 2018-01-17  Tom Tromey  <tom@tromey.com>
16028
16029         * dwarf2read.c (dwarf2_compute_name): Update comment.
16030         (read_func_scope, read_variable): Update.
16031         (new_symbol): Remove.
16032         (new_symbol_full): Rename to new_symbol.
16033
16034 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
16035
16036         PR gdb/16577
16037         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
16038         a warning instead of throwing an error, set section size to 0 and return
16039         NULL.
16040         * gdb_bfd.h (gdb_bfd_map_section): Update description.
16041
16042 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16043
16044         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
16045         std::string.
16046         (linux_ptrace_attach_fail_reason_string): Likewise.
16047         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
16048         Likewise.
16049         (linux_ptrace_attach_fail_reason_string): Likewise.
16050         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
16051
16052 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
16053
16054         * linux-nat.c (linux_nat_attach): Remove xstrdup.
16055
16056 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
16057
16058         PR gdb/21559
16059         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
16060         checking for fs_base/gs_base fields in struct user_regs_struct.
16061         * configure: Regenerate.
16062
16063 2018-01-17  Yao Qi  <yao.qi@linaro.org>
16064
16065         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
16066         function.
16067         (aarch64_linux_init_abi): Install it to gdbarch hook
16068         gcc_target_options.
16069
16070 2018-01-15  Pedro Alves  <palves@redhat.com>
16071
16072         * common/signals-state-save-restore.c
16073         (save_original_signals_state): Fix typos.
16074
16075 2017-01-12  Tom Tromey  <tom@tromey.com>
16076             Sergio Durigan Junior  <sergiodj@redhat.com>
16077
16078         * Makefile.in (install-only): Install gdb-add-index.
16079
16080 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
16081
16082         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
16083
16084 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
16085
16086         * infrun.c (keep_going_pass_signal): Clear step-over info when
16087         insert_breakpoints fails.
16088
16089 2018-01-11  Pedro Alves  <palves@redhat.com>
16090
16091         PR gdb/22583
16092         * infrun.c (resume): Rename to ...
16093         (resume_1): ... this.
16094         (resume): Reimplement as wrapper around resume_1.
16095
16096 2018-01-11  Pedro Alves  <palves@redhat.com>
16097
16098         PR remote/22597
16099         * remote.c (remote_parse_stop_reply): Default to the last-set
16100         general thread instead of to 'magic_null_ptid'.
16101
16102 2018-01-10  Pedro Alves  <palves@redhat.com>
16103
16104         * language.h (language_get_symbol_name_matcher): Rename ...
16105         (get_symbol_name_matcher): ... this.
16106         * language.c (language_get_symbol_name_matcher): Ditto.
16107         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16108         callers adjusted.
16109
16110 2018-01-10  Pedro Alves  <palves@redhat.com>
16111
16112         PR gdb/22670
16113         * dwarf2read.c
16114         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16115         Adjust to use language_get_symbol_name_matcher instead of
16116         language_defn::la_get_symbol_name_matcher.
16117         * language.c (language_get_symbol_name_matcher): If in Ada mode
16118         and the lookup name is a verbatim match, return Ada's matcher.
16119         * language.h (language_get_symbol_name_matcher): Adjust comment.
16120         (ada_lookup_name_info::verbatim_p):: New method.
16121
16122 2018-01-10  Pedro Alves  <palves@redhat.com>
16123
16124         PR gdb/22670
16125         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16126         minsym's language is language_auto or language_cplus, pass down
16127         language_ada instead.
16128         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16129
16130 2018-01-10  Pedro Alves  <palves@redhat.com>
16131
16132         PR gdb/22670
16133         * minsyms.c (linkage_name_str): New function.
16134         (iterate_over_minimal_symbols): Use it.
16135
16136 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16137
16138         * NEWS: Document that 'info proc' now works on FreeBSD.
16139
16140 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16141
16142         * configure.ac: Check for kinfo_getfile in libutil.
16143         * configure: Regenerate.
16144         * config.in: Regenerate.
16145         * fbsd-nat.c: Include "fbsd-tdep.h".
16146         (fbsd_fetch_cmdline): New.
16147         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16148         rather than calling error.
16149         (fbsd_info_proc): New.
16150         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16151         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16152         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16153
16154 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16155
16156         * fbsd-nat.c (struct free_deleter): Remove.
16157         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16158
16159 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16160
16161         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16162         NULL for an empty pathname.
16163
16164 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16165
16166         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16167         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16168         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16169         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16170         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16171         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16172         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16173         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16174         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16175         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16176         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16177         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16178         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16179         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16180         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16181
16182 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16183
16184         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16185         (gnu_xfer_auxv): New function.
16186         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16187         TARGET_OBJECT_AUXV.
16188
16189 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16190             Simon Marchi  <simon.marchi@ericsson.com>
16191
16192         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16193         common/selftest.c.
16194         (COMMON_OBS): Remove selftest.o.
16195         * configure.ac: Append selftest-arch.c and common/selftest.c to
16196         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16197         * configure: Re-generated.
16198         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16199         GDB_SELF_TEST.
16200         (maintenance_info_selftests): Likewise.
16201
16202 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16203
16204         * ada-valprint.c (val_print_packed_array_elements): Use
16205         proper number of elements when printing an array indexed
16206         by an enumeration type.
16207
16208 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16209
16210         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16211         (dw2_get_file_names_reader): Adjust.
16212         (lookup_dwo_signatured_type): Adjust.
16213         (lookup_dwp_signatured_type): Adjust.
16214         (lookup_signatured_type): Adjust.
16215         (create_type_unit_group): Adjust.
16216         (get_type_unit_group): Adjust.
16217         (process_psymtab_comp_unit_reader): Adjust.
16218         (build_type_psymtabs_reader): Adjust.
16219         (scan_partial_symbols): Adjust.
16220         (add_partial_symbol): Adjust.
16221         (add_partial_subprogram): Adjust.
16222         (peek_die_abbrev): Adjust.
16223         (fixup_go_packaging): Adjust.
16224         (process_imported_unit_die): Adjust.
16225         (dwarf2_compute_name): Adjust.
16226         (dwarf2_physname): Adjust.
16227         (read_import_statement): Adjust.
16228         (handle_DW_AT_stmt_list): Adjust.
16229         (read_file_scope): Adjust.
16230         (read_func_scope): Adjust.
16231         (read_lexical_block_scope): Adjust.
16232         (read_call_site_scope): Adjust.
16233         (read_variable): Adjust.
16234         (dwarf2_rnglists_process): Adjust.
16235         (dwarf2_ranges_process): Adjust.
16236         (dwarf2_ranges_read): Adjust.
16237         (dwarf2_get_pc_bounds): Adjust.
16238         (dwarf2_record_block_ranges): Adjust.
16239         (dwarf2_add_field): Adjust.
16240         (dwarf2_add_member_fn): Adjust.
16241         (read_structure_type): Adjust.
16242         (process_structure_scope): Adjust.
16243         (read_enumeration_type): Adjust.
16244         (read_array_type): Adjust.
16245         (mark_common_block_symbol_computed): Adjust.
16246         (read_common_block): Adjust.
16247         (read_namespace_type): Adjust.
16248         (read_namespace): Adjust.
16249         (read_module_type): Adjust.
16250         (read_tag_pointer_type): Adjust.
16251         (read_tag_ptr_to_member_type): Adjust.
16252         (read_tag_string_type): Adjust.
16253         (read_subroutine_type): Adjust.
16254         (read_typedef): Adjust.
16255         (read_base_type): Adjust.
16256         (attr_to_dynamic_prop): Adjust.
16257         (read_subrange_type): Adjust.
16258         (read_unspecified_type): Adjust.
16259         (dwarf2_read_abbrevs): Adjust.
16260         (load_partial_dies): Adjust.
16261         (read_partial_die): Adjust.
16262         (find_partial_die): Adjust.
16263         (guess_partial_die_structure_name): Adjust.
16264         (fixup_partial_die): Adjust.
16265         (read_attribute_value): Adjust.
16266         (read_addr_index): Adjust.
16267         (read_addr_index_from_leb128): Adjust.
16268         (read_str_index): Adjust.
16269         (dwarf2_string_attr): Adjust.
16270         (get_debug_line_section): Adjust.
16271         (dwarf_decode_line_header): Adjust.
16272         (lnp_state_machine::check_line_address): Adjust.
16273         (dwarf_decode_lines_1): Adjust.
16274         (dwarf_decode_lines): Adjust.
16275         (dwarf2_start_symtab): Adjust.
16276         (var_decode_location): Adjust.
16277         (new_symbol_full): Adjust.
16278         (dwarf2_const_value_data): Adjust.
16279         (dwarf2_const_value_attr): Adjust.
16280         (dwarf2_const_value): Adjust.
16281         (die_type): Adjust.
16282         (die_containing_type): Adjust.
16283         (build_error_marker_type): Adjust.
16284         (lookup_die_type): Adjust.
16285         (guess_full_die_structure_name): Adjust.
16286         (anonymous_struct_prefix): Adjust.
16287         (determine_prefix): Adjust.
16288         (dwarf2_name): Adjust.
16289         (follow_die_ref_or_sig): Adjust.
16290         (follow_die_offset): Adjust.
16291         (follow_die_ref): Adjust.
16292         (follow_die_sig_1): Adjust.
16293         (follow_die_sig): Adjust.
16294         (get_signatured_type): Adjust.
16295         (get_DW_AT_signature_type): Adjust.
16296         (decode_locdesc): Adjust.
16297         (dwarf_decode_macros): Adjust.
16298         (cu_debug_loc_section): Adjust.
16299         (fill_in_loclist_baton): Adjust.
16300         (dwarf2_symbol_mark_computed): Adjust.
16301         (init_one_comp_unit): Don't assign
16302         dwarf2_cu::dwarf2_per_objfile.
16303         (set_die_type): Adjust.
16304
16305 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16306
16307         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16308         <dwarf2_per_objfile>: New field.
16309         (dwarf2_per_objfile): Remove global.
16310         (get_dwarf2_per_objfile): New function.
16311         (set_dwarf2_per_objfile): New function.
16312         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16313         dwarf2_per_objfile.
16314         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16315         (read_abbrev_offset): Likewise.
16316         (read_indirect_string): Likewise.
16317         (read_indirect_line_string): Likewise.
16318         (read_indirect_string_at_offset): Likewise.
16319         (read_indirect_string_from_dwz): Likewise.
16320         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16321         dwarf2_per_objfile.
16322         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16323         (create_all_comp_units): Change objfile parameter to
16324         dwarf2_per_objfile.
16325         (create_all_type_units): Likewise.
16326         (process_queue): Add dwarf2_per_objfile parameter.
16327         (read_and_check_comp_unit_head): Likewise.
16328         (lookup_dwo_unit_in_dwp): Likewise.
16329         (get_dwp_file): Likewise.
16330         (process_cu_includes): Likewise.
16331         (struct free_dwo_file_cleanup_data): New struct.
16332         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16333         set_dwarf2_per_objfile.
16334         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16335         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16336         context, adjust calls.
16337         (dw2_instantiate_symtab): Likewise.
16338         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16339         (dw2_get_cu): Likewise.
16340         (create_cu_from_index_list): Change objfile parameter to
16341         dwarf2_per_objfile.
16342         (create_cus_from_index_list): Get dwarf2_per_objfile from
16343         context, adjust calls.
16344         (create_cus_from_index): Likewise.
16345         (create_signatured_type_table_from_index): Change objfile
16346         parameter to dwarf2_per_objfile.
16347         (create_signatured_type_table_from_debug_names): Change objfile
16348         parameter to dwarf2_per_objfile.
16349         (create_addrmap_from_index): Likewise.
16350         (create_addrmap_from_aranges): Likewise.
16351         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16352         (dw2_setup): Remove.
16353         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16354         context.
16355         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16356         get_dwarf2_per_objfile.
16357         (dw2_forget_cached_source_info): Likewise.
16358         (dw2_map_symtabs_matching_filename): Likewise.
16359         (struct dw2_symtab_iterator) <index>: Remove.
16360         <dwarf2_per_objfile>: New field.
16361         (dw2_symtab_iter_init): Replace index parameter with
16362         dwarf2_per_objfile.
16363         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16364         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16365         (dw2_print_stats): Likewise.
16366         (dw2_dump): Likewise.
16367         (dw2_expand_symtabs_for_function): Likewise.
16368         (dw2_expand_all_symtabs): Likewise.
16369         (dw2_expand_symtabs_with_fullname): Likewise.
16370         (dw2_expand_marked_cus): Replace index and objfile parameters
16371         with dwarf2_per_objfile.
16372         (dw_expand_symtabs_matching_file_matcher): Add
16373         dwarf2_per_objfile parameter and adjust calls.
16374         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16375         adjust calls.
16376         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16377         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16378         adjust calls.
16379         (create_cus_from_debug_names_list): Replace objfile parameter
16380         with dwarf2_per_objfile and adjust calls.
16381         (create_cus_from_debug_names): Likewise.
16382         (dwarf2_read_debug_names): Likewise.
16383         (mapped_debug_names::namei_to_name): Adjust call.
16384         (dw2_debug_names_iterator::next): Likewise.
16385         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16386         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16387         (dw2_debug_names_dump): Likewise.
16388         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16389         (dw2_debug_names_expand_symtabs_matching): Likewise.
16390         (dwarf2_initialize_objfile): Likewise.
16391         (dwarf2_build_psymtabs): Likewise.
16392         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16393         this_cu.
16394         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16395         (read_and_check_comp_unit_head): Likewise.
16396         (read_abbrev_offset): Likewise.
16397         (create_debug_type_hash_table): Likewise.
16398         (create_debug_types_hash_table): Likewise.
16399         (create_all_type_units): Replace objfile parameter with
16400         dwarf2_per_objfile.
16401         (add_type_unit): Add dwarf2_per_objfile parameter.
16402         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16403         with dwarf2_per_objfile.
16404         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16405         (lookup_dwp_signatured_type): Likewise.
16406         (lookup_signatured_type): Likewise.
16407         (read_cutu_die_from_dwo): Likewise.
16408         (init_tu_and_read_dwo_dies): Likewise.
16409         (init_cutu_and_read_dies): Likewise.
16410         (init_cutu_and_read_dies_no_follow): Likewise.
16411         (allocate_type_unit_groups_table): Add objfile parameter.
16412         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16413         (get_type_unit_group): Likewise.
16414         (process_psymtab_comp_unit): Update call.
16415         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16416         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16417         (print_tu_stats): Likewise.
16418         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16419         in void* parameter.
16420         (build_type_psymtabs): Change objfile parameter to
16421         dwarf2_per_objfile.
16422         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16423         passed in void* parameter.
16424         (process_skeletonless_type_units): Change objfile parameter to
16425         dwarf2_per_objfile.
16426         (set_partial_user): Likewise.
16427         (dwarf2_build_psymtabs_hard): Likewise.
16428         (read_comp_units_from_section): Likewise.
16429         (create_all_comp_units): Likewise.
16430         (scan_partial_symbols): Update calls.
16431         (add_partial_symbol): Likewise.
16432         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16433         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16434         (process_queue): Add dwarf2_per_objfile parameter.
16435         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16436         (compute_compunit_symtab_includes): Likewise.
16437         (process_cu_includes): Add dwarf2_per_objfile parameter.
16438         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16439         (process_full_type_unit): Likewise.
16440         (process_imported_unit_die): Update call.
16441         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16442         (read_file_scope): Likewise.
16443         (allocate_dwo_file_hash_table): Add objfile parameter.
16444         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16445         (create_cus_hash_table): Likewise.
16446         (create_dwp_hash_table): Likewise.
16447         (create_dwo_unit_in_dwp_v1): Likewise.
16448         (create_dwp_v2_section): Likewise.
16449         (create_dwo_unit_in_dwp_v2): Likewise.
16450         (lookup_dwo_unit_in_dwp): Likewise.
16451         (try_open_dwop_file): Likewise.
16452         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16453         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16454         cleanup to include a reference to dwarf2_per_objfile.
16455         (open_dwp_file): Add dwarf2_per_objfile parameter.
16456         (open_and_init_dwp_file): Likewise.
16457         (get_dwp_file): Likewise.
16458         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16459         (queue_and_load_all_dwo_tus): Update call.
16460         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16461         data.
16462         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16463         (dwarf2_ranges_process): Likewise.
16464         (dwarf2_get_pc_bounds): Likewise.
16465         (mark_common_block_symbol_computed): Likewise.
16466         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16467         (dwarf2_read_abbrevs): Update call.
16468         (read_partial_die): Use dwarf2_per_objfile from cu.
16469         (find_partial_die): Likewise.
16470         (fixup_partial_die): Likewise.
16471         (read_attribute_value): Likewise.
16472         (read_indirect_string_at_offset_from): Add objfile parameter.
16473         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16474         parameter.
16475         (read_indirect_string_from_dwz): Add objfile parameter.
16476         (read_indirect_string): Add objfile parameter.
16477         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16478         (read_addr_index): Use dwarf2_per_objfile from cu.
16479         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16480         call dw2_setup.
16481         (read_str_index): Use dwarf2_per_objfile from cu.
16482         (get_debug_line_section): Likewise.
16483         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16484         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16485         (new_symbol_full): Use dwarf2_per_objfile from cu.
16486         (build_error_marker_type): Likewise.
16487         (lookup_die_type): Likewise.
16488         (determine_prefix): Likewise.
16489         (follow_die_offset): Likewise.
16490         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16491         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16492         (dwarf2_fetch_die_type_sect_off): Likewise.
16493         (dwarf2_get_die_type): Likewise.
16494         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16495         (get_signatured_type): Likewise.
16496         (get_DW_AT_signature_type): Likewise.
16497         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16498         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16499         (cu_debug_loc_section): Likewise.
16500         (fill_in_loclist_baton): Likewise.
16501         (dwarf2_symbol_mark_computed): Likewise.
16502         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16503         dwarf2_per_objfile.
16504         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16505         parameter.
16506         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16507         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16508         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16509         (set_die_type): Use dwarf2_free_objfile from cu.
16510         (get_die_type_at_offset): Likewise.
16511         (dwarf2_per_objfile_free): Don't assign global variable.
16512         (debug_names) <constructor>: Add dwarf2_per_objfile
16513         parameter, update m_debugstrlookup construction.
16514         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16515         parameter.
16516         <m_dwarf2_per_objfile>: New field.
16517         <lookup>: Use m_dwarf2_per_objfile.
16518         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16519         (psyms_seen_size): Likewise.
16520         (write_gdbindex): Replace objfile parameter with
16521         dwarf2_per_objfile.
16522         (write_debug_names): Likewise.
16523         (write_psymtabs_to_index): Likewise.
16524         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16525         calls.
16526
16527 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16528
16529         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16530         <dwarf2_per_objfile>: New field.
16531         (struct dwarf2_per_cu_data) <objfile>: Remove.
16532         <dwarf2_per_objfile>: New field.
16533         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16534         of objfile.
16535         (create_signatured_type_table_from_index): Likewise.
16536         (create_debug_type_hash_table): Likewise.
16537         (fill_in_sig_entry_from_dwo_entry): Likewise.
16538         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16539         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16540         objfile.
16541         (create_partial_symtab): Access objfile through
16542         dwarf2_per_objfile.
16543         (process_psymtab_comp_unit_reader): Likewise.
16544         (read_comp_units_from_section): Likewise.
16545         (scan_partial_symbols): Likewise.
16546         (add_partial_symbol): Likewise.
16547         (add_partial_subprogram): Likewise.
16548         (peek_die_abbrev): Likewise.
16549         (fixup_go_packaging): Likewise.
16550         (process_full_comp_unit): Likewise.
16551         (process_full_type_unit): Likewise.
16552         (process_imported_unit_die): Likewise.
16553         (dwarf2_compute_name): Likewise.
16554         (dwarf2_physname): Likewise.
16555         (read_import_statement): Likewise.
16556         (create_cus_hash_table): Assign dwarf2_physname instead of
16557         objfile.
16558         (read_func_scope): Access objfile through dwarf2_per_objfile.
16559         (read_lexical_block_scope): Likewise.
16560         (read_call_site_scope): Likewise.
16561         (read_variable): Likewise.
16562         (dwarf2_rnglists_process): Likewise.
16563         (dwarf2_ranges_process): Likewise.
16564         (dwarf2_ranges_read): Likewise.
16565         (dwarf2_record_block_ranges): Likewise.
16566         (dwarf2_add_field): Likewise.
16567         (dwarf2_add_member_fn): Likewise.
16568         (read_structure_type): Likewise.
16569         (process_structure_scope): Likewise.
16570         (read_enumeration_type): Likewise.
16571         (read_array_type): Likewise.
16572         (read_common_block): Likewise.
16573         (read_namespace_type): Likewise.
16574         (read_namespace): Likewise.
16575         (read_module_type): Likewise.
16576         (read_tag_pointer_type): Likewise.
16577         (read_tag_ptr_to_member_type): Likewise.
16578         (read_tag_string_type): Likewise.
16579         (read_subroutine_type): Likewise.
16580         (read_typedef): Likewise.
16581         (read_base_type): Likewise.
16582         (attr_to_dynamic_prop): Likewise.
16583         (read_subrange_type): Likewise.
16584         (read_unspecified_type): Likewise.
16585         (load_partial_dies): Likewise.
16586         (read_partial_die): Likewise.
16587         (find_partial_die): Likewise.
16588         (guess_partial_die_structure_name): Likewise.
16589         (fixup_partial_die): Likewise.
16590         (read_attribute_value): Likewise.
16591         (read_addr_index_from_leb128): Likewise.
16592         (dwarf2_read_addr_index): Likewise.
16593         (dwarf2_string_attr): Likewise.
16594         (lnp_state_machine::check_line_address): Likewise.
16595         (dwarf_decode_lines_1): Likewise.
16596         (dwarf_decode_lines): Likewise.
16597         (dwarf2_start_symtab): Likewise.
16598         (var_decode_location): Likewise.
16599         (new_symbol_full): Likewise.
16600         (dwarf2_const_value_data): Likewise.
16601         (dwarf2_const_value_attr): Likewise.
16602         (dwarf2_const_value): Likewise.
16603         (die_type): Likewise.
16604         (die_containing_type): Likewise.
16605         (lookup_die_type): Likewise.
16606         (guess_full_die_structure_name): Likewise.
16607         (anonymous_struct_prefix): Likewise.
16608         (dwarf2_name): Likewise.
16609         (follow_die_ref_or_sig): Likewise.
16610         (follow_die_offset): Likewise.
16611         (follow_die_ref): Likewise.
16612         (dwarf2_fetch_die_loc_sect_off): Likewise.
16613         (dwarf2_fetch_constant_bytes): Likewise.
16614         (dwarf2_fetch_die_type_sect_off): Likewise.
16615         (dwarf2_get_die_type): Likewise.
16616         (follow_die_sig): Likewise.
16617         (decode_locdesc): Likewise.
16618         (dwarf2_per_cu_objfile): Likewise.
16619         (dwarf2_per_cu_text_offset): Likewise.
16620         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16621         objfile.
16622         (set_die_type): Access objfile through
16623         dwarf2_per_objfile.
16624
16625 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16626
16627         * valprint.c (converted_character_d): Remove typedef.
16628         (DEF_VEC_O (converted_character_d)): Remove.
16629         (count_next_character): Use std::vector.
16630         (print_converted_chars_to_obstack): Likewise.
16631         (generic_printstr): Likewise.
16632
16633 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16634
16635         * xml-support.h (struct gdb_xml_value): Add constructor.
16636         <value>: Change type to unique_xmalloc_ptr.
16637         (gdb_xml_value_s): Remove typedef.
16638         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16639         (gdb_xml_element_start_handler): Change parameter type to
16640         std::vector.
16641         (xml_find_attribute): Likewise.
16642         * xml-support.c (xml_find_attribute): Change parameter type to
16643         std::vector and adjust.
16644         (gdb_xml_values_cleanup): Remove.
16645         (gdb_xml_parser::start_element): Adjust to std::vector.
16646         (xinclude_start_include): Change paraeter type to std::vector
16647         and adjust.
16648         * btrace.c (check_xml_btrace_version): Likewise.
16649         (parse_xml_btrace_block): Likewise.
16650         (parse_xml_btrace_pt_config_cpu): Likewise.
16651         (parse_xml_btrace_pt): Likewise.
16652         (parse_xml_btrace_conf_bts): Likewise.
16653         (parse_xml_btrace_conf_pt): Likewise.
16654         * memory-map.c (memory_map_start_memory): Likewise.
16655         (memory_map_start_property): Likewise.
16656         * osdata.c (osdata_start_osdata): Likewise.
16657         (osdata_start_item): Likewise.
16658         (osdata_start_column): Likewise.
16659         * remote.c (start_thread): Likewise.
16660         * solib-aix.c (library_list_start_library): Likewise.
16661         (library_list_start_list): Likewise.
16662         * solib-svr4.c (library_list_start_library): Likewise.
16663         (svr4_library_list_start_list): Likewise.
16664         * solib-target.c (library_list_start_segment): Likewise.
16665         (library_list_start_section): Likewise.
16666         (library_list_start_library): Likewise.
16667         (library_list_start_list): Likewise.
16668         * tracepoint.c (traceframe_info_start_memory): Likewise.
16669         (traceframe_info_start_tvar): Likewise.
16670         * xml-syscall.c (syscall_start_syscall): Likewise.
16671         * xml-tdesc.c (tdesc_start_target): Likewise.
16672         (tdesc_start_feature): Likewise.
16673         (tdesc_start_reg): Likewise.
16674         (tdesc_start_union): Likewise.
16675         (tdesc_start_struct): Likewise.
16676         (tdesc_start_flags): Likewise.
16677         (tdesc_start_enum): Likewise.
16678         (tdesc_start_field): Likewise.
16679         (tdesc_start_enum_value): Likewise.
16680         (tdesc_start_vector): Likewise.
16681
16682 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16683
16684         * extension.h (struct xmethod_worker) <clone>: Remove.
16685         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16686         Remove.
16687         (python_xmethod_worker::clone): Remove.
16688         * valops.c (find_overload_match): Use std::move instead of
16689         clone.
16690
16691 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16692
16693         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16694         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16695         <free_xmethod_worker_data>: Remove.
16696         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16697         <get_xmethod_arg_types>: Remove.
16698         <get_xmethod_result_type>: Remove.
16699         <invoke_xmethod>: Remove.
16700         * extension.c (new_xmethod_worker): Remove.
16701         (clone_xmethod_worker): Remove.
16702         (get_matching_xmethod_workers): Return void, pass std::vector by
16703         pointer.
16704         (get_xmethod_arg_types): Rename to...
16705         (xmethod_worker::get_arg_types): ... this, and adjust.
16706         (get_xmethod_result_type): Rename to...
16707         (xmethod_worker::get_result_type): ... this, and adjust.
16708         (invoke_xmethod): Remove.
16709         (free_xmethod_worker): Remove.
16710         (free_xmethod_worker_vec): Remove.
16711         * extension.h (enum ext_lang_rc): Move here from
16712         extension-priv.h.
16713         (struct xmethod_worker): Add constructor and destructor.
16714         <data>: Remove.
16715         <value>: Remove.
16716         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16717         virtual pure methods.
16718         <get_arg_types, get_result_type>: New methods.
16719         (xmethod_worker_ptr): Remove typedef.
16720         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16721         (xmethod_worker_vec): Remove typedef.
16722         (xmethod_worker_up): New typedef.
16723         (invoke_xmethod): Remove.
16724         (clone_xmethod_worker): Remove.
16725         (free_xmethod_worker): Remove.
16726         (free_xmethod_worker_vec): Remove.
16727         (get_xmethod_arg_types): Remove.
16728         (get_xmethod_result_type): Remove.
16729         * valops.c (find_method_list): Use std::vector, don't use
16730         intermediate vector.
16731         (value_find_oload_method_list): Use std::vector.
16732         (find_overload_match): Use std::vector.
16733         (find_oload_champ): Use std::vector.
16734         * value.c (value_free): Use operator delete.
16735         (value_of_xmethod): Rename to...
16736         (value_from_xmethod): ... this.  Don't assign
16737         xmethod_worker::value, take rvalue-reference.
16738         (result_type_of_xmethod): Adjust.
16739         (call_xmethod): Adjust.
16740         * value.h: Include extension.h.
16741         (struct xmethod_worker): Don't forward-declare.
16742         (value_of_xmethod): Rename to...
16743         (value_from_xmethod): ... this, take rvalue-reference.
16744         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16745         (struct python_xmethod_worker): ... this, add constructor and
16746         destructor.
16747         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16748         (gdbpy_free_xmethod_worker_data): Rename to...
16749         (python_xmethod_worker::~python_xmethod_worker): ... this and
16750         adjust.
16751         (gdbpy_clone_xmethod_worker_data): Rename to...
16752         (python_xmethod_worker::clone): ... this and adjust.
16753         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16754         temporary vector.
16755         (gdbpy_get_xmethod_arg_types): Rename to...
16756         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16757         (gdbpy_get_xmethod_result_type): Rename to...
16758         (python_xmethod_worker::do_get_result_type): ... this and
16759         adjust.
16760         (gdbpy_invoke_xmethod): Rename to...
16761         (python_xmethod_worker::invoke): ... this and adjust.
16762         (new_python_xmethod_worker): Rename to...
16763         (python_xmethod_worker::python_xmethod_worker): ... this and
16764         adjust.
16765         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16766         Remove.
16767         (gdbpy_free_xmethod_worker_data): Remove.
16768         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16769         (gdbpy_get_xmethod_arg_types): Remove.
16770         (gdbpy_get_xmethod_result_type): Remove.
16771         (gdbpy_invoke_xmethod): Remove.
16772         * python/python.c (python_extension_ops): Remove obsolete
16773         callbacks.
16774
16775 2018-01-05  Pedro Alves  <palves@redhat.com>
16776
16777         PR gdb/18653
16778         * common/signals-state-save-restore.c
16779         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16780         find a custom handler preinstalled, instead of internal erroring.
16781         But only warn if !quiet.
16782         * common/signals-state-save-restore.h
16783         (save_original_signals_state): New parameter 'quiet'.
16784         * main.c (captured_main_1): Move save_original_signals_state call
16785         after option handling, and pass QUIET.
16786
16787 2018-01-05  Pedro Alves  <palves@redhat.com>
16788
16789         * spu-tdep.c (spu_catch_start): Pass
16790         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16791
16792 2018-01-05  Pedro Alves  <palves@redhat.com>
16793
16794         PR gdb/22670
16795         * ada-lang.c (literal_symbol_name_matcher): New function.
16796         (ada_get_symbol_name_matcher): Use it for
16797         symbol_name_match_type::SEARCH_NAME.
16798         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16799         it down instead of assuming symbol_name_match_type::FULL.
16800         * block.h (block_lookup_symbol): New parameter 'match_type'.
16801         * c-valprint.c (print_unpacked_pointer): Use
16802         lookup_symbol_search_name instead of lookup_symbol.
16803         * compile/compile-object-load.c (get_out_value_type): Pass down
16804         symbol_name_match_type::SEARCH_NAME.
16805         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16806         symbol_name_match_type::FULL.
16807         * cp-support.c (cp_get_symbol_name_matcher): Handle
16808         symbol_name_match_type::SEARCH_NAME.
16809         * infrun.c (insert_exception_resume_breakpoint): Use
16810         lookup_symbol_search_name.
16811         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16812         * psymtab.c (maintenance_check_psymtabs): Use
16813         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16814         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16815         SYMBOL_SEARCH_NAME.
16816         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16817         if symbol_name_match_type::SEARCH_NAME.
16818         (lookup_symbol_in_language): Pass down
16819         symbol_name_match_type::FULL.
16820         (lookup_symbol_search_name): New.
16821         (lookup_language_this): Pass down
16822         symbol_name_match_type::SEARCH_NAME.
16823         (lookup_symbol_aux, lookup_local_symbol): New parameter
16824         'match_type'.  Pass it down.
16825         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16826         (lookup_symbol_search_name): New declaration.
16827         (lookup_symbol_in_block): New 'match_type' parameter.
16828
16829 2018-01-05  Pedro Alves  <palves@redhat.com>
16830
16831         PR gdb/22670
16832         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16833         ada_lookup_symbol.
16834         (ada_lookup_symbol): Reimplement in terms of
16835         ada_lookup_symbol_list, bits factored out from
16836         ada_lookup_encoded_symbol.
16837
16838 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16839
16840         * ada-exp.y (write_object_renaming): When subscripting an array
16841         using a symbol as the index, pass the block in call to
16842         ada_lookup_encoded_symbol when looking that symbol up.
16843
16844 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16845
16846         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16847         TYPE_INDEX_TYPE.
16848
16849 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16850
16851         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16852         the case where VALUE_LVAL (val0) is not lval_memory.
16853
16854 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16855
16856         * ada-valprint.c (print_optional_low_bound): Handle
16857         character-indexed array printing like boolean-indexed array
16858         printing.
16859
16860 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16861
16862         * NEWS: Create a new section for the next release branch.
16863         Rename the section of the current branch, now that it has
16864         been cut.
16865
16866 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16867
16868         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16869         * version.in: Bump version to 8.1.50.DATE-git.
16870
16871 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16872
16873         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16874         Add field.
16875         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16876         Add field.
16877         (default_exception_support_info) <catch_handlers_sym>: Add field.
16878         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16879         (ada_exception_name_addr_1): Add "catch handlers" handling.
16880         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16881         Update all callers.
16882         (create_excep_cond_exprs) <ex>: Add parameter.
16883         (re_set_exception): Update create_excep_cond_exprs call.
16884         (print_it_exception, print_one_exception, print_mention_exception)
16885         (print_recreate_exception): Add "catch handler" handling.
16886         (allocate_location_catch_handlers, re_set_catch_handlers)
16887         (check_status_catch_handlers, print_it_catch_handlers)
16888         (print_one_catch_handlers, print_mention_catch_handlers)
16889         (print_recreate_catch_handlers): New function.
16890         (catch_handlers_breakpoint_ops): New variable.
16891         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16892         Add parameter.  Add "catch handler" handling.
16893         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16894         Add "catch handler" handling.
16895         (ada_exception_catchpoint_cond_string): Add "catch handler"
16896         handling.
16897         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16898         call.
16899         (catch_ada_handlers_command): New function.
16900         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16901         operations structure.
16902         (_initialize_ada_language): Add "catch handlers" command entry.
16903         * NEWS: Document "catch handlers" feature.
16904
16905 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16906
16907         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16908         account when creating the array type of the slice.
16909         (ada_value_slice): Likewise.
16910
16911 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16912
16913         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16914         New enum value.
16915         (create_array_type_with_stride): Add byte_stride_prop parameter.
16916         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16917         New parameter.  Update all callers in this file.
16918         (array_type_has_dynamic_stride): New function.
16919         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16920         of arrays with dynamic byte strides.
16921         * dwarf2read.c (read_array_type): Add support for dynamic
16922         DW_AT_byte_stride attributes.
16923
16924 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16925
16926         * dwarf2read.c (read_unspecified_type): Treat
16927         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16928
16929 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16930
16931         Update copyright year range in all GDB files.
16932
16933 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16934
16935         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16936         and gdb/testsuite/gdb.base/step-line.c.
16937
16938 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16939
16940         * copyright.py (main): Dump the contents of
16941         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16942         even if BY_HAND is empty.
16943
16944 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16945
16946         * top.c (print_gdb_version): Update Copyright year in version
16947         message.
16948
16949 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16950
16951         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16952
16953 For older changes see ChangeLog-2017.
16954 \f
16955 Local Variables:
16956 mode: change-log
16957 left-margin: 8
16958 fill-column: 74
16959 version-control: never
16960 coding: utf-8
16961 End: