gdb/riscv: Add float status registers to save and restore reggroups
[external/binutils.git] / gdb / ChangeLog
1 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * riscv-tdep.c (riscv_register_reggroup_p): Save and restore fcsr,
4         fflags, and frm registers.
5
6 2018-12-22  Andrew Burgess  <andrew.burgess@embecosm.com>
7
8         * riscv-tdep.c (riscv_dwarf_reg_to_regnum): New function.
9         (riscv_gdbarch_init): Register new function with gdbarch.
10         * riscv-tdep.h: New enum to define RISC-V DWARF register numbers.
11
12 2018-12-21  Simon Marchi  <simon.marchi@ericsson.com>
13
14         * minsyms.c (mst_str): New.
15         (minimal_symbol_reader::record_full): Add debug output.
16
17 2018-12-21  John Baldwin  <jhb@FreeBSD.org>
18
19         * fbsd-nat.c (fbsd_handle_debug_trap): Require pl.pl_flags to
20         equal PL_FLAG_SI.
21         (fbsd_nat_target::stopped_by_sw_breakpoint): Likewise.
22
23 2018-12-21  Paul Marechal  <paul.marechal@ericsson.com>
24
25         PR gdb/23974
26         * target.c (target_read_stralloc): Check for empty vector.
27
28 2018-12-21  Дилян Палаузов  <dilyan.palauzov@aegee.org>
29
30         * top.c (print_gdb_configuration): Print "--without-python"
31         if GDB was configured without Python.
32
33 2018-12-21  Andrew Burgess  <andrew.burgess@embecosm.com>
34
35         * riscv-tdep.c (riscv_scan_prologue): Use plongest to format
36         a signed offset as a string.
37
38 2018-12-21  Dave Murphy  <davem@devkitpro.org>
39
40         * dtrace-probe.c (dtrace_static_probe_ops): Explicit zero
41         initialise.
42         * probe.c (any_static_probe_ops): Ditto.
43         * record-btrace.c (record_btrace_thread_observer_token): Ditto.
44         * stap-probe.c (stap_static_probe_ops): Ditto.
45         * tui/tui-hooks.c (tui_observers_token): Ditto.
46         * unittests/observable-selftests.c (token1, token2, token3): Ditto.
47
48 2018-12-19  Andrew Burgess  <andrew.burgess@embecosm.com>
49
50         * gdb/dummy-frame.c (default_dummy_id): Defined new function.
51         * gdb/dummy-frame.h (default_dummy_id): Declare new function.
52         * gdb/frame-unwind.c (default_unwind_pc): Define new function.
53         (default_unwind_sp): Define new function.
54         * gdb/frame-unwind.h (default_unwind_pc): Declare new function.
55         (default_unwind_sp): Declare new function.
56         * gdb/frame.c (frame_unwind_pc): Assume gdbarch_unwind_pc is
57         available.
58         (get_frame_sp): Assume that gdbarch_unwind_sp is available.
59         * gdb/gdbarch.c: Regenerate.
60         * gdb/gdbarch.h: Regenerate.
61         * gdb/gdbarch.sh: Update definition of dummy_id, unwind_pc, and
62         unwind_sp.  Add additional header files to be included in
63         generated file.
64
65 2018-12-19  Dimitar Dimitrov  <dimitar@dinux.eu>
66
67         * nat/linux-ptrace.c (linux_ptrace_test_ret_to_nx): Remove
68         sp clobbers.
69
70 2018-12-17  Andrew Burgess  <andrew.burgess@embecosm.com>
71
72         * dwarf2read.c (struct dwarf2_cu): Convert the fields 'mark',
73         'has_loclist', 'checked_producer', 'producer_is_gxx_lt_4_6',
74         'producer_is_gcc_lt_4_3', 'producer_is_icc_lt_14',
75         'processing_has_namespace_info' from unsigned int to bool.  Update
76         comments.
77         (producer_is_icc_lt_14): Update return type.
78         (producer_is_gcc_lt_4_3): Likewise.
79         (producer_is_gxx_lt_4_6): Likewise.
80         (process_die): Write true instead of 1 into predicate fields.
81         (dwarf2_start_symtab): Likewise.
82         (var_decode_location): Likewise.
83         (dwarf2_mark_helper): Likewise.
84         (dwarf2_mark): Likewise.
85         (dwarf2_clear_marks): Write false instead of 0 into predicate
86         field.
87         (dwarf2_cu::dwarf2_cu): Initialise predicate fields to false, not
88         0.
89
90 2018-12-17  Szabolcs Nagy  <szabolcs.nagy@arm.com>
91
92         * nat/aarch64-sve-linux-ptrace.h: Include signal.h instead of
93         asm/sigcontext.h.
94
95 2018-12-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
96
97         * nat/linux-ptrace.c (kill_child): Fix ARI warning by removing
98         warning trailing new line.
99
100 2018-12-16  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
101
102         * nat/linux-ptrace.c (kill_child): New function.
103         (linux_ptrace_test_ret_to_nx): Use kill_child instead of local code.
104         Add a call to kill_child in case of early return after fork.
105         (linux_check_ptrace_features): Use kill_child instead of local code.
106         (linux_test_for_tracefork): Likewise.
107
108 2018-12-14  Tom Tromey  <tom@tromey.com>
109
110         * Makefile.in: Remove "alloca" comment.
111         (INFOFILES): Remove.
112         (local-maintainer-clean): Don't use INFOFILES.
113
114 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
115
116         * syscalls/update-freebsd.sh: New file.
117         * syscalls/freebsd.xml: Regenerate.
118
119 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
120
121         * NEWS: Add entry documenting system call aliases.
122         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
123         to get_syscalls_by_name.
124         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
125         * gdbarch.h: Regenerate.
126         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
127         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
128         from get_syscall_by_name.  Now accepts a pointer to a vector of
129         integers and returns a bool.
130         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
131         (syscall_create_syscall_desc): Add alias parameter and pass it to
132         syscall_desc constructor.
133         (syscall_start_syscall): Handle alias attribute.
134         (syscall_attr): Add alias attribute.
135         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
136         Now accepts a pointer to a vector of integers and returns a
137         bool.  Add syscalls whose alias or name matches the requested
138         name.
139         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
140         accepts a pointer to a vector of integers and returns a bool.
141         * xml-syscall.h (get_syscalls_by_name): Likewise.
142
143 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
144
145         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
146         to get_syscalls_by_group.
147         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
148         false.
149         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
150         numbers to an existing vector of integers and return a bool.
151         (get_syscalls_by_group): Accept pointer to vector of integers
152         and change return type to bool.
153         * xml-syscall.h (get_syscalls_by_group): Likewise.
154
155 2018-12-13  Jim Wilson  <jimw@sifive.com>
156
157         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
158         comment for SD field, and correct xlen calculation.  For MISA, add
159         comment for MXL field, add call to register_size, and correct base
160         calculation.
161
162 2018-12-13  Stafford Horne  <shorne@gmail.com>
163
164         * NEWS(New targets): Add or1k*-*-linux*.
165
166 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
167
168         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
169         declare on one line to fix ARI warning.
170
171 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
172
173         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
174         (infcall_suspend_state::registers): New.
175         (infcall_suspend_state::restore): New.
176         (infcall_suspend_state::thread_suspend): Rename to...
177         (infcall_suspend_state::m_thread_suspend): ...this.
178         (infcall_suspend_state::registers): Rename to...
179         (infcall_suspend_state::m_registers): ...this.
180         (infcall_suspend_state::siginfo_gdbarch): Rename to...
181         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
182         (infcall_suspend_state::siginfo_data): Rename to...
183         (infcall_suspend_state::m_siginfo_data): ...this.
184         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
185         constructor.
186         (restore_infcall_suspend_state): Rewrite to use
187         infcall_suspend_state::restore method.
188         (get_infcall_suspend_state_regcache): Use
189         infcall_suspend_state::registers method.
190
191 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
192
193         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
194         arguments are passed in integer registers.
195         (riscv_call_arg_complex_float): Likewise.
196
197 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
198
199         * nat/linux-osdata.c (common_getter): New function.
200         (struct osdata_type): Change getter to take_snapshot.
201         Add LONGEST len_avail and struct buffer buffer.
202         Change all elements in the initializer.
203         Add an element for the list of types.
204         (linux_xfer_osdata_info_os_types): New function.
205         (linux_common_xfer_osdata): Use common_getter for the list of types.
206         Replace getter call by common_getter.
207         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
208         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
209         (linux_xfer_osdata_fds): Likewise.
210         (linux_xfer_osdata_modules): Likewise.
211         (linux_xfer_osdata_msg): Likewise.
212         (linux_xfer_osdata_processes): Likewise.
213         (linux_xfer_osdata_processgroups): Likewise.
214         (linux_xfer_osdata_sem): Likewise.
215         (linux_xfer_osdata_shm): Likewise.
216         (linux_xfer_osdata_isockets): Likewise.
217         (linux_xfer_osdata_threads): Likewise.
218
219 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
220
221         * nat/linux-osdata.c: Removed various trailing spaces.
222
223 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
224
225         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
226         leading whitespace before #include line.
227
228 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
229             Дилян Палаузов  <dilyan.palauzov@aegee.org>
230
231         PR gdb/23950
232         * configure.ac: Search for tgetent in libtinfow.
233         * configure: Re-generate.
234
235 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
236
237         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
238         (thread_db_err_str): Forward declare.
239         (delete_thread_db_info): Call td_ta_delete_p if available.
240         (try_thread_db_load_1): Acquire td_ta_delete address.
241         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
242
243 2018-12-08  Pedro Alves  <palves@redhat.com>
244
245         * source.c (forward_search_command): Rename to ...
246         (search_command_helper): ... this.  Add 'forward' parameter.
247         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
248         buffer.  Handle backward searches too.
249         (forward_search_command, reverse_search_command): Reimplement by
250         calling search_command_helper.
251
252 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
253
254         * .dir-locals.el: Copy most of the settings from c-mode over to
255         c++-mode.
256
257 2018-12-08  Stafford Horne  <shorne@gmail.com>
258
259         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
260         * configure.tgt: Add or1k*-*-linux*.
261         * or1k-linux-tdep.c: New file.
262         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
263
264 2018-12-07  Pedro Alves  <palves@redhat.com>
265
266         * dwarf2read.c (get_gdb_index_contents_from_section): Use
267         gdb::make_array_view.
268
269 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
270
271         * language.c (_initialize_language): Fix leak by assigning
272         a static string to language.  Same for range and case_sensitive,
273         even if no leak is detected for these variables.
274
275 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
276
277         * configure: Re-generate.
278         * configure.ac: Use separate sed expressions to escape variables
279         in auto-load directories.
280
281 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
282
283         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
284         (riscv_find_default_target_description): Use new function to
285         extract feature from gdbarch_info.
286         (riscv_gdbarch_init): Add error checks for xlen and flen between
287         target description and bfd headers.  Be smarter about when we
288         think the hardware floating point abi should be used.
289
290 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
291
292         * nat/aarch64-linux-hw-point.c
293         (aarch64_linux_any_set_debug_regs_state): New function.
294         * nat/aarch64-linux-hw-point.h
295         (aarch64_linux_any_set_debug_regs_state): New declaration.
296         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
297         BPs or WPs are set.
298
299 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
300
301         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
302         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
303
304 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
305             Simon Marchi  <simon.marchi@ericsson.com>
306
307         * linespec.c (symtab_vector_up): Remove.
308         (symtabs_from_filename): Change return type to std::vector.
309         (collect_symtabs_from_filename): Likewise.
310         (create_sals_line_offset): Assign return value of
311         collect_symtabs_from_filename to *ls->file_symtabs.
312         (convert_explicit_location_to_linespec): Remove call to release.
313         (parse_linespec): Likewise.
314         (symtab_collector) <symtab_collector>: Remove initialization of
315         m_symtabs.
316         <release_symtabs>: Change return type to std::vector<symtab *>.
317         <operator ()>: Adjust.
318
319 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
320
321         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
322         defined.
323         (union sigval32, struct siginfo32, fbsd_siginfo_size)
324         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
325         of KERN_PROC_AUXV and PT_LWPINFO.
326         (fbsd_nat_target::xfer_partial): Define method unconditionally.
327         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
328         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
329         Make TARGET_OBJECT_FREEBSD_VMMAP and
330         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
331         and KERN_PROC_PS_STRINGS.
332         * fbsd-nat.h: Include <sys/proc.h>.
333         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
334
335 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
336
337         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
338         header files.
339         (riscv_linux_nat_target::read_description): New method.
340
341 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
342
343         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
344         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
345         (riscv_tdesc_cache): New global.
346         (riscv_create_target_description): Look in the cache before
347         creating a new target description.
348
349 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
350
351         * arch/riscv.h (riscv_gdb_features::operator==): New.
352         (riscv_gdb_features::operator!=): New.
353         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
354         operator.
355
356 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
357
358         * arch/riscv.h (riscv_create_target_description): Make return type
359         const.
360         * arch/riscv.c (riscv_create_target_description): Likewise.
361         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
362
363 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
364             Keith Seitz  <keiths@redhat.com>
365             Tom Tromey  <tom@tromey.com>
366             Sergio Durigan Junior  <sergiodj@redhat.com>
367
368         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
369         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
370         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
371         inside the CU.
372
373 2018-11-30  Pedro Alves  <palves@redhat.com>
374
375         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
376         <stratum>: New override.
377         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
378         <stratum>: New override.
379         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
380         <stratum>: New override.
381         * exec.c (exec_target) <exec_target>: Delete.
382         <stratum>: New override.
383         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
384         stratum method instead of the to_stratum field.
385         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
386         <stratum>: New override.
387         (thread_db_target::thread_db_target): Delete.
388         * make-target-delegates (print_class): Don't print a ctor
389         declaration.  Print a stratum method override declaration.
390         * process-stratum-target.h (process_stratum_target)
391         <process_stratum_target>: Delete.
392         <stratum>: New override.
393         * ravenscar-thread.c (ravenscar_thread_target)
394         <ravenscar_thread_target>: Delete.
395         <stratum>: New override.
396         * record-btrace.c (record_btrace_target)
397         <record_btrace_target>: Delete.
398         <stratum>: New override.
399         * record-full.c (record_full_base_target)
400         <record_full_base_target>: Delete.
401         <stratum>: New override.
402         * record.c (record_disconnect, record_detach)
403         (record_mourn_inferior, record_kill): Adjust to use the stratum
404         method instead of the to_stratum field.
405         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
406         * sol-thread.c (sol_thread_target)
407         <sol_thread_target>: Delete.
408         <stratum>: New override.
409         * spu-multiarch.c (spu_multiarch_target)
410         <spu_multiarch_target>: Delete.
411         <stratum>: New override.
412         * target-delegates.c: Regenerate.
413         * target.c (target_stack::push, target_stack::unpush)
414         (pop_all_targets_above, pop_all_targets_at_and_above)
415         (info_target_command, target_require_runnable)
416         (target_stack::find_beneath): Adjust to use the stratum method
417         instead of the to_stratum field.
418         (dummy_target::dummy_target): Delete.
419         (dummy_target::stratum): New.
420         (debug_target::debug_target): Delete.
421         (debug_target::stratum): New.
422         (maintenance_print_target_stack): Adjust to use the stratum method
423         instead of the to_stratum field.
424         * target.h (struct target_ops) <stratum>: New method.
425         <to_stratum>: Delete.
426         <is_pushed>: Adjust to use the stratum method
427         instead of the to_stratum field.
428
429 2018-11-30  Pedro Alves  <palves@redhat.com>
430
431         * corelow.c (core_target) <has_all_memory, has_execution>: New
432         overrides.
433         * inf-child.c (inf_child_target::has_all_memory)
434         (inf_child_target::has_memory, inf_child_target::has_stack)
435         (inf_child_target::has_registers)
436         (inf_child_target::has_execution): Delete.
437         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
438         has_stack, has_registers, has_execution>: Delete.
439         * process-stratum-target.c
440         (process_stratum_target::has_all_memory)
441         (process_stratum_target::has_memory)
442         (process_stratum_target::has_stack)
443         (process_stratum_target::has_registers)
444         (process_stratum_target::has_execution): New.
445         * process-stratum-target.h (process_stratum_target)
446         <has_all_memory, has_memory, has_stack, has_registers,
447         has_execution>: New method overrides.
448         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
449         has_memory, has_stack, has_registers, has_execution>: Delete.
450         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
451         has_execution>: Delete.
452         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
453         has_registers, has_execution>: Delete.
454         * target.c (default_child_has_all_memory)
455         (default_child_has_memory, default_child_has_stack)
456         (default_child_has_registers, default_child_has_execution):
457         Delete.
458         * target.h (default_child_has_all_memory)
459         (default_child_has_memory, default_child_has_stack)
460         (default_child_has_registers, default_child_has_execution):
461         Delete.
462         * tracefile.h (tracefile_target) <has_execution>: New override.
463
464 2018-11-30  Pedro Alves  <palves@redhat.com>
465
466         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
467         * bsd-kvm.c: Include "process-stratum-target.h".
468         (bsd_kvm_target): Now inherits from process_stratum_target.
469         (bsd_kvm_target::bsd_kvm_target): Default it.
470         * corelow.c: Include "process-stratum-target.h".
471         (core_target): Now inherits from process_stratum_target.
472         (core_target::core_target): Don't set to_stratum here.
473         * inf-child.c (inf_child_target::inf_child_target): Delete.
474         * inf-child.h: Include "process-stratum-target.h".
475         (inf_child_target): Inherit from process_stratum_target.
476         (inf_child_target) <inf_child_target>: Default it.
477         <can_async_p, supports_non_stop, supports_disable_randomization>:
478         Delete overrides.
479         * process-stratum-target.c: New file.
480         * process-stratum-target.h: New file.
481         * remote-sim.c: Include "process-stratum-target.h".
482         (gdbsim_target): Inherit from process_stratum_target.
483         <gdbsim_target>: Default it.
484         * remote.c: Include "process-stratum-target.h".
485         (remote_target): Inherit from process_stratum_target.
486         <remote_target>: Default it.
487         * target.c (default_thread_address_space)
488         (default_thread_architecture): Delete.
489         * target.h (target_ops) <thread_architecture>: Now returns NULL by
490         default.
491         <thread_address_space>: Ditto.
492         * test-target.h: Include "process-stratum-target.h" instead of
493         "target.h".
494         (test_target_ops): Inherit from process_stratum_target.
495         <test_target_ops>: Default it.
496         * tracefile.c (tracefile_target::tracefile_target): Delete.
497         * tracefile.h: Include "process-stratum-target.h".
498         (tracefile_target): Inherit from process_stratum_target.
499         <tracefile_target>: Default it.
500         * target-delegates.c: Regenerate.
501
502 2018-11-30  Pedro Alves  <palves@redhat.com>
503
504         * Makefile.in (COMMON_SFILES): Add test-target.c.
505         * gdbarch-selftests.c: Include "test-target.h".
506         * regcache.c: Include "test-target.h".
507         * target.c (test_target_info, test_target_ops::info): Move to ...
508         * test-target.c: ... this new file.
509         * target.h (test_target_ops): Move to ...
510         * test-target.h: ... this new file.
511
512 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
513
514         * source.c (forward_search_command): Fix leak by using
515         xrealloc even for the first allocation in the loop, as buf
516         is static.
517
518 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
519
520         PR gdb/23093
521         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
522         (fbsd_gdb_signal_to_target): New.
523         (fbsd_init_abi): Install gdbarch "signal_from_target" and
524         "signal_to_target" methods.
525
526 2018-11-29  Tom Tromey  <tom@tromey.com>
527
528         * valarith.c (value_x_unop): Don't set argvec[3].
529
530 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
531
532         PR gdb/23917
533         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
534         semicolon.
535
536 2018-11-26  Pedro Alves  <palves@redhat.com>
537
538         * procfs.c (procfs_notice_thread): Replace uses of
539         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
540         * sol-thread.c (sol_thread_target::wait)
541         (sol_update_thread_list_callback): Likewise.
542
543 2018-11-25  Tom Tromey  <tom@tromey.com>
544
545         * ui-out.c (ui_out::field_fmt): Remove comment.
546         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
547         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
548
549 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
550
551         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
552         leak in open_source_file' has been partially undone by '2179fbc36d23
553         Return scoped_fd from open_source_file'. Re-add the transfer of
554         current s->fullname to the unique_xmalloc_ptr fullname given
555         to find_and_open_source.
556
557 2018-11-23  Pedro Alves  <palves@redhat.com>
558
559         * gdbthread.h (enum thread_state): Move comments here.
560         (is_running, is_stopped, is_exited): Remove declarations.
561
562 2018-11-22  Pedro Alves  <palves@redhat.com>
563
564         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
565         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
566         ALL_NON_EXITED_THREADS with all_non_exited_threads.
567         (print_one_breakpoint_location): Replace ALL_INFERIORS with
568         all_inferiors.
569         * bsd-kvm.c: Include inferior.h.
570         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
571         with all_non_exited_threads.
572         * common/filtered-iterator.h: New.
573         * common/safe-iterator.h: New.
574         * corelow.c (core_target_open): Don't call init_thread_list here.
575         * darwin-nat.c (thread_info_from_private_thread_info): Replace
576         ALL_THREADS with all_threads.
577         * fbsd-nat.c (fbsd_nat_target::resume): Replace
578         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
579         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
580         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
581         * fork-child.c (postfork_hook): Don't call init_thread_list here.
582         * gdbarch-selftests.c (register_to_value_test): Adjust.
583         * gdbthread.h: Don't include "inferior.h" here.
584         (struct inferior): Forward declare.
585         (enum step_over_calls_kind): Moved here from inferior.h.
586         (thread_info::deletable): Definition moved to thread.c.
587         (find_thread_ptid (inferior *, ptid_t)): Declare.
588         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
589         Include "thread-iter.h".
590         (all_threads, all_non_exited_threads, all_threads_safe): New.
591         (any_thread_p): Declare.
592         (thread_list): Delete.
593         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
594         all_non_exited_threads.
595         (proceed_after_attach_callback): Delete.
596         (proceed_after_attach): Take an inferior pointer instead of an
597         integer PID.  Adjust to use range-for.
598         (attach_post_wait): Pass down inferior pointer instead of pid.
599         Use range-for instead of ALL_NON_EXITED_THREADS.
600         (detach_command): Remove init_thread_list call.
601         * inferior-iter.h: New.
602         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
603         (delete_thread_of_inferior): Delete.
604         (delete_inferior, exit_inferior_1): Use range-for with
605         inf->threads_safe() instead of iterate_over_threads.
606         (inferior_appeared): Call init_thread_list here.
607         (discard_all_inferiors): Use all_non_exited_inferiors.
608         (find_inferior_id, find_inferior_pid): Use all_inferiors.
609         (iterate_over_inferiors): Use all_inferiors_safe.
610         (have_inferiors, number_of_live_inferiors): Use
611         all_non_exited_inferiors.
612         (number_of_inferiors): Use all_inferiors and std::distance.
613         (print_inferior): Use all_inferiors.
614         * inferior.h: Include gdbthread.h.
615         (enum step_over_calls_kind): Moved to gdbthread.h.
616         (struct inferior) <thread_list>: New field.
617         <threads, non_exited_threads, threads_safe>: New methods.
618         (ALL_INFERIORS): Delete.
619         Include "inferior-iter.h".
620         (ALL_NON_EXITED_INFERIORS): Delete.
621         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
622         functions.
623         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
624         ALL_NON_EXITED_THREADS with all_non_exited_threads.
625         * infrun.c (follow_exec): Use all_threads_safe.
626         (clear_proceed_status, proceed): Use all_non_exited_threads.
627         (init_wait_for_inferior): Don't clear inline frame state here.
628         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
629         all_threads instead of ALL_NON_EXITED_THREADS.
630         (random_pending_event_thread): Use all_non_exited_threads instead
631         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
632         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
633         instead of ALL_NON_EXITED_THREADS.
634         (handle_no_resumed): Use all_non_exited_threads instead of
635         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
636         ALL_INFERIORS.
637         (restart_threads, switch_back_to_stepped_thread): Use
638         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
639         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
640         all_inferiors.
641         (kill_unfollowed_fork_children): Use inf->non_exited_threads
642         instead of ALL_NON_EXITED_THREADS.
643         * linux-tdep.c (linux_make_corefile_notes): Use
644         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
645         * linux-thread-db.c (thread_db_target::update_thread_list):
646         Replace ALL_INFERIORS with all_inferiors.
647         (thread_db_target::thread_handle_to_thread_info): Use
648         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
649         * mi/mi-interp.c (multiple_inferiors_p): New.
650         (mi_on_resume_1): Simplify using all_non_exited_threads and
651         multiple_inferiors_p.
652         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
653         instead of ALL_NON_EXITED_THREADS.
654         * nto-procfs.c (nto_procfs_target::open): Don't call
655         init_thread_list here.
656         * record-btrace.c (record_btrace_target_open)
657         (record_btrace_target::stop_recording)
658         (record_btrace_target::close)
659         (record_btrace_target::record_is_replaying)
660         (record_btrace_target::resume, record_btrace_target::wait)
661         (record_btrace_target::record_stop_replaying): Use
662         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
663         * record-full.c (record_full_wait_1): Use all_non_exited_threads
664         instead of ALL_NON_EXITED_THREADS.
665         * regcache.c (cooked_read_test): Remove reference to global
666         thread_list.
667         * remote-sim.c (gdbsim_target::create_inferior): Don't call
668         init_thread_list here.
669         * remote.c (remote_target::update_thread_list): Use
670         all_threads_safe instead of ALL_NON_EXITED_THREADS.
671         (remote_target::process_initial_stop_replies): Replace
672         ALL_INFERIORS with all_non_exited_inferiors and use
673         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
674         (remote_target::open_1): Don't call init_thread_list here.
675         (remote_target::append_pending_thread_resumptions)
676         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
677         instead of ALL_NON_EXITED_THREADS.
678         (remote_target::commit_resume)
679         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
680         with all_non_exited_inferiors and use all_non_exited_threads
681         instead of ALL_NON_EXITED_THREADS.
682         (remote_target::kill_new_fork_children): Use
683         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
684         init_thread_list and init_wait_for_inferior calls.
685         (remote_target::remote_btrace_maybe_reopen)
686         (remote_target::thread_handle_to_thread_info): Use
687         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
688         * target.c (target_terminal::restore_inferior)
689         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
690         all_non_exited_inferiors.
691         * thread-iter.c: New file.
692         * thread-iter.h: New file.
693         * thread.c: Include "inline-frame.h".
694         (thread_list): Delete.
695         (clear_thread_inferior_resources): Call clear_inline_frame_state.
696         (init_thread_list): Use all_threads_safe instead of
697         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
698         (new_thread): Adjust to per-inferior thread lists.
699         (add_thread_silent): Pass inferior to find_thread_ptid.
700         (thread_info::deletable): New, moved from the header.
701         (delete_thread_1): Adjust to per-inferior thread lists.
702         (find_thread_global_id): Use inf->threads().
703         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
704         find_thread_ptid.
705         (find_thread_ptid(inferior*, ptid_t)): New overload.
706         (iterate_over_threads): Use all_threads_safe.
707         (any_thread_p): New.
708         (thread_count): Use all_threads and std::distance.
709         (live_threads_count): Use all_non_exited_threads and
710         std::distance.
711         (valid_global_thread_id): Use all_threads.
712         (in_thread_list): Use find_thread_ptid.
713         (first_thread_of_inferior): Adjust to per-inferior thread lists.
714         (any_thread_of_inferior, any_live_thread_of_inferior): Use
715         inf->non_exited_threads().
716         (prune_threads, delete_exited_threads): Use all_threads_safe.
717         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
718         (set_resumed, set_running): Use all_non_exited_threads.
719         (is_thread_state, is_stopped, is_exited, is_running)
720         (is_executing): Delete.
721         (set_executing, set_stop_requested, finish_thread_state): Use
722         all_non_exited_threads.
723         (print_thread_info_1): Use all_inferiors and all_threads.
724         (thread_apply_all_command): Use all_non_exited_threads.
725         (thread_find_command): Use all_threads.
726         (update_threads_executing): Use all_non_exited_threads.
727         * tid-parse.c (parse_thread_id): Use inf->threads.
728         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
729
730 2018-11-22  Pedro Alves  <palves@redhat.com>
731
732         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
733         switch to it before calling into try_open_exec_file.
734
735 2018-11-22  Pedro Alves  <palves@redhat.com>
736
737         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
738         inferior_thread instead of find_thread_ptid, and only when
739         inferior_ptid is not null_ptid.
740         * inferior.c (add_inferior): Don't include target_pid_to_str
741         output when the inferior is not started.
742         * python/py-inferior.c (python_on_normal_stop): Don't use
743         find_thread_ptid.
744         (tui_on_user_selected_context_changed): Use inferior_thread
745         instead of find_thread_ptid, and only when inferior_ptid is not
746         null_ptid.
747
748 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
749
750         PR python/23714
751         * gdb/python/python.c (execute_gdb_command): Call
752         prevent_dont_repeat earlier to avoid affecting dont_repeat.
753
754 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
755
756         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
757         (HFILES_NO_SRCDIR): Add arch/riscv.h.
758         * arch/riscv.c: New file.
759         * arch/riscv.h: New file.
760         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
761         this list, and add arch/riscv.o.
762         * features/Makefile: Add riscv features.
763         * features/riscv/32bit-cpu.c: New file.
764         * features/riscv/32bit-cpu.xml: New file.
765         * features/riscv/32bit-csr.c: New file.
766         * features/riscv/32bit-csr.xml: New file.
767         * features/riscv/32bit-fpu.c: New file.
768         * features/riscv/32bit-fpu.xml: New file.
769         * features/riscv/64bit-cpu.c: New file.
770         * features/riscv/64bit-cpu.xml: New file.
771         * features/riscv/64bit-csr.c: New file.
772         * features/riscv/64bit-csr.xml: New file.
773         * features/riscv/64bit-fpu.c: New file.
774         * features/riscv/64bit-fpu.xml: New file.
775         * features/riscv/rebuild-csr-xml.sh: New file.
776         * riscv-tdep.c: Add 'arch/riscv.h' include.
777         (riscv_gdb_reg_names): Delete.
778         (csr_reggroup): New global.
779         (struct riscv_register_alias): Delete.
780         (struct riscv_register_feature): New structure.
781         (riscv_register_aliases): Delete.
782         (riscv_xreg_feature): New global.
783         (riscv_freg_feature): New global.
784         (riscv_virtual_feature): New global.
785         (riscv_csr_feature): New global.
786         (riscv_create_csr_aliases): New function.
787         (riscv_read_misa_reg): Delete.
788         (riscv_has_feature): Delete.
789         (riscv_isa_xlen): Simplify, just return cached xlen.
790         (riscv_isa_flen): Simplify, just return cached flen.
791         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
792         (riscv_register_name): Update to make use of tdesc_register_name.
793         Look up xreg and freg names in the new globals riscv_xreg_feature
794         and riscv_freg_feature.  Don't supply csr aliases here.
795         (riscv_fpreg_q_type): Delete.
796         (riscv_register_type): Use tdesc_register_type in almost all
797         cases, override the returned type in a few specific cases only.
798         (riscv_print_one_register_info): Handle errors reading registers.
799         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
800         registers that are otherwise unknown to GDB.  Also check the
801         csr_reggroup.
802         (riscv_print_registers_info): Remove assert about upper register
803         number, and use gdbarch_register_reggroup_p instead of
804         short-cutting.
805         (riscv_find_default_target_description): New function.
806         (riscv_check_tdesc_feature): New function.
807         (riscv_add_reggroups): New function.
808         (riscv_setup_register_aliases): New function.
809         (riscv_init_reggroups): New function.
810         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
811         setup register groups.  Register new riscv debug variable.
812         * riscv-tdep.h: Add 'arch/riscv.h' include.
813         (struct gdbarch_tdep): Remove abi union, and add
814         riscv_gdbarch_features field.  Remove cached quad floating point
815         type, and provide initialisation for double type field.
816         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
817         the list of targets using the feature based target descriptions.
818         * NEWS: Mention target description support.
819
820 2018-11-21  Pedro Alves  <palves@redhat.com>
821
822         * valops.c (find_method_list, value_find_oload_method_list)
823         (find_overload_match, find_oload_champ): Rename parameters and
824         locals.
825
826 2018-11-21  Pedro Alves  <palves@redhat.com>
827
828         * valops.c (find_method_list): Replace pointer and length
829         parameters with an gdb::array_view.  Adjust.
830         (value_find_oload_method_list): Likewise.
831         (find_overload_match): Use gdb::array_view for methods list.
832         Adjust to find_oload_champ interface change.
833         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
834         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
835
836 2018-11-21  Pedro Alves  <palves@redhat.com>
837
838         * gdbtypes.c (compare_badness): Change type of parameters to const
839         reference.  Adjust to badness_vector being a std::vector now.
840         (rank_function): Adjust to badness_vector being a std::vector now.
841         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
842         (LENGTH_MATCH): Delete.
843         (compare_badness): Change type of parameters to const reference.
844         (rank_function): Return a badness_vector by value now.
845         (find_overload_match): Adjust to badness_vector being a
846         std::vector now.  Remove cleanups.
847         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
848         badness_vector pointer.
849         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
850         a badness_vector pointer.  Adjust to badness_vector being a
851         std::vector now.  Remove cleanups.
852         (find_oload_champ): 'oload_champ_bv' parameter now
853         a badness_vector pointer.  Adjust to badness_vector being a
854         std::vector now.  Remove cleanups.
855
856 2018-11-21  Pedro Alves  <palves@redhat.com>
857
858         * cp-support.c (sym_return_val_size, sym_return_val_index)
859         (sym_return_val): Delete.
860         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
861         add to the vector.
862         (make_symbol_overload_list): Adjust to return a std::vector
863         instead of maintaining a global open coded vector.
864         (make_symbol_overload_list_block): Add std::vector parameter.
865         (make_symbol_overload_list_block): Rename to ...
866         (add_symbol_overload_list_block): ... this and add std::vector
867         parameter.
868         (make_symbol_overload_list_namespace): Rename to ...
869         (add_symbol_overload_list_namespace): ... this and add std::vector
870         parameter.
871         (make_symbol_overload_list_adl_namespace): Rename to ...
872         (add_symbol_overload_list_adl_namespace): ... this and add
873         std::vector parameter.
874         (make_symbol_overload_list_adl): Delete.
875         (add_symbol_overload_list_adl): New.
876         (make_symbol_overload_list_using): Rename to ...
877         (add_symbol_overload_list_using): ... this and add std::vector
878         parameter.
879         (make_symbol_overload_list_qualified): Rename to ...
880         (add_symbol_overload_list_qualified): ... this and add std::vector
881         parameter.
882         * cp-support.h: Include "common/array-view.h" and <vector>.
883         (make_symbol_overload_list): Change return type to std::vector.
884         (make_symbol_overload_list_adl): Delete declaration.
885         (add_symbol_overload_list_adl): New declaration.
886         * valops.c (find_overload_match): Local 'oload_syms' now a
887         std::vector.
888         (find_oload_champ_namespace): 'oload_syms' parameter now a
889         std::vector pointer.
890         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
891         std::vector pointer.  Adjust to new make_symbol_overload_list
892         interface.
893
894 2018-11-21  Pedro Alves  <palves@redhat.com>
895
896         * common/array-view.h (array_view::splice(size_type, size_t)): New.
897         (array_view::splice(size_type)): New.
898         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
899         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
900         std::vector.
901         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
902         * extension.h: Include "common/array-view.h".
903         (xmethod_worker::invoke): Adjust to use gdb::array_view.
904         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
905         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
906         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
907         (xmethod_worker::do_get_result_type): Adjust to use
908         gdb::array_view.
909         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
910         * gdbtypes.h: Include "common/array-view.h".
911         (rank_function): Adjust to use gdb::array_view.
912         * python/py-xmethods.c (python_xmethod_worker::invoke)
913         (python_xmethod_worker::do_get_arg_types)
914         (python_xmethod_worker::do_get_result_type)
915         (python_xmethod_worker::invoke): Adjust to new interfaces.
916         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
917         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
918         * valops.c (find_overload_match, find_oload_champ_namespace)
919         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
920         gdb:array_view and the new xmethod_worker interfaces.
921         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
922         gdb::array_view.
923         * value.h (find_overload_match, result_type_of_xmethod)
924         (call_xmethod): Adjust to use gdb::array_view.
925         * unittests/array-view-selftests.c: Add slicing tests.
926
927 2018-11-21  Pedro Alves  <palves@redhat.com>
928
929         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
930         * common/array-view.h (make_array_view): New.
931         * compile/compile-object-run.c (compile_object_run): Adjust to
932         pass an array_view.
933         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
934         * eval.c (eval_call): Adjust to pass an array_view.
935         (evaluate_subexp_standard): Adjust to pass an array_view.
936         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
937         * guile/scm-value.c (gdbscm_value_call): Likewise.
938         * infcall.c (push_dummy_code): Replace pointer + size parameters
939         with an array_view parameter.
940         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
941         adjust.
942         * infcall.h: Include "common/array-view.h".
943         (call_function_by_hand, call_function_by_hand_dummy): Replace
944         pointer + size parameters with an array_view parameter.
945         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
946         * linux-tdep.c (linux_infcall_mmap): Likewise.
947         * objc-lang.c (lookup_objc_class, lookup_child_selector)
948         (value_nsstring, print_object_command): Likewise.
949         * python/py-value.c (valpy_call): Likewise.
950         * rust-lang.c (rust_evaluate_funcall): Likewise.
951         * spu-tdep.c (flush_ea_cache): Likewise.
952         * valarith.c (value_x_binop, value_x_unop): Likewise.
953         * valops.c (value_allocate_space_in_inferior): Likewise.
954         * unittests/array-view-selftests.c (run_tests): Add
955         gdb::make_array_view test.
956
957 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
958
959         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
960         than a fixed size buffer.
961
962 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
963
964         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
965         and remove insertion of extra spaces in GDB's output.
966         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
967         Layout field into a temporary buffer, and then output it as a
968         string field.
969
970 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
971
972         * NEWS: Document the language choice done by
973         'info [types|functions|variables]|rbreak'.
974
975 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
976
977         * symtab.c (treg_matches_sym_type_name): Use
978         scoped_switch_to_sym_language_if_auto instead of local logic.
979         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
980         to switch to SYM language when language mode is auto.
981
982 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
983
984         * language.h (scoped_switch_to_sym_language_if_auto): New class.
985
986 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
987
988         * symtab.c (search_symbols): Properly check absence of type regexp
989         before entering the loop scanning the minimal symbols.
990
991 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
992
993         * s12z-tdep.c (s12z_extract_return_value): New function.
994         (inv_reg_perm) New array.
995         (s12z_return_value): Populate readbuf if non-null.
996
997 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
998
999         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
1000         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
1001         to MinGW fixed by Gnulib.
1002         (O_NOINHERIT): Define if not defined.
1003
1004 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
1005
1006         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
1007
1008 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1009
1010         * infrun.c (displaced_step_inferior_state) <next>: Remove.
1011
1012 2018-11-19  Tom Tromey  <tom@tromey.com>
1013
1014         * source.c (get_filename_and_charpos): Return void.
1015
1016 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
1017
1018         * skip.c (_initialize_step_skip): Fix "info skip" help.
1019
1020 2018-11-16  Tom Tromey  <tom@tromey.com>
1021
1022         PR rust/23625:
1023         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
1024
1025 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
1026
1027         * infrun.c (displaced_step_inferior_states): Change type to
1028         std::forward_list.
1029         (get_displaced_stepping_state): Adjust.
1030         (displaced_step_in_progress_any_inferior): Adjust.
1031         (add_displaced_stepping_state): Adjust.
1032         (remove_displaced_stepping_state): Adjust.
1033
1034 2018-11-18  Tom Tromey  <tom@tromey.com>
1035
1036         PR build/23814:
1037         * target-delegates.c: Rebuild.
1038         * ia64-linux-nat.c (class ia64_linux_nat_target)
1039         <have_steppable_watchpoint>: Use override.  Return true, not 1.
1040         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
1041         "self" argument.
1042         (ia64_linux_nat_target::low_new_thread): Rename.
1043         (class ia64_linux_nat_target) <read_description>: Don't declare.
1044         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
1045         bool.
1046
1047 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1048
1049         PR gdb/22736:
1050         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
1051         lang_struct_return code.
1052
1053 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1054
1055         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
1056         return_method.
1057         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
1058         * amd64-tdep.c (amd64_push_arguments): Likewise.
1059         (amd64_push_dummy_call): Likewise.
1060         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
1061         * arc-tdep.c (arc_push_dummy_call): Likewise.
1062         * arm-tdep.c (arm_push_dummy_call): Likewise.
1063         * avr-tdep.c (avr_push_dummy_call): Likewise.
1064         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
1065         * cris-tdep.c (cris_push_dummy_call): Likewise.
1066         * csky-tdep.c (csky_push_dummy_call): Likewise.
1067         * frv-tdep.c (frv_push_dummy_call): Likewise.
1068         * gdbarch.c: Regenerate.
1069         * gdbarch.h: Regenerate.
1070         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
1071         return_method.
1072         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
1073         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
1074         (hppa64_push_dummy_call): Likewise.
1075         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
1076         * i386-tdep.c (i386_push_dummy_call): Likewise.
1077         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
1078         * infcall.c (call_function_by_hand_dummy): Likewise.
1079         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
1080         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
1081         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
1082         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
1083         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
1084         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
1085         * mep-tdep.c (mep_push_dummy_call): Likewise.
1086         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
1087         (mips_n32n64_push_dummy_call): Likewise.
1088         (mips_o32_push_dummy_call): Likewise.
1089         (mips_o64_push_dummy_call): Likewise.
1090         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
1091         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
1092         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
1093         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
1094         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
1095         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
1096         (ppc64_sysv_abi_push_dummy_call): Likewise.
1097         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
1098         (ppc64_sysv_abi_push_dummy_call): Likewise.
1099         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
1100         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
1101         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
1102         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
1103         * rx-tdep.c (rx_push_dummy_call): Likewise.
1104         * s390-tdep.c (s390_push_dummy_call): Likewise.
1105         * score-tdep.c (score_push_dummy_call): Likewise.
1106         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
1107         (sh_push_dummy_call_nofpu): Likewise.
1108         * sparc-tdep.c (sparc32_store_arguments): Likewise.
1109         (sparc32_push_dummy_call): Likewise.
1110         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
1111         (sparc64_push_dummy_call): Likewise.
1112         * spu-tdep.c (spu_push_dummy_call): Likewise.
1113         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
1114         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
1115         * v850-tdep.c (v850_push_dummy_call): Likewise.
1116         * vax-tdep.c (vax_push_dummy_call): Likewise.
1117         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1118         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1119
1120 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1121
1122         * gdbarch.sh (enum function_call_return_method): Add enum.
1123         * gdbarch.h: Regenerate.
1124         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1125
1126 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1127
1128         * unittests/copy_bitwise-selftests.c: New file.
1129         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1130         (selftests::copy_bitwise_tests): Delete, moving this code to
1131         unittests/copy_bitwise-selftests.c instead.
1132         (_initialize_utils): Do not register copy_bitwise tests.
1133         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1134         unittests/copy_bitwise-selftests.c.
1135
1136 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1137
1138         * ada-lang.c (move_bits): Delete. Update all callers to use
1139         copy_bitwise instead.
1140         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1141         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1142         Move from here to utils.c.
1143         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1144         selftests.
1145         * utils.h (copy_bitwise): Add declaration.
1146         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1147         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1148         Moved here from dwarf2loc.c.
1149         (_initialize_utils): Register copy_bitwise selftests.
1150
1151 2018-11-14  Jim Wilson  <jimw@sifive.com>
1152
1153         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1154         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1155         then increment next_regnum if odd.
1156         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1157         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1158         function type.  Pass new arg to riscv_arg_location based on function
1159         type.
1160         (riscv_return_value): Pass new arg to riscv_arg_location.
1161
1162         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1163         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1164         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1165
1166         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1167         setting len.  New local align, set to max of arg align and xlen,
1168         and pass to first riscv_assign_stack_location call.
1169
1170 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1171
1172         * skip.c (complete_skip_number): New function.
1173         (_initialize_step_skip): Add completers to some skip commands.
1174
1175 2018-11-09  Tom Tromey  <tom@tromey.com>
1176
1177         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1178         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1179         <guesses>: Now a std::vector.
1180         (remote_g_packet_data_init, register_remote_g_packet_guess):
1181         Update.
1182         (remote_read_description_p): Update.  Return bool.
1183         (remote_target::read_description): Update.
1184         (struct remote_g_packet_guess): Add constructor.
1185
1186 2018-11-09  Tom Tromey  <tom@tromey.com>
1187
1188         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1189         move assignment operator.
1190         * psymtab.c (psymtab_to_fullname): Update.
1191         * source.h (open_source_file): Return scoped_fd.
1192         (find_and_open_source): Likewise.
1193         * source.c (open_source_file): Return scoped_fd.
1194         (get_filename_and_charpos): Update.
1195         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1196         (forward_search_command): Likewise.
1197         (reverse_search_command): Likewise.
1198         (find_and_open_source): Return scoped_fd.
1199         * tui/tui-source.c (tui_set_source_content): Update.  Use
1200         gdb_file_up.
1201
1202 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1203
1204         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1205         overflow.
1206
1207 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1208
1209         * configure: Regenerate.
1210
1211 2018-11-09  Tom de Vries  <tdevries@suse.de>
1212
1213         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1214         unconditionally, to set the language of the symbol.  Manage freeing
1215         returned pointer using gdb::unique_xmalloc_ptr.
1216
1217 2018-11-08  Tom Tromey  <tom@tromey.com>
1218
1219         * record.c (require_record_target): Upper-case "<TAB>".
1220
1221 2018-11-08  Tom Tromey  <tom@tromey.com>
1222
1223         * python/lib/gdb/command/pretty_printers.py
1224         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1225
1226 2018-11-08  Tom Tromey  <tom@tromey.com>
1227
1228         PR gdb/23555:
1229         PR gdb/23838:
1230         * target.h (target_supports_terminal_ours): Return bool.
1231         * target.c (target_supports_terminal_ours): Handle case where
1232         current_top_target returns nullptr.  Return bool.
1233
1234 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1235
1236         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1237         return the correct count for potential HFAs.
1238
1239 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1240
1241         * i387-tdep.c (i387_supply_xsave): Split handling of
1242         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1243         (i387_collect_xsave): Likewise.
1244
1245 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1246
1247         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1248         (riscv_frame_this_id): Catch errors thrown while building the
1249         frame cache, leave the frame id as the default, which is the outer
1250         frame id.
1251
1252 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1253
1254         * ada-lang.c (read_atcb): Only set task_info->called_task if
1255         task_info->state == Entry_Caller_Sleep.
1256         (print_ada_task_info): Do not check task_info->state before
1257         checking task_info->called_task.
1258         (info_task): Likewise.
1259
1260 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1261
1262         * ada-tasks.c (read_atcb): Clear task_info before computing
1263         the value of each of its fields.
1264
1265 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1266
1267         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1268         NULL before dereferencing it.
1269
1270 2018-11-06  Tom de Vries  <tdevries@suse.de>
1271
1272         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1273         program headers.
1274
1275 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1276
1277         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1278         so that it applies to uclinux as well.
1279
1280 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1281
1282         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1283         when on AAPCS.
1284
1285 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1286
1287         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1288         RISCV_CSR_SSTATUS_REGNUM.
1289
1290 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1291
1292         * source.c (open_source_file): Fix leak by transferring the
1293         current s->fullname to the unique_xmalloc_ptr fullname given
1294         to find_and_open_source.
1295
1296 2018-11-04  Tom Tromey  <tom@tromey.com>
1297
1298         * varobj.c (install_default_visualizer): Update.
1299         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1300         Return gdbpy_ref.
1301         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1302         (find_pretty_printer_from_progspace)
1303         (find_pretty_printer_from_gdb, find_pretty_printer)
1304         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1305         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1306         Update.
1307
1308 2018-11-04  Tom Tromey  <tom@tromey.com>
1309
1310         * python/python.c (gdbpy_parameter_value): Update.
1311         * python/python-internal.h (python_string_to_unicode)
1312         (python_string_to_target_python_string)
1313         (host_string_to_python_string): Return gdbpy_ref.
1314         * python/py-utils.c (python_string_to_unicode)
1315         (unicode_to_encoded_python_string)
1316         (unicode_to_target_python_string)
1317         (python_string_to_target_string)
1318         (python_string_to_target_python_string): Return gdbpy_ref.
1319         (python_string_to_host_string): Update.
1320         (host_string_to_python_string): Return gdbpy_ref.
1321         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1322         (stpy_fullname): Update.
1323         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1324         Update.
1325         * python/py-prettyprint.c (print_string_repr): Update.
1326         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1327         (objfpy_get_build_id): Update.
1328         * python/py-breakpoint.c (bppy_get_location)
1329         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1330         Update.
1331
1332 2018-11-04  Tom Tromey  <tom@tromey.com>
1333
1334         * python/python-internal.h (gdb_py_object_from_longest)
1335         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1336         * python/py-value.c (valpy_int): Update.
1337         * python/py-utils.c (gdb_py_object_from_longest): Return
1338         gdbpy_ref.
1339         (gdb_py_object_from_ulongest): Likewise.
1340         * python/py-type.c (typy_get_alignof): Update.
1341         * python/py-linetable.c (ltpy_get_all_source_lines)
1342         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1343         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1344
1345 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1346
1347         * ada-lang.c (_initialize_ada_language): Fix typo.
1348
1349 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1350
1351         * language.c (type): Remove.
1352         (_initialize_language): Remove assignment to type.
1353
1354 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1355
1356         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1357         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1358         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1359         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1360         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1361         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1362         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1363         and aarch64-ravenscar-thread.o.
1364         * NEWS: Add entry documenting Ravenscar tasking support
1365         on AArch64 ELF.
1366
1367 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1368
1369         * symtab.c (info_functions_command): Initialize quiet flag.
1370         * stack.c (info_args_command): Likewise.
1371
1372 2018-11-01  Jim Wilson  <jimw@sifive.com>
1373
1374         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1375         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1376         debugging messages.
1377
1378 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1379
1380         * ada-lang.c (ada_watch_location_expression): New function.
1381         (ada_language_defn): Set la_watch_location_expression to
1382         ada_watch_location_expression.
1383
1384 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1385
1386         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1387
1388 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1389
1390         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1391         shifting.
1392
1393 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1394             Joel Brobecker  <brobecker@adacore.com>
1395
1396         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1397         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1398         * arm-pikeos-tdep.c: New file.
1399         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1400         embedded system.
1401         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1402
1403 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1404
1405         * common/pathstuff.c (get_standard_temp_dir): New.
1406         * common/pathstuff.h (get_standard_temp_dir): New.
1407         * config.in: Re-generate.
1408         * configure: Re-generate.
1409         * configure.ac: Don't check for mkdtemp.
1410         * gnulib/aclocal-m4-deps.mk: Re-generate.
1411         * gnulib/aclocal.m4: Re-generate.
1412         * gnulib/config.in: Re-generate.
1413         * gnulib/configure: Re-generate.
1414         * gnulib/import/Makefile.am: Re-generate.
1415         * gnulib/import/Makefile.in: Re-generate.
1416         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1417         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1418         * gnulib/import/m4/mkdtemp.m4: New file.
1419         * gnulib/import/mkdtemp.c: New file.
1420         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1421         Add mkdtemp module.
1422         * unittests/mkdir-recursive-selftests.c (test): Use
1423         get_standard_temp_dir.
1424         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1425         ifdef.
1426         * compile/compile.c (get_compile_file_tempdir): Likewise.
1427
1428 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1429
1430         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1431         (SIG_FRAME_LR_OFFSET64): New define.
1432         (SIG_FRAME_FP_OFFSET64): New define.
1433         (aix_sighandle_frame_cache): New Function.
1434         (aix_sighandle_frame_this_id): New Function.
1435         (aix_sighandle_frame_prev_register): New Function.
1436         (aix_sighandle_frame_sniffer): New Function.
1437         (aix_sighandle_frame_unwind): New global variable.
1438         (rs6000_aix_init_osabi): Install new frame unwinder.
1439
1440 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1441
1442         PR gdb/23835
1443         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1444         already defined.
1445
1446 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1447
1448         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1449
1450 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1451
1452         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1453         (producer_is_icc): New function.
1454         (check_producer): Set producer_is_icc field on dwarf2_cu.
1455         (dwarf2_init_integer_type): New function.
1456         (read_base_type): Call dwarf2_init_integer_type instead of
1457         init_integer_type in all cases.
1458         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1459         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1460         LEN is greater than 0.
1461
1462 2018-10-30  Tom Tromey  <tom@tromey.com>
1463
1464         * main.c (captured_main_1): Check return value of bfd_init.
1465
1466 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1467
1468         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1469         Adjust comments.
1470
1471 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1472
1473         * procfs.c: Include common/pathstuff.h.
1474
1475 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1476
1477         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1478         Add missing braces.  No functional change.
1479
1480 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1481
1482         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1483         to report a bad option and fix indentation.
1484         * demangle.c (demangle_command): Use report_unrecognized_option_error
1485         to report a bad option and correctly report the bad option.
1486
1487 2018-10-27  Tom Tromey  <tom@tromey.com>
1488
1489         PR cli/23364:
1490         * darwin-nat.c (copied_shell): New global.
1491         (may_have_sip): Rename from should_disable_startup_with_shell.
1492         (copy_shell_to_cache, maybe_cache_shell): New functions.
1493         (darwin_nat_target::create_inferior): Update.  Use
1494         copied_shell.
1495
1496 2018-10-27  Tom Tromey  <tom@tromey.com>
1497
1498         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1499         (run_tests): Call test_to_file.
1500         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1501         temporary files.
1502         * common/scoped_fd.h (scoped_fd::to_file): New method.
1503
1504 2018-10-27  Tom Tromey  <tom@tromey.com>
1505
1506         * unittests/scoped_mmap-selftests.c (test_normal): Use
1507         gdb_mkostemp_cloexec.
1508         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1509         Use gdb_mkostemp_cloexec.
1510         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1511         gnulib/config.in, gnulib/configure,
1512         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1513         gnulib/import/m4/gnulib-cache.m4,
1514         gnulib/import/m4/gnulib-comp.m4: Update.
1515         * gnulib/import/m4/mkostemp.m4: New file.
1516         * gnulib/import/m4/mkstemp.m4: Remove.
1517         * gnulib/import/mkostemp.c: New file.
1518         * gnulib/import/mkstemp.m4: Remove.
1519         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1520         mkstemp, add mkostemp.  Apply new patch.
1521         * gnulib/import/stdlib.in.h: Apply patch.
1522         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1523         New file.
1524         * dwarf-index-write.c (write_psymtabs_to_index): Use
1525         gdb_mkostemp_cloexec.
1526         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1527
1528 2018-10-27  Tom Tromey  <tom@tromey.com>
1529
1530         * unittests/mkdir-recursive-selftests.c: New file.
1531         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1532         unittests/mkdir-recursive-selftests.c.
1533         * dwarf-index-cache.c (mkdir_recursive): Move to
1534         common/filestuff.c.
1535         (index_cache::store): Check return value of mkdir_recursive.
1536         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1537         (_initialize_index_cache): Don't register test.
1538         * common/filestuff.h (mkdir_recursive): Declare.
1539         * common/filestuff.c (mkdir_recursive): Move from
1540         dwarf-index-cache.c.  Return bool.
1541
1542 2018-10-27  Tom Tromey  <tom@tromey.com>
1543
1544         * dwarf-index-write.c (write_psymtabs_to_index): Move
1545         make_temp_filename to common/pathstuff.c.
1546         * common/pathstuff.h (make_temp_filename): Declare.
1547         * common/pathstuff.c (make_temp_filename): New function, moved
1548         from dwarf-index-write.c.
1549
1550 2018-10-27  Tom Tromey  <tom@tromey.com>
1551
1552         * procfs.c (procfs_target::create_inferior): Use get_shell.
1553         * cli/cli-cmds.c (shell_escape): Use get_shell.
1554         * windows-nat.c (windows_nat_target::create_inferior): Use
1555         get_shell.
1556         * common/pathstuff.c (get_shell): New function.
1557         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1558         (fork_inferior): Use get_shell.
1559         * common/pathstuff.h (get_shell): Declare.
1560
1561 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1562
1563         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1564
1565 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1566
1567         * stack.c (print_variable_and_value_data): Add preg and treg.
1568         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1569         and update callers.
1570         (print_frame_arg_vars): Likewise.
1571         (prepare_reg): New function.
1572         (info_locals_command): Extract info print args and use them.
1573         (info_args_command): Likewise.
1574         (_initialize_stack): Modify on-line help.
1575         * symtab.c (treg_matches_sym_type_name): New function.
1576         (search_symbols): New arg t_regexp.
1577         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1578         (info_variables_command): Extract info print args and use them.
1579         (info_functions_command): Likewise.
1580         (info_types_command): Update call to symtab_symbol_info.
1581         (_initialize_symtab): Modify on-line help.
1582         * symtab.h (treg_matches_sym_type_name): New function.
1583         (search_symbols): New t_regexp arg.
1584
1585 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1586
1587         * cli-utils.c (extract_arg_maybe_quoted): New function.
1588         (extract_info_print_args): New function.
1589         (info_print_args_help): New function.
1590         (report_unrecognized_option_error): New function.
1591         * cli-utils.h (extract_arg_maybe_quoted): New function.
1592         (extract_info_print_args): New function.
1593         (info_print_args_help): New function.
1594         (report_unrecognized_option_error): New function.
1595
1596 2018-10-26  Tom Tromey  <tom@tromey.com>
1597
1598         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1599         (compute_compunit_symtab_includes): Update.
1600         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1601         (compunit_symtab_ptr): Likewise.
1602
1603 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1604
1605         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1606         default_print_auxv_entry for specific tag values.
1607
1608 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1609
1610         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1611
1612 2018-10-26  Jim Wilson  <jimw@sifive.com>
1613
1614         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1615         (riscv_linux_sigframe_init): Declare.
1616         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1617         (riscv_linux_sigframe): New.
1618         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1619         (riscv_linux_sigframe_init): Define.
1620         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1621
1622         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1623         (riscv_isa_flen): Likewise.  Drop static.
1624         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1625         (riscv_isa_flen): Likewise.  Declare.
1626
1627 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1628             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1629
1630         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1631         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1632         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1633         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1634         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1635         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1636         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1637         Define.
1638         (struct ppc_linux_features) <htm>: New field.
1639         (ppc_linux_no_features): Add initializer for htm field.
1640         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1641         new tdescs.
1642         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1643         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1644         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1645         Define if not already defined.
1646         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1647         and rs6000/powerpc-isa207-htm-vsx64l.
1648         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1649         rs6000/powerpc-isa207-htm-vsx64l.xml.
1650         * features/rs6000/power-htm-spr.xml: New file.
1651         * features/rs6000/power-htm-core.xml: New file.
1652         * features/rs6000/power64-htm-core.xml: New file.
1653         * features/rs6000/power-htm-fpu.xml: New file.
1654         * features/rs6000/power-htm-altivec.xml: New file.
1655         * features/rs6000/power-htm-vsx.xml: New file.
1656         * features/rs6000/power-htm-ppr.xml: New file.
1657         * features/rs6000/power-htm-dscr.xml: New file.
1658         * features/rs6000/power-htm-tar.xml: New file.
1659         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1660         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1661         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1662         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1663         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1664         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1665         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1666         fetch_regset with HTM regsets.
1667         (store_register, store_ppc_registers): Call store_regset with HTM
1668         regsets.
1669         (ppc_linux_nat_target::read_description): Set htm field in the
1670         features struct if needed.
1671         * ppc-linux-tdep.c: Include
1672         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1673         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1674         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1675         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1676         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1677         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1678         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1679         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1680         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1681         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1682         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1683         (ppc32_linux_ctarregset): New globals.
1684         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1685         (ppc_linux_collect_core_cpgrregset): New function.
1686         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1687         regsets.
1688         (ppc_linux_core_read_description): Check if the tm spr section is
1689         present and set htm in the features struct.
1690         (_initialize_ppc_linux_tdep): Call
1691         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1692         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1693         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1694         Declare.
1695         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1696         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1697         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1698         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1699         New fields.
1700         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1701         Likewise.
1702         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1703         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1704         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1705         New enum fields.
1706         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1707         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1708         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1709         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1710         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1711         <PPC_CTAR_REGNUM>: Likewise.
1712         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1713         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1714         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1715         (IS_CEFP_PSEUDOREG): Define.
1716         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1717         registers.  Return names for the checkpointed DFP, VSX, and EFP
1718         pseudo registers.
1719         (rs6000_pseudo_register_type): Remove initial assert and raise an
1720         internal error in the else clause instead.  Return types for the
1721         checkpointed DFP, VSX, and EFP pseudo registers.
1722         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1723         checkpointed DFP pseudo registers.
1724         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1725         checkpointed VSX pseudo registers.
1726         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1727         from efpr_pseudo_register_read and
1728         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1729         registers.
1730         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1731         Handle checkpointed DFP, VSX, and EFP registers.
1732         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1733         (efp_ax_pseudo_register_collect): New functions.
1734         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1735         register logic to new functions.  Handle checkpointed DFP, VSX,
1736         and EFP pseudo registers.
1737         (rs6000_gdbarch_init): Look for and validate the htm features.
1738         Include checkpointed DFP, VSX and EFP pseudo-registers.
1739         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1740         HTM registers.
1741
1742 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1743
1744         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1745         without altivec or fpu.
1746
1747 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1748             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1749
1750         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1751         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1752         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1753         Define if not already defined.
1754         * features/rs6000/power-ebb.xml: New file.
1755         * features/rs6000/power-linux-pmu.xml: New file.
1756         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1757         features.
1758         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1759         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1760         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1761         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1762         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1763         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1764         fetch_regset with ebb and pmu regsets.
1765         (store_register, store_ppc_registers): Call store_regset with ebb
1766         and pmu regsets.
1767         (ppc_linux_nat_target::read_description): Set isa207 field in the
1768         features struct if ebb and pmu are avaiable.
1769         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1770         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1771         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1772         and pmu regsets.
1773         (ppc_linux_core_read_description): Check if the pmu section is
1774         present and set isa207 in the features struct.
1775         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1776         (ppc32_linux_pmuregset): Declare.
1777         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1778         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1779         <ppc_sier_regnum>: New field.
1780         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1781         New enum values.
1782         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1783         values.
1784         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1785         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1786         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1787         ebb and pmu features.
1788
1789 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1790             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1791
1792         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1793         (tdesc_powerpc_isa207_vsx64l): Declare.
1794         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1795         (struct ppc_linux_features) <isa207>: New field.
1796         (ppc_linux_no_features): Add initializer for isa207 field.
1797         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1798         new tdescs.
1799         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1800         (NT_PPC_TAR): Define if not already defined.
1801         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1802         rs6000/powerpc-isa207-vsx64l.
1803         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1804         rs6000/powerpc-isa207-vsx64l.xml.
1805         * features/rs6000/power-tar.xml: New file.
1806         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1807         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1808         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1809         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1810         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1811         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1812         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1813         fetch_regset with the TAR regset.
1814         (store_register, store_ppc_registers): Call store_regset with the
1815         TAR regset.
1816         (ppc_linux_nat_target::read_description): Set isa207 field in the
1817         features struct if needed.
1818         * ppc-linux-tdep.c: Include
1819         features/rs6000/powerpc-isa207-vsx32l.c and
1820         features/rs6000/powerpc-isa207-vsx64l.c.
1821         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1822         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1823         regset.
1824         (ppc_linux_core_read_description): Check if the tar section is
1825         present and set isa207 in the features struct.
1826         (_initialize_ppc_linux_tdep): Call
1827         initialize_tdesc_powerpc_isa207_vsx32l and
1828         initialize_tdesc_powerpc_isa207_vsx64l.
1829         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1830         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1831         (enum) <PPC_TAR_REGNUM>: New enum value.
1832         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1833         feature.
1834         (ppc_process_record_op31): Record changes to TAR.
1835
1836 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1837             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1838
1839         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1840         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1841         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1842         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1843         (struct ppc_linux_features) <ppr_dscr>: New field.
1844         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1845         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1846         new tdescs.
1847         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1848         Define if not already defined.
1849         * features/Makefile (WHICH): Add
1850         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1851         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1852         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1853         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1854         * features/rs6000/power-dscr.xml: New file.
1855         * features/rs6000/power-ppr.xml: New file.
1856         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1857         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1858         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1859         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1860         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1861         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1862         * ppc-linux-nat.c: Include <sys/uio.h>.
1863         (fetch_regset, store_regset, check_regset): New functions.
1864         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1865         DSCR and PPR regsets.
1866         (store_register, store_ppc_registers): Call store_regset with
1867         DSCR and PPR regsets.
1868         (ppc_linux_get_hwcap2): New function.
1869         (ppc_linux_nat_target::read_description): Call
1870         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1871         features struct if needed.
1872         * ppc-linux-tdep.c: Include
1873         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1874         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1875         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1876         (ppc32_linux_dscrregset): New globals.
1877         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1878         and dscr regsets.
1879         (ppc_linux_core_read_description): Check if the ppr and dscr
1880         sections are present and set ppr_dscr in the features struct.
1881         (_initialize_ppc_linux_tdep): Call
1882         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1883         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1884         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1885         (ppc32_linux_dscrregset): Declare.
1886         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1887         <ppc_dscr_regnum>: New field.
1888         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1889         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1890         and dscr features.
1891         (ppc_process_record_op31): Record changes to PPR and DSCR.
1892
1893 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1894
1895         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1896         second initializer line for the have_* variables.  Initialize
1897         have_fpu to 0 instead of 1.
1898
1899 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1900
1901         * arch/ppc-linux-common.c (ppc_linux_match_description):
1902         Parenthesize tdesc assignements and indent them properly.
1903
1904 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1905
1906         * ppc-linux-nat.c (fetch_register): Change if statement to else
1907         if.
1908         (store_register): Likewise.
1909
1910 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1911
1912         * rs6000-tdep.c: Remove reggroups.h include.
1913         (rs6000_pseudo_register_reggroup_p): Remove.
1914         (rs6000_gdbarch_init): Remove call to
1915         set_tdesc_pseudo_register_reggroup_p.
1916
1917 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1918
1919         * reggroups.c (default_register_reggroup_p): Return true for
1920         decfloat registers and float_reggroup.
1921
1922 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1923
1924         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1925         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1926         ppc_linux_collect_vrregset by regcache_collect_regset.
1927
1928 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1929
1930         * linux-tdep.c (linux_collect_regset_section_cb): Use
1931         std::vector<gdb_byte> instead of char * and malloc for buf.
1932         Remove xfree.
1933
1934 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1935
1936         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1937         symtab_start instead of always using language_unknown.
1938
1939 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1940
1941         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1942         READ_P parameter, catch and ignore register access errors from
1943         either the old or new MISA location.
1944         (riscv_has_feature): Update call to riscv_read_misa_reg.
1945
1946 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1947
1948         * python/py-function.c (convert_values_to_python): Return
1949         gdbpy_ref<>.  Add header comment.
1950         (fnpy_call): Adjust.
1951
1952 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1953
1954         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1955         (cmdpy_completer_handle_brkchars): Adjust.
1956         (cmdpy_completer): Adjust.
1957
1958 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1959
1960         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1961         Pass correct regnum to raw_supply_zeroed.
1962
1963 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1964
1965         * regcache.c (cooked_read_test): Add CSKY to the list of
1966         architectures with a save_reggroup
1967
1968 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1969
1970         PR gdb/23368
1971         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1972         transfer terminal state from old new new inferior.
1973         * terminal.h (swap_terminal_info): New function.
1974         * inflow.c (swap_terminal_info): New function.
1975
1976 2018-10-23  Tom Tromey  <tom@tromey.com>
1977
1978         * record-btrace.c (get_thread_current_frame_id): Rename from
1979         get_thread_current_frame.  Return a frame_id.
1980         (record_btrace_start_replaying): Update.
1981
1982 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1983
1984         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1985         for CSRs.
1986
1987 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1988
1989         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1990         have_nonsteppable_watchpoint attribute to 1.
1991
1992 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1993
1994         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1995         register names.
1996         (struct register_alias): Rename to...
1997         (struct riscv_register_alias): ...this, and update comment.
1998         (riscv_register_aliases): Update type, and alias names.  Remove
1999         CSR names from this list.
2000         (riscv_register_name): Use riscv_gdb_reg_names for int and float
2001         register names.  Add an extra assertion.
2002         (riscv_is_regnum_a_named_csr): New function.
2003         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
2004
2005 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
2006
2007         * configure.tgt: Add configuration for s12z.
2008         * s12z-tdep.c:  New file.
2009         * NEWS: Mention new target.
2010
2011 2018-10-22  Jim Wilson  <jimw@sifive.com>
2012
2013         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
2014         FP reg smaller than FP reg size, and fill with -1 instead of 0.
2015
2016         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
2017         (riscv_register_type): Use them.
2018         (riscv_print_one_register_info): Handle union of floats same as float.
2019         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
2020         riscv_fpreg_q_type fields.
2021
2022 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
2023
2024         * gdbarch.sh (gdbarch_num_cooked_regs): New.
2025         * gdbarch.h: Re-generate.
2026         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
2027         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
2028         * eval.c (evaluate_subexp_standard): Likewise.
2029         * findvar.c (value_of_register): Likewise.
2030         (value_of_register_lazy): Likewise.
2031         (address_from_register): Likewise.
2032         * frame.c (get_frame_register_bytes): Likewise.
2033         * gdbarch-selftests.c (register_to_value_test): Likewise.
2034         * h8300-tdep.c (h8300_register_type): Likewise.
2035         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
2036         (i386_svr4_reg_to_regnum): Likewise.
2037         * infcmd.c (default_print_registers_info): Likewise.
2038         (registers_info): Likewise.
2039         (print_vector_info): Likewise.
2040         (default_print_float_info): Likewise.
2041         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
2042         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
2043         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
2044         (mi_cmd_data_list_changed_registers): Likewise.
2045         (mi_cmd_data_list_register_values): Likewise.
2046         (mi_cmd_data_write_register_values): Likewise.
2047         (mi_cmd_trace_frame_collected): Likewise.
2048         * mips-tdep.c (print_gp_register_row): Likewise.
2049         (mips_print_registers_info): Likewise.
2050         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
2051         * regcache.c (init_regcache_descr): Likewise.
2052         (register_size): Likewise.
2053         (register_dump::dump): Likewise.
2054         (cooked_read_test): Likewise.
2055         (cooked_write_test): Likewise.
2056         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
2057         (rs6000_gdbarch_init): Likewise.
2058         * stabsread.c (stab_reg_to_regnum): Likewise.
2059         * stack.c (info_frame_command): Likewise.
2060         * target-descriptions.c (tdesc_register_name): Likewise.
2061         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
2062         * tui/tui-regs.c (tui_show_register_group): Likewise.
2063         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
2064         (user_reg_map_regnum_to_name): Likewise.
2065         (value_of_user_reg): Likewise.
2066         (maintenance_print_user_registers): Likewise.
2067         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
2068         (xtensa_register_name): Likewise.
2069         (xtensa_register_type): Likewise.
2070         (xtensa_reg_to_regnum): Likewise.
2071         (xtensa_pseudo_register_read): Likewise.
2072         (xtensa_pseudo_register_write): Likewise.
2073
2074 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
2075
2076         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
2077         correctly-sized buffer with raw_read.
2078         (amd64_pseudo_register_write): Use correctly-sized buffer for
2079         raw_read/raw_write.
2080
2081 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2082
2083         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
2084         in add_prefix_cmd of set print type.
2085
2086 2018-10-19  Tom Tromey  <tom@tromey.com>
2087
2088         PR tui/18388:
2089         * NEWS: Mention tabset deprecation.
2090         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
2091         (update_tab_width): New function.
2092         (tui_set_tab_width, tui_show_tab_width): New functions.
2093         (tui_set_tab_width_command): Use update_tab_width.
2094         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
2095         Add new "set tui tab-width" command.
2096         * tui/tui-source.c (tui_set_source_content): Update.
2097         * tui/tui-disasm.c (tui_set_disassem_content): Update.
2098         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
2099         Don't declare.
2100         (tui_tab_width): Declare.
2101         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
2102         (tui_set_default_tab_len): Remove.
2103
2104 2018-10-19  Tom Tromey  <tom@tromey.com>
2105
2106         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
2107         (key_is_backspace, tui_getc): Don't declare.
2108         * tui/tui-io.c (key_is_start_sequence): Now static.
2109         (key_is_end_sequence, key_is_backspace): Remove.
2110         (tui_getc): Now static.
2111
2112 2018-10-19  Tom Tromey  <tom@tromey.com>
2113
2114         * symfile.c (reread_symbols): Clear "static_links".
2115
2116 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
2117
2118         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2119         define.
2120         (aarch64_linux_sigframe_init): Extra boundary checks.
2121
2122 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2123
2124         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2125         the possibly non-existent tdesc type 'vec128', but the type of raw
2126         register v16 instead.
2127
2128 2018-10-19  Gary Benson <gbenson@redhat.com>
2129
2130         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2131
2132 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2133
2134         PR cli/23785
2135         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2136         NULL.
2137
2138 2018-10-17  Paul Koning  <paul_koning@dell.com>
2139
2140         * charset.c (convert_between_encodings): Fix unsigned overflow.
2141
2142 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2143
2144         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2145         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2146         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2147         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2148         New functions.
2149         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2150         and fbsd_info_proc_mappings_header.
2151         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2152         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2153         New.
2154
2155 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2156
2157         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2158         Solaris Maintainer.
2159
2160 2018-10-15  Tom Tromey  <tom@tromey.com>
2161
2162         * tui/tui.c (strcat_to_buf): Remove casts.
2163         * tui/tui-winsource.c (tui_show_source_line)
2164         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2165         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2166         * tui/tui-windata.c (tui_first_data_item_displayed)
2167         (tui_delete_data_content_windows, tui_erase_data_content)
2168         (tui_display_all_data, tui_display_data_from)
2169         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2170         * tui/tui-win.c (tui_set_win_height)
2171         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2172         casts.
2173         * tui/tui-win.c (tui_resize_all): Remove casts.
2174         (tui_scroll_backward_command, tui_set_focus)
2175         (tui_set_tab_width_command): Likewise.
2176         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2177         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2178         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2179         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2180         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2181         Remove casts.
2182
2183 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2184
2185         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2186         AArch64/ARM maintainer.
2187
2188 2018-10-11  Gary Benson <gbenson@redhat.com>
2189
2190         * interps.h (interp::m_name): Make private and mutable.
2191         * interps.c (interp::~interp): Free m_name.
2192
2193 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2194             Simon Marchi <simark@simark.ca>
2195
2196         * README (`configure' options): Add documentation for new
2197         "--enable-unit-tests" option.
2198         * acinclude.m4: Include "selftest.m4".
2199         * configure: Regenerate.
2200         * configure.ac: Use "GDB_AC_SELFTEST".
2201         * maint.c (maintenance_selftest): Update message informing
2202         that selftests have been disabled.
2203         (maintenance_info_selftests): Likewise.
2204         * selftest.m4: New file.
2205
2206 2018-10-10  Gary Benson <gbenson@redhat.com>
2207
2208         * remote.c (remote_target::remote_send_printf): Add
2209         missing va_end found by Coverity.
2210
2211 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2212
2213         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2214
2215 2018-10-09  Tom Tromey  <tom@tromey.com>
2216
2217         * configure: Rebuild.
2218         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2219         * NEWS: Update --enable-ubsan documentation.
2220
2221 2018-10-09  Gary Benson <gbenson@redhat.com>
2222
2223         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2224         found by Coverity.
2225
2226 2018-10-08  Tom Tromey  <tom@tromey.com>
2227
2228         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2229         variable.
2230         (riscv_fbsd_init_abi): Likewise.
2231
2232 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2233         * valops.c (value_struct_elt_for_reference): Rename local variable
2234         to work around the shadowing a previous local warning.
2235
2236 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2237
2238         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2239         * NEWS: Mention new FreeBSD/riscv native configuration.
2240         * configure.host: Add riscv*-*-freebsd*.
2241         * configure.nat: Likewise.
2242         * riscv-fbsd-nat.c: New file.
2243
2244 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2245
2246         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2247         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2248         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2249         * NEWS: Mention new FreeBSD/riscv target.
2250         * configure.tgt: Add riscv*-*-freebsd*.
2251         * riscv-fbsd-tdep.c: New file.
2252         * riscv-fbsd-tdep.h: New file.
2253
2254 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2255
2256         * regcache.h (struct regcache_map_entry): Note that this type can
2257         be used with traditional frame caches.
2258         * trad-frame.c (trad_frame_set_reg_regmap): New.
2259         * trad-frame.h (trad_frame_set_reg_regmap): New.
2260
2261 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2262
2263         PR c++/16841
2264         * valops.c (get_virtual_base_offset): New function.
2265         (value_struct_elt_for_reference): Use it to get virtual base offset
2266         and add it in calculating class member address.
2267
2268 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2269
2270         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2271         (check_producer): Check if the producer is codewarrior.
2272         (producer_is_codewarrior): New function.
2273         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2274         produced by codewarrior.
2275         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2276
2277 2018-10-06  Tom Tromey  <tom@tromey.com>
2278
2279         PR python/19399:
2280         * python/py-inferior.c: Add "architecture" entry.
2281         (infpy_architecture): New function.
2282
2283 2018-10-06  Tom Tromey  <tom@tromey.com>
2284
2285         PR python/21765:
2286         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2287         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2288         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2289         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2290
2291 2018-10-06  Tom Tromey  <tom@tromey.com>
2292
2293         PR build/17077:
2294         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2295         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2296         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2297         #include.
2298
2299 2018-10-06  Tom Tromey  <tom@tromey.com>
2300
2301         * python/py-breakpoint.c (bppy_get_location): Handle a
2302         bp_breakpoint without a location.
2303
2304 2018-10-06  Tom Tromey  <tom@tromey.com>
2305
2306         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2307         (_RegEx): Reformat help text.
2308         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2309         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2310         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2311         text.
2312         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2313         (EnableXMethod, DisableXMethod): Remove help indentation.
2314         Capitalize meta-syntactic variables.
2315         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2316         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2317         Capitalize meta-syntactic variables.
2318         * python/lib/gdb/command/explore.py (ExploreCommand)
2319         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2320         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2321         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2322         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2323         Remove help indentation.
2324         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2325         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2326         (DisableFrameFilter, SetFrameFilterPriority)
2327         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2328
2329 2018-10-06  Tom Tromey  <tom@tromey.com>
2330
2331         PR tui/28819:
2332         * tui/tui-io.c (gdb_wgetch): New function.
2333         (tui_mld_getc, tui_getc): Use it.
2334
2335 2018-10-05  Tom Tromey  <tom@tromey.com>
2336
2337         * sol-thread.c (sol_thread_target::wait): Rename inner
2338         "save_ptid".
2339
2340 2018-10-04  Tom Tromey  <tom@tromey.com>
2341
2342         * configure: Rebuild.
2343         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2344
2345 2018-10-04  Tom Tromey  <tom@tromey.com>
2346
2347         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2348         declaration of "block".
2349
2350 2018-10-04  Tom Tromey  <tom@tromey.com>
2351
2352         * common/filestuff.c (fdwalk): Remove inner declaration of
2353         "result".
2354
2355 2018-10-04  Tom Tromey  <tom@tromey.com>
2356
2357         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2358         "structs_addr" and hoist declaration.
2359
2360 2018-10-04  Tom Tromey  <tom@tromey.com>
2361
2362         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2363         variable "size".
2364
2365 2018-10-04  Tom Tromey  <tom@tromey.com>
2366
2367         * mdebugread.c (parse_partial_symbols): Use std::string.
2368
2369 2018-10-04  Tom Tromey  <tom@tromey.com>
2370
2371         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2372         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2373         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2374         header.
2375         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2376         more inner scope.
2377         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2378         * varobj.c (varobj_update): Rename inner "newobj",
2379         "type_changed".
2380         * valprint.c (generic_emit_char): Rename inner "buf".
2381         * valops.c (find_overload_match): Rename inner "temp".
2382         (value_struct_elt_for_reference): Declare "v" in more inner
2383         scope.
2384         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2385         * unittests/array-view-selftests.c (run_tests): Rename inner
2386         "vec".
2387         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2388         header.
2389         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2390         "tsv" in more inner scope.
2391         (print_one_static_tracepoint_marker): Rename inner
2392         "tuple_emitter".
2393         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2394         (tic6x_push_dummy_call): Don't redeclare "addr".
2395         * target-float.c: Declare "dto" lower.
2396         * symtab.c (lookup_local_symbol): Rename inner "sym".
2397         (find_pc_sect_line): Rename inner "pc".
2398         * stack.c (print_frame): Don't redeclare "gdbarch".
2399         (return_command): Rename inner "gdbarch".
2400         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2401         "sp".
2402         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2403         header.
2404         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2405         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2406         scope.
2407         * remote.c (remote_target::update_thread_list): Don't redeclare
2408         "tp".
2409         (remote_target::process_initial_stop_replies): Rename inner
2410         "thread".
2411         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2412         (remote_target::wait_as): Don't redeclare "stop_reply".
2413         (remote_target::get_thread_local_address): Rename inner
2414         "result".
2415         (remote_target::get_tib_address): Likewise.
2416
2417         * regcache.c (cooked_read_test): Rename "regnum".
2418         * record-btrace.c (cmd_record_btrace_start): Rename inner
2419         "exception".
2420         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2421         loop header.
2422         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2423         header.
2424         (ppu2spu_sniffer): Rename inner "buf".
2425         * parse.c (operator_check_standard): Rename inner "type",
2426         "objfile".
2427         * p-valprint.c (pascal_val_print): Introduce new scope for
2428         "low_bound", "high_bound".
2429         * p-exp.y (yylex): Declare "i" in loop header.
2430         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2431         Lower declaration of "s".
2432         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2433         header.
2434         (nios2_push_dummy_call): Rename "len".
2435         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2436         "buf".
2437         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2438         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2439         (linux_xfer_osdata_modules): Likewise.
2440         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2441         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2442         (mips_o64_push_dummy_call): Likewise.
2443         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2444         "op".
2445         * mi/mi-main.c (list_available_thread_groups): Rename inner
2446         "tuple_emitter".
2447         (mi_cmd_data_read_memory): Rename inner "opts".
2448         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2449         "tuple_emitter".
2450         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2451         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2452         more inner scope.
2453         (parse_partial_symbols): Rename inner "pst", "p", "name"
2454         * main.c (captured_main_1): Rename inner "i"s.
2455         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2456         "oso2".
2457         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2458         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2459         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2460         (handle_signal_stop): Rename inner "gdbarch".
2461         (handle_command): Declare "signum" in loop header.
2462         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2463         "status".
2464         (examine_prologue): Rename inner "sol" and "sof".
2465         (ia64_extract_return_value): Rename inner "val".  Declare another
2466         "val" in a more inner scope.
2467         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2468         inner scope.
2469         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2470         "except".
2471         * findvar.c (default_read_var_value): Don't redeclare "addr".
2472         * f-exp.y (yylex): Declare "i" in loop header.
2473         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2474         Rename inner "type", "expect_type".
2475         (evaluate_subexp_for_sizeof): Rename inner "pc".
2476         * elfread.c (elf_symfile_read): Rename inner "abfd".
2477         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2478         "bytes_read".
2479         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2480         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2481         (dwarf_decode_line_header): Rename inner "lh".
2482         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2483         "offset".  Declare "i" in loop header.
2484         (disassemble_dwarf_expression): Rename inner "addr_size".
2485         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2486         inner "result".
2487         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2488         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2489         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2490         "inner_list_emitter".
2491         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2492         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2493         declaration in a block.
2494         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2495         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2496         "obstack_final_size".
2497         * cp-support.c (inspect_type): Declare "i" in loop header.
2498         * compile/compile.c (compile_instance::insert_symbol_error):
2499         Rename inner "e".
2500         * common/agent.c (agent_run_command): Remove inner "ret"
2501         declaration.
2502         * coffread.c (coff_symfile_read): Rename inner "name".
2503         (coff_symfile_read): Rename inner "abfd".
2504         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2505         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2506         "high".
2507         * c-exp.y (lex_one_token): Move "len" declaration lower.
2508         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2509         "gdbarch".
2510         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2511         "b".
2512         (watch_command_1): Declare "mark" later.
2513         (clear_command): Don't shadow "a" or "b".
2514         (delete_command): Rename inner "b".
2515         (delete_trace_command): Likewise.
2516         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2517         "op".
2518         (arm_gdbarch_init): Remove inner "e_flags".
2519         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2520         "offset" in inner blocks.
2521
2522 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2523
2524         * dwarf-index-write.c (file_write): Don't write if the vector is
2525         empty.
2526
2527 2018-10-05  Tom de Vries  <tdevries@suse.de>
2528
2529         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2530         PyArg_ParseTuple call.
2531
2532 2018-10-05  Tom de Vries  <tdevries@suse.de>
2533
2534         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2535         PyArg_ParseTuple call.
2536
2537 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2538
2539         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2540         to avoid exceeding 80 characters per line limit.
2541
2542 2018-10-04  Tom Tromey  <tom@tromey.com>
2543
2544         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2545         (reread_symbols): Update.
2546         * complaints.h (clear_complaints): Remove argument.
2547         * complaints.c (enum complaint_series): Remove.
2548         (series): Remove global.
2549         (complaint_internal): Update.
2550         (clear_complaints): Remove argument.
2551
2552 2018-10-04  Tom Tromey  <tom@tromey.com>
2553
2554         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2555         debugging symbols" message if there is a separate debug objfile.
2556
2557 2018-10-04  Tom Tromey  <tom@tromey.com>
2558
2559         PR cli/19551:
2560         * symfile.c (symbol_file_add_with_addrs): Update output.
2561         * psymtab.c (require_partial_symbols): Update output.
2562
2563 2018-10-04  Tom Tromey  <tom@tromey.com>
2564
2565         PR cli/22234:
2566         * complaints.c: Emit \n.
2567
2568 2018-10-04  Tom Tromey  <tom@tromey.com>
2569
2570         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2571         (separate_debug_file_exists, find_separate_debug_file)
2572         (add_symbol_file_command, reread_symbols, allocate_symtab)
2573         (allocate_compunit_symtab): Use filtered printing, not
2574         unfiltered.
2575         * psymtab.c (require_partial_symbols, dump_psymtab)
2576         (allocate_psymtab): Use filtered printing, not unfiltered.
2577
2578 2018-10-04  Tom Tromey  <tom@tromey.com>
2579
2580         * complaints.c (complaint_internal): Correctly check complaint
2581         count.
2582
2583 2018-10-04  Tom Tromey  <tom@tromey.com>
2584
2585         * complaints.h (struct complaints): Remove declaration.
2586         * complaints.c (clear_complaints): Remove an unused variable.
2587
2588 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2589
2590         * MAINTAINERS (Write After Approval): Add self.
2591
2592 2018-10-03  Tom Tromey  <tom@tromey.com>
2593
2594         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2595         "buffer_contents".
2596         * coffread.c (coff_symtab_read): Initialize "newobj".
2597
2598 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2599
2600         * dwarf2read.c (read_func_scope): Remove struct keyword in
2601         range-based for.
2602
2603 2018-10-03  Tom Tromey  <tom@tromey.com>
2604
2605         * README: Mention --enable-ubsan.
2606         * NEWS: Mention --enable-ubsan.
2607         * acinclude.m4: Include sanitize.m4.
2608         * configure: Rebuild.
2609         * configure.ac: Call AM_GDB_UBSAN.
2610         * sanitize.m4: New file.
2611
2612 2018-10-03  Tom Tromey  <tom@tromey.com>
2613
2614         * expression.h (enum exp_opcode): Use uint8_t as base type.
2615         * expprint.c (op_name): Handle invalid opcodes.
2616
2617 2018-10-03  Tom Tromey  <tom@tromey.com>
2618
2619         * parse.c (prefixify_expression): Add assert.
2620         (parse_exp_in_context_1): Throw exception if the expression is
2621         empty.
2622
2623 2018-10-03  Tom Tromey  <tom@tromey.com>
2624
2625         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2626
2627 2018-10-03  Tom Tromey  <tom@tromey.com>
2628
2629         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2630
2631 2018-10-03  Tom Tromey  <tom@tromey.com>
2632
2633         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2634         unsigned.
2635
2636 2018-10-03  Tom Tromey  <tom@tromey.com>
2637
2638         * findvar.c (extract_integer): Do work in an unsigned type.
2639
2640 2018-10-03  Tom Tromey  <tom@tromey.com>
2641
2642         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2643         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2644         base type.
2645         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2646         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2647         type.
2648         * c-lang.h (enum c_string_type_values): Use unsigned as base
2649         type.
2650         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2651
2652 2018-10-03  Tom Tromey  <tom@tromey.com>
2653
2654         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2655         <~dwarf2_frame_state_reg_info>: Update.
2656         <dwarf2_frame_state_reg_info>: Update.
2657         <alloc_regs>: Add assertion.  Update.
2658         <reg>: Now a std::vector.
2659         <num_regs>: Remove.
2660         <swap>: Update.
2661         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2662         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2663
2664 2018-10-03  Tom Tromey  <tom@tromey.com>
2665
2666         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2667
2668 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2669
2670         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2671
2672 2018-10-02  Tom Tromey  <tom@tromey.com>
2673
2674         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2675
2676 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2677
2678         * NEWS: Mention changed commands.
2679         * ser-uds.c: New file.
2680         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2681         * configure: Regenerate.
2682         * Makefile.in: Add new file.
2683         * serial.c (serial_open): Check if filename is a socket
2684         and lookup the appropriate interface accordingly.
2685
2686 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2687
2688         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2689         define.
2690         (AARCH64_EXTRA_MAGIC): Likewise.
2691         (AARCH64_FPSIMD_MAGIC): Likewise.
2692         (AARCH64_SVE_MAGIC): Likewise.
2693         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2694         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2695         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2696         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2697         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2698         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2699         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2700         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2701         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2702         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2703         (read_aarch64_ctx): Add function.
2704         (aarch64_linux_sigframe_init): Detect FP registers.
2705
2706 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2707
2708         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2709         (AARCH64_D0_REGNUM): Likewise.
2710         (AARCH64_S0_REGNUM): Likewise.
2711         (AARCH64_H0_REGNUM): Likewise.
2712         (AARCH64_B0_REGNUM): Likewise.
2713         (AARCH64_SVE_V0_REGNUM): Likewise.
2714         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2715         (AARCH64_D0_REGNUM): Likewise.
2716         (AARCH64_S0_REGNUM): Likewise.
2717         (AARCH64_H0_REGNUM): Likewise.
2718         (AARCH64_B0_REGNUM): Likewise.
2719         (AARCH64_SVE_V0_REGNUM): Likewise.
2720
2721 2018-10-01  Gary Benson <gbenson@redhat.com>
2722
2723         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2724         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2725         prfpregset_t instead of gdb_prfpregset_t.
2726         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2727         * configure, config.in: Rebuild.
2728
2729 2018-10-01  Gary Benson <gbenson@redhat.com>
2730
2731         * common/gdb_proc_service.h: New file, factored out from...
2732         * gdb_proc_service.h: Moved common code to the above file.
2733         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2734
2735 2018-10-01  Gary Benson <gbenson@redhat.com>
2736
2737         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2738         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2739
2740 2018-10-01  Gary Benson <gbenson@redhat.com>
2741
2742         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2743         (AC_CHECK_HEADERS): Check for linux/elf.h.
2744         * configure, config.in: Rebuild.
2745         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2746         doesn't define elf_fpregset_t.
2747
2748 2018-10-01  Gary Benson <gbenson@redhat.com>
2749
2750         * gdb_proc_service.h: Whitespace change.
2751
2752 2018-10-01  Tom Tromey  <tom@tromey.com>
2753
2754         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2755         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2756         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2757
2758 2018-10-01  Tom Tromey  <tom@tromey.com>
2759
2760         * README: Minor change.
2761
2762 2018-09-30  Pedro Alves  <palves@redhat.com>
2763
2764         * darwin-nat-info.c (darwin_debug_regions_recurse)
2765         (info_mach_exceptions_command): Remove unused local variables.
2766         * darwin-nat.c (darwin_decode_notify_message)
2767         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2768         (darwin_stop_inferior, darwin_setup_exceptions)
2769         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2770         (darwin_nat_target::attach, darwin_nat_target::detach)
2771         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2772         local variables.
2773         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2774         variables.
2775
2776 2018-09-29  Tom Tromey  <tom@tromey.com>
2777
2778         * README: Remove some leftover text.
2779
2780 2018-09-29  Tom Tromey  <tom@tromey.com>
2781
2782         * PROBLEMS: Rewrite.
2783         * README: Update.
2784
2785 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2786
2787         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2788         case with explicit breakpoint kind.
2789         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2790         'additional_info' and related logic.
2791         (riscv_debug_breakpoints): New variable.
2792         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2793         instruction to determine the breakpoint kind.
2794         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2795         flag.  Update description of 'set/show riscv
2796         use-compressed-breakpoints' flag.
2797
2798 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2799
2800         (NEWS): Mention changes to frame related commands.
2801         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2802         (add_prefix_cmd_suppress_notification): New function.
2803         (add_com_suppress_notification): Call
2804         add_cmd_suppress_notification.
2805         * command.h (add_cmd_suppress_notification): Declare.
2806         (add_prefix_cmd_suppress_notification): Declare.
2807         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2808         (parse_frame_specification): Moved from stack.c, with
2809         simplification to handle a single argument.
2810         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2811         switch to the selected frame.  Add a header comment.
2812         * stack.c: Remove 'safe-ctype.h' include.
2813         (find_frame_for_function): Add declaration.
2814         (find_frame_for_address): New function.
2815         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2816         (frame_selection_by_function_completer): New function.
2817         (info_frame_command): Rename to...
2818         (info_frame_command_core): ...this, and update parameter types.
2819         (select_frame_command): Rename to...
2820         (select_frame_command_core): ...this, and update parameter types.
2821         (frame_command): Rename to...
2822         (frame_command_core): ...this, and update parameter types.
2823         (class frame_command_helper): New class to wrap implementations of
2824         frame related sub-commands.
2825         (frame_apply_cmd_list): New static global.
2826         (frame_cmd_list): Make static.
2827         (select_frame_cmd_list): New global for sub-commands.
2828         (info_frame_cmd_list): New global for sub-commands.
2829         (_initialize_stack): Register sub-commands for 'frame',
2830         'select-frame', and 'info frame'.  Update 'frame apply' commands
2831         to use frame_apply_cmd_list.  Move function local static
2832         frame_apply_list to file static frame_apply_cmd_list for
2833         consistency.
2834         * stack.h (select_frame_command): Delete declarationn.
2835         (select_frame_for_mi): Declare new function.
2836
2837 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2838
2839         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2840         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2841         and NOP.
2842
2843 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2844
2845         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2846
2847 2018-09-26  Tom Tromey  <tom@tromey.com>
2848
2849         * valops.c (auto_abandon): Remove dead code.
2850
2851 2018-09-26  Tom Tromey  <tom@tromey.com>
2852
2853         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2854
2855 2018-09-24  Tom Tromey  <tom@tromey.com>
2856
2857         * common/pathstuff.c (get_standard_cache_dir): Make
2858         "xdg_cache_home" and "home" const.
2859         * top.c (init_history): Make "tmpenv" const.
2860         * main.c (get_init_files): Make "homedir" const.
2861
2862 2018-09-23  Tom Tromey  <tom@tromey.com>
2863
2864         PR python/18852:
2865         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2866
2867 2018-09-23  Tom Tromey  <tom@tromey.com>
2868
2869         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2870         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2871         * python/python-internal.h (gdbpy_handle_exception): Declare.
2872         * python/py-utils.c (gdbpy_handle_exception): New function.
2873
2874 2018-09-23  Tom Tromey  <tom@tromey.com>
2875
2876         PR python/17284:
2877         * python/py-type.c (typy_template_argument): Check for negative
2878         argument number.
2879
2880 2018-09-23  Tom Tromey  <tom@tromey.com>
2881
2882         PR python/14062:
2883         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2884
2885 2018-09-23  Tom Tromey  <tom@tromey.com>
2886
2887         PR python/18170:
2888         * python/py-value.c (valpy_int): Allow conversion from pointer
2889         type.
2890
2891 2018-09-23  Tom Tromey  <tom@tromey.com>
2892
2893         PR python/20126:
2894         * python/py-value.c (valpy_int): Respect type sign.
2895
2896 2018-09-23  Tom Tromey  <tom@tromey.com>
2897
2898         PR python/18352;
2899         * python/py-value.c (valpy_float): Allow conversions from int or
2900         char.
2901         (valpy_int, valpy_long): Allow conversions from float.
2902
2903 2018-09-23  Tom Tromey  <tom@tromey.com>
2904
2905         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2906         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2907
2908 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2909
2910         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2911         __sighndlr.
2912         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2913
2914 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2915
2916         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2917         target_terminal::ours().
2918
2919 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2920
2921         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2922         of vl to ULONGEST.
2923
2924 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2925
2926         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2927         redundant condition.
2928
2929 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2930
2931         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2932
2933         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2934         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2935         * sol-thread.c (ps_pdmodel): Don't guard definition.
2936
2937         * procfs.c: Fix formatting.
2938
2939         * procfs.c (sysset_t_alloc): Remove.
2940         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2941         (procfs_debug_inferior): Likewise.
2942         (procfs_set_exec_trap): Likewise.
2943         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2944         (proc_set_traced_sysexit): Likewise.
2945
2946         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2947         (dead_procinfo): Likewise.
2948         (proc_warn): Likewise.
2949         (proc_error): Likewise.
2950         (proc_get_LDT_entry): Likewise.
2951         (do_attach): Likewise.
2952         (procfs_target::pid_to_str): Likewise.
2953         (iterate_over_mappings): Likewise.
2954
2955         * procfs.c (create_procinfo): Fix ARI warning.
2956         (proc_get_status): Likewise.
2957         (proc_stop_process): Likewise.
2958         (proc_run_process): Likewise.
2959         (proc_kill): Likewise.
2960         (proc_get_LDT_entry): Likewise.
2961         (procfs_find_LDT_entry): Likewise.
2962         (proc_update_threads): Likewise.
2963         (proc_iterate_over_threads): Likewise.
2964         (do_attach): Likewise.
2965         (procfs_xfer_memory): Likewise.
2966         (invalidate_cache): Likewise.
2967         (procfs_target::resume): Likewise.
2968         (procfs_init_inferior): Likewise.
2969         (procfs_set_exec_trap): Likewise.
2970         (procfs_target::thread_alive): Likewise.
2971         (procfs_target::pid_to_exec_file): Likewise.
2972         (iterate_over_mappings): Likewise.
2973         (procfs_target::make_corefile_notes): Likewise.
2974         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2975
2976         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2977         (procfs_find_LDT_entry): Likewise.
2978         * sol-thread.c (ps_lgetLDT): Likewise.
2979
2980 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2981
2982         PR tdep/17903
2983         * procfs.c (procfs_target): Declare pid_to_exec_file.
2984         (procfs_target::pid_to_exec_file): New.
2985
2986 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2987
2988         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2989         renaming.
2990         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2991         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2992
2993 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2994
2995         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2996         (supply_fpregset, fill_fpregset): Move ...
2997         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2998         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2999         Remove references to ioctl-based procfs.
3000         Include <sys/reg.h>.
3001         Remove PR_MODEL_NATIVE guards.
3002         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
3003         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
3004
3005 2018-09-19  Xavier Roirand  <roirand@adacore.com>
3006
3007         PR gdb/20981:
3008         * solib-darwin.c (darwin_get_dyld_bfd): New function.
3009         (darwin_solib_get_all_image_info_addr_at_init): Update call.
3010         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
3011
3012 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
3013
3014         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
3015         (fbsd_print_sockaddr_in6): Likewise.
3016
3017 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
3018             Chris January  <chris.january@arm.com>
3019
3020         * eval.c (skip_undetermined_arglist): Skip argument list helper.
3021         (evaluate_subexp_standard): Return a dummy type when
3022         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
3023         OP_F77_UNDETERMINED_ARGLIST case.
3024         * expression.h (enum noside): Update comment.
3025
3026 2018-09-19  George Vasick <george.vasick@oracle.com>
3027
3028         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
3029
3030 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
3031             April Chin <april.chin@oracle.com>
3032             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3033
3034         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
3035         uint_t lwpid_t.
3036         (create_procinfo): Print pids in /proc without leading zeros.
3037
3038 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
3039
3040         * nios2-tdep.c (nios2_gcc_target_options): New.
3041         (nios2_gdb_arch_init): Install new hook.
3042
3043 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
3044
3045         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
3046         New file.
3047         * update-gnulib.sh: Apply patch.
3048         * configure: Re-generate.
3049
3050 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3051
3052         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
3053         description.  Make "info proc" command descriptions more
3054         consistent.
3055
3056 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3057
3058         * NEWS: Mention 'info proc files' command.
3059
3060 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3061
3062         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
3063         descriptors for IP_FILES and IP_ALL.
3064
3065 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3066
3067         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
3068         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
3069         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
3070         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
3071         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
3072         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
3073         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
3074         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
3075         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
3076         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
3077         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
3078         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
3079         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
3080         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
3081         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
3082         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
3083         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
3084         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
3085         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
3086         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
3087         (struct fbsd_sockaddr_un): New types.
3088         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
3089         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
3090         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
3091         (fbsd_core_info_proc_files): New functions.
3092         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
3093         IP_ALL.
3094         * fbsd-tdep.h (fbsd_info_proc_files_header)
3095         (fbsd_info_proc_files_entry): New.
3096
3097 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3098
3099         * defs.h (enum info_proc_what) [IP_FILES]: New value.
3100         * infcmd.c (info_proc_cmd_files): New function.
3101         (_initialize_infcmd): Register 'info proc files' command.
3102
3103 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3104
3105         * gnulib/aclocal-m4-deps.mk: Re-generate.
3106         * gnulib/aclocal.m4: Re-generate.
3107         * gnulib/config.in: Re-generate.
3108         * gnulib/configure: Re-generate.
3109         * gnulib/import/Makefile.am: Re-generate.
3110         * gnulib/import/Makefile.in: Re-generate.
3111         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
3112         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
3113         * gnulib/import/arpa_inet.in.h: New file.
3114         * gnulib/import/inet_ntop.c: New file.
3115         * gnulib/import/m4/arpa_inet_h.m4: New file.
3116         * gnulib/import/m4/inet_ntop.m4: New file.
3117         * gnulib/import/m4/netinet_in_h.m4: New file.
3118         * gnulib/import/m4/socklen.m4: New file.
3119         * gnulib/import/m4/sockpfaf.m4: New file.
3120         * gnulib/import/m4/stdalign.m4: New file.
3121         * gnulib/import/m4/sys_uio_h.m4: New file.
3122         * gnulib/import/netinet_in.in.h: New file.
3123         * gnulib/import/stdalign.in.h: New file.
3124         * gnulib/import/sys_socket.c: New file.
3125         * gnulib/import/sys_socket.in.h: New file.
3126         * gnulib/import/sys_uio.in.h: New file.
3127         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3128         module.
3129
3130 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3131
3132         * gnulib/aclocal-m4-deps.mk: New file.
3133         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3134         deterministically.
3135
3136 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3137
3138         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3139         KVE_PATH.
3140
3141 2018-09-18  Tom Tromey  <tom@tromey.com>
3142
3143         * compile/compile-object-load.c (struct
3144         link_hash_table_cleanup_data): Add constructor and destructor.
3145         Use DISABLE_COPY_AND_ASSIGN.
3146         (~link_hash_table_cleanup_data): Rename from
3147         link_hash_table_free.  Now a destructor.
3148         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3149
3150 2018-09-18  Tom Tromey  <tom@tromey.com>
3151
3152         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3153         * compile/compile-object-load.c (struct munmap_list): Move to
3154         header file.
3155         (munmap_list::add): Rename from munmap_list_add; rewrite.
3156         (munmap_list::~munmap_list): Rename from munmap_list_free.
3157         (munmap_listp_free_cleanup): Remove.
3158         (compile_object_load): Update.
3159         * compile/compile-object-load.h (struct munmap_list): Move from
3160         compile-object-load.c.  Rewrite.
3161
3162 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3163
3164         * aarch64-tdep.c (pass_in_v): Use register size.
3165         (aarch64_extract_return_value): Likewise.
3166         (aarch64_store_return_value): Likewise.
3167
3168 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3169
3170         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3171         rlim_t.
3172
3173 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3174
3175         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3176         Fix short help line.
3177
3178 2018-09-17  Tom Tromey  <tom@tromey.com>
3179
3180         PR python/20445:
3181         * configure: Rebuild.
3182         * configure.ac: Conditionally use -DNDEBUG for Python.
3183
3184 2018-09-17  Tom Tromey  <tom@tromey.com>
3185
3186         * configure: Rebuild.
3187         * configure.ac: Use gmp as a library dependency when checking for
3188         mpfr.
3189
3190 2018-09-17  Pedro Alves  <palves@redhat.com>
3191
3192         * python/py-inferior.c (find_inferior_object): Delete.
3193
3194 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3195
3196         * compile/compile-cplus-types.c
3197         (compile_cplus_instance::enter_scope): Don't use new_scope after
3198         std::move.
3199
3200 2018-09-17  Tom Tromey  <tom@tromey.com>
3201
3202         * common/pathstuff.c (get_standard_cache_dir): Use
3203         ~/Library/Caches on macOS.
3204         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3205
3206 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3207
3208         PR python/23669
3209         * breakpoint.c (commands_cmd_element): New.
3210         (_initialize_breakpoint): Assign commands_cmd_element.
3211         * breakpoint.h (commands_cmd_element): New.
3212         * cli/cli-script.c (while_cmd_element, if_command,
3213         define_cmd_element): New.
3214         (command_name_equals): Remove.
3215         (process_next_line): Compare commands by pointer, not by name.
3216         (_initialize_cli_script): Assign the various cmd_list_element
3217         variables.
3218         * compile/compile.c (compile_cmd_element): New.
3219         (_initialize_compile): Assign compile_cmd_element.
3220         * compile/compile.h (compile_cmd_element): New.
3221         * guile/guile.c (guile_cmd_element): New.
3222         (install_gdb_commands): Assign guile_cmd_element.
3223         * guile/guile.h (guile_cmd_element): New.
3224         * python/python.c (python_cmd_element): New.
3225         (_initialize_python): Assign python_cmd_element.
3226         * python/python.h (python_cmd_element): New.
3227         * tracepoint.c (while_stepping_cmd_element): New.
3228         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3229         * tracepoint.h (while_stepping_cmd_element): New.
3230
3231 2018-09-17  Tom Tromey  <tom@tromey.com>
3232
3233         * infrun.c (save_infcall_suspend_state): Return
3234         infcall_suspend_state_up.
3235         (save_infcall_control_state): Return infcall_control_state_up.
3236         * inferior.h (save_infcall_suspend_state)
3237         (save_infcall_control_state): Declare later.  Return unique
3238         pointers.
3239
3240 2018-09-17  Tom Tromey  <tom@tromey.com>
3241
3242         * infrun.c (struct stop_context): Declare constructor,
3243         destructor, "changed" method.
3244         (stop_context::stop_context): Rename from save_stop_context.
3245         (stop_context::~stop_context): Rename from
3246         release_stop_context_cleanup.
3247         (normal_stop): Update.
3248         (stop_context::changed): Rename from stop_context_changed.  Return
3249         bool.
3250
3251 2018-09-17  Tom Tromey  <tom@tromey.com>
3252
3253         * inferior.h (struct infcall_suspend_state_deleter): New.
3254         (infcall_suspend_state_up): New typedef.
3255         (struct infcall_control_state_deleter): New.
3256         (infcall_control_state_up): New typedef.
3257         (make_cleanup_restore_infcall_suspend_state)
3258         (make_cleanup_restore_infcall_control_state): Don't declare.
3259         * infcall.c (call_function_by_hand_dummy): Update.
3260         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3261         (make_cleanup_restore_infcall_suspend_state): Remove.
3262         (do_restore_infcall_control_state_cleanup)
3263         (make_cleanup_restore_infcall_control_state): Remove.
3264
3265 2018-09-17  Tom Tromey  <tom@tromey.com>
3266
3267         * gdbthread.h (struct thread_control_state): Add initializer.
3268         (class thread_info) <control>: Remove initializer.
3269         * inferior.h (struct inferior_control_state): Add initializer.
3270         (class inferior) <control>: Remove initializer.
3271         (exit_inferior_1): Update.
3272         * infrun.c (struct infcall_control_state): Add constructors.
3273         (save_infcall_control_state): Use new.
3274         (restore_infcall_control_state, discard_infcall_control_state):
3275         Use delete.
3276
3277 2018-09-17  Tom Tromey  <tom@tromey.com>
3278
3279         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3280         unique_ptr.
3281         <siginfo_data>: Now a unique_xmalloc_ptr.
3282         (save_infcall_suspend_state, restore_infcall_suspend_state)
3283         (discard_infcall_suspend_state)
3284         (get_infcall_suspend_state_regcache): Update.
3285
3286 2018-09-17  Tom Tromey  <tom@tromey.com>
3287
3288         * gdbthread.h (struct thread_suspend_state): Add initializers.
3289         (class thread_info) <suspend>: Remove initializer.
3290         * infrun.c (struct infcall_suspend_state): Add initializers.
3291         (save_infcall_suspend_state): Use new.
3292         (discard_infcall_suspend_state): Use delete.
3293
3294 2018-09-16  Tom Tromey  <tom@tromey.com>
3295
3296         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3297         Remove.
3298         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3299         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3300         (py_varobj_iter_new): Likewise.
3301         (py_varobj_get_iterator): Use gdbpy_ref.
3302
3303 2018-09-16  Tom Tromey  <tom@tromey.com>
3304
3305         * python/py-threadevent.c (py_get_event_thread): Simplify.
3306         * python/py-inferior.c (infpy_thread_from_thread_handle):
3307         Return immediately after calling thread_to_thread_object.  Use
3308         Py_RETURN_NONE.
3309         (thread_to_thread_object): Set the exception on a NULL return.
3310
3311 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3312
3313         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3314
3315 2018-09-16  Tom Tromey  <tom@tromey.com>
3316
3317         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3318         Remove.
3319
3320 2018-09-16  Tom Tromey  <tom@tromey.com>
3321
3322         * python/python-internal.h (thread_to_thread_object): Change
3323         return type.
3324         * python/py-inferior.c (thread_to_thread_object): Return a new
3325         reference.
3326         (infpy_thread_from_thread_handle): Update.
3327         * python/py-infthread.c (gdbpy_selected_thread): Update.
3328         * python/py-stopevent.c (create_stop_event_object): Update.
3329         * python/py-threadevent.c (py_get_event_thread): Return a new
3330         reference.
3331         (py_get_event_thread): Update.
3332         * python/py-event.h (py_get_event_thread): Change return type.
3333         * python/py-continueevent.c (create_continue_event_object):
3334         Update.
3335
3336 2018-09-16  Tom Tromey  <tom@tromey.com>
3337
3338         * python/py-progspace.c (pspy_get_objfiles): Update.
3339         * python/python-internal.h (objfile_to_objfile_object): Change
3340         return type.
3341         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3342         Update.
3343         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3344         Update.
3345         * python/python.c (gdbpy_get_current_objfile): Update.
3346         (gdbpy_objfiles): Update.
3347         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3348         Update.
3349         (objfile_to_objfile_object): Return a new reference.
3350         * python/py-symtab.c (stpy_get_objfile): Update.
3351         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3352         Update.
3353
3354 2018-09-16  Tom Tromey  <tom@tromey.com>
3355
3356         * python/py-inferior.c (infpy_get_progspace): Update.
3357         * python/python-internal.h (pspace_to_pspace_object): Change
3358         return type.
3359         * python/py-newobjfileevent.c
3360         (create_clear_objfiles_event_object): Update.
3361         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3362         Update.
3363         * python/python.c (gdbpy_get_current_progspace): Update.
3364         (gdbpy_progspaces): Update.
3365         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3366         reference.
3367         * python/py-objfile.c (objfpy_get_progspace): Update.
3368         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3369         Update.
3370
3371 2018-09-16  Tom Tromey  <tom@tromey.com>
3372
3373         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3374         (solib_name, block_for_pc, find_pc_line): New functions.
3375         (execute_unwinders): Update.
3376         * python/py-block.c (gdbpy_block_for_pc): Remove.
3377         * python/py-inferior.c (infpy_get_progspace): New function.
3378         (inferior_object_getset) <progspace>: Add.
3379         * python/py-progspace.c (pspy_objfiles): Rewrite.
3380         (pspy_solib_name, pspy_block_for_pc)
3381         (pspy_find_pc_line, pspy_is_valid): New functions.
3382         (progspace_object_methods): Add entries for solib_name,
3383         block_for_pc, find_pc_line, is_valid.
3384         * python/python-internal.h (gdbpy_block_for_pc)
3385         (build_objfiles_list): Don't declare.
3386         * python/python.c: Don't include solib.h.
3387         (gdbpy_solib_name, gdbpy_find_pc_line)
3388         (gdbpy_get_current_progspace, build_objfiles_list)
3389         (gdbpy_objfiles): Remove.
3390         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3391         solib_name, find_pc_line>: Remove entries.
3392
3393 2018-09-16  Tom Tromey  <tom@tromey.com>
3394
3395         * top.c (new_ui_command): Use GNU style for metasyntactic
3396         variables.
3397         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3398         variables.
3399         * maint.c (maintenance_translate_address): Remove "<>" around
3400         text.
3401         * interps.c (interpreter_exec_cmd): Use GNU style for
3402         metasyntactic variables.
3403         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3404         metasyntactic variables.
3405         * tracepoint.c (tfind_range_command): Use GNU style for
3406         metasyntactic variables.
3407         (tfind_outside_command): Likewise.
3408         (_initialize_tracepoint): Likewise.
3409         * remote.c (extended_remote_target::create_inferior): Use GNU
3410         style for metasyntactic variables.
3411         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3412         metasyntactic variables.
3413         (adi_assign_command): Likewise.
3414
3415 2018-09-16  Tom Tromey  <tom@tromey.com>
3416
3417         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3418         metasyntactic variables.  Print message if no disassembler options
3419         are available.
3420
3421 2018-09-15  Tom Tromey  <tom@tromey.com>
3422
3423         * infcmd.c (get_inferior_args): Return const char *.
3424         * inferior.h (get_inferior_args): Return type now const.
3425         * linux-tdep.c (linux_fill_prpsinfo): Update.
3426         * procfs.c (procfs_target::make_corefile_notes): Update.
3427
3428 2018-09-07  Tom Tromey  <tom@tromey.com>
3429
3430         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3431         inside the TRY.
3432
3433 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3434
3435         * nios2-tdep.c (nios2_type_align): New.
3436         (nios2_gdb_arch_init): Install type_align hook.
3437
3438 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3439
3440         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3441         type that is neither object file owned, nor gdbarch owned.
3442         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3443         gdbarch is non-NULL.
3444         (alloc_type_instance): Allocate non-objfile owned types on the
3445         gdbarch obstack.
3446         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3447         using TYPE_ALLOC to ensure memory is allocated on the correct
3448         obstack.
3449         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3450         obstack, or the gdbarch obstack.
3451         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3452
3453 2018-09-14  Tom Tromey  <tom@tromey.com>
3454
3455         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3456         block.
3457
3458 2018-09-14  Tom Tromey  <tom@tromey.com>
3459
3460         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3461
3462 2018-09-13  Tom Tromey  <tom@tromey.com>
3463
3464         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3465         static.
3466
3467 2018-09-13  Tom Tromey  <tom@tromey.com>
3468
3469         * exec.c (try_open_exec_file): Use std::string.
3470
3471 2018-09-13  Tom Tromey  <tom@tromey.com>
3472
3473         * utils.h (gdb_bfd_errmsg): Return std::string.
3474         * exec.c (exec_file_attach): Update.
3475         * compile/compile-object-load.c (compile_object_load): Update.
3476         * utils.c (gdb_bfd_errmsg): Return std::string.
3477
3478 2018-09-13  Tom Tromey  <tom@tromey.com>
3479
3480         * procfs.c (struct procinfo_deleter): New.
3481         (procinfo_up): New typedef.
3482         (do_destroy_procinfo_cleanup): Remove.
3483         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3484
3485 2018-09-13  Tom Tromey  <tom@tromey.com>
3486
3487         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3488
3489 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3490 2018-09-13  Tom Tromey  <tom@tromey.com>
3491
3492         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3493         (pspy_get_objfiles): New function.
3494         (progspace_object_methods): New.
3495         (pspace_object_type): Add tp_methods callback.
3496         * python/python-internal.h (build_objfiles_list): New
3497         declaration.
3498         * python/python.c (build_objfiles_list): New function.
3499         (gdbpy_objfiles): Implement using build_objfiles_list.
3500         * NEWS: Mention the Progspace.objfiles method.
3501
3502 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3503
3504         * python/py-inferior.c (infpy_get_progspace): New function.
3505         (inferior_object_getset): Add progspace property.
3506         * NEWS: Mention the new property.
3507
3508 2018-09-13  Tom Tromey  <tom@tromey.com>
3509
3510         PR rust/23650:
3511         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3512
3513 2018-09-13  Tom Tromey  <tom@tromey.com>
3514
3515         PR rust/23626:
3516         * rust-lang.c (rust_enum_variant): Now static.
3517         (rust_empty_enum_p): New function.
3518         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3519         Handle empty enum.
3520
3521 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3522
3523         * python/py-inferior.c (infpy_repr): New.
3524         (inferior_object_type): Register infpy_repr.
3525         * python/py-objfile.c (objfpy_repr): New.
3526         (objfile_object_type): Register objfpy_repr.
3527
3528 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3529
3530         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3531
3532 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3533
3534         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3535         typo.
3536
3537 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3538
3539         * common/common-utils.c: Don't include '<sys/stat.h>'.
3540         (is_regular_file): Move to...
3541         * common/filestuff.c (is_regular_file): ... here.
3542         * common/common-utils.h (is_regular_file): Move to...
3543         * common/filestuff.h (is_regular_file): ... here.
3544
3545 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3546
3547         * skip.c (debug_skip): New variable.
3548         (skiplist_entry::do_skip_file_p): Add debug output.
3549         (skiplist_entry::do_skip_gfile_p): Likewise.
3550         (skiplist_entry::skip_function_p): Likewise.
3551         (_initialize_step_skip): Create debug command.
3552         * NEWS: Mention set/show debug skip.
3553
3554 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3555
3556         * darwin-nat.c (should_disable_startup_with_shell):
3557         New function.
3558         (darwin_nat_target::create_inferior): Add call.
3559
3560 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3561
3562         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3563         inf_port, msg_state>: Initialize.
3564         (struct darwin_thread_info) <signaled, single_step>: Change
3565         type and initialize.
3566         (struct darwin_thread_info) <event>: Initialize.
3567
3568 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3569
3570         PR gdb/23555
3571         PR gdb/23558
3572         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3573         guesses.
3574
3575 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3576
3577         Revert:
3578         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3579
3580         PR gdb/23555
3581         PR gdb/23558
3582         * gnulib/aclocal.m4: Regenerate.
3583         * gnulib/config.in: Regenerate.
3584         * gnulib/configure: Regenerate.
3585         * gnulib/import/Makefile.am: Update.
3586         * gnulib/import/Makefile.in: Update.
3587         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3588         * gnulib/import/_Noreturn.h: ... this.
3589         * gnulib/import/alloca.in.h: Update.
3590         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3591         * gnulib/import/arg-nonnull.h: ... this.
3592         * gnulib/import/assure.h: Update.
3593         * gnulib/import/at-func.c: Update.
3594         * gnulib/import/basename-lgpl.c: Update.
3595         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3596         * gnulib/import/c++defs.h: ... this.
3597         * gnulib/import/canonicalize-lgpl.c: Update.
3598         * gnulib/import/cdefs.h: Update.
3599         * gnulib/import/chdir-long.c: Update.
3600         * gnulib/import/chdir-long.h: Update.
3601         * gnulib/import/cloexec.c: Update.
3602         * gnulib/import/cloexec.h: Update.
3603         * gnulib/import/close.c: Update.
3604         * gnulib/import/closedir.c: Update.
3605         * gnulib/import/config.charset: Update.
3606         * gnulib/import/dirent-private.h: Update.
3607         * gnulib/import/dirent.in.h: Update.
3608         * gnulib/import/dirfd.c: Update.
3609         * gnulib/import/dirname-lgpl.c: Update.
3610         * gnulib/import/dirname.h: Update.
3611         * gnulib/import/dosname.h: Update.
3612         * gnulib/import/dup-safer-flag.c: Update.
3613         * gnulib/import/dup-safer.c: Update.
3614         * gnulib/import/dup.c: Update.
3615         * gnulib/import/dup2.c: Update.
3616         * gnulib/import/errno.in.h: Update.
3617         * gnulib/import/error.c: Update.
3618         * gnulib/import/error.h: Update.
3619         * gnulib/import/exitfail.c: Update.
3620         * gnulib/import/exitfail.h: Update.
3621         * gnulib/import/extra/update-copyright: Update.
3622         * gnulib/import/fchdir.c: Update.
3623         * gnulib/import/fcntl.c: Update.
3624         * gnulib/import/fcntl.in.h: Update.
3625         * gnulib/import/fd-hook.c: Update.
3626         * gnulib/import/fd-hook.h: Update.
3627         * gnulib/import/fd-safer-flag.c: Update.
3628         * gnulib/import/fd-safer.c: Update.
3629         * gnulib/import/fdopendir.c: Update.
3630         * gnulib/import/filename.h: Update.
3631         * gnulib/import/filenamecat-lgpl.c: Update.
3632         * gnulib/import/filenamecat.h: Update.
3633         * gnulib/import/flexmember.h: Update.
3634         * gnulib/import/float+.h: Update.
3635         * gnulib/import/float.c: Update.
3636         * gnulib/import/float.in.h: Update.
3637         * gnulib/import/fnmatch.c: Update.
3638         * gnulib/import/fnmatch.in.h: Update.
3639         * gnulib/import/fnmatch_loop.c: Update.
3640         * gnulib/import/fpucw.h: Update.
3641         * gnulib/import/frexp.c: Update.
3642         * gnulib/import/frexpl.c: Update.
3643         * gnulib/import/fstat.c: Update.
3644         * gnulib/import/fstatat.c: Update.
3645         * gnulib/import/getcwd-lgpl.c: Update.
3646         * gnulib/import/getcwd.c: Update.
3647         * gnulib/import/getdtablesize.c: Update.
3648         * gnulib/import/getlogin_r.c: Update.
3649         * gnulib/import/getprogname.c: Update.
3650         * gnulib/import/getprogname.h: Update.
3651         * gnulib/import/gettext.h: Update.
3652         * gnulib/import/gettimeofday.c: Update.
3653         * gnulib/import/glob-libc.h: Update.
3654         * gnulib/import/glob.c: Update.
3655         * gnulib/import/glob.in.h: Update.
3656         * gnulib/import/glob_internal.h: Update.
3657         * gnulib/import/glob_pattern_p.c: Update.
3658         * gnulib/import/globfree.c: Update.
3659         * gnulib/import/hard-locale.c: Update.
3660         * gnulib/import/hard-locale.h: Update.
3661         * gnulib/import/intprops.h: Update.
3662         * gnulib/import/inttypes.in.h: Update.
3663         * gnulib/import/isnan.c: Update.
3664         * gnulib/import/isnand-nolibm.h: Update.
3665         * gnulib/import/isnand.c: Update.
3666         * gnulib/import/isnanl-nolibm.h: Update.
3667         * gnulib/import/isnanl.c: Update.
3668         * gnulib/import/itold.c: Update.
3669         * gnulib/import/libc-config.h: Update.
3670         * gnulib/import/limits.in.h: Update.
3671         * gnulib/import/localcharset.c: Update.
3672         * gnulib/import/localcharset.h: Update.
3673         * gnulib/import/localtime-buffer.c: Update.
3674         * gnulib/import/localtime-buffer.h: Update.
3675         * gnulib/import/lstat.c: Update.
3676         * gnulib/import/m4/00gnulib.m4: Update.
3677         * gnulib/import/m4/__inline.m4: Update.
3678         * gnulib/import/m4/absolute-header.m4: Update.
3679         * gnulib/import/m4/alloca.m4: Update.
3680         * gnulib/import/m4/builtin-expect.m4: Update.
3681         * gnulib/import/m4/canonicalize.m4: Update.
3682         * gnulib/import/m4/chdir-long.m4: Update.
3683         * gnulib/import/m4/close.m4: Update.
3684         * gnulib/import/m4/closedir.m4: Update.
3685         * gnulib/import/m4/configmake.m4: Update.
3686         * gnulib/import/m4/d-ino.m4: Update.
3687         * gnulib/import/m4/d-type.m4: Update.
3688         * gnulib/import/m4/dirent_h.m4: Update.
3689         * gnulib/import/m4/dirfd.m4: Update.
3690         * gnulib/import/m4/dirname.m4: Update.
3691         * gnulib/import/m4/double-slash-root.m4: Update.
3692         * gnulib/import/m4/dup.m4: Update.
3693         * gnulib/import/m4/dup2.m4: Update.
3694         * gnulib/import/m4/eealloc.m4: Update.
3695         * gnulib/import/m4/environ.m4: Update.
3696         * gnulib/import/m4/errno_h.m4: Update.
3697         * gnulib/import/m4/error.m4: Update.
3698         * gnulib/import/m4/exponentd.m4: Update.
3699         * gnulib/import/m4/exponentl.m4: Update.
3700         * gnulib/import/m4/extensions.m4: Update.
3701         * gnulib/import/m4/extern-inline.m4: Update.
3702         * gnulib/import/m4/fchdir.m4: Update.
3703         * gnulib/import/m4/fcntl-o.m4: Update.
3704         * gnulib/import/m4/fcntl.m4: Update.
3705         * gnulib/import/m4/fcntl_h.m4: Update.
3706         * gnulib/import/m4/fdopendir.m4: Update.
3707         * gnulib/import/m4/filenamecat.m4: Update.
3708         * gnulib/import/m4/flexmember.m4: Update.
3709         * gnulib/import/m4/float_h.m4: Update.
3710         * gnulib/import/m4/fnmatch.m4: Update.
3711         * gnulib/import/m4/fnmatch_h.m4: Update.
3712         * gnulib/import/m4/fpieee.m4: Update.
3713         * gnulib/import/m4/frexp.m4: Update.
3714         * gnulib/import/m4/frexpl.m4: Update.
3715         * gnulib/import/m4/fstat.m4: Update.
3716         * gnulib/import/m4/fstatat.m4: Update.
3717         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3718         * gnulib/import/m4/getcwd-path-max.m4: Update.
3719         * gnulib/import/m4/getcwd.m4: Update.
3720         * gnulib/import/m4/getdtablesize.m4: Update.
3721         * gnulib/import/m4/getlogin.m4: Update.
3722         * gnulib/import/m4/getlogin_r.m4: Update.
3723         * gnulib/import/m4/getpagesize.m4: Update.
3724         * gnulib/import/m4/getprogname.m4: Update.
3725         * gnulib/import/m4/gettimeofday.m4: Update.
3726         * gnulib/import/m4/glibc21.m4: Update.
3727         * gnulib/import/m4/glob.m4: Update.
3728         * gnulib/import/m4/glob_h.m4: Update.
3729         * gnulib/import/m4/gnulib-cache.m4: Update.
3730         * gnulib/import/m4/gnulib-common.m4: Update.
3731         * gnulib/import/m4/gnulib-comp.m4: Update.
3732         * gnulib/import/m4/gnulib-tool.m4: Update.
3733         * gnulib/import/m4/hard-locale.m4: Update.
3734         * gnulib/import/m4/include_next.m4: Update.
3735         * gnulib/import/m4/inttypes-pri.m4: Update.
3736         * gnulib/import/m4/inttypes.m4: Update.
3737         * gnulib/import/m4/isnand.m4: Update.
3738         * gnulib/import/m4/isnanl.m4: Update.
3739         * gnulib/import/m4/largefile.m4: Update.
3740         * gnulib/import/m4/limits-h.m4: Update.
3741         * gnulib/import/m4/localcharset.m4: Update.
3742         * gnulib/import/m4/locale-fr.m4: Update.
3743         * gnulib/import/m4/locale-ja.m4: Update.
3744         * gnulib/import/m4/locale-zh.m4: Update.
3745         * gnulib/import/m4/localtime-buffer.m4: Update.
3746         * gnulib/import/m4/longlong.m4: Update.
3747         * gnulib/import/m4/lstat.m4: Update.
3748         * gnulib/import/m4/malloc.m4: Update.
3749         * gnulib/import/m4/malloca.m4: Update.
3750         * gnulib/import/m4/math_h.m4: Update.
3751         * gnulib/import/m4/mbrtowc.m4: Update.
3752         * gnulib/import/m4/mbsinit.m4: Update.
3753         * gnulib/import/m4/mbsrtowcs.m4: Update.
3754         * gnulib/import/m4/mbstate_t.m4: Update.
3755         * gnulib/import/m4/memchr.m4: Update.
3756         * gnulib/import/m4/memmem.m4: Update.
3757         * gnulib/import/m4/mempcpy.m4: Update.
3758         * gnulib/import/m4/memrchr.m4: Update.
3759         * gnulib/import/m4/mkdir.m4: Update.
3760         * gnulib/import/m4/mkstemp.m4: Update.
3761         * gnulib/import/m4/mmap-anon.m4: Update.
3762         * gnulib/import/m4/mode_t.m4: Update.
3763         * gnulib/import/m4/msvc-inval.m4: Update.
3764         * gnulib/import/m4/msvc-nothrow.m4: Update.
3765         * gnulib/import/m4/multiarch.m4: Update.
3766         * gnulib/import/m4/nocrash.m4: Update.
3767         * gnulib/import/m4/off_t.m4: Update.
3768         * gnulib/import/m4/onceonly.m4: Update.
3769         * gnulib/import/m4/open-cloexec.m4: Update.
3770         * gnulib/import/m4/open.m4: Update.
3771         * gnulib/import/m4/openat.m4: Update.
3772         * gnulib/import/m4/opendir.m4: Update.
3773         * gnulib/import/m4/pathmax.m4: Update.
3774         * gnulib/import/m4/rawmemchr.m4: Update.
3775         * gnulib/import/m4/readdir.m4: Update.
3776         * gnulib/import/m4/readlink.m4: Update.
3777         * gnulib/import/m4/realloc.m4: Update.
3778         * gnulib/import/m4/rename.m4: Update.
3779         * gnulib/import/m4/rewinddir.m4: Update.
3780         * gnulib/import/m4/rmdir.m4: Update.
3781         * gnulib/import/m4/save-cwd.m4: Update.
3782         * gnulib/import/m4/secure_getenv.m4: Update.
3783         * gnulib/import/m4/setenv.m4: Update.
3784         * gnulib/import/m4/signal_h.m4: Update.
3785         * gnulib/import/m4/ssize_t.m4: Update.
3786         * gnulib/import/m4/stat-time.m4: Update.
3787         * gnulib/import/m4/stat.m4: Update.
3788         * gnulib/import/m4/std-gnu11.m4: Update.
3789         * gnulib/import/m4/stdbool.m4: Update.
3790         * gnulib/import/m4/stddef_h.m4: Update.
3791         * gnulib/import/m4/stdint.m4: Update.
3792         * gnulib/import/m4/stdio_h.m4: Update.
3793         * gnulib/import/m4/stdlib_h.m4: Update.
3794         * gnulib/import/m4/strchrnul.m4: Update.
3795         * gnulib/import/m4/strdup.m4: Update.
3796         * gnulib/import/m4/strerror.m4: Update.
3797         * gnulib/import/m4/string_h.m4: Update.
3798         * gnulib/import/m4/strstr.m4: Update.
3799         * gnulib/import/m4/strtok_r.m4: Update.
3800         * gnulib/import/m4/sys_socket_h.m4: Update.
3801         * gnulib/import/m4/sys_stat_h.m4: Update.
3802         * gnulib/import/m4/sys_time_h.m4: Update.
3803         * gnulib/import/m4/sys_types_h.m4: Update.
3804         * gnulib/import/m4/tempname.m4: Update.
3805         * gnulib/import/m4/time_h.m4: Update.
3806         * gnulib/import/m4/unistd-safer.m4: Update.
3807         * gnulib/import/m4/unistd_h.m4: Update.
3808         * gnulib/import/m4/warn-on-use.m4: Update.
3809         * gnulib/import/m4/wchar_h.m4: Update.
3810         * gnulib/import/m4/wchar_t.m4: Update.
3811         * gnulib/import/m4/wctype_h.m4: Update.
3812         * gnulib/import/m4/wint_t.m4: Update.
3813         * gnulib/import/malloc.c: Update.
3814         * gnulib/import/malloc/scratch_buffer.h: Update.
3815         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3816         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3817         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3818         * gnulib/import/malloca.c: Update.
3819         * gnulib/import/malloca.h: Update.
3820         * gnulib/import/malloca.valgrind: Update.
3821         * gnulib/import/math.in.h: Update.
3822         * gnulib/import/mbrtowc.c: Update.
3823         * gnulib/import/mbsinit.c: Update.
3824         * gnulib/import/mbsrtowcs-impl.h: Update.
3825         * gnulib/import/mbsrtowcs-state.c: Update.
3826         * gnulib/import/mbsrtowcs.c: Update.
3827         * gnulib/import/memchr.c: Update.
3828         * gnulib/import/memmem.c: Update.
3829         * gnulib/import/mempcpy.c: Update.
3830         * gnulib/import/memrchr.c: Update.
3831         * gnulib/import/mkdir.c: Update.
3832         * gnulib/import/mkstemp.c: Update.
3833         * gnulib/import/msvc-inval.c: Update.
3834         * gnulib/import/msvc-inval.h: Update.
3835         * gnulib/import/msvc-nothrow.c: Update.
3836         * gnulib/import/msvc-nothrow.h: Update.
3837         * gnulib/import/open.c: Update.
3838         * gnulib/import/openat-die.c: Update.
3839         * gnulib/import/openat-priv.h: Update.
3840         * gnulib/import/openat-proc.c: Update.
3841         * gnulib/import/openat.c: Update.
3842         * gnulib/import/openat.h: Update.
3843         * gnulib/import/opendir.c: Update.
3844         * gnulib/import/pathmax.h: Update.
3845         * gnulib/import/pipe-safer.c: Update.
3846         * gnulib/import/rawmemchr.c: Update.
3847         * gnulib/import/readdir.c: Update.
3848         * gnulib/import/readlink.c: Update.
3849         * gnulib/import/realloc.c: Update.
3850         * gnulib/import/ref-add.sin: Update.
3851         * gnulib/import/ref-del.sin: Update.
3852         * gnulib/import/rename.c: Update.
3853         * gnulib/import/rewinddir.c: Update.
3854         * gnulib/import/rmdir.c: Update.
3855         * gnulib/import/same-inode.h: Update.
3856         * gnulib/import/save-cwd.c: Update.
3857         * gnulib/import/save-cwd.h: Update.
3858         * gnulib/import/scratch_buffer.h: Update.
3859         * gnulib/import/secure_getenv.c: Update.
3860         * gnulib/import/setenv.c: Update.
3861         * gnulib/import/signal.in.h: Update.
3862         * gnulib/import/stat-time.c: Update.
3863         * gnulib/import/stat-time.h: Update.
3864         * gnulib/import/stat-w32.c: Update.
3865         * gnulib/import/stat-w32.h: Update.
3866         * gnulib/import/stat.c: Update.
3867         * gnulib/import/stdbool.in.h: Update.
3868         * gnulib/import/stddef.in.h: Update.
3869         * gnulib/import/stdint.in.h: Update.
3870         * gnulib/import/stdio.in.h: Update.
3871         * gnulib/import/stdlib.in.h: Update.
3872         * gnulib/import/str-two-way.h: Update.
3873         * gnulib/import/strchrnul.c: Update.
3874         * gnulib/import/strdup.c: Update.
3875         * gnulib/import/streq.h: Update.
3876         * gnulib/import/strerror-override.c: Update.
3877         * gnulib/import/strerror-override.h: Update.
3878         * gnulib/import/strerror.c: Update.
3879         * gnulib/import/string.in.h: Update.
3880         * gnulib/import/stripslash.c: Update.
3881         * gnulib/import/strnlen1.c: Update.
3882         * gnulib/import/strnlen1.h: Update.
3883         * gnulib/import/strstr.c: Update.
3884         * gnulib/import/strtok_r.c: Update.
3885         * gnulib/import/sys_stat.in.h: Update.
3886         * gnulib/import/sys_time.in.h: Update.
3887         * gnulib/import/sys_types.in.h: Update.
3888         * gnulib/import/tempname.c: Update.
3889         * gnulib/import/tempname.h: Update.
3890         * gnulib/import/time.in.h: Update.
3891         * gnulib/import/unistd--.h: Update.
3892         * gnulib/import/unistd-safer.h: Update.
3893         * gnulib/import/unistd.in.h: Update.
3894         * gnulib/import/unsetenv.c: Update.
3895         * gnulib/import/verify.h: Update.
3896         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3897         * gnulib/import/wchar.in.h: Update.
3898         * gnulib/import/wctype.in.h: Update.
3899         * gnulib/import/xalloc-oversized.h: Update.
3900         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3901         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3902
3903 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3904
3905         * record-btrace.c (get_thread_current_frame): Remove
3906         old_inferior_ptid.
3907
3908 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3909
3910         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3911         with check_tag to 1 if and only if the type is tagged and the
3912         component being searched cannot been found in the current
3913         view. Otherwise, always call ada_to_fixed_type with
3914         check_tag to 0.
3915
3916 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3917
3918         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3919         declaration.
3920         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3921         * ada-varobj.c (ada_varobj_get_number_of_children,
3922         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3923
3924 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3925
3926         * ada-valprint.c (ada_value_print): Use type instead of
3927         enclosing type.
3928
3929 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3930
3931         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3932         an array of access to unconstrained array.
3933
3934 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3935
3936         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3937         (ada_check_typedef): Use it.
3938
3939 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3940
3941         * ada-varobj.c (ada_varobj_describe_struct_child)
3942         (ada_varobj_describe_child): Handle union case like struct one.
3943
3944 2018-09-10  Tom Tromey  <tom@tromey.com>
3945
3946         PR python/18380:
3947         * python/python.c (_initialize_python): Make example in "python"
3948         help work in Python 3.
3949
3950 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3951
3952         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3953         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3954         $(EXEEXT) to the script, as it is not a program.
3955
3956 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3957
3958         * python/py-prettyprint.c (pretty_print_one_value): Return
3959         gdbpy_ref<>.
3960         (print_string_repr): Adjust.
3961         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3962         * python/python-internal.h (apply_varobj_pretty_printer): Return
3963         gdbpy_ref<>.
3964         * varobj.c (varobj_value_get_print_value): Adjust.
3965
3966 2018-09-08  Tom Tromey  <tom@tromey.com>
3967
3968         PR python/16047:
3969         * python/py-prettyprint.c (pretty_print_one_value): Check for
3970         to_string method.
3971
3972 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3973
3974         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3975         replace_operator_with_call.
3976
3977 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3978
3979         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3980
3981 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3982
3983         * ada-typeprint.c (print_range): Print the bounds using TYPE
3984         rather than its TYPE_TARGET_TYPE.
3985
3986 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3987
3988         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3989         call to ada_to_fixed_value_create.
3990
3991 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3992
3993         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3994
3995 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3996
3997         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3998         by calls to error.
3999
4000 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4001
4002         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
4003         Move update of loop variable "fi".
4004
4005 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
4006
4007         * ada-lang.c (value_assign_to_component): In the case of
4008         big-endian targets, extract the bits of the given VAL
4009         using an src_offset of zero if container is not a scalar.
4010
4011 2018-09-06  Simon Ser  <contact@emersion.fr>
4012
4013         PR gdb/23105
4014         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
4015         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4016         * fbsd-tdep.c (fbsd_make_note_desc): New.
4017         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
4018         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
4019         * target.h (enum target_object) Add FreeBSD-specific
4020         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
4021
4022 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4023
4024         * compile/compile-c.h (generate_c_for_variable_locations):
4025         Change reference to pointer.
4026         * compile/compile-c-support.c (compile_program) <compute>:
4027         Likewise.
4028         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
4029         (generate_c_for_for_one_variable): Likewise
4030         (generate_c_for_variable_locations): Likewise
4031         * compile/compile-c-types.c (compile_c_instance::convert_type):
4032         Likewise
4033         * compile/compile-cplus-symbols.c (convert_one_symbol):
4034         std::move the scope passed to enter_scope.
4035         * compile/compile-cplus-types.c
4036         (compile_cplus_instance::enter_scope): Make parameter
4037         rvalue-reference.
4038         (compile_cplus_instance::new_scope): Change reference to
4039         pointer.
4040         (compile_cplus_instance::convert_type): Likewise
4041         (compile_cplus_convert_typedef): std::move the scope passed to
4042         enter_scope.
4043         (compile_cplus_convert_struct_or_union): Likewise.
4044         (compile_cplus_convert_enum): Likewise.
4045         (compile_cplus_convert_namespace): Likewise.
4046         * compile/compile-cplus.h (compile_cplus_instance)
4047         <enter_scope>: Make parameter rvalue-reference.
4048         * compile/compile-internal.h (compile_instance)
4049         <get_cached_type>: Likewise
4050         * compile/compile-loc2c.c (push): Likewise
4051         (pushf): Likewise
4052         (unary): Likewise
4053         (binary): Likewise
4054         (print_label): Likewise
4055         (pushf_register_address): Likewise
4056         (pushf_register): Likewise
4057         (do_compile_dwarf_expr_to_c): Likewise
4058         (compile_dwarf_expr_to_c): Likewise
4059         (compile_dwarf_bounds_to_c): Likewise
4060         * compile/compile.c (compile_instance::get_cached_type):
4061         Likewise
4062         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
4063         (compile_dwarf_bounds_to_c): Likewise
4064         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
4065         (dwarf2_compile_property_to_c): Likewise
4066         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
4067         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
4068         Likewise
4069
4070 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4071
4072         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
4073         * tui/tui-data.c (init_content_element): Don't initialize it.
4074
4075 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
4076
4077         * tui/tui-data.h (struct tui_win_info)
4078         <detail::opaque>: Remove.
4079         * tui/tui-data.c (init_win_info): Remove assignment.
4080
4081 2018-09-05  Tom Tromey  <tom@tromey.com>
4082
4083         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
4084         -Wformat-nonliteral.
4085         * target-float.c (host_float_ops<T>::to_string)
4086         (host_float_ops<T>::from_string): Use
4087         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4088         * configure: Rebuild.
4089
4090 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
4091
4092         * printcmd.c (printf_c_string): Use
4093         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
4094         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
4095
4096 2018-09-05  Tom Tromey  <tom@tromey.com>
4097
4098         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
4099
4100 2018-09-05  Tom de Vries  <tdevries@suse.de>
4101
4102         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
4103         with resolve_abstract_p == true.
4104         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
4105         defaulting to false. Propagate resolve_abstract_p to
4106         dwarf2_fetch_die_loc_sect_off.
4107         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
4108         parameter, defaulting to false.
4109         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
4110         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
4111         parameter.
4112         * dwarf2read.h (struct die_info): Forward-declare.
4113         (die_info_ptr): New typedef.
4114         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
4115
4116 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
4117
4118         GDB 8.2 released.
4119
4120 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4121             Pedro Alves  <palves@redhat.com>
4122
4123         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4124         "aclocal-m4-deps.mk".  Include file here.
4125         $(srcdir)/aclocal.m4: Add "configure.ac".
4126         * gnulib/aclocal-m4-deps.mk: New file.
4127         * gnulib/update-gnulib.sh: Automatically update
4128         "aclocal-m4-deps.mk".
4129
4130 2018-09-04  Tom Tromey  <tom@tromey.com>
4131
4132         * configure: Rebuild.
4133         * configure.ac: Remove multi-ice code.
4134
4135 2018-09-04  Tom Tromey  <tom@tromey.com>
4136
4137         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4138         (ada-exp.o): Update.
4139
4140 2018-09-04  Tom Tromey  <tom@tromey.com>
4141
4142         * Makefile.in (printcmd.o, target-float.o): Remove.
4143         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4144
4145 2018-09-04  Tom Tromey  <tom@tromey.com>
4146
4147         * gnulib/Makefile.in: Remove obsolete comment.
4148         * Makefile.in: Remove obsolete comment.
4149
4150 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4151
4152         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4153         line with '+'.
4154
4155 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4156
4157         * riscv-tdep.c: Add 'prologue-value.h' include.
4158         (struct riscv_unwind_cache): New struct.
4159         (riscv_debug_unwinder): New global.
4160         (riscv_scan_prologue): Update arguments, capture register details
4161         from prologue scan.
4162         (riscv_skip_prologue): Reformat arguments line, move end of
4163         prologue calculation into riscv_scan_prologue.
4164         (riscv_frame_cache): Update return type, create
4165         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4166         details.
4167         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4168         (riscv_frame_prev_register): Use the trad_frame within the
4169         riscv_unwind_cache.
4170         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4171         flag.
4172
4173 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4174
4175         * trad-frame.h (trad_frame_set_realreg): Declare.
4176         (trad_frame_set_addr): Declare.
4177         * trad-frame.c (trad_frame_set_realreg): Define new function.
4178         (trad_frame_set_addr): Define new function.
4179         (trad_frame_set_reg_realreg): Use new function.
4180         (trad_frame_set_reg_addr): Use new function.
4181
4182 2018-09-01  Keith Seitz  <keiths@redhat.com>
4183
4184         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4185         pulongest instead of "%lld".
4186         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4187         ATTRIBUTE_UNUSED.
4188
4189 2018-08-31  Tom Tromey  <tom@tromey.com>
4190
4191         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4192         variant part type.
4193
4194 2018-08-31  Pedro Alves  <palves@redhat.com>
4195
4196         * gdbarch.h: Regenerate.
4197
4198 2018-08-31  Pedro Alves  <palves@redhat.com>
4199
4200         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4201         * target.h (Hardware watchpoint interfaces): Describe
4202         continuable/steppable/non-steppable watchpoints.
4203         * gdbarch.h, gdbarch.c: Regenerate.
4204
4205 2018-08-31  Pedro Alves  <palves@redhat.com>
4206
4207         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4208         Delete.
4209         * s390-linux-nat.c
4210         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4211         * target.h (target_ops::have_continuable_watchpoint): Delete.
4212         (target_have_continuable_watchpoint): Delete.
4213         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4214         * target-delegates.c: Regenerate.
4215
4216 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4217
4218         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4219         the files present in "gnulib/import/m4/".
4220
4221 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4222
4223         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4224         c.sw, c.swsp, and c.sdsp.
4225
4226 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4227
4228         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4229         (riscv_read_misa_reg): Don't cache value read into inferior data.
4230         (riscv_new_inferior_data): Delete.
4231         (riscv_inferior_data_cleanup): Delete.
4232         (riscv_inferior_data): Delete.
4233         (riscv_invalidate_inferior_data): Delete.
4234         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4235
4236 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4237
4238         * compile/compile-cplus-types.c
4239         (compile_cplus_instance::leave_scope): Take the address of scope
4240         object.
4241         (compile_cplus_instance::convert_qualified_base): Compare quals
4242         to 0.
4243
4244 2018-08-30  Keith Seitz  <keiths@redhat.com>
4245
4246         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4247         Use "%s" and host_address_to_string instead of "%p" in printf.
4248
4249 2018-08-29  Keith Seitz  <keiths@redhat.com>
4250
4251         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4252         and compile-cplus-types.c.
4253         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4254         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4255         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4256         Declare.
4257         * compile/compile-c-support.c: Include compile-cplus.h.
4258         (load_libcompile): Templatize.
4259         (get_compile_context): "New" function.
4260         (c_get_compile_context): Use get_compile_context.
4261         (cplus_get_compile_context): New function.
4262         (cplus_push_user_expression, cplus_pop_user_expression)
4263         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4264         (cplus_compute_program): Define new structs/functions.
4265         * compile/compile-cplus-symmbols.c: New file.
4266         * compile/compile-cplus-types.c: New file.
4267         * compile/compile-cplus.h: New file.
4268         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4269         Declare.
4270         * compile/compile-object-load.c (get_out_value_type): Use
4271         strncmp_iw when comparing symbol names.
4272         (compile_object_load): Add mst_bss and mst_data.
4273         * compile/compile.c (_initialize_compile): Remove
4274         -Wno-implicit-function-declaration from `compile_args'.
4275         * compile/gcc-cp-plugin.h: New file.
4276         * NEWS: Mention C++ compile support and new debug options.
4277
4278 2018-08-29  Keith Seitz  <keiths@redhat.com>
4279
4280         * linespec.c (collect_info::add_symbol): Make virtual.
4281         (struct symbol_searcher_collect_info): New struct.
4282         (symbol_searcher::find_all_symbols): New method.
4283         * symtab.h (class symbol_searcher): New class.
4284
4285 2018-08-29  Keith Seitz  <keiths@redhat.com>
4286
4287         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4288         Change to vector of block_symbol.  Update all users.
4289         (struct collect_info) <symbols>: Likewise.
4290         (collect_info::add_symbol): Take block_symbol as argument.
4291         Update all callers.
4292         (decode_compound_collector) <m_symbols>: Change type to vector
4293         of block_symbol.  Update all users.
4294         (decode_compound_collector::operator ()): Change parameter type
4295         to block_symbol.
4296         (find_method, find_function_symbols, find_linespec_symbols)
4297         (find_label_symbols_in_block, find_label_symbols): Change symbol
4298         vectors to block_symbol vectors.
4299         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4300         block_symbol.
4301
4302 2018-08-29  Keith Seitz  <keiths@redhat.com>
4303
4304         * linespec.c (symbolp): Remove typedef and VEC definitions.
4305         (bound_minimal_symbol_d): Likewise.
4306
4307 2018-08-29  Keith Seitz  <keiths@redhat.com>
4308
4309         * linespec.c (decode_compound_collector::decode_compound_collector):
4310         Remove initialization for `m_symtabs'.
4311         (decode_compound_collector::release_symbols): Change return type
4312         to std::vector.  Update all callers.
4313         (class decode_compound_collector) <m_symbols>: Change type to
4314         std::vector.
4315         (lookup_prefix_sym): Change return type to std::vector.  Update all
4316         callers.
4317         (compare_symbols): Remove.
4318         (std_compare_symbols): Rename to `compare_symbols'.
4319         (find_method): Change `sym_classes' parameter to std::vector.
4320         Update all callers.  Use std::sort to sort sym_classes.
4321         (find_linespec_symbols): Remove cleanup.
4322
4323 2018-08-29  Keith Seitz  <keiths@redhat.com>
4324
4325         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4326         std::vector.  Update all users.
4327         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4328         (struct collect_info) <minimal_symbols>: Likewise.
4329         (compare_msymbols): Return bool.  Change parameters to const
4330         bound_minimal_symbol references.
4331         (find_method, find_function_symbols, find_linespec_symbols): Change
4332         `minsyms' parameter to std::vector.  Update all callers.
4333
4334 2018-08-29  Keith Seitz  <keiths@redhat.com>
4335
4336         * linespec.c (struct linespec) <label_symbols>: Change type to
4337         std::vector.  Update all users.
4338         (find_label_symbols_in_block): Change `result' parameter to
4339         std::vector.  Update all callers.
4340         (find_label_symbols): Return std::vector.  Update all callers.
4341
4342 2018-08-29  Keith Seitz  <keiths@redhat.com>
4343
4344         * linespec.c (struct linespec) <function_symbols>: Change type to
4345         std::vector.  Update all users.
4346         (struct collect_info) <function_symbols>: Likewise.
4347         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4348         (std_compare_symbols): New function.
4349         (find_method, find_function_symbols, find_linespec_symbols)
4350         (find_label_symbols_in_block): Change `symbols' parameter to
4351         std::vector.  Update all callers.
4352         (find_label_symbols): Likewise for `function_symbols' and
4353         `label_funcs_ret'.
4354
4355 2018-08-29  Keith Seitz  <keiths@redhat.com>
4356
4357         * linespec.c (symtab_vector_up): Define.
4358         (struct linespec) <file_symtabs>: Change type to std::vector *.
4359         Update all uses.
4360         (struct collect_info) <file_symtabs>: Likewise.
4361         (collect_symtabs_from_filename): Return symtab_vector_up.
4362         Update all callers.
4363         (decode_objc): Remove cleanup.
4364         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4365         (symtab_collector::release_symtabs): Return symtab_vector_up.
4366         Update all callers.
4367         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4368         Update all users.
4369         (collect_symtabs_from_filename, symtabs_from_filename): Return
4370         symtab_vector_up.  Update all callers.
4371
4372 2018-08-29  Tom Tromey  <tom@tromey.com>
4373
4374         * csky-tdep.c (csky_analyze_prologue): Use
4375         core_addr_to_string_nz.
4376
4377 2018-08-29  Tom Tromey  <tom@tromey.com>
4378
4379         * windows-nat.c (struct xlate_exception) <them>: Change type to
4380         DWORD.
4381         (xlate): Fix formatting.  Remove last entry.
4382         (struct xlate_exception, xlate): Comment out.
4383         (windows_nat_target::resume): Use ranged for.
4384
4385 2018-08-29  Jim Wilson  <jimw@sifive.com>
4386
4387         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4388         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4389         of NT_PRFPREG.
4390         (riscv_linux_nat_target::store_registers): Likewise.
4391
4392 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4393
4394         PR gdb/23555
4395         PR gdb/23558
4396         * gnulib/aclocal.m4: Regenerate.
4397         * gnulib/config.in: Regenerate.
4398         * gnulib/configure: Regenerate.
4399         * gnulib/import/Makefile.am: Update.
4400         * gnulib/import/Makefile.in: Update.
4401         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4402         * gnulib/import/_Noreturn.h: ... this.
4403         * gnulib/import/alloca.in.h: Update.
4404         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4405         * gnulib/import/arg-nonnull.h: ... this.
4406         * gnulib/import/assure.h: Update.
4407         * gnulib/import/at-func.c: Update.
4408         * gnulib/import/basename-lgpl.c: Update.
4409         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4410         * gnulib/import/c++defs.h: ... this.
4411         * gnulib/import/canonicalize-lgpl.c: Update.
4412         * gnulib/import/cdefs.h: Update.
4413         * gnulib/import/chdir-long.c: Update.
4414         * gnulib/import/chdir-long.h: Update.
4415         * gnulib/import/cloexec.c: Update.
4416         * gnulib/import/cloexec.h: Update.
4417         * gnulib/import/close.c: Update.
4418         * gnulib/import/closedir.c: Update.
4419         * gnulib/import/config.charset: Update.
4420         * gnulib/import/dirent-private.h: Update.
4421         * gnulib/import/dirent.in.h: Update.
4422         * gnulib/import/dirfd.c: Update.
4423         * gnulib/import/dirname-lgpl.c: Update.
4424         * gnulib/import/dirname.h: Update.
4425         * gnulib/import/dosname.h: Update.
4426         * gnulib/import/dup-safer-flag.c: Update.
4427         * gnulib/import/dup-safer.c: Update.
4428         * gnulib/import/dup.c: Update.
4429         * gnulib/import/dup2.c: Update.
4430         * gnulib/import/errno.in.h: Update.
4431         * gnulib/import/error.c: Update.
4432         * gnulib/import/error.h: Update.
4433         * gnulib/import/exitfail.c: Update.
4434         * gnulib/import/exitfail.h: Update.
4435         * gnulib/import/extra/update-copyright: Update.
4436         * gnulib/import/fchdir.c: Update.
4437         * gnulib/import/fcntl.c: Update.
4438         * gnulib/import/fcntl.in.h: Update.
4439         * gnulib/import/fd-hook.c: Update.
4440         * gnulib/import/fd-hook.h: Update.
4441         * gnulib/import/fd-safer-flag.c: Update.
4442         * gnulib/import/fd-safer.c: Update.
4443         * gnulib/import/fdopendir.c: Update.
4444         * gnulib/import/filename.h: Update.
4445         * gnulib/import/filenamecat-lgpl.c: Update.
4446         * gnulib/import/filenamecat.h: Update.
4447         * gnulib/import/flexmember.h: Update.
4448         * gnulib/import/float+.h: Update.
4449         * gnulib/import/float.c: Update.
4450         * gnulib/import/float.in.h: Update.
4451         * gnulib/import/fnmatch.c: Update.
4452         * gnulib/import/fnmatch.in.h: Update.
4453         * gnulib/import/fnmatch_loop.c: Update.
4454         * gnulib/import/fpucw.h: Update.
4455         * gnulib/import/frexp.c: Update.
4456         * gnulib/import/frexpl.c: Update.
4457         * gnulib/import/fstat.c: Update.
4458         * gnulib/import/fstatat.c: Update.
4459         * gnulib/import/getcwd-lgpl.c: Update.
4460         * gnulib/import/getcwd.c: Update.
4461         * gnulib/import/getdtablesize.c: Update.
4462         * gnulib/import/getlogin_r.c: Update.
4463         * gnulib/import/getprogname.c: Update.
4464         * gnulib/import/getprogname.h: Update.
4465         * gnulib/import/gettext.h: Update.
4466         * gnulib/import/gettimeofday.c: Update.
4467         * gnulib/import/glob-libc.h: Update.
4468         * gnulib/import/glob.c: Update.
4469         * gnulib/import/glob.in.h: Update.
4470         * gnulib/import/glob_internal.h: Update.
4471         * gnulib/import/glob_pattern_p.c: Update.
4472         * gnulib/import/globfree.c: Update.
4473         * gnulib/import/hard-locale.c: Update.
4474         * gnulib/import/hard-locale.h: Update.
4475         * gnulib/import/intprops.h: Update.
4476         * gnulib/import/inttypes.in.h: Update.
4477         * gnulib/import/isnan.c: Update.
4478         * gnulib/import/isnand-nolibm.h: Update.
4479         * gnulib/import/isnand.c: Update.
4480         * gnulib/import/isnanl-nolibm.h: Update.
4481         * gnulib/import/isnanl.c: Update.
4482         * gnulib/import/itold.c: Update.
4483         * gnulib/import/libc-config.h: Update.
4484         * gnulib/import/limits.in.h: Update.
4485         * gnulib/import/localcharset.c: Update.
4486         * gnulib/import/localcharset.h: Update.
4487         * gnulib/import/localtime-buffer.c: Update.
4488         * gnulib/import/localtime-buffer.h: Update.
4489         * gnulib/import/lstat.c: Update.
4490         * gnulib/import/m4/00gnulib.m4: Update.
4491         * gnulib/import/m4/__inline.m4: Update.
4492         * gnulib/import/m4/absolute-header.m4: Update.
4493         * gnulib/import/m4/alloca.m4: Update.
4494         * gnulib/import/m4/builtin-expect.m4: Update.
4495         * gnulib/import/m4/canonicalize.m4: Update.
4496         * gnulib/import/m4/chdir-long.m4: Update.
4497         * gnulib/import/m4/close.m4: Update.
4498         * gnulib/import/m4/closedir.m4: Update.
4499         * gnulib/import/m4/configmake.m4: Update.
4500         * gnulib/import/m4/d-ino.m4: Update.
4501         * gnulib/import/m4/d-type.m4: Update.
4502         * gnulib/import/m4/dirent_h.m4: Update.
4503         * gnulib/import/m4/dirfd.m4: Update.
4504         * gnulib/import/m4/dirname.m4: Update.
4505         * gnulib/import/m4/double-slash-root.m4: Update.
4506         * gnulib/import/m4/dup.m4: Update.
4507         * gnulib/import/m4/dup2.m4: Update.
4508         * gnulib/import/m4/eealloc.m4: Update.
4509         * gnulib/import/m4/environ.m4: Update.
4510         * gnulib/import/m4/errno_h.m4: Update.
4511         * gnulib/import/m4/error.m4: Update.
4512         * gnulib/import/m4/exponentd.m4: Update.
4513         * gnulib/import/m4/exponentl.m4: Update.
4514         * gnulib/import/m4/extensions.m4: Update.
4515         * gnulib/import/m4/extern-inline.m4: Update.
4516         * gnulib/import/m4/fchdir.m4: Update.
4517         * gnulib/import/m4/fcntl-o.m4: Update.
4518         * gnulib/import/m4/fcntl.m4: Update.
4519         * gnulib/import/m4/fcntl_h.m4: Update.
4520         * gnulib/import/m4/fdopendir.m4: Update.
4521         * gnulib/import/m4/filenamecat.m4: Update.
4522         * gnulib/import/m4/flexmember.m4: Update.
4523         * gnulib/import/m4/float_h.m4: Update.
4524         * gnulib/import/m4/fnmatch.m4: Update.
4525         * gnulib/import/m4/fnmatch_h.m4: Update.
4526         * gnulib/import/m4/fpieee.m4: Update.
4527         * gnulib/import/m4/frexp.m4: Update.
4528         * gnulib/import/m4/frexpl.m4: Update.
4529         * gnulib/import/m4/fstat.m4: Update.
4530         * gnulib/import/m4/fstatat.m4: Update.
4531         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4532         * gnulib/import/m4/getcwd-path-max.m4: Update.
4533         * gnulib/import/m4/getcwd.m4: Update.
4534         * gnulib/import/m4/getdtablesize.m4: Update.
4535         * gnulib/import/m4/getlogin.m4: Update.
4536         * gnulib/import/m4/getlogin_r.m4: Update.
4537         * gnulib/import/m4/getpagesize.m4: Update.
4538         * gnulib/import/m4/getprogname.m4: Update.
4539         * gnulib/import/m4/gettimeofday.m4: Update.
4540         * gnulib/import/m4/glibc21.m4: Update.
4541         * gnulib/import/m4/glob.m4: Update.
4542         * gnulib/import/m4/glob_h.m4: Update.
4543         * gnulib/import/m4/gnulib-cache.m4: Update.
4544         * gnulib/import/m4/gnulib-common.m4: Update.
4545         * gnulib/import/m4/gnulib-comp.m4: Update.
4546         * gnulib/import/m4/gnulib-tool.m4: Update.
4547         * gnulib/import/m4/hard-locale.m4: Update.
4548         * gnulib/import/m4/include_next.m4: Update.
4549         * gnulib/import/m4/inttypes-pri.m4: Update.
4550         * gnulib/import/m4/inttypes.m4: Update.
4551         * gnulib/import/m4/isnand.m4: Update.
4552         * gnulib/import/m4/isnanl.m4: Update.
4553         * gnulib/import/m4/largefile.m4: Update.
4554         * gnulib/import/m4/limits-h.m4: Update.
4555         * gnulib/import/m4/localcharset.m4: Update.
4556         * gnulib/import/m4/locale-fr.m4: Update.
4557         * gnulib/import/m4/locale-ja.m4: Update.
4558         * gnulib/import/m4/locale-zh.m4: Update.
4559         * gnulib/import/m4/localtime-buffer.m4: Update.
4560         * gnulib/import/m4/longlong.m4: Update.
4561         * gnulib/import/m4/lstat.m4: Update.
4562         * gnulib/import/m4/malloc.m4: Update.
4563         * gnulib/import/m4/malloca.m4: Update.
4564         * gnulib/import/m4/math_h.m4: Update.
4565         * gnulib/import/m4/mbrtowc.m4: Update.
4566         * gnulib/import/m4/mbsinit.m4: Update.
4567         * gnulib/import/m4/mbsrtowcs.m4: Update.
4568         * gnulib/import/m4/mbstate_t.m4: Update.
4569         * gnulib/import/m4/memchr.m4: Update.
4570         * gnulib/import/m4/memmem.m4: Update.
4571         * gnulib/import/m4/mempcpy.m4: Update.
4572         * gnulib/import/m4/memrchr.m4: Update.
4573         * gnulib/import/m4/mkdir.m4: Update.
4574         * gnulib/import/m4/mkstemp.m4: Update.
4575         * gnulib/import/m4/mmap-anon.m4: Update.
4576         * gnulib/import/m4/mode_t.m4: Update.
4577         * gnulib/import/m4/msvc-inval.m4: Update.
4578         * gnulib/import/m4/msvc-nothrow.m4: Update.
4579         * gnulib/import/m4/multiarch.m4: Update.
4580         * gnulib/import/m4/nocrash.m4: Update.
4581         * gnulib/import/m4/off_t.m4: Update.
4582         * gnulib/import/m4/onceonly.m4: Update.
4583         * gnulib/import/m4/open-cloexec.m4: Update.
4584         * gnulib/import/m4/open.m4: Update.
4585         * gnulib/import/m4/openat.m4: Update.
4586         * gnulib/import/m4/opendir.m4: Update.
4587         * gnulib/import/m4/pathmax.m4: Update.
4588         * gnulib/import/m4/rawmemchr.m4: Update.
4589         * gnulib/import/m4/readdir.m4: Update.
4590         * gnulib/import/m4/readlink.m4: Update.
4591         * gnulib/import/m4/realloc.m4: Update.
4592         * gnulib/import/m4/rename.m4: Update.
4593         * gnulib/import/m4/rewinddir.m4: Update.
4594         * gnulib/import/m4/rmdir.m4: Update.
4595         * gnulib/import/m4/save-cwd.m4: Update.
4596         * gnulib/import/m4/secure_getenv.m4: Update.
4597         * gnulib/import/m4/setenv.m4: Update.
4598         * gnulib/import/m4/signal_h.m4: Update.
4599         * gnulib/import/m4/ssize_t.m4: Update.
4600         * gnulib/import/m4/stat-time.m4: Update.
4601         * gnulib/import/m4/stat.m4: Update.
4602         * gnulib/import/m4/std-gnu11.m4: Update.
4603         * gnulib/import/m4/stdbool.m4: Update.
4604         * gnulib/import/m4/stddef_h.m4: Update.
4605         * gnulib/import/m4/stdint.m4: Update.
4606         * gnulib/import/m4/stdio_h.m4: Update.
4607         * gnulib/import/m4/stdlib_h.m4: Update.
4608         * gnulib/import/m4/strchrnul.m4: Update.
4609         * gnulib/import/m4/strdup.m4: Update.
4610         * gnulib/import/m4/strerror.m4: Update.
4611         * gnulib/import/m4/string_h.m4: Update.
4612         * gnulib/import/m4/strstr.m4: Update.
4613         * gnulib/import/m4/strtok_r.m4: Update.
4614         * gnulib/import/m4/sys_socket_h.m4: Update.
4615         * gnulib/import/m4/sys_stat_h.m4: Update.
4616         * gnulib/import/m4/sys_time_h.m4: Update.
4617         * gnulib/import/m4/sys_types_h.m4: Update.
4618         * gnulib/import/m4/tempname.m4: Update.
4619         * gnulib/import/m4/time_h.m4: Update.
4620         * gnulib/import/m4/unistd-safer.m4: Update.
4621         * gnulib/import/m4/unistd_h.m4: Update.
4622         * gnulib/import/m4/warn-on-use.m4: Update.
4623         * gnulib/import/m4/wchar_h.m4: Update.
4624         * gnulib/import/m4/wchar_t.m4: Update.
4625         * gnulib/import/m4/wctype_h.m4: Update.
4626         * gnulib/import/m4/wint_t.m4: Update.
4627         * gnulib/import/malloc.c: Update.
4628         * gnulib/import/malloc/scratch_buffer.h: Update.
4629         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4630         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4631         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4632         * gnulib/import/malloca.c: Update.
4633         * gnulib/import/malloca.h: Update.
4634         * gnulib/import/malloca.valgrind: Update.
4635         * gnulib/import/math.in.h: Update.
4636         * gnulib/import/mbrtowc.c: Update.
4637         * gnulib/import/mbsinit.c: Update.
4638         * gnulib/import/mbsrtowcs-impl.h: Update.
4639         * gnulib/import/mbsrtowcs-state.c: Update.
4640         * gnulib/import/mbsrtowcs.c: Update.
4641         * gnulib/import/memchr.c: Update.
4642         * gnulib/import/memmem.c: Update.
4643         * gnulib/import/mempcpy.c: Update.
4644         * gnulib/import/memrchr.c: Update.
4645         * gnulib/import/mkdir.c: Update.
4646         * gnulib/import/mkstemp.c: Update.
4647         * gnulib/import/msvc-inval.c: Update.
4648         * gnulib/import/msvc-inval.h: Update.
4649         * gnulib/import/msvc-nothrow.c: Update.
4650         * gnulib/import/msvc-nothrow.h: Update.
4651         * gnulib/import/open.c: Update.
4652         * gnulib/import/openat-die.c: Update.
4653         * gnulib/import/openat-priv.h: Update.
4654         * gnulib/import/openat-proc.c: Update.
4655         * gnulib/import/openat.c: Update.
4656         * gnulib/import/openat.h: Update.
4657         * gnulib/import/opendir.c: Update.
4658         * gnulib/import/pathmax.h: Update.
4659         * gnulib/import/pipe-safer.c: Update.
4660         * gnulib/import/rawmemchr.c: Update.
4661         * gnulib/import/readdir.c: Update.
4662         * gnulib/import/readlink.c: Update.
4663         * gnulib/import/realloc.c: Update.
4664         * gnulib/import/ref-add.sin: Update.
4665         * gnulib/import/ref-del.sin: Update.
4666         * gnulib/import/rename.c: Update.
4667         * gnulib/import/rewinddir.c: Update.
4668         * gnulib/import/rmdir.c: Update.
4669         * gnulib/import/same-inode.h: Update.
4670         * gnulib/import/save-cwd.c: Update.
4671         * gnulib/import/save-cwd.h: Update.
4672         * gnulib/import/scratch_buffer.h: Update.
4673         * gnulib/import/secure_getenv.c: Update.
4674         * gnulib/import/setenv.c: Update.
4675         * gnulib/import/signal.in.h: Update.
4676         * gnulib/import/stat-time.c: Update.
4677         * gnulib/import/stat-time.h: Update.
4678         * gnulib/import/stat-w32.c: Update.
4679         * gnulib/import/stat-w32.h: Update.
4680         * gnulib/import/stat.c: Update.
4681         * gnulib/import/stdbool.in.h: Update.
4682         * gnulib/import/stddef.in.h: Update.
4683         * gnulib/import/stdint.in.h: Update.
4684         * gnulib/import/stdio.in.h: Update.
4685         * gnulib/import/stdlib.in.h: Update.
4686         * gnulib/import/str-two-way.h: Update.
4687         * gnulib/import/strchrnul.c: Update.
4688         * gnulib/import/strdup.c: Update.
4689         * gnulib/import/streq.h: Update.
4690         * gnulib/import/strerror-override.c: Update.
4691         * gnulib/import/strerror-override.h: Update.
4692         * gnulib/import/strerror.c: Update.
4693         * gnulib/import/string.in.h: Update.
4694         * gnulib/import/stripslash.c: Update.
4695         * gnulib/import/strnlen1.c: Update.
4696         * gnulib/import/strnlen1.h: Update.
4697         * gnulib/import/strstr.c: Update.
4698         * gnulib/import/strtok_r.c: Update.
4699         * gnulib/import/sys_stat.in.h: Update.
4700         * gnulib/import/sys_time.in.h: Update.
4701         * gnulib/import/sys_types.in.h: Update.
4702         * gnulib/import/tempname.c: Update.
4703         * gnulib/import/tempname.h: Update.
4704         * gnulib/import/time.in.h: Update.
4705         * gnulib/import/unistd--.h: Update.
4706         * gnulib/import/unistd-safer.h: Update.
4707         * gnulib/import/unistd.in.h: Update.
4708         * gnulib/import/unsetenv.c: Update.
4709         * gnulib/import/verify.h: Update.
4710         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4711         * gnulib/import/wchar.in.h: Update.
4712         * gnulib/import/wctype.in.h: Update.
4713         * gnulib/import/xalloc-oversized.h: Update.
4714         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4715         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4716
4717 2018-08-16  Gary Benson <gbenson@redhat.com>
4718
4719         PR gdb/13000:
4720         * gdb/main.c (captured_main_1): Exit with nonzero status
4721         in batch mode if the last command to be executed failed.
4722         * NEWS: Mention the above.
4723
4724 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4725
4726         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4727         end of warning message.
4728
4729 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4730
4731         PR gdb/22943:
4732         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4733         (aarch64_extract_return_value): Use
4734         aapcs_is_vfp_call_or_return_candidate.
4735         (aarch64_return_in_memory): Likewise.
4736         (aarch64_store_return_value): Likewise.
4737
4738 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4739
4740         * aarch64-tdep.c
4741         (aapcs_is_vfp_call_or_return_candidate): Make static
4742         (pass_in_v_or_stack): Remove function.
4743         (pass_in_v_vfp_candidate): New function.
4744         (aarch64_push_dummy_call): Check for float register candidates.
4745
4746 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4747
4748         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4749         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4750         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4751
4752 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4753
4754         PR build/23399
4755         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4756         (struct ipa_sym_addresses): Rename to...
4757         (struct ipa_sym_addresses_common): ... this.
4758         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4759
4760 2018-08-28  Tom Tromey  <tom@tromey.com>
4761
4762         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4763         (token_fifo): Now a std::vector.
4764         (yylex, c_parse): Update.
4765         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4766         (token_fifo): Now a std::vector.
4767         (yylex, d_parse): Update.
4768         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4769         (token_fifo): Now a std::vector.
4770         (yylex, go_parse): Update.
4771
4772 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4773
4774         * parser-defs.h (struct type_stack) <elements>: Change type to
4775         std::vector<union type_stack_elt>.
4776         <depth, size>: Remove.
4777         * parse.c (parse_exp_in_context_1): Adjust.
4778         (type_stack_reserve): Remove.
4779         (check_type_stack_depth): Remove.
4780         (insert_into_type_stack): Adjust to std::vector.
4781         (insert_type): Likewise.
4782         (push_type): Likewise.
4783         (push_type_int): Likewise.
4784         (insert_type_address_space): Likewise.
4785         (pop_type): Likewise.
4786         (pop_type_int): Likewise.
4787         (pop_typelist): Likewise.
4788         (pop_type_stack): Likewise.
4789         (append_type_stack): Likewise.
4790         (push_type_stack): Likewise.
4791         (get_type_stack): Likewise.
4792         (type_stack_cleanup): Likewise.
4793         (push_typelist): Likewise.
4794         (follow_types): Likewise.
4795         (_initialize_parse): Likewise.
4796
4797 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4798
4799         * NEWS: Mention csky target.
4800
4801 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4802             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4803             Don Breazeal  <donb@codesourcery.com>
4804
4805         * csky-linux-tdep.c: New file.
4806         * csky-tdep.c: Likewise.
4807         * csky-tdep.h: Likewise.
4808         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4809         csky-tdep.o.
4810         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4811         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4812         * configure.tgt: Add csky support.
4813
4814 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4815
4816         * python/py-framefilter.c (py_print_frame): Print frame architecture
4817         when printing on an MI output.
4818
4819 2018-08-27  Tom Tromey  <tom@tromey.com>
4820
4821         PR build/23087:
4822         * configure: Rebuild.
4823         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4824
4825 2018-08-27  Tom Tromey  <tom@tromey.com>
4826
4827         * aarch64-linux-tdep.c
4828         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4829         casts to int.
4830
4831 2018-08-27  Tom Tromey  <tom@tromey.com>
4832
4833         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4834         unsigned.
4835         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4836         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4837         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4838         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4839         unsigned.
4840
4841 2018-08-27  Tom Tromey  <tom@tromey.com>
4842
4843         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4844         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4845
4846 2018-08-27  Tom Tromey  <tom@tromey.com>
4847
4848         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4849         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4850         ULONGEST_MAX.
4851         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4852         ULONGEST_MAX.
4853         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4854         ULONGEST_MAX.
4855         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4856         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4857         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4858         ULONGEST_MAX.
4859         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4860         (ppc64_linux_sigaction_tramp_frame)
4861         (ppc32_linux_sighandler_tramp_frame)
4862         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4863         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4864         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4865         * mn10300-linux-tdep.c (am33_linux_sigframe)
4866         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4867         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4868         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4869         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4870         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4871         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4872         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4873         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4874         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4875         * microblaze-linux-tdep.c
4876         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4877         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4878         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4879         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4880         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4881         * common/common-types.h (ULONGEST_MAX): New define.
4882         (CORE_ADDR_MAX): Fix formatting.
4883         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4884         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4885         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4886         (arm_linux_rt_sigreturn_tramp_frame)
4887         (arm_eabi_linux_sigreturn_tramp_frame)
4888         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4889         (thumb2_eabi_linux_sigreturn_tramp_frame)
4890         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4891         (arm_linux_restart_syscall_tramp_frame)
4892         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4893         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4894         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4895         ULONGEST_MAX.
4896         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4897
4898 2018-08-27  Tom Tromey  <tom@tromey.com>
4899
4900         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4901         CORE_ADDR_MAX.
4902         * mips-tdep.c (mips_deal_with_atomic_sequence)
4903         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4904         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4905         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4906         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4907         CORE_ADDR_MAX.
4908         * aarch64-tdep.c (aarch64_software_single_step): Use
4909         CORE_ADDR_MAX.
4910
4911 2018-08-27  Tom Tromey  <tom@tromey.com>
4912
4913         * linespec.c (complete_linespec_component): Add cast to "char".
4914         * completer.c (completion_tracker::build_completion_result): Add
4915         cast to "char".
4916
4917 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4918
4919         * solist.h (struct solist, struct target_so_ops): Fix
4920         indentation.
4921
4922 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4923
4924         * ada-tasks.c (ada_task_info_s): Remove typedef.
4925         (DEF_VEC_O(ada_task_info_s)): Remove.
4926         (struct ada_tasks_inferior_data): Initialize fields.
4927         <task_list>: Make an std::vector.
4928         (get_ada_tasks_inferior_data): Allocate with new.
4929         (ada_get_task_number): Adjust.
4930         (get_task_number_from_id): Likewise.
4931         (valid_task_id): Likewise.
4932         (ada_get_task_info_from_ptid): Likewise.
4933         (iterate_over_live_ada_tasks): Likewise.
4934         (add_ada_task): Likewise.
4935         (read_known_tasks): Likewise.
4936         (ada_build_task_list): Likewise.
4937         (print_ada_task_info): Likewise.
4938         (info_task): Likewise.
4939         (task_command_1): Likewise.
4940
4941 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4942
4943         * ada-lang.c (add_angle_brackets): Return std::string.
4944
4945 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4946
4947         * python/py-threadevent.c (py_get_event_thread): Initialize
4948         pythread.
4949
4950 2018-08-24  Pedro Alves  <palves@redhat.com>
4951
4952         * python/py-bpevent.c (create_breakpoint_event_object): Use
4953         copy-initialization.
4954         * python/py-continueevent.c (emit_continue_event): Use
4955         copy-initialization.
4956         * python/py-exitedevent.c (create_exited_event_object): Return a
4957         gdbpy_ref<>.
4958         (emit_exited_event): Use copy-initialization.
4959         * python/py-inferior.c (python_new_inferior)
4960         (python_inferior_deleted, add_thread_object): Use
4961         copy-initialization.
4962         * python/py-infevents.c (create_inferior_call_event_object)
4963         (create_register_changed_event_object)
4964         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4965         (emit_inferior_call_event, emit_memory_changed_event)
4966         (emit_register_changed_event): Use copy-initialization.
4967         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4968         Return a gdbpy_ref<>.
4969         (emit_new_objfile_event): Use copy-initialization.
4970         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4971         (emit_clear_objfiles_event): Use copy-initialization.
4972         * python/py-signalevent.c (create_signal_event_object): Use
4973         copy-initialization.
4974         * python/py-threadevent.c (create_thread_event_object): Use
4975         copy-initialization.
4976
4977 2018-08-24  Pedro Alves  <palves@redhat.com>
4978             Simon Marchi  <simon.marchi@ericsson.com>
4979
4980         PR gdb/23379
4981         * python/py-continueevent.c: Include "gdbthread.h".
4982         (create_continue_event_object): Add intro comment.  Add 'ptid'
4983         parameter.  Use it to find thread to pass to
4984         create_thread_event_object.
4985         (emit_continue_event): Pass PTID down to
4986         create_continue_event_object.
4987         * python/py-event.h (py_get_event_thread): Declare.
4988         (create_thread_event_object): Remove default from 'thread'
4989         parameter.
4990         * python/py-stopevent.c (create_stop_event_object): Use
4991         py_get_event_thread.
4992         * python/py-threadevent.c (get_event_thread): Rename to ...
4993         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4994         and use it to find the thread.
4995         (create_thread_event_object): Assert that THREAD isn't null.
4996         Don't find the event thread here.
4997
4998 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4999
5000         * block.h (blockrange, blockranges): New struct declarations.
5001         (struct block): Add new field named `ranges'.
5002         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
5003         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
5004         macros for accessing ranges in struct block.
5005         (make_blockranges): New declaration.
5006         block.c (make_blockranges): New function.
5007         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
5008         for block.
5009         * symtab.h (find_pc_partial_function): Add new parameter `block'.
5010         * blockframe.c (cache_pc_function_block): New static global.
5011         (clear_pc_function_cache): Clear cache_pc_function_block.
5012         (find_pc_partial_function): Move comment to symtab.h.  Add
5013         support for non-contiguous blocks.
5014         * cli/cli-cmds.c (block.h): Include.
5015         (print_disassembly): Handle printing of non-contiguous blocks.
5016         (disassemble_current_function): Likewise.
5017         (disassemble_command): Likewise.
5018
5019         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
5020         BLOCK_START.
5021         * blockframe.c (get_pc_function_start): Likewise.
5022         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
5023         (gcc_symbol_address): Likewise.
5024         * compile/compile-object-run.c (compile_object_run): Likewise.
5025         * compile/compile.c (get_expr_block_and_pc): Likewise.
5026         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
5027         (func_addr_to_tail_call_list): Likewise.
5028         * findvar.c (default_read_var_value): Likewise.
5029         * inline-frame.c (inline_frame_this_id): Likewise.
5030         (skip-inline_frames): Likewise.
5031         * infcmd.c (until_next_command): Likewise.
5032         * linespec.c (convert_linespec_to_sals): Likewise.
5033         * parse.c (parse_exp_in_context_1): Likewise.
5034         * printcmd.c (build_address_symbolic): likewise.
5035         (info_address_command): Likewise.
5036         symtab.c (find_function_start_sal): Likewise.
5037         (skip_prologue_sal): Likewise.
5038         (find_function_alias_target): Likewise.
5039         (find_gnu_ifunc): Likewise.
5040         * stack.c (find_frame_funname): Likewise.
5041         * symtab.c (fixup_symbol_section): Likewise.
5042         (find_function_start_sal): Likewise.
5043         (skip_prologue_sal): Likewsie.
5044         (find_function_alias_target): Likewise.
5045         (find_gnu_ifunc): Likewise.
5046         * tracepoint.c (info_scope_command): Likewise.
5047         * value.c (value_fn_field): Likewise.
5048
5049         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
5050         in place of find_pc_partial_function.
5051         * blockframe.c (find_function_entry_range_from_pc): New function.
5052         * symtab.h (find_function_entry_range_from_pc): Declare and document.
5053         * objfiles.c (objfile_relocate1): Relocate start and end addresses
5054         for each range in a block.
5055
5056
5057 2018-08-23  Xavier Roirand  <roirand@adacore.com>
5058
5059         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
5060         incrementation.
5061
5062 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5063
5064         * solib-svr4.c (read_program_headers_from_bfd): Return
5065         gdb::optional<gdb::byte_vector>.
5066         (svr4_exec_displacement): Adjust.
5067
5068 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5069
5070         * solib-svr4.c (read_program_header): Return
5071         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
5072         (find_program_interpreter): Return
5073         gdb::optional<gdb::byte_vector>.
5074         (scan_dyntag_auxv): Adjust.
5075         (enable_break): Adjust.
5076         (svr4_exec_displacement): Adjust.
5077
5078 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5079
5080         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
5081         * inf-child.c (inf_child_target::terminal_save_inferior): New.
5082
5083 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
5084
5085         * guile/scm-string.c (gdbscm_scm_from_printf): Use
5086         string_vprintf.
5087         * guile/scm-utils.c (gdbscm_printf): Likewise.
5088         * serial.c (serial_printf): Likewise.
5089         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
5090
5091 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
5092
5093         * stack.c (print_frame): Print frame architecture when printing on
5094         an MI output.
5095         * NEWS: Mention new "arch" attribute in frame output.
5096
5097 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5098
5099         * arch/aarch64.h (aarch64_regnum): Update comment.
5100
5101 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
5102
5103         * NEWS: Add SVE to 8.2 section.
5104
5105 2018-08-21  Pedro Alves  <palves@redhat.com>
5106
5107         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
5108         out from gdbscm_parse_function_args.
5109         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
5110         gdbscm_parse_function_args_1.
5111
5112 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
5113
5114         PR gdb/17816
5115         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
5116         operator.
5117
5118 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5119
5120         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5121
5122 2018-08-19  Michael Spang  <spang@google.com>
5123
5124         PR gdb/11786
5125         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5126         for PT_TLS segments.
5127
5128 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5129
5130         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5131         dwarf_variable_value.
5132         * dwarf2-frame.c (class dwarf_expr_executor):
5133         Add override for dwarf_variable_value.
5134         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5135         (class symbol_needs_eval_context): Likewise.
5136         (indirect_synthetic_pointer): Add forward declaration.
5137         (sect_variable_value): New function.
5138         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5139         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5140         for DW_OP_GNU_variable_value.
5141
5142 2018-08-16  Tom Tromey  <tom@tromey.com>
5143
5144         * top.c (read_command_file): Update.
5145         (command_line_input): Remove "repeat" argument.
5146         * ada-lang.c (get_selections): Update.
5147         * linespec.c (decode_line_2): Update.
5148         * defs.h (command_line_input): Remove argument.
5149         * cli/cli-script.c (read_next_line): Update.
5150         * python/py-gdb-readline.c: Update.
5151
5152 2018-08-17  Tom Tromey  <tom@tromey.com>
5153
5154         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5155         command_line_input.
5156
5157 2018-08-15  Tom Tromey  <tom@tromey.com>
5158
5159         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5160
5161 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5162
5163         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5164         If used, use find_pc_partial_function to find address range
5165         to disassemble.
5166         * mi/mi-main.c (mi_cmd_list_features): Report
5167         "data-disassemble-a-option" feature.
5168         * NEWS: Mention new -data-disassemble option -a.
5169
5170 2018-08-13  Tom Tromey  <tom@tromey.com>
5171
5172         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5173
5174 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5175
5176         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5177         (aarch64_linux_collect_sve_regset): Likewise.
5178         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5179         * regcache.h (regcache_map_entry_size): New function.
5180
5181 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5182
5183         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5184         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5185         (SVE_HEADER_VL_LENGTH): Likewise.
5186         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5187         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5188         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5189         (SVE_HEADER_SIZE_OFFSET): Likewise.
5190         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5191         (SVE_HEADER_VL_OFFSET): Likewise.
5192         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5193         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5194         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5195         (SVE_HEADER_SIZE): Likewise.
5196         (aarch64_linux_core_read_vq): Add function.
5197         (aarch64_linux_core_read_description): Check for SVE section.
5198
5199 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5200
5201         * aarch64-fbsd-tdep.c
5202         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5203         collect_size.
5204         * aarch64-linux-tdep.c
5205         (aarch64_linux_iterate_over_regset_sections): Likewise.
5206         * alpha-linux-tdep.c
5207         (alpha_linux_iterate_over_regset_sections):
5208         * alpha-nbsd-tdep.c
5209         (alphanbsd_iterate_over_regset_sections): Likewise.
5210         * amd64-fbsd-tdep.c
5211         (amd64fbsd_iterate_over_regset_sections): Likewise.
5212         * amd64-linux-tdep.c
5213         (amd64_linux_iterate_over_regset_sections): Likewise.
5214         * arm-bsd-tdep.c
5215         (armbsd_iterate_over_regset_sections): Likewise.
5216         * arm-fbsd-tdep.c
5217         (arm_fbsd_iterate_over_regset_sections): Likewise.
5218         * arm-linux-tdep.c
5219         (arm_linux_iterate_over_regset_sections): Likewise.
5220         * corelow.c (get_core_registers_cb): Likewise.
5221         (core_target::fetch_registers): Likewise.
5222         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5223         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5224         * gdbarch.h (void): Regenerate.
5225         * gdbarch.sh: Add supply_size and collect_size.
5226         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5227         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5228         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5229         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5230         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5231         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5232         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5233         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5234         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5235         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5236         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5237         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5238         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5239         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5240         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5241         Likewise.
5242         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5243         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5244         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5245         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5246         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5247         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5248         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5249         Likewise.
5250         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5251         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5252         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5253         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5254         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5255         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5256         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5257         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5258
5259 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5260
5261         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5262         with string_printf.
5263
5264 2018-08-10  Keith Seitz  <keiths@redhat.com>
5265
5266         * compile/compile-c-support.c (add_code_header, add_code_footer):
5267         Move into policy class.
5268         (c_push_user_expression, pop_user_expression_nop)
5269         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5270         (compile_program): New host class.
5271         (c_compile_program): New typedef.
5272         (c_compute_porgram): Use c_compile_program.
5273
5274 2018-08-10  Keith Seitz  <keiths@redhat.com>
5275
5276         * compile/compile-internal.h (compile_instance::~compile_instance):
5277         Remove calls to htab_delete.
5278         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5279         * compile.c (compile_instance::compile_instance): Initialize
5280         htab unique pointers.
5281         (compile_instance::get_cached_type, compile_instance::insert_type)
5282         (compile_instance::error_symbol_once): Update for unique_ptr.
5283
5284 2018-08-10  Keith Seitz  <keiths@redhat.com>
5285
5286         * compile/compile-c-symbols.c (struct symbol_error)
5287         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5288         (compile_instance::insert_symbol_error)
5289         (compile_instance::error_symbol_once): Move to ...
5290         * compile/compile.c: ... here.
5291
5292 2018-08-10  Keith Seitz  <keiths@redhat.com>
5293
5294         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5295         instead of `new_compile_instance'.
5296         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5297         Update description.
5298         If the symbol error map is not initialized, create it.
5299         (generate_c_for_for_one_symbol): Do not check/initialize
5300         the symbol error map.
5301         * compile/compile-c-types.c (compile_c_instance): Make a class.
5302         Update all callers.
5303         (compile_instance::compile_instance): Initialize the type cache.
5304         (get_cached_type): New function.
5305         (insert_type): Update description.
5306         (compile_c_instance::m_default_cflags): Define.
5307         (convert_type): Update description.  Use get_cached_type.
5308         (delete_instance): Moved to destructor.
5309         (new_compile_instance): Moved to constructor.
5310         * compile/compile-c.h (compile_c_instance): Make class inheriting
5311         from compile_instance.
5312         <base>: Remove field.
5313         <type_map, symbol_err_map>: Move to base class.
5314         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5315         * compile/compile-internal.h (compile_instance): Make class.
5316         <type_map_t, symbol_err_map_t>: Define.
5317         <fe>: Rename to `m_gcc_fe'.
5318         <scope, block, gcc_target_options>: Add `m_' prefix.
5319         <m_type_map, m_symbol_err_map>: New fields, moved from
5320         compile_c_instance.
5321         <destroy>: Remove.
5322         (convert_type, new_compile_instance): Remove.
5323         * compile/compile.c (cleanup_compile_instance): Remove.
5324         (compile_to_object): Use unique_ptr to eliminate cleanups.
5325         (compile_instance::set_print_callback, compile_instance::version)
5326         (compile_instance::set_verbose)
5327         (compile_instance::set_driver_filename)
5328         (compile_instance::set_triplet_regexp)
5329         (compile_instance::set_arguments)
5330         (compile_instance::set_source_file)
5331         (compile_instance::compile): Define.
5332
5333 2018-08-10  Keith Seitz  <keiths@redhat.com>
5334
5335         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5336         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5337         gcc-c-fe.def to define C plugin.
5338         (delete_instance): Delete `c_plugin'.
5339         (new_compile_instance): Initialize `c_plugin'.
5340         * compile/compile-c.h: Include gcc_c_plugin.h.
5341         (struct compile_c_instance) <c_plugin>: New member.
5342         * gcc-c-plugin.h: New file.
5343         Update all callers with API change.
5344
5345 2018-08-10  Keith Seitz  <keiths@redhat.com>
5346
5347         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5348         (HFILES_NO_SRCDIR): ... to here.
5349         Add compile-internal.h and compile-c.h.
5350         * compile/compile-c-support.c: Include compile-c.h.
5351         * compile/compile-c-symbols.c: Include compile-c.h.
5352         (generate_c_for_variable_locations): Update comment.
5353         * compile/compile-c-types.c: Include compile-c.h.
5354         * compile/compile-c.h: New file -- moved C language declarations
5355         from other files here.
5356         * compile/compile-internal.h: Do not include hashtab.h or
5357         common/enum-flags.h.
5358         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5359         (gcc_convert_symbol, gcc_symbol_address)
5360         (generate_c_for_variable_locations, c_get_mode_for_size)
5361         (c_get_range_decl_name): Definitions moved to compile-c.h.
5362         * compile/compile-loc2c.c: Include compile-c.h.
5363
5364 2018-08-10  Keith Seitz  <keiths@redhat.com>
5365
5366         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5367         (c_symbol_substitution_name): ... this.
5368         Update all callers.
5369
5370 2018-08-10  Keith Seitz  <keiths@redhat.com>
5371
5372         * compile/compile-c-support.c (c_compute_program): Use
5373         unique_xmalloc_ptr to eliminate cleanup.
5374         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5375         Return a unique_xmalloc_ptr and eliminate cleanup.
5376         * compile/compile-internal.h (generate_c_for_variable_locations):
5377         Return unique_xmalloc_ptr and update description.
5378
5379 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5380
5381         * corelow.c (core_target::get_core_register_section): Rename
5382         min_size to section_min_size.
5383
5384 2018-08-09  Jim Wilson  <jimw@sifive.com>
5385
5386         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5387         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5388         * NEWS: Mention new GNU/Linux RISC-V target.
5389         * configure.host: Add riscv*-*-linux*.
5390         * configure.nat: Add riscv*.
5391         * configure.tgt: Add riscv*-*-linux*.
5392         * riscv-linux-nat.c: New file.
5393         * riscv-linux-tdep.c: New file.
5394
5395 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5396
5397         * infrun.c (resume): Make static, add forward declaration.
5398         (proceed): Update header comment.
5399         * infrun.h (resume): Delete declaration.
5400
5401 2018-08-09  Tom Tromey  <tom@tromey.com>
5402
5403         * riscv-tdep.h: Minor formatting fixes.
5404
5405 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5406
5407         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5408         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5409         (test_mkdir_recursive): Likewise.
5410         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5411
5412 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5413
5414         * valarith.c (value_subscripted_rvalue): If an array is not in
5415         memory, and we don't know the upper bound, then we can't know that
5416         the requested element exists or not.
5417
5418 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5419
5420         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5421         (target_options_to_string): Add comment.
5422
5423 2018-08-08  Tom Tromey  <tom@tromey.com>
5424
5425         * unittests/scoped_mmap-selftests.c: Check result of "write".
5426
5427 2018-08-08  Jim Wilson  <jimw@sifive.com>
5428
5429         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5430         (decode_register_index_short): New.
5431         (decode_j_type_insn, decode_cj_type_insn): New.
5432         (decode_b_type_insn, decode_cb_type_insn): New.
5433         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5434         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5435         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5436         is_c_sw_insn instead of is_sw_insn.
5437         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5438         (riscv_software_single_step): New.
5439         * riscv-tdep.h (riscv_software_single_step): Declare.
5440
5441         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5442         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5443
5444 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5445
5446         PR gdb/18050:
5447         * target.c (dispose_inferior): Don't dispose of inferiors that are
5448         already killed.
5449
5450 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5451
5452         * remote.c (remote_target::download_tracepoint): Change char* to
5453         const char*.
5454
5455 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5456
5457         * target.h (target_options_to_string): Return an std::string.
5458         * target.c (str_comma_list_concat_elem): Return void, use
5459         std::string.
5460         (do_option): Likewise.
5461         (target_options_to_string): Return an std::string.
5462         * linux-nat.c (linux_nat_target::wait): Adjust.
5463         * target-debug.h (target_debug_print_options): Adjust.
5464
5465 2018-08-07  Tom Tromey  <tom@tromey.com>
5466
5467         * Makefile.in (CPPFLAGS): New variable.
5468         (INTERNAL_CPPFLAGS): Use it.
5469
5470 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5471
5472         * NEWS: Mention the index cache.
5473
5474 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5475
5476         * common/pathstuff.h (get_standard_cache_dir): New.
5477         * common/pathstuff.c (get_standard_cache_dir): New.
5478         * build-id.h (build_id_to_string): New.
5479         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5480         DEBUG_STR_SUFFIX): Move to here.
5481         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5482         DEBUG_STR_SUFFIX): Move from there.
5483         (write_psymtabs_to_index): Make non-static, add basename
5484         parameter.  Write to temporary files, rename when done.
5485         (save_gdb_index_command): Adjust call to
5486         write_psymtabs_to_index.
5487         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5488         field.
5489         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5490         (get_gdb_index_contents_from_cache): New.
5491         (get_gdb_index_contents_from_cache_dwz): New.
5492         (dwarf2_initialize_objfile): Read index from cache.
5493         (dwarf2_build_psymtabs): Save to index.
5494         * dwarf-index-cache.h: New file.
5495         * dwarf-index-cache.c: New file.
5496         * dwarf-index-write.h: New file.
5497
5498 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5499
5500         * gnulib/aclocal.m4: Re-generate.
5501         * gnulib/config.in: Re-generate.
5502         * gnulib/configure: Re-generate.
5503         * gnulib/import/Makefile.am: Re-generate.
5504         * gnulib/import/Makefile.in: Re-generate.
5505         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5506         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5507         * gnulib/import/m4/mkdir.m4: New file.
5508         * gnulib/import/mkdir.c: New file.
5509         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5510         module.
5511
5512 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5513
5514         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5515         * common/scoped_mmap.c: New file.
5516         * common/scoped_mmap.h (destroy): New method.
5517         (~scoped_mmap, reset): Use destroy.
5518         (scoped_mmap): New move constructor.
5519         (mmap_file): New declaration.
5520         * unittests/scoped_mmap-selftests.c (test_normal,
5521         test_invalid_filename, run_tests): New functions.
5522         (_initialize_scoped_mmap_selftests): Register selftest.
5523
5524 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5525
5526         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5527         (read_gdb_index_from_buffer): ... this.  Remove section
5528         parameter, add buffer parameter.
5529         (get_gdb_index_contents_ftype,
5530         get_gdb_index_contents_dwz_ftype): New typedefs.
5531         (dwarf2_read_gdb_index): Add callback parameters to get the
5532         index contents.
5533         (get_gdb_index_contents_from_section): New.
5534         (dwarf2_initialize_objfile): Update call to
5535         dwarf2_read_gdb_index.
5536
5537 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5538
5539         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5540         (gdb_open_cloexec): Likewise.
5541         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5542         (commandline_from_pid): Likewise.
5543         (linux_xfer_osdata_threads): Likewise.
5544         (linux_xfer_osdata_fds): Likewise.
5545         * ada-lang.c (is_package_name): Likewise.
5546         * auxv.c (procfs_xfer_auxv): Likewise.
5547         * breakpoint.c (print_one_breakpoint_location): Use
5548         uiout::field_fmt.
5549         (print_one_catch_solib): Use string_printf.
5550         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5551         (add_pe_forwarded_sym): Likewise.
5552         * dwarf2read.c (create_type_unit_group): Likewise.
5553         (build_error_marker_type): Likewise.
5554         * infcall.c (get_function_name): Likewise.
5555         * valprint.c (print_converted_chars_to_obstack): Likewise.
5556         * xtensa-tdep.c (xtensa_register_type): Likewise.
5557
5558 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5559
5560         * remote.c (remote_target::download_tracepoint): Fix format
5561         string errors.
5562
5563 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5564
5565         * tracefile.c: Include common/byte-vector.h.
5566         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5567         with trace_regblock_size if needed.  Update uses of buf.
5568
5569 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5570
5571         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5572         std::vector<unsigned char>.
5573         * tracepoint.c (collection_list::collection_list): Remove
5574         m_regs_mask initializer from initializer list.  Resize
5575         m_regs_mask using the largest remote register number.
5576         (collection_list::add_remote_register): Remove size check on
5577         m_regs_mask.  Use at to access element.
5578         (collection_list::stringify): Change type of temp_buf to
5579         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5580         stringify the register mask.  Use pack_hex_byte for the register
5581         mask.
5582
5583 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5584
5585         * tracepoint.h (class collection_list) <add_register>: Remove.
5586         <add_remote_register, add_ax_registers, add_local_register>:
5587         Declare.
5588         <add_memrange>: Add scope parameter.
5589         * tracepoint.c (encode_actions_1): Likewise.
5590         (collection_list::add_register): Rename to ...
5591         (collection_list::add_remote_register): ... this.  Update
5592         comment.
5593         (collection_list::add_ax_registers, add_local_register): New
5594         methods.
5595         (collection_list::add_memrange): Add scope parameter.  Call
5596         add_local_register instead of add_register.
5597         (finalize_tracepoint_aexpr): New function.
5598         (collection_list::collect_symbol): Update calls to add_memrange.
5599         Call add_local_register instead of add_register.  Call
5600         add_ax_registers.  Call finalize_tracepoint_aexpr.
5601         (encode_actions_1): Get remote regnos for $reg action.  Call
5602         add_remote_register, add_ax_registers, and add_local_register.
5603         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5604         (validate_actionline): Call finalize_tracepoint_aexpr.
5605
5606 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5607
5608         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5609         Replace array buf with gdb::char_vector buf, of size
5610         get_remote_packet_size ().  Replace references to buf and
5611         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5612         and xsnprintf with snprintf.  Raise errors if the buffer is too
5613         small.
5614
5615 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5616
5617         * remote.c (remote_target::download_tracepoint): Fix the has_more
5618         predicate in the QTDP action list iteration.
5619
5620 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5621
5622         * remote.c (remote_target::download_tracepoint): Fix indentation
5623         in for block.
5624
5625 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5626
5627         * proc-api.c (_initialize_proc_api): Remove c, unused.
5628         * procfs.c (procfs_init_inferior): Remove signals, unused.
5629         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5630         unused.
5631
5632 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5633             Andrew Burgess  <andrew.burgess@embecosm.com>
5634
5635         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5636         'W_STOPCODE (0)' as this could be ambiguous.
5637
5638 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5639
5640         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5641         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5642         "ai_socktype").
5643
5644 2018-08-02  Tom Tromey  <tom@tromey.com>
5645
5646         PR symtab/16842.
5647         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5648         symbols.
5649         (process_structure_scope): Likewise.
5650
5651 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5652
5653         PR gdb/22629:
5654         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5655         kill inferior.
5656
5657 2018-08-02  Tom Tromey  <tom@tromey.com>
5658
5659         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5660         (darwin_suspend_inferior, darwin_resume_inferior)
5661         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5662         (darwin_check_new_threads): Check result of get_darwin_inferior.
5663
5664 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5665
5666         GDB 8.1.1 released.
5667
5668 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5669
5670         * varobj.c (varobj_get_path_expr_parent): Report an error if
5671         parent is a dynamic varobj.
5672
5673 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5674
5675         * gnulib/aclocal.m4: Re-generate.
5676         * gnulib/config.in: Re-generate.
5677         * gnulib/configure: Re-generate.
5678         * gnulib/import/Makefile.in: Re-generate.
5679         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5680         * gnulib/import/m4/onceonly.m4: Re-generate.
5681
5682 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5683
5684         * target-descriptions.c (struct xml_test_tdesc): New.
5685         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5686         (record_xml_tdesc): Update.
5687         (maintenance_check_xml_descriptions): Update.
5688         * target-descriptions.h (record_xml_tdesc): Update comment.
5689
5690 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5691
5692         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5693         checking array bounds are defined.
5694
5695 2018-07-30  Tom Tromey  <tom@tromey.com>
5696
5697         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5698         irreflexivity violation.
5699
5700 2018-07-30  Tom Tromey  <tom@tromey.com>
5701
5702         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5703         * value.c (unpack_long): Remove lint code.
5704         * valops.c (value_ind): Remove lint code.
5705         * valarith.c (value_x_binop, value_x_unop, value_equal)
5706         (value_pos): Remove lint code.
5707
5708 2018-07-28  Tom de Vries  <tdevries@suse.de>
5709
5710         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5711         with undefined upper bound as <optimized out>.
5712
5713 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5714
5715         * gcore.in: Rename variable "name" to "prefix".  Expand
5716         "usage" text.
5717
5718 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5719
5720         * windows-nat.c (windows_nat_target::create_inferior): Update to
5721         call close() in global namespace.
5722
5723 2018-07-26  Tom Tromey  <tom@tromey.com>
5724
5725         * dwarf-index-write.c (add_address_entry): Don't add objfile
5726         offsets.
5727         * dbxread.c (find_stab_function): Rename from
5728         find_stab_function_addr.  Return a bound_minimal_symbol.
5729         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5730         Don't add objfile offsets.
5731         (end_psymtab): Use raw_text_low, raw_text_high,
5732         MSYMBOL_VALUE_RAW_ADDRESS.
5733         (read_ofile_symtab): Update.
5734         (process_one_symbol): Update.
5735         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5736         offsets.
5737         (dw2_relocate): Remove.
5738         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5739         searching addrmap.
5740         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5741         Update.
5742         (process_psymtab_comp_unit_reader, add_partial_symbol)
5743         (add_partial_subprogram, dwarf2_ranges_read): Update.
5744         (load_partial_dies): Update.
5745         (add_address_entry): Don't add objfile offsets.
5746         (dwarf2_build_include_psymtabs): Update.
5747         (create_addrmap_from_aranges): Don't add objfile offsets.
5748         (dw2_find_pc_sect_compunit_symtab): Update.
5749         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5750         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5751         Update.
5752         (parse_partial_symbols): Don't add objfile offsets.  Use
5753         raw_text_low, raw_text_high.  Update.
5754         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5755         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5756         or call 'relocate' quick function.  Clear psymbol_map.
5757         * psympriv.h (struct partial_symbol) <address>: Add section
5758         offset.
5759         <set_unrelocated_address>: Rename from set_address.
5760         <raw_text_low, raw_text_high>: New methods.
5761         <text_low, text_high>: Add objfile parameter.
5762         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5763         set_unrelocated_address.
5764         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5765         (find_pc_psymbol): Update.
5766         (fixup_psymbol_section, relocate_psymtabs): Remove.
5767         (dump_psymtab, psym_functions): Update.
5768         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5769         parameter.
5770         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5771         (start_psymtab_common): Update.
5772         * symfile-debug.c (debug_qf_relocate): Remove.
5773         (debug_sym_quick_functions): Update.
5774         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5775         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5776         Update.
5777
5778 2018-07-26  Tom Tromey  <tromey@redhat.com>
5779
5780         * dbxread.c (end_psymtab): Use text_high_valid and
5781         text_low_valid.
5782         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5783         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5784         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5785         Update comment.
5786         <text_low_valid, text_high_valid>: New fields.
5787         <set_text_low, set_text_high>: Update.
5788         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5789
5790 2018-07-26  Tom Tromey  <tom@tromey.com>
5791
5792         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5793         Update.
5794         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5795         textlow and texthigh fields.
5796         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5797         Update.
5798         * mdebugread.c (parse_lines, parse_partial_symbols)
5799         (psymtab_to_symtab_1): Update.
5800         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5801         Rename fields.  Update comment.  Now private.
5802         <text_low, text_high, set_text_low, set_text_high>: New methods.
5803         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5804         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5805         (start_psymtab_common, maintenance_info_psymtabs)
5806         (maintenance_check_psymtabs): Update.
5807         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5808         texthigh fields.
5809         (scan_xcoff_symtab): Update.
5810
5811 2018-07-26  Tom Tromey  <tromey@redhat.com>
5812
5813         * psympriv.h (struct partial_symbol) <unrelocated_address,
5814         address, set_address>: New methods.
5815         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5816         (fixup_psymbol_section, relocate_psymtabs): Update.
5817         (print_partial_symbols): Add 'objfile' parameter.  Update.
5818         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5819         Update.
5820
5821 2018-07-26  Tom Tromey  <tom@tromey.com>
5822
5823         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5824         (debug_names::write_psymbols): Update.
5825         * psympriv.h (struct partial_symbol): Derive from
5826         general_symbol_info.
5827         <obj_section>: New method.
5828         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5829         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5830         (find_pc_sect_psymbol, fixup_psymbol_section)
5831         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5832         (print_partial_symbols, recursively_search_psymtabs)
5833         (compare_psymbols, psymbol_hash, psymbol_compare)
5834         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5835         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5836
5837 2018-07-26  Tom Tromey  <tromey@redhat.com>
5838
5839         * dbxread.c (end_psymtab): Remove dead code.
5840
5841 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5842
5843         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5844         DWARF unwinders are disabled.
5845         * dwarf2-frame.c: Add dwarf2read.h include.
5846         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5847         disabled.
5848         (dwarf2_frame_unwinders_enabled_p): Define.
5849         (show_dwarf_unwinders_enabled_p): New function.
5850         (_initialize_dwarf2_frame): Register switch to control DWARF
5851         unwinder use.
5852         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5853         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5854         (show_dwarf_cmdlist): Remove static keyword.
5855         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5856         (show_dwarf_cmdlist): Declare.
5857         * NEWS: Document new feature.
5858
5859 2018-07-26  Tom de Vries  <tdevries@suse.de>
5860
5861         PR breakpoints/23366
5862         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5863
5864 2018-07-26  Tom de Vries  <tdevries@suse.de>
5865
5866         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5867         DW_AT_count can't be translated to a dynamic prop.
5868
5869 2018-07-25  Tom de Vries  <tdevries@suse.de>
5870
5871         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5872         try/catch.
5873
5874 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5875
5876         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5877
5878 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5879
5880         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5881
5882 2018-07-24  Keith Seitz  <keiths@redhat.comt
5883
5884         PR symtab/23010
5885         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5886         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5887         instead of add_symbol_to_list.
5888         (read_file_scope): Call prepare_one_comp_unit before reading
5889         any other DIEs.
5890
5891 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5892
5893         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5894
5895 2018-07-24  Tom Tromey  <tom@tromey.com>
5896
5897         * utils.c (malloc, realloc, free): Don't declare.
5898         * configure, config.in: Rebuild.
5899         * configure.ac: Don't check for declarations of free, malloc, or
5900         realloc.
5901
5902 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5903
5904         * aarch64-linux-nat.c
5905         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5906         variable.
5907         * arm-linux-nat.c (fetch_regs): Likewise.
5908         (store_regs): Likewise.
5909         (fetch_vfp_regs): Likewise.
5910         (store_vfp_regs): Likewise.
5911         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5912         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5913         (arm_linux_nat_target::insert_watchpoint): Likewise.
5914         (arm_linux_nat_target::remove_watchpoint): Likewise.
5915         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5916         Likewise.
5917         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5918         Likewise.
5919         * ppc-linux-nat.c (fetch_register): Likewise.
5920         (fetch_all_gp_regs): Likewise.
5921         (fetch_ppc_registers): Likewise.
5922         (store_all_gp_regs): Likewise.
5923         (store_ppc_registers): Likewise.
5924         (hwdebug_insert_point): Likewise.
5925         (can_use_watchpoint_cond_accel): Likewise.
5926         * remote-sim.c (gdb_os_write_stdout): Likewise.
5927
5928 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5929             Tom Tromey  <tom@tromey.com>
5930
5931         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5932         test for it.
5933         * configure: Rebuild.
5934
5935 2018-07-22  Tom Tromey  <tom@tromey.com>
5936
5937         * regformats/regdat.sh: Define xmltarget_${name} inside
5938         #ifndef IN_PROCESS_AGENT.
5939
5940 2018-07-22  Tom Tromey  <tom@tromey.com>
5941
5942         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5943
5944 2018-07-22  Tom Tromey  <tom@tromey.com>
5945
5946         * symfile.c (reread_symbols): Notify iter, not objfile.
5947
5948 2018-07-22  Tom Tromey  <tom@tromey.com>
5949
5950         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5951         Use arch_ops.
5952         (ravenscar_thread_target::prepare_to_store): Likewise.
5953
5954 2018-07-22  Tom Tromey  <tom@tromey.com>
5955
5956         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5957         unused variable.  Call value_fetch_lazy when needed.
5958         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5959         Remove unused variable.  Call value_fetch_lazy when needed.
5960
5961 2018-07-22  Tom Tromey  <tom@tromey.com>
5962
5963         * m32c-tdep.c (mark_dma): Return void.
5964         (make_regs): Remove unused declarations.
5965
5966 2018-07-22  Tom Tromey  <tom@tromey.com>
5967
5968         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5969         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5970         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5971         bkscm_get_valid_block_smob_arg_unsafe for effect.
5972
5973 2018-07-22  Tom Tromey  <tom@tromey.com>
5974
5975         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5976         value_type.
5977
5978 2018-07-22  Tom Tromey  <tom@tromey.com>
5979
5980         * windows-nat.c (saved_context): Conditionally define.
5981         * remote.c (remote_target::remote_btrace_maybe_reopen):
5982         Conditionally declare "warned".
5983         * inflow.c (sigquit_ours): Conditionally define.
5984         (new_tty): Move "tty" declaration inside #if.
5985         * guile/guile.c (guile_datadir): Conditionally define.
5986         * charset.c (set_be_le_names): Move some declarations inside #if.
5987         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5988         #if.
5989         (parse_xml_btrace_conf): Likewise.
5990
5991 2018-07-22  Tom Tromey  <tom@tromey.com>
5992
5993         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5994
5995 2018-07-22  Tom Tromey  <tom@tromey.com>
5996
5997         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5998         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5999         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
6000         * buildsym-legacy.c (get_macro_table): Remove unused variable.
6001         * stack.c (frame_apply_level_command): Remove unused variable.
6002         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
6003         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
6004         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
6005         unused variable.
6006         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
6007         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
6008         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
6009         variable.
6010         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
6011         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
6012         variable.
6013         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
6014         Remove unused variable.
6015         * cli/cli-script.c (recurse_read_control_structure): Remove unused
6016         variable.
6017         * common/tdesc.c (print_xml_feature::visit): Remove unused
6018         variable.
6019         * compile/compile-object-load.c (store_regs): Remove unused
6020         variables.
6021         * complaints.c (clear_complaints): Remove unused variable.
6022         * corelow.c (core_target_open): Remove unused variable.
6023         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
6024         variable.
6025         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
6026         variable.
6027         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
6028         variable.
6029         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
6030         variable.
6031         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
6032         variable.
6033         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
6034         variable.
6035         * ia64-tdep.c (examine_prologue): Remove unused variable.
6036         * infcall.c (run_inferior_call): Remove unused variable.
6037         * inferior.c (exit_inferior): Remove unused variable.
6038         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
6039         * linespec.c (decode_line_2): Remove unused variable.
6040         * linux-nat.c (super_close): Remove.
6041         * linux-tdep.c (linux_info_proc): Remove unused variable.
6042         * mi/mi-main.c (mi_execute_command): Remove unused variable.
6043         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
6044         Remove unused variable.
6045         * parse.c (find_minsym_type_and_address): Remove unused variable.
6046         * printcmd.c (info_symbol_command, printf_floating): Remove unused
6047         variable.
6048         * python/py-breakpoint.c (bppy_set_commands): Remove unused
6049         variable.
6050         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
6051         variables.
6052         * record-btrace.c (record_btrace_target::store_registers): Remove
6053         unused variable.
6054         (cmd_show_record_btrace_cpu): Remove unused variable.
6055         * riscv-tdep.c (riscv_register_reggroup_p)
6056         (riscv_push_dummy_call, riscv_return_value): Remove unused
6057         variable.
6058         * rust-exp.y (literal): Remove unused variable.
6059         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
6060         unused variable.
6061         <STRUCTOP_ANONYMOUS>: Likewise.
6062         * s390-linux-tdep.c (s390_linux_init_abi_31)
6063         (s390_linux_init_abi_64): Remove unused variable.
6064         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
6065         (file_select_thread, net_windows_open, _initialize_ser_windows):
6066         Remove unused variables.
6067         * symtab.c (find_pc_sect_line): Remove unused variable.
6068         * target-memory.c (compute_garbled_blocks): Remove unused
6069         variable.
6070         (target_write_memory_blocks): Remove unused variable.
6071         * target.c (target_stack::unpush): Remove unused variables.
6072         * tracepoint.c (start_tracing, all_tracepoint_actions)
6073         (merge_uploaded_trace_state_variables)
6074         (print_one_static_tracepoint_marker): Remove unused variable.
6075         * unittests/basic_string_view/element_access/char/1.cc (test01):
6076         Remove unused variable.
6077         * windows-nat.c (windows_continue, windows_add_all_dlls)
6078         (do_initial_windows_stuff, windows_nat_target::create_inferior):
6079         Remove unused variables.
6080
6081 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
6082
6083         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
6084         attr_profile in HAVE_ELF.
6085         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
6086         HAVE_ELF.
6087
6088 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
6089
6090         * frame.c (frame_register_unwind): Change parameter name.
6091         (frame_unwind_register): Likewise.
6092         (frame_unwind_register_value): Likewise.
6093         (frame_unwind_register_signed): Likewise.
6094         (frame_unwind_register_unsigned): Likewise.
6095         * frame.h (frame_register_unwind): Likewise.
6096         (frame_unwind_register): Likewise.
6097         (frame_unwind_register_value): Likewise.
6098         (frame_unwind_register_signed): Likewise.
6099         (frame_unwind_register_unsigned): Likewise.
6100         (frame_unwind_arch): Likewise.
6101
6102 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6103
6104         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
6105         ISA maintenance.
6106
6107 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
6108
6109         * mips-linux-nat.c (mips_linux_nat_target::read_description):
6110         Call `get_ptrace_pid' rather than extracting the ptrace PID by
6111         hand.
6112
6113 2018-07-20  Keith Seitz  <keiths@redhat.com>
6114
6115         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
6116         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
6117         m_compunit_symtab, m_language>: Add "m_" prefix.
6118         Update all uses.
6119         * buildsym.c: Update all uses.
6120
6121 2018-07-20  Tom Tromey  <tom@tromey.com>
6122
6123         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6124         * buildsym.h (record_line_ftype): Remove typedef.
6125
6126 2018-07-20  Tom Tromey  <tom@tromey.com>
6127
6128         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6129         (end_expandable_symtab): Likewise.
6130         (end_symtab_get_static_block): Likewise.
6131         (end_symtab_from_static_block): Likewise.
6132         * buildsym-legacy.c (augment_type_symtab): Remove.
6133         (end_expandable_symtab): Remove.
6134         (end_symtab_get_static_block): Remove.
6135         (end_symtab_from_static_block): Remove.
6136
6137 2018-07-20  Tom Tromey  <tom@tromey.com>
6138
6139         * dwarf2read.c: Include buildsym.h.
6140         (struct dwarf2_cu) <builder>: New method.
6141         (fixup_go_packaging): Update.
6142         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6143         use scoped_free_pendings.
6144         (using_directives): Add "cu" parameter, remove "language".
6145         (read_import_statement, setup_type_unit_groups, )
6146         (read_func_scope, read_lexical_block_scope)
6147         (dwarf2_record_block_ranges, read_namespace): Update.
6148         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6149         (lnp_state_machine::handle_end_sequence): Update.
6150         (class lnp_state_machine) <m_cu>: New member.
6151         <m_record_line_callback>: Remove.
6152         <m_currently_recording_lines>: New member.
6153         (lnp_state_machine::handle_set_file): Update.
6154         (noop_record_line): Remove.
6155         (dwarf_record_line_p): Add cu parameter.
6156         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6157         (lnp_state_machine::record_line)
6158         (lnp_state_machine::lnp_state_machine)
6159         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6160         (dwarf_decode_lines): Update.
6161         (dwarf2_start_subfile): Add cu parameter.
6162         (dwarf2_start_symtab, new_symbol): Update.
6163         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6164         Remove dwarf2_per_objfile parameter.
6165         (dwarf_decode_macros): Update.
6166
6167 2018-07-20  Tom Tromey  <tom@tromey.com>
6168
6169         * stabsread.c (define_symbol): Update.
6170         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6171         * dwarf2read.c (new_symbol): Update.
6172         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6173         * cp-namespace.c: Include buildsym.h.
6174         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6175         * buildsym-legacy.c (get_buildsym_compunit): New function.
6176
6177 2018-07-20  Tom Tromey  <tom@tromey.com>
6178
6179         * xcoffread.c: Include buildsym-legacy.h.
6180         * windows-nat.c: Include buildsym-legacy.h.
6181         * stabsread.c: Include buildsym-legacy.h.
6182         * mdebugread.c: Include buildsym-legacy.h.
6183         * buildsym-legacy.h: New file.
6184         * buildsym-legacy.c: New file, from buildsym.c.
6185         * go32-nat.c: Include buildsym-legacy.h.
6186         * dwarf2read.c: Include buildsym-legacy.h.
6187         * dbxread.c: Include buildsym-legacy.h.
6188         * cp-namespace.c: Include buildsym-legacy.h.
6189         * coffread.c: Include buildsym-legacy.h.
6190         * buildsym.h: Move some contents to buildsym-legacy.h.
6191         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6192         buildsym-legacy.c.
6193         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6194
6195 2018-07-20  Tom Tromey  <tom@tromey.com>
6196
6197         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6198         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6199         (buildsym_compunit::buildsym_compunit)
6200         (buildsym_compunit::~buildsym_compunit)
6201         (buildsym_compunit::get_macro_table): Define.
6202
6203 2018-07-20  Tom Tromey  <tom@tromey.com>
6204
6205         * buildsym.c (reset_symtab_globals): Remove.
6206         (buildsym_compunit::end_symtab_from_static_block): Update.
6207         (buildsym_compunit::augment_type_symtab): Update.
6208         (end_symtab_from_static_block): Call free_buildsym_compunit.
6209         (augment_type_symtab, end_symtab, end_expandable_symtab):
6210         Likewise.
6211
6212 2018-07-20  Tom Tromey  <tom@tromey.com>
6213
6214         * arch-utils.c: Do not include buildsym.h.
6215         * mipsread.c: Do not include buildsym.h.
6216         * machoread.c: Do not include buildsym.h.
6217         * elfread.c: Do not include buildsym.h.
6218
6219 2018-07-20  Tom Tromey  <tom@tromey.com>
6220
6221         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6222         initialization.
6223         (buildsym_compunit): Add new constructor.
6224         (struct buildsym_compunit) <get_last_source_file, finish_block,
6225         record_block_range, start_subfile, patch_subfile_names,
6226         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6227         set_last_source_start_addr, get_last_source_start_addr,
6228         get_local_using_directives, set_local_using_directives,
6229         get_global_using_directives, outermost_context_p,
6230         get_current_context_stack, get_context_stack_depth,
6231         get_current_subfile, get_local_symbols, get_file_symbols,
6232         get_global_symbols, record_debugformat, record_producer,
6233         push_context, pop_context, end_symtab_get_static_block,
6234         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6235         New public methods.
6236         <record_pending_block, finish_block_internal, make_blockvector,
6237         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6238         private methods.
6239         Update all users.
6240
6241 2018-05-22  Tom Tromey  <tom@tromey.com>
6242
6243         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6244         parameter.
6245         (finish_block_internal): Update.
6246
6247 2018-07-20  Tom Tromey  <tom@tromey.com>
6248
6249         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6250         parameter.
6251         (finish_block_internal): Update.
6252
6253 2018-07-20  Tom Tromey  <tom@tromey.com>
6254
6255         * buildsym.h (EXTERN): Don't define or undef.
6256         * buildsym.c (EXTERN): Don't define.
6257
6258 2018-07-20  Tom Tromey  <tom@tromey.com>
6259
6260         * buildsym.c: Remove TODO comment.
6261
6262 2018-07-20  Tom Tromey  <tom@tromey.com>
6263
6264         * coffread.c (coff_symtab_read): Update.
6265         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6266         (xcoff_new_init): Update.
6267         * mipsread.c (mipscoff_new_init): Update.
6268         * mdebugread.c (mdebug_build_psymtabs): Update.
6269         * elfread.c (elf_new_init): Update.
6270         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6271         Update.
6272         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6273         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6274         (stabsect_build_psymtabs): Update.
6275         * buildsym.h (buildsym_init): Don't declare.
6276         * buildsym.c: Update comment.
6277         (prepare_for_building): Remove.
6278         (start_symtab, restart_symtab): Update.
6279         (reset_symtab_globals): Update comment.
6280         (buildsym_init): Remove.
6281
6282 2018-07-20  Tom Tromey  <tom@tromey.com>
6283
6284         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6285         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6286         (read_enum_type, common_block_start, common_block_end)
6287         (cleanup_undefined_types_1, finish_global_stabs): Update.
6288         * mdebugread.c (psymtab_to_symtab_1): Update.
6289         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6290         (read_lexical_block_scope, new_symbol): Update.
6291         * dbxread.c (process_one_symbol): Update.
6292         * coffread.c (coff_symtab_read, process_coff_symbol)
6293         (coff_read_enum_type): Update.
6294         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6295         declare.
6296         (get_local_symbols, get_file_symbols, get_global_symbols): New
6297         functions.
6298         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6299         m_global_symbols.
6300         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6301         (~scoped_free_pendings): Update.
6302         (finish_block, prepare_for_building, reset_symtab_globals)
6303         (end_symtab_get_static_block, end_symtab_with_blockvector)
6304         (augment_type_symtab, push_context): Update.
6305         (get_local_symbols, get_file_symbols, get_global_symbols): New
6306         functions.
6307         (buildsym_init): Update.
6308
6309 2018-07-20  Tom Tromey  <tom@tromey.com>
6310
6311         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6312         (process_full_type_unit): Likewise.
6313         (dwarf2_start_symtab): Set list_in_scope.
6314
6315 2018-07-20  Tom Tromey  <tom@tromey.com>
6316
6317         * dwarf2read.c (process_psymtab_comp_unit_reader)
6318         (build_type_psymtabs_reader): Do not set list_in_scope.
6319
6320 2018-07-20  Tom Tromey  <tom@tromey.com>
6321
6322         * buildsym.c (free_pendings): Remove.
6323         (add_symbol_to_list, scoped_free_pendings)
6324         (finish_block_internal, buildsym_init): Update.
6325
6326 2018-07-20  Tom Tromey  <tom@tromey.com>
6327
6328         * xcoffread.c (read_xcoff_symtab): Update.
6329         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6330         Update.
6331         * dbxread.c (process_one_symbol): Update.
6332         * coffread.c (coff_symtab_read): Update.
6333         * buildsym.h (finish_block): Update.
6334         * buildsym.c (finish_block): Remove "listhead" argument.
6335         (end_symtab_get_static_block): Update.
6336
6337 2018-07-20  Tom Tromey  <tom@tromey.com>
6338
6339         * buildsym.h (class scoped_free_pendings): Remove constructor.
6340         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6341         method.
6342         <m_pending_block_obstack, m_pending_blocks>: New members.
6343         (pending_block_obstack, pending_blocks): Remove.
6344         (scoped_free_pendings::scoped_free_pendings): Default.
6345         (~scoped_free_pendings): Update.
6346         (free_pending_blocks): Remove.
6347         (finish_block_internal, record_pending_block, make_blockvector)
6348         (end_symtab_get_static_block, augment_type_symtab, push_context)
6349         (buildsym_init): Update.
6350
6351 2018-07-20  Tom Tromey  <tom@tromey.com>
6352
6353         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6354         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6355         members.
6356         (pending_addrmap, pending_addrmap_obstack)
6357         (pending_addrmap_interesting): Remove.
6358         (scoped_free_pendings, record_block_range, make_blockvector)
6359         (prepare_for_building, reset_symtab_globals, buildsym_init):
6360         Update.
6361
6362 2018-07-20  Tom Tromey  <tom@tromey.com>
6363
6364         * xcoffread.c (process_linenos): Update.
6365         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6366         * mdebugread.c (psymtab_to_symtab_1): Update.
6367         * dwarf2read.c (setup_type_unit_groups)
6368         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6369         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6370         * dbxread.c (process_one_symbol): Update.
6371         * coffread.c (coff_symtab_read, enter_linenos)
6372         (process_coff_symbol): Update.
6373         * buildsym.h (current_subfile): Don't declare.
6374         (get_current_subfile): Declare.
6375         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6376         member.
6377         (start_subfile, free_buildsym_compunit, push_subfile)
6378         (prepare_for_building, start_symtab): Update.
6379         (get_current_subfile): New function.
6380
6381 2018-07-20  Tom Tromey  <tom@tromey.com>
6382
6383         * coffread.c (coff_symtab_read): Update.
6384         * xcoffread.c (read_xcoff_symtab): Update.
6385         * dwarf2read.c (new_symbol): Update.
6386         (read_func_scope, read_lexical_block_scope): Update.
6387         * dbxread.c (process_one_symbol): Update.
6388         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6389         (outermost_context_p): Remove macro.
6390         (outermost_context_p, get_current_context_stack)
6391         (get_context_stack_depth): Declare.
6392         (pop_context): Return struct context_stack.
6393         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6394         member.
6395         (context_stack_size): Remove.
6396         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6397         (prepare_for_building, end_symtab_get_static_block)
6398         (augment_type_symtab, push_context): Update.
6399         (pop_context): Return struct context_stack.
6400         (outermost_context_p, get_current_context_stack)
6401         (get_context_stack_depth): New functions.
6402         (buildsym_init): Update.
6403
6404 2018-07-20  Tom Tromey  <tom@tromey.com>
6405
6406         * rust-exp.y: Now a pure parser.  Update all rules.
6407         (%union): Move earlier.
6408         (current_parser, work_obstack): Remove globals.
6409         (rust_parser, ~rust_parser): Update.
6410         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6411         lex_character, lex_number, lex_string, lex_identifier,
6412         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6413         convert_name, convert_params_to_expression,
6414         convert_ast_to_expression, ast_basic_type, ast_operation,
6415         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6416         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6417         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6418         ast_array_type, ast_slice_type, ast_reference_type,
6419         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6420         (rust_parse): Update.
6421         (rustyyerror, rustyylex): Add parser parameter.
6422         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6423         (rust_lex_stringish_test, rust_lex_test_sequence)
6424         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6425         (rust_lex_test_push_back, rust_lex_tests): Update.
6426
6427 2018-07-19  Pedro Alves  <palves@redhat.com>
6428
6429         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6430         gdb::unique_xmalloc_ptr.
6431         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6432         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6433         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6434         copy-initialization.
6435         * guile/scm-pretty-print.c (ppscm_print_children): Use
6436         gdb::unique_xmalloc_ptr instead of cleanups.
6437         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6438         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6439         gdb::unique_xmalloc_ptr.
6440         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6441         Adjust to use gdb::unique_xmalloc_ptr.
6442         * guile/scm-utils.c (extract_arg): Adjust.
6443         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6444         gdb::unique_xmalloc_ptr instead of a cleanup.
6445
6446 2018-07-19  Tom Tromey  <tom@tromey.com>
6447
6448         * utils.c (do_value_free_to_mark)
6449         (make_cleanup_value_free_to_mark): Remove.
6450         * utils.h (make_cleanup_value_free_to_mark): Remove.
6451
6452 2018-07-19  Pedro Alves  <palves@redhat.com>
6453
6454         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6455         forwarding reference.
6456
6457 2018-07-18  Pedro Alves  <palves@redhat.com>
6458
6459         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6460         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6461         cleanup.
6462
6463 2018-07-18  Pedro Alves  <palves@redhat.com>
6464
6465         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6466         exceptions.
6467         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6468         (gdbscm_wrap): New.
6469         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6470         directly instead of a cleanup.
6471         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6472         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6473         (vlscm_binop_gdbthrow): New, factored out from ...
6474         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6475         (vlscm_rich_compare): Use gdbscm_wrap.
6476         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6477         instead of a cleanup.
6478         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6479         cleanup.
6480         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6481         Use xfree directly instead of a cleanup.
6482         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6483         Adjust to use gdbscm_wrap and scoped_value_mark.
6484         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6485         (gdbscm_value_address, gdbscm_value_dereference)
6486         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6487         scoped_value_mark.
6488         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6489         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6490         scoped_value_mark.
6491         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6492         gdbscm_wrap and scoped_value_mark.
6493         (gdbscm_value_to_string): Use xfree directly instead of a
6494         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6495         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6496         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6497         scoped_value_mark.
6498         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6499         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6500         scoped_value_mark.
6501         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6502         gdbscm_wrap.
6503
6504 2018-07-18  Tom de Vries  <tdevries@suse.de>
6505
6506         * findvar.c (default_read_var_value): Also resolve dynamic type for
6507         LOC_OPTIMIZED_OUT vars.
6508
6509 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6510
6511         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6512         decoding.
6513
6514 2018-07-17  Tom Tromey  <tom@tromey.com>
6515
6516         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6517         (compute_enum_list, pascm_set_param_value_x)
6518         (gdbscm_parameter_value): Update.
6519         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6520         (gdbscm_scm_to_host_string): Update.
6521         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6522         Update.
6523         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6524         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6525         * guile/scm-string.c (gdbscm_scm_to_string): Return
6526         unique_xmalloc_ptr.
6527         (gdbscm_scm_to_host_string): Likewise.
6528
6529 2018-07-17  Tom Tromey  <tom@tromey.com>
6530
6531         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6532         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6533         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6534         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6535         unique_xmalloc_ptr.
6536
6537 2018-07-17  Tom Tromey  <tom@tromey.com>
6538
6539         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6540         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6541         Update.
6542         * guile/scm-cmd.c (cmdscm_function): Update.
6543         * guile/scm-pretty-print.c
6544         (ppscm_print_exception_unless_memory_error): Update.
6545         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6546         Return unique_xmalloc_ptr.
6547
6548 2018-07-17  Tom Tromey  <tom@tromey.com>
6549
6550         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6551         Use string_printf.
6552
6553 2018-07-17  Jim Wilson  <jimw@sifive.com>
6554
6555         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6556         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6557         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6558         unecessary braces after EF_RISCV_RVC test.  Delete call to
6559         set_gdbarch_decr_pc_after_break.
6560
6561         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6562         RISCV_LAST_FP_REGNUM + 1.
6563         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6564
6565 2018-07-17  Tom Tromey  <tom@tromey.com>
6566
6567         * configure.ac: Remove --disable-gdbcli.
6568         * configure: Rebuild.
6569         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6570         (SUBDIR_CLI_CFLAGS): Remove.
6571         (SFILES): Use SUBDIR_CLI_SRCS.
6572         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6573
6574 2018-07-17  Tom Tromey  <tom@tromey.com>
6575
6576         PR gdb/18624:
6577         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6578
6579 2018-07-16  Jim Wilson  <jimw@sifive.com>
6580
6581         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6582
6583 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6584
6585         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6586         variable.
6587         (libunwind_frame_sniffer): Likewise.
6588         (libunwind_frame_prev_register): Likewise.
6589         (libunwind_sigtramp_frame_sniffer): Likewise.
6590         * ia64-tdep.c (ia64_access_reg): Likewise.
6591         (ia64_access_rse_reg): Likewise.
6592         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6593         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6594
6595 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6596
6597         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6598
6599 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6600
6601         * remote-sim.c (gdbsim_target::close,
6602         gdbsim_target::mourn_inferior): Remove unused variables.
6603
6604 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6605
6606         * ia64-tdep.c (ktab_buf): New global.
6607         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6608         (get_kernel_table): Adjust.
6609
6610 2018-07-16  Tom Tromey  <tom@tromey.com>
6611
6612         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6613         * dwarf2read.c (using_directives, new_symbol): Use
6614         outermost_context_p.
6615         * dbxread.c (process_one_symbol): Use outermost_context_p.
6616         * coffread.c (coff_symtab_read): Use outermost_context_p.
6617
6618 2018-07-16  Tom Tromey  <tom@tromey.com>
6619
6620         * dwarf2read.c (using_directives, read_func_scope)
6621         (read_lexical_block_scope): Update.
6622         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6623         * buildsym.h (local_using_directives, global_using_directives):
6624         Don't declare.
6625         (get_local_using_directives, set_local_using_directives)
6626         (get_global_using_directives): Declare.
6627         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6628         m_global_using_directives>: New members.
6629         (finish_block_internal, prepare_for_building)
6630         (reset_symtab_globals, end_symtab_get_static_block)
6631         (push_context): Update.
6632         (get_local_using_directives, set_local_using_directives)
6633         (get_global_using_directives): New functions.
6634         (buildsym_init): Update.
6635
6636 2018-07-16  Tom Tromey  <tom@tromey.com>
6637
6638         * xcoffread.c (xcoff_initial_scan): Don't call
6639         free_pending_blocks.
6640         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6641         * buildsym.h (class scoped_free_pendings): Add constructor.
6642         (free_pending_blocks): Don't declare.
6643         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6644         (free_pending_blocks): Now static.
6645
6646 2018-07-16  Tom Tromey  <tom@tromey.com>
6647
6648         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6649         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6650         member.
6651         (struct subfile_stack): Remove.
6652         (subfile_stack): Remove.
6653         (push_subfile, pop_subfile, buildsym_init): Update.
6654
6655 2018-07-16  Tom Tromey  <tom@tromey.com>
6656
6657         * buildsym.c (push_subfile): Use gdb_assert.
6658         (pop_subfile): Use gdb_assert.
6659
6660 2018-07-16  Tom Tromey  <tom@tromey.com>
6661
6662         * buildsym.h (merge_symbol_lists): Remove.
6663         * buildsym.c (merge_symbol_lists): Remove.
6664
6665 2018-07-16  Tom Tromey  <tom@tromey.com>
6666
6667         * stabsread.c (scan_file_globals): Update comment.
6668         * stabsread.h (scan_file_globals): Move from buildsym.h.
6669         * buildsym.h (scan_file_globals): Move to stabsread.h.
6670
6671 2018-07-16  Tom Tromey  <tom@tromey.com>
6672
6673         * xcoffread.c (xcoff_new_init): Update.
6674         * mipsread.c (mipscoff_new_init): Update.
6675         * mdebugread.c (mdebug_build_psymtabs): Update.
6676         * elfread.c (elf_new_init): Update.
6677         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6678         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6679         * buildsym.h (buildsym_new_init): Don't declare.
6680         * buildsym.c (buildsym_new_init): Remove.
6681
6682 2018-07-16  Tom Tromey  <tom@tromey.com>
6683
6684         * stabsread.h (within_function): Move from buildsym.h.
6685         * stabsread.c (start_stabs): Clear within_function.
6686         * coffread.c (coff_start_symtab): Clear within_function.
6687         * buildsym.h (within_function): Move to stabsread.h.
6688         * buildsym.c (prepare_for_building): Update.
6689
6690 2018-07-16  Tom Tromey  <tom@tromey.com>
6691
6692         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6693         * dwarf2read.c (dwarf2_start_symtab): Don't set
6694         processing_gcc_compilation.
6695         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6696
6697 2018-07-16  Tom Tromey  <tom@tromey.com>
6698
6699         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6700         (next_symbol_text_func): Move from buildsym.h.
6701         * stabsread.c (hashname): Move from buildsym.c.
6702         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6703         (next_symbol_text_func, hashname): Move to stabsread.h.
6704         * buildsym.c: Don't include bcache.h
6705         (hashname): Move to stasbread.c.
6706
6707 2018-07-16  Tom Tromey  <tom@tromey.com>
6708
6709         * buildsym.h (context_stack_size): Don't declare.
6710         * buildsym.c (context_stack_size): New global.
6711
6712 2018-07-16  Tom Tromey  <tom@tromey.com>
6713
6714         * dbxread.c (processing_acc_compilation): New global.
6715         * buildsym.h (processing_acc_compilation): Don't declare.
6716
6717 2018-07-16  Tom Tromey  <tom@tromey.com>
6718
6719         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6720         * dbxread.c (read_ofile_symtab): Update.
6721         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6722         * buildsym.h (last_source_start_addr): Remove.
6723         (set_last_source_start_addr, get_last_source_start_addr):
6724         Declare.
6725         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6726         parameter.
6727         (struct buildsym_compunit) <m_last_source_start_addr>: New
6728         member.
6729         (prepare_for_building): Remove start_addr parameter.
6730         (start_symtab, restart_symtab, end_symtab_get_static_block)
6731         (end_symtab_with_blockvector): Update.
6732         (set_last_source_start_addr, get_last_source_start_addr): New
6733         functions.
6734
6735 2018-07-16  Tom Tromey  <tom@tromey.com>
6736
6737         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6738         member.
6739         (have_line_numbers): Remove.
6740         (record_line, prepare_for_building, end_symtab_get_static_block)
6741         (augment_type_symtab): Update.
6742
6743 2018-07-16  Tom Tromey  <tom@tromey.com>
6744
6745         * buildsym.c (~buildsym_compunit): Free the macro table.
6746         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6747         methods.
6748         <m_pending_macros>: New member.
6749         (pending_macros): Remove.
6750         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6751         (reset_symtab_globals, end_symtab_get_static_block)
6752         (end_symtab_with_blockvector, augment_type_symtab)
6753         (buildsym_init): Update.
6754
6755 2018-07-16  Tom Tromey  <tom@tromey.com>
6756
6757         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6758         parameter.
6759         (buildsym_compunit::set_last_source_file): New method.
6760         <m_last_source_file>: New member.
6761         (prepare_for_building): Remove "name" parameter.
6762         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6763         (last_source_file): Remove.
6764         (set_last_source_file, get_last_source_file): Update.
6765
6766 2018-07-16  Tom Tromey  <tom@tromey.com>
6767
6768         * buildsym.c (prepare_for_building): Add assert.
6769
6770 2018-07-16  Tom Tromey  <tom@tromey.com>
6771
6772         * buildsym.c (~buildsym_compunit): Update.
6773         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6774         (start_subfile, patch_subfile_names)
6775         (end_symtab_with_blockvector): Update.
6776
6777 2018-07-16  Tom Tromey  <tom@tromey.com>
6778
6779         * buildsym.c (struct buildsym_compunit): Add constructor,
6780         destructor, initializers.
6781         (start_buildsym_compunit): Remove.
6782         (free_buildsym_compunit): Use "delete".
6783         (start_symtab, restart_symtab): Use "new".
6784
6785 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6786
6787         * symfile.c (set_objfile_default_section_offset): Remove struct
6788         keyword.
6789
6790 2018-07-14  Stafford Horne  <shorne@gmail.com>
6791
6792         * (Responsible Maintainers): Add myself as or1k maintainer.
6793
6794 2018-07-13  Tom Tromey  <tom@tromey.com>
6795
6796         * symfile.c (set_objfile_default_section_offset): Use extra braces
6797         around initializer.
6798
6799 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6800
6801         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6802         non-branching basr.
6803
6804 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6805
6806         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6807         unittests/cli-utils-selftests.c
6808         * unittests/cli-utils-selftests.c: New file.
6809
6810 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6811
6812         * NEWS: Mention new commands. Mention change to 'thread apply'.
6813
6814 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6815
6816         * thread.c (thr_try_catch_cmd): New function.
6817         (thread_apply_all_command): Handle qcs flags.
6818         (thread_apply_command): Handle qcs flags.
6819         (taas_command): New function.
6820         (tfaas_command): New function.
6821         (_initialize_thread): Update to setup the new commands 'taas
6822         and 'tfaas'. Change doc string for 'thread apply'.
6823
6824 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6825
6826         * stack.c: (trailing_outermost_frame): New function, mostly
6827         extracted from backtrace_command_1.
6828         (leading_innermost_frame): New function.
6829         (backtrace_command_1): Update to call trailing_outermost_frame.
6830         (frame_apply_command_count): New function.
6831         (frame_apply_level_command): New function.
6832         (frame_apply_all_command): New function.
6833         (frame_apply_command): New function.
6834         (faas_command): New function.
6835         (frame_cmd_list): New variable.
6836         (_initialize_stack): Update to setup the new commands 'frame apply'
6837         and 'faas'.
6838
6839 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6840
6841         * cli-utils.c (number_or_range_parser::get_number): Only handle
6842         numbers or convenience var as numbers.
6843         (parse_flags): New function.
6844         (parse_flags_qcs): New function.
6845         (number_or_range_parser::finished): Ensure parsing end is detected
6846         before end of string.
6847         * cli-utils.h (parse_flags): New function.
6848         (parse_flags_qcs): New function.
6849         (number_or_range_parser): Remove m_finished bool.
6850         (number_or_range_parser::skip_range): Set m_in_range to false.
6851
6852 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6853
6854         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6855         on Windows.
6856
6857 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6858             Jan Kratochvil  <jan.kratochvil@redhat.com>
6859             Paul Fertser  <fercerpav@gmail.com>
6860             Tsutomu Seki  <sekiriki@gmail.com>
6861             Pedro Alves  <palves@redhat.com>
6862
6863         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6864         'unittests/parse-connection-spec-selftests.c'.
6865         (COMMON_SFILES): Add 'common/netstuff.c'.
6866         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6867         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6868         * common/netstuff.c: New file.
6869         * common/netstuff.h: New file.
6870         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6871         (wait_for_connect): Update comment.  New parameter
6872         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6873         Use 'sock' directly instead of 'scb->fd'.
6874         (try_connect): New function, with code from 'net_open'.
6875         (net_open): Rewrite main loop to deal with multiple
6876         sockets/addresses.  Handle IPv6-style hostnames; implement
6877         support for IPv6 connections.
6878         * unittests/parse-connection-spec-selftests.c: New file.
6879
6880 2018-07-11  Pedro Alves  <palves@redhat.com>
6881
6882         PR gdb/23377
6883         * remote.c (remote_target::remote_detach_pid): Call
6884         set_current_process.
6885
6886 2018-07-11  Pedro Alves  <palves@redhat.com>
6887
6888         * h8300-tdep.c (h8300_gdbarch_init): Remove
6889         set_gdbarch_ecoff_reg_to_regnum calls.
6890
6891 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6892
6893         PR c++/23373
6894         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6895         offsets/sizes for static members of a class/struct.
6896
6897 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6898
6899         * target-descriptions.c (tdesc_register_bitsize): Rename.
6900         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6901         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6902         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6903
6904 2018-07-10  Tom Tromey  <tom@tromey.com>
6905
6906         * breakpoint.c (moribund_locations): Now static and a
6907         std::vector.
6908         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6909         (build_bpstat_chain, update_global_location_list)
6910         (breakpoint_retire_moribund): Update.
6911         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6912         VEC.
6913
6914 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6915
6916         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6917         (riscv_register_reggroup_p): Use new function, remove unneeded
6918         parenthesis.
6919         (riscv_push_dummy_call): Extend assert to compare against xlen or
6920         flen based on register type.
6921
6922 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6923
6924         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6925
6926 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6927
6928         * remote.c (show_hardware_watchpoint_limit): New function.
6929         (show_hardware_watchpoint_length_limit): New function.
6930         (show_hardware_breakpoint_limit): New function.
6931         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6932         where appropriate, update help text.
6933
6934 2018-07-09  Tom Tromey  <tom@tromey.com>
6935
6936         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6937         (CLIBS): Don't mention NAT_CLIBS.
6938
6939 2018-07-09  Tom Tromey  <tom@tromey.com>
6940
6941         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6942         (LIBGDB_OBS, clean mostlyclean): Update.
6943         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6944
6945 2018-07-09  Tom Tromey  <tom@tromey.com>
6946
6947         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6948         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6949         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6950
6951 2018-07-09  Tom Tromey  <tom@tromey.com>
6952
6953         * Makefile.in (ALLDEPFILES): Remove exec.c.
6954         (COMMON_OBS): Remove exec.o.
6955         (COMMON_SFILES): Add exec.c.
6956
6957 2018-07-09  Tom Tromey  <tom@tromey.com>
6958
6959         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6960
6961 2018-07-09  Tom Tromey  <tom@tromey.com>
6962
6963         * Makefile.in (clean mostlyclean): Remove stamp-version.
6964         (version.c): Depend on stamp-version.
6965         (stamp-version): New rule, from version.c rule.
6966
6967 2018-07-09  Tom Tromey  <tom@tromey.com>
6968
6969         * Makefile.in (init.c): Depend on stamp-init.
6970         (stamp-init): New rule, from init.c rule.
6971         (clean mostlyclean): Remove stamp-init.
6972
6973 2018-07-09  Tom Tromey  <tom@tromey.com>
6974
6975         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6976         SUBDIR_GCC_COMPILE_SRCS.
6977
6978 2018-07-09  Tom Tromey  <tom@tromey.com>
6979
6980         * Makefile.in (init.c): Remove some unused sed rules.
6981
6982 2018-07-09  Tom Tromey  <tom@tromey.com>
6983
6984         * Makefile.in (TSOBS): Remove.
6985         (INIT_FILES): Update.
6986         (LIBGDB_OBS): Update.
6987         (COMMON_SFILES): Add inflow.c.
6988         (SFILES): Remove inflow.c.
6989
6990 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6991
6992         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6993
6994 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6995
6996         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6997         get_saveloc_name, is_signal_frame_name, step_name,
6998         init_remote_name, create_addr_space_name,
6999         destroy_addr_space_name, search_unwind_table_name,
7000         find_dyn_list_name): Constify.
7001
7002 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
7003
7004         * darwin-nat.c (darwin_pthread_kill): New function.
7005         (darwin_resume_thread): Use darwin_pthread_kill.
7006
7007 2018-07-05  Tom de Vries  <tdevries@suse.de>
7008
7009         * macroexp.c (macro_buffer) <operator=>: New member function.
7010
7011 2018-07-04  Tom Tromey  <tom@tromey.com>
7012
7013         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
7014
7015 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
7016
7017         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
7018         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
7019         * maint.c: Likewise.
7020         * top.c: Likewise.
7021
7022 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7023
7024         * NEWS: Create a new section for the next release branch.
7025         Rename the section of the current branch, now that it has
7026         been cut.
7027
7028 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
7029
7030         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
7031         * version.in: Bump version to 8.2.50.DATE-git.
7032
7033 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
7034             Pedro Alves  <palves@redhat.com>
7035
7036         * linux-nat.c (linux_init_ptrace): Rename to ...
7037         (linux_init_ptrace_procfs): ... this.  Call
7038         linux_proc_init_warnings.
7039         (linux_nat_target::post_attach)
7040         (linux_nat_target::post_startup_inferior): Adjust.
7041         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
7042         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
7043
7044 2018-07-04  Tom de Vries  <tdevries@suse.de>
7045
7046         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
7047         check ...
7048         (read_comp_unit_head): ... here.
7049
7050 2018-07-03  Tom Tromey  <tom@tromey.com>
7051
7052         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
7053         (stop_tracing, tstatus_command)
7054         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
7055         (print_one_static_tracepoint_marker): Update.
7056         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
7057         std::vector.
7058         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
7059         VEC.
7060         (all_tracepoints, static_tracepoints_here): Return std::vector.
7061
7062 2018-07-03  Tom Tromey  <tom@tromey.com>
7063
7064         * common/ptid.c (ptid_equal): Remove.
7065         * common/ptid.h (ptid_equal): Don't declare.
7066         * ada-tasks.c: Update.
7067         * breakpoint.c: Update.
7068         * common/agent.c: Update.
7069         * corelow.c: Update.
7070         * darwin-nat-info.c: Update.
7071         * darwin-nat.c: Update.
7072         * dcache.c: Update.
7073         * dtrace-probe.c: Update.
7074         * dummy-frame.c: Update.
7075         * fbsd-nat.c: Update.
7076         * frame.c: Update.
7077         * gdbthread.h: Update.
7078         * gnu-nat.c: Update.
7079         * go32-nat.c: Update.
7080         * inf-loop.c: Update.
7081         * inf-ptrace.c: Update.
7082         * infcall.c: Update.
7083         * infcmd.c: Update.
7084         * inflow.c: Update.
7085         * infrun.c: Update.
7086         * linux-fork.c: Update.
7087         * linux-nat.c: Update.
7088         * linux-thread-db.c: Update.
7089         * mi/mi-cmd-var.c: Update.
7090         * mi/mi-interp.c: Update.
7091         * mi/mi-main.c: Update.
7092         * nto-procfs.c: Update.
7093         * ppc-linux-tdep.c: Update.
7094         * procfs.c: Update.
7095         * python/py-inferior.c: Update.
7096         * python/py-record-btrace.c: Update.
7097         * python/py-record.c: Update.
7098         * ravenscar-thread.c: Update.
7099         * regcache.c: Update.
7100         * remote-sim.c: Update.
7101         * remote.c: Update.
7102         * sol-thread.c: Update.
7103         * solib.c: Update.
7104         * target.c: Update.
7105         * tui/tui-stack.c: Update.
7106         * varobj.c: Update.
7107         * windows-nat.c: Update.
7108         * windows-tdep.c: Update.
7109
7110 2018-07-03  Tom Tromey  <tom@tromey.com>
7111
7112         * common/ptid.c (ptid_match): Remove.
7113         * common/ptid.h (ptid_match): Don't declare.
7114         * fbsd-nat.c: Update.
7115         * infcmd.c: Update.
7116         * infrun.c: Update.
7117         * linux-nat.c: Update.
7118         * record-btrace.c: Update.
7119         * regcache.c: Update.
7120         * remote.c: Update.
7121
7122 2018-07-03  Tom Tromey  <tom@tromey.com>
7123
7124         * common/ptid.c (ptid_tid_p): Remove.
7125         * common/ptid.h (ptid_tid_p): Don't declare.
7126         * sol-thread.c: Update.
7127
7128 2018-07-03  Tom Tromey  <tom@tromey.com>
7129
7130         * common/ptid.c (ptid_lwp_p): Remove.
7131         * common/ptid.h (ptid_lwp_p): Don't declare.
7132         * fbsd-nat.c: Update.
7133         * linux-nat.c: Update.
7134         * nat/linux-procfs.c: Update.
7135         * nat/x86-linux-dregs.c: Update.
7136         * sol-thread.c: Update.
7137
7138 2018-07-03  Tom Tromey  <tom@tromey.com>
7139
7140         * common/ptid.c (ptid_is_pid): Remove.
7141         * common/ptid.h (ptid_is_pid): Don't declare.
7142         * infrun.c: Update.
7143         * linux-nat.c: Update.
7144         * mi/mi-interp.c: Update.
7145         * remote.c: Update.
7146         * thread.c: Update.
7147
7148 2018-07-03  Tom Tromey  <tom@tromey.com>
7149
7150         * common/ptid.c (ptid_get_tid): Remove.
7151         * common/ptid.h (ptid_get_tid): Don't declare.
7152         * ada-tasks.c: Update.
7153         * aix-thread.c: Update.
7154         * bsd-uthread.c: Update.
7155         * darwin-nat.c: Update.
7156         * fbsd-nat.c: Update.
7157         * i386-darwin-nat.c: Update.
7158         * infrun.c: Update.
7159         * linux-tdep.c: Update.
7160         * nto-procfs.c: Update.
7161         * ppc-ravenscar-thread.c: Update.
7162         * python/py-infthread.c: Update.
7163         * ravenscar-thread.c: Update.
7164         * sol-thread.c: Update.
7165         * sparc-ravenscar-thread.c: Update.
7166         * windows-nat.c: Update.
7167
7168 2018-07-03  Tom Tromey  <tom@tromey.com>
7169
7170         * common/ptid.c (ptid_get_lwp): Remove.
7171         * common/ptid.h (ptid_get_lwp): Don't declare.
7172         * aarch64-linux-nat.c: Update.
7173         * ada-tasks.c: Update.
7174         * aix-thread.c: Update.
7175         * amd64-linux-nat.c: Update.
7176         * arm-linux-nat.c: Update.
7177         * corelow.c: Update.
7178         * fbsd-nat.c: Update.
7179         * fbsd-tdep.c: Update.
7180         * gnu-nat.c: Update.
7181         * i386-cygwin-tdep.c: Update.
7182         * i386-gnu-nat.c: Update.
7183         * i386-linux-nat.c: Update.
7184         * ia64-linux-nat.c: Update.
7185         * inf-ptrace.c: Update.
7186         * infrun.c: Update.
7187         * linux-fork.c: Update.
7188         * linux-nat.c: Update.
7189         * linux-tdep.c: Update.
7190         * linux-thread-db.c: Update.
7191         * mips-linux-nat.c: Update.
7192         * nat/aarch64-linux-hw-point.c: Update.
7193         * nat/aarch64-linux.c: Update.
7194         * nat/linux-btrace.c: Update.
7195         * nat/linux-osdata.c: Update.
7196         * nat/linux-procfs.c: Update.
7197         * nat/x86-linux-dregs.c: Update.
7198         * obsd-nat.c: Update.
7199         * ppc-fbsd-nat.c: Update.
7200         * ppc-linux-nat.c: Update.
7201         * procfs.c: Update.
7202         * python/py-infthread.c: Update.
7203         * ravenscar-thread.c: Update.
7204         * remote.c: Update.
7205         * s390-linux-nat.c: Update.
7206         * sol-thread.c: Update.
7207         * sol2-tdep.c: Update.
7208         * spu-linux-nat.c: Update.
7209         * x86-linux-nat.c: Update.
7210         * xtensa-linux-nat.c: Update.
7211
7212 2018-07-03  Tom Tromey  <tom@tromey.com>
7213
7214         * common/ptid.c (ptid_get_pid): Remove.
7215         * common/ptid.h (ptid_get_pid): Don't declare.
7216         * aarch64-linux-nat.c: Update.
7217         * ada-lang.c: Update.
7218         * aix-thread.c: Update.
7219         * alpha-bsd-nat.c: Update.
7220         * amd64-fbsd-nat.c: Update.
7221         * amd64-linux-nat.c: Update.
7222         * arm-linux-nat.c: Update.
7223         * arm-nbsd-nat.c: Update.
7224         * auxv.c: Update.
7225         * break-catch-syscall.c: Update.
7226         * breakpoint.c: Update.
7227         * bsd-uthread.c: Update.
7228         * corelow.c: Update.
7229         * ctf.c: Update.
7230         * darwin-nat.c: Update.
7231         * fbsd-nat.c: Update.
7232         * fbsd-tdep.c: Update.
7233         * gcore.c: Update.
7234         * gnu-nat.c: Update.
7235         * hppa-nbsd-nat.c: Update.
7236         * hppa-obsd-nat.c: Update.
7237         * i386-fbsd-nat.c: Update.
7238         * ia64-linux-nat.c: Update.
7239         * inf-ptrace.c: Update.
7240         * infcmd.c: Update.
7241         * inferior.c: Update.
7242         * inferior.h: Update.
7243         * inflow.c: Update.
7244         * infrun.c: Update.
7245         * linux-fork.c: Update.
7246         * linux-nat.c: Update.
7247         * linux-tdep.c: Update.
7248         * linux-thread-db.c: Update.
7249         * m68k-bsd-nat.c: Update.
7250         * mi/mi-interp.c: Update.
7251         * mi/mi-main.c: Update.
7252         * mips-linux-nat.c: Update.
7253         * mips-nbsd-nat.c: Update.
7254         * mips64-obsd-nat.c: Update.
7255         * nat/aarch64-linux-hw-point.c: Update.
7256         * nat/aarch64-linux.c: Update.
7257         * nat/linux-btrace.c: Update.
7258         * nat/linux-osdata.c: Update.
7259         * nat/linux-procfs.c: Update.
7260         * nat/x86-linux-dregs.c: Update.
7261         * nto-procfs.c: Update.
7262         * obsd-nat.c: Update.
7263         * ppc-linux-nat.c: Update.
7264         * ppc-nbsd-nat.c: Update.
7265         * ppc-obsd-nat.c: Update.
7266         * proc-service.c: Update.
7267         * procfs.c: Update.
7268         * python/py-inferior.c: Update.
7269         * python/py-infthread.c: Update.
7270         * ravenscar-thread.c: Update.
7271         * record.c: Update.
7272         * remote-sim.c: Update.
7273         * remote.c: Update.
7274         * rs6000-nat.c: Update.
7275         * s390-linux-nat.c: Update.
7276         * sh-nbsd-nat.c: Update.
7277         * sol-thread.c: Update.
7278         * sparc-nat.c: Update.
7279         * sparc64-tdep.c: Update.
7280         * spu-linux-nat.c: Update.
7281         * spu-tdep.c: Update.
7282         * target-debug.h: Update.
7283         * target.c: Update.
7284         * thread.c: Update.
7285         * tid-parse.c: Update.
7286         * tracefile-tfile.c: Update.
7287         * vax-bsd-nat.c: Update.
7288         * windows-nat.c: Update.
7289         * x86-linux-nat.c: Update.
7290         * x86-nat.c: Update.
7291
7292 2018-07-03  Tom Tromey  <tom@tromey.com>
7293
7294         * common/ptid.c (pid_to_ptid): Remove.
7295         * common/ptid.h (pid_to_ptid): Don't declare.
7296         * aix-thread.c: Update.
7297         * arm-linux-nat.c: Update.
7298         * common/ptid.c: Update.
7299         * common/ptid.h: Update.
7300         * corelow.c: Update.
7301         * ctf.c: Update.
7302         * darwin-nat.c: Update.
7303         * fbsd-nat.c: Update.
7304         * fork-child.c: Update.
7305         * gnu-nat.c: Update.
7306         * go32-nat.c: Update.
7307         * inf-ptrace.c: Update.
7308         * infcmd.c: Update.
7309         * inferior.c: Update.
7310         * infrun.c: Update.
7311         * linux-fork.c: Update.
7312         * linux-nat.c: Update.
7313         * nat/aarch64-linux-hw-point.c: Update.
7314         * nat/fork-inferior.c: Update.
7315         * nat/x86-linux-dregs.c: Update.
7316         * nto-procfs.c: Update.
7317         * obsd-nat.c: Update.
7318         * procfs.c: Update.
7319         * progspace.c: Update.
7320         * remote.c: Update.
7321         * rs6000-nat.c: Update.
7322         * s390-linux-nat.c: Update.
7323         * sol-thread.c: Update.
7324         * spu-linux-nat.c: Update.
7325         * target.c: Update.
7326         * top.c: Update.
7327         * tracefile-tfile.c: Update.
7328         * windows-nat.c: Update.
7329
7330 2018-07-03  Tom Tromey  <tom@tromey.com>
7331
7332         * common/ptid.h (ptid_build): Don't declare.
7333         * common/ptid.c (ptid_build): Remove.
7334         * aix-thread.c: Update.
7335         * bsd-kvm.c: Update.
7336         * bsd-uthread.c: Update.
7337         * common/agent.c: Update.
7338         * common/ptid.c: Update.
7339         * common/ptid.h: Update.
7340         * corelow.c: Update.
7341         * darwin-nat.c: Update.
7342         * fbsd-nat.c: Update.
7343         * gnu-nat.c: Update.
7344         * linux-fork.c: Update.
7345         * linux-nat.c: Update.
7346         * linux-thread-db.c: Update.
7347         * nat/linux-osdata.c: Update.
7348         * nat/linux-procfs.c: Update.
7349         * nto-procfs.c: Update.
7350         * obsd-nat.c: Update.
7351         * proc-service.c: Update.
7352         * procfs.c: Update.
7353         * ravenscar-thread.c: Update.
7354         * remote-sim.c: Update.
7355         * remote.c: Update.
7356         * sol-thread.c: Update.
7357         * target.c: Update.
7358         * windows-nat.c: Update.
7359
7360 2018-07-03  Tom Tromey  <tom@tromey.com>
7361
7362         * infrun.c (follow_exec): Use exit_inferior_silent.
7363         * inferior.c (exit_inferior_num_silent): Remove.
7364         * inferior.h (exit_inferior_num_silent): Don't declare.
7365
7366 2018-07-03  Tom Tromey  <tom@tromey.com>
7367
7368         PR cli/23340:
7369         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7370         inferior_ptid on error.
7371
7372 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7373             Simon Marchi  <simon.marchi@polymtl.ca>
7374
7375         PR tdep/8282
7376         * disasm.h (gdb_disassembler): Add
7377         `m_disassembler_options_holder'. member
7378         * disasm.c (get_all_disassembler_options): New function.
7379         (gdb_disassembler::gdb_disassembler): Use it.
7380         (gdb_buffered_insn_length_init_dis): Likewise.
7381         (gdb_buffered_insn_length): Adjust accordingly.
7382         (set_disassembler_options): Handle options with arguments.
7383         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7384         line if showing options with descriptions.
7385         (disassembler_options_completer): Adapt to using the
7386         `disasm_options_and_args_t' structure.
7387         * mips-tdep.c (mips_disassembler_options): New variable.
7388         (mips_disassembler_options_o32): Likewise.
7389         (mips_disassembler_options_n32): Likewise.
7390         (mips_disassembler_options_n64): Likewise.
7391         (gdb_print_insn_mips): Don't set `disassembler_options'.
7392         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7393         functions.
7394         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7395         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7396         `gdbarch_disassembler_options_implicit' and
7397         `gdbarch_valid_disassembler_options'.
7398         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7399         `disasm_options_and_args_t' structure.
7400         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7401         method.
7402         (valid_disassembler_options): Switch from `disasm_options_t' to
7403         the `disasm_options_and_args_t' structure.
7404         * NEWS: Document `set disassembler-options' support for the MIPS
7405         target.
7406         * gdbarch.h: Regenerate.
7407         * gdbarch.c: Regenerate.
7408
7409 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7410
7411         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7412
7413 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7414
7415         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7416         parameter in call to amd64_target_description.
7417         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7418         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7419         (amd64fbsd_init_abi): Likewise.
7420         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7421         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7422         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7423         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7424
7425 2018-06-29  Pedro Alves  <palves@redhat.com>
7426
7427         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7428         "segments" parameter.
7429         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7430         (_initialize_amd64_tdep): Update call to
7431         amd64_create_target_description.
7432         (amd64_target_description): Add "segments" parameter.  Adjust
7433         the implementation to use it.
7434         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7435         call to amd64_create_target_description.
7436         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7437         * gdb/arch/amd64.h (amd64_create_target_description): Add
7438         "segments" register.
7439         * gdb/arch/amd64.c (amd64_create_target_description): Add
7440         "segments" parameter.  Call create_feature_i386_64bit_segments
7441         only if SEGMENTS is true.
7442         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7443         call to amd64_create_target_description.
7444
7445 2018-06-29  Pedro Alves  <palves@redhat.com>
7446
7447         * thread.c (thread_target_id_str): New, factored out from ...
7448         (print_thread_info_1): ... here.  Use it to compute the max
7449         "Target Id" column width.
7450
7451 2018-06-29  Pedro Alves  <palves@redhat.com>
7452
7453         * remote.c (remote_target::extra_thread_info): Delete
7454         'display_buf' and 'n' locals.  from the cache, regardless of
7455         packet mechanims is in use.  Use cache for qThreadExtra and qP
7456         methods too.
7457
7458 2018-06-29  Pedro Alves  <palves@redhat.com>
7459
7460         * blockframe.c (find_pc_sect_containing_function): New function.
7461         * breakpoint.c (print_breakpoint_location): Don't call
7462         find_pc_sect_function.
7463         * linespec.c (create_sals_line_offset): Record the location's
7464         symbol in the sal.
7465         * linespec.c (convert_address_location_to_sals): Fill in sal's
7466         symbol with find_pc_sect_containing_function.
7467         * symtab.c (find_function_start_sal): Rename to ...
7468         (find_function_start_sal_1): ... this.
7469         (find_function_start_sal): Reimplement as wrapper around
7470         find_function_start_sal_1, and use
7471         find_pc_sect_containing_function to fill in the sal's symbol.
7472         (find_function_start_sal(symbol*, bool)): Adjust.
7473         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7474         comments.
7475         (find_pc_sect_containing_function): Declare.
7476
7477 2018-06-29  Pedro Alves  <palves@redhat.com>
7478
7479         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7480         true if the the location has no symbol.
7481
7482 2018-06-28  Tom Tromey  <tom@tromey.com>
7483
7484         * NEWS: Mention --enable-codesign.
7485         * silent-rules.mk (ECHO_SIGN): New variable.
7486         * configure.ac: Add --enable-codesign.
7487         * configure: Rebuild.
7488         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7489         (gdb$(EXEEXT)): Optionally invoke codesign.
7490
7491 2018-06-28  Pedro Alves  <palves@redhat.com>
7492
7493         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7494         comments.
7495         (switch_to_thread_no_regs): Adjust comment.
7496         * infcmd.c (stop_pc): Delete.
7497         (post_create_inferior, info_program_command): Replace references
7498         to stop_pc with references to thread_info->suspend.stop_pc.
7499         * inferior.h (stop_pc): Delete declaration.
7500         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7501         (handle_inferior_event_1, handle_signal_stop)
7502         (process_event_stop_test, keep_going_stepped_thread)
7503         (handle_step_into_function, handle_step_into_function_backward)
7504         (print_stop_location): Replace references to stop_pc with
7505         references to thread_info->suspend.stop_pc.
7506         (struct infcall_suspend_state) <stop_pc>: Delete field.
7507         (save_infcall_suspend_state, restore_infcall_suspend_state):
7508         Remove references to inf_stat->stop_pc.
7509         * linux-fork.c (fork_load_infrun_state): Likewise.
7510         * record-btrace.c (record_btrace_set_replay): Likewise.
7511         * record-full.c (record_full_goto_entry): Likewise.
7512         * remote.c (print_one_stopped_thread): Likewise.
7513         * target.c (target_resume): Extend comment.
7514         * thread.c (set_executing_thread): New.
7515         (set_executing): Use it.
7516         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7517         Remove references to stop_pc.
7518
7519 2018-06-28  Pedro Alves  <palves@redhat.com>
7520
7521         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7522         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7523
7524 2018-06-28  Tom Tromey  <tom@tromey.com>
7525
7526         * coffread.c (coff_symfile_finish): Update.
7527         * xcoffread.c (xcoff_symfile_finish): Update.
7528         * elfread.c (elf_symfile_finish): Update.
7529         * symfile.h (dwarf2_free_objfile): Don't declare.
7530         * dwarf2read.c (_initialize_dwarf2_read): Use
7531         register_objfile_data_with_cleanup.
7532         (dwarf2_free_objfile): Now static.  Change signature.
7533
7534 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7535
7536         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7537         option "-o" to add-symbol-file-load to add an offset to each
7538         section's load address.
7539         * symfile.c (set_objfile_default_section_offset): New function.
7540
7541 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7542
7543         * symfile.c (add_symbol_file_command): Make sure that sections
7544         with the same name are sorted in the same order.
7545
7546 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7547
7548         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7549         require the second argument.  If omitted, load sections at the
7550         addresses specified in the file.
7551
7552 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7553
7554         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7555         (_initialize_symfile): Add option "-o" to symbol-file to add an
7556         offset to each section of the symbol file.
7557
7558 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7559
7560         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7561
7562 2018-06-27  Tom Tromey  <tom@tromey.com>
7563
7564         * stack.c (_initialize_stack): Update "func" help text.
7565
7566 2018-06-27  Tom Tromey  <tom@tromey.com>
7567
7568         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7569         std::vector.
7570         (unwind_infopy_str, pyuw_create_unwind_info)
7571         (unwind_infopy_add_saved_register, pyuw_sniffer)
7572         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7573         Update.
7574         (struct saved_reg): Add constructor.
7575         <value>: Now a gdbpy_ref<>.
7576
7577 2018-06-27  Tom Tromey  <tom@tromey.com>
7578
7579         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7580
7581 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7582
7583         * gdb-gdb.py.in: Format using autopep8.
7584
7585 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7586
7587         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7588         (type_lookup_function): Recognize CORE_ADDR values.
7589
7590 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7591
7592         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7593         print tag_name.
7594
7595 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7596
7597         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7598         <__lt__>: Add.
7599
7600 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7601
7602         * gdb-gdb.py: Move to...
7603         * gdb-gdb.py.in: ... here.
7604         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7605         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7606         dependencies.
7607         (distclean): Remove gdb-gdb.py when cleaning.
7608         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7609         * configure: Re-generate.
7610
7611 2018-06-27  Pedro Alves  <palves@redhat.com>
7612
7613         * proc-service.c (get_ps_regcache): New.
7614         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7615         (ps_lsetfpregs): Use it.
7616
7617 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7618
7619         PR gdb/21695
7620         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7621         declaration.
7622         (dwarf_decode_lines_1): Adjust.
7623
7624 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7625
7626         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7627         override.
7628         <info_proc>: Likewise.
7629
7630 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7631
7632         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7633         to windows_fetch_one_register, and only handle the case of
7634         fetching one register.  Move the code that reloads the context
7635         and iterates over all registers if R is negative to...
7636         (windows_nat_target::fetch_registers): ... here.
7637         (do_windows_store_inferior_registers): Rename to
7638         windows_store_one_register, and only handle the case of storing
7639         one register.  Move the code that handles the case where r is
7640         negative to...
7641         (windows_nat_target::store_registers) ... here.
7642
7643 2018-06-26  Tom Tromey  <tom@tromey.com>
7644
7645         PR rust/22574:
7646         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7647         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7648         Update.
7649         (rust_internal_print_type): Add podata parameter.
7650         (rust_print_type): Update.
7651
7652 2018-06-26  Tom Tromey  <tom@tromey.com>
7653
7654         * typeprint.h (struct print_offset_data) <update, finish,
7655         maybe_print_hole>: New methods.
7656         <indentation>: New constant.
7657         * typeprint.c (print_offset_data::indentation): Define.
7658         (print_offset_data::maybe_print_hole, print_offset_data::update)
7659         (print_offset_data::finish): Move from c-typeprint.c and rename.
7660         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7661         (print_spaces_filtered_with_print_options): Update.
7662         (c_print_type_union_field_offset, maybe_print_hole)
7663         (c_print_type_struct_field_offset): Move to typeprint.c and
7664         rename.
7665         (c_type_print_base_struct_union): Update.
7666
7667 2018-06-25  Pedro Alves  <palves@redhat.com>
7668
7669         * gdbthread.h (thread_info_ref, delete_thread)
7670         (delete_thread_silent, first_thread_of_inferior)
7671         (any_thread_of_inferior, switch_to_thread)
7672         (enable_thread_stack_temporaries)
7673         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7674         (get_last_thread_stack_temporary)
7675         (value_in_thread_stack_temporaries, can_access_registers_thread):
7676         Spell out "struct thread_info" instead of just "thread_info".
7677         * inferior.h (notice_new_inferior): Likewise.
7678
7679 2018-06-25  Pedro Alves  <palves@redhat.com>
7680
7681         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7682         pass thread_info pointer to delete_thread.
7683         (windows_nat_target::detach): Pass inferior pointer to
7684         detach_inferior.
7685         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7686         delete_thread.
7687         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7688         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7689         and pass a thread_info pointer to delete_thread.
7690         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7691         pass thread_info pointer to delete_thread.
7692         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7693         delete_thread_silent call.
7694         * procfs.c (procfs_target::detach): Pass inferior pointer to
7695         detach_inferior.
7696         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7697         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7698         delete_thread_silent call.
7699         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7700         pass thread_info pointer to delete_thread.
7701         (windows_nat_target::detach): Pass inferior pointer to
7702         delete_inferior.
7703
7704 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7705
7706         * regcache.c (readable_regcache::read_part): Fix asserts.
7707         (reg_buffer::raw_collect_part): New function.
7708         (regcache::write_part): Fix asserts.
7709         (reg_buffer::raw_supply_part): New function.
7710         (regcache::transfer_regset_register): New helper function.
7711         (regcache::transfer_regset): Call new functions.
7712         (regcache_supply_regset): Use gdb_byte*.
7713         (regcache::supply_regset): Likewise.
7714         (regcache_collect_regset): Likewise.
7715         (regcache::collect_regset): Likewise.
7716         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7717         (reg_buffer::raw_supply_part): Likewise.
7718         (regcache::transfer_regset_register): Likewise.
7719         (regcache::transfer_regset): Use gdb_byte*.
7720
7721 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7722
7723         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7724
7725 2018-06-21  Pedro Alves  <palves@redhat.com>
7726
7727         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7728         instead of a ptid_t.  All callers adjusted.
7729         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7730         adjusted.
7731         (print_ada_task_info, display_current_task_id, task_command_1):
7732         Adjust.
7733         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7734         inferior_thread.
7735         (breakpoint_kind): Adjust.
7736         (remove_breakpoints_pid): Rename to ...
7737         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7738         pointer.  All callers adjusted.
7739         (bpstat_clear_actions): Use inferior_thread.
7740         (get_bpstat_thread): New.
7741         (bpstat_do_actions): Use it.
7742         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7743         to take a thread_info pointer.  All callers adjusted.
7744         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7745         (breakpoint_re_set_thread): Use inferior_thread.
7746         * breakpoint.h (struct inferior): Forward declare.
7747         (bpstat_stop_status): Update.
7748         (remove_breakpoints_pid): Delete.
7749         (remove_breakpoints_inf): New.
7750         * bsd-uthread.c (bsd_uthread_target::wait)
7751         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7752         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7753         (maint_btrace_packet_history_cmd)
7754         (maint_btrace_clear_packet_history_cmd): Adjust.
7755         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7756         inferior_thread.
7757         * cli/cli-interp.c: Include "inferior.h".
7758         * common/refcounted-object.h (struct
7759         refcounted_object_ref_policy): New.
7760         * compile/compile-object-load.c: Include gdbthread.h.
7761         (store_regs): Use inferior_thread.
7762         * corelow.c (core_target::close): Use current_inferior.
7763         (core_target_open): Adjust to use first_thread_of_inferior and use
7764         the current inferior.
7765         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7766         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7767         <thread>: ... this new field.  All references adjusted.
7768         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7769         Take a thread_info pointer instead of a ptid_t.
7770         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7771         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7772         thread_info pointer instead of a ptid_t.
7773         * elfread.c: Include "inferior.h".
7774         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7775         Use inferior_thread.
7776         * eval.c (evaluate_subexp): Likewise.
7777         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7778         inferior_thread.
7779         * gdb_proc_service.h (struct thread_info): Forward declare.
7780         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7781         <thread>: ... this new field.  All references adjusted.
7782         * gdbarch.h, gdbarch.c: Regenerate.
7783         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7784         'thread' parameter.  All implementations and callers adjusted.
7785         * gdbthread.h (thread_info) <set_running>: New method.
7786         (delete_thread, delete_thread_silent): Take a thread_info pointer
7787         instead of a ptid.
7788         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7789         (first_thread_of_process): Delete, replaced by ...
7790         (first_thread_of_inferior): ... this new function.  All callers
7791         adjusted.
7792         (any_live_thread_of_process): Delete, replaced by ...
7793         (any_live_thread_of_inferior): ... this new function.  All callers
7794         adjusted.
7795         (switch_to_thread, switch_to_no_thread): Declare.
7796         (is_executing): Delete.
7797         (enable_thread_stack_temporaries): Update comment.
7798         <enable_thread_stack_temporaries>: Take a thread_info pointer
7799         instead of a ptid_t.  Incref the thread.
7800         <~enable_thread_stack_temporaries>: Decref the thread.
7801         <m_ptid>: Delete
7802         <m_thr>: New.
7803         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7804         (get_last_thread_stack_temporary)
7805         (value_in_thread_stack_temporaries, can_access_registers_thread):
7806         Take a thread_info pointer instead of a ptid_t.  All callers
7807         adjusted.
7808         * infcall.c (get_call_return_value): Use inferior_thread.
7809         (run_inferior_call): Work with thread pointers instead of ptid_t.
7810         (call_function_by_hand_dummy): Work with thread pointers instead
7811         of ptid_t.  Use thread_info_ref.
7812         * infcmd.c (proceed_thread_callback): Access thread's state
7813         directly.
7814         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7815         access thread's state directly.
7816         (continue_command): Use inferior_thread.
7817         (info_program_command): Use find_thread_ptid and access thread
7818         state directly.
7819         (proceed_after_attach_callback): Use thread state directly.
7820         (notice_new_inferior): Take a thread_info pointer instead of a
7821         ptid_t.  All callers adjusted.
7822         (exit_inferior): Take an inferior pointer instead of a pid.  All
7823         callers adjusted.
7824         (exit_inferior_silent): New.
7825         (detach_inferior): Delete.
7826         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7827         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7828         (detach_inferior_command, kill_inferior_command): Use
7829         find_inferior_id instead of valid_gdb_inferior_id and
7830         gdb_inferior_id_to_pid.
7831         (inferior_command): Use inferior and thread pointers.
7832         * inferior.h (struct thread_info): Forward declare.
7833         (notice_new_inferior): Take a thread_info pointer instead of a
7834         ptid_t.  All callers adjusted.
7835         (detach_inferior): Delete declaration.
7836         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7837         instead of a pid.  All callers adjusted.
7838         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7839         (valid_gdb_inferior_id): Delete.
7840         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7841         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7842         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7843         ...
7844         <inf>: ... this new field.
7845         <step_ptid>: Delete, replaced by ...
7846         <step_thread>: ... this new field.
7847         (get_displaced_stepping_state): Take an inferior pointer instead
7848         of a pid.  All callers adjusted.
7849         (displaced_step_in_progress_any_inferior): Adjust.
7850         (displaced_step_in_progress_thread): Take a thread pointer instead
7851         of a ptid_t.  All callers adjusted.
7852         (displaced_step_in_progress, add_displaced_stepping_state): Take
7853         an inferior pointer instead of a pid.  All callers adjusted.
7854         (get_displaced_step_closure_by_addr): Adjust.
7855         (remove_displaced_stepping_state): Take an inferior pointer
7856         instead of a pid.  All callers adjusted.
7857         (displaced_step_prepare_throw, displaced_step_prepare)
7858         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7859         All callers adjusted.
7860         (start_step_over): Adjust.
7861         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7862         displaced step queue.
7863         (do_target_resume): Adjust.
7864         (fetch_inferior_event): Use inferior_thread.
7865         (context_switch, get_inferior_stop_soon): Take an
7866         execution_control_state pointer instead of a ptid_t.  All callers
7867         adjusted.
7868         (switch_to_thread_cleanup): Delete.
7869         (stop_all_threads): Use scoped_restore_current_thread.
7870         * inline-frame.c: Include "gdbthread.h".
7871         (inline_state) <inline_state>: Take a thread pointer instead of a
7872         ptid_t.  All callers adjusted.
7873         <ptid>: Delete, replaced by ...
7874         <thread>: ... this new field.
7875         (find_inline_frame_state): Take a thread pointer instead of a
7876         ptid_t.  All callers adjusted.
7877         (skip_inline_frames, step_into_inline_frame)
7878         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7879         pointer instead of a ptid_t.  All callers adjusted.
7880         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7881         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7882         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7883         pointers directly.
7884         * linux-nat.c (get_detach_signal): Likewise.
7885         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7886         (thread_db_notice_clone): Adjust.
7887         (thread_db_find_new_threads_silently)
7888         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7889         a thread pointer instead of a ptid_t.  All callers adjusted.
7890         * mi/mi-cmd-var.c: Include "inferior.h".
7891         (mi_cmd_var_update_iter): Update to use thread pointers.
7892         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7893         inferior directly.
7894         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7895         out to ...
7896         (mi_output_running): ... this new function.
7897         (mi_on_resume_1): Adjust to use it.
7898         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7899         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7900         directly.
7901         (interrupt_thread_callback): : Adjust to use thread and inferior
7902         pointers.
7903         * proc-service.c: Include "gdbthread.h".
7904         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7905         * progspace-and-thread.c: Include "inferior.h".
7906         * progspace.c: Include "inferior.h".
7907         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7908         hold a reference to an inferior_object.
7909         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7910         inferior_thread.
7911         * python/py-inferior.c (struct inferior_object): Give the type a
7912         tag name instead of a typedef.
7913         (python_on_normal_stop): No need to check if the current thread is
7914         listed.
7915         (inferior_to_inferior_object): Change return type to
7916         inferior_object.  All callers adjusted.
7917         (find_thread_object): Delete, bits factored out to ...
7918         (thread_to_thread_object): ... this new function.
7919         * python/py-infthread.c (create_thread_object): Use
7920         inferior_to_inferior_object.
7921         (thpy_is_stopped): Use thread pointer directly.
7922         (gdbpy_selected_thread): Use inferior_thread.
7923         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7924         field, replaced with ...
7925         <thread>: ... this new field.  All users adjusted.
7926         (btpy_insn_or_gap_new): Drop const.
7927         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7928         callers adjusted.
7929         * python/py-record.c: Include "gdbthread.h".
7930         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7931         a ptid_t.  All callers adjusted.
7932         (gdbpy_current_recording): Use inferior_thread.
7933         * python/py-record.h (recpy_record_object) <ptid>: Delete
7934         field, replaced with ...
7935         <thread>: ... this new field.  All users adjusted.
7936         (recpy_element_object) <ptid>: Delete
7937         field, replaced with ...
7938         <thread>: ... this new field.  All users adjusted.
7939         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7940         a ptid_t.  All callers adjusted.
7941         * python/py-threadevent.c: Include "gdbthread.h".
7942         (get_event_thread): Use thread_to_thread_object.
7943         * python/python-internal.h (struct inferior_object): Forward
7944         declare.
7945         (find_thread_object, find_inferior_object): Delete declarations.
7946         (thread_to_thread_object, inferior_to_inferior_object): New
7947         declarations.
7948         * record-btrace.c: Include "inferior.h".
7949         (require_btrace_thread): Use inferior_thread.
7950         (record_btrace_frame_sniffer)
7951         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7952         (get_thread_current_frame): Use scoped_restore_current_thread and
7953         switch_to_thread.
7954         (get_thread_current_frame): Use thread pointer directly.
7955         (record_btrace_replay_at_breakpoint): Use thread's inferior
7956         pointer directly.
7957         * record-full.c: Include "inferior.h".
7958         * regcache.c: Include "gdbthread.h".
7959         (get_thread_arch_regcache): Use the inferior's address space
7960         directly.
7961         (get_thread_regcache, registers_changed_thread): New.
7962         * regcache.h (get_thread_regcache(thread_info *thread)): New
7963         overload.
7964         (registers_changed_thread): New.
7965         (remote_target) <remote_detach_1>: Swap order of parameters.
7966         (remote_add_thread): <remote_add_thread>: Return the new thread.
7967         (get_remote_thread_info(ptid_t)): New overload.
7968         (remote_target::remote_notice_new_inferior): Use thread pointers
7969         directly.
7970         (remote_target::process_initial_stop_replies): Use
7971         thread_info::set_running.
7972         (remote_target::remote_detach_1, remote_target::detach)
7973         (extended_remote_target::detach): Adjust.
7974         * stack.c (frame_show_address): Use inferior_thread.
7975         * target-debug.h (target_debug_print_thread_info_pp): New.
7976         * target-delegates.c: Regenerate.
7977         * target.c (default_thread_address_space): Delete.
7978         (memory_xfer_partial_1): Use current_inferior.
7979         (target_detach): Use current_inferior.
7980         (target_thread_address_space): Delete.
7981         (generic_mourn_inferior): Use current_inferior.
7982         * target.h (struct target_ops) <thread_address_space>: Delete.
7983         (target_thread_address_space): Delete.
7984         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7985         pointers directly.
7986         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7987         thread pointer instead of a ptid_t.  Adjust all callers.
7988         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7989         (first_thread_of_process): Delete, replaced by ...
7990         (first_thread_of_inferior): ... this new function.  All callers
7991         adjusted.
7992         (any_thread_of_process): Rename to ...
7993         (any_thread_of_inferior): ... this, and take an inferior pointer.
7994         (any_live_thread_of_process): Rename to ...
7995         (any_live_thread_of_inferior): ... this, and take an inferior
7996         pointer.
7997         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7998         (value_in_thread_stack_temporaries)
7999         (get_last_thread_stack_temporary): Take a thread pointer instead
8000         of a ptid_t.  Adjust all callers.
8001         (thread_info::set_running): New.
8002         (validate_registers_access): Use inferior_thread.
8003         (can_access_registers_ptid): Rename to ...
8004         (can_access_registers_thread): ... this, and take a thread
8005         pointer.
8006         (print_thread_info_1): Adjust to compare thread pointers instead
8007         of ptids.
8008         (switch_to_no_thread, switch_to_thread): Make extern.
8009         (scoped_restore_current_thread::~scoped_restore_current_thread):
8010         Use m_thread pointer directly.
8011         (scoped_restore_current_thread::scoped_restore_current_thread):
8012         Use inferior_thread.
8013         (thread_command): Use thread pointer directly.
8014         (thread_num_make_value_helper): Use inferior_thread.
8015         * top.c (execute_command): Use inferior_thread.
8016         * tui/tui-interp.c: Include "inferior.h".
8017         * varobj.c (varobj_create): Use inferior_thread.
8018         (value_of_root_1): Use find_thread_global_id instead of
8019         global_thread_id_to_ptid.
8020
8021 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
8022
8023         * regcache.c (readable_regcache::read_part): Avoid memcpy when
8024         possible.
8025         (regcache::write_part): Likewise.
8026         (readable_regcache::cooked_read_part): Update comment.
8027         (readable_regcache::cooked_write_part): Likewise.
8028         * regcache.h: (readable_regcache::read_part): Likewise.
8029         (regcache::write_part): Likewise.
8030
8031 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
8032             Dirk Schubert  <dirk.schubert@arm.com>
8033
8034         * aarch64-linux-nat.c (post_attach): New.
8035         (aarch64_linux_nat_target::post_attach): Override post_attach to
8036         record the number of hardware debug registers.
8037
8038 2018-06-20  Tom Tromey  <tom@tromey.com>
8039
8040         * python/py-param.c (add_setshow_generic): Make parameters const.
8041         (parmpy_init): Update.
8042
8043 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8044
8045         * regcache.h (regcache_cooked_read_ftype): Rename to...
8046         (register_read_ftype): ...this, change type to function_view.
8047         (class reg_buffer) <save>: Remove src parameter.
8048         (readonly_detached_regcache) <readonly_detached_regcache>: Make
8049         parameter non-const in first overload.  Remove src parameter in
8050         second overload.
8051         * regcache.c (do_cooked_read): Remove.
8052         (readonly_detached_regcache::readonly_detached_regcache): Make
8053         parameter non-const, adjust call to other constructor.
8054         (reg_buffer::save): Remove src parameter.
8055         * frame.c (do_frame_register_read): Remove.
8056         (frame_save_as_regcache): Use lambda function.
8057         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
8058         parameter to ppu2spu_data *.
8059         (ppu2spu_sniffer): Use lambda function.
8060
8061 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
8062
8063         * record-full.c (record_full_target::insert_breakpoint): Remove
8064         "struct" keyword, add const.
8065
8066 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
8067
8068         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
8069         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
8070         * configure.ac: Remove AC_PREREQ, add missing quoting.
8071         * gnulib/configure.ac: Modernize usage of
8072         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
8073         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
8074         (AUTOMAKE_VERSION): Bump to 1.15.1.
8075         * configure: Re-generate.
8076         * config.in: Re-generate.
8077         * aclocal.m4: Re-generate.
8078         * gnulib/aclocal.m4: Re-generate.
8079         * gnulib/config.in: Re-generate.
8080         * gnulib/configure: Re-generate.
8081         * gnulib/import/Makefile.in: Re-generate.
8082
8083 2018-06-19  Pedro Alves  <palves@redhat.com>
8084
8085         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
8086         (lookup_minimal_symbol_by_pc_section): ... here with
8087         gdb_assert_not_reached added.
8088
8089 2018-06-19  Pedro Alves  <palves@redhat.com>
8090
8091         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
8092         parameter with a block parameter.  Compare location's block symbol
8093         with the frame's block instead of addresses.
8094         (skip_inline_frames): Pass the current block instead of the
8095         frame's address.  Break out as soon as we determine the frame
8096         should not be skipped.
8097
8098 2018-06-18  Tom Tromey  <tom@tromey.com>
8099
8100         * solib-aix.c (solib_aix_get_section_offsets): Return
8101         unique_xmalloc_ptr.
8102         (solib_aix_solib_create_inferior_hook): Update.
8103
8104 2018-06-18  Tom Tromey  <tom@tromey.com>
8105
8106         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
8107
8108 2018-06-18  Tom Tromey  <tom@tromey.com>
8109
8110         * solib-frv.c (frv_relocate_main_executable): Use
8111         unique_xmalloc_ptr.
8112         * solib-dsbt.c (dsbt_relocate_main_executable): Use
8113         unique_xmalloc_ptr.
8114
8115 2018-06-18  Tom Tromey  <tom@tromey.com>
8116
8117         * objfiles.h (inhibit_section_map_updates): Update.
8118         (resume_section_map_updates, resume_section_map_updates_cleanup):
8119         Remove.
8120         * solib-svr4.c (svr4_handle_solib_event): Update.
8121         * objfiles.c (inhibit_section_map_updates): Return
8122         scoped_restore_tmpl<int>.
8123         (resume_section_map_updates, resume_section_map_updates_cleanup):
8124         Remove.
8125
8126 2018-06-18  Tom Tromey  <tom@tromey.com>
8127
8128         * valprint.h (read_string): Update.
8129         * valprint.c (read_string): Change type of "buffer".
8130         (val_print_string): Update.
8131         * python/py-value.c (valpy_string): Update.
8132         * language.h (struct language_defn) <la_get_string>: Change
8133         type of "buffer".
8134         (default_get_string, c_get_string): Update.
8135         * language.c (default_get_string): Change type of "buffer".
8136         * guile/scm-value.c (gdbscm_value_to_string): Update.
8137         * c-lang.c (c_get_string): Change type of "buffer".
8138
8139 2018-06-18  Tom Tromey  <tom@tromey.com>
8140
8141         * ser-mingw.c (struct pipe_state_destroyer): New.
8142         (pipe_state_up): New typedef.
8143         (cleanup_pipe_state): Remove.
8144         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8145
8146 2018-06-18  Tom Tromey  <tom@tromey.com>
8147
8148         * rust-lang.h (rust_yyerror): Don't declare.
8149         * rust-lang.c (rust_language_defn): Update.
8150         * rust-exp.y (yyerror): Now static.
8151         * parse.c (parse_exp_in_context_1): Update.
8152         * p-lang.h (p_yyerror): Don't declare.
8153         * p-lang.c (p_language_defn): Update.
8154         * p-exp.y (yyerror): Now static.
8155         * opencl-lang.c (opencl_language_defn): Update.
8156         * objc-lang.c (objc_language_defn): Update.
8157         * m2-lang.h (m2_yyerror): Don't declare.
8158         * m2-lang.c (m2_language_defn): Update.
8159         * m2-exp.y (yyerror): Now static.
8160         * language.h (struct language_defn) <la_error>: Remove.
8161         * language.c (unk_lang_error): Remove.
8162         (unknown_language_defn, auto_language_defn): Remove.
8163         * go-lang.h (go_yyerror): Don't declare.
8164         * go-lang.c (go_language_defn): Update.
8165         * go-exp.y (yyerror): Now static.
8166         * f-lang.h (f_yyerror): Don't declare.
8167         * f-lang.c (f_language_defn): Update.
8168         * f-exp.y (yyerror): Now static.
8169         * d-lang.h (d_yyerror): Don't declare.
8170         * d-lang.c (d_language_defn): Update.
8171         * d-exp.y (yyerror): Now static.
8172         * c-lang.h (c_yyerror): Don't declare.
8173         * c-lang.c (c_language_defn, cplus_language_defn)
8174         (asm_language_defn, minimal_language_defn): Update.
8175         * c-exp.y (yyerror): Now static.
8176         * ada-lang.h (ada_yyerror): Don't declare.
8177         * ada-lang.c (ada_language_defn): Update.
8178         * ada-exp.y (yyerror): Now static.
8179
8180 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8181
8182         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8183         (store_sveregs_to_thread): Likewise.
8184         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8185         (aarch64_linux_store_inferior_registers): Likewise.
8186         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8187         function.
8188         (aarch64_sve_regs_copy_to_regcache): Likewise.
8189         (aarch64_sve_regs_copy_from_regcache): Likewise.
8190         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8191         declaration.
8192         (aarch64_sve_regs_copy_to_regcache): Likewise.
8193         (aarch64_sve_regs_copy_from_regcache): Likewise.
8194         (sve_context): Structure from Linux headers.
8195         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8196         (SVE_SIG_ZREG_SIZE): Likewise.
8197         (SVE_SIG_PREG_SIZE): Likewise.
8198         (SVE_SIG_FFR_SIZE): Likewise.
8199         (SVE_SIG_REGS_OFFSET): Likewise.
8200         (SVE_SIG_ZREGS_OFFSET): Likewise.
8201         (SVE_SIG_ZREG_OFFSET): Likewise.
8202         (SVE_SIG_ZREGS_SIZE): Likewise.
8203         (SVE_SIG_PREGS_OFFSET): Likewise.
8204         (SVE_SIG_PREG_OFFSET): Likewise.
8205         (SVE_SIG_PREGS_SIZE): Likewise.
8206         (SVE_SIG_FFR_OFFSET): Likewise.
8207         (SVE_SIG_REGS_SIZE): Likewise.
8208         (SVE_SIG_CONTEXT_SIZE): Likewise.
8209         (SVE_PT_REGS_MASK): Likewise.
8210         (SVE_PT_REGS_FPSIMD): Likewise.
8211         (SVE_PT_REGS_SVE): Likewise.
8212         (SVE_PT_VL_INHERIT): Likewise.
8213         (SVE_PT_VL_ONEXEC): Likewise.
8214         (SVE_PT_REGS_OFFSET): Likewise.
8215         (SVE_PT_FPSIMD_OFFSET): Likewise.
8216         (SVE_PT_FPSIMD_SIZE): Likewise.
8217         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8218         (SVE_PT_SVE_PREG_SIZE): Likewise.
8219         (SVE_PT_SVE_FFR_SIZE): Likewise.
8220         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8221         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8222         (__SVE_SIG_TO_PT): Likewise.
8223         (SVE_PT_SVE_OFFSET): Likewise.
8224         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8225         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8226         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8227         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8228         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8229         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8230         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8231         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8232         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8233         (SVE_PT_SVE_SIZE): Likewise.
8234         (SVE_PT_SIZE): Likewise.
8235         (HAS_SVE_STATE): New define.
8236
8237 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8238
8239         * nat/aarch64-sve-linux-sigcontext.h: New file.
8240         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8241         new files.
8242         (SVE_VQ_MIN): Likewise.
8243         (SVE_VQ_MAX): Likewise.
8244         (SVE_VL_MIN): Likewise.
8245         (SVE_VL_MAX): Likewise.
8246         (SVE_NUM_ZREGS): Likewise.
8247         (SVE_NUM_PREGS): Likewise.
8248         (sve_vl_valid): Likewise.
8249         (struct user_sve_header): Likewise.
8250
8251 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8252             Richard Bunt <Richard.Bunt@arm.com>
8253
8254         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8255         was requested by GDB.
8256
8257 2018-06-15  Tom de Vries  <tdevries@suse.de>
8258
8259         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8260
8261 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8262
8263         * gnulib/update-gnulib.sh: Print expected versions of
8264         autoconf/aclocal.
8265
8266 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8267
8268         * arch-utils.c (default_type_align): Use type_length_units.
8269         * gdbtypes.c (type_align): Use type_length_units.
8270
8271 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8272
8273         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8274         of 'define' command.
8275
8276 2018-06-14  Tom de Vries  <tdevries@suse.de>
8277
8278         PR cli/22573
8279         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8280         get_no_prettyformat_print_options.
8281
8282 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8283
8284         * sparc-nat.h: Include target.h.
8285         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8286         <fetch_registers>: Remove this argument in function call.
8287         <store_registers>: Remove this argument in function call, remove
8288         extra semicolon.
8289         <low_forget_process>: Call sparc64_forget_process instead of
8290         sparc_forget_process.
8291
8292 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8293
8294         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8295         (procfs_target::make_corefile_notes): Adjust to new
8296         target_read_alloc return type.
8297
8298 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8299             Stephen Roberts  <stephen.roberts@arm.com>
8300
8301         PR gdb/22882
8302         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8303         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8304         Move should_notify_stop local into more inner scope.
8305
8306 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8307             Stephen Roberts  <stephen.roberts@arm.com>
8308
8309         PR gdb/22882
8310         * infrun.c (resume_1): Add call to mark_async_event_handler.
8311
8312 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8313
8314         * infrun.c (do_target_wait): Change old version of $pc printed.
8315
8316 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8317
8318         * dwarf2read.c (read_index_from_section): Rename to...
8319         (read_gdb_index_from_section): ... this, update all callers.
8320         (dwarf2_read_index): Rename to...
8321         (dwarf2_read_gdb_index): ... this, update all callers.
8322
8323 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8324
8325         * hppa-linux-nat.c
8326         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8327         hppa_linux_nat_target::fetch_registers.
8328
8329 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8330
8331         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8332         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8333         (AARCH64_DWARF_SVE_FFR): Likewise.
8334         (AARCH64_DWARF_SVE_P0): Likewise.
8335         (AARCH64_DWARF_SVE_Z0): Likewise.
8336
8337 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8338
8339         * common/common-regcache.h (raw_compare): New function.
8340         * regcache.c (regcache::raw_compare): Likewise.
8341         * regcache.h (regcache::raw_compare): New declaration.
8342
8343 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8344
8345         * common/common-regcache.h (reg_buffer_common): New structure.
8346         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8347         (reg_buffer::raw_supply): Likewise.
8348         (reg_buffer::raw_supply_integer): Likewise.
8349         (reg_buffer::raw_supply_zeroed): Likewise.
8350         (reg_buffer::raw_collect): Likewise.
8351         (reg_buffer::raw_collect_integer): Likewise.
8352         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8353         (reg_buffer::raw_supply): Likewise.
8354         (reg_buffer::raw_supply_integer): Likewise.
8355         (reg_buffer::raw_supply_zeroed): Likewise.
8356         (reg_buffer::raw_collect): Likewise.
8357         (reg_buffer::raw_collect_integer): Likewise.
8358
8359 2018-06-10  Tom Tromey  <tom@tromey.com>
8360
8361         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8362         (class remote_state) <stop_reply_queue>: Now std::vector.
8363         (remote_state::~remote_state)
8364         (remote_target::stop_reply_queue_length): Update.
8365         (struct queue_iter_param, remove_child_of_pending_fork)
8366         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8367         (check_pending_event_prevents_wildcard_vcont_callback)
8368         (remove_stop_reply_for_inferior)
8369         (remove_stop_reply_of_remote_state)
8370         (remote_notif_remove_once_on_match)
8371         (stop_reply_match_ptid_and_ws)
8372         (remote_kill_child_of_pending_fork): Remove.
8373         (remote_target::remove_new_fork_children)
8374         (remote_target::check_pending_events_prevent_wildcard_vcont)
8375         (remote_target::discard_pending_stop_replies)
8376         (remote_target::discard_pending_stop_replies_in_queue)
8377         (remote_target::remote_notif_remove_queued_reply)
8378         (remote_target::queued_stop_reply)
8379         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8380         (remote_target::wait, remote_target::kill_new_fork_children)
8381         (remote_target::async): Update.
8382
8383 2018-06-10  Tom Tromey  <tom@tromey.com>
8384
8385         * record-full.c (record_full_arch_list_cleanups): Remove.
8386         (record_full_message): Use try/catch.
8387         (record_full_wait_cleanups): Remove.
8388         (record_full_wait_1): Use try/catch.
8389         (record_full_restore): Likewise.
8390
8391 2018-06-10  Tom Tromey  <tom@tromey.com>
8392
8393         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8394         declare VEC.  Add constructor.
8395         <in_target_beneath>: Now bool.
8396         (record_full_breakpoints): Now a std::vector, static.
8397         (record_full_sync_record_breakpoints)
8398         (record_full_init_record_breakpoints)
8399         (record_full_target::insert_breakpoint)
8400         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8401
8402 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8403
8404         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8405         * serial.c (serial_interface_lookup): Remove struct keyword.
8406
8407 2018-06-10  Tom Tromey  <tom@tromey.com>
8408
8409         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8410         method.
8411         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8412         a method.
8413         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8414         method.
8415         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8416         "beneath" as a method.
8417         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8418         Use "beneath" as a method.
8419
8420 2018-06-10  Tom Tromey  <tom@tromey.com>
8421
8422         * tracefile.c (struct trace_file_writer_deleter): New.
8423         <operator()>: Rename from trace_file_writer_xfree.
8424         (trace_file_writer_up): New typedef.
8425         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8426
8427 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8428
8429         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8430         <m_registers, m_register_status>: Change type to
8431         std::unique_ptr.
8432         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8433         XCNEWVEC.
8434
8435 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8436
8437         * common/common-regcache.h (enum register_status): Add
8438         underlying type "signed char".
8439         * regcache.h (reg_buffer) <m_register_status>: Change type to
8440         register_status *.
8441         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8442         register_status instead of signed char.
8443         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8444         (reg_buffer::get_register_status): Remove cast.
8445         (readable_regcache::raw_read): Remove cast.
8446         (readable_regcache::cooked_read): Remove cast.
8447
8448 2018-06-09  Tom Tromey  <tom@tromey.com>
8449
8450         * source.c (reverse_search_command, forward_search_command): Use
8451         scoped_fd.
8452
8453 2018-06-09  Tom Tromey  <tom@tromey.com>
8454
8455         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8456         (serial_ops_list): Now static, std::vector.
8457         (serial_interface_lookup, serial_add_interface): Update.
8458
8459 2018-06-09  Tom Tromey  <tom@tromey.com>
8460
8461         * dwarf2read.c (process_cu_includes): Update.
8462         (process_full_comp_unit): Update.
8463         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8464         std::vector.
8465
8466 2018-06-08  Paul Koning  <paul_koning@dell.com>
8467
8468         PR gdb/23252
8469
8470         * python/python.c (do_start_initialization):
8471         Avoid call to internal Python API.
8472         (init__gdb_module): New function.
8473
8474 2018-06-08  Gary Benson <gbenson@redhat.com>
8475
8476         * linux-thread-db.c (valprint.h): New include.
8477         (struct check_thread_db_info): New structure.
8478         (check_thread_db_on_load, tdb_testinfo): New static globals.
8479         (check_thread_db, check_thread_db_callback): New functions.
8480         (try_thread_db_load_1): Run integrity checks if requested.
8481         (maintenance_check_libthread_db): New function.
8482         (_initialize_thread_db): Register "maint check libthread-db"
8483         and "maint set/show check-libthread-db".
8484         * NEWS: Mention the above new commands.
8485
8486 2018-06-08  Tom Tromey  <tom@tromey.com>
8487
8488         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8489         now a method.
8490
8491 2018-06-08  Tom Tromey  <tom@tromey.com>
8492
8493         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8494
8495 2018-06-08  Tom Tromey  <tom@tromey.com>
8496
8497         * common/btrace-common.h (struct btrace_data): Add constructor,
8498         destructor, move assignment operator.
8499         <empty, clear, fini>: New methods.
8500         <format>: Initialize.
8501         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8502         (btrace_data_empty): Don't declare.
8503         * common/btrace-common.c (btrace_data_init): Remove.
8504         (btrace_data::fini): Rename from btrace_data_fini.
8505         (btrace_data::empty): Rename from btrace_data_empty.
8506         (btrace_data::clear): Rename from btrace_data_clear.  Return
8507         bool.
8508         * btrace.h (make_cleanup_btrace_data): Don't declare.
8509         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8510         (parse_xml_btrace): Update.
8511         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8512         (maint_btrace_clear_packet_history_cmd): Update.
8513
8514 2018-06-07  Pedro Alves  <palves@redhat.com>
8515
8516         * target.h (target_ops) <beneath>: Now a method.  All references
8517         updated.
8518         (class target_stack): New.
8519         * target.c (g_target_stack): New.
8520         (g_current_top_target): Delete.
8521         (current_top_target): Get the top target out of g_target_stack.
8522         (target_stack::push, target_stack::unpush): New.
8523         (push_target, unpush_target): Reimplement.
8524         (target_is_pushed): Reimplement in terms of g_target_stack.
8525         (target_ops::beneath, target_stack::find_beneath): New.
8526
8527 2018-06-07  Pedro Alves  <palves@redhat.com>
8528
8529         * target.h (find_target_beneath): Delete declaration.
8530         * target.c (find_target_beneath): Delete definition.
8531         * aix-thread.c: All callers of find_target_beneath adjusted to
8532         call target_ops::beneath instead.
8533         * bsd-uthread.c: Likewise.
8534         * linux-thread-db.c: Likewise.
8535         * ravenscar-thread.c: Likewise.
8536         * sol-thread.c: Likewise.
8537         * spu-multiarch.c: Likewise.
8538
8539 2018-06-07  Pedro Alves  <palves@redhat.com>
8540
8541         * target.h (target_ops) <beneath>: Now a method.  All references
8542         updated.
8543         (target_ops) <m_beneath>: New.
8544         * target.c (target_ops::beneath): New.
8545         * corelow.c: Adjust all references to target_ops::beneath.
8546         * linux-thread-db.c: Likewise.
8547         * make-target-delegates: Likewise.
8548         * record-btrace.c: Likewise.
8549         * record-full.c: Likewise.
8550         * remote.c: Likewise.
8551         * target.c: Likewise.
8552         * target-delegates.c: Regenerate.
8553
8554 2018-06-07  Pedro Alves  <palves@redhat.com>
8555
8556         * target.h (target_stack): Delete.
8557         (current_top_target): Declare function.
8558         * target.c (target_stack): Delete.
8559         (g_current_top_target): New.
8560         (current_top_target): New function.
8561         * auxv.c: Use current_top_target instead of target_stack
8562         throughout.
8563         * avr-tdep.c: Likewise.
8564         * breakpoint.c: Likewise.
8565         * corefile.c: Likewise.
8566         * elfread.c: Likewise.
8567         * eval.c: Likewise.
8568         * exceptions.c: Likewise.
8569         * frame.c: Likewise.
8570         * gdbarch-selftests.c: Likewise.
8571         * gnu-v3-abi.c: Likewise.
8572         * ia64-tdep.c: Likewise.
8573         * ia64-vms-tdep.c: Likewise.
8574         * infcall.c: Likewise.
8575         * infcmd.c: Likewise.
8576         * infrun.c: Likewise.
8577         * linespec.c: Likewise.
8578         * linux-tdep.c: Likewise.
8579         * minsyms.c: Likewise.
8580         * ppc-linux-nat.c: Likewise.
8581         * ppc-linux-tdep.c: Likewise.
8582         * procfs.c: Likewise.
8583         * regcache.c: Likewise.
8584         * remote.c: Likewise.
8585         * rs6000-tdep.c: Likewise.
8586         * s390-linux-nat.c: Likewise.
8587         * s390-tdep.c: Likewise.
8588         * solib-aix.c: Likewise.
8589         * solib-darwin.c: Likewise.
8590         * solib-dsbt.c: Likewise.
8591         * solib-spu.c: Likewise.
8592         * solib-svr4.c: Likewise.
8593         * solib-target.c: Likewise.
8594         * sparc-tdep.c: Likewise.
8595         * sparc64-tdep.c: Likewise.
8596         * spu-tdep.c: Likewise.
8597         * symfile.c: Likewise.
8598         * symtab.c: Likewise.
8599         * target-descriptions.c: Likewise.
8600         * target-memory.c: Likewise.
8601         * target.c: Likewise.
8602         * target.h: Likewise.
8603         * tracefile-tfile.c: Likewise.
8604         * tracepoint.c: Likewise.
8605         * valops.c: Likewise.
8606         * valprint.c: Likewise.
8607         * value.c: Likewise.
8608         * windows-tdep.c: Likewise.
8609         * mi/mi-main.c: Likewise.
8610
8611 2018-06-07  Tom Tromey  <tom@tromey.com>
8612
8613         * valprint.h (build_address_symbolic): Declare.
8614         * printcmd.c (print_address_symbolic): Update.
8615         (build_address_symbolic): Change "name" and "filename" to
8616         std::string.
8617         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8618         Update.
8619         * defs.h (build_address_symbolic): Remove declaration.
8620
8621 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8622
8623         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8624         (aarch64_vnv_type): Add function.
8625         (aarch64_pseudo_register_name): Add V regs for SVE.
8626         (aarch64_pseudo_register_type): Likewise.
8627         (aarch64_pseudo_register_reggroup_p): Likewise.
8628         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8629         (aarch64_pseudo_read_value): Add V regs for SVE.
8630         (aarch64_pseudo_write_2): Use V0 offset for SVE
8631         (aarch64_pseudo_write): Add V regs for SVE.
8632         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8633
8634 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8635
8636         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8637         (sve_vl_from_vq): Likewise.
8638
8639 2018-06-05  Tom Tromey  <tom@tromey.com>
8640
8641         * cli/cli-cmds.c (show_version): Update.
8642         * top.c (print_gdb_version): Add "interactive" parameter.
8643         Update.
8644         * main.c (captured_main_1): Update.
8645         * top.h (print_gdb_version): Add "interactive" parameter and a
8646         comment.
8647
8648 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8649
8650         * common/enum-flags.h: Add trailing semicolon to example in
8651         comment.
8652
8653 2018-06-05  Tom Tromey  <tom@tromey.com>
8654
8655         PR cli/12326:
8656         * NEWS: Add entry about pager.
8657         * utils.c (pagination_disabled_for_command): New global.
8658         (prompt_for_continue): Allow "c" response to prompt.
8659         (reinitialize_more_filter): Clear
8660         pagination_disabled_for_command.
8661         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8662
8663 2018-06-04  Tom Tromey  <tom@tromey.com>
8664
8665         * ada-lang.h (ada_lookup_symbol_list): Update.
8666         * ada-lang.c (resolve_subexp): Update.
8667         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8668         parameter.
8669         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8670         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8671         results parameter to std::vector.
8672         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8673         Update.
8674         * ada-exp.y (block_lookup): Update.
8675         (select_possible_type_sym): Change type of syms.  Remove nsyms
8676         parameter.
8677         (write_var_or_type, write_name_assoc): Update.
8678
8679 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8680
8681         * windows-nat.c (windows_nat_target::xfer_partial): Return
8682         TARGET_XFER_E_IO if we need to delegate to the target beneath
8683         but BENEATH is NULL.
8684
8685 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8686
8687         * Makefile.in (config.status): Add configure.nat as a
8688         dependency.
8689
8690 2018-06-04  Tom Tromey  <tom@tromey.com>
8691
8692         * cp-name-parser.y (cpname_state): Add method declarations.
8693         (HANDLE_QUAL): Update.
8694         (cpname_state::d_grab, cpname_state::fill_comp)
8695         (cpname_state::make_operator, cpname_state::make_dtor)
8696         (cpname_state::make_builtin_type, cpname_state::make_name)
8697         (cpname_state::d_qualify, cpname_state::d_int_type)
8698         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8699         (%union): Move earlier.
8700
8701 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8702
8703         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8704
8705 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8706
8707         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8708         (aarch64_pseudo_write_1): Likewise.
8709         (aarch64_pseudo_read_value): Use helper.
8710         (aarch64_pseudo_write): Likewise.
8711
8712 2018-06-04  Pedro Alves  <palves@redhat.com>
8713
8714         * darwin-nat.c (darwin_ops): Delete.
8715         (darwin_attach_pid): Use get_native_target.
8716
8717 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8718
8719         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8720         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8721
8722 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8723
8724         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8725         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8726         (aarch64_gdbarch_init): Check for SVE.
8727         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8728
8729 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8730
8731         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8732         * aarch64-tdep.h (aarch64_read_description): Likewise.
8733         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8734         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8735         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8736         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8737         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8738
8739 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8740
8741         * value.c (value_fetch_lazy_bitfield): New.
8742         (value_fetch_lazy_memory): New.
8743         (value_fetch_lazy_register): New.
8744         (value_fetch_lazy): Factor out to smaller functions.
8745
8746 2018-06-01  Tom Tromey  <tom@tromey.com>
8747
8748         * cp-name-parser.y (backslashable, represented): Now const.
8749
8750 2018-06-01  Tom Tromey  <tom@tromey.com>
8751
8752         * cp-name-parser.y: Include parser-defs.h.
8753         (parser_fprintf): Remove declaration.
8754
8755 2018-06-01  Tom Tromey  <tom@tromey.com>
8756
8757         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8758         %parse-param.
8759         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8760         (global_result): Remove globals.
8761         (struct cpname_state): New.
8762         (yyparse): Don't declare.
8763         (yylex, yyerror): Move declarations after %union.
8764         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8765         (make_name): Add state parameter.
8766         Update all callers.
8767         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8768         parameter.
8769         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8770         Update.
8771         (yylex): Add lvalp, state parameters.
8772         (yyerror): Add state parameter.
8773         (cp_demangled_name_to_comp): Update.
8774
8775 2018-06-01  Tom Tromey  <tom@tromey.com>
8776
8777         * cp-name-parser.y (parser_fprintf): Declare.
8778         (GDB_YY_REMAP_PREFIX): Define.
8779         Include yy-remap.h.  Don't redefine yy* identifiers.
8780
8781 2018-06-01  Tom Tromey  <tom@tromey.com>
8782
8783         * python/py-type.c (typy_legacy_template_argument): Update.
8784         * cp-support.h (cp_demangled_name_to_comp): Update.
8785         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8786         parameter to be a "std::string *".
8787         (main): Update.
8788
8789 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8790
8791         * ada-lex.l: Include "diagnostics.h" instead of
8792         "common/diagnostics.h".
8793         * unittests/environ-selftests.c: Likewise.
8794         * common/diagnostics.h: Moved to ../include.
8795
8796 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8797
8798         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8799         to language_mode_manual while calling breakpoint_re_set_one.
8800
8801 2018-06-01  Tom Tromey  <tom@tromey.com>
8802
8803         * valops.c (value_cast_structs, destructor_name_p): Update.
8804         * symtab.c (gdb_mangle_name): Update.
8805         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8806         Update.
8807         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8808         (pascal_object_print_value_fields, pascal_object_print_value):
8809         Update.
8810         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8811         * linespec.c (find_methods): Update.
8812         * gdbtypes.h (type_name_no_tag): Remove.
8813         (type_name_or_error): Rename from type_name_no_tag_or_error.
8814         * gdbtypes.c (type_name_no_tag): Remove.
8815         (type_name_or_error): Rename from type_name_no_tag_or_error.
8816         (lookup_struct_elt_type, check_typedef): Update.
8817         * expprint.c (print_subexp_standard): Update.
8818         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8819         * d-namespace.c (d_lookup_nested_symbol): Update.
8820         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8821         (cp_print_class_member): Update.
8822         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8823         * completer.c (add_struct_fields): Update.
8824         * c-typeprint.c (cp_type_print_derivation_info)
8825         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8826         Update.
8827         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8828         (ada_prefer_type, ada_is_exception_sym): Update.
8829
8830 2018-06-01  Tom Tromey  <tom@tromey.com>
8831
8832         * valops.c (enum_constant_from_type, value_namespace_elt)
8833         (value_maybe_namespace_elt): Update.
8834         * valarith.c (find_size_for_pointer_math): Update.
8835         * target-descriptions.c (make_gdb_type): Update.
8836         * symmisc.c (print_symbol): Update.
8837         * stabsread.c (define_symbol, read_type)
8838         (complain_about_struct_wipeout, add_undefined_type)
8839         (cleanup_undefined_types_1): Update.
8840         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8841         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8842         (rust_internal_print_type, rust_composite_type)
8843         (rust_evaluate_funcall, rust_evaluate_subexp)
8844         (rust_inclusive_range_type_p): Update.
8845         * python/py-type.c (typy_get_tag): Update.
8846         * p-typeprint.c (pascal_type_print_base): Update.
8847         * mdebugread.c (parse_symbol, parse_type): Update.
8848         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8849         Update.
8850         * guile/scm-type.c (gdbscm_type_tag): Update.
8851         * go-lang.c (sixg_string_p): Update.
8852         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8853         Update.
8854         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8855         (TYPE_TAG_NAME): Remove.
8856         * gdbtypes.c (type_name_no_tag): Simplify.
8857         (check_typedef, check_types_equal, recursive_dump_type)
8858         (copy_type_recursive, arch_composite_type): Update.
8859         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8860         in summary mode when needed.
8861         * eval.c (evaluate_funcall): Update.
8862         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8863         (process_structure_scope, read_enumeration_type)
8864         (read_namespace_type, read_module_type, determine_prefix): Update.
8865         * cp-support.c (inspect_type): Update.
8866         * coffread.c (process_coff_symbol, decode_base_type): Update.
8867         * c-varobj.c (c_is_path_expr_parent): Update.
8868         * c-typeprint.c (c_type_print_base_struct_union): Update.
8869         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8870         summary when using C language.
8871         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8872         (gen_maybe_namespace_elt): Update.
8873         * ada-lang.c (ada_type_name): Simplify.
8874         (empty_record, ada_template_to_fixed_record_type_1)
8875         (template_to_static_fixed_type)
8876         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8877
8878 2018-06-01  Tom Tromey  <tom@tromey.com>
8879
8880         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8881         c_print_type.
8882         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8883         (c_print_type): Update.
8884         (c_print_type): New overload.
8885         (c_type_print_varspec_prefix, c_type_print_args)
8886         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8887         (c_type_print_base_struct_union, c_type_print_base_1)
8888         (cp_type_print_method_args): Add "language" parameter.
8889         (c_type_print_base): Update.
8890         * c-lang.h (c_print_type): Add new overload.
8891
8892 2018-06-01  Tom Tromey  <tom@tromey.com>
8893
8894         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8895         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8896
8897 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8898
8899         * aarch64-tdep.c (aarch64_sve_register_names): New const
8900         var.
8901         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8902         (AARCH64_SVE_Z_REGS_NUM): New define.
8903         (AARCH64_SVE_P_REGS_NUM): Likewise.
8904         (AARCH64_SVE_NUM_REGS): Likewise.
8905
8906 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8907
8908         * nat/linux-ptrace.h [__alpha__]
8909         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8910         definitions.
8911
8912 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8913
8914         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8915         the endianness selected.
8916         * NEWS: Document `set endian auto' mode operation update.
8917
8918 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8919
8920         * Makefile.in: Add new header.
8921         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8922         (sve_vl_from_vg): Likewise.
8923         (sve_vq_from_vl): Likewise.
8924         (sve_vl_from_vq): Likewise.
8925         (sve_vq_from_vg): Likewise.
8926         (sve_vg_from_vq): Likewise.
8927         * configure.nat: Add new c file.
8928         * nat/aarch64-sve-linux-ptrace.c: New file.
8929         * nat/aarch64-sve-linux-ptrace.h: New file.
8930
8931 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8932
8933         * aarch64-linux-nat.c (aarch64_linux_read_description):
8934         Add parmeter zero.
8935         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8936         Likewise.
8937         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8938         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8939         (aarch64_gdbarch_init): Add parmeter zero.
8940         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8941         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8942         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8943         parmeter.
8944         * doc/gdb.texinfo: Describe SVE feature
8945         * features/aarch64-sve.c: New file.
8946
8947 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8948
8949         PR gdb/23210
8950         * gdbarch.sh (significant_addr_bit): Default to zero when
8951         not set by target architecture.
8952         * gdbarch.c: Re-generated.
8953         * utils.c (address_significant): Update.
8954
8955 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8956
8957         * stack.c (func_command): Remove trailing newline in call to error.
8958
8959 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8960
8961         * regcache.h (regcache_raw_collect): Remove, update callers to
8962         use regcache::raw_collect.
8963         * regcache.c (regcache_raw_collect): Remove.
8964
8965 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8966
8967         * regcache.h (regcache_raw_supply): Remove, update callers to
8968         use detached_regcache::raw_supply.
8969         * regcache.c (regcache_raw_supply): Remove.
8970
8971 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8972
8973         * regcache.h (regcache_cooked_write_part): Remove, update
8974         callers to use regcache::cooked_write_part.
8975         * regcache.c (regcache_cooked_write_part): Remove.
8976
8977 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8978
8979         * regcache.h (regcache_cooked_read_part): Remove, update callers
8980         to use readable_regcache::cooked_read_part.
8981         * regcache.c (regcache_cooked_read_part): Remove.
8982
8983 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8984
8985         * regcache.h (regcache_cooked_read_value): Remove, update
8986         callers to use readable_regcache::cooked_read_value.
8987         * regcache.c (regcache_cooked_read_value): Remove.
8988
8989 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8990
8991         * regcache.h (regcache_cooked_write): Remove, update callers to
8992         use regcache::cooked_write.
8993         * regcache.c (regcache_cooked_write): Remove.
8994
8995 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8996
8997         * regcache.h (regcache_invalidate): Remove, update callers to
8998         use detached_regcache::invalidate instead.
8999         * regcache.c (regcache_invalidate): Remove.
9000
9001 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9002
9003         * regcache.h (regcache_raw_write_part): Remove, update callers
9004         to use regcache::raw_write_part instead.
9005         * regcache.c (regcache_raw_write_part): Remove.
9006
9007 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9008
9009         * regcache.h (regcache_raw_read_part): Remove, update callers to
9010         use readable_regcache::raw_read_part instead.
9011         * regcache.c (regcache_raw_read_part): Remove.
9012
9013 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9014
9015         * regcache.h (regcache_cooked_read): Remove, update callers to
9016         use readable_regcache::cooked_read instead.
9017         * regcache.c (regcache_cooked_read): Remove.
9018
9019 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9020
9021         * regcache.h (regcache_raw_write): Remove, update callers to use
9022         regcache::raw_write instead.
9023         * regcache.c (regcache_raw_write): Remove.
9024
9025 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9026
9027         * regcache.h (regcache_raw_read): Remove, update callers to use
9028         readable_regcache::raw_read instead.
9029         * regcache.c (regcache_raw_read): Remove.
9030
9031 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9032
9033         * regcache.h (regcache_raw_update): Remove, update callers to
9034         use readable_regcache::raw_update instead.
9035         * regcache.c (regcache_raw_update): Remove.
9036
9037 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9038
9039         * regcache.h (regcache_register_status): Remove, update callers
9040         to use reg_buffer::get_register_status directly instead.
9041         * regcache.c (regcache_register_status): Remove.
9042
9043 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9044
9045         * regcache.h (regcache_get_ptid): Remove, update all callers to
9046         call regcache::ptid instead.
9047         * regcache.c (regcache_get_ptid): Remove.
9048
9049 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
9050
9051         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
9052
9053 2018-05-30  Pedro Alves  <palves@redhat.com>
9054
9055         * common/common-exceptions.h (exception_rethrow): Use
9056         ATTRIBUTE_NORETURN.
9057
9058 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
9059
9060         * breakpoint.c (print_solib_event, check_status_catch_solib):
9061         Remove struct keyword in range-based for loops.
9062         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
9063         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
9064         Likewise.
9065         * linespec.c (find_superclass_methods, search_minsyms_for_name):
9066         Likewise.
9067         * symfile.c (addr_info_make_relative): Likewise.
9068         * thread.c (value_in_thread_stack_temporaries): Likewise.
9069
9070 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
9071
9072         PR gdb/16841
9073         * valops.c (value_struct_elt_for_reference): Call check_typedef on
9074         aggregate type to get its real type before accessing it.
9075
9076 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
9077
9078         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
9079         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
9080         * coff-pe-read.c (add_pe_forwarded_sym): Replace
9081         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
9082         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
9083         * jit.c (jit_breakpoint_re_set_internal): Likewise.
9084         * printcmd.c (info_address_command): Likewise.
9085
9086 2018-05-29  Tom Tromey  <tom@tromey.com>
9087
9088         * windows-nat.c (handle_exception): Update fall-through comment.
9089
9090 2018-05-29  Tom Tromey  <tom@tromey.com>
9091
9092         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
9093         (struct program_space) <added_solibs>: Now a std::vector.
9094         * breakpoint.c (print_solib_event): Update.
9095         (check_status_catch_solib): Update.
9096         * progspace.c (clear_program_space_solib_cache): Update.
9097         * solib.c (update_solib_list): Update.
9098
9099 2018-05-29  Tom Tromey  <tom@tromey.com>
9100
9101         * python/py-type.c (typy_richcompare): Update.
9102         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
9103         * gdbtypes.h (types_deeply_equal): Return bool.
9104         (types_equal): Likewise.
9105         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
9106         declare VEC.
9107         (check_types_equal): Change worklist to std::vector.  Return
9108         bool.
9109         (struct type_equality_entry): Add constructor.
9110         (compare_maybe_null_strings): Return bool.
9111         (check_types_worklist): Return bool.  Change worklist to
9112         std::vector.
9113         (types_deeply_equal): Use std::vector.
9114         (types_equal): Return bool.
9115         (compare_maybe_null_strings): Simplify.
9116
9117 2018-05-29  Tom Tromey  <tom@tromey.com>
9118
9119         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9120
9121 2018-05-29  Tom Tromey  <tom@tromey.com>
9122
9123         * objc-lang.h: Don't include cp-support.h.
9124         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9125         declare VEC.
9126
9127 2018-05-27  Tom Tromey  <tom@tromey.com>
9128
9129         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9130
9131 2018-05-25  Tom Tromey  <tom@tromey.com>
9132
9133         * value.c (value::location): Initialize.
9134
9135 2018-05-25  Tom Tromey  <tom@tromey.com>
9136
9137         * dbxread.c (init_bincl_list): Remove.
9138         (bincl_list): Now a std::vector.
9139         (bincls_allocated, next_bincl): Remove.
9140         (free_bincl_list, do_free_bincl_list_cleanup)
9141         (make_cleanup_free_bincl_list): Remove.
9142         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9143         unique_xmalloc_ptr.
9144         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9145         (struct header_file_location): Add constructor.
9146         (add_bincl_to_list): Remove.
9147
9148 2018-05-25  Tom Tromey  <tom@tromey.com>
9149
9150         * tui/tui.c (tui_enable): Update.
9151         * mi/mi-interp.c (mi_interp::init): Update.
9152         * interps.h (class interp) <name>: New method.
9153         <m_name>: Rename from name.
9154         (~scoped_restore_interp): Update.
9155         * interps.c (interp::interp): Update.
9156         (interp_add, interp_set, interp_lookup_existing)
9157         (current_interp_named_p): Update.
9158
9159 2018-05-25  Tom Tromey  <tom@tromey.com>
9160
9161         * interps.c (interp_name): Remove.
9162         * mi/mi-interp.c (mi_interp::init): Update.
9163         * interps.h (interp_name): Remove.
9164         (~scoped_restore_interp): Update.
9165         * tui/tui.c (tui_enable): Update.
9166
9167 2018-05-25  Tom Tromey  <tom@tromey.com>
9168
9169         * utils.c (fputs_maybe_filtered): Update.
9170         * linespec.c (decode_line_full): Update.
9171         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9172         (mi_print_breakpoint_for_event, mi_solib_loaded)
9173         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9174         (mi_user_selected_context_changed): Update.
9175         * mi/mi-main.c (mi_execute_command): Update.
9176         * cli/cli-script.c (execute_control_command): Update.
9177         * python/python.c (execute_gdb_command): Update.
9178         * solib.c (info_sharedlibrary_command): Update.
9179         * interps.c (interp_ui_out): Remove.
9180         * interps.h (interp_ui_out): Remove.
9181
9182 2018-05-25  Tom Tromey  <tom@tromey.com>
9183
9184         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9185         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9186         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9187
9188 2018-05-25  Tom Tromey  <tom@tromey.com>
9189
9190         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9191         * interps.c (interp_exec): Use scoped_restore.
9192
9193 2018-05-25  Tom Tromey  <tom@tromey.com>
9194
9195         * remote.c (remote_target::remote_file_get): Use
9196         gdb::byte_vector.
9197         (remote_target::remote_file_put): Likewise.
9198
9199 2018-05-25  Tom Tromey  <tom@tromey.com>
9200
9201         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9202         a std::string.
9203         (get_pe_section_index, add_pe_exported_sym): Update.
9204         (read_pe_exported_syms): Use gdb::def_vector.
9205
9206 2018-05-25  Tom Tromey  <tom@tromey.com>
9207
9208         * frame.c (remove_prev_frame): Remove.
9209         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9210
9211 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9212
9213         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9214         Remove prototypes.
9215         * mips-linux-nat.c (supply_fpregset): Always call
9216         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9217         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9218         `mips_fill_fpregset'.
9219         * mips-linux-tdep.c (mips_supply_fpregset)
9220         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9221         (mips_fill_fpregset_wrapper): Remove functions.
9222         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9223         (mips_linux_fpregset): Remove variable.
9224         (mips_linux_iterate_over_regset_sections): Use
9225         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9226         (mips_linux_o32_sigframe_init): Remove comment.
9227
9228 2018-05-25  Pedro Alves  <palves@redhat.com>
9229
9230         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9231         (struct readahead_cache, struct packet_reg, struct
9232         remote_arch_state, class remote_state): Move higher up in the
9233         file.
9234         (remote_target::m_remote_state): Now an object instead of a pointer.
9235         (remote_target::get_remote_state): Adjust.
9236
9237 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9238
9239         * stack.c (select_and_print_frame): Delete.
9240         (struct function_bounds): Move struct within function.
9241         (func_command): Most content moved into new function
9242         find_frame_for_function, use new function, print result, add
9243         function comment.
9244         (find_frame_for_function): New function, now returns a result.
9245
9246 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9247
9248         * stack.c (iterate_over_block_arg_vars): Fix comment.
9249         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9250
9251 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9252
9253         PR gdb/23203
9254         * frame.c
9255         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9256         Define.
9257         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9258         Define.
9259         * frame.h (class scoped_restore_selected_frame): New class.
9260         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9261         of any exception, use scoped_restore_selected_frame to restore the
9262         frame instead.
9263
9264 2018-05-24  Pedro Alves  <palves@redhat.com>
9265
9266         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9267         override.
9268
9269 2018-05-23  Tom Tromey  <tom@tromey.com>
9270
9271         * complaints.c (struct complaints): Remove.
9272         (symfile_complaint_book): Remove.
9273         (series): New global.
9274         (complaint_internal): Update.
9275         (clear_complaints): Update.
9276
9277 2018-05-23  Tom Tromey  <tom@tromey.com>
9278
9279         * complaints.c (counters): New global.
9280         (struct complain): Remove.
9281         (struct complaints) <root>: Remove.
9282         (complaint_sentinel): Remove.
9283         (symfile_complaint_book): Update.
9284         (find_complaint) Remove.
9285         (complaint_internal, clear_complaints): Update.
9286
9287 2018-05-23  Tom Tromey  <tom@tromey.com>
9288
9289         * complaints.c (struct complain) <file, line>: Remove.
9290         (find_complaint): Remove file, line parameters.
9291         (complaint_internal): Update.
9292
9293 2018-05-23  Tom Tromey  <tom@tromey.com>
9294
9295         * complaints.c (vcomplaint): Remove.
9296         (complaint_internal) Merge in contents of vcomplaint.
9297
9298 2018-05-23  Tom Tromey  <tom@tromey.com>
9299
9300         * complaints.c (struct complaints) <explanation>: Remove.
9301         (symfile_explanations): Remove.
9302         (symfile_complaint_book): Update.
9303         (vcomplaint): Update.
9304         (struct explanation): Remove.
9305
9306 2018-05-23  Tom Tromey  <tom@tromey.com>
9307
9308         * complaints.c (symfile_complaints): Remove.
9309         (complaint_internal): Remove "complaints" parameter.
9310         (clear_complaints, vcomplaint): Remove "c" parameter.
9311         (get_complaints): Remove.
9312         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9313         (dwarf2_debug_line_missing_file_complaint)
9314         (dwarf2_debug_line_missing_end_sequence_complaint)
9315         (dwarf2_complex_location_expr_complaint)
9316         (dwarf2_const_value_length_mismatch_complaint)
9317         (dwarf2_section_buffer_overflow_complaint)
9318         (dwarf2_macro_malformed_definition_complaint)
9319         (dwarf2_invalid_attrib_class_complaint)
9320         (create_addrmap_from_index, dw2_symtab_iter_next)
9321         (dw2_expand_marked_cus)
9322         (dw2_debug_names_iterator::find_vec_in_debug_names)
9323         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9324         (create_debug_type_hash_table, init_cutu_and_read_dies)
9325         (partial_die_parent_scope, add_partial_enumeration)
9326         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9327         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9328         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9329         (create_cus_hash_table, create_dwp_hash_table)
9330         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9331         (dwarf2_rnglists_process, dwarf2_ranges_process)
9332         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9333         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9334         (handle_struct_member_die, process_structure_scope)
9335         (read_array_type, read_common_block, read_module_type)
9336         (read_tag_pointer_type, read_typedef, read_base_type)
9337         (read_subrange_type, load_partial_dies, partial_die_info::read)
9338         (partial_die_info::read, partial_die_info::read)
9339         (partial_die_info::read, read_checked_initial_length_and_offset)
9340         (dwarf2_string_attr, read_formatted_entries)
9341         (dwarf_decode_line_header)
9342         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9343         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9344         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9345         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9346         (get_signatured_type, get_DW_AT_signature_type)
9347         (decode_locdesc, file_file_name, consume_improper_spaces)
9348         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9349         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9350         (dwarf2_symbol_mark_computed, set_die_type)
9351         (read_attribute_value): Update.
9352         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9353         Update.
9354         * dbxread.c (unknown_symtype_complaint)
9355         (lbrac_mismatch_complaint, repeated_header_complaint)
9356         (set_namestring, function_outside_compilation_unit_complaint)
9357         (read_dbx_symtab, process_one_symbol): Update.
9358         * gdbtypes.c (stub_noname_complaint): Update.
9359         * windows-nat.c (handle_unload_dll): Update.
9360         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9361         (decode_base_type): Update.
9362         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9363         (eb_complaint, record_include_begin, record_include_end)
9364         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9365         (process_xcoff_symbol, read_symbol)
9366         (function_outside_compilation_unit_complaint)
9367         (scan_xcoff_symtab): Update.
9368         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9369         * buildsym.c (finish_block_internal, make_blockvector)
9370         (end_symtab_get_static_block, augment_type_symtab): Update.
9371         * dtrace-probe.c (dtrace_process_dof)
9372         (dtrace_static_probe_ops::get_probes): Update.
9373         * complaints.h (struct complaint): Don't declare.
9374         (symfile_complaints): Remove.
9375         (complaint_internal): Remove "complaints" parameter.
9376         (complaint): Likewise.
9377         (clear_complaints): Likewise.
9378         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9379         (reread_symbols): Update.
9380         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9381         (dwarf2_frame_cache, decode_frame_entry): Update.
9382         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9383         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9384         (info_selectors_command): Update.
9385         * macrotab.c (macro_include, check_for_redefinition)
9386         (macro_undef): Update.
9387         * objfiles.c (filter_overlapping_sections): Update.
9388         * stabsread.c (invalid_cpp_abbrev_complaint)
9389         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9390         (define_symbol, error_type, read_type, rs6000_builtin_type)
9391         (stabs_method_name_from_physname, read_member_functions)
9392         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9393         (attach_fields_to_type, complain_about_struct_wipeout)
9394         (read_range_type, read_args, common_block_start)
9395         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9396         Update.
9397         * mdebugread.c (index_complaint, unknown_ext_complaint)
9398         (basic_type_complaint, bad_tag_guess_complaint)
9399         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9400         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9401         (parse_procedure, parse_lines)
9402         (function_outside_compilation_unit_complaint)
9403         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9404         (bad_tag_guess_complaint, reg_value_complaint): Update.
9405         * cp-support.c (demangled_name_complaint): Update.
9406         * macroscope.c (sal_macro_scope): Update.
9407         * dwarf-index-write.c (class debug_names): Update.
9408
9409 2018-05-23  Tom Tromey  <tom@tromey.com>
9410
9411         * complaints.c (clear_complaints): Remove "noisy" parameter.
9412         * complaints.h (clear_complaints): Update.
9413         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9414         (reread_symbols): Update.
9415
9416 2018-05-23  Tom Tromey  <tom@tromey.com>
9417
9418         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9419         SUBSEQUENT_MESSAGE.
9420         (vcomplaint, clear_complaints): Update.
9421         (symfile_explanations): Remove some messages.
9422
9423 2018-05-23  Tom Tromey  <tom@tromey.com>
9424
9425         * complaints.c (internal_complaint): Remove.
9426         * complaints.h (internal_complaint): Remove.
9427
9428 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9429
9430         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9431
9432 2018-05-22  Pedro Alves  <palves@redhat.com>
9433
9434         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9435         (remote_fileio_badfd, remote_fileio_return_errno)
9436         (remote_fileio_return_success, remote_fileio_func_open)
9437         (remote_fileio_func_open, remote_fileio_func_close)
9438         (remote_fileio_func_read, remote_fileio_func_write)
9439         (remote_fileio_func_lseek, remote_fileio_func_rename)
9440         (remote_fileio_func_unlink, remote_fileio_func_stat)
9441         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9442         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9443         remote_target parameter.
9444         (remote_fio_func_map) <func>: Add remote_target parameter.
9445         (do_remote_fileio_request, remote_fileio_request):
9446         * remote-fileio.h (remote_fileio_request):
9447         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9448         remote_target parameter.
9449         (remote_notif_process, handle_notification): Adjust to pass down
9450         the remote.
9451         (remote_notif_state_allocate): Add remote_target parameter.  Save
9452         it.
9453         * remote-notif.h (struct remote_target): Forward declare.
9454         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9455         remote_target parameter.
9456         (struct remote_notif_state) <remote>: New field.
9457         (remote_notif_ack, remote_notif_parse): Add remote_target
9458         parameter.
9459         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9460         remote_target parameter.
9461         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9462         (threads_listing_context, rmt_thread_action, protocol_feature)
9463         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9464         (packet_result, struct threads_listing_context, remote_state):
9465         Move definitions and declarations higher up.
9466         (remote_target) <~remote_target>: Declare.
9467         (remote_download_command_source, remote_file_put, remote_file_get)
9468         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9469         (remote_hostio_pread_vFile, remote_hostio_send_command)
9470         (remote_hostio_set_filesystem, remote_hostio_open)
9471         (remote_hostio_close, remote_hostio_unlink, remote_state)
9472         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9473         (get_memory_write_packet_size, get_memory_read_packet_size)
9474         (append_pending_thread_resumptions, remote_detach_1)
9475         (append_resumption, remote_resume_with_vcont)
9476         (add_current_inferior_and_thread, wait_ns, wait_as)
9477         (process_stop_reply, remote_notice_new_inferior)
9478         (process_initial_stop_replies, remote_add_thread)
9479         (btrace_sync_conf, remote_btrace_maybe_reopen)
9480         (remove_new_fork_children, kill_new_fork_children)
9481         (discard_pending_stop_replies, stop_reply_queue_length)
9482         (check_pending_events_prevent_wildcard_vcont)
9483         (discard_pending_stop_replies_in_queue, stop_reply)
9484         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9485         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9486         (remote_interrupt_as, remote_interrupt_ns)
9487         (remote_get_noisy_reply, remote_query_attached)
9488         (remote_add_inferior, remote_current_thread, get_current_thread)
9489         (set_thread, set_general_thread, set_continue_thread)
9490         (set_general_process, write_ptid)
9491         (remote_unpack_thread_info_response, remote_get_threadinfo)
9492         (parse_threadlist_response, remote_get_threadlist)
9493         (remote_threadlist_iterator, remote_get_threads_with_ql)
9494         (remote_get_threads_with_qxfer)
9495         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9496         (get_offsets, remote_check_symbols, remote_supported_packet)
9497         (remote_query_supported, remote_packet_size)
9498         (remote_serial_quit_handler, remote_detach_pid)
9499         (remote_vcont_probe, remote_resume_with_hc)
9500         (send_interrupt_sequence, interrupt_query)
9501         (remote_notif_get_pending_events, fetch_register_using_p)
9502         (send_g_packet, process_g_packet, fetch_registers_using_g)
9503         (store_register_using_P, store_registers_using_G)
9504         (set_remote_traceframe, check_binary_download)
9505         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9506         (remote_xfer_live_readonly_partial, remote_read_bytes)
9507         (remote_send_printf, remote_flash_write, readchar)
9508         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9509         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9510         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9511         (extended_remote_disable_randomization, extended_remote_run)
9512         (send_environment_packet, extended_remote_environment_support)
9513         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9514         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9515         (packet_command): Now methods of ...
9516         (remote_target): ... this class.
9517         (m_remote_state) <remote_target>: New field.
9518         (struct remote_state) <stop_reply_queue,
9519         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9520         fields.
9521         (remote_state::remote_state): Allocate stop_reply_queue.
9522         (remote_state): Delete global.
9523         (get_remote_state_raw): Delete.
9524         (remote_target::get_remote_state): Allocate m_remote_state on
9525         demand.
9526         (get_current_remote_target): New.
9527         (remote_ops, extended_remote_ops): Delete.
9528         (wait_forever_enabled_p, remote_async_inferior_event_token):
9529         Delete, moved to struct remote_state.
9530         (remote_target::close): Delete self.  Destruction bits split to
9531         ...
9532         (remote_target::~remote_target): ... this.
9533         (show_memory_packet_size): Adjust to use
9534         get_current_remote_target.
9535         (struct protocol_feature) <func>: Add remote_target parameter.
9536         All callers adjusted.
9537         (curr_quit_handler_target): New.
9538         (remote_serial_quit_handler): Reimplement.
9539         (remote_target::open_1): Adjust to use get_current_remote_target.
9540         Heap-allocate remote_target/extended_remote_target instances.
9541         (vcont_builder::vcont_builder): Add remote_target parameter, and
9542         save it in m_remote.  All callers adjusted.
9543         (vcont_builder::m_remote): New field.
9544         (vcont_builder::restart, vcont_builder::flush)
9545         (vcont_builder::push_action): Use it.
9546         (remote_target::commit_resume): Use it.
9547         (struct queue_iter_param) <remote>: New field.
9548         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9549         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9550         (check_pending_event_prevents_wildcard_vcont_callback)
9551         (remote_target::check_pending_events_prevent_wildcard_vcont)
9552         (remote_target::discard_pending_stop_replies)
9553         (remote_target::discard_pending_stop_replies_in_queue)
9554         (remote_target::remote_notif_remove_queued_reply): Fill in
9555         'remote' field.
9556         (remote_notif_get_pending_events): New.
9557         (remote_target::readchar, remote_target::remote_serial_write):
9558         Save/restore curr_quit_handler_target.
9559         (putpkt): New.
9560         (kill_new_fork_children): Fill in 'remote' field.
9561         (packet_command): Use get_current_remote_target, defer to
9562         remote_target method of same name.
9563         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9564         parameter, and save it in m_remote.  All callers adjusted.
9565         (scoped_remote_fd::release): Use m_remote.
9566         (scoped_remote_fd::m_remote): New field.
9567         (remote_file_put, remote_file_get, remote_file_delete): Use
9568         get_current_remote_target, defer to remote_target method of same
9569         name.
9570         (remote_btrace_reset): Add remote_state paremeter.  Update all
9571         callers.
9572         (remote_async_inferior_event_handler). Pass down 'data'.
9573         (remote_new_objfile): Use get_current_remote_target.
9574         (remote_target::vcont_r_supported): New.
9575         (set_range_stepping): Use get_current_remote_target and
9576         remote_target::vcont_r_supported.
9577         (_initialize_remote): Don't allocate 'remote_state' and
9578         'stop_reply_queue' globals.
9579         * remote.h (struct remote_target): Forward declare.
9580         (getpkt, putpkt, remote_notif_get_pending_events): Add
9581         'remote_target' parameter.
9582
9583 2018-05-22  Pedro Alves  <palves@redhat.com>
9584
9585         * remote.c (vcont_builder): Now a class.  Make all data members
9586         private.
9587         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9588         Declare methods.
9589         (vcont_builder_restart): Rename to ...
9590         (vcont_builder::restart): ... this.
9591         (vcont_builder_flush): Rename to ...
9592         (vcont_builder::flush): ... this.
9593         (vcont_builder_push_action): Rename to ...
9594         (vcont_builder::push_action): ... this.
9595         (remote_target::commit_resume): Adjust.
9596
9597 2018-05-22  Pedro Alves  <palves@redhat.com>
9598
9599         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9600         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9601         (get_fixed_memory_packet_size): New.
9602         (get_memory_packet_size): Use it.
9603         (set_memory_packet_size): Don't override the config size with
9604         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9605         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9606         Don't refer to get_memory_packet_size if not connected to a remote
9607         target.  Show "(default)" if configured size is 0.
9608
9609 2018-05-22  Pedro Alves  <palves@redhat.com>
9610
9611         * remote.c (remote_target::mourn_inferior): Move
9612         discard_pending_stop_replies call here from ...
9613         (_initialize_remote): ... here.
9614
9615 2018-05-22  Pedro Alves  <palves@redhat.com>
9616
9617         * remote.c (compare_section_command): Remove set_general_process
9618         call.
9619
9620 2018-05-22  Pedro Alves  <palves@redhat.com>
9621
9622         * remote.c (struct packet_reg, struct remote_arch_state):
9623         Move higher up in the file.
9624         (remote_state) <m_arch_states>: Store remote_arch_state values
9625         instead of remote_arch_state pointers.
9626         (remote_state::get_remote_arch_state): Adjust.
9627
9628 2018-05-22  Pedro Alves  <palves@redhat.com>
9629
9630         * remote.c: Include <unordered_map>.
9631         (remote_state): Now a class.
9632         (remote_state) <get_remote_arch_state>: Declare method.
9633         <get_remote_arch_state>: New field.
9634         (remote_arch_state) <remote_arch_state>: Declare ctor.
9635         <regs>: Now a unique_ptr.
9636         (remote_gdbarch_data_handle): Delete.
9637         (get_remote_arch_state): Delete.
9638         (remote_state::get_remote_arch_state): New.
9639         (get_remote_state): Adjust to call remote_state's
9640         get_remote_arch_state method.
9641         (init_remote_state): Delete, bits factored out to ...
9642         (remote_arch_state::remote_arch_state): ... this new method.
9643         (get_remote_packet_size, get_memory_packet_size)
9644         (process_g_packet, remote_target::fetch_registers)
9645         (remote_target::prepare_to_store, store_registers_using_G)
9646         (remote_target::store_registers, remote_target::get_trace_status):
9647         Adjust to call remote_state's method.
9648         (_initialize_remote): Remove reference to
9649         remote_gdbarch_data_handle.
9650
9651 2018-05-22  Pedro Alves  <palves@redhat.com>
9652
9653         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9654         pread>: New method declarations.
9655         (remote_target::open_1): Adjust.
9656         (readahead_cache_invalidate): Rename to ...
9657         (readahead_cache::invalidate): ... this, and adjust to be a class
9658         method.
9659         (readahead_cache_invalidate_fd): Rename to ...
9660         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9661         class method.
9662         (remote_hostio_pwrite): Adjust.
9663         (remote_hostio_pread_from_cache): Rename to ...
9664         (readahead_cache::pread): ... this, and adjust to be a class
9665         method.
9666         (remote_hostio_close): Adjust.
9667
9668 2018-05-22  Pedro Alves  <palves@redhat.com>
9669
9670         * remote.c (remote_hostio_close_cleanup): Delete.
9671         (class scoped_remote_fd): New.
9672         (remote_file_put, remote_file_get): Use it.
9673
9674 2018-05-22  Pedro Alves  <palves@redhat.com>
9675
9676         (struct vCont_action_support): Use bool and initialize all fields.
9677         (struct readahead_cache): Initialize all fields.
9678         (remote_state): Use bool and initialize all fields.
9679         (remote_state::remote_state, remote_state::~remote_state): New.
9680         (new_remote_state): Delete.
9681         (_initialize_remote): Use new to allocate remote_state.
9682
9683 2018-05-22  Pedro Alves  <palves@redhat.com>
9684             張俊芝  <zjz@zjz.name>
9685
9686         PR gdb/22973
9687         * c-exp.y: Include "c-support.h".
9688         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9689         of tolower.  Use c_ident_is_alpha to scan names.
9690         * c-lang.c: Include "c-support.h".
9691         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9692         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9693         * c-support.h: New file, with bits factored out from ...
9694         * cp-name-parser.y: ... this file.
9695         Include "c-support.h".
9696         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9697         c-support.h and renamed.
9698         (symbol_end, yylex): Adjust.
9699
9700 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9701
9702         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9703         parameter type to CORE_ADDR.
9704         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9705         parameter type in declaration to CORE_ADDR.
9706         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9707         target_auxv_search to get AT_HWCAP and use the result to get the
9708         target description.
9709         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9710         to CORE_ADDR. Remove the cast of the return value to unsigned
9711         long. Fix error predicate of target_auxv_search.
9712         (ppc_linux_nat_target::read_description): Change the type of the
9713         hwcap variable to CORE_ADDR.
9714
9715 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9716
9717         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9718         if the size of fpscr is larger than 32 bits.
9719
9720 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9721
9722         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9723         (ppc32_linux_vsxregmap): New global.
9724         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9725         regcache_supply_regset, and regcache_collect_regset.
9726         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9727         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9728         (fetch_vsx_register, store_vsx_register): Remove.
9729         (fetch_vsx_registers): Add regno parameter. Get regset using
9730         ppc_linux_vsxregset. Use regset to supply registers.
9731         (store_vsx_registers): Add regno parameter. Get regset using
9732         ppc_linux_vsxregset. Use regset to collect registers.
9733         (fetch_register): Call fetch_vsx_registers instead of
9734         fetch_vsx_register.
9735         (store_register): Call store_vsx_registers instead of
9736         store_vsx_register.
9737         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9738         new regno parameter.
9739         (store_ppc_registers): Call store_vsx_registers with -1 for the
9740         new regno parameter.
9741         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9742         (ppc_collect_vsxregset): Remove.
9743
9744 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9745
9746         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9747         offset fields.
9748         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9749         for vector register offset fields.
9750         (ppc64_fbsd_reg_offsets): Likewise.
9751         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9752         to vector register offset fields.
9753         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9754         to vector register offset fields.
9755         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9756         vector register offset fields.
9757         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9758         initializers for vector register offset fields.
9759         (rs6000_aix64_reg_offsets): Likewise.
9760         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9761         (ppc_supply_vrregset): Remove.
9762         (ppc_collect_vrregset): Remove.
9763         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9764         (ppc_linux_vrregset) : New function.
9765         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9766         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9767         (ppc32_linux_vrregset): Remove.
9768         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9769         and use result instead of ppc32_linux_vrregset.
9770         (ppc32_linux_reg_offsets): Remove initializers for vector register
9771         offset fields.
9772         (ppc64_linux_reg_offsets): Likewise.
9773         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9774         * ppc-linux-nat.c: Include regset.h.
9775         (gdb_vrregset_t): Adjust comment to account for little-endian
9776         mode.
9777         (supply_vrregset, fill_vrregset): Remove.
9778         (fetch_altivec_register, store_altivec_register): Remove.
9779         (fetch_altivec_registers): Add regno parameter. Get regset using
9780         ppc_linux_vrregset. Use regset to supply registers.
9781         (store_altivec_registers): Add regno parameter. Get regset using
9782         ppc_linux_vrregset. Use regset to collect registers.
9783         (fetch_register): Call fetch_altivec_registers instead of
9784         fetch_altivec_register.
9785         (store_register): Call store_altivec_registers instead of
9786         store_altivec_register.
9787         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9788         the new regno parameter.
9789         (store_ppc_registers): Call store_altivec_registers with -1 for
9790         the new regno parameter.
9791
9792 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9793
9794         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9795         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9796         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9797         (gdb_vrregset_t): Change array type size to
9798         PPC_LINUX_SIZEOF_VRREGSET.
9799         (gdb_vsxregset_t): Change array type size to
9800         PPC_LINUX_SIZEOF_VSXREGSET.
9801         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9802         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9803         PPC_LINUX_SIZEOF_VSXREGSET.
9804
9805 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9806
9807         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9808         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9809         nat/ppc-linux.c.
9810         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9811         ppc_linux_target_wordsize with tid.
9812         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9813         wordsize with tid.
9814         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9815         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9816         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9817         tid parameter. Remove static specifier.
9818         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9819         (ppc_linux_target_wordsize): New declaration.
9820
9821 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9822
9823         * arch/ppc-linux-common.c: New file.
9824         * arch/ppc-linux-common.h: New file.
9825         * arch/ppc-linux-tdesc.h: New file.
9826         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9827         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9828         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9829         arch/ppc-linux-tdesc.h.
9830         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9831         arch/ppc-linux-tdesc.h.
9832         (ppc_linux_nat_target::read_description): Remove target
9833         description matching code. Fill a ppc_linux_features struct and
9834         call ppc_linux_match_description with it. Move comment about ISA
9835         2.05 to ppc-linux-common.c.
9836         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9837         arch/ppc-linux-tdesc.h.
9838         (ppc_linux_core_read_description): Remove target description
9839         matching code. Fill a ppc_linux_features struct and call
9840         ppc_linux_match_description with it.
9841         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9842         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9843         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9844         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9845         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9846         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9847         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9848         (tdesc_powerpc_e500l): Remove.
9849
9850 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9851
9852         * ada-lang.c (catch_assert_command): Pass empty string instead
9853         of NULL for excep_string argument.
9854
9855 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9856
9857         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9858         the width of the requested register exceeds the width of the
9859         `ptrace' data type.
9860
9861 2018-05-21  Tom Tromey  <tom@tromey.com>
9862
9863         * printcmd.c (output_command): Remove.
9864         (output_command_const): Rename to output_command.
9865         * valprint.h (output_command): Rename from output_command_const.
9866         * tracepoint.c (trace_dump_actions): Call output_command.
9867
9868 2018-05-21  Tom Tromey  <tom@tromey.com>
9869
9870         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9871         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9872         * ada-lang.h (create_ada_exception_catchpoint): Update.
9873         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9874         std::string.
9875         (create_excep_cond_exprs, ~ada_catchpoint)
9876         (should_stop_exception, print_one_exception)
9877         (print_mention_exception, print_recreate_exception): Update.
9878         (ada_get_next_arg): Remove.
9879         (catch_ada_exception_command_split): Use std::string.  Change type
9880         of "excep_string", "cond_string".
9881         (catch_ada_exception_command): Update.
9882         (create_ada_exception_catchpoint): Change type of excep_string.
9883         (ada_exception_sal): Remove excep_string parameter.
9884         (~ada_catchpoint): Remove.
9885
9886 2018-05-21  Tom Tromey  <tom@tromey.com>
9887
9888         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9889         cleanup.
9890
9891 2018-05-21  Tom Tromey  <tom@tromey.com>
9892
9893         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9894         Return unique_xmalloc_ptr.
9895         (print_it_exception): Update.
9896
9897 2018-05-21  Tom Tromey  <tom@tromey.com>
9898
9899         * tracepoint.c (trace_dump_actions): Use std::string.
9900
9901 2018-05-21  Tom Tromey  <tom@tromey.com>
9902
9903         * symfile.c (reread_symbols): Use std::string for original_name.
9904
9905 2018-05-21  Tom Tromey  <tom@tromey.com>
9906
9907         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9908         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9909         constructor.
9910
9911 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9912
9913         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9914         instance to...
9915         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9916         * objfiles.c (get_objfile_bfd_data): Allocate
9917         objfile_per_bfd_storage with obstack_new when allocating on
9918         obstack.
9919
9920 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9921
9922         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9923         OBSTACK_ZALLOC.
9924         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9925         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9926         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9927         (add_pending): Likewise.
9928         (parse_symbol): Likewise.
9929         (parse_partial_symbols): Likewise.
9930         (psymtab_to_symtab_1): Likewise.
9931         (new_psymtab): Likewise.
9932         (elfmdebug_build_psymtabs): Likewise.
9933         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9934         * objfiles.c (get_objfile_bfd_data): Likewise.
9935         (objfile_register_static_link): Likewise.
9936         * psymtab.c (allocate_psymtab): Likewise.
9937         * stabsread.c (read_member_functions): Likewise.
9938         * xcoffread.c (xcoff_end_psymtab): Likewise.
9939
9940 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9941
9942         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9943         compiler supports std::is_trivially_constructible.
9944         * common/poison.h: Include obstack.h.
9945         (IsMallocable): Define to is_trivially_constructible if the
9946         compiler supports it, define to true_type otherwise.
9947         (xobnew): New.
9948         (XOBNEW): Redefine.
9949         (xobnewvec): New.
9950         (XOBNEWVEC): Redefine.
9951         * gdb_obstack.h (obstack_zalloc): New.
9952         (OBSTACK_ZALLOC): Redefine.
9953         (obstack_calloc): New.
9954         (OBSTACK_CALLOC): Redefine.
9955         (obstack_new): New.
9956         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9957         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9958         gdbarch.c.
9959         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9960         obstack_calloc/obstack_zalloc.
9961         (gdbarch_obstack_zalloc): Remove.
9962         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9963
9964 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9965
9966         * stack.c (backtrace_command_1): Remove useless variable int i.
9967
9968 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9969
9970         * stack.c (print_frame_info): Fix comment.
9971
9972 2018-05-18  Tom Tromey  <tom@tromey.com>
9973
9974         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9975         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9976         (~dwarf2_per_objfile): Update
9977         (dwarf2_get_dwz_file): Use new.
9978         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9979         unique_ptr.
9980
9981 2018-05-18  Tom Tromey  <tom@tromey.com>
9982
9983         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9984         unique_ptr.
9985         * dwarf2read.c (struct dwp_file): Add constructor and
9986         initializers.
9987         (open_and_init_dwp_file): Return a unique_ptr.
9988         (dwarf2_per_objfile, create_dwp_hash_table)
9989         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9990         (lookup_dwo_unit_in_dwp): Update.
9991         (open_and_init_dwp_file, get_dwp_file): Update.
9992
9993 2018-05-18  Tom Tromey  <tom@tromey.com>
9994
9995         * dwarf2read.c (dwarf2_per_objfile): Update.
9996         (struct mapped_index): Add initializers.
9997         (dwarf2_read_index): Use new.
9998         (dw2_symtab_iter_init): Update.
9999         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
10000         unique_ptr.
10001
10002 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10003
10004         * dwarf2read.c (mapped_index) <total_size>: Remove.
10005
10006 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
10007
10008         * unittests/format_pieces-selftests.c (test_format_specifier):
10009         Add ARI comments.
10010
10011 2018-05-18  Tom Tromey  <tom@tromey.com>
10012
10013         * c-typeprint.c (maybe_print_hole): New function.
10014         (c_print_type_struct_field_offset): Update.
10015         (c_type_print_base_struct_union): Call maybe_print_hole.
10016
10017 2018-05-17  Keith Seitz  <keiths@redhat.com>
10018
10019         * breakpoint.c (build_bpstat_chain): New function, moved from
10020         bpstat_stop_status.
10021         (bpstat_stop_status): Add optional parameter, `stop_chain'.
10022         If no stop chain is passed, call build_bpstat_chain to build it.
10023         * breakpoint.h (build_bpstat_chain): Declare.
10024         (bpstat_stop_status): Move documentation here from breakpoint.c.
10025         * infrun.c (handle_signal_stop): Before eliding inlined frames,
10026         build the stop chain and pass it to skip_inline_frames.
10027         Pass this stop chain to bpstat_stop_status.
10028         * inline-frame.c: Include breakpoint.h.
10029         (stopped_by_user_bp_inline_frame): New function.
10030         (skip_inline_frames): Add parameter `stop_chain'.
10031         Move documention to inline-frame.h.
10032         If non-NULL, use stopped_by_user_bp_inline_frame to determine
10033         whether the frame should be elided.
10034         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
10035         Add moved documentation and update for new parameter.
10036
10037 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10038
10039         PR cli/14975
10040         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
10041         unittests/format_pieces-selftests.c.
10042         * common/format.h (format_piece) <operator==>: New.
10043         (format_pieces) <operator[]>: Remove.
10044         * common/format.c (format_pieces::format_pieces): Handle \e.
10045         * unittests/format_pieces-selftests.c: New.
10046
10047 2018-05-17  Tom Tromey  <tom@tromey.com>
10048
10049         PR symtab/23010:
10050         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
10051         (dw2_instantiate_symtab): Add skip_partial parameter.
10052         (dw2_find_last_source_symtab, dw2_map_expand_apply)
10053         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
10054         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
10055         (dw2_expand_symtabs_matching_one)
10056         (dw2_find_pc_sect_compunit_symtab)
10057         (dw2_debug_names_lookup_symbol)
10058         (dw2_debug_names_expand_symtabs_for_function): Update.
10059         (init_cutu_and_read_dies): Add skip_partial parameter.
10060         (process_psymtab_comp_unit, build_type_psymtabs_1)
10061         (process_skeletonless_type_unit, load_partial_comp_unit)
10062         (psymtab_to_symtab_1): Update.
10063         (load_full_comp_unit): Add skip_partial parameter.
10064         (process_imported_unit_die, dwarf2_read_addr_index)
10065         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
10066         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
10067         (read_signatured_type): Update.
10068
10069 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
10070
10071         * value.c (release_value): Remove unused variable.
10072         (record_latest_value): Likewise.
10073         (access_value_history): Likewise.
10074         (preserve_values): Likewise.
10075
10076 2018-05-17  Tom Tromey  <tom@tromey.com>
10077
10078         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
10079         Initialize.
10080
10081 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
10082
10083         PR gdb/22286
10084         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
10085         Also handle registers whose width is not a multiple of
10086         PTRACE_TYPE_RET.
10087         (linux_nat_trad_target::store_register): Likewise.
10088
10089 2018-05-16  Tom Tromey  <tom@tromey.com>
10090
10091         * gdbcore.h (core_bfd): Redefine.
10092         * corelow.c (core_target::close): Update.
10093         (core_target_open): Update.
10094         * progspace.h (struct program_space) <cbfd>: Now a
10095         gdb_bfd_ref_ptr.
10096
10097 2018-05-16  Tom Tromey  <tom@tromey.com>
10098
10099         PR cli/19551:
10100         * symfile-add-flags.h (enum symfile_add_flags)
10101         <SYMFILE_NOT_FILENAME>: New constant.
10102         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
10103         objfile name from BFD.
10104         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
10105         * minidebug.c (find_separate_debug_file_in_section): Put
10106         ".gnu_debugdata" into BFD's file name.
10107
10108 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
10109
10110         * regcache.c (regcache_read_ftype, regcache_write_ftype):
10111         Remove.
10112
10113 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
10114
10115         PR binutils/21446
10116         * aarch64-tdep.c (aarch64_analyze_prologue,
10117         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10118         Indicate not interested in errors.
10119
10120 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10121
10122         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10123         Supply the MIPS_ZERO_REGNUM register.
10124
10125 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10126
10127         * mips-tdep.c (mask_address_var): Make variable static.
10128
10129 2018-05-14  Tom Tromey  <tom@tromey.com>
10130
10131         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10132
10133 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10134
10135         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10136         FXSAVE_ADDR for the mxcsr register.
10137
10138 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10139
10140         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10141
10142 2018-05-11  Pedro Alves  <palves@redhat.com>
10143
10144         * corelow.c (core_target) <core_target>: No longer inline.
10145         Initialize m_core_gdbarch, m_core_vec and build the section table
10146         here.
10147         <~core_target>: New.
10148         <core_gdbarch, get_core_register_section>: New methods.
10149         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10150         factored out from ...
10151         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10152         (core_ops): Delete.
10153         (sniff_core_bfd): Add gdbarch parameter.
10154         (core_close): Delete, merged into ...
10155         (core_target::close): ... here.  Delete self.
10156         (core_close_cleanup): Delete.
10157         (core_target_open): Allocate a core_target on the heap.  Use a
10158         unique_ptr instead of a cleanup.  Bits moved into the core_target
10159         ctor.  Adjust to use core_target methods instead of globals.
10160         (get_core_register_section): Rename to ...
10161         (core_target::get_core_register_section): ... this and adjust.
10162         (struct get_core_registers_cb_data): New.
10163         (get_core_registers_cb): Use it.  Use bool.
10164         (core_target::fetch_registers, core_target::files_info)
10165         (core_target::xfer_partial, core_target::read_description)
10166         (core_target::pid_to, core_target::thread_name): Adjust to
10167         reference class fields instead of globals.
10168         * target.h (struct target_ops_deleter, target_ops_up): New.
10169
10170 2018-05-11  Pedro Alves  <palves@redhat.com>
10171
10172         * corefile.c (core_file_command): Move to corelow.c.
10173         * corelow.c (the_core_target): Delete.
10174         (core_file_command): Moved from corefile.c.  Check exec_bfd
10175         instead of the_core_target.  Use target_detach instead of calling
10176         into the_core_target directly.
10177         (maybe_say_no_core_file_now): New.
10178         (core_target::detach): Use it.
10179         (_initialize_corelow): Remove references to the_core_target.
10180         * gdbcore.h (the_core_target): Delete.
10181
10182 2018-05-11  Tom Tromey  <tromey@redhat.com>
10183             Pedro Alves  <palves@redhat.com>
10184
10185         * corefile.c (core_bfd): Remove.
10186         * gdbcore.h (core_bfd): Now a macro.
10187         * progspace.h (struct program_space) <cbfd>: New field.
10188
10189 2018-05-11  Tom Tromey  <tom@tromey.com>
10190
10191         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10192         gdb::def_vector.
10193
10194 2018-05-10  Tom Tromey  <tom@tromey.com>
10195
10196         * configure: Rebuild.
10197         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10198
10199 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10200
10201         PR server/23158:
10202         * regformats/regdat.sh: Adjust script, following the addition
10203         of the new expedite_regs parameter to init_target_desc.
10204
10205 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10206     
10207         PR gdb/23127
10208         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10209         set_gdbarch_significant_addr_bit.
10210         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10211         set_gdbarch_significant_addr_bit.
10212         * utils.c (address_significant): Update to sign extend addr.
10213
10214 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10215
10216         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10217         (xtensa_linux_init_abi): Limit tdep->num_regs by
10218         tdep->num_nopriv_regs.
10219         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10220         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10221         not initialized.
10222
10223 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10224
10225         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10226
10227 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10228
10229         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10230         (I387_MXCSR_INIT_VAL): New constant.
10231         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10232         buffer if it was supplied by the inferior.
10233         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10234         (i387_xsave_get_clear_bv): New function.
10235         (i387_supply_xsave): Only read x87 control registers from the
10236         xsave buffer if the feature is enabled, and the state will have
10237         been written, otherwise, provide a suitable default.
10238         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10239         including x87 control registers.  Update control registers if they
10240         have changed from the default value, and mark features as enabled
10241         as required.
10242         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10243
10244 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10245
10246         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10247
10248 2018-05-07  Tom Tromey  <tom@tromey.com>
10249
10250         * configure: Rebuild.
10251         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10252
10253 2018-05-07  Tom Tromey  <tom@tromey.com>
10254
10255         PR tdep/20362:
10256         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10257         bit.  Use correct value for VDIV.
10258
10259 2018-05-04  Tom Tromey  <tom@tromey.com>
10260
10261         * configure: Rebuild.
10262         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10263
10264 2018-05-04  Tom Tromey  <tom@tromey.com>
10265
10266         * linux-record.c (record_linux_system_call) <case
10267         RECORD_SYS_RECVFROM>: Add "break".
10268
10269 2018-05-04  Tom Tromey  <tom@tromey.com>
10270
10271         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10272         Add missing "break".
10273         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10274         Add missing "break".
10275
10276 2018-05-04  Tom Tromey  <tom@tromey.com>
10277
10278         * rs6000-tdep.c (ppc_process_record_op4)
10279         (ppc_process_record_op63): Add fall-through comment.
10280
10281 2018-05-04  Tom Tromey  <tom@tromey.com>
10282
10283         * i386-tdep.c (i386_process_record): Add fall-through comment.
10284
10285 2018-05-04  Tom Tromey  <tom@tromey.com>
10286
10287         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10288         comment.
10289
10290 2018-05-04  Tom Tromey  <tom@tromey.com>
10291
10292         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10293         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10294         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10295         comment.
10296         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10297         comment.
10298         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10299         comment.
10300
10301 2018-05-04  Tom Tromey  <tom@tromey.com>
10302
10303         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10304
10305 2018-05-04  Tom Tromey  <tom@tromey.com>
10306
10307         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10308         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10309         * symfile.c (section_is_mapped): Fix fall-through comment.
10310         * stabsread.c (define_symbol, read_member_functions): Fix
10311         fall-through comment.
10312         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10313         comment.
10314         * remote.c (remote_wait_as): Fix fall-through comment.
10315         * p-exp.y (yylex): Fix fall-through comment.
10316         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10317         comment.
10318         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10319         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10320         * jv-exp.y (yylex): Fix fall-through comment.
10321         * go-exp.y (lex_one_token): Fix fall-through comment.
10322         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10323         fall-through comment.
10324         * f-exp.y (yylex): Fix fall-through comment.
10325         * dwarf2read.c (process_die): Fix fall-through comments.
10326         * dbxread.c (process_one_symbol): Fix fall-through comment.
10327         * d-exp.y (lex_one_token): Fix fall-through comment.
10328         * cp-name-parser.y (yylex): Fix fall-through comment.
10329         * coffread.c (coff_symtab_read): Fix fall-through comment.
10330         * c-exp.y (lex_one_token): Fix fall-through comment.
10331         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10332         comment.
10333         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10334         comment.
10335
10336 2018-05-04  Tom Tromey  <tom@tromey.com>
10337
10338         PR python/22730:
10339         * NEWS: Mention gdb.execute change.
10340         * gdbcmd.h (execute_control_command): Don't declare.
10341         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10342         execute_control_commands, execute_control_commands_to_string.
10343         * cli/cli-script.h (execute_control_commands)
10344         (execute_control_commands_to_string): Declare.
10345         (execute_control_command): Add from_tty parameter.
10346         * cli/cli-script.c (execute_control_commands)
10347         (execute_control_commands_to_string): New functions.
10348         (execute_user_command): Use execute_control_commands.
10349         (execute_control_command_1): Add "from_tty" parameter.  Update.
10350         (execute_control_command): Likewise.
10351
10352 2018-05-04  Tom Tromey  <tom@tromey.com>
10353
10354         PR python/22731:
10355         * NEWS: Mention that breakpoint commands are writable.
10356         * python/py-breakpoint.c (bppy_set_commands): New function.
10357         (breakpoint_object_getset) <"commands">: Use it.
10358
10359 2018-05-04  Tom Tromey  <tom@tromey.com>
10360
10361         * tracepoint.c (actions_command): Update.
10362         * mi/mi-cmd-break.c (mi_command_line_array)
10363         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10364         (mi_read_next_line): Remove.
10365         (mi_cmd_break_commands): Update.
10366         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10367         function_view.
10368         * cli/cli-script.c (get_command_line): Update.
10369         (process_next_line): Use function_view.  Constify.
10370         (recurse_read_control_structure, read_command_lines)
10371         (read_command_lines_1): Change argument types to function_view.
10372         (do_define_command, document_command): Update.
10373         * breakpoint.h (check_tracepoint_command): Don't declare.
10374         * breakpoint.c (check_tracepoint_command): Remove.
10375         (commands_command_1, create_tracepoint_from_upload): Update.
10376
10377 2018-05-04  Tom Tromey  <tom@tromey.com>
10378
10379         PR gdb/11750:
10380         * cli/cli-script.h (enum command_control_type) <define_control>:
10381         New constant.
10382         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10383         (build_command_line, execute_control_command_1)
10384         (process_next_line): Likewise.
10385         (do_define_command): New function, extracted from define_command.
10386         (define_command): Use it.
10387
10388 2018-05-04  Tom Tromey  <tom@tromey.com>
10389
10390         * tracepoint.c (actions_command): Update.
10391         * cli/cli-script.h (read_command_lines): Update.
10392         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10393         (MAX_TMPBUF): Remove define.
10394         (define_command): Use string_printf.
10395         (document_command): Likewise.
10396         * breakpoint.c (commands_command_1): Update.
10397
10398 2018-05-04  Tom Tromey  <tom@tromey.com>
10399
10400         * top.c (execute_command): Update.
10401         * cli/cli-script.h (print_command_lines): Now varargs.
10402         * cli/cli-script.c (print_command_lines): Now varargs.
10403         (execute_control_command_1) <case while_control, case if_control>:
10404         Update.
10405
10406 2018-05-04  Tom Tromey  <tom@tromey.com>
10407
10408         * tracepoint.c (all_tracepoint_actions): Rename from
10409         all_tracepoint_actions_and_cleanup.  Change return type.
10410         (actions_command, encode_actions_1, encode_actions)
10411         (trace_dump_actions, tdump_command): Update.
10412         * remote.c (remote_download_command_source): Update.
10413         * python/python.c (gdbpy_eval_from_control_command)
10414         (python_command, python_interactive_command): Update.
10415         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10416         * guile/guile.c (guile_command)
10417         (gdbscm_eval_from_control_command, guile_command): Update.
10418         * compile/compile.c (compile_code_command)
10419         (compile_print_command, compile_to_object): Update.
10420         * cli/cli-script.h (struct command_lines_deleter): New.
10421         (counted_command_line): New typedef.
10422         (struct command_line): Add constructor, destructor.
10423         <body_list>: Remove.
10424         <body_list_0, body_list_1>: New members.
10425         (command_line_up): Remove typedef.
10426         (read_command_lines, read_command_lines_1, get_command_line):
10427         Update.
10428         (copy_command_lines): Don't declare.
10429         * cli/cli-script.c (build_command_line): Use "new".
10430         (get_command_line): Return counted_command_line.
10431         (print_command_lines, execute_user_command)
10432         (execute_control_command_1, while_command, if_command): Update.
10433         (realloc_body_list): Remove.
10434         (process_next_line, recurse_read_control_structure): Update.
10435         (read_command_lines, read_command_lines_1): Return counted_command_line.
10436         (free_command_lines): Use "delete".
10437         (copy_command_lines): Remove.
10438         (define_command, document_command, show_user_1): Update.
10439         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10440         a counted_command_line.
10441         * breakpoint.h (counted_command_line): Remove typedef.
10442         (breakpoint_set_commands): Update.
10443         * breakpoint.c (check_no_tracepoint_commands)
10444         (validate_commands_for_breakpoint): Update.
10445         (breakpoint_set_commands): Change commands to be a
10446         counted_command_line.
10447         (commands_command_1, update_dprintf_command_list)
10448         (create_tracepoint_from_upload): Update.
10449
10450 2018-05-04  Tom Tromey  <tom@tromey.com>
10451
10452         * cli/cli-decode.h (cmd_list_element): New constructor.
10453         (~cmd_list_element): New destructor.
10454         (struct cmd_list_element): Add initializers.
10455         * cli/cli-decode.c (do_add_cmd): Use "new".
10456         (delete_cmd): Use "delete".
10457
10458 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10459             Pedro Alves <palves@redhat.com>
10460
10461         PR breakpoints/19806 and support for PR external/20207.
10462         * NEWS: Mention Aarch64 watchpoint improvements.
10463         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10464         watchpoints and PR external/20207 watchpoints.
10465         * nat/aarch64-linux-hw-point.c
10466         (kernel_supports_any_contiguous_range): New.
10467         (aarch64_watchpoint_offset): New.
10468         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10469         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10470         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10471         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10472         next_addr_orig_p.  Support PR external/20207 watchpoints.
10473         (aarch64_downgrade_regs): New.
10474         (aarch64_dr_state_insert_one_point): New parameters offset and
10475         addr_orig.
10476         (aarch64_dr_state_remove_one_point): Likewise.
10477         (aarch64_handle_breakpoint): Update caller.
10478         (aarch64_handle_aligned_watchpoint): Likewise.
10479         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10480         aligned_offset.
10481         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10482         aarch64_downgrade_regs.
10483         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10484         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10485         (DR_CONTROL_MASK): ... this.
10486         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10487         (unsigned int aarch64_watchpoint_offset): New prototype.
10488         (aarch64_linux_set_debug_regs): Remove const from state.
10489         * utils.c (align_up, align_down): Move to ...
10490         * common/common-utils.c (align_up, align_down): ... here.
10491         * utils.h (align_up, align_down): Move to ...
10492         * common/common-utils.h (align_up, align_down): ... here.
10493
10494 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10495
10496         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10497         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10498         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10499         Re-implement to match the ABI as summarized in GCC's
10500         gcc/config/sparc/sparc.c.  All callers updated.
10501         (sparc32_store_arguments): Remove assertion.
10502
10503 2018-05-04  Tom Tromey  <tom@tromey.com>
10504
10505         * printcmd.c: Don't include tui.h.
10506         (decode_format): Use skip_spaces.
10507
10508 2018-05-04  Tom Tromey  <tom@tromey.com>
10509
10510         PR gdb/22619:
10511         * printcmd.c (last_count): New global.
10512         (x_command): Use saved count when repeating.
10513
10514 2018-05-04  Tom Tromey  <tom@tromey.com>
10515
10516         * nto-procfs.c (do_closedir_cleanup): Remove.
10517         (procfs_pidlist): Use gdb_dir_up.
10518         * procfs.c (do_closedir_cleanup): Remove.
10519         (proc_update_threads): Use gdb_dir_up.
10520         * common/filestuff.h (struct gdb_dir_deleter): New.
10521         (gdb_dir_up): New typedef.
10522
10523 2018-05-04  Tom Tromey  <tom@tromey.com>
10524
10525         * ada-lang.c (print_mention_exception): Use std::string.
10526
10527 2018-05-04  Tom Tromey  <tom@tromey.com>
10528
10529         * ada-lang.c (create_excep_cond_exprs): Update.
10530         (ada_exception_catchpoint_cond_string): Use std::string.
10531
10532 2018-05-04  Tom Tromey  <tom@tromey.com>
10533
10534         * ada-lang.c (xget_renaming_scope): Return std::string.
10535         (old_renaming_is_invisible): Update.
10536
10537 2018-05-04  Tom Tromey  <tom@tromey.com>
10538
10539         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10540         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10541
10542 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10543
10544         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10545
10546 2018-05-04  Tom Tromey  <tom@tromey.com>
10547
10548         * remote.c (remote_query_supported_append): Change type.
10549         (remote_check_symbols): Update.
10550
10551 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10552
10553         PR gdb/11420
10554         * configure.ac: Prepend libpython.
10555         * python/python-config.py: Likewise.
10556         * configure: Regenerate.
10557
10558 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10559
10560         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10561
10562 2018-05-03  Pedro Alves  <palves@redhat.com>
10563
10564         * s390-linux-nat.c
10565         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10566         override.  Write 'true' instead of '1'.
10567         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10568         declaration.
10569
10570 2018-05-02  Pedro Alves  <palves@redhat.com>
10571
10572         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10573         add_inf_child_target.
10574         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10575         add_inf_child_target.
10576         * aix-thread.c (aix_thread_target_info): New.
10577         (aix_thread_target) <shortname, longname, doc>: Delete.
10578         <info>: New.
10579         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10580         add_inf_child_target.
10581         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10582         add_inf_child_target.
10583         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10584         add_inf_child_target.
10585         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10586         add_inf_child_target.
10587         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10588         add_inf_child_target.
10589         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10590         add_inf_child_target.
10591         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10592         add_inf_child_target.
10593         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10594         add_inf_child_target.
10595         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10596         add_inf_child_target.
10597         * bfd-target.c (target_bfd_target_info): New.
10598         (target_bfd) <shortname, longname, doc>: Delete.
10599         <info>: New.
10600         * bsd-kvm.c (bsd_kvm_target_info): New.
10601         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10602         <info>: New.
10603         (bsd_kvm_target::open): Rename to ...
10604         (bsd_kvm_target_open): ... this.  Adjust.
10605         * bsd-uthread.c (bsd_uthread_target_info): New.
10606         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10607         <info>: New.
10608         * corefile.c (core_file_command): Adjust.
10609         * corelow.c (core_target_info): New.
10610         (core_target) <shortname, longname, doc>: Delete.
10611         <info>: New.
10612         (core_target::open): Rename to ...
10613         (core_target_open): ... this.  Adjust.
10614         * ctf.c (ctf_target_info): New.
10615         (ctf_target) <shortname, longname, doc>: Delete.
10616         <info>: New.
10617         (ctf_target::open): Rename to ...
10618         (ctf_target_open): ... this.
10619         (_initialize_ctf): Adjust.
10620         * exec.c (exec_target_info): New.
10621         (exec_target) <shortname, longname, doc>: Delete.
10622         <info>: New.
10623         (exec_target::open): Rename to ...
10624         (exec_target_open): ... this.
10625         * gdbcore.h (core_target_open): Declare.
10626         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10627         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10628         add_inf_child_target.
10629         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10630         add_inf_child_target.
10631         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10632         add_inf_child_target.
10633         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10634         add_inf_child_target.
10635         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10636         add_inf_child_target.
10637         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10638         add_inf_child_target.
10639         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10640         add_inf_child_target.
10641         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10642         add_inf_child_target.
10643         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10644         add_inf_child_target.
10645         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10646         add_inf_child_target.
10647         * inf-child.c (inf_child_target_info): New.
10648         (inf_child_target::info): New.
10649         (inf_child_open_target): Remove 'target' parameter.  Use
10650         get_native_target instead.
10651         (inf_child_target::open): Delete.
10652         (add_inf_child_target): New.
10653         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10654         Delete.
10655         <info>: New.
10656         (add_inf_child_target): Declare.
10657         (inf_child_open_target): Declare.
10658         * linux-thread-db.c (thread_db_target_info): New.
10659         (thread_db_target) <shortname, longname, doc>: Delete.
10660         <info>: New.
10661         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10662         add_inf_child_target.
10663         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10664         add_inf_child_target.
10665         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10666         add_inf_child_target.
10667         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10668         add_inf_child_target.
10669         * make-target-delegates (print_class): Adjust.
10670         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10671         add_inf_child_target.
10672         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10673         add_inf_child_target.
10674         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10675         add_inf_child_target.
10676         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10677         add_inf_child_target.
10678         * nto-procfs.c (nto_native_target_info): New.
10679         (nto_procfs_target_native) <shortname, longname, doc>:
10680         Delete.
10681         <info>: New.
10682         (nto_procfs_target_info): New.
10683         (nto_procfs_target_procfs) <shortname, longname, doc>:
10684         Delete.
10685         <info>: New.
10686         (init_procfs_targets): Adjust.
10687         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10688         add_inf_child_target.
10689         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10690         add_inf_child_target.
10691         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10692         add_inf_child_target.
10693         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10694         add_inf_child_target.
10695         * ravenscar-thread.c (ravenscar_target_info): New.
10696         (ravenscar_thread_target) <shortname, longname, doc>:
10697         Delete.
10698         <info>: New.
10699         * record-btrace.c (record_btrace_target_info):
10700         (record_btrace_target) <shortname, longname, doc>: Delete.
10701         <info>: New.
10702         (record_btrace_target::open): Rename to ...
10703         (record_btrace_target_open): ... this.  Adjust.
10704         * record-full.c (record_longname, record_doc): New.
10705         (record_full_base_target) <shortname, longname, doc>: Delete.
10706         <info>: New.
10707         (record_full_target_info): New.
10708         (record_full_target): <shortname>: Delete.
10709         <info>: New.
10710         (record_full_core_open_1, record_full_open_1): Update comments.
10711         (record_full_base_target::open): Rename to ...
10712         (record_full_open): ... this.
10713         (cmd_record_full_restore): Update.
10714         (_initialize_record_full): Update.
10715         * remote-sim.c (remote_sim_target_info): New.
10716         (gdbsim_target) <shortname, longname, doc>: Delete.
10717         <info>: New.
10718         (gdbsim_target::open): Rename to ...
10719         (gdbsim_target_open): ... this.
10720         (_initialize_remote_sim): Adjust.
10721         * remote.c (remote_doc): New.
10722         (remote_target_info): New.
10723         (remote_target) <shortname, longname, doc>: Delete.
10724         <info>: New.
10725         (extended_remote_target_info): New.
10726         (extended_remote_target) <shortname, longname, doc>: Delete.
10727         <info>: New.
10728         (remote_target::open_1): Make static.  Adjust.
10729         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10730         * s390-linux-nat.c (_initialize_s390_nat): Use
10731         add_inf_child_target.
10732         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10733         add_inf_child_target.
10734         * sol-thread.c (thread_db_target_info): New.
10735         (sol_thread_target) <shortname, longname, doc>: Delete.
10736         <info>: New.
10737         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10738         add_inf_child_target.
10739         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10740         add_inf_child_target.
10741         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10742         add_inf_child_target.
10743         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10744         add_inf_child_target.
10745         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10746         add_inf_child_target.
10747         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10748         add_inf_child_target.
10749         * spu-linux-nat.c (_initialize_spu_nat): Use
10750         add_inf_child_target.
10751         * spu-multiarch.c (spu_multiarch_target_info): New.
10752         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10753         <info>: New.
10754         * target-delegates.c: Regenerate.
10755         * target.c: Include <unordered_map>.
10756         (target_ops_p): Delete.
10757         (DEF_VEC_P(target_ops_p)): Delete.
10758         (target_factories): New.
10759         (test_target_info): New.
10760         (test_target_ops::info): New.
10761         (open_target): Adjust to use target_factories.
10762         (add_target_with_completer): Rename to ...
10763         (add_target): ... this.  Change prototype.  Register target_info
10764         and open callback in target_factories.  Register target_info in
10765         command context instead of target_ops.
10766         (add_target): Delete old implementation.
10767         (add_deprecated_target_alias): Change prototype.  Adjust.
10768         (the_native_target): New.
10769         (set_native_target, get_native_target): New.
10770         (find_default_run_target): Use the_native_target.
10771         (find_attach_target, find_run_target): Simplify.
10772         (target_ops::open): Delete.
10773         (dummy_target_info): New.
10774         (dummy_target::shortname, dummy_target::longname)
10775         (dummy_target::doc): Delete.
10776         (dummy_target::info): New.
10777         (debug_target::shortname, debug_target::longname)
10778         (debug_target::doc): Delete.
10779         (debug_target::info): New.
10780         * target.h (struct target_info): New.
10781         (target_ops::~target_ops): Add comment.
10782         (target_ops::info): New.
10783         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10784         longer virtual.  Implement in terms of target_info.
10785         (set_native_target, get_native_target): Declare.
10786         (target_open_ftype): New.
10787         (add_target, add_target_with_completer)
10788         (add_deprecated_target_alias): Change prototype.
10789         (test_target) <shortname, longname, doc>: Delete.
10790         <info>: New.
10791         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10792         add_inf_child_target.
10793         * tracefile-tfile.c (tfile_target_info): New.
10794         (tfile_target) <shortname, longname, doc>: Delete.
10795         <info>: New.
10796         (tfile_target::open): Rename to ...
10797         (tfile_target_open): ... this.
10798         (_initialize_tracefile_tfile): Adjust.
10799         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10800         add_inf_child_target.
10801         * windows-nat.c (_initialize_windows_nat): Use
10802         add_inf_child_target.
10803         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10804         add_inf_child_target.
10805
10806 2018-05-02  Pedro Alves  <palves@redhat.com>
10807
10808         * linux-nat.h (linux_nat_target) <low_new_thread,
10809         low_delete_thread, low_new_fork, low_forget_process,
10810         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10811         New virtual methods.
10812         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10813         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10814         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10815         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10816         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10817         Delete.
10818         * linux-fork.c (delete_fork): Adjust to call low method.
10819         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10820         (linux_nat_new_fork, linux_nat_forget_process_hook)
10821         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10822         (linux_nat_status_is_event):
10823         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10824         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10825         to call low method.
10826         (sigtrap_is_event): Rename to ...
10827         (linux_nat_target::low_status_is_event): ... this.
10828         (linux_nat_set_status_is_event): Delete.
10829         (save_stop_reason, linux_nat_wait_1)
10830         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10831         low methods.
10832         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10833         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10834         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10835         (linux_nat_set_prepare_to_resume): Delete.
10836         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10837         low virtual methods.
10838         * amd64-linux-nat.c: Likewise.
10839         * arm-linux-nat.c: Likewise.
10840         * i386-linux-nat.c: Likewise.
10841         * ia64-linux-nat.c: Likewise.
10842         * mips-linux-nat.c: Likewise.
10843         * ppc-linux-nat.c: Likewise.
10844         * s390-linux-nat.c: Likewise.
10845         * sparc64-linux-nat.c: Likewise.
10846         * x86-linux-nat.c: Likewise.
10847         * x86-linux-nat.h: Include "nat/x86-linux.h".
10848         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10849         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10850         Override methods.
10851
10852 2018-05-02  Pedro Alves  <palves@redhat.com>
10853
10854         * target.h (target_ops)
10855         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10856         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10857         stopped_by_watchpoint, have_continuable_watchpoint,
10858         stopped_data_address, watchpoint_addr_within_range,
10859         can_accel_watchpoint_condition, can_run, thread_alive,
10860         has_all_memory, has_memory, has_stack, has_registers,
10861         has_execution, can_async_p, is_async_p, supports_non_stop,
10862         always_non_stop_p, can_execute_reverse, supports_multi_process,
10863         supports_enable_disable_tracepoint,
10864         supports_disable_randomization, supports_string_tracing,
10865         supports_evaluation_of_breakpoint_conditions,
10866         can_run_breakpoint_commands, filesystem_is_local,
10867         can_download_tracepoint, get_trace_state_variable_value,
10868         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10869         record_is_replaying, record_will_replay,
10870         augmented_libraries_svr4_read>: Adjust to return bool.
10871         * aarch64-linux-nat.c: All implementations adjusted.
10872         * aix-thread.c: All implementations adjusted.
10873         * arm-linux-nat.c: All implementations adjusted.
10874         * breakpoint.c: All implementations adjusted.
10875         * bsd-kvm.c: All implementations adjusted.
10876         * bsd-uthread.c: All implementations adjusted.
10877         * corelow.c: All implementations adjusted.
10878         * ctf.c: All implementations adjusted.
10879         * darwin-nat.c: All implementations adjusted.
10880         * darwin-nat.h: All implementations adjusted.
10881         * exec.c: All implementations adjusted.
10882         * fbsd-nat.c: All implementations adjusted.
10883         * fbsd-nat.h: All implementations adjusted.
10884         * gnu-nat.c: All implementations adjusted.
10885         * gnu-nat.h: All implementations adjusted.
10886         * go32-nat.c: All implementations adjusted.
10887         * ia64-linux-nat.c: All implementations adjusted.
10888         * inf-child.c: All implementations adjusted.
10889         * inf-child.h: All implementations adjusted.
10890         * inf-ptrace.c: All implementations adjusted.
10891         * inf-ptrace.h: All implementations adjusted.
10892         * linux-nat.c: All implementations adjusted.
10893         * linux-nat.h: All implementations adjusted.
10894         * mips-linux-nat.c: All implementations adjusted.
10895         * nto-procfs.c: All implementations adjusted.
10896         * ppc-linux-nat.c: All implementations adjusted.
10897         * procfs.c: All implementations adjusted.
10898         * ravenscar-thread.c: All implementations adjusted.
10899         * record-btrace.c: All implementations adjusted.
10900         * record-full.c: All implementations adjusted.
10901         * remote-sim.c: All implementations adjusted.
10902         * remote.c: All implementations adjusted.
10903         * s390-linux-nat.c: All implementations adjusted.
10904         * sol-thread.c: All implementations adjusted.
10905         * spu-multiarch.c: All implementations adjusted.
10906         * target-delegates.c: All implementations adjusted.
10907         * target.c: All implementations adjusted.
10908         * target.h: All implementations adjusted.
10909         * tracefile-tfile.c: All implementations adjusted.
10910         * tracefile.c: All implementations adjusted.
10911         * tracefile.h: All implementations adjusted.
10912         * windows-nat.c: All implementations adjusted.
10913         * x86-linux-nat.h: All implementations adjusted.
10914         * x86-nat.h: All implementations adjusted.
10915
10916 2018-05-02  Pedro Alves  <palves@redhat.com>
10917
10918         * make-target-delegates (scan_target_h): Don't trim lines here.
10919         Replace sequences of tabs and/or whitespace with a single
10920         whitespace.
10921         (top level, parsing methods): Trim each line before processing it
10922         here.
10923
10924 2018-05-02  Pedro Alves  <palves@redhat.com>
10925             John Baldwin  <jhb@freebsd.org>
10926
10927         * target.h (enum strata) <debug_stratum>: New.
10928         (struct target_ops) <all delegation methods>: Replace by C++
10929         virtual methods, and drop "to_" prefix.  All references updated
10930         throughout.
10931         <to_shortname, to_longname, to_doc, to_data,
10932         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10933         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10934         virtual methods.  All references updated throughout.
10935         <can_attach, supports_terminal_ours, can_create_inferior,
10936         get_thread_control_capabilities, attach_no_wait>: New
10937         virtual methods.
10938         <insert_breakpoint, remove_breakpoint>: Now
10939         TARGET_DEFAULT_NORETURN methods.
10940         <info_proc>: Now returns bool.
10941         <to_magic>: Delete.
10942         (OPS_MAGIC): Delete.
10943         (current_target): Delete.  All references replaced by references
10944         to ...
10945         (target_stack): ... this.  New.
10946         (target_shortname, target_longname): Adjust.
10947         (target_can_run): Now a function declaration.
10948         (default_child_has_all_memory, default_child_has_memory)
10949         (default_child_has_stack, default_child_has_registers)
10950         (default_child_has_execution): Remove target_ops parameter.
10951         (complete_target_initialization): Delete.
10952         (memory_breakpoint_target): New template class.
10953         (test_target_ops): Refactor as a C++ class with virtual methods.
10954         * make-target-delegates (NAME_PART): Tighten.
10955         (POINTER_PART, CP_SYMBOL): New.
10956         (SIMPLE_RETURN_PART): Reimplement.
10957         (VEC_RETURN_PART): Expect less.
10958         (RETURN_PART, VIRTUAL_PART): New.
10959         (METHOD): Adjust to C++ virtual methods.
10960         (scan_target_h): Remove reference to C99.
10961         (dname): Output "target_ops::" prefix.
10962         (write_function_header): Adjust to output a C++ class method.
10963         (write_declaration): New.
10964         (write_delegator): Adjust to output a C++ class method.
10965         (tdname): Output "dummy_target::" prefix.
10966         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10967         method.
10968         (tdefault_names, debug_names): Delete.
10969         (return_types, tdefaults, styles, argtypes_array): New.
10970         (top level): All methods are delegators.
10971         (print_class): New.
10972         (top level): Print dummy_target and debug_target classes.
10973         * target-delegates.c: Regenerate.
10974         * target-debug.h (target_debug_print_enum_info_proc_what)
10975         (target_debug_print_thread_control_capabilities)
10976         (target_debug_print_thread_info_p): New.
10977         * target.c (dummy_target): Delete.
10978         (the_dummy_target, the_debug_target): New.
10979         (target_stack): Now extern.
10980         (set_targetdebug): Push/unpush debug target.
10981         (default_child_has_all_memory, default_child_has_memory)
10982         (default_child_has_stack, default_child_has_registers)
10983         (default_child_has_execution): Remove target_ops parameter.
10984         (complete_target_initialization): Delete.
10985         (add_target_with_completer): No longer call
10986         complete_target_initialization.
10987         (target_supports_terminal_ours): Use regular delegation.
10988         (update_current_target): Delete.
10989         (push_target): No longer check magic number.  Don't call
10990         update_current_target.
10991         (unpush_target): Don't call update_current_target.
10992         (target_is_pushed): No longer check magic number.
10993         (target_require_runnable): Skip for all stratums over
10994         process_stratum.
10995         (target_ops::info_proc): New.
10996         (target_info_proc): Use find_target_at and
10997         find_default_run_target.
10998         (target_supports_disable_randomization): Use regular delegation.
10999         (target_get_osdata): Use find_target_at.
11000         (target_ops::open, target_ops::close, target_ops::can_attach)
11001         (target_ops::attach, target_ops::can_create_inferior)
11002         (target_ops::create_inferior, target_ops::can_run)
11003         (target_can_run): New.
11004         (default_fileio_target): Use regular delegation.
11005         (target_ops::fileio_open, target_ops::fileio_pwrite)
11006         (target_ops::fileio_pread, target_ops::fileio_fstat)
11007         (target_ops::fileio_close, target_ops::fileio_unlink)
11008         (target_ops::fileio_readlink): New.
11009         (target_fileio_open_1, target_fileio_unlink)
11010         (target_fileio_readlink): Always call the target method.  Handle
11011         FILEIO_ENOSYS.
11012         (return_zero, return_zero_has_execution): Delete.
11013         (init_dummy_target): Delete.
11014         (dummy_target::dummy_target, dummy_target::shortname)
11015         (dummy_target::longname, dummy_target::doc)
11016         (debug_target::debug_target, debug_target::shortname)
11017         (debug_target::longname, debug_target::doc): New.
11018         (target_supports_delete_record): Use regular delegation.
11019         (setup_target_debug): Delete.
11020         (maintenance_print_target_stack): Skip debug_stratum.
11021         (initialize_targets): Instantiate the_dummy_target and
11022         the_debug_target.
11023         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
11024         use target_stack.
11025         (target_auxv_search, fprint_target_auxv): Adjust.
11026         (info_auxv_command): Adjust to use target_stack.
11027         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
11028         * exceptions.c (print_flush): Handle a NULL target_stack.
11029         * regcache.c (target_ops_no_register): Refactor as class with
11030         virtual methods.
11031
11032         * exec.c (exec_target): New class.
11033         (exec_ops): Now an exec_target.
11034         (exec_open, exec_close_1, exec_get_section_table)
11035         (exec_xfer_partial, exec_files_info, exec_has_memory)
11036         (exec_make_note_section): Refactor as exec_target methods.
11037         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
11038         Delete.
11039         (exec_target::find_memory_regions): New.
11040         (_initialize_exec): Don't call init_exec_ops.
11041         * gdbcore.h (exec_file_clear): Delete.
11042
11043         * corefile.c (core_target): Delete.
11044         (core_file_command): Adjust.
11045         * corelow.c (core_target): New class.
11046         (the_core_target): New.
11047         (core_close): Remove target_ops parameter.
11048         (core_close_cleanup): Adjust.
11049         (core_target::close): New.
11050         (core_open, core_detach, get_core_registers, core_files_info)
11051         (core_xfer_partial, core_thread_alive, core_read_description)
11052         (core_pid_to_str, core_thread_name, core_has_memory)
11053         (core_has_stack, core_has_registers, core_info_proc): Rework as
11054         core_target methods.
11055         (ignore, core_remove_breakpoint, init_core_ops): Delete.
11056         (_initialize_corelow): Initialize the_core_target.
11057         * gdbcore.h (core_target): Delete.
11058         (the_core_target): New.
11059
11060         * ctf.c: (ctf_target): New class.
11061         (ctf_ops): Now a ctf_target.
11062         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
11063         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
11064         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
11065         methods.
11066         (init_ctf_ops): Delete.
11067         (_initialize_ctf): Don't call it.
11068         * tracefile-tfile.c (tfile_target): New class.
11069         (tfile_ops): Now a tfile_target.
11070         (tfile_open, tfile_close, tfile_files_info)
11071         (tfile_get_tracepoint_status, tfile_trace_find)
11072         (tfile_fetch_registers, tfile_xfer_partial)
11073         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
11074         Refactor as tfile_target methods.
11075         (tfile_xfer_partial_features): Remove target_ops parameter.
11076         (init_tfile_ops): Delete.
11077         (_initialize_tracefile_tfile): Don't call it.
11078         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
11079         (tracefile_has_stack, tracefile_has_registers)
11080         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
11081         tracefile_target methods.
11082         (init_tracefile_ops): Delete.
11083         (tracefile_target::tracefile_target): New.
11084         * tracefile.h: Include "target.h".
11085         (tracefile_target): New class.
11086         (init_tracefile_ops): Delete.
11087
11088         * spu-multiarch.c (spu_multiarch_target): New class.
11089         (spu_ops): Now a spu_multiarch_target.
11090         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
11091         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
11092         (spu_search_memory, spu_mourn_inferior): Refactor as
11093         spu_multiarch_target methods.
11094         (init_spu_ops): Delete.
11095         (_initialize_spu_multiarch): Remove references to init_spu_ops,
11096         complete_target_initialization.
11097
11098         * ravenscar-thread.c (ravenscar_thread_target): New class.
11099         (ravenscar_ops): Now a ravenscar_thread_target.
11100         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
11101         (ravenscar_thread_alive, ravenscar_pid_to_str)
11102         (ravenscar_fetch_registers, ravenscar_store_registers)
11103         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
11104         (ravenscar_stopped_by_hw_breakpoint)
11105         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
11106         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
11107         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
11108         methods.
11109         (init_ravenscar_thread_ops): Delete.
11110         (_initialize_ravenscar): Remove references to
11111         init_ravenscar_thread_ops and complete_target_initialization.
11112
11113         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
11114         (bsd_uthread_target): New class.
11115         (bsd_uthread_ops): Now a bsd_uthread_target.
11116         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
11117         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11118         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11119         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11120         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11121         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11122         (bsd_uthread_target): Delete function.
11123         (_initialize_bsd_uthread): Remove reference to
11124         complete_target_initialization.
11125
11126         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11127         (target_bfd): ... this new class.
11128         (target_bfd_xfer_partial, target_bfd_get_section_table)
11129         (target_bfd_close): Refactor as target_bfd methods.
11130         (target_bfd::~target_bfd): New.
11131         (target_bfd_reopen): Adjust.
11132         (target_bfd::close): New.
11133
11134         * record-btrace.c (record_btrace_target): New class.
11135         (record_btrace_ops): Now a record_btrace_target.
11136         (record_btrace_open, record_btrace_stop_recording)
11137         (record_btrace_disconnect, record_btrace_close)
11138         (record_btrace_async, record_btrace_info)
11139         (record_btrace_insn_history, record_btrace_insn_history_range)
11140         (record_btrace_insn_history_from, record_btrace_call_history)
11141         (record_btrace_call_history_range)
11142         (record_btrace_call_history_from, record_btrace_record_method)
11143         (record_btrace_is_replaying, record_btrace_will_replay)
11144         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11145         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11146         (record_btrace_store_registers, record_btrace_prepare_to_store)
11147         (record_btrace_to_get_unwinder)
11148         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11149         (record_btrace_commit_resume, record_btrace_wait)
11150         (record_btrace_stop, record_btrace_can_execute_reverse)
11151         (record_btrace_stopped_by_sw_breakpoint)
11152         (record_btrace_supports_stopped_by_sw_breakpoint)
11153         (record_btrace_stopped_by_hw_breakpoint)
11154         (record_btrace_supports_stopped_by_hw_breakpoint)
11155         (record_btrace_update_thread_list, record_btrace_thread_alive)
11156         (record_btrace_goto_begin, record_btrace_goto_end)
11157         (record_btrace_goto, record_btrace_stop_replaying_all)
11158         (record_btrace_execution_direction)
11159         (record_btrace_prepare_to_generate_core)
11160         (record_btrace_done_generating_core): Refactor as
11161         record_btrace_target methods.
11162         (init_record_btrace_ops): Delete.
11163         (_initialize_record_btrace): Remove reference to
11164         init_record_btrace_ops.
11165         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11166         the execution_direction global.
11167         (record_full_base_target, record_full_target)
11168         (record_full_core_target): New classes.
11169         (record_full_ops): Now a record_full_target.
11170         (record_full_core_ops): Now a record_full_core_target.
11171         (record_full_target::detach, record_full_target::disconnect)
11172         (record_full_core_target::disconnect)
11173         (record_full_target::mourn_inferior, record_full_target::kill):
11174         New.
11175         (record_full_open, record_full_close, record_full_async): Refactor
11176         as methods of the record_full_base_target class.
11177         (record_full_resume, record_full_commit_resume): Refactor
11178         as methods of the record_full_target class.
11179         (record_full_wait, record_full_stopped_by_watchpoint)
11180         (record_full_stopped_data_address)
11181         (record_full_stopped_by_sw_breakpoint)
11182         (record_full_supports_stopped_by_sw_breakpoint)
11183         (record_full_stopped_by_hw_breakpoint)
11184         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11185         methods of the record_full_base_target class.
11186         (record_full_store_registers, record_full_xfer_partial)
11187         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11188         Refactor as methods of the record_full_target class.
11189         (record_full_can_execute_reverse, record_full_get_bookmark)
11190         (record_full_goto_bookmark, record_full_execution_direction)
11191         (record_full_record_method, record_full_info, record_full_delete)
11192         (record_full_is_replaying, record_full_will_replay)
11193         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11194         (record_full_stop_replaying): Refactor as methods of the
11195         record_full_base_target class.
11196         (record_full_core_resume, record_full_core_kill)
11197         (record_full_core_fetch_registers)
11198         (record_full_core_prepare_to_store)
11199         (record_full_core_store_registers, record_full_core_xfer_partial)
11200         (record_full_core_insert_breakpoint)
11201         (record_full_core_remove_breakpoint)
11202         (record_full_core_has_execution): Refactor
11203         as methods of the record_full_core_target class.
11204         (record_full_base_target::supports_delete_record): New.
11205         (init_record_full_ops): Delete.
11206         (init_record_full_core_ops): Delete.
11207         (record_full_save): Refactor as method of the
11208         record_full_base_target class.
11209         (_initialize_record_full): Remove references to
11210         init_record_full_ops and init_record_full_core_ops.
11211
11212         * remote.c (remote_target, extended_remote_target): New classes.
11213         (remote_ops): Now a remote_target.
11214         (extended_remote_ops): Now an extended_remote_target.
11215         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11216         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11217         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11218         (remote_pass_signals, remote_set_syscall_catchpoint)
11219         (remote_program_signals, )
11220         (remote_thread_always_alive): Remove target_ops parameter.
11221         (remote_thread_alive, remote_thread_name)
11222         (remote_update_thread_list, remote_threads_extra_info)
11223         (remote_static_tracepoint_marker_at)
11224         (remote_static_tracepoint_markers_by_strid)
11225         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11226         (remote_open): Refactor as methods of remote_target.
11227         (extended_remote_open, extended_remote_detach)
11228         (extended_remote_attach, extended_remote_post_attach):
11229         (extended_remote_supports_disable_randomization)
11230         (extended_remote_create_inferior): : Refactor as method of
11231         extended_remote_target.
11232         (remote_set_permissions, remote_open_1, remote_detach)
11233         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11234         (remote_resume, remote_commit_resume, remote_stop)
11235         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11236         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11237         (remote_prepare_to_store, remote_store_registers)
11238         (remote_flash_erase, remote_flash_done, remote_files_info)
11239         (remote_kill, remote_mourn, remote_insert_breakpoint)
11240         (remote_remove_breakpoint, remote_insert_watchpoint)
11241         (remote_watchpoint_addr_within_range)
11242         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11243         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11244         (remote_supports_stopped_by_sw_breakpoint)
11245         (remote_stopped_by_hw_breakpoint)
11246         (remote_supports_stopped_by_hw_breakpoint)
11247         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11248         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11249         (remote_verify_memory): Refactor as methods of remote_target.
11250         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11251         parameter.
11252         (remote_xfer_partial, remote_get_memory_xfer_limit)
11253         (remote_search_memory, remote_rcmd, remote_memory_map)
11254         (remote_pid_to_str, remote_get_thread_local_address)
11255         (remote_get_tib_address, remote_read_description): Refactor as
11256         methods of remote_target.
11257         (remote_target::fileio_open, remote_target::fileio_pwrite)
11258         (remote_target::fileio_pread, remote_target::fileio_close): New.
11259         (remote_hostio_readlink, remote_hostio_fstat)
11260         (remote_filesystem_is_local, remote_can_execute_reverse)
11261         (remote_supports_non_stop, remote_supports_disable_randomization)
11262         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11263         (remote_supports_enable_disable_tracepoint)
11264         (remote_supports_string_tracing)
11265         (remote_can_run_breakpoint_commands, remote_trace_init)
11266         (remote_download_tracepoint, remote_can_download_tracepoint)
11267         (remote_download_trace_state_variable, remote_enable_tracepoint)
11268         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11269         (remote_trace_start, remote_get_trace_status)
11270         (remote_get_tracepoint_status, remote_trace_stop)
11271         (remote_trace_find, remote_get_trace_state_variable_value)
11272         (remote_save_trace_data, remote_get_raw_trace_data)
11273         (remote_set_disconnected_tracing, remote_core_of_thread)
11274         (remote_set_circular_trace_buffer, remote_traceframe_info)
11275         (remote_get_min_fast_tracepoint_insn_len)
11276         (remote_set_trace_buffer_size, remote_set_trace_notes)
11277         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11278         (remote_disable_btrace, remote_teardown_btrace)
11279         (remote_read_btrace, remote_btrace_conf)
11280         (remote_augmented_libraries_svr4_read, remote_load)
11281         (remote_pid_to_exec_file, remote_can_do_single_step)
11282         (remote_execution_direction, remote_thread_handle_to_thread_info):
11283         Refactor as methods of remote_target.
11284         (init_remote_ops, init_extended_remote_ops): Delete.
11285         (remote_can_async_p, remote_is_async_p, remote_async)
11286         (remote_thread_events, remote_upload_tracepoints)
11287         (remote_upload_trace_state_variables): Refactor as methods of
11288         remote_target.
11289         (_initialize_remote): Remove references to init_remote_ops and
11290         init_extended_remote_ops.
11291
11292         * remote-sim.c (gdbsim_target): New class.
11293         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11294         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11295         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11296         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11297         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11298         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11299         Refactor as methods of gdbsim_target.
11300         (gdbsim_ops): Now a gdbsim_target.
11301         (init_gdbsim_ops): Delete.
11302         (gdbsim_cntrl_c): Adjust.
11303         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11304
11305         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11306         (the_amd64_linux_nat_target): New.
11307         (amd64_linux_fetch_inferior_registers)
11308         (amd64_linux_store_inferior_registers): Refactor as methods of
11309         amd64_linux_nat_target.
11310         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11311         * i386-linux-nat.c: Don't include "linux-nat.h".
11312         (i386_linux_nat_target): New class.
11313         (the_i386_linux_nat_target): New.
11314         (i386_linux_fetch_inferior_registers)
11315         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11316         as methods of i386_linux_nat_target.
11317         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11318         * inf-child.c (inf_child_ops): Delete.
11319         (inf_child_fetch_inferior_registers)
11320         (inf_child_store_inferior_registers): Delete.
11321         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11322         methods of inf_child_target.
11323         (inf_child_target::supports_terminal_ours)
11324         (inf_child_target::terminal_init)
11325         (inf_child_target::terminal_inferior)
11326         (inf_child_target::terminal_ours_for_output)
11327         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11328         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11329         New.
11330         (inf_child_open, inf_child_disconnect, inf_child_close)
11331         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11332         (inf_child_post_startup_inferior, inf_child_can_run)
11333         (inf_child_pid_to_exec_file): Refactor as methods of
11334         inf_child_target.
11335         (inf_child_follow_fork): Delete.
11336         (inf_child_target::can_create_inferior)
11337         (inf_child_target::can_attach): New.
11338         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11339         (inf_child_target::has_stack, inf_child_target::has_registers)
11340         (inf_child_target::has_execution): New.
11341         (inf_child_fileio_open, inf_child_fileio_pwrite)
11342         (inf_child_fileio_pread, inf_child_fileio_fstat)
11343         (inf_child_fileio_close, inf_child_fileio_unlink)
11344         (inf_child_fileio_readlink, inf_child_use_agent)
11345         (inf_child_can_use_agent): Refactor as methods of
11346         inf_child_target.
11347         (return_zero, inf_child_target): Delete.
11348         (inf_child_target::inf_child_target): New.
11349         * inf-child.h: Include "target.h".
11350         (inf_child_target): Delete function prototype.
11351         (inf_child_target): New class.
11352         (inf_child_open_target, inf_child_mourn_inferior)
11353         (inf_child_maybe_unpush_target): Delete.
11354         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11355         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11356         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11357         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11358         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11359         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11360         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11361         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11362         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11363         methods of inf_ptrace_target.
11364         (inf_ptrace_target): Delete function.
11365         * inf-ptrace.h: Include "inf-child.h".
11366         (inf_ptrace_target): Delete function declaration.
11367         (inf_ptrace_target): New class.
11368         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11369         * linux-nat.c (linux_target): New.
11370         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11371         (linux_nat_target::~linux_nat_target): New.
11372         (linux_child_post_attach, linux_child_post_startup_inferior)
11373         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11374         (linux_child_remove_fork_catchpoint)
11375         (linux_child_insert_vfork_catchpoint)
11376         (linux_child_remove_vfork_catchpoint)
11377         (linux_child_insert_exec_catchpoint)
11378         (linux_child_remove_exec_catchpoint)
11379         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11380         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11381         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11382         (linux_nat_stopped_data_address)
11383         (linux_nat_stopped_by_sw_breakpoint)
11384         (linux_nat_supports_stopped_by_sw_breakpoint)
11385         (linux_nat_stopped_by_hw_breakpoint)
11386         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11387         (linux_nat_kill, linux_nat_mourn_inferior)
11388         (linux_nat_xfer_partial, linux_nat_thread_alive)
11389         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11390         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11391         (linux_child_static_tracepoint_markers_by_strid)
11392         (linux_nat_is_async_p, linux_nat_can_async_p)
11393         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11394         (linux_nat_supports_multi_process)
11395         (linux_nat_supports_disable_randomization, linux_nat_async)
11396         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11397         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11398         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11399         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11400         methods of linux_nat_target.
11401         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11402         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11403         parameter.
11404         (check_stopped_by_watchpoint): Adjust.
11405         (linux_xfer_partial): Delete.
11406         (linux_target_install_ops, linux_target, linux_nat_add_target):
11407         Delete.
11408         (linux_nat_target::linux_nat_target): New.
11409         * linux-nat.h: Include "inf-ptrace.h".
11410         (linux_nat_target): New.
11411         (linux_target, linux_target_install_ops, linux_nat_add_target):
11412         Delete function declarations.
11413         (linux_target): Declare global.
11414         * linux-thread-db.c (thread_db_target): New.
11415         (thread_db_target::thread_db_target): New.
11416         (thread_db_ops): Delete.
11417         (the_thread_db_target): New.
11418         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11419         (thread_db_update_thread_list, thread_db_pid_to_str)
11420         (thread_db_extra_thread_info)
11421         (thread_db_thread_handle_to_thread_info)
11422         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11423         (thread_db_resume): Refactor as methods of thread_db_target.
11424         (init_thread_db_ops): Delete.
11425         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11426         * x86-linux-nat.c: Don't include "linux-nat.h".
11427         (super_post_startup_inferior): Delete.
11428         (x86_linux_nat_target::~x86_linux_nat_target): New.
11429         (x86_linux_child_post_startup_inferior)
11430         (x86_linux_read_description, x86_linux_enable_btrace)
11431         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11432         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11433         methods of x86_linux_nat_target.
11434         (x86_linux_create_target): Delete.  Bits folded ...
11435         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11436         pointer.
11437         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11438         (x86_linux_nat_target): New class.
11439         (x86_linux_create_target): Delete.
11440         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11441         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11442         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11443         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11444         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11445         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11446         make extern.
11447         (x86_use_watchpoints): Delete.
11448         * x86-nat.h: Include "breakpoint.h" and "target.h".
11449         (x86_use_watchpoints): Delete.
11450         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11451         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11452         (x86_insert_watchpoint, x86_remove_watchpoint)
11453         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11454         (x86_stopped_by_hw_breakpoint): New declarations.
11455         (x86_nat_target): New template class.
11456
11457         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11458         (the_ppc_linux_nat_target): New.
11459         (ppc_linux_fetch_inferior_registers)
11460         (ppc_linux_can_use_hw_breakpoint)
11461         (ppc_linux_region_ok_for_hw_watchpoint)
11462         (ppc_linux_ranged_break_num_registers)
11463         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11464         (ppc_linux_insert_mask_watchpoint)
11465         (ppc_linux_remove_mask_watchpoint)
11466         (ppc_linux_can_accel_watchpoint_condition)
11467         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11468         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11469         (ppc_linux_watchpoint_addr_within_range)
11470         (ppc_linux_masked_watch_num_registers)
11471         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11472         (ppc_linux_read_description): Refactor as methods of
11473         ppc_linux_nat_target.
11474         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11475
11476         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11477         (procfs_target): New class.
11478         (the_procfs_target): New.
11479         (procfs_target): Delete function.
11480         (procfs_auxv_parse, procfs_attach, procfs_detach)
11481         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11482         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11483         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11484         (procfs_create_inferior, procfs_update_thread_list)
11485         (procfs_thread_alive, procfs_pid_to_str)
11486         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11487         (procfs_stopped_data_address, procfs_insert_watchpoint)
11488         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11489         (proc_find_memory_regions, procfs_info_proc)
11490         (procfs_make_note_section): Refactor as methods of procfs_target.
11491         (_initialize_procfs): Adjust.
11492         * sol-thread.c (sol_thread_target): New class.
11493         (sol_thread_ops): Now a sol_thread_target.
11494         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11495         (sol_thread_fetch_registers, sol_thread_store_registers)
11496         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11497         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11498         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11499         (init_sol_thread_ops): Delete.
11500         (_initialize_sol_thread): Adjust.  Remove references to
11501         init_sol_thread_ops and complete_target_initialization.
11502
11503         * windows-nat.c (windows_nat_target): New class.
11504         (windows_fetch_inferior_registers)
11505         (windows_store_inferior_registers, windows_resume, windows_wait)
11506         (windows_attach, windows_detach, windows_pid_to_exec_file)
11507         (windows_files_info, windows_create_inferior)
11508         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11509         (windows_close, windows_pid_to_str, windows_xfer_partial)
11510         (windows_get_tib_address, windows_get_ada_task_ptid)
11511         (windows_thread_name, windows_thread_alive): Refactor as
11512         windows_nat_target methods.
11513         (do_initial_windows_stuff): Adjust.
11514         (windows_target): Delete function.
11515         (_initialize_windows_nat): Adjust.
11516
11517         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11518         (darwin_mourn_inferior, darwin_kill_inferior)
11519         (darwin_create_inferior, darwin_attach, darwin_detach)
11520         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11521         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11522         (darwin_supports_multi_process): Refactor as darwin_nat_target
11523         methods.
11524         (darwin_resume_to, darwin_files_info): Delete.
11525         (_initialize_darwin_inferior): Rename to ...
11526         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11527         * darwin-nat.h: Include "inf-child.h".
11528         (darwin_nat_target): New class.
11529         (darwin_complete_target): Delete.
11530         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11531         (darwin_target): New.
11532         (i386_darwin_fetch_inferior_registers)
11533         (i386_darwin_store_inferior_registers): Refactor as methods of
11534         darwin_nat_target.
11535         (darwin_complete_target): Delete, with ...
11536         (_initialize_i386_darwin_nat): ... bits factored out here.
11537
11538         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11539         (the_alpha_linux_nat_target): New.
11540         (alpha_linux_register_u_offset): Refactor as
11541         alpha_linux_nat_target method.
11542         (_initialize_alpha_linux_nat): Adjust.
11543         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11544         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11545         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11546         methods of linux_nat_trad_target.
11547         (linux_trad_target): Delete.
11548         * linux-nat-trad.h (linux_trad_target): Delete function.
11549         (linux_nat_trad_target): New class.
11550         * mips-linux-nat.c (mips_linux_nat_target): New class.
11551         (super_fetch_registers, super_store_registers, super_close):
11552         Delete.
11553         (the_mips_linux_nat_target): New.
11554         (mips64_linux_regsets_fetch_registers)
11555         (mips64_linux_regsets_store_registers)
11556         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11557         (mips_linux_register_u_offset, mips_linux_read_description)
11558         (mips_linux_can_use_hw_breakpoint)
11559         (mips_linux_stopped_by_watchpoint)
11560         (mips_linux_stopped_data_address)
11561         (mips_linux_region_ok_for_hw_watchpoint)
11562         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11563         (mips_linux_close): Refactor as methods of mips_linux_nat.
11564         (_initialize_mips_linux_nat): Adjust to C++ification.
11565
11566         * aix-thread.c (aix_thread_target): New class.
11567         (aix_thread_ops): Now an aix_thread_target.
11568         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11569         (aix_thread_fetch_registers, aix_thread_store_registers)
11570         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11571         (aix_thread_thread_alive, aix_thread_pid_to_str)
11572         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11573         Refactor as methods of aix_thread_target.
11574         (init_aix_thread_ops): Delete.
11575         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11576         and complete_target_initialization.
11577         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11578         (rs6000_nat_target): New class.
11579         (the_rs6000_nat_target): New.
11580         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11581         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11582         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11583         (super_create_inferior): Delete.
11584         (_initialize_rs6000_nat): Adjust to C++ification.
11585
11586         * arm-linux-nat.c (arm_linux_nat_target): New class.
11587         (the_arm_linux_nat_target): New.
11588         (arm_linux_fetch_inferior_registers)
11589         (arm_linux_store_inferior_registers, arm_linux_read_description)
11590         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11591         (arm_linux_remove_hw_breakpoint)
11592         (arm_linux_region_ok_for_hw_watchpoint)
11593         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11594         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11595         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11596         arm_linux_nat_target.
11597         (_initialize_arm_linux_nat): Adjust to C++ification.
11598
11599         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11600         (the_aarch64_linux_nat_target): New.
11601         (aarch64_linux_fetch_inferior_registers)
11602         (aarch64_linux_store_inferior_registers)
11603         (aarch64_linux_child_post_startup_inferior)
11604         (aarch64_linux_read_description)
11605         (aarch64_linux_can_use_hw_breakpoint)
11606         (aarch64_linux_insert_hw_breakpoint)
11607         (aarch64_linux_remove_hw_breakpoint)
11608         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11609         (aarch64_linux_region_ok_for_hw_watchpoint)
11610         (aarch64_linux_stopped_data_address)
11611         (aarch64_linux_stopped_by_watchpoint)
11612         (aarch64_linux_watchpoint_addr_within_range)
11613         (aarch64_linux_can_do_single_step): Refactor as methods of
11614         aarch64_linux_nat_target.
11615         (super_post_startup_inferior): Delete.
11616         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11617
11618         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11619         (the_hppa_linux_nat_target): New.
11620         (hppa_linux_fetch_inferior_registers)
11621         (hppa_linux_store_inferior_registers): Refactor as methods of
11622         hppa_linux_nat_target.
11623         (_initialize_hppa_linux_nat): Adjust to C++ification.
11624
11625         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11626         (the_ia64_linux_nat_target): New.
11627         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11628         (ia64_linux_stopped_data_address)
11629         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11630         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11631         ia64_linux_nat_target methods.
11632         (super_xfer_partial): Delete.
11633         (_initialize_ia64_linux_nat): Adjust to C++ification.
11634
11635         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11636         (the_m32r_linux_nat_target): New.
11637         (m32r_linux_fetch_inferior_registers)
11638         (m32r_linux_store_inferior_registers): Refactor as
11639         m32r_linux_nat_target methods.
11640         (_initialize_m32r_linux_nat): Adjust to C++ification.
11641
11642         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11643         (the_m68k_linux_nat_target): New.
11644         (m68k_linux_fetch_inferior_registers)
11645         (m68k_linux_store_inferior_registers): Refactor as
11646         m68k_linux_nat_target methods.
11647         (_initialize_m68k_linux_nat): Adjust to C++ification.
11648
11649         * s390-linux-nat.c (s390_linux_nat_target): New class.
11650         (the_s390_linux_nat_target): New.
11651         (s390_linux_fetch_inferior_registers)
11652         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11653         (s390_insert_watchpoint, s390_remove_watchpoint)
11654         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11655         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11656         (s390_auxv_parse, s390_read_description): Refactor as methods of
11657         s390_linux_nat_target.
11658         (_initialize_s390_nat): Adjust to C++ification.
11659
11660         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11661         (the_sparc_linux_nat_target): New.
11662         (_initialize_sparc_linux_nat): Adjust to C++ification.
11663         * sparc-nat.c (sparc_fetch_inferior_registers)
11664         (sparc_store_inferior_registers): Remove target_ops parameter.
11665         * sparc-nat.h (sparc_fetch_inferior_registers)
11666         (sparc_store_inferior_registers): Remove target_ops parameter.
11667         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11668         (the_sparc64_linux_nat_target): New.
11669         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11670
11671         * spu-linux-nat.c (spu_linux_nat_target): New class.
11672         (the_spu_linux_nat_target): New.
11673         (spu_child_post_startup_inferior, spu_child_post_attach)
11674         (spu_child_wait, spu_fetch_inferior_registers)
11675         (spu_store_inferior_registers, spu_xfer_partial)
11676         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11677         methods.
11678         (_initialize_spu_nat): Adjust to C++ification.
11679
11680         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11681         (the_tilegx_linux_nat_target): New.
11682         (fetch_inferior_registers, store_inferior_registers):
11683         Refactor as methods.
11684         (_initialize_tile_linux_nat): Adjust to C++ification.
11685
11686         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11687         (the_xtensa_linux_nat_target): New.
11688         (xtensa_linux_fetch_inferior_registers)
11689         (xtensa_linux_store_inferior_registers): Refactor as
11690         xtensa_linux_nat_target methods.
11691         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11692
11693         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11694         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11695         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11696         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11697         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11698         (fbsd_stopped_by_sw_breakpoint)
11699         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11700         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11701         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11702         (fbsd_post_startup_inferior, fbsd_post_attach)
11703         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11704         (fbsd_set_syscall_catchpoint)
11705         (super_xfer_partial, super_resume, super_wait)
11706         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11707         (fbsd_handle_debug_trap): Remove target_ops parameter.
11708         (fbsd_nat_add_target): Delete.
11709         * fbsd-nat.h: Include "inf-ptrace.h".
11710         (fbsd_nat_add_target): Delete.
11711         (USE_SIGTRAP_SIGINFO): Define.
11712         (fbsd_nat_target): New class.
11713
11714         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11715         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11716         (amd64bsd_target): Delete.
11717         * amd64-bsd-nat.h: New file.
11718         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11719         "x86-bsd-nat.h".
11720         (amd64_fbsd_nat_target): New class.
11721         (the_amd64_fbsd_nat_target): New.
11722         (amd64fbsd_read_description): Refactor as method of
11723         amd64_fbsd_nat_target.
11724         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11725         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11726         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11727         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11728         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11729         (i386bsd_target): Delete.
11730         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11731         (i386bsd_fetch_inferior_registers)
11732         (i386bsd_store_inferior_registers): Declare.
11733         (i386_bsd_nat_target): New class.
11734         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11735         (the_i386_fbsd_nat_target): New.
11736         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11737         i386_fbsd_nat_target methods.
11738         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11739         (_initialize_i386fbsd_nat): Adjust to C++ification.
11740         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11741         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11742         (_initialize_x86_bsd_nat): Adjust to C++ification.
11743         * x86-bsd-nat.h: Include "x86-nat.h".
11744         (x86bsd_target): Delete declaration.
11745         (x86bsd_nat_target): New class.
11746
11747         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11748         (the_aarch64_fbsd_nat_target): New.
11749         (aarch64_fbsd_fetch_inferior_registers)
11750         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11751         aarch64_fbsd_nat_target.
11752         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11753         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11754         (the_alpha_bsd_nat_target): New.
11755         (alphabsd_fetch_inferior_registers)
11756         (alphabsd_store_inferior_registers): Refactor as
11757         alpha_bsd_nat_target methods.
11758         (_initialize_alphabsd_nat): Refactor as methods of
11759         alpha_bsd_nat_target.
11760         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11761         (the_amd64_nbsd_nat_target): New.
11762         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11763         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11764         (the_amd64_obsd_nat_target): New.
11765         (_initialize_amd64obsd_nat): Adjust to C++ification.
11766         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11767         (the_arm_fbsd_nat_target): New.
11768         (arm_fbsd_fetch_inferior_registers)
11769         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11770         (_initialize_arm_fbsd_nat): Refactor as methods of
11771         arm_fbsd_nat_target.
11772         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11773         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11774         (the_arm_netbsd_nat_target): New.
11775         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11776         arm_netbsd_nat_target.
11777         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11778         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11779         (the_hppa_nbsd_nat_target): New.
11780         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11781         hppa_nbsd_nat_target methods.
11782         (_initialize_hppanbsd_nat): Adjust to C++ification.
11783         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11784         (the_hppa_obsd_nat_target): New.
11785         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11786         methods of hppa_obsd_nat_target.
11787         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11788         add_target.
11789         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11790         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11791         add_target.
11792         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11793         (_initialize_i386obsd_nat): Use add_target.
11794         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11795         (the_m68k_bsd_nat_target): New.
11796         (m68kbsd_fetch_inferior_registers)
11797         (m68kbsd_store_inferior_registers): Refactor as methods of
11798         m68k_bsd_nat_target.
11799         (_initialize_m68kbsd_nat): Adjust to C++ification.
11800         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11801         (the_mips_fbsd_nat_target): New.
11802         (mips_fbsd_fetch_inferior_registers)
11803         (mips_fbsd_store_inferior_registers): Refactor as methods of
11804         mips_fbsd_nat_target.
11805         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11806         add_target.
11807         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11808         (the_mips_nbsd_nat_target): New.
11809         (mipsnbsd_fetch_inferior_registers)
11810         (mipsnbsd_store_inferior_registers): Refactor as methods of
11811         mips_nbsd_nat_target.
11812         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11813         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11814         (the_mips64_obsd_nat_target): New.
11815         (mips64obsd_fetch_inferior_registers)
11816         (mips64obsd_store_inferior_registers): Refactor as methods of
11817         mips64_obsd_nat_target.
11818         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11819         add_target.
11820         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11821         nbsd_nat_target.
11822         * nbsd-nat.h: Include "inf-ptrace.h".
11823         (nbsd_nat_target): New class.
11824         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11825         (obsd_wait): Refactor as methods of obsd_nat_target.
11826         (obsd_add_target): Delete.
11827         * obsd-nat.h: Include "inf-ptrace.h".
11828         (obsd_nat_target): New class.
11829         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11830         (the_ppc_fbsd_nat_target): New.
11831         (ppcfbsd_fetch_inferior_registers)
11832         (ppcfbsd_store_inferior_registers): Refactor as methods of
11833         ppc_fbsd_nat_target.
11834         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11835         add_target.
11836         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11837         (the_ppc_nbsd_nat_target): New.
11838         (ppcnbsd_fetch_inferior_registers)
11839         (ppcnbsd_store_inferior_registers): Refactor as methods of
11840         ppc_nbsd_nat_target.
11841         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11842         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11843         (the_ppc_obsd_nat_target): New.
11844         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11845         methods of ppc_obsd_nat_target.
11846         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11847         add_target.
11848         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11849         (the_sh_nbsd_nat_target): New.
11850         (shnbsd_fetch_inferior_registers)
11851         (shnbsd_store_inferior_registers): Refactor as methods of
11852         sh_nbsd_nat_target.
11853         (_initialize_shnbsd_nat): Adjust to C++ification.
11854         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11855         (inf_ptrace_xfer_partial): Delete.
11856         (sparc_xfer_partial, sparc_target): Delete.
11857         * sparc-nat.h (sparc_fetch_inferior_registers)
11858         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11859         (sparc_target): Delete function declaration.
11860         (sparc_target): New template class.
11861         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11862         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11863         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11864         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11865         add_target.
11866         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11867         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11868         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11869         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11870         add_target.
11871         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11872         (the_vax_bsd_nat_target): New.
11873         (vaxbsd_fetch_inferior_registers)
11874         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11875         methods.
11876         (_initialize_vaxbsd_nat): Adjust to C++ification.
11877
11878         * bsd-kvm.c (bsd_kvm_target): New class.
11879         (bsd_kvm_ops): Now a bsd_kvm_target.
11880         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11881         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11882         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11883         bsd_kvm_target.
11884         (bsd_kvm_return_one): Delete.
11885         (bsd_kvm_add_target): Adjust to C++ification.
11886
11887         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11888         (nto_procfs_target_procfs): New classes.
11889         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11890         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11891         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11892         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11893         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11894         (procfs_remove_hw_breakpoint, procfs_resume)
11895         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11896         (procfs_kill_inferior, procfs_store_registers)
11897         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11898         as methods of nto_procfs_target.
11899         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11900         (nto_native_ops): Delete.
11901         (procfs_open, procfs_native_open): Delete.
11902         (nto_native_ops): Now an nto_procfs_target_native.
11903         (init_procfs_targets): Adjust to C++ification.
11904         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11905         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11906         Refactor as methods of nto_procfs_target.
11907
11908         * go32-nat.c (go32_nat_target): New class.
11909         (the_go32_nat_target): New.
11910         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11911         (go32_store_registers, go32_xfer_partial, go32_files_info)
11912         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11913         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11914         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11915         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11916         (go32_target): Delete.
11917         (_initialize_go32_nat): Adjust to C++ification.
11918
11919         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11920         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11921         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11922         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11923         gnu_nat_target.
11924         (gnu_target): Delete.
11925         * gnu-nat.h (gnu_target): Delete.
11926         (gnu_nat_target): New class.
11927         * i386-gnu-nat.c (gnu_base_target): New.
11928         (i386_gnu_nat_target): New class.
11929         (the_i386_gnu_nat_target): New.
11930         (_initialize_i386gnu_nat): Adjust to C++ification.
11931
11932 2018-05-02  Pedro Alves  <palves@redhat.com>
11933
11934         * bfd-target.c (target_bfd_xclose): Rename to ...
11935         (target_bfd_close): ... this.
11936         (target_bfd_reopen): Adjust.
11937         * target.c (target_close): Remove references to to_xclose.
11938         * target.h (target_ops::to_xclose): Delete.
11939         (target_ops::to_close): Update comments.
11940
11941 2018-05-02  Pedro Alves  <palves@redhat.com>
11942
11943         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11944         "linux-nat.h".
11945         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11946         * inf-ptrace.c (inf_ptrace_register_u_offset)
11947         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11948         (inf_ptrace_store_register, inf_ptrace_store_registers)
11949         (inf_ptrace_trad_target): Move to ...
11950         * linux-nat-trad.c: ... this new file.
11951         * linux-nat-trad.h: New file.
11952         * linux-nat.c (linux_target_install_ops): Make extern.
11953         (linux_trad_target): Delete.
11954         * linux-nat.h (linux_trad_target): Delete declaration.
11955         (linux_target_install_ops): Declare.
11956         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11957         "linux-nat.h".
11958
11959 2018-05-02  Pedro Alves  <palves@redhat.com>
11960
11961         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11962         procfs_target/add_target here.
11963         * procfs.c (procfs_target): Make static.
11964         (_initialize_procfs): Call add_target here.
11965         * procfs.h (struct target_ops): Remove forward declaration.
11966         (procfs_target): Remove declaration.
11967         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11968
11969 2018-05-02  Pedro Alves  <palves@redhat.com>
11970
11971         * procfs.c (procfs_stopped_by_watchpoint)
11972         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11973         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11974         Forward declare.
11975         (procfs_use_watchpoints): Delete, move contents...
11976         (procfs_target): ... here.
11977         * procfs.h (procfs_use_watchpoints): Delete declaration.
11978         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11979         procfs_use_watchpoints.
11980         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11981         procfs_use_watchpoints.
11982
11983 2018-05-02  Tom Tromey  <tom@tromey.com>
11984
11985         PR python/20084:
11986         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11987         and var_zuinteger_unlimited.
11988         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11989         and PARAM_ZUINTEGER_UNLIMITED.
11990         (set_parameter_value): Handle var_zuinteger and
11991         var_zuinteger_unlimited.
11992         (add_setshow_generic): Likewise.
11993         (parmpy_init): Likewise.
11994
11995 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11996
11997         PR rust/23124
11998         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11999         pointer is not null before dereferencing it.
12000
12001 2018-04-30  Tom Tromey  <tom@tromey.com>
12002
12003         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
12004         is_mi_like_p.
12005
12006 2018-04-30  Tom Tromey  <tom@tromey.com>
12007
12008         * breakpoint.c (mention): Remove use of is_mi_like_p.
12009         (print_mention_ranged_breakpoint): Likewise.
12010         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
12011         of is_mi_like_p.
12012
12013 2018-04-30  Tom Tromey  <tom@tromey.com>
12014
12015         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
12016
12017 2018-04-30  Tom Tromey  <tom@tromey.com>
12018
12019         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
12020         (info_spu_event_command): Remove some uses of is_mi_like_p.
12021
12022 2018-04-30  Tom Tromey  <tom@tromey.com>
12023
12024         * python/py-framefilter.c (py_print_single_arg)
12025         (enumerate_locals, py_print_args, py_print_frame): Remove some
12026         uses of is_mi_like_p.
12027
12028 2018-04-30  Tom Tromey  <tom@tromey.com>
12029
12030         * ui-out.c: Update.
12031         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
12032         * ui-out.h (ui_out::is_mi_like_p): Now const.
12033         (ui_out::do_is_mi_like_p): Now const.
12034         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
12035
12036 2018-04-30  Tom Tromey  <tom@tromey.com>
12037
12038         * varobj.c (varobj_set_visualizer): Use new_reference.
12039         * python/python.c (gdbpy_decode_line): Use new_reference.
12040         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
12041         new_reference.
12042
12043 2018-04-30  Tom Tromey  <tom@tromey.com>
12044
12045         * varobj.c (install_new_value): Use new_reference.
12046         * value.h (value_incref): Return void.  Swap intro comment with
12047         value_decref.
12048         * value.c (set_value_parent): Use new_reference.
12049         (value_incref): Return void.  Update intro comment.
12050         (release_value): Use new_reference.
12051         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
12052
12053 2018-04-30  Tom Tromey  <tom@tromey.com>
12054
12055         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
12056         * gdb_bfd.h (new_bfd_ref): Remove.
12057         (gdb_bfd_open): Update comment.
12058         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
12059         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
12060         (gdb_bfd_fdopenr): Use new_reference.
12061         * exec.c (exec_file_attach): Use new_reference.
12062
12063 2018-04-30  Tom Tromey  <tom@tromey.com>
12064
12065         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
12066         method.
12067
12068 2018-04-30  Tom Tromey  <tom@tromey.com>
12069
12070         * jit.c (jit_read_code_entry): Use type_align.
12071         * i386-tdep.c (i386_gdbarch_init): Don't call
12072         set_gdbarch_long_long_align_bit.
12073         * gdbarch.sh: Remove long_long_align_bit.
12074         * gdbarch.c, gdbarch.h: Rebuild.
12075         * arc-tdep.c (arc_type_align): New function.
12076         (arc_gdbarch_init): Use arc_type_align.  Don't call
12077         set_gdbarch_long_long_align_bit.
12078
12079 2018-04-30  Tom Tromey  <tom@tromey.com>
12080
12081         * rust-lang.c (rust_type_alignment): Remove.
12082         (rust_composite_type): Use type_align.
12083
12084 2018-04-30  Tom Tromey  <tom@tromey.com>
12085
12086         * NEWS: Mention Type.align.
12087         * python/py-type.c (typy_get_alignof): New function.
12088         (type_object_getset): Add "alignof".
12089
12090 2018-04-30  Tom Tromey  <tom@tromey.com>
12091
12092         PR exp/17095:
12093         * NEWS: Update.
12094         * std-operator.def (UNOP_ALIGNOF): New operator.
12095         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
12096         New.
12097         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
12098         * c-lang.c (c_op_print_tab): Add alignof.
12099         * c-exp.y (ALIGNOF): New token.
12100         (exp): Add "ALIGNOF" production.
12101         (ident_tokens): Add _Alignof and alignof.
12102
12103 2018-04-30  Tom Tromey  <tom@tromey.com>
12104
12105         * i386-tdep.c (i386_type_align): New function.
12106         (i386_gdbarch_init): Update.
12107         * gdbarch.sh (type_align): New method.
12108         * gdbarch.c, gdbarch.h: Rebuild.
12109         * arch-utils.h (default_type_align): Declare.
12110         * arch-utils.c (default_type_align): New function.
12111         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
12112         (struct type) <align_log2>: New field.
12113         <instance_flags>: Now a bitfield.
12114         (TYPE_RAW_ALIGN): New macro.
12115         (type_align, type_raw_align, set_type_align): Declare.
12116         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
12117         functions.
12118         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12119         (get_alignment, maybe_set_alignment): New functions.
12120         (read_structure_type, read_enumeration_type, read_array_type)
12121         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12122         (read_subrange_type, read_base_type): Set type alignment.
12123
12124 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12125
12126         * dwarf2read.c (read_index_from_section): Use bool.
12127
12128 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12129
12130         PR gdb/22950
12131         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12132         with #ifdef.
12133
12134 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12135
12136         PR build/22873
12137         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12138         last step, and do it atomically.
12139
12140 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12141
12142         * compile/compile-c-types.c (convert_int, convert_float):
12143         Update for C FE v1.
12144
12145 2018-04-27  Tom Tromey  <tom@tromey.com>
12146
12147         PR rust/22545:
12148         * rust-lang.c (rust_inclusive_range_type_p): New function.
12149         (rust_range): Handle inclusive ranges.
12150         (rust_compute_range): Likewise.
12151         * rust-exp.y (struct rust_op) <inclusive>: New field.
12152         (DOTDOTEQ): New constant.
12153         (range_expr): Add "..=" productions.
12154         (operator_tokens): Add "..=" token.
12155         (ast_range): Add "inclusive" parameter.
12156         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12157         ranges.
12158         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12159         bounds values.
12160         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12161         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12162         Update comments.
12163         * expprint.c (print_subexp_standard): Handle new bounds values.
12164         (dump_subexp_body_standard): Likewise.
12165
12166 2018-04-27  Tom Tromey  <tom@tromey.com>
12167
12168         * configure: Rebuild.
12169         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12170         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12171         "OVERRIDE".
12172         (class symbol_needs_eval_context): Likewise.
12173         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12174         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12175         "virtual".
12176         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12177         "override".
12178         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12179         * aarch64-tdep.c (instruction_reader::read): Use "override".
12180         (instruction_reader_test::read): Likewise.
12181         * arm-tdep.c (instruction_reader::read): Use "override".
12182         (instruction_reader_thumb::read): Likewise.
12183
12184 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12185
12186         PR remote/9665
12187         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12188         instead of remote_send.
12189         (remote_send): Remove.
12190
12191 2018-04-26  Pedro Alves  <palves@redhat.com>
12192
12193         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12194         find_function_start_sal instead of find_pc_line.
12195
12196 2018-04-26  Pedro Alves  <palves@redhat.com>
12197
12198         * breakpoint.c (set_breakpoint_location_function): Handle
12199         mst_data_gnu_ifunc.
12200         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12201         * elfread.c (elf_symtab_read): Give data symbols with
12202         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12203         (elf_rel_plt_read): Update comment.
12204         * linespec.c (convert_linespec_to_sals): Handle
12205         mst_data_gnu_ifunc.
12206         (minsym_found): Handle mst_data_gnu_ifunc.
12207         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12208         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12209         * parse.c (find_minsym_type_and_address): Handle
12210         mst_data_gnu_ifunc.
12211         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12212         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12213         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12214         comment.
12215         <mst_data_gnu_ifunc>: New enumerator.
12216
12217 2018-04-26  Pedro Alves  <palves@redhat.com>
12218
12219         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12220         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12221         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12222         Handle it.
12223         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12224         (lookup_minimal_symbol_by_pc): Adjust.
12225         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12226         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12227         * minsyms.h (lookup_msym_prefer): New enum.
12228         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12229         parameter by a lookup_msym_prefer parameter.
12230
12231 2018-04-26  Pedro Alves  <palves@redhat.com>
12232
12233         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12234         ends in "@plt" instead of looking at the symbol's section.
12235
12236 2018-04-26  Pedro Alves  <palves@redhat.com>
12237
12238         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12239         all references.
12240         (find_pc_partial_function_gnu_ifunc): Rename to ...
12241         (find_pc_partial_function): ... this, and remove references to
12242         'is_gnu_ifunc_p'.
12243         (find_pc_partial_function): Delete old implementation.
12244         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12245
12246 2018-04-26  Pedro Alves  <palves@redhat.com>
12247
12248         * linespec.c (struct bound_minimal_symbol_search_key): New.
12249         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12250         skip first line if we found a GNU ifunc minimal symbol by name.
12251         (compare_msymbols): Change parameters to work with a destructured
12252         lhs minsym.
12253         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12254         functions.
12255
12256 2018-04-26  Pedro Alves  <palves@redhat.com>
12257
12258         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12259         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12260         address/name.
12261         (add_location_to_breakpoint): Store the minsym and the objfile in
12262         the breakpoint location.
12263         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12264         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12265         Record the minsym in the sal.
12266         * symtab.h (symtab_and_line) <msymbol>: New field.
12267
12268 2018-04-26  Pedro Alves  <palves@redhat.com>
12269
12270         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12271         unless we actually resolved the ifunc.
12272
12273 2018-04-26  Pedro Alves  <palves@redhat.com>
12274
12275         * c-exp.y (variable production): Prefer ifunc minsyms over
12276         regular function symbols.
12277         * symtab.c (find_gnu_ifunc): New function.
12278         * minsyms.h (lookup_msym_prefer): New enum.
12279         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12280         parameter by a lookup_msym_prefer parameter.
12281         * symtab.h (find_gnu_ifunc): New declaration.
12282
12283 2018-04-26  Pedro Alves  <palves@redhat.com>
12284
12285         * blockframe.c (find_gnu_ifunc_target_type): New function.
12286         (find_function_type): New.
12287         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12288         return a value with a memory address.
12289         (eval_call): For calls to GNU ifunc functions, try to find the
12290         type of the target function from the type that the resolver
12291         returns.
12292         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12293         symbols.
12294         * infcall.c (find_function_return_type): Delete.
12295         (find_function_addr): Add 'function_type' parameter.  For calls to
12296         GNU ifunc functions, try to find the type of the target function
12297         from the type that the resolver returns, and return it via
12298         FUNCTION_TYPE.
12299         (call_function_by_hand_dummy): Adjust to use the function type
12300         returned by find_function_addr.
12301         (find_function_addr): Add 'function_type' parameter and move
12302         description here.
12303         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12304         declarations.
12305
12306 2018-04-26  Pedro Alves  <palves@redhat.com>
12307
12308         * c-exp.y (variable production): Skip finding an alias for ifunc
12309         symbols.
12310
12311 2018-04-26  Pedro Alves  <palves@redhat.com>
12312
12313         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12314
12315 2018-04-25  Pedro Alves  <palves@redhat.com>
12316
12317         * infcmd.c (kill_command): Print the pid as string, not the whole
12318         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12319         message.
12320         * remote.c (remote_detach_1): Print the pid as string, not the
12321         whole thread's ptid.
12322
12323 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12324             Sergio Durigan Junior  <sergiodj@redhat.com>
12325             Pedro Alves  <palves@redhat.com>
12326
12327         * infcmd.c (kill_command): Print message when inferior has
12328         been killed.
12329         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12330         '1'.
12331         (add_inferior): Improve message printed when
12332         'print_inferior_events' is on.
12333         (exit_inferior): Remove message printed when
12334         'print_inferior_events' is on.
12335         (detach_inferior): Improve message printed when
12336         'print_inferior_events' is on.
12337         (initialize_inferiors): Use 'add_inferior_silent' to set
12338         'current_inferior_'.
12339         * inferior.h (print_inferior_events): Declare here as
12340         'extern'.
12341         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12342         '[Detaching...]' messages when 'print_inferior_events' is on.
12343         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12344         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12345         'Detaching after fork from child...', replace it by '... from
12346         parent...'.
12347         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12348         prefix/suffix when printing 'Detaching...' messages.  Print
12349         them when 'print_inferior_events' is on.
12350         * remote.c (remote_detach_1): Print message when detaching
12351         from inferior and '!is_fork_parent'.
12352
12353 2018-04-24  Tom Tromey  <tom@tromey.com>
12354
12355         * cli-out.h: Reindent.
12356
12357 2018-04-24  Tom Tromey  <tom@tromey.com>
12358
12359         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12360         (cli_ui_out::do_field_string): Use fputs_filtered.
12361         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12362
12363 2018-04-23  Tom Tromey  <tom@tromey.com>
12364
12365         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12366         gdb::unique_xmalloc_ptr.
12367
12368 2018-04-23  Tom Tromey  <tom@tromey.com>
12369
12370         * configure: Rebuild.
12371
12372 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12373
12374         PR gdb/23095
12375         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12376         prepare_for_testing.  Set normal_bp to r_debug_state if target
12377         is bsd.
12378
12379 2018-04-21  Pedro Alves  <palves@redhat.com>
12380             Rajendra SY  <rajendra.sy@gmail.com>
12381
12382         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12383         * remote.c (extended_remote_attach): In all-stop mode, mark the
12384         thread as executing.
12385
12386 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12387
12388         * thread.c (thread_apply_all_command): Fix comment.
12389         (thread_command): Fix comment.
12390
12391 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12392
12393         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12394         parameter.
12395         * features/aarch64-core.c (create_feature_aarch64_core):
12396         Regenerate.
12397         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12398         Likewise.
12399         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12400         Likewise.
12401         * features/i386/32bit-avx512.c
12402         (create_feature_i386_32bit_avx512): Likewise.
12403         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12404         Likewise.
12405         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12406         Likewise.
12407         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12408         Likewise.
12409         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12410         Likewise.
12411         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12412         Likewise.
12413         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12414         Likewise.
12415         * features/i386/64bit-avx512.c
12416         (create_feature_i386_64bit_avx512): Likewise.
12417         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12418         Likewise.
12419         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12420         Likewise.
12421         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12422         Likewise.
12423         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12424         Likewise.
12425         * features/i386/64bit-segments.c
12426         (create_feature_i386_64bit_segments): Likewise.
12427         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12428         Likewise.
12429         * features/i386/x32-core.c
12430         (create_feature_i386_x32_core): Likewise.
12431         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12432         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12433         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12434         * target-descriptions.c: In generated code, don't pass xml
12435         filename.
12436
12437 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12438
12439         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12440         (print_xml_feature::visit_post): Likewise.
12441         (print_xml_feature::visit): Likewise.
12442         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12443         (print_xml_feature): Add new class.
12444         * regformats/regdat.sh: Null xmltarget on feature targets.
12445         * target-descriptions.c (struct target_desc): Add xmltarget.
12446         (maintenance_check_tdesc_xml_convert): Add unittest function.
12447         (tdesc_get_features_xml): Add function to get xml.
12448         (maintenance_check_xml_descriptions): Test xml generation.
12449         * xml-tdesc.c (string_read_description_xml): Add function.
12450         * xml-tdesc.h (string_read_description_xml): Add declaration.
12451
12452 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12453
12454         * features/Makefile: Add feature marker to targets with new style
12455         target descriptions.
12456         * regformats/aarch64.dat: Regenerate.
12457         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12458         * regformats/i386/amd64-avx-linux.dat: Likewise.
12459         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12460         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12461         * regformats/i386/amd64-linux.dat: Likewise.
12462         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12463         * regformats/i386/amd64.dat: Likewise.
12464         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12465         * regformats/i386/i386-avx-linux.dat: Likewise.
12466         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12467         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12468         * regformats/i386/i386-linux.dat: Likewise.
12469         * regformats/i386/i386-mmx-linux.dat: Likewise.
12470         * regformats/i386/i386-mpx-linux.dat: Likewise.
12471         * regformats/i386/i386.dat: Likewise.
12472         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12473         * regformats/i386/x32-avx-linux.dat: Likewise.
12474         * regformats/i386/x32-linux.dat: Likewise.
12475         * regformats/tic6x-c62x-linux.dat: Likewise.
12476         * regformats/tic6x-c64x-linux.dat: Likewise.
12477         * regformats/tic6x-c64xp-linux.dat: Likewise.
12478         * regformats/regdat.sh: Parse feature marker.
12479
12480 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12481
12482         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12483         (tdesc_osabi_name): Likewise.
12484         * target-descriptions.c (tdesc_architecture_name): Add new
12485         function.
12486         (tdesc_osabi_name): Likewise.
12487
12488 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12489
12490         * common/tdesc.c (tdesc_predefined_type): Move to here.
12491         (tdesc_named_type): Likewise.
12492         (tdesc_create_vector): Likewise.
12493         (tdesc_create_struct): Likewise.
12494         (tdesc_set_struct_size): Likewise.
12495         (tdesc_create_union): Likewise.
12496         (tdesc_create_flags): Likewise.
12497         (tdesc_create_enum): Likewise.
12498         (tdesc_add_field): Likewise.
12499         (tdesc_add_typed_bitfield): Likewise.
12500         (tdesc_add_bitfield): Likewise.
12501         (tdesc_add_flag): Likewise.
12502         (tdesc_add_enum_value): Likewise.
12503         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12504         (struct tdesc_type_vector): Likewise.
12505         (struct tdesc_type_field): Likewise.
12506         (struct tdesc_type_with_fields): Likewise.
12507         (tdesc_create_enum): Add declaration.
12508         (tdesc_add_typed_bitfield): Likewise.
12509         (tdesc_add_enum_value): Likewise.
12510         * target-descriptions.c (tdesc_type_field): Move from here.
12511         (tdesc_type_builtin): Likewise.
12512         (tdesc_type_vector): Likewise.
12513         (tdesc_type_with_fields): Likewise.
12514         (tdesc_predefined_types): Likewise.
12515         (tdesc_named_type): Likewise.
12516         (tdesc_create_vector): Likewise.
12517         (tdesc_create_struct): Likewise.
12518         (tdesc_set_struct_size): Likewise.
12519         (tdesc_create_union): Likewise.
12520         (tdesc_create_flags): Likewise.
12521         (tdesc_create_enum): Likewise.
12522         (tdesc_add_field): Likewise.
12523         (tdesc_add_typed_bitfield): Likewise.
12524         (tdesc_add_bitfield): Likewise.
12525         (tdesc_add_flag): Likewise.
12526         (tdesc_add_enum_value): Likewise.
12527         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12528         (tdesc_add_typed_bitfield): Likewise.
12529         (tdesc_add_enum_value): Likewise.
12530
12531 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12532
12533         * common/tdesc.c (tdesc_feature::accept): Move to here.
12534         (tdesc_feature::operator==): Likewise.
12535         (tdesc_create_reg): Likewise.
12536         * common/tdesc.h (tdesc_type_kind): Likewise.
12537         (struct tdesc_type): Likewise.
12538         (struct tdesc_feature): Likewise.
12539         * regformats/regdat.sh: Create a feature.
12540         * target-descriptions.c (tdesc_type_kind): Move from here.
12541         (tdesc_type): Likewise.
12542         (tdesc_type_up): Likewise.
12543         (tdesc_feature): Likewise.
12544         (tdesc_create_reg): Likewise.
12545
12546 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12547
12548         * Makefile.in: Add arch/tdesc.c
12549         * common/tdesc.c: New file.
12550         * common/tdesc.h (tdesc_element_visitor): Move to here.
12551         (tdesc_element): Likewise.
12552         (tdesc_reg): Likewise.
12553         (tdesc_reg_up): Likewise.
12554         * regformats/regdef.h (reg): Add offset to constructors.
12555         * target-descriptions.c (tdesc_element_visitor): Move from here.
12556         (tdesc_element): Likewise.
12557         (tdesc_reg): Likewise.
12558         (tdesc_reg_up): Likewise.
12559
12560 2018-04-17  Tom Tromey  <tom@tromey.com>
12561
12562         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12563         discriminant field.
12564
12565 2018-04-17  Tom Tromey  <tom@tromey.com>
12566
12567         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12568
12569 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12570
12571         * symtab.c (print_symbol_info): Skip printing filename and line
12572         number when `last' is NULL.
12573         (symtab_symbol_info): Use empty string instead of NULL for first
12574         invocation of print_symbol_info.
12575         (rbreak_command): Pass NULL to `last' parameter of
12576         print_symbol_info.
12577
12578 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12579
12580         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12581         instead of nullptr.
12582
12583 2018-04-16  Pedro Alves  <palves@redhat.com>
12584
12585         * MAINTAINERS (sh): Remove.
12586         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12587         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12588         (ALLDEPFILES): Remove sh64-tdep.c.
12589         * NEWS: Mentions that support for SH-5/SH64 is removed.
12590         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12591         (sh*-*-openbsd*): Ditto.
12592         (sh64-*-elf*): Remove.
12593         (sh*): Remove.
12594         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12595         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12596         * sh-tdep.c: No longer include "sh64-tdep.h".
12597         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12598         * sh64-tdep.c, sh64-tdep.h: Remove files.
12599
12600 2018-04-16  Pedro Alves  <palves@redhat.com>
12601
12602         * MAINTAINERS: Remove m88k.
12603         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12604         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12605         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12606         * NEWS: Mention that support for m88k was removed.
12607         * configure.host (m88*-*-*): Remove support.
12608         * configure.nat (m88k-*-*): Remove support.
12609         * configure.tgt (m88*-*-openbsd*): Remove.
12610         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12611
12612 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12613
12614         * configure.tgt (x86_tobjs): New variable.
12615         (amd64_tobjs, i386_tobjs): Use it.
12616
12617 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12618
12619         * symtab.c (print_symbol_info): Precede the symbol definition by
12620         the line number when available.
12621         * NEWS: Advertise this enhancement.
12622
12623 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12624
12625         * NEWS (New options): announce set/show record btrace cpu.
12626         * btrace.c: Include record-btrace.h.
12627         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12628         the vendor is unknown.
12629         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12630         Maybe overwrite the btrace configuration's cpu.
12631         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12632         (btrace_fetch): Add cpu parameter.  Update callers.
12633         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12634         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12635         errata workarounds if the vendor is unknown.
12636         * python/py-record-btrace.c: Include record-btrace.h.
12637         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12638         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12639         * record-btrace.c (record_btrace_cpu_state_kind): New.
12640         (record_btrace_cpu): New.
12641         (set_record_btrace_cpu_cmdlist): New.
12642         (record_btrace_get_cpu): New.
12643         (require_btrace_thread, record_btrace_info)
12644         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12645         (cmd_set_record_btrace_cpu_none): New.
12646         (cmd_set_record_btrace_cpu_auto): New.
12647         (cmd_set_record_btrace_cpu): New.
12648         (cmd_show_record_btrace_cpu): New.
12649         (_initialize_record_btrace): Initialize set/show record btrace cpu
12650         commands.
12651         * record-btrace.h (record_btrace_get_cpu): New.
12652
12653 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12654
12655         * record.c (set_record_command): Fix typo in message.
12656
12657 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12658
12659         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12660
12661 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12662
12663         * infrun.c (process_event_stop_test): Call
12664         gdbarch_in_indirect_branch_thunk.
12665         * gdbarch.sh (in_indirect_branch_thunk): New.
12666         * gdbarch.c: Regenerated.
12667         * gdbarch.h: Regenerated.
12668         * x86-tdep.h: New.
12669         * x86-tdep.c: New.
12670         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12671         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12672         (ALLDEPFILES): Add x86-tdep.c.
12673         * arch-utils.h (default_in_indirect_branch_thunk): New.
12674         * arch-utils.c (default_in_indirect_branch_thunk): New.
12675         * i386-tdep: Include x86-tdep.h.
12676         (i386_in_indirect_branch_thunk): New.
12677         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12678         function.
12679         * amd64-tdep: Include x86-tdep.h.
12680         (amd64_in_indirect_branch_thunk): New.
12681         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12682
12683 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12684
12685         PR gdb/23053
12686         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12687         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12688         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12689         regression.
12690
12691 2018-04-12  Tom Tromey  <tom@tromey.com>
12692
12693         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12694         (rust_evaluate_subexp): Likewise.
12695
12696 2018-04-12  Pedro Alves  <palves@redhat.com>
12697
12698         * procfs.c (procfs_detach): Make forward declaration's prototype
12699         match definition's protototype.
12700         (proc_get_LDT_entry): Remove stale do_cleanups call.
12701
12702 2018-04-12  Pedro Alves  <palves@redhat.com>
12703
12704         * target.h (target_ops::to_has_exited): Delete.
12705         (target_has_exited): Delete.
12706         * target-delegates.c: Regenerate.
12707
12708 2018-04-11  Pedro Alves  <palves@redhat.com>
12709
12710         * target.c (fileio_fh_t::t): Add comment.
12711         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12712         (target_fileio_close): Handle a NULL target.
12713         (invalidate_fileio_fh): New.
12714         (target_close): Call it.
12715         * remote.c (remote_hostio_send_command): No longer check whether
12716         remote_desc is open.
12717
12718 2018-04-11  Pedro Alves  <palves@redhat.com>
12719
12720         * target.c (fileio_fh_t): Make it a named struct instead of a
12721         typedef.
12722         (fileio_fh_t::is_closed): New method.
12723         (DEF_VEC_O (fileio_fh_t)): Remove.
12724         (fileio_fhandles): Now a std::vector.
12725         (is_closed_fileio_fh): Delete.
12726         (acquire_fileio_fd): Adjust.  Rename parameters.
12727         (release_fileio_fd): Adjust.
12728         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12729         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12730         (target_fileio_close): Adjust.
12731
12732 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12733
12734         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12735         index.
12736
12737 2018-04-10  Pedro Alves  <palves@redhat.com>
12738
12739         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12740         (scoped_finish_thread_state): New class.
12741         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12742         cleanup.
12743         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12744         (fetch_inferior_event, normal_stop): Likewise.
12745         * thread.c (finish_thread_state_cleanup): Delete.
12746
12747 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12748             Pedro Alves  <palves@redhat.com>
12749
12750         * value.c: Include "selftest.h" and "common/array-view.h".
12751         (struct range) <operator ==>: New.
12752         (test_ranges_contain): New.
12753         (check_ranges_vector): New.
12754         (test_insert_into_bit_range_vector): New.
12755         (_initialize_values): Register selftests.
12756         * common/array-view.h (operator==, operator!=): New.
12757
12758 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12759
12760         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12761         an iterator.
12762         * inline-frame.c: Include <algorithm>.
12763         (struct inline_state): Add constructor.
12764         (inline_state_s): Remove.
12765         (DEF_VEC_O(inline_state_s)): Remove.
12766         (inline_states): Change type to std::vector.
12767         (find_inline_frame_state): Adjust to std::vector.
12768         (allocate_inline_frame_state): Remove.
12769         (clear_inline_frame_state): Adjust to std::vector.
12770         (skip_inline_frames): Adjust to std::vector.
12771
12772 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12773
12774         * tracepoint.h (struct trace_state_variable): Add constructor.
12775         <name>: Change type to std::string.
12776         * tracepoint.c (tsv_s): Remove.
12777         (DEF_VEC_O(tsv_s)): Remove.
12778         (tvariables): Change to std::vector.
12779         (create_trace_state_variable): Adjust to std::vector.
12780         (find_trace_state_variable): Likewise.
12781         (find_trace_state_variable_by_number): Likewise.
12782         (delete_trace_state_variable): Likewise.
12783         (trace_variable_command): Adjust to std::string.
12784         (delete_trace_variable_command): Likewise.
12785         (tvariables_info_1): Adjust to std::vector.
12786         (save_trace_state_variables): Likewise.
12787         (start_tracing): Likewise.
12788         (merge_uploaded_trace_state_variables): Adjust to std::vector
12789         and std::string.
12790         * target.h (struct target_ops)
12791         <to_download_trace_state_variable>: Pass reference to
12792         trace_state_variable.
12793         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12794         * target-delegates.c: Re-generate.
12795         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12796         (mi_tsv_deleted): Likewise.
12797         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12798         * remote.c (remote_download_trace_state_variable): Change
12799         pointer to reference and adjust.
12800         * make-target-delegates (parse_argtypes): Handle references.
12801         (write_function_header): Likewise.
12802         (munge_type): Likewise.
12803
12804 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12805
12806         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12807         string_view-selftests.c.
12808         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12809         testsuite.
12810         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12811         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12812         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12813         * unittests/basic_string_view/element_access/char/1.cc:
12814         Likewise.
12815         * unittests/basic_string_view/element_access/char/empty.cc:
12816         Likewise.
12817         * unittests/basic_string_view/element_access/char/front_back.cc:
12818         Likewise.
12819         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12820         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12821         Likewise.
12822         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12823         Likewise.
12824         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12825         Likewise.
12826         * unittests/basic_string_view/operations/compare/char/1.cc:
12827         Likewise.
12828         * unittests/basic_string_view/operations/compare/char/13650.cc:
12829         Likewise.
12830         * unittests/basic_string_view/operations/copy/char/1.cc:
12831         Likewise.
12832         * unittests/basic_string_view/operations/data/char/1.cc:
12833         Likewise.
12834         * unittests/basic_string_view/operations/find/char/1.cc:
12835         Likewise.
12836         * unittests/basic_string_view/operations/find/char/2.cc:
12837         Likewise.
12838         * unittests/basic_string_view/operations/find/char/3.cc:
12839         Likewise.
12840         * unittests/basic_string_view/operations/find/char/4.cc:
12841         Likewise.
12842         * unittests/basic_string_view/operations/rfind/char/1.cc:
12843         Likewise.
12844         * unittests/basic_string_view/operations/rfind/char/2.cc:
12845         Likewise.
12846         * unittests/basic_string_view/operations/rfind/char/3.cc:
12847         Likewise.
12848         * unittests/basic_string_view/operations/substr/char/1.cc:
12849         Likewise.
12850         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12851         * unittests/string_view-selftests.c: New file.
12852
12853 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12854
12855         * unittests/basic_string_view/capacity/1.cc: New file.
12856         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12857         * unittests/basic_string_view/cons/char/1.cc: New file.
12858         * unittests/basic_string_view/cons/char/2.cc: New file.
12859         * unittests/basic_string_view/cons/char/3.cc: New file.
12860         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12861         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12862         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12863         * unittests/basic_string_view/element_access/char/1.cc: New file.
12864         * unittests/basic_string_view/element_access/char/2.cc: New file.
12865         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12866         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12867         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12868         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12869         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12870         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12871         * unittests/basic_string_view/include.cc: New file.
12872         * unittests/basic_string_view/inserters/char/1.cc: New file.
12873         * unittests/basic_string_view/inserters/char/2.cc: New file.
12874         * unittests/basic_string_view/inserters/char/3.cc: New file.
12875         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12876         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12877         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12878         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12879         * unittests/basic_string_view/literals/types.cc: New file.
12880         * unittests/basic_string_view/literals/values.cc: New file.
12881         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12882         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12883         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12884         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12885         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12886         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12887         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12888         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12889         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12890         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12891         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12892         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12893         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12894         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12895         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12896         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12897         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12898         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12899         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12900         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12901         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12902         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12903         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12904         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12905         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12906         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12907         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12908         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12909         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12910         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12911         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12912         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12913         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12914         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12915         * unittests/basic_string_view/operators/char/2.cc: New file.
12916         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12917         * unittests/basic_string_view/range_access/char/1.cc: New file.
12918         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12919         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12920         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12921         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12922         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12923         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12924         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12925         * unittests/basic_string_view/typedefs.cc: New file.
12926         * unittests/basic_string_view/types/1.cc: New file.
12927
12928 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12929
12930         * common/gdb_string_view.h: Remove libstdc++ implementation
12931         details, adjust to gdb reality.
12932         * common/gdb_string_view.tcc: Likewise.
12933         * cli/cli-script.c (struct string_view): Remove.
12934         (user_args) <m_args>: Change element type to gdb::string_view.
12935         (user_args::insert_args): Adjust.
12936
12937 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12938
12939         * common/gdb_string_view.h: New file.
12940         * common/gdb_string_view.tcc: New file.
12941
12942 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12943
12944         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12945         * configure: Re-generate.
12946
12947 2018-04-09  Pedro Alves  <palves@redhat.com>
12948
12949         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12950         (set_target_gdbarch): Call
12951         gdb::observers::architecture_changed.notify instead of
12952         observer_notify_architecture_changed.
12953
12954 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12955
12956         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12957         (do_restore_current_traceframe_cleanup): Remove.
12958         (restore_current_traceframe_cleanup_dtor): Remove.
12959         (make_cleanup_restore_current_traceframe): Remove.
12960         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12961         New.
12962         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12963         * infrun.c (fetch_inferior_event): Use
12964         scoped_restore_current_traceframe.
12965
12966 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12967
12968         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12969         Remove.
12970         <n_allocated_type_units>: Remove.
12971         <all_type_units>: Change to std::vector.
12972         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12973         to std::vector change.
12974         (dwarf2_per_objfile::get_cutu): Likewise.
12975         (dwarf2_per_objfile::get_tu): Likewise.
12976         (create_signatured_type_table_from_index): Likewise.
12977         (create_signatured_type_table_from_debug_names): Likewise.
12978         (dw2_symtab_iter_next): Likewise.
12979         (dw2_print_stats): Likewise.
12980         (dw2_expand_all_symtabs): Likewise.
12981         (dw2_expand_marked_cus): Likewise.
12982         (dw2_debug_names_iterator::next): Likewise.
12983         (dwarf2_initialize_objfile): Likewise.
12984         (add_signatured_type_cu_to_table): Likewise.
12985         (create_all_type_units): Likewise.
12986         (add_type_unit): Likewise.
12987         (struct tu_abbrev_offset): Add constructor.
12988         (build_type_psymtabs_1): Adjust to std::vector change.
12989         (print_tu_stats): Likewise.
12990         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12991         (write_debug_names): Likewise.
12992
12993 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12994
12995         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12996         Make an std::vector.
12997         <n_comp_units>: Remove.
12998         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12999         to std::vector change.
13000         (dwarf2_per_objfile::get_cutu): Likewise.
13001         (dwarf2_per_objfile::get_cu): Likewise.
13002         (create_cus_from_index): Likewise.
13003         (create_addrmap_from_index): Likewise.
13004         (create_addrmap_from_aranges): Likewise.
13005         (dwarf2_read_index): Likewise.
13006         (dw2_find_last_source_symtab): Likewise.
13007         (dw2_map_symtabs_matching_filename): Likewise.
13008         (dw2_symtab_iter_next): Likewise.
13009         (dw2_print_stats): Likewise.
13010         (dw2_expand_all_symtabs): Likewise.
13011         (dw2_expand_symtabs_with_fullname): Likewise.
13012         (dw2_expand_marked_cus): Likewise.
13013         (dw2_map_symbol_filenames): Likewise.
13014         (create_cus_from_debug_names): Likewise.
13015         (dwarf2_read_debug_names): Likewise.
13016         (dw2_debug_names_iterator::next): Likewise.
13017         (dwarf2_initialize_objfile): Likewise.
13018         (set_partial_user): Likewise.
13019         (dwarf2_build_psymtabs_hard): Likewise.
13020         (read_comp_units_from_section): Remove arguments, adjust to
13021         std::vector change.
13022         (create_all_comp_units): Adjust to std::vector and
13023         read_comp_units_from_section changes.
13024         (dwarf2_find_containing_comp_unit): Adjust to std::vector
13025         change.
13026         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
13027         (psyms_seen_size): Likewise.
13028         (write_gdbindex): Likewise.
13029         (write_debug_names): Likewise.
13030
13031 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13032
13033         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
13034         with dwarf2_per_objfile.
13035         (create_cus_from_index): Likewise.
13036         (create_signatured_type_table_from_index): Likewise.
13037         (dwarf2_read_index): Likewise.
13038         (dwarf2_initialize_objfile): Likewise.
13039         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
13040         per_cu rather than get_dwarf2_per_objfile.
13041
13042 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13043
13044         * dwarf2read.h (struct signatured_type): Forward declare.
13045         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
13046         New methods.
13047         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
13048         (dw2_get_cutu): ...this.
13049         (dwarf2_per_objfile::get_cu): Rename from...
13050         (dw2_get_cu): ...this.
13051         (dwarf2_per_objfile::get_tu): New.
13052         (create_addrmap_from_index): Adjust.
13053         (create_addrmap_from_aranges): Adjust.
13054         (dw2_find_last_source_symtab): Adjust.
13055         (dw2_map_symtabs_matching_filename): Adjust.
13056         (dw2_symtab_iter_next): Adjust.
13057         (dw2_print_stats): Adjust.
13058         (dw2_expand_all_symtabs): Adjust.
13059         (dw2_expand_symtabs_with_fullname): Adjust.
13060         (dw2_expand_marked_cus): Adjust.
13061         (dw_expand_symtabs_matching_file_matcher): Adjust.
13062         (dw2_map_symbol_filenames): Adjust.
13063         (dw2_debug_names_iterator::next): Adjust.
13064         (dwarf2_initialize_objfile): Adjust.
13065         (set_partial_user): Adjust.
13066         (dwarf2_build_psymtabs_hard): Adjust.
13067
13068 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13069
13070         * dwarf2read.c (create_signatured_type_table_from_debug_names):
13071         Remove unused variables.
13072         (dw2_map_symtabs_matching_filename): Likewise.
13073         (dwarf2_record_block_ranges): Likewise.
13074         (dwarf2_read_addr_index): Likewise.
13075         (follow_die_offset): Likewise.
13076
13077 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13078
13079         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
13080         to symbol_file_add_main.
13081
13082 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13083
13084         PR mi/22299
13085         * mi/mi-console.c (do_fputc_async_safe): New.
13086         (mi_console_file::write_async_safe): New.
13087         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
13088         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
13089         New.
13090         * ui-file.c (ui_file::putstrn): Adjust call to
13091         fputstrn_unfiltered.
13092         * utils.c (printchar): Replace do_fputs and do_fprintf
13093         parameters by do_fputc.
13094         (fputstr_filtered): Adjust call to printchar.
13095         (fputstr_unfiltered): Likewise.
13096         (fputstrn_filtered): Likewise.
13097         (fputstrn_unfiltered): Add do_fputc parameter, pass to
13098         printchar.
13099         * utils.h (do_fputc_ftype): New typedef.
13100         (fputstrn_unfiltered): Add do_fputc parameter.
13101
13102 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
13103
13104         * regformats/i386/i386-avx.dat: Remove.
13105
13106 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13107
13108         PR gdb/22979
13109         * amd64-tdep.c (amd64_none_init_abi): New function.
13110         (amd64_x32_none_init_abi): New function.
13111         (_initialize_amd64_tdep): Register handlers for x86-64 and
13112         x64_32 with GDB_OSABI_NONE.
13113         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
13114         GDB_OSABI_NONE osabi.
13115
13116 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13117
13118         PR gdb/22980
13119         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13120         GDB_OSABI_NONE.
13121         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13122         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13123
13124 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13125
13126         * common/byte-vector.h (char_vector): New type.
13127         * target.h (target_read_alloc): Return
13128         gdb::optional<byte_vector>.
13129         (target_read_stralloc): Return gdb::optional<char_vector>.
13130         (target_get_osdata): Return gdb::optional<char_vector>.
13131         * target.c (target_read_alloc_1): Templatize.  Replacement
13132         manual memory management with vector.
13133         (target_read_alloc): Change return type, adjust.
13134         (target_read_stralloc): Change return type, adjust.
13135         (target_get_osdata): Change return type, adjust.
13136         * auxv.c (struct auxv_info) <length>: Remove.
13137         <data>: Change type to gdb::optional<byte_vector>.
13138         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13139         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13140         (target_auxv_search): Adjust.
13141         (fprint_target_auxv): Adjust.
13142         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13143         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13144         (linux_make_corefile_notes): Adjust.
13145         * osdata.c (get_osdata): Adjust.
13146         * remote.c (remote_get_threads_with_qxfer): Adjust.
13147         (remote_memory_map): Adjust.
13148         (remote_traceframe_info): Adjust.
13149         (btrace_read_config): Adjust.
13150         (remote_read_btrace): Adjust.
13151         (remote_pid_to_exec_file): Adjust.
13152         * solib-aix.c (solib_aix_get_library_list): Adjust.
13153         * solib-dsbt.c (decode_loadmap): Don't free buf.
13154         (dsbt_get_initial_loadmaps): Adjust.
13155         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13156         * solib-target.c (solib_target_current_sos): Adjust.
13157         * tracepoint.c (sdata_make_value): Adjust.
13158         * xml-support.c (xinclude_start_include): Adjust.
13159         (xml_fetch_content_from_file): Adjust.
13160         * xml-support.h (xml_fetch_another): Change return type.
13161         (xml_fetch_content_from_file): Change return type.
13162         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13163         * xml-tdesc.c (file_read_description_xml): Adjust.
13164         (fetch_available_features_from_target): Change return type.
13165         (target_fetch_description_xml): Adjust.
13166         (target_read_description_xml): Adjust.
13167
13168 2018-04-06  Tom Tromey  <tom@tromey.com>
13169
13170         * value.c (~value): Update.
13171         (struct value) <contents>: Now unique_xmalloc_ptr.
13172         (value_contents_bits_eq, allocate_value_contents)
13173         (value_contents_raw, value_contents_all_raw)
13174         (value_contents_for_printing, value_contents_for_printing_const)
13175         (set_value_enclosing_type): Update.
13176
13177 2018-04-06  Tom Tromey  <tom@tromey.com>
13178
13179         * value.c (range_s): Remove typedef, VEC.
13180         (struct range): Add operator<.
13181         (range_lessthan): Remove.
13182         (ranges_contain): Change type.
13183         (~value): Update.
13184         (struct value) <unavailable, optimized_out>: Now std::vector.
13185         (value_entirely_available)
13186         (value_entirely_covered_by_range_vector)
13187         (value_entirely_unavailable, value_entirely_optimized_out):
13188         Update.
13189         (insert_into_bit_range_vector): Change argument type.
13190         (find_first_range_overlap): Likewise.
13191         (struct ranges_and_idx, value_contents_bits_eq)
13192         (require_not_optimized_out, require_available): Update.
13193         (ranges_copy_adjusted): Change argument types.
13194         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13195
13196 2018-04-06  Tom Tromey  <tom@tromey.com>
13197
13198         * value.c (~value): Update.
13199         (struct value) <parent>: Now a value_ref_ptr.
13200         (value_parent, set_value_parent, value_address, value_copy):
13201         Update.
13202
13203 2018-04-06  Tom Tromey  <tom@tromey.com>
13204
13205         * value.c (struct value): Add constructor, destructor, and member
13206         initializers.
13207         (allocate_value_lazy, value_decref): Update.
13208
13209 2018-04-06  Tom Tromey  <tom@tromey.com>
13210
13211         * value.c (struct value) <released, next>: Remove.
13212         (all_values): Now a std::vector.
13213         (allocate_value_lazy): Update.
13214         (value_next): Remove.
13215         (value_mark, value_free_to_mark, release_value)
13216         (value_release_to_mark): Update.
13217
13218 2018-04-06  Tom Tromey  <tom@tromey.com>
13219
13220         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13221         (free_value_chain): Remove.
13222         * value.c (free_value_chain): Remove.
13223         (value_release_to_mark): Return a std::vector.
13224         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13225         std::vector.
13226         (check_condition): Update.
13227         * eval.c (fetch_subexp_value): Change "val_chain" to a
13228         std::vector.
13229         * breakpoint.c (update_watchpoint): Update.
13230         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13231
13232 2018-04-06  Tom Tromey  <tom@tromey.com>
13233
13234         * value.h (free_all_values): Remove.
13235         * value.c (free_all_values): Remove.
13236
13237 2018-04-06  Tom Tromey  <tom@tromey.com>
13238
13239         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13240         (value_history_chain, value_history_count): Remove.
13241         (value_history): New global.
13242         (record_latest_value, access_value_history, show_values)
13243         (preserve_values): Update.
13244
13245 2018-04-06  Tom Tromey  <tom@tromey.com>
13246
13247         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13248         * varobj.c (varobj_set_display_format, varobj_set_value)
13249         (install_default_visualizer, construct_visualizer)
13250         (install_new_value, ~varobj, varobj_get_value_type)
13251         (my_value_of_variable, varobj_editable_p): Update.
13252         * c-varobj.c (c_describe_child, c_value_of_variable)
13253         (cplus_number_of_children, cplus_describe_child): Update.
13254         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13255         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13256         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13257
13258 2018-04-06  Tom Tromey  <tom@tromey.com>
13259
13260         * printcmd.c (last_examine_address): Change type to
13261         value_ref_ptr.
13262         (do_examine, x_command): Update.
13263
13264 2018-04-06  Tom Tromey  <tom@tromey.com>
13265
13266         * value.c (release_value): Update.
13267         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13268         (struct bpstats) <val>: Now a value_ref_ptr.
13269         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13270         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13271         (~watchpoint, print_it_watchpoint, watch_command_1)
13272         (invalidate_bp_value_on_memory_change): Update.
13273
13274 2018-04-06  Tom Tromey  <tom@tromey.com>
13275
13276         * varobj.c (varobj_clear_saved_item)
13277         (update_dynamic_varobj_children, install_new_value, ~varobj):
13278         Update.
13279         * value.h (value_incref): Move declaration earlier.
13280         (value_decref): Rename from value_free.
13281         (struct value_ref_policy): New.
13282         (value_ref_ptr): New typedef.
13283         (struct value_deleter): Remove.
13284         (gdb_value_up): Remove typedef.
13285         (release_value): Change return type.
13286         (release_value_or_incref): Remove.
13287         * value.c (set_value_parent): Update.
13288         (value_incref): Change return type.
13289         (value_decref): Rename from value_free.
13290         (value_free_to_mark, free_all_values, free_value_chain): Update.
13291         (release_value): Return value_ref_ptr.
13292         (release_value_or_incref): Remove.
13293         (record_latest_value, set_internalvar, clear_internalvar):
13294         Update.
13295         * stack.c (info_frame_command): Don't call value_free.
13296         * python/py-value.c (valpy_dealloc, valpy_new)
13297         (value_to_value_object): Update.
13298         * printcmd.c (do_examine): Update.
13299         * opencl-lang.c (lval_func_free_closure): Update.
13300         * mi/mi-main.c (register_changed_p): Don't call value_free.
13301         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13302         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13303         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13304         value_free.
13305         * guile/scm-value.c (vlscm_free_value_smob)
13306         (vlscm_scm_from_value): Update.
13307         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13308         (frame_unwind_register_unsigned, get_frame_register_bytes)
13309         (put_frame_register_bytes): Don't call value_free.
13310         * findvar.c (address_from_register): Don't call value_free.
13311         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13312         * dwarf2loc.c (entry_data_value_free_closure)
13313         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13314         (dwarf2_evaluate_loc_desc_full): Update.
13315         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13316         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13317         (~watchpoint, watch_command_1)
13318         (invalidate_bp_value_on_memory_change): Update.
13319         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13320
13321 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13322
13323         PR gdb/23022
13324         * warning.m4: Add -Wno-error=deprecated-register.
13325         * configure: Re-generate.
13326
13327 2018-04-05  Tom Tromey  <tom@tromey.com>
13328
13329         * linespec.h: Remove include of "vec.h".
13330
13331 2018-04-05  Tom Tromey  <tom@tromey.com>
13332
13333         * linespec.c (typep): Remove typedef.
13334         (find_methods, find_superclass_methods): Take a std::vector.
13335         (find_method): Use std::vector.
13336
13337 2018-04-05  Tom Tromey  <tom@tromey.com>
13338
13339         * utils.c (compare_strings): Remove.
13340         * utils.h (compare_strings): Remove.
13341         * objc-lang.h (find_imps): Update.
13342         * objc-lang.c (find_methods): Take a std::vector.
13343         (uniquify_strings, find_imps): Likewise.
13344         * linespec.c (find_methods): Take a std::vector.
13345         (decode_objc): Use std::vector.
13346         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13347         a std::vector.
13348         (find_method, find_function_symbols): Use std::vector.
13349
13350 2018-04-05  Tom Tromey  <tom@tromey.com>
13351
13352         * completer.c (completion_tracker::completion_tracker): Remove
13353         cast.
13354         (completion_tracker::discard_completions): Likewise.
13355         * breakpoint.c (ambiguous_names_p): Remove cast.
13356         * ada-lang.c (_initialize_ada_language): Remove cast.
13357         * utils.h (streq): Update.
13358         (streq_hash): Add new declaration.
13359         * utils.c (streq): Return bool.
13360         (streq_hash): New function.
13361
13362 2018-04-05  Tom Tromey  <tom@tromey.com>
13363
13364         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13365         Remove a string copy.
13366
13367 2018-04-05  Tom Tromey  <tom@tromey.com>
13368
13369         * linespec.c (filter_results): Use std::vector.
13370         (decode_line_2, decode_line_full): Update.
13371
13372 2018-04-05  Tom Tromey  <tom@tromey.com>
13373
13374         * linespec.c (canonical_to_fullform): Return std::string.
13375         (filter_results): Update.
13376         (struct decode_line_2_item): Add constructor.
13377         <fullform, displayform>: Now std::string.
13378         (decode_line_2_compare_items): Now a std::sort comparator.
13379         (decode_line_2): Update.
13380
13381 2018-04-05  Tom Tromey  <tom@tromey.com>
13382
13383         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13384         (unexpected_linespec_error): Update.
13385         (linespec_parse_basic, parse_linespec): Update.
13386
13387 2018-04-05  Tom Tromey  <tom@tromey.com>
13388
13389         * linespec.c (linespec_parse_basic): Reindent.
13390
13391 2018-04-05  Tom Tromey  <tom@tromey.com>
13392
13393         * minsyms.h (iterate_over_minimal_symbols): Update.
13394         * minsyms.c (iterate_over_minimal_symbols): Take a
13395         gdb::function_view.
13396         * linespec.c (struct collect_minsyms): Remove.
13397         (compare_msyms): Now a std::sort comparator.
13398         (add_minsym): Add parameters.
13399         (search_minsyms_for_name): Update.  Use std::vector.
13400
13401 2018-04-03  Tom Tromey  <tom@tromey.com>
13402
13403         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13404         gdb::byte_vector.
13405
13406 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13407
13408         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13409
13410 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13411
13412         PR gdb/16959
13413         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13414         printing static type.
13415
13416 2018-04-01  Tom Tromey  <tom@tromey.com>
13417
13418         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13419         (rs6000_xfer_shared_libraries): Update.
13420
13421 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13422
13423         * common/gdb_vecs.h (char_ptr): Remove.
13424         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13425
13426 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13427
13428         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13429         with std::vector.
13430         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13431
13432 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13433
13434         * tracepoint.h (struct uploaded_tp): Initialize fields.
13435         <actions, step_actions, cmd_strings>: Change type to
13436         std::vector<char *>.
13437         * tracepoint.c (get_uploaded_tp): Allocate with new.
13438         (free_uploaded_tps): Free with delete.
13439         (parse_tracepoint_definition): Adjust to std::vector change.
13440         * breakpoint.c (read_uploaded_action): Likewise.
13441         (create_tracepoint_from_upload): Likewise.
13442         * ctf.c (ctf_write_uploaded_tp): Likewise.
13443         (SET_ARRAY_FIELD): Likewise.
13444         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13445
13446 2018-03-30  Tom Tromey  <tom@tromey.com>
13447
13448         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13449         std::unique_ptr.
13450         (svr4_keep_data_in_core): Update.
13451         (svr4_read_so_list): Update.
13452
13453 2018-03-30  Tom Tromey  <tom@tromey.com>
13454
13455         * windows-nat.c (handle_output_debug_string, handle_exception):
13456         Update.
13457         * target.h (target_read_string): Update.
13458         * target.c (target_read_string): Change "string" to
13459         unique_xmalloc_ptr.
13460         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13461         Update.
13462         * solib-frv.c (frv_current_sos): Update.
13463         * solib-dsbt.c (dsbt_current_sos): Update.
13464         * solib-darwin.c (darwin_current_sos): Update.
13465         * linux-thread-db.c (inferior_has_bug): Update.
13466         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13467         Update.  Remove alloca.
13468         * ada-lang.c (ada_main_name): Update.
13469
13470 2018-03-30  Tom Tromey  <tom@tromey.com>
13471
13472         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13473         (struct dwo_file_deleter): New.
13474         (dwo_file_up): New typedef.
13475         (open_and_init_dwo_file): Use dwo_file_up.
13476         (free_dwo_file_cleanup): Remove.
13477
13478 2018-03-30  Tom Tromey  <tom@tromey.com>
13479
13480         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13481         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13482
13483 2018-03-30  Tom Tromey  <tom@tromey.com>
13484
13485         * dwarf2read.c (class free_cached_comp_units): New class.
13486         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13487         (free_cached_comp_units): Remove function.
13488
13489 2018-03-30  Tom Tromey  <tom@tromey.com>
13490
13491         * utils.h (make_cleanup_unpush_target): Remove.
13492         * inf-ptrace.c (struct target_unpusher): New.
13493         (target_unpush_up) New typedef.
13494         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13495         target_unpush_up.
13496         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13497
13498 2018-03-27  Tom Tromey  <tom@tromey.com>
13499
13500         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13501
13502 2018-03-27  Pedro Alves  <palves@redhat.com>
13503             Tom Tromey  <tom@tromey.com>
13504
13505         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13506         destructor.  Now a class.
13507         (gdb_readline_wrapper_cleanup): Remove function.
13508         (gdb_readline_wrapper): Remove cleanups.
13509
13510 2018-03-27  Tom Tromey  <tom@tromey.com>
13511
13512         * typeprint.h (struct type_print_options) <local_typedefs,
13513         global_typedefs>: Remove "struct" keyword.
13514         (class typedef_hash_table): New class.
13515         (recursively_update_typedef_hash, add_template_parameters)
13516         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13517         (find_typedef_in_hash): Don't declare.
13518         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13519         (typedef_hash_table::recursively_update): Rename from
13520         recursively_update_typedef_hash.  Now a member.
13521         (typedef_hash_table::add_template_parameters): Rename from
13522         add_template_parameters.  Now a member.
13523         (typedef_hash_table::typedef_hash_table): Now a constructor;
13524         rename from create_typedef_hash.
13525         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13526         rename from free_typedef_hash.
13527         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13528         (do_free_global_table): Remove.
13529         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13530         from copy_type_recursive.
13531         (create_global_typedef_table): Remove.
13532         (typedef_hash_table::find_global_typedef): Now a member of
13533         typedef_hash_table.
13534         (typedef_hash_table::find_typedef): Rename from
13535         find_typedef_in_hash; now a member.
13536         (whatis_exp): Update.
13537         * extension.h (struct ext_lang_type_printers): Add constructor and
13538         destructor.
13539         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13540         declare.
13541         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13542         Now a constructor; rename from start_ext_lang_type_printers.
13543         (ext_lang_type_printers): Now a destructor; rename from
13544         free_ext_lang_type_printers.
13545         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13546         Update.
13547         (c_type_print_base_struct_union): Update.  Remove cleanups.
13548
13549 2018-03-27  Tom Tromey  <tom@tromey.com>
13550
13551         * dwarf-index-write.c: Include <cmath>.
13552
13553 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13554
13555         * NEWS: Add entry describing new "set|show varsize-limit" command.
13556         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13557         command.
13558         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13559         "set variable".
13560
13561 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13562
13563         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13564         dwarf-index-write.c
13565         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13566         * dwarf-index-common.c: New file.
13567         * dwarf-index-common.h: New file.
13568         * dwarf-index-write.c: New file.
13569         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13570         (struct dwarf2_section_info): Move from here.
13571         (dwarf2_section_info_def): Likewise.
13572         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13573         (offset_type): Likewise.
13574         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13575         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13576         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13577         (byte_swap): Likewise.
13578         (MAYBE_SWAP): Likewise.
13579         (dwarf2_per_cu_ptr): Likewise.
13580         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13581         (struct tu_stats): Likewise.
13582         (struct dwarf2_per_objfile): Likewise.
13583         (struct dwarf2_per_cu_data): Likewise.
13584         (struct signatured_type): Likewise.
13585         (sig_type_ptr): Likewise.
13586         (DEF_VEC_P (sig_type_ptr)): Likewise.
13587         (INDEX4_SUFFIX): Likewise.
13588         (INDEX5_SUFFIX): Likewise.
13589         (DEBUG_STR_SUFFIX): Likewise.
13590         (dwarf2_read_section): Make non-static.
13591         (mapped_index_string_hash): Move from here.
13592         (dwarf5_djb_hash): Likewise.
13593         (file_write): Likewise.
13594         (class data_buf): Likewise.
13595         (struct symtab_index_entry): Likewise.
13596         (struct mapped_symtab): Likewise.
13597         (find_slot): Likewise.
13598         (hash_expand): Likewise.
13599         (add_index_entry): Likewise.
13600         (uniquify_cu_indices): Likewise.
13601         (class c_str_view): Likewise.
13602         (class c_str_view_hasher): Likewise.
13603         (class vector_hasher): Likewise.
13604         (write_hash_table): Likewise.
13605         (psym_index_map): Likewise.
13606         (struct addrmap_index_data): Likewise.
13607         (add_address_entry): Likewise.
13608         (add_address_entry_worker): Likewise.
13609         (write_address_map): Likewise.
13610         (symbol_kind): Likewise.
13611         (write_psymbols): Likewise.
13612         (struct signatured_type_index_data): Likewise.
13613         (write_one_signatured_type): Likewise.
13614         (recursively_count_psymbols): Likewise.
13615         (recursively_write_psymbols): Likewise.
13616         (class debug_names): Likewise.
13617         (check_dwarf64_offsets): Likewise.
13618         (psyms_seen_size): Likewise.
13619         (write_gdbindex): Likewise.
13620         (write_debug_names): Likewise.
13621         (assert_file_size): Likewise.
13622         (write_psymtabs_to_index): Likewise.
13623         (save_gdb_index_command): Likewise.
13624         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13625         command.
13626         * dwarf2read.h: New file.
13627
13628 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13629
13630         PR gdb/22670
13631         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13632         symbol name if the CU's language stores symbol names in linkage
13633         format.
13634         * language.h (struct language_defn)
13635         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13636         all instances of this struct.
13637
13638 2018-03-26  Tom Tromey  <tom@tromey.com>
13639
13640         * stack.c (backtrace_command_1): Remove verbose code.
13641
13642 2018-03-26  Tom Tromey  <tom@tromey.com>
13643
13644         * python/py-framefilter.c (py_print_type): Don't catch
13645         exceptions.  Return void.
13646         (py_print_value): Likewise.
13647         (py_print_single_arg): Likewise.
13648         (enumerate_args): Don't catch exceptions.
13649         (py_print_args): Likewise.
13650         (py_print_frame): Likewise.
13651         (gdbpy_apply_frame_filter): Catch exceptions here.
13652
13653 2018-03-26  Tom Tromey  <tom@tromey.com>
13654
13655         * stack.c (_initialize_stack): Remove trailing newlines from help
13656         text.  Add "Usage" line to "backtrace" help.
13657
13658 2018-03-26  Tom Tromey  <tom@tromey.com>
13659
13660         PR python/16486:
13661         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13662
13663 2018-03-26  Tom Tromey  <tom@tromey.com>
13664
13665         * python/py-framefilter.c (py_print_single_arg): Return
13666         EXT_LANG_BT_ERROR from catch.
13667
13668 2018-03-26  Tom Tromey  <tom@tromey.com>
13669
13670         PR backtrace/15584:
13671         * stack.c (backtrace_command_1): Move some code into no-filters
13672         "if".
13673
13674 2018-03-26  Tom Tromey  <tom@tromey.com>
13675
13676         * python/py-framefilter.c (throw_quit_or_print_exception): New
13677         function.
13678         (gdbpy_apply_frame_filter): Use it.
13679
13680 2018-03-26  Tom Tromey  <tom@tromey.com>
13681
13682         PR cli/17716:
13683         * python/py-framefilter.c (py_print_type, py_print_value)
13684         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13685         RETURN_MASK_ERROR.
13686
13687 2018-03-26  Tom Tromey  <tom@tromey.com>
13688
13689         * python/py-framefilter.c (enumerate_args): Use
13690         gdb::unique_xmalloc_ptr.
13691
13692 2018-03-26  Tom Tromey  <tom@tromey.com>
13693
13694         * python/py-framefilter.c (py_print_frame): Return
13695         EXT_LANG_BT_OK.
13696         (gdbpy_apply_frame_filter): Update comment.
13697         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13698         Remove.
13699         <EXT_LANG_BT_NO_FILTERS>: Change value.
13700
13701 2018-03-26  Tom Tromey  <tom@tromey.com>
13702
13703         PR backtrace/15582:
13704         * stack.c (backtrace_command): Parse "hide" argument.
13705         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13706         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13707         constant.
13708
13709 2018-03-26  Tom Tromey  <tom@tromey.com>
13710
13711         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13712         add "flags".
13713         (backtrace_command): Remove "fulltrace", add "flags".
13714
13715 2018-03-26  Tom Tromey  <tom@tromey.com>
13716
13717         * stack.c (backtrace_command): Rewrite command line parsing.
13718
13719 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13720
13721         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13722
13723 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13724
13725         * filename-seen-cache.h: Add include guard.
13726
13727 2018-03-26  Keith Seitz  <keiths@redhat.com>
13728
13729         * symfile.c (place_section): Remove "struct" from section_addr_info
13730         in comment.
13731         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13732         "struct" keyword from section_addr_info.
13733
13734 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13735
13736         * regformats/regdef.h (reg): Add constructors.
13737
13738 2018-03-25  Pedro Alves  <palves@redhat.com>
13739
13740         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13741         if then/else bodies in var_func_name extraction.
13742
13743 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13744
13745         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13746         lookup_minimal_symbol() to find symbol entry.
13747         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13748
13749 2018-03-23  Keith Seitz  <keiths@redhat.com>
13750
13751         PR c++/22968
13752         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13753         nested type definitions for C++, too.
13754
13755 2018-03-23  Tom Tromey  <tom@tromey.com>
13756
13757         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13758         a typedef.
13759         (macho_register_oso): Remove.
13760         (macho_symtab_read): Take a std::vector.
13761         (oso_el_compare_name): Now a std::sort comparator.
13762         (macho_symfile_read_all_oso): Take a std::vector.
13763         (macho_symfile_read): Use std::vector.  Remove cleanups.
13764
13765 2018-03-22  Tom Tromey  <tom@tromey.com>
13766
13767         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13768         (record_full_goto_bookmark): Use std::string.
13769
13770 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13771
13772         PR tdep/18295
13773         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13774         a single mask.
13775
13776 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13777
13778         * rs6000-tdep.c (store_insn_p): New function.
13779         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13780         and cr_reg to their unshifted values. Use store_insn_p to
13781         match LR saves using either R1 or fdata->alloca_reg. Use
13782         store_insn_p to match CR saves. Set alloca_reg_offset
13783         when alloca_reg and framep are set. Remove lr_reg shift
13784         when assigning to fdata->lr_register.
13785
13786 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13787
13788         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13789         command line args instead of emitting a warning.
13790
13791 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13792
13793         * tracepoint.h (struct static_tracepoint_marker): Initialize
13794         fields, define default constructor, move constructor and move
13795         assignment, disable the rest.
13796         <str_id, extra>: Make std::string.
13797         (release_static_tracepoint_marker): Remove.
13798         (free_current_marker): Remove.
13799         * tracepoint.c (free_current_marker): Remove.
13800         (parse_static_tracepoint_marker_definition): Adjust to
13801         std::string, use new hex2str overload.
13802         (release_static_tracepoint_marker): Remove.
13803         (print_one_static_tracepoint_marker): Get marker by reference
13804         and adjust to std::string.
13805         (info_static_tracepoint_markers_command): Adjust to std::vector
13806         changes
13807         * target.h (static_tracepoint_marker_p): Remove typedef.
13808         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13809         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13810         bool.
13811         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13812         * target-debug.h
13813         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13814         (target_debug_print_std_vector_static_tracepoint_marker): New.
13815         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13816         to...
13817         (target_debug_print_static_tracepoint_marker_p): ... this.
13818         * target-delegates.c: Re-generate.
13819         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13820         Make std::string.
13821         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13822         (decode_static_tracepoint_spec): Adjust to std::vector.
13823         (tracepoint_print_one_detail): Adjust to std::string.
13824         (strace_marker_decode_location): Adjust to std::string.
13825         (update_static_tracepoint): Adjust to std::string, remove call
13826         to release_static_tracepoint_marker.
13827         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13828         Adjust to std::vector.
13829         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13830         (remote_static_tracepoint_markers_by_strid): Adjust to
13831         std::vector.
13832         * common/rsp-low.h (hex2str): New overload with explicit count
13833         of bytes.
13834         * common/rsp-low.c (hex2str): New overload with explicit count
13835         of bytes.
13836         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13837         (_initialize_rsp_low_selftests): Add test_hex2str test.
13838         * unittests/tracepoint-selftests.c
13839         (test_parse_static_tracepoint_marker_definition): Adjust to
13840         std::string.
13841
13842 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13843
13844         * tracepoint.c (parse_static_tracepoint_marker_definition):
13845         Consider case where the definition is followed by more
13846         definitions.
13847         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13848         tracepoint-selftests.c.
13849         * unittests/tracepoint-selftests.c: New.
13850
13851 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13852
13853         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13854         Carvalho.
13855
13856 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13857
13858         * symtab.c (find_pc_sect_line): fixed indentation.
13859
13860 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13861
13862         * symtab.c (find_pc_sect_line): now uses binary search.
13863
13864 2018-03-19  Tom Tromey  <tom@tromey.com>
13865
13866         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13867         "IDENT" production.
13868
13869 2018-03-19  Pedro Alves  <palves@redhat.com>
13870             Tom Tromey  <tom@tromey.com>
13871
13872         * unittests/observable-selftests.c: New file.
13873         * common/observable.h: New file.
13874         * observable.h: New file.
13875         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13876         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13877         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13878         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13879         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13880         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13881         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13882         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13883         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13884         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13885         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13886         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13887         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13888         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13889         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13890         tui/tui-interp.c, valops.c: Update all users.
13891         * tui/tui-hooks.c (tui_bp_created_observer)
13892         (tui_bp_deleted_observer, tui_bp_modified_observer)
13893         (tui_inferior_exit_observer, tui_before_prompt_observer)
13894         (tui_normal_stop_observer, tui_register_changed_observer):
13895         Remove.
13896         (tui_observers_token): New global.
13897         (attach_or_detach, tui_attach_detach_observers): New functions.
13898         (tui_install_hooks, tui_remove_hooks): Use
13899         tui_attach_detach_observers.
13900         * record-btrace.c (record_btrace_thread_observer): Remove.
13901         (record_btrace_thread_observer_token): New global.
13902         * observer.sh: Remove.
13903         * observer.c: Rename to observable.c.
13904         * observable.c (namespace gdb_observers): Define new objects.
13905         (observer_debug): Move into gdb_observers namespace.
13906         (struct observer, struct observer_list, xalloc_observer_list_node)
13907         (xfree_observer_list_node, generic_observer_attach)
13908         (generic_observer_detach, generic_observer_notify): Remove.
13909         (_initialize_observer): Update.
13910         Don't include observer.inc.
13911         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13912         (clean mostlyclean): Likewise.
13913         (observer.h, observer.inc): Remove targets.
13914         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13915         (COMMON_SFILES): Use observable.c, not observer.c.
13916         * .gitignore: Remove observer.h.
13917
13918 2018-03-18  Tom Tromey  <tom@tromey.com>
13919
13920         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13921         gdb::def_vector.
13922         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13923
13924 2018-03-17  Tom Tromey  <tom@tromey.com>
13925
13926         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13927
13928 2018-03-17  Tom Tromey  <tom@tromey.com>
13929
13930         * target.c (class scoped_target_fd): New.
13931         (target_fileio_close_cleanup): Remove.
13932         (target_fileio_read_alloc_1): Use scoped_target_fd.
13933
13934 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13935
13936         * silent-rules.mk: New.
13937         * Makefile.in: Include silent-rules.mk
13938         (srcdir, VPATH, top_srcdir): Move up.
13939         (COMPILE): Add ECHO_CXX.
13940         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13941         (init.c): Add ECHO_INIT_C.
13942         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13943         (version.c): Add ECHO_GEN.
13944         (printcmd.o): Add ECHO_CXX.
13945         (target-float.o): Add ECHO_CXX.
13946         (ada-exp.o): Add ECHO_CXX.
13947         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13948         (insight$(EXEEXT)): Add ECHO_CXXLD.
13949         * gnulib/configure.ac: Add AM_SILENT_RULES.
13950         * gnulib/aclocal.m4: Re-generate.
13951         * gnulib/configure: Re-generate.
13952         * gnulib/import/Makefile.in: Re-generate.
13953
13954 2018-03-16  Tom Tromey  <tom@tromey.com>
13955
13956         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13957         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13958         * utils.c (do_free_section_addr_info)
13959         (make_cleanup_free_section_addr_info): Remove.
13960         * symfile.h (struct other_sections): Add constructor.
13961         (struct section_addr_info): Remove.
13962         (section_addr_info): New typedef.
13963         (struct sym_fns) <sym_offsets>: Change type of parameter.
13964         (build_section_addr_info_from_objfile)
13965         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13966         (default_symfile_offsets, symbol_file_add)
13967         (symbol_file_add_from_bfd)
13968         (build_section_addr_info_from_section_table): Update.
13969         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13970         * symfile.c (alloc_section_addr_info): Remove.
13971         (build_section_addr_info_from_section_table): Change return type.
13972         Update.
13973         (build_section_addr_info_from_bfd)
13974         (build_section_addr_info_from_objfile): Likewise.
13975         (free_section_addr_info): Remove.
13976         (relative_addr_info_to_section_offsets): Change type of "addrs".
13977         (addrs_section_compar): Now a std::sort comparator.
13978         (addrs_section_sort): Change return type.
13979         (addr_info_make_relative): Change type of "addrs".  Update.
13980         (default_symfile_offsets, syms_from_objfile_1)
13981         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13982         (symbol_file_add_separate): Update.
13983         (symbol_file_add): Change type of "addrs".  Update.
13984         (add_symbol_file_command): Update.  Remove cleanups.
13985         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13986         cleanups.
13987         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13988         * solib.c (solib_read_symbols): Update.
13989         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13990         * machoread.c (macho_symfile_offsets): Update.
13991         * jit.c (jit_bfd_try_read_symtab): Update.
13992
13993 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13994
13995         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13996         unittests/utils-selftests.c.
13997         * unittests/utils-selftests.c: New file.
13998
13999 2018-03-14  Tom Tromey  <tom@tromey.com>
14000
14001         PR cli/14977:
14002         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
14003         for NULL.
14004
14005 2018-03-14  Tom Tromey  <tom@tromey.com>
14006
14007         PR cli/19918:
14008         * printcmd.c (printf_pointer): Allow "-" in format.
14009
14010 2018-03-14  Tom Tromey  <tom@tromey.com>
14011
14012         * printcmd.c (_initialize_printcmd): Add usage to printf.
14013
14014 2018-03-14  Yao Qi  <qiyao@sourceware.org>
14015
14016         * MAINTAINERS: Update my email address.
14017
14018 2018-03-13  Tom Tromey  <tom@tromey.com>
14019
14020         * machoread.c (macho_check_dsym): Change filenamep to a
14021         std::string*.
14022         (macho_symfile_read): Update.
14023         * symfile.c (load_command): Use std::string.
14024
14025 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14026
14027         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
14028         to error message string.
14029         (riscv_register_name): Use xsnprintf instead of sprintf.
14030         (riscv_insn::fetch_instruction): Use gdb_assert instead of
14031         internal_error.
14032         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
14033         error.
14034         (riscv_push_dummy_call): Likewise.
14035
14036 2018-03-12  Tom Tromey  <tom@tromey.com>
14037
14038         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
14039         Use gdb::byte_vector.
14040         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
14041
14042 2018-03-12  Yao Qi  <yao.qi@linaro.org>
14043
14044         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
14045         parameter type to readable_regcache.
14046         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
14047         the declaration.
14048
14049 2018-03-11  Tom Tromey  <tom@tromey.com>
14050
14051         * dwarf2read.c (struct nextfield): Add initializers.
14052         (struct nextfnfield): Remove.
14053         (struct fnfieldlist): Add initializers.  Remove "length" and
14054         "head", use std::vector.
14055         (struct decl_field_list): Remove.
14056         (struct field_info): Add initializers.
14057         <fields, baseclasses>: Now std::vector.
14058         <nbaseclasses, nfnfields, typedef_field_list_count,
14059         nested_types_list_count>: Remove.
14060         (dwarf2_add_field, dwarf2_add_type_defn)
14061         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
14062         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
14063         (process_structure_scope): Update.
14064
14065 2018-03-11  Tom Tromey  <tom@tromey.com>
14066
14067         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
14068         for use by std::sort.
14069         (build_type_psymtabs_1): Use std::vector.
14070
14071 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
14072
14073         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
14074         and LIBMPFR in the printed configuration.
14075
14076 2018-03-08  Tom Tromey  <tom@tromey.com>
14077
14078         * source.c (get_filename_and_charpos): Use scoped_fd.
14079         * nto-procfs.c (procfs_open_1): Use scoped_fd.
14080         (procfs_pidlist): Likewise.
14081         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
14082         (iterate_over_mappings): Likewise.
14083
14084 2018-03-08  Tom Tromey  <tom@tromey.com>
14085
14086         * infcall.c (struct call_return_meta_info)
14087         <stack_temporaries_enabled>: Remove.
14088         (get_call_return_value, call_function_by_hand_dummy): Update.
14089         * thread.c (disable_thread_stack_temporaries): Remove.
14090         (enable_thread_stack_temporaries): Remove.
14091         (thread_stack_temporaries_enabled_p): Return bool.
14092         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
14093         (get_last_thread_stack_temporary): Update.
14094         * eval.c (evaluate_subexp): Update.
14095         * gdbthread.h (class enable_thread_stack_temporaries): Now a
14096         class, not a function.
14097         (value_ptr, value_vec): Remove typedefs.
14098         (class thread_info) <stack_temporaries_enabled>: Now bool.
14099         <stack_temporaries>: Now a std::vector.
14100         (thread_stack_temporaries_enabled_p)
14101         (value_in_thread_stack_temporaries): Return bool.
14102
14103 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
14104
14105         * remote.c (putpkt_binary): Fix omitted bytes reporting.
14106         (getpkt_or_notif_sane_1): Likewise.
14107
14108 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14109
14110         * build-id.c (build_id_to_debug_bfd): Use std::string.
14111
14112 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14113
14114         * build-id.c (find_separate_debug_file_by_buildid): Return
14115         std::string.
14116         * build-id.h (find_separate_debug_file_by_buildid): Return
14117         std::string.
14118         * coffread.c (coff_symfile_read): Adjust to std::string.
14119         * elfread.c (elf_symfile_read): Adjust to std::string.
14120         * symfile.c (separate_debug_file_exists): Change parameter to
14121         std::string.
14122         (find_separate_debug_file): Return std::string.
14123         (find_separate_debug_file_by_debuglink): Return std::string.
14124         * symfile.h (find_separate_debug_file_by_debuglink): Return
14125         std::string.
14126
14127 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14128
14129         * common/xml-utils.c (xml_escape_text): Move code to...
14130         (xml_escape_text_append): ... this new function.
14131         * common/xml-utils.h (xml_escape_text_append): New declaration.
14132         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14133         New function.
14134         (_initialize_xml_utils): register test_xml_escape_text_append as
14135         a selftest.
14136
14137 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14138
14139         * defs.h: Remove MAX_REGISTER_SIZE.
14140         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14141         asserts.
14142         * python/py-unwind.c (pyuw_sniffer): Likewise.
14143
14144 2018-03-07  Tom Tromey  <tom@tromey.com>
14145
14146         * linux-tdep.c (linux_info_proc): Update.
14147         * target.h (struct target_ops) <to_fileio_readlink>: Return
14148         optional<string>.
14149         (target_fileio_readlink): Return optional<string>.
14150         * remote.c (remote_hostio_readlink): Return optional<string>.
14151         * inf-child.c (inf_child_fileio_readlink): Return
14152         optional<string>.
14153         * target.c (target_fileio_readlink): Return optional<string>.
14154
14155 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14156
14157         * regcache.c (cooked_read_test): Add riscv to the list of
14158         architectures that have a save_reggroup.
14159
14160 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14161
14162         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14163         value is not a dynamic class object.
14164
14165 2018-03-06  Tom Tromey  <tom@tromey.com>
14166
14167         * rust-exp.y: Formatting fixes.
14168
14169 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14170
14171         * riscv-tdep.c (riscv_register_name): Remove target description
14172         support.
14173         (riscv_gdbarch_init): Remove target description check.
14174
14175 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14176
14177         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14178         comment.
14179         * riscv-tdep.h: Likewise.
14180
14181 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14182
14183         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14184         (riscv_pseudo_register_write): Delete.
14185         (riscv_gdbarch_init): Remove all use of pseudo registers.
14186
14187 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14188
14189         * record-btrace.c (btrace_print_lines): Replace cleanup
14190         parameter with RAII equivalents.
14191         (btrace_insn_history): Replace cleanup with RAII equivalents.
14192         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14193         make_cleanup_ui_out_tuple_begin_end): Remove.
14194         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14195         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14196         make_cleanup_ui_out_list_begin_end): Remove.
14197
14198 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14199
14200         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14201         parameter types to std::vector.  Use bool.
14202         (record_btrace_wait): Replace VEC(tp_t) with
14203         std::vector<thread_info *>.
14204         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14205
14206 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14207
14208         * record-btrace.c (record_btrace_disable_callback): Remove.
14209         (struct scoped_btrace_disable): New.
14210         (record_btrace_open): Use scoped_btrace_disable.
14211
14212 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14213
14214         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14215         reading values from registers.
14216
14217 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14218
14219         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14220         where appropriate.
14221
14222 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14223
14224         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14225         change parameter type.  Use GDB's print functions, and use
14226         core_addr_to_string where appropriate.
14227         (riscv_push_dummy_call): Use core_addr_to_string where
14228         appropriate, update call to riscv_print_arg_location, and reindent
14229         a few lines.
14230         (riscv_return_value): Update call to riscv_print_arg_location.
14231
14232 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14233             Tim Newsome <tim@sifive.com>
14234             Albert Ou <a0u@eecs.berkeley.edu>
14235             Darius Rad <darius@bluespec.com>
14236
14237         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14238         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14239         (ALLDEPFILES): Add riscv-tdep.c
14240         * configure.tgt: Add riscv support.
14241         * riscv-tdep.c: New file.
14242         * riscv-tdep.h: New file.
14243         * NEWS: Mention new target.
14244         * MAINTAINERS: Add entry for riscv.
14245
14246 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14247
14248         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14249         fields within aggregates.
14250
14251 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14252
14253         * record-btrace.c (btrace_print_lines): Change type of flags to
14254         gdb_disassembly_flags.
14255
14256 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14257
14258         * fbsd-nat.c: Include "inf-ptrace.h".
14259         (USE_SIGTRAP_SIGINFO): Conditionally define.
14260         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14261         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14262         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14263         function.
14264         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14265         Likewise.
14266         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14267         Likewise.
14268         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14269         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14270         "supports_stopped_by_hw_breakpoint" target methods.
14271
14272 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14273
14274         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14275         * fbsd-nat.c (debug_fbsd_nat): New variable.
14276         (show_fbsd_nat_debug): New function.
14277         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14278         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14279
14280 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14281
14282         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14283         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14284         prototype.
14285         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14286         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14287         method.
14288
14289 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14290
14291         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14292         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14293
14294 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14295
14296         * charset.c (struct charset_vector): New.
14297         (charsets): Change type to charset_vector.
14298         (find_charset_names): Adjust.
14299         (add_one): Adjust.
14300         (_initialize_charset): Adjust.
14301
14302 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14303
14304         * progspace.h (struct program_space) <deleted_solibs>: Change
14305         type to std::vector<std::string>.
14306         * progspace.c (clear_program_space_solib_cache): Adjust.
14307         * breakpoint.c (print_solib_event): Adjust.
14308         (check_status_catch_solib): Adjust.
14309         * solib.c (update_solib_list): Adjust.
14310         * ui-out.h (class ui_out) <field_string>: New overload.
14311         * ui-out.c (ui_out::field_string): New overload.
14312
14313 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14314
14315         * progspace.h (struct program_space): Add constructor and
14316         destructor, initialize fields.
14317         (add_program_space): Remove.
14318         * progspace.c (add_program_space): Rename to...
14319         (program_space::program_space): ... this.
14320         (release_program_space): Rename to...
14321         (program_space::~program_space): ... this.
14322         (delete_program_space): Use delete to delete program_space.
14323         (initialize_progspace): Use new to allocate program_space.
14324         * inferior.c (add_inferior_with_spaces): Likewise.
14325         (clone_inferior_command): Likewise.
14326         * infrun.c (follow_fork_inferior): Likewise.
14327         (handle_vfork_child_exec_or_exit): Likewise.
14328
14329 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14330
14331         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14332         (delim_string_to_char_ptr_vec): Return std::vector of
14333         gdb::unique_xmalloc_ptr.
14334         (dirnames_to_char_ptr_vec_append): Take std::vector of
14335         gdb::unique_xmalloc_ptr.
14336         (dirnames_to_char_ptr_vec): Return std::vector of
14337         gdb::unique_xmalloc_ptr.
14338         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14339         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14340         (delim_string_to_char_ptr_vec): Return an std::vector of
14341         gdb::unique_xmalloc_ptr, adjust the code.
14342         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14343         gdb::unique_xmalloc_ptr, adjust the code.
14344         (dirnames_to_char_ptr_vec): Return an std::vector of
14345         gdb::unique_xmalloc_ptr, adjust the code.
14346         * auto-load.c (auto_load_safe_path_vec): Change type to
14347         std::vector of gdb::unique_xmalloc_ptr.
14348         (auto_load_expand_dir_vars): Return an std::vector of
14349         gdb::unique_xmalloc_ptr, adjust the code.
14350         (auto_load_safe_path_vec_update): Adjust.
14351         (filename_is_in_auto_load_safe_path_vec): Adjust.
14352         (auto_load_objfile_script_1): Adjust.
14353         * build-id.c (build_id_to_debug_bfd): Adjust.
14354         * linux-thread-db.c (thread_db_load_search): Adjust.
14355         * source.c (add_path): Adjust.
14356         (openp): Adjust.
14357         * symfile.c (find_separate_debug_file): Adjust.
14358         * utils.c (do_free_char_ptr_vec): Remove.
14359         (make_cleanup_free_char_ptr_vec): Remove.
14360
14361 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14362
14363         PR gdb/22907
14364         * common/pathstuff.c: Conditionally include "<windows.h>".
14365
14366 2018-03-01  Georg Sauthoff  <mail@georg.so>
14367
14368         PR gdb/22888
14369         * gcore.in: Quote variables and switch interpreter to bash.
14370
14371 2018-03-01  Tom Tromey  <tom@tromey.com>
14372
14373         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14374         assertion.  Add assertion for discriminant_index.
14375         (quirk_rust_enum): Use correct base type name in univariant case.
14376
14377 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14378
14379         * record.c (get_call_history_modifiers): Return a
14380         record_print_flags.
14381         (cmd_record_call_history): Adjust.
14382         * record-btrace.c (record_btrace_call_history): Adjust.
14383         (record_btrace_call_history_range): Adjust.
14384         (record_btrace_call_history_from): Adjust.
14385         * target-debug.h (target_debug_print_record_print_flags): New.
14386         * target-delegates.c: Re-generate.
14387         * target.c (target_call_history): Change flags type.
14388         (target_call_history_from): Likewise.
14389         (target_call_history_range): Likewise.
14390         * target.h (struct target_ops) <target_call_history>: Likewise.
14391         (target_call_history_from): Likewise.
14392         (target_call_history_range): Likewise.
14393
14394 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14395             Simon Marchi  <simon.marchi@polymtl.ca>
14396
14397         * common/common-utils.c: Include "sys/stat.h".
14398         (is_regular_file): Move here from "source.c"; change return
14399         type to "bool".
14400         * common/common-utils.h (is_regular_file): New prototype.
14401         * common/pathstuff.c (contains_dir_separator): New function.
14402         * common/pathstuff.h (contains_dir_separator): New prototype.
14403         * source.c: Don't include "sys/stat.h".
14404         (is_regular_file): Move to "common/common-utils.c".
14405
14406 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14407
14408         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14409         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14410         * auto-load.c: Include "common/pathstuff.h".
14411         * common/common-def.h (current_directory): Move here.
14412         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14413         function.
14414         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14415         prototype.
14416         * common/pathstuff.c: New file.
14417         * common/pathstuff.h: New file.
14418         * compile/compile.c: Include "common/pathstuff.h".
14419         * defs.h (current_directory): Move to "common/common-defs.h".
14420         * dwarf2read.c: Include "common/pathstuff.h".
14421         * exec.c: Likewise.
14422         * guile/scm-safe-call.c: Likewise.
14423         * linux-thread-db.c: Likewise.
14424         * main.c: Likewise.
14425         * nto-tdep.c: Likewise.
14426         * objfiles.c: Likewise.
14427         * source.c: Likewise.
14428         * symtab.c: Likewise.
14429         * utils.c: Include "common/pathstuff.h".
14430         (gdb_realpath): Move to "common/pathstuff.c".
14431         (gdb_realpath_keepfile): Likewise.
14432         (gdb_abspath): Likewise.
14433         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14434         (gdb_realpath_keepfile): Likewise.
14435         (gdb_abspath): Likewise.
14436
14437 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14438
14439         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14440         wildcard process pid for super_resume for kernels with a
14441         specific bug.
14442
14443 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14444
14445         * compile/compile.c (get_args): Add additional comments
14446         explaining function.
14447
14448 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14449             Tom Tromey  <tom@tromey.com>
14450
14451         * target.h (memory_write_request_s): Remove typedef.  Don't define
14452         VEC.
14453         (target_write_memory_blocks): Change argument to std::vector.
14454         (struct memory_write_request): Add constructor.
14455         * target-memory.c (compare_block_starting_address): Return bool.
14456         Change argument types.
14457         (claim_memory): Change arguments to use std::vector.
14458         (split_regular_and_flash_blocks, blocks_to_erase)
14459         (compute_garbled_blocks): Likewise.
14460         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14461         (target_write_memory_blocks): Change argument to std::vector.
14462         * symfile.c (struct load_section_data): Add constructor and
14463         destructor.  Use std::vector for "requests".
14464         (struct load_progress_data): Add initializers.
14465         (load_section_callback): Update.  Use "new".
14466         (clear_memory_write_data): Remove.
14467         (generic_load): Update.
14468
14469 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14470
14471         * arch/aarch64.h: Use common/tdesc.h.
14472
14473 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14474
14475         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14476         architecture with a 64-bit ABI.
14477
14478 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14479
14480         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14481         ahead of target description loading.
14482
14483 2018-02-26  Tom Tromey  <tom@tromey.com>
14484
14485         * stack.c (backtrace_command_1): Update.
14486         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14487         of "flags".
14488         * python/py-framefilter.c (py_print_frame)
14489         (gdbpy_apply_frame_filter): Change type of "flags".
14490         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14491         of "flags".
14492         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14493         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14494         * extension.h (enum frame_filter_flag): Rename from
14495         frame_filter_flags.
14496         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14497         (apply_ext_lang_frame_filter): Change type of "flags".
14498         * extension.c (apply_ext_lang_frame_filter): Change type of
14499         "flags".
14500         * extension-priv.h (struct extension_language_ops)
14501         <apply_frame_filter>: Change type of "flags".
14502
14503 2018-02-26  Tom Tromey  <tom@tromey.com>
14504
14505         PR python/16497:
14506         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14507         off-by-one in py_end computation.
14508         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14509         PRINT_MORE_FRAMES.
14510         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14511         constant.
14512
14513 2018-02-26  Tom Tromey  <tom@tromey.com>
14514
14515         * dwarf2read.c (struct variant_field): New.
14516         (struct nextfield) <variant>: New field.
14517         (dwarf2_add_field): Handle DW_TAG_variant_part.
14518         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14519         discriminated union.
14520         (read_structure_type): Handle DW_TAG_variant_part.
14521         (handle_struct_member_die): New function, extracted from
14522         process_structure_scope.  Handle DW_TAG_variant.
14523         (process_structure_scope): Handle discriminated unions.  Call
14524         handle_struct_member_die.
14525
14526 2018-02-26  Tom Tromey  <tom@tromey.com>
14527
14528         * rust-lang.h (rust_last_path_segment): Declare.
14529         * rust-lang.c (rust_last_path_segment): Now public.  Change
14530         contract.
14531         (struct disr_info): Remove.
14532         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14533         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14534         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14535         (rust_enum_p, rust_enum_variant): New function.
14536         (rust_underscore_fields): Remove "offset" parameter.
14537         (rust_print_enum): New function.
14538         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14539         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14540         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14541         enums.
14542         (rust_internal_print_type): New function, from rust_print_type.
14543         Remove enum code.
14544         (rust_print_type): Call rust_internal_print_type.
14545         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14546         Update enum handling.
14547         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14548         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14549         (rust_union_quirks): New functions.
14550         (process_full_comp_unit, process_full_type_unit): Call
14551         rust_union_quirks.
14552         (process_structure_scope): Update rust_unions if necessary.
14553
14554 2018-02-26  Tom Tromey  <tom@tromey.com>
14555
14556         * value.h (value_union_variant): Declare.
14557         * valops.c (value_union_variant): New function.
14558         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14559         (struct discriminant_info): New.
14560         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14561         enumerator.
14562         (struct main_type) <flag_discriminated_union>: New field.
14563
14564 2018-02-26  Tom Tromey  <tom@tromey.com>
14565
14566         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14567         unittests/unpack-selftests.c.
14568         * unittests/unpack-selftests.c: New file.
14569         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14570
14571 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14572
14573         * dwarf2read.c (struct partial_die_info) <read>: New method.
14574         (read_partial_die): Remove the declaration.
14575         (load_partial_dies): Update.
14576         (partial_die_info::partial_die_info):
14577         (read_partial_die): Change it to partial_die_info::read.
14578
14579 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14580
14581         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14582         (fixup_partial_die): Remove declaration.
14583         (scan_partial_symbols): Update.
14584         (partial_die_parent_scope): Likewise.
14585         (partial_die_full_name): Likewise.
14586         (fixup_partial_die): Change it to partial_die_info::fixup.
14587
14588 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14589
14590         * dwarf2read.c (read_partial_die): Update the declaration.
14591         (load_partial_dies): Caller update.
14592         (read_partial_die): Remove one argument abbrev_len.
14593
14594 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14595
14596         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14597         assignment operator.
14598         (load_partial_dies): Use ctor and copy ctor.
14599         (read_partial_die): Update.
14600         (dwarf2_cu::find_partial_die): Use ctor.
14601
14602 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14603
14604         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14605         (find_partial_die_in_comp_unit): Change it to
14606         dwarf2_cu::find_partial_die.
14607         (find_partial_die): Update.
14608
14609 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14610
14611         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14612         is NULL.
14613
14614 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14615
14616         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14617
14618 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14619
14620         * arch/amd64.h: Use common/tdesc.h.
14621         * arch/i386.c: Likewise.
14622         * arch/i386.h: Likewise.
14623         * arch/tic6x.c: Likewise.
14624         * arch/tdesc.h: Move file from here...
14625         * common/tdesc.h: ...to here.
14626         * features/aarch64-core.c: Regenerate.
14627         * features/aarch64-fpu.c: Regenerate.
14628         * features/i386/32bit-avx.c: Regenerate.
14629         * features/i386/32bit-avx512.c: Regenerate.
14630         * features/i386/32bit-core.c: Regenerate.
14631         * features/i386/32bit-linux.c: Regenerate.
14632         * features/i386/32bit-mpx.c: Regenerate.
14633         * features/i386/32bit-pkeys.c: Regenerate.
14634         * features/i386/32bit-sse.c: Regenerate.
14635         * features/i386/64bit-avx.c: Regenerate.
14636         * features/i386/64bit-avx512.c: Regenerate.
14637         * features/i386/64bit-core.c: Regenerate.
14638         * features/i386/64bit-linux.c: Regenerate.
14639         * features/i386/64bit-mpx.c: Regenerate.
14640         * features/i386/64bit-pkeys.c: Regenerate.
14641         * features/i386/64bit-segments.c: Regenerate.
14642         * features/i386/64bit-sse.c: Regenerate.
14643         * features/i386/x32-core.c: Regenerate.
14644         * features/tic6x-c6xp.c: Regenerate.
14645         * features/tic6x-core.c: Regenerate.
14646         * features/tic6x-gp.c: Regenerate.
14647         * target-descriptions.c: Use common/tdesc.h.
14648         * target-descriptions.h: Likewise.
14649
14650 2018-02-24  Tom Tromey  <tom@tromey.com>
14651
14652         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14653         (try_thread_db_load_from_dir, thread_db_load_search): Use
14654         std::string.
14655         (info_auto_load_libthread_db_compare): Return bool.  Change
14656         argument types.
14657         (info_auto_load_libthread_db): Use std::vector, std::string.
14658         Remove cleanups.
14659
14660 2018-02-24  Tom Tromey  <tom@tromey.com>
14661
14662         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14663         std::string.
14664         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14665         std::string*.
14666         * gdbarch.c: Rebuild.
14667         * gdbarch.h: Rebuild.
14668         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14669         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14670         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14671         std::string*.
14672
14673 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14674
14675         * gdbtypes.h (sect_offset): Change type to uint64_t.
14676         (sect_offset_str): New function.
14677         * dwarf2read.c (create_addrmap_from_aranges): Use
14678         sect_offset_str.
14679         (error_check_comp_unit_head): Likewise.
14680         (create_debug_type_hash_table): Likewise.
14681         (read_cutu_die_from_dwo): Likewise.
14682         (init_cutu_and_read_dies): Likewise.
14683         (init_cutu_and_read_dies_no_follow): Likewise.
14684         (process_psymtab_comp_unit_reader): Likewise.
14685         (partial_die_parent_scope): Likewise.
14686         (peek_die_abbrev): Likewise.
14687         (process_queue): Likewise.
14688         (dwarf2_physname): Likewise.
14689         (read_namespace_alias): Likewise.
14690         (read_import_statement): Likewise.
14691         (create_dwo_cu_reader): Likewise.
14692         (create_cus_hash_table): Likewise.
14693         (lookup_dwo_cutu): Likewise.
14694         (inherit_abstract_dies): Likewise.
14695         (read_func_scope): Likewise.
14696         (read_call_site_scope): Likewise.
14697         (dwarf2_add_member_fn): Likewise.
14698         (read_common_block): Likewise.
14699         (read_module_type): Likewise.
14700         (read_typedef): Likewise.
14701         (read_subrange_type): Likewise.
14702         (load_partial_dies): Likewise.
14703         (read_partial_die): Likewise.
14704         (find_partial_die): Likewise.
14705         (read_str_index): Likewise.
14706         (dwarf2_string_attr): Likewise.
14707         (build_error_marker_type): Likewise.
14708         (lookup_die_type): Likewise.
14709         (dump_die_shallow): Likewise.
14710         (follow_die_ref): Likewise.
14711         (dwarf2_fetch_die_loc_sect_off): Likewise.
14712         (dwarf2_fetch_constant_bytes): Likewise.
14713         (follow_die_sig): Likewise.
14714         (get_signatured_type): Likewise.
14715         (get_DW_AT_signature_type): Likewise.
14716         (dwarf2_find_containing_comp_unit): Likewise.
14717         (set_die_type): Likewise.
14718
14719 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14720
14721         * arch/aarch64.c: Include "common-defs.h".
14722         * arch/amd64.c: Likewise.
14723         * arch/i386.c: Likewise.
14724
14725 2018-02-21  Tom Tromey  <tom@tromey.com>
14726
14727         * value.h: (extract_field_op): Update.
14728         * eval.c (extract_field_op): Return a const char *.
14729         * expression.h (parse_expression_for_completion): Update.
14730         * completer.c (complete_expression): Update.
14731         (add_struct_fields): Make fieldname const.
14732         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14733         (mark_completion_tag, parse_exp_in_context_1): Update.
14734         (parse_expression_for_completion): Change "name" to
14735         unique_xmalloc_ptr*.
14736
14737 2018-02-21  Tom Tromey  <tom@tromey.com>
14738
14739         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14740
14741 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14742
14743         * avr-tdep.c (avr_read_pc): Change parameter type to
14744         readable_regcache.
14745         * gdbarch.sh (read_pc): Likewise.
14746         * gdbarch.c: Re-generated.
14747         * gdbarch.h: Re-generated.
14748         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14749         readable_regcache.
14750         * ia64-tdep.c (ia64_read_pc): Likewise.
14751         * mips-tdep.c (mips_read_pc): Likewise.
14752         * spu-tdep.c (spu_read_pc): Likewise.
14753
14754 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14755
14756         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14757         * regcache-dump.c: New file.
14758         * regcache.c: Move register_dump to regcache-dump.c.
14759         (maintenance_print_registers): Likewise.
14760         (maintenance_print_raw_registers): Likewise.
14761         (maintenance_print_cooked_registers): Likewise.
14762         (maintenance_print_register_groups): Likewise.
14763         (maintenance_print_remote_registers): Likewise.
14764         (_initialize_regcache): Likewise.
14765         * regcache.h (register_dump): Moved from regcache.c.
14766
14767 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14768
14769         * regcache.c (regcache::regcache): Update.
14770         (regcache::invalidate): Move it to detached_regcache::invalidate.
14771         (get_thread_arch_aspace_regcache): Update.
14772         (regcache::raw_update): Update.
14773         (regcache::cooked_read): Remove some code.
14774         (regcache::cooked_read_value): Likewise.
14775         (regcache::raw_write): Remove assert on m_readonly_p.
14776         (regcache::raw_supply_integer): Move it to
14777         detached_regcache::raw_supply_integer.
14778         (regcache::raw_supply_zeroed): Likewise.
14779         * regcache.h (detached_regcache) <raw_supply_integer>: New
14780         declaration.
14781         <raw_supply_zeroed, invalidate>: Likewise.
14782         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14783         <invalidate>: Likewise.
14784         <m_readonly_p>: Removed.
14785
14786 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14787
14788         * infcmd.c (get_return_value): Let stop_regs point to
14789         get_current_regcache.
14790         * regcache.c (regcache::regcache): Remove.
14791         (register_dump_reg_buffer): New class.
14792         (regcache_print): Adjust.
14793         * regcache.h (regcache): Remove constructors.
14794
14795 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14796
14797         * regcache.c (class register_dump): New class.
14798         (register_dump_regcache, register_dump_none): New class.
14799         (register_dump_remote, register_dump_groups): New class.
14800         (regcache_print): Update.
14801         * regcache.h (regcache_dump_what): Move it to regcache.c.
14802         (regcache) <dump>: Remove.
14803
14804 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14805
14806         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14807          reg_buffer_rw *.
14808         (jit_unwind_reg_set_impl): Call raw_supply.
14809         (jit_frame_sniffer): Use reg_buffer_rw.
14810         * record-full.c (record_full_core_regbuf): Change its type.
14811         (record_full_core_open_1): Use reg_buffer_rw.
14812         (record_full_close): Likewise.
14813         (record_full_core_fetch_registers): Use regcache->raw_supply.
14814         (record_full_core_store_registers): Likewise.
14815         * regcache.c (regcache::get_register_status): Move it to
14816         reg_buffer.
14817         (regcache_raw_set_cached_value): Remove.
14818         (regcache::raw_set_cached_value): Remove.
14819         (regcache::raw_write): Call raw_supply.
14820         (regcache::raw_supply): Move it to reg_buffer_rw.
14821         * regcache.h (regcache_raw_set_cached_value): Remove.
14822         (reg_buffer_rw): New class.
14823
14824 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14825
14826         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14827         readonly_detached_regcache.
14828         (dummy_frame_prev_register): Use regcache->cooked_read.
14829         * frame.c (frame_save_as_regcache): Change return type.
14830         (frame_pop): Update.
14831         * frame.h (frame_save_as_regcache): Update declaration.
14832         * inferior.h (get_infcall_suspend_state_regcache): Update
14833         declaration.
14834         * infrun.c (infcall_suspend_state) <registers>: use
14835         readonly_detached_regcache.
14836         (save_infcall_suspend_state): Don't use regcache_dup.
14837         (get_infcall_suspend_state_regcache): Change return type.
14838         * linux-fork.c (struct fork_info) <savedregs>: Change to
14839         readonly_detached_regcache.
14840         <pc>: New field.
14841         (fork_save_infrun_state): Don't use regcache_dup.
14842         (info_checkpoints_command): Adjust.
14843         * mi/mi-main.c (register_changed_p): Update declaration.
14844         (mi_cmd_data_list_changed_registers): Use
14845         readonly_detached_regcache.
14846         (register_changed_p): Change parameter type to
14847         readonly_detached_regcache.
14848         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14849         readonly_detached_regcache.
14850         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14851         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14852         New.
14853         (regcache::save): Move it to reg_buffer.
14854         (regcache::restore): Change parameter type.
14855         (regcache_dup): Remove.
14856         * regcache.h (reg_buffer) <save>: New method.
14857         (readonly_detached_regcache): New class.
14858         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14859         readonly_detached_regcache.
14860         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14861
14862 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14863
14864         * frame.c (frame_save_as_regcache): Use regcache method save.
14865         (frame_pop): Use regcache method restore.
14866         * infrun.c (restore_infcall_suspend_state): Likewise.
14867         * linux-fork.c (fork_load_infrun_state): Likewise.
14868         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14869         save.
14870         * regcache.c (regcache_save): Remove.
14871         (regcache::restore): More asserts.
14872         (regcache_cpy): Remove.
14873         * regcache.h (regcache_save): Remove the declaration.
14874         (regcache::restore): Move from private to public.
14875         Remove the friend declaration of regcache_cpy.
14876         (regcache_cpy): Remove declaration.
14877
14878 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14879
14880         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14881         parameter type to 'readable_regcache *'.
14882         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14883         * arm-tdep.c (arm_neon_quad_read): Likewise.
14884         (arm_pseudo_read): Likewise.
14885         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14886         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14887         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14888         * gdbarch.c: Re-generated.
14889         * gdbarch.h: Re-generated.
14890         * gdbarch.sh (pseudo_register_read): Change parameter type to
14891         'readable_regcache *'.
14892         (pseudo_register_read_value): Likewise.
14893         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14894         (h8300_pseudo_register_read): Likewise.
14895         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14896         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14897         (i386_pseudo_register_read_into_value): Likewise.
14898         (i386_pseudo_register_read_value): Likewise.
14899         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14900         declaration.
14901         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14902         * m32c-tdep.c (m32c_raw_read): Likewise.
14903         (m32c_read_flg): Likewise.
14904         (m32c_banked_register): Likewise.
14905         (m32c_banked_read): Likewise.
14906         (m32c_sb_read): Likewise.
14907         (m32c_part_read): Likewise.
14908         (m32c_cat_read): Likewise.
14909         (m32c_r3r2r1r0_read): Likewise.
14910         (m32c_pseudo_register_read): Likewise.
14911         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14912         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14913         (mep_pseudo_cr64_read): Likewise.
14914         (mep_pseudo_register_read): Likewise.
14915         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14916         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14917         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14918         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14919         (regcache::cooked_read): Likewise.
14920         (regcache::cooked_read_value): Likewise.
14921         (regcache_cooked_read_signed):
14922         (regcache::cooked_read): Likewise.
14923         * regcache.h (readable_regcache): New class.
14924         (regcache): Inherit readable_regcache.  Move some methods to
14925         readable_regcache.
14926         * rl78-tdep.c (rl78_pseudo_register_read): Change
14927         parameter type to 'readable_regcache *'.
14928         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14929         (e500_pseudo_register_read): Change parameter type to
14930         'readable_regcache *'.
14931         (dfp_pseudo_register_read): Likewise.
14932         (vsx_pseudo_register_read): Likewise.
14933         (efpr_pseudo_register_read): Likewise.
14934         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14935         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14936         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14937         (sh64_pseudo_register_read): Likewise.
14938         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14939         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14940         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14941         (spu_pseudo_register_read): Likewise.
14942         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14943         (xtensa_pseudo_register_read): Likewise.
14944
14945 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14946
14947         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14948         (regcache::arch): Move it to reg_buffer::arch.
14949         (regcache::register_buffer): Likewise.
14950         (regcache::assert_regnum): Likewise.
14951         (regcache::num_raw_registers): Likewise.
14952         * regcache.h (reg_buffer): New class.
14953         (regcache): Inherit reg_buffer.
14954
14955 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14956
14957         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14958         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14959
14960 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14961
14962         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14963
14964 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14965
14966         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14967         (SFILES): Remove common/*.c files.
14968         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14969         * common/common.host: Add common reference.
14970         * configure.ac: Likewise.
14971         * configure: Regenerate.
14972
14973 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14974
14975         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14976         (block_initialize_namespace): Use new.
14977         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14978         (dwarf2_free_objfile): Use delete.
14979         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14980         (copy_type_recursive): Use new.
14981         * gdb_obstack.h (allocate_on_obstack): New.
14982
14983 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14984
14985         PR gdb/22849
14986         * inferior.c (exit_inferior_1): Reset inf->control.
14987
14988 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14989
14990         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14991         declaration.
14992
14993 2018-02-14  Pedro Alves  <palves@redhat.com>
14994
14995         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14996         frame_cleanup_after_sniffer on exception.
14997
14998 2018-02-14  Tom Tromey  <tom@tromey.com>
14999
15000         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
15001         const.
15002         (solib_bfd_open): Make pathname const.
15003         * solib.c (solib_bfd_open): Make pathname const.
15004         * solib-spu.c (spu_bfd_fopen): Make name const.
15005         (spu_bfd_open): Make pathname const.
15006         * solib-darwin.c (darwin_bfd_open): Make pathname const.
15007         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
15008
15009 2018-02-14  Tom Tromey  <tom@tromey.com>
15010
15011         * symfile.c (symfile_bfd_open): Update.
15012         * source.h (openp, source_full_path_of, find_and_open_source):
15013         Change argument type to unique_xmalloc_ptr.
15014         * source.c (openp): Take a unique_xmalloc_ptr.
15015         (source_full_path_of, find_and_open_source): Likewise.
15016         (open_source_file, symtab_to_fullname): Update.
15017         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
15018         unique_xmalloc_ptr.
15019         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
15020         (exec_file_find): Update.
15021         * psymtab.c (psymtab_to_fullname): Update.
15022         * nto-tdep.h (nto_find_and_open_solib): Update.
15023         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
15024         unique_xmalloc_ptr.
15025         * exec.c (exec_file_attach): Update.
15026         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
15027         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
15028
15029 2018-02-14  Tom Tromey  <tom@tromey.com>
15030
15031         * solib.c: Include source.h.
15032         * nto-tdep.c: Include source.h.
15033         * mi/mi-cmd-env.c: Include source.h.
15034         * infcmd.c: Include source.h.
15035         * exec.c: Include source.h.
15036         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
15037         (add_path, directory_switch, source_path, init_source_path): Move
15038         declarations...
15039         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
15040         (add_path, directory_switch, source_path, init_source_path):
15041         ...here.
15042
15043 2018-02-14  Tom Tromey  <tom@tromey.com>
15044
15045         * solist.h (exec_file_find, solib_find): Return
15046         unique_xmalloc_ptr.
15047         (solib_bfd_fopen): Take a const char *.
15048         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
15049         (exec_file_find, solib_find): Likewise.
15050         (solib_bfd_fopen): Do not take ownership of "pathname".
15051         (solib_bfd_open): Use unique_xmalloc_ptr.
15052         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
15053         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
15054         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
15055         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
15056
15057 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
15058
15059         * ada-lang.c (name_match_type_from_name): Remove reference to
15060         ada_name_for_lookup in function's documentation.
15061         * ada-lang.h (ada_name_for_lookup): Delete declaration.
15062
15063 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15064
15065         * defs.h (enum openp_flags): New enum.
15066         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
15067         Move to enum openp_flags.
15068         (openp_flags): New enum flags.
15069         (openp): Change parameter type to openp_flags.
15070         * source.c (openp): Change parameter type to openp_flags.
15071         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
15072         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
15073
15074 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
15075
15076         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
15077         per-command.
15078
15079 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
15080
15081         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
15082         into...
15083         (class dwarf2_queue_guard): ...the destructor of this new class.
15084         (dw2_do_instantiate_symtab): Create instance of the new class
15085         dwarf2_queue_guard, remove cleanup.
15086
15087 2018-02-09  Tom Tromey  <tom@tromey.com>
15088
15089         * source.c (find_source_lines): Don't reference past the end of
15090         the vector.
15091
15092 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15093
15094         * remote.c (remote_btrace_maybe_reopen): Change error message.
15095         * btrace.c (btrace_enable): Likewise.
15096         (parse_xml_btrace): Likewise.
15097         (parse_xml_btrace_conf): Likewise.
15098
15099 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15100
15101         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
15102         (linux_enable_pt, linux_enable_bts): Call
15103         diagnose_perf_event_open_fail.
15104
15105 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15106
15107         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
15108         Remove parameter and change return type.  Update callers.  Move it.
15109         (linux_enable_bts, linux_enable_pt): Improve error message.
15110         (linux_enable_pt): Remove zero buffer size check.
15111         (linux_enable_btrace): Improve error messages.  Remove NULL return
15112         check.
15113
15114 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15115
15116         * btrace.c (btrace_enable): Remove target_supports_btrace call.
15117         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15118         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15119         (linux_supports_pt, linux_supports_btrace): Remove.
15120         (linux_enable_bts): Call cpu_supports_bts.
15121         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15122         * remote.c (remote_supports_btrace): Remove.
15123         (init_remote_ops): Remove remote_supports_btrace.
15124         * target-delegates.c: Regenerated.
15125         * target.c (target_supports_btrace): Remove.
15126         * target.h (target_ops) <to_supports_btrace>: Remove
15127         (target_supports_btrace): Remove.
15128         * x86-linux-nat.c (x86_linux_create_target): Remove
15129         linux_supports_btrace.
15130
15131 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15132
15133         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15134         btrace failed.
15135         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15136         exception and use message in own exception.
15137
15138 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15139
15140         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15141         (perf_event_pt_event_type): Use gdb_file_up.
15142         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15143         scoped_fd, and scoped_mmap.
15144
15145 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15146
15147         * common/scoped_mmap.h: New.
15148         * unittests/scoped_mmap-selftest.c: New.
15149         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15150         unittests/scoped_mmap-selftest.c.
15151
15152 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15153
15154         * common/scoped_fd.h: New.
15155         * unittests/scoped_fd-selftest.c: New.
15156         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15157         unittests/scoped_fd-selftest.c.
15158
15159 2018-02-09  Tom Tromey  <tom@tromey.com>
15160
15161         * auto-load.c (auto_load_section_scripts): Use
15162         gdb::unique_xmalloc_ptr.
15163
15164 2018-02-09  Tom Tromey  <tom@tromey.com>
15165
15166         * auto-load.c (execute_script_contents): Use std::string.
15167
15168 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15169
15170         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15171         Python function, rather than a new command.
15172
15173 2018-02-08  Tom Tromey  <tom@tromey.com>
15174
15175         * solib.c (solib_find_1): Use std::string.
15176         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15177
15178 2018-02-08  Tom Tromey  <tom@tromey.com>
15179
15180         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15181
15182 2018-02-08  Tom Tromey  <tom@tromey.com>
15183
15184         * source.c (find_source_lines): Use gdb::def_vector.
15185
15186 2018-02-08  Tom Tromey  <tom@tromey.com>
15187
15188         * macrocmd.c (struct temporary_macro_definition): New.
15189         (macro_define_command): Use temporary_macro_definition.  Remove
15190         cleanups.
15191         (free_macro_definition_ptr): Remove.
15192
15193 2018-02-08  Tom Tromey  <tom@tromey.com>
15194
15195         * macroexp.c (maybe_expand): Use std::string.
15196
15197 2018-02-08  Tom Tromey  <tom@tromey.com>
15198
15199         * macroexp.c (struct macro_buffer): Add initializers for some
15200         members.
15201         (init_buffer, init_shared_buffer, free_buffer)
15202         (free_buffer_return_text): Remove.
15203         (macro_buffer): New constructors.
15204         (~macro_buffer): New destructor.
15205         (macro_buffer::set_shared): New method.
15206         (macro_buffer::resize_buffer, macro_buffer::appendc)
15207         (macro_buffer::appendmem): Now methods, not free functions.
15208         (set_token, append_tokens_without_splicing, stringify)
15209         (macro_stringify): Update.
15210         (gather_arguments): Change return type.  Remove argc_p argument,
15211         add args_ptr argument.  Use std::vector.
15212         (substitute_args): Remove argc argument.  Accept std::vector.
15213         (expand): Update.  Use std::vector.
15214         (scan, macro_expand, macro_expand_next): Update.
15215
15216 2018-02-08  Tom Tromey  <tom@tromey.com>
15217
15218         * symtab.c (default_collect_symbol_completion_matches_break_on):
15219         Use unique_xmalloc_ptr.
15220         * macroscope.h: (sal_macro_scope, user_macro_scope)
15221         (default_macro_scope): Return unique_xmalloc_ptr.
15222         * macroscope.c (sal_macro_scope, user_macro_scope)
15223         (default_macro_scope): Return unique_xmalloc_ptr.
15224         * macroexp.h (macro_expand, macro_expand_once): Return
15225         unique_xmalloc_ptr.
15226         * macroexp.c (macro_expand, macro_expand_once): Return
15227         unique_xmalloc_ptr.
15228         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15229         (info_macro_command, info_macros_command): Use
15230         unique_xmalloc_ptr.
15231         * compile/compile-c-support.c (write_macro_definitions): Use
15232         unique_xmalloc_ptr.
15233         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15234
15235 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15236
15237         * value.c (value_static_field): Assign field type instead of
15238         containing type when returning an optimized out value.
15239
15240 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15241
15242         * ft32-tdep.c (ft32_read_pc): Remove.
15243         (ft32_write_pc): Remove.
15244         (ft32_gdbarch_init): Update.
15245         * m32r-tdep.c (m32r_read_pc): Remove.
15246         (m32r_gdbarch_init): Update.
15247         * mep-tdep.c (mep_read_pc): Remove.
15248         (mep_gdbarch_init): Update.
15249         * microblaze-tdep.c (microblaze_write_pc): Remove.
15250         (microblaze_gdbarch_init): Update.
15251         * mn10300-tdep.c (mn10300_read_pc): Remove.
15252         (mn10300_write_pc): Remove.
15253         (mn10300_gdbarch_init): Update.
15254         * moxie-tdep.c (moxie_read_pc): Remove.
15255         (moxie_write_pc): Remove.
15256         (moxie_gdbarch_init): Update.
15257
15258 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15259
15260         * expprint.c (print_subexp_standard): Handle
15261         OP_F77_UNDETERMINED_ARGLIST.
15262         (dump_subexp_body_standard): Likewise.
15263
15264 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15265
15266         * target-descriptions.c (tdesc_element_visitor) Add empty
15267         implementations.
15268         (tdesc_type): Move make_gdb_type from here.
15269         (tdesc_type_builtin): Likewise.
15270         (tdesc_type_vector): Likewise.
15271         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15272         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15273         (make_gdb_type_union): Likewise.
15274         (make_gdb_type_flags): Likewise.
15275         (make_gdb_type_enum): Likewise.
15276         (make_gdb_type): New function.
15277         (tdesc_register_type): Use static make_gdb_type.
15278
15279 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15280
15281         * infcmd.c (default_print_one_register_info): Align natural-format
15282         column values consistently one under another.
15283         (pad_to_column): New function.
15284
15285 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15286
15287         * dwarf2read.c (dwarf2_physname): Move commment.
15288
15289 2018-02-01  Leszek Swirski  <leszeks@google.com>
15290
15291         * varobj.c (varobj_formatted_print_options): Allow recursive
15292         pretty printing if pretty printing is enabled.
15293
15294 2018-02-01  Leszek Swirski  <leszeks@google.com>
15295
15296         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15297         names after a structop as a filename.
15298
15299 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15300
15301         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15302         (arm_record_coproc_data_proc): Likewise.
15303
15304 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15305
15306         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15307
15308 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15309
15310         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15311         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15312
15313 2018-01-31  Pedro Alves  <palves@redhat.com>
15314
15315         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15316         * inflow.c (child_terminal_save_inferior): Wrap reference to
15317         tcgetpgrp in HAVE_TERMIOS_H.
15318         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15319         _WIN32.
15320         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15321         always iterate over all inferiors.
15322         (gdbsim_cntrl_c): Adjust.
15323         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15324
15325 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15326
15327         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15328         index type is objfile-owned if the element type is as well.
15329
15330 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15331
15332         GDB 8.1 released.
15333
15334 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15335
15336         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15337         "features/s390x-linux64.c".
15338         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15339         s390_linux32 and s390x_linux64.
15340         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15341         default tdesc.
15342         * s390-tdep.c: Include "features/s390-linux32.c" and
15343         "features/s390x-linux64.c".
15344         (s390_tdesc_valid): Add check for tdesc_has_registers.
15345         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15346         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15347         tdesc_s390x_linux64.
15348         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15349         tdesc_s390x_linux64 to...
15350         * s390-tdep.h: ...here.
15351
15352 2018-01-30  Pedro Alves  <palves@redhat.com>
15353
15354         PR gdb/13211
15355         * config.in, configure: Regenerate.
15356         * configure.ac: Check for getpgid.
15357         * go32-nat.c (go32_pass_ctrlc): New.
15358         (go32_target): Install it.
15359         * inf-child.c (inf_child_target): Install
15360         child_terminal_save_inferior, child_pass_ctrlc and
15361         child_interrupt.
15362         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15363         (inf_ptrace_target): No longer install it.
15364         * infcmd.c (interrupt_target_1): Adjust.
15365         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15366         (child_interrupt): Declare.
15367         (inferior::terminal_state): New.
15368         * inflow.c (struct terminal_info): Update comments.
15369         (inferior_process_group): Delete.
15370         (terminal_is_ours): Delete.
15371         (gdb_tty_state): New.
15372         (child_terminal_init): Adjust.
15373         (is_gdb_terminal, sharing_input_terminal_1)
15374         (sharing_input_terminal): New functions.
15375         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15376         Set the process's actual process group in the foreground if
15377         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15378         mark terminal as the inferior's if not sharing GDB's terminal.
15379         Don't check attach_flag.
15380         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15381         pass down a target_terminal_state.
15382         (child_terminal_save_inferior): New, factored out from ...
15383         (child_terminal_ours_1): ... this.  Handle
15384         target_terminal_state::is_ours_for_output.
15385         (child_interrupt, child_pass_ctrlc): New.
15386         (inflow_inferior_exit): Clear the inferior's terminal_state.
15387         (copy_terminal_info): Copy the inferior's terminal state.
15388         (_initialize_inflow): Remove reference to terminal_is_ours.
15389         * inflow.h (inferior_process_group): Delete.
15390         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15391         * procfs.c (procfs_target): Don't install procfs_interrupt.
15392         (procfs_interrupt): Delete.
15393         * remote.c (remote_serial_quit_handler): Adjust.
15394         (remote_interrupt): Remove ptid parameter.  Adjust.
15395         * target-delegates.c: Regenerate.
15396         * target.c: Include "terminal.h".
15397         (target_terminal::terminal_state): Rename to ...
15398         (target_terminal::m_terminal_state): ... this.
15399         (target_terminal::init): Adjust.
15400         (target_terminal::inferior): Adjust to per-inferior
15401         terminal_state.
15402         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15403         (target_terminal::ours, target_terminal::ours_for_output): Use
15404         target_terminal_is_ours_kind.
15405         (target_interrupt): Remove ptid parameter.  Adjust.
15406         (default_target_pass_ctrlc): Adjust.
15407         * target.h (target_ops::to_terminal_save_inferior): New field.
15408         (target_ops::to_interrupt): Remove ptid_t parameter.
15409         (target_interrupt): Remove ptid_t parameter.  Update comment.
15410         (target_pass_ctrlc): Update comment.
15411         * target/target.h (target_terminal_state): New scoped enum,
15412         factored out of ...
15413         (target_terminal::terminal_state): ... here.
15414         (target_terminal::inferior): Update comments.
15415         (target_terminal::restore_inferior): New.
15416         (target_terminal::is_inferior, target_terminal::is_ours)
15417         (target_terminal::is_ours_for_output): Adjust.
15418         (target_terminal::scoped_restore_terminal_state): Adjust to
15419         rename, and call restore_inferior() instead of inferior().
15420         (target_terminal::scoped_restore_terminal_state::m_state): Change
15421         type.
15422         (target_terminal::terminal_state): Rename to ...
15423         (target_terminal::m_terminal_state): ... this and change type.
15424
15425 2018-01-30  Pedro Alves  <palves@redhat.com>
15426
15427         * linux-nat.c (wait_for_signal): New function.
15428         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15429         directly.
15430         (async_terminal_is_ours)
15431         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15432         (linux_nat_add_target): Don't override
15433         to_terminal_inferior/to_terminal_ours.
15434
15435 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15436
15437         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15438
15439 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15440
15441         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15442         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15443         dwarf2_per_objfile_free here.
15444         (dwarf2_per_objfile_free): Remove.
15445         (_initialize_dwarf2_read): Don't register
15446         dwarf2_per_objfile_free as a registry cleanup.
15447
15448 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15449
15450         Avoid compilation errors in MinGW native builds
15451
15452         The error is triggered by including python-internal.h, and the
15453         error message is:
15454
15455              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15456                       from build-gnulib/import/math.h:27,
15457                       from d:/usr/Python26/include/pyport.h:235,
15458                       from d:/usr/Python26/include/Python.h:58,
15459                       from python/python-internal.h:94,
15460                       from python/py-arch.c:24:
15461              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15462         using ::hypot;
15463                 ^~~~~
15464
15465         This happens because Python headers define 'hypot' to expand t
15466         '_hypot' in the Windows builds.
15467         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15468         'hypoth'.  This avoids a compilation error.
15469
15470 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15471
15472         * MAINTAINERS (Write After Approval): Fix ordering.
15473
15474 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15475
15476         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15477
15478 2018-01-26  Alan Modra  <amodra@gmail.com>
15479
15480         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15481         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15482         Remove nop.  Make const.  Comment.
15483         (powerpc32_plt_stub_so_2): New.
15484         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15485         Correct count.  Update uses.
15486         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15487         Move common code reading PLT entry word.  Correct
15488         powerpc32_plt_stub PLT address calculation.
15489         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15490         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15491         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15492         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15493         (ppc64_standard_linkage8): Likewise.
15494         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15495         Correct insns description.
15496         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15497
15498 2018-01-24  Pedro Alves  <palves@redhat.com>
15499
15500         GCC PR libstdc++/83906
15501         * gdbtypes.c (operator==(const dynamic_prop &,
15502         const dynamic_prop &)): New.
15503         (operator==(const range_bounds &, const range_bounds &)): New.
15504         (check_types_equal): Use them instead of memcmp.
15505         * gdbtypes.h (operator==(const dynamic_prop &,
15506         const dynamic_prop &)): Declare.
15507         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15508         (operator==(const range_bounds &, const range_bounds &)): Declare.
15509         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15510
15511 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15512
15513         * s390-linux-tdep.c (s390_record_address_mask)
15514         (s390_record_calc_disp_common, s390_record_calc_disp)
15515         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15516         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15517         (s390_process_record): Move to s390-tdep.c.
15518         (s390_linux_init_abi_any): Adjust.
15519         * s390-tdep.c (s390_record_address_mask)
15520         (s390_record_calc_disp_common, s390_record_calc_disp)
15521         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15522         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15523         (s390_process_record): Moved from s390-linux-tdep.c
15524         (s390_gdbarch_init): Adjust.
15525
15526 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15527
15528         * s390-linux-nat.c (s390-tdep.h): New include.
15529         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15530         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15531         (ALLDEPFILES): Add s390-tdep.c.
15532         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15533         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15534         * s390-tdep.h: ...this.  New file.
15535         * s390-linux-tdep.c (s390-tdep.h): New include.
15536         (_initialize_s390_tdep): Rename to...
15537         (_initialize_s390_linux_tdep): ...this and adjust.
15538         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15539         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15540         s390-tdep.h.
15541         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15542         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15543         (s390_is_partial_instruction, s390_software_single_step)
15544         (is_non_branch_ril, s390_displaced_step_copy_insn)
15545         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15546         (s390_prologue_data, s390_addr, s390_store, s390_load)
15547         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15548         (s390_register_call_saved, s390_guess_tracepoint_registers)
15549         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15550         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15551         (s390_pseudo_register_name, s390_pseudo_register_type)
15552         (s390_pseudo_register_read, s390_pseudo_register_write)
15553         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15554         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15555         (s390_addr_bits_remove, s390_address_class_type_flags)
15556         (s390_address_class_type_flags_to_name)
15557         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15558         (s390_function_arg_float, s390_function_arg_vector)
15559         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15560         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15561         (s390_frame_align, s390_register_return_value, s390_return_value)
15562         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15563         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15564         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15565         (s390_trad_frame_prev_register, s390_unwind_cache)
15566         (s390_prologue_frame_unwind_cache)
15567         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15568         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15569         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15570         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15571         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15572         (s390_frame_base_address, s390_local_base_address)
15573         (s390_frame_base, s390_gcc_target_options)
15574         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15575         (s390_validate_reg_range, s390_tdesc_valid)
15576         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15577         * s390-tdep.c: ...this.  New file.
15578
15579 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15580
15581         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15582         (s390_process_record, s390_gdbarch_tdep_alloc)
15583         (s390_linux_init_abi_any): Use/set new hook.
15584
15585 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15586
15587         * s390-linux-tdep.c (osabi.h): New include.
15588         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15589         (s390_linux_init_abi_any): New functions.
15590         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15591
15592 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15593
15594         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15595         tdesc_has_registers check
15596
15597 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15598
15599         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15600         (s390_validate_reg_range): New macro.
15601         (s390_gdbarch_init): Adjust.
15602
15603 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15604
15605         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15606         (s390_gdbarch_tdep_alloc): Adjust.
15607         (s390_gdbarch_init): Adjust.
15608
15609 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15610
15611         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15612         <have_tdb>: Change type to bool.
15613         (s390_gdbarch_tdep_alloc): Adjust.
15614         (s390_gdbarch_init): Adjust.
15615
15616 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15617
15618         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15619         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15620         (s390_gdbarch_tdep_alloc): New function.
15621         (s390_gdbarch_init): Allocate tdep at start and use its fields
15622         instead of separate variables.
15623
15624 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15625
15626         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15627         when looking for cached gdbarch and add comment for remaining.
15628
15629 2018-01-22  Pedro Alves  <palves@redhat.com>
15630             Sergio Durigan Junior  <sergiodj@redhat.com>
15631
15632         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15633         case.
15634
15635 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15636
15637         * MAINTAINERS: Update my company e-mail address.
15638
15639 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15640
15641         * regcache.c (cooked_write_test): New function.
15642         (_initialize_regcache): Register the test.
15643
15644 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15645
15646         * ia64-tdep.c (ia64_pseudo_register_read): Call
15647         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15648         * m32c-tdep.c (m32c_cat_read): Likewise.
15649         (m32c_r3r2r1r0_read): Likewise.
15650         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15651         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15652
15653 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15654
15655         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15656         method raw_read instead of regcache_raw_read.
15657         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15658         * arm-tdep.c (arm_neon_quad_read): Likewise.
15659         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15660         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15661         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15662         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15663         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15664         (i386_pseudo_register_read_into_value): Likewise.
15665         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15666         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15667         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15668         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15669         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15670         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15671         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15672         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15673         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15674
15675 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15676
15677         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15678         * configure.tgt: Remove target mt.
15679         * mt-tdep.c: Remove.
15680         * regcache.c (cooked_read_test): Remove the check for mt.
15681
15682 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15683
15684         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15685         instead of gdbarch_pseudo_register_read_value.
15686
15687 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15688
15689         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15690         language is Ada.
15691
15692 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15693
15694         * linespec.c (create_sals_line_offset): Remove code that preserved
15695         the symtab_and_line's line number.
15696
15697 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15698
15699         * varobj.c (varobj_create): Don't set valid_block when creating a
15700         floating varobj.
15701
15702 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15703
15704         * varobj.c (varobj_create): Remove out of date comment.
15705
15706 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15707
15708         PR mi/20395
15709         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15710         updating innermost block.
15711         * parse.c (innermost_block_tracker::update): Take extra type
15712         parameter, and check types match before updating innermost block.
15713         (write_dollar_variable): Update innermost block for registers.
15714         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15715         (innermost_block_tracker::innermost_block_tracker): Initialise
15716         m_types member.
15717         (innermost_block_tracker::reset): Take type parameter.
15718         (innermost_block_tracker::update): Take type parameter, and pass
15719         type through as needed.
15720         (innermost_block_tracker::m_types): New member.
15721         * varobj.c (varobj_create): Pass type when reseting innermost
15722         block.
15723
15724 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15725
15726         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15727         * ada-lang.c (resolve_subexp): Likewise.
15728         * breakpoint.c (set_breakpoint_condition) Likewise.
15729         (watch_command_1) Likewise.
15730         * c-exp.y (variable): Likewise.
15731         * d-exp.y (PrimaryExpression): Likewise.
15732         * f-exp.y (variable): Likewise.
15733         * go-exp.y (variable): Likewise.
15734         * m2-exp.y (variable): Likewise.
15735         * objfiles.c (objfile::~objfile): Likewise.
15736         * p-exp.y (variable): Likewise.
15737         * parse.c (innermost_block): Change type.
15738         * parser-defs.h (class innermost_block_tracker): New.
15739         (innermost_block): Change to innermost_block_tracker.
15740         * printcmd.c (display_command): Switch to innermost_block API.
15741         (do_one_display): Likewise.
15742         * rust-exp.y (do_one_display): Likewise.
15743         * symfile.c (clear_symtab_users): Likewise.
15744         * varobj.c (varobj_create): Switch to innermost_block API, replace
15745         use of innermost_block with block stored on varobj object.
15746
15747 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15748
15749         * expression.h (innermost_block): Remove declaration.
15750         * varobj.c: Add 'parser-defs.h' include.
15751
15752 2018-01-19  Tom Tromey  <tom@tromey.com>
15753
15754         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15755         symbols in the static and global blocks.
15756
15757 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15758
15759         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15760         gdb_ptrace.h, and move including gdb_wait.h ...
15761         * nat/linux-ptrace.h: ... to here.
15762
15763 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15764
15765         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15766         inf_ptrace_detach_success.
15767         (inf_ptrace_detach_success): Add inferior parameter, use it
15768         instead of inferior_ptid, pass it to detach_inferior.
15769         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15770         parameter.
15771         * inferior.c (detach_inferior): Add overload that takes an
15772         inferior object.
15773         * inferior.h (detach_inferior): Likewise.
15774         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15775         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15776         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15777
15778 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15779
15780         * target.h (struct target_ops) <to_detach>: Add inferior
15781         parameter.
15782         (target_detach): Likewise.
15783         * target.c (dispose_inferior): Pass inferior down.
15784         (target_detach): Pass inferior down.  Assert that it is equal to
15785         the current inferior.
15786         * aix-thread.c (aix_thread_detach): Pass inferior down.
15787         * corefile.c (core_file_command): Pass current_inferior() down.
15788         * corelow.c (core_detach): Add inferior parameter.
15789         * darwin-nat.c (darwin_detach): Likewise.
15790         * gnu-nat.c (gnu_detach): Likewise.
15791         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15792         * infcmd.c (detach_command): Pass current_inferior() down to
15793         target_detach.
15794         * infrun.c (follow_fork_inferior): Pass parent_inf to
15795         target_detach.
15796         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15797         target_detach.
15798         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15799         * linux-thread-db.c (thread_db_detach): Likewise.
15800         * nto-procfs.c (procfs_detach): Likewise.
15801         * procfs.c (procfs_detach): Likewise.
15802         * record.c (record_detach): Likewise.
15803         * record.h (struct inferior): Forward-declare.
15804         (record_detach): Add inferior parameter.
15805         * remote-sim.c (gdbsim_detach): Likewise.
15806         * remote.c (remote_detach_1): Likewise.
15807         (remote_detach): Likewise.
15808         (extended_remote_detach): Likewise.
15809         * sol-thread.c (sol_thread_detach): Likewise.
15810         * target-debug.h (target_debug_print_inferior_p): New macro.
15811         * target-delegates.c: Re-generate.
15812         * top.c (kill_or_detach): Pass inferior down to target_detach.
15813         * windows-nat.c (windows_detach): Add inferior parameter.
15814
15815 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15816
15817         * target.h (struct target_ops) <to_detach>: Remove args
15818         parameter.
15819         (target_detach): Likewise.
15820         * target.c (dispose_inferior): Adjust.
15821         (target_detach): Remove args parameter, adjust.
15822         * aix-thread.c (aix_thread_detach): Adjust.
15823         * corefile.c (core_file_command): Adjust.
15824         * corelow.c (core_detach): Adjust.
15825         * darwin-nat.c (darwin_detach): Adjust.
15826         * gnu-nat.c (gnu_detach): Adjust.
15827         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15828         * infcmd.c (detach_command): Adjust
15829         * infrun.c (follow_fork_inferior): Adjust.
15830         (handle_vfork_child_exec_or_exit): Adjust.
15831         * linux-fork.c (linux_fork_detach): Remove args parameter.
15832         * linux-fork.h (linux_fork_detach): Likewise.
15833         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15834         * linux-thread-db.c (thread_db_detach): Likewise.
15835         * nto-procfs.c (procfs_detach): Likewise.
15836         * procfs.c (procfs_detach): Likewise.
15837         (do_detach): Remove signo parameter.
15838         * record.c (record_detach): Remove args parameter.
15839         * record.h (record_detach): Likewise.
15840         * remote-sim.c (gdbsim_detach): Likewise.
15841         * remote.c (remote_detach_1): Likewise.
15842         (remote_detach): Likewise.
15843         (extended_remote_detach): Likewise.
15844         * sol-thread.c (sol_thread_detach): Likewise.
15845         * target-delegates.c: Re-generate.
15846         * top.c (struct qt_args) <args>: Remove field.
15847         (kill_or_detach): Don't pass args.
15848         (quit_force): Don't set args.
15849         * windows-nat.c (windows_detach): Remove args parameter.
15850
15851 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15852
15853         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15854         (arm_linux_init_abi): Install it.
15855
15856 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15857
15858         * osabi.c (gdb_osabi_names): Extend the regexp for
15859         arm-linux-gnueabihf.
15860
15861 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15862
15863         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15864         m_abbrevs.
15865         (abbrev_table::add_abbrev): Update.
15866         (abbrev_table::lookup_abbrev): Update.
15867
15868 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15869
15870         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15871
15872 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15873
15874         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15875         to "std::string".
15876
15877 2018-01-17  Tom Tromey  <tom@tromey.com>
15878
15879         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15880
15881 2018-01-17  Tom Tromey  <tom@tromey.com>
15882
15883         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15884         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15885         (create_array_type_with_stride): Update.
15886         * dwarf2read.c (set_die_type): Update.
15887
15888 2018-01-17  Tom Tromey  <tom@tromey.com>
15889
15890         * dwarf2read.c (delayed_method_info): Remove typedef.
15891         (dwarf2_cu::method_info): Now a std::vector.
15892         (add_to_method_list): Update.
15893         (free_delayed_list): Remove.
15894         (compute_delayed_physnames): Update.
15895         (process_full_comp_unit, process_full_type_unit): Clear the method
15896         list.  Remove cleanups.
15897         (psymtab_include_file_name): Add name_holder parameter.  Use
15898         unique_xmalloc_ptr.
15899         (dwarf_decode_lines): Update.
15900
15901 2018-01-17  Tom Tromey  <tom@tromey.com>
15902             Simon Marchi  <simon.marchi@ericsson.com>
15903
15904         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15905         (dwarf2_per_objfile::free_cached_comp_units)
15906         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15907         (init_cutu_and_read_dies_no_follow): Update.
15908         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15909         (dwarf2_cu::~dwarf2_cu): New.
15910         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15911         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15912
15913 2018-01-17  Tom Tromey  <tom@tromey.com>
15914             Simon Marchi  <simon.marchi@ericsson.com>
15915
15916         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15917         (struct die_reader_specs) <abbrev_table>: New member.
15918         (struct abbrev_table): Add constructor.
15919         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15920         <abbrev_obstack>: Now an auto_obstack.
15921         (abbrev_table_up): New typedef.
15922         (init_cu_die_reader): Add abbrev_table parameter.
15923         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15924         Add result_dwo_abbrev_table.
15925         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15926         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15927         Update.
15928         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15929         parameter.
15930         (skip_children): Update.
15931         (abbrev_table::alloc_abbrev): Rename from
15932         abbrev_table_alloc_abbrev.
15933         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15934         (abbrev_table::lookup_abbrev): Rename from
15935         abbrev_table_lookup_abbrev.
15936         (abbrev_table_read_table): Return abbrev_table_up.
15937         (abbrev_table_free, abbrev_table_free_cleanup)
15938         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15939         (load_partial_dies): Update.
15940
15941 2018-01-17  Tom Tromey  <tom@tromey.com>
15942
15943         * dwarf2read.c (dwarf2_compute_name): Update comment.
15944         (read_func_scope, read_variable): Update.
15945         (new_symbol): Remove.
15946         (new_symbol_full): Rename to new_symbol.
15947
15948 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15949
15950         PR gdb/16577
15951         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15952         a warning instead of throwing an error, set section size to 0 and return
15953         NULL.
15954         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15955
15956 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15957
15958         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15959         std::string.
15960         (linux_ptrace_attach_fail_reason_string): Likewise.
15961         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15962         Likewise.
15963         (linux_ptrace_attach_fail_reason_string): Likewise.
15964         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15965
15966 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15967
15968         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15969
15970 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15971
15972         PR gdb/21559
15973         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15974         checking for fs_base/gs_base fields in struct user_regs_struct.
15975         * configure: Regenerate.
15976
15977 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15978
15979         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15980         function.
15981         (aarch64_linux_init_abi): Install it to gdbarch hook
15982         gcc_target_options.
15983
15984 2018-01-15  Pedro Alves  <palves@redhat.com>
15985
15986         * common/signals-state-save-restore.c
15987         (save_original_signals_state): Fix typos.
15988
15989 2017-01-12  Tom Tromey  <tom@tromey.com>
15990             Sergio Durigan Junior  <sergiodj@redhat.com>
15991
15992         * Makefile.in (install-only): Install gdb-add-index.
15993
15994 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15995
15996         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15997
15998 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15999
16000         * infrun.c (keep_going_pass_signal): Clear step-over info when
16001         insert_breakpoints fails.
16002
16003 2018-01-11  Pedro Alves  <palves@redhat.com>
16004
16005         PR gdb/22583
16006         * infrun.c (resume): Rename to ...
16007         (resume_1): ... this.
16008         (resume): Reimplement as wrapper around resume_1.
16009
16010 2018-01-11  Pedro Alves  <palves@redhat.com>
16011
16012         PR remote/22597
16013         * remote.c (remote_parse_stop_reply): Default to the last-set
16014         general thread instead of to 'magic_null_ptid'.
16015
16016 2018-01-10  Pedro Alves  <palves@redhat.com>
16017
16018         * language.h (language_get_symbol_name_matcher): Rename ...
16019         (get_symbol_name_matcher): ... this.
16020         * language.c (language_get_symbol_name_matcher): Ditto.
16021         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
16022         callers adjusted.
16023
16024 2018-01-10  Pedro Alves  <palves@redhat.com>
16025
16026         PR gdb/22670
16027         * dwarf2read.c
16028         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
16029         Adjust to use language_get_symbol_name_matcher instead of
16030         language_defn::la_get_symbol_name_matcher.
16031         * language.c (language_get_symbol_name_matcher): If in Ada mode
16032         and the lookup name is a verbatim match, return Ada's matcher.
16033         * language.h (language_get_symbol_name_matcher): Adjust comment.
16034         (ada_lookup_name_info::verbatim_p):: New method.
16035
16036 2018-01-10  Pedro Alves  <palves@redhat.com>
16037
16038         PR gdb/22670
16039         * ada-lang.c (ada_collect_symbol_completion_matches): If the
16040         minsym's language is language_auto or language_cplus, pass down
16041         language_ada instead.
16042         * symtab.c (compare_symbol_name): Don't frob symbol language here.
16043
16044 2018-01-10  Pedro Alves  <palves@redhat.com>
16045
16046         PR gdb/22670
16047         * minsyms.c (linkage_name_str): New function.
16048         (iterate_over_minimal_symbols): Use it.
16049
16050 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16051
16052         * NEWS: Document that 'info proc' now works on FreeBSD.
16053
16054 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16055
16056         * configure.ac: Check for kinfo_getfile in libutil.
16057         * configure: Regenerate.
16058         * config.in: Regenerate.
16059         * fbsd-nat.c: Include "fbsd-tdep.h".
16060         (fbsd_fetch_cmdline): New.
16061         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
16062         rather than calling error.
16063         (fbsd_info_proc): New.
16064         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
16065         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
16066         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
16067
16068 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16069
16070         * fbsd-nat.c (struct free_deleter): Remove.
16071         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
16072
16073 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16074
16075         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
16076         NULL for an empty pathname.
16077
16078 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
16079
16080         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
16081         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
16082         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
16083         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
16084         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
16085         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
16086         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
16087         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
16088         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
16089         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
16090         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
16091         (fbsd_core_fetch_timeval, fbsd_print_sigset)
16092         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
16093         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
16094         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
16095
16096 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
16097
16098         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
16099         (gnu_xfer_auxv): New function.
16100         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
16101         TARGET_OBJECT_AUXV.
16102
16103 2018-01-08  Yao Qi  <yao.qi@linaro.org>
16104             Simon Marchi  <simon.marchi@ericsson.com>
16105
16106         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
16107         common/selftest.c.
16108         (COMMON_OBS): Remove selftest.o.
16109         * configure.ac: Append selftest-arch.c and common/selftest.c to
16110         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
16111         * configure: Re-generated.
16112         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
16113         GDB_SELF_TEST.
16114         (maintenance_info_selftests): Likewise.
16115
16116 2018-01-08  Xavier Roirand  <roirand@adacore.com>
16117
16118         * ada-valprint.c (val_print_packed_array_elements): Use
16119         proper number of elements when printing an array indexed
16120         by an enumeration type.
16121
16122 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16123
16124         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16125         (dw2_get_file_names_reader): Adjust.
16126         (lookup_dwo_signatured_type): Adjust.
16127         (lookup_dwp_signatured_type): Adjust.
16128         (lookup_signatured_type): Adjust.
16129         (create_type_unit_group): Adjust.
16130         (get_type_unit_group): Adjust.
16131         (process_psymtab_comp_unit_reader): Adjust.
16132         (build_type_psymtabs_reader): Adjust.
16133         (scan_partial_symbols): Adjust.
16134         (add_partial_symbol): Adjust.
16135         (add_partial_subprogram): Adjust.
16136         (peek_die_abbrev): Adjust.
16137         (fixup_go_packaging): Adjust.
16138         (process_imported_unit_die): Adjust.
16139         (dwarf2_compute_name): Adjust.
16140         (dwarf2_physname): Adjust.
16141         (read_import_statement): Adjust.
16142         (handle_DW_AT_stmt_list): Adjust.
16143         (read_file_scope): Adjust.
16144         (read_func_scope): Adjust.
16145         (read_lexical_block_scope): Adjust.
16146         (read_call_site_scope): Adjust.
16147         (read_variable): Adjust.
16148         (dwarf2_rnglists_process): Adjust.
16149         (dwarf2_ranges_process): Adjust.
16150         (dwarf2_ranges_read): Adjust.
16151         (dwarf2_get_pc_bounds): Adjust.
16152         (dwarf2_record_block_ranges): Adjust.
16153         (dwarf2_add_field): Adjust.
16154         (dwarf2_add_member_fn): Adjust.
16155         (read_structure_type): Adjust.
16156         (process_structure_scope): Adjust.
16157         (read_enumeration_type): Adjust.
16158         (read_array_type): Adjust.
16159         (mark_common_block_symbol_computed): Adjust.
16160         (read_common_block): Adjust.
16161         (read_namespace_type): Adjust.
16162         (read_namespace): Adjust.
16163         (read_module_type): Adjust.
16164         (read_tag_pointer_type): Adjust.
16165         (read_tag_ptr_to_member_type): Adjust.
16166         (read_tag_string_type): Adjust.
16167         (read_subroutine_type): Adjust.
16168         (read_typedef): Adjust.
16169         (read_base_type): Adjust.
16170         (attr_to_dynamic_prop): Adjust.
16171         (read_subrange_type): Adjust.
16172         (read_unspecified_type): Adjust.
16173         (dwarf2_read_abbrevs): Adjust.
16174         (load_partial_dies): Adjust.
16175         (read_partial_die): Adjust.
16176         (find_partial_die): Adjust.
16177         (guess_partial_die_structure_name): Adjust.
16178         (fixup_partial_die): Adjust.
16179         (read_attribute_value): Adjust.
16180         (read_addr_index): Adjust.
16181         (read_addr_index_from_leb128): Adjust.
16182         (read_str_index): Adjust.
16183         (dwarf2_string_attr): Adjust.
16184         (get_debug_line_section): Adjust.
16185         (dwarf_decode_line_header): Adjust.
16186         (lnp_state_machine::check_line_address): Adjust.
16187         (dwarf_decode_lines_1): Adjust.
16188         (dwarf_decode_lines): Adjust.
16189         (dwarf2_start_symtab): Adjust.
16190         (var_decode_location): Adjust.
16191         (new_symbol_full): Adjust.
16192         (dwarf2_const_value_data): Adjust.
16193         (dwarf2_const_value_attr): Adjust.
16194         (dwarf2_const_value): Adjust.
16195         (die_type): Adjust.
16196         (die_containing_type): Adjust.
16197         (build_error_marker_type): Adjust.
16198         (lookup_die_type): Adjust.
16199         (guess_full_die_structure_name): Adjust.
16200         (anonymous_struct_prefix): Adjust.
16201         (determine_prefix): Adjust.
16202         (dwarf2_name): Adjust.
16203         (follow_die_ref_or_sig): Adjust.
16204         (follow_die_offset): Adjust.
16205         (follow_die_ref): Adjust.
16206         (follow_die_sig_1): Adjust.
16207         (follow_die_sig): Adjust.
16208         (get_signatured_type): Adjust.
16209         (get_DW_AT_signature_type): Adjust.
16210         (decode_locdesc): Adjust.
16211         (dwarf_decode_macros): Adjust.
16212         (cu_debug_loc_section): Adjust.
16213         (fill_in_loclist_baton): Adjust.
16214         (dwarf2_symbol_mark_computed): Adjust.
16215         (init_one_comp_unit): Don't assign
16216         dwarf2_cu::dwarf2_per_objfile.
16217         (set_die_type): Adjust.
16218
16219 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16220
16221         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16222         <dwarf2_per_objfile>: New field.
16223         (dwarf2_per_objfile): Remove global.
16224         (get_dwarf2_per_objfile): New function.
16225         (set_dwarf2_per_objfile): New function.
16226         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16227         dwarf2_per_objfile.
16228         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16229         (read_abbrev_offset): Likewise.
16230         (read_indirect_string): Likewise.
16231         (read_indirect_line_string): Likewise.
16232         (read_indirect_string_at_offset): Likewise.
16233         (read_indirect_string_from_dwz): Likewise.
16234         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16235         dwarf2_per_objfile.
16236         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16237         (create_all_comp_units): Change objfile parameter to
16238         dwarf2_per_objfile.
16239         (create_all_type_units): Likewise.
16240         (process_queue): Add dwarf2_per_objfile parameter.
16241         (read_and_check_comp_unit_head): Likewise.
16242         (lookup_dwo_unit_in_dwp): Likewise.
16243         (get_dwp_file): Likewise.
16244         (process_cu_includes): Likewise.
16245         (struct free_dwo_file_cleanup_data): New struct.
16246         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16247         set_dwarf2_per_objfile.
16248         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16249         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16250         context, adjust calls.
16251         (dw2_instantiate_symtab): Likewise.
16252         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16253         (dw2_get_cu): Likewise.
16254         (create_cu_from_index_list): Change objfile parameter to
16255         dwarf2_per_objfile.
16256         (create_cus_from_index_list): Get dwarf2_per_objfile from
16257         context, adjust calls.
16258         (create_cus_from_index): Likewise.
16259         (create_signatured_type_table_from_index): Change objfile
16260         parameter to dwarf2_per_objfile.
16261         (create_signatured_type_table_from_debug_names): Change objfile
16262         parameter to dwarf2_per_objfile.
16263         (create_addrmap_from_index): Likewise.
16264         (create_addrmap_from_aranges): Likewise.
16265         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16266         (dw2_setup): Remove.
16267         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16268         context.
16269         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16270         get_dwarf2_per_objfile.
16271         (dw2_forget_cached_source_info): Likewise.
16272         (dw2_map_symtabs_matching_filename): Likewise.
16273         (struct dw2_symtab_iterator) <index>: Remove.
16274         <dwarf2_per_objfile>: New field.
16275         (dw2_symtab_iter_init): Replace index parameter with
16276         dwarf2_per_objfile.
16277         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16278         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16279         (dw2_print_stats): Likewise.
16280         (dw2_dump): Likewise.
16281         (dw2_expand_symtabs_for_function): Likewise.
16282         (dw2_expand_all_symtabs): Likewise.
16283         (dw2_expand_symtabs_with_fullname): Likewise.
16284         (dw2_expand_marked_cus): Replace index and objfile parameters
16285         with dwarf2_per_objfile.
16286         (dw_expand_symtabs_matching_file_matcher): Add
16287         dwarf2_per_objfile parameter and adjust calls.
16288         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16289         adjust calls.
16290         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16291         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16292         adjust calls.
16293         (create_cus_from_debug_names_list): Replace objfile parameter
16294         with dwarf2_per_objfile and adjust calls.
16295         (create_cus_from_debug_names): Likewise.
16296         (dwarf2_read_debug_names): Likewise.
16297         (mapped_debug_names::namei_to_name): Adjust call.
16298         (dw2_debug_names_iterator::next): Likewise.
16299         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16300         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16301         (dw2_debug_names_dump): Likewise.
16302         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16303         (dw2_debug_names_expand_symtabs_matching): Likewise.
16304         (dwarf2_initialize_objfile): Likewise.
16305         (dwarf2_build_psymtabs): Likewise.
16306         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16307         this_cu.
16308         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16309         (read_and_check_comp_unit_head): Likewise.
16310         (read_abbrev_offset): Likewise.
16311         (create_debug_type_hash_table): Likewise.
16312         (create_debug_types_hash_table): Likewise.
16313         (create_all_type_units): Replace objfile parameter with
16314         dwarf2_per_objfile.
16315         (add_type_unit): Add dwarf2_per_objfile parameter.
16316         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16317         with dwarf2_per_objfile.
16318         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16319         (lookup_dwp_signatured_type): Likewise.
16320         (lookup_signatured_type): Likewise.
16321         (read_cutu_die_from_dwo): Likewise.
16322         (init_tu_and_read_dwo_dies): Likewise.
16323         (init_cutu_and_read_dies): Likewise.
16324         (init_cutu_and_read_dies_no_follow): Likewise.
16325         (allocate_type_unit_groups_table): Add objfile parameter.
16326         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16327         (get_type_unit_group): Likewise.
16328         (process_psymtab_comp_unit): Update call.
16329         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16330         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16331         (print_tu_stats): Likewise.
16332         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16333         in void* parameter.
16334         (build_type_psymtabs): Change objfile parameter to
16335         dwarf2_per_objfile.
16336         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16337         passed in void* parameter.
16338         (process_skeletonless_type_units): Change objfile parameter to
16339         dwarf2_per_objfile.
16340         (set_partial_user): Likewise.
16341         (dwarf2_build_psymtabs_hard): Likewise.
16342         (read_comp_units_from_section): Likewise.
16343         (create_all_comp_units): Likewise.
16344         (scan_partial_symbols): Update calls.
16345         (add_partial_symbol): Likewise.
16346         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16347         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16348         (process_queue): Add dwarf2_per_objfile parameter.
16349         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16350         (compute_compunit_symtab_includes): Likewise.
16351         (process_cu_includes): Add dwarf2_per_objfile parameter.
16352         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16353         (process_full_type_unit): Likewise.
16354         (process_imported_unit_die): Update call.
16355         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16356         (read_file_scope): Likewise.
16357         (allocate_dwo_file_hash_table): Add objfile parameter.
16358         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16359         (create_cus_hash_table): Likewise.
16360         (create_dwp_hash_table): Likewise.
16361         (create_dwo_unit_in_dwp_v1): Likewise.
16362         (create_dwp_v2_section): Likewise.
16363         (create_dwo_unit_in_dwp_v2): Likewise.
16364         (lookup_dwo_unit_in_dwp): Likewise.
16365         (try_open_dwop_file): Likewise.
16366         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16367         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16368         cleanup to include a reference to dwarf2_per_objfile.
16369         (open_dwp_file): Add dwarf2_per_objfile parameter.
16370         (open_and_init_dwp_file): Likewise.
16371         (get_dwp_file): Likewise.
16372         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16373         (queue_and_load_all_dwo_tus): Update call.
16374         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16375         data.
16376         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16377         (dwarf2_ranges_process): Likewise.
16378         (dwarf2_get_pc_bounds): Likewise.
16379         (mark_common_block_symbol_computed): Likewise.
16380         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16381         (dwarf2_read_abbrevs): Update call.
16382         (read_partial_die): Use dwarf2_per_objfile from cu.
16383         (find_partial_die): Likewise.
16384         (fixup_partial_die): Likewise.
16385         (read_attribute_value): Likewise.
16386         (read_indirect_string_at_offset_from): Add objfile parameter.
16387         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16388         parameter.
16389         (read_indirect_string_from_dwz): Add objfile parameter.
16390         (read_indirect_string): Add objfile parameter.
16391         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16392         (read_addr_index): Use dwarf2_per_objfile from cu.
16393         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16394         call dw2_setup.
16395         (read_str_index): Use dwarf2_per_objfile from cu.
16396         (get_debug_line_section): Likewise.
16397         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16398         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16399         (new_symbol_full): Use dwarf2_per_objfile from cu.
16400         (build_error_marker_type): Likewise.
16401         (lookup_die_type): Likewise.
16402         (determine_prefix): Likewise.
16403         (follow_die_offset): Likewise.
16404         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16405         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16406         (dwarf2_fetch_die_type_sect_off): Likewise.
16407         (dwarf2_get_die_type): Likewise.
16408         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16409         (get_signatured_type): Likewise.
16410         (get_DW_AT_signature_type): Likewise.
16411         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16412         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16413         (cu_debug_loc_section): Likewise.
16414         (fill_in_loclist_baton): Likewise.
16415         (dwarf2_symbol_mark_computed): Likewise.
16416         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16417         dwarf2_per_objfile.
16418         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16419         parameter.
16420         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16421         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16422         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16423         (set_die_type): Use dwarf2_free_objfile from cu.
16424         (get_die_type_at_offset): Likewise.
16425         (dwarf2_per_objfile_free): Don't assign global variable.
16426         (debug_names) <constructor>: Add dwarf2_per_objfile
16427         parameter, update m_debugstrlookup construction.
16428         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16429         parameter.
16430         <m_dwarf2_per_objfile>: New field.
16431         <lookup>: Use m_dwarf2_per_objfile.
16432         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16433         (psyms_seen_size): Likewise.
16434         (write_gdbindex): Replace objfile parameter with
16435         dwarf2_per_objfile.
16436         (write_debug_names): Likewise.
16437         (write_psymtabs_to_index): Likewise.
16438         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16439         calls.
16440
16441 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16442
16443         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16444         <dwarf2_per_objfile>: New field.
16445         (struct dwarf2_per_cu_data) <objfile>: Remove.
16446         <dwarf2_per_objfile>: New field.
16447         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16448         of objfile.
16449         (create_signatured_type_table_from_index): Likewise.
16450         (create_debug_type_hash_table): Likewise.
16451         (fill_in_sig_entry_from_dwo_entry): Likewise.
16452         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16453         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16454         objfile.
16455         (create_partial_symtab): Access objfile through
16456         dwarf2_per_objfile.
16457         (process_psymtab_comp_unit_reader): Likewise.
16458         (read_comp_units_from_section): Likewise.
16459         (scan_partial_symbols): Likewise.
16460         (add_partial_symbol): Likewise.
16461         (add_partial_subprogram): Likewise.
16462         (peek_die_abbrev): Likewise.
16463         (fixup_go_packaging): Likewise.
16464         (process_full_comp_unit): Likewise.
16465         (process_full_type_unit): Likewise.
16466         (process_imported_unit_die): Likewise.
16467         (dwarf2_compute_name): Likewise.
16468         (dwarf2_physname): Likewise.
16469         (read_import_statement): Likewise.
16470         (create_cus_hash_table): Assign dwarf2_physname instead of
16471         objfile.
16472         (read_func_scope): Access objfile through dwarf2_per_objfile.
16473         (read_lexical_block_scope): Likewise.
16474         (read_call_site_scope): Likewise.
16475         (read_variable): Likewise.
16476         (dwarf2_rnglists_process): Likewise.
16477         (dwarf2_ranges_process): Likewise.
16478         (dwarf2_ranges_read): Likewise.
16479         (dwarf2_record_block_ranges): Likewise.
16480         (dwarf2_add_field): Likewise.
16481         (dwarf2_add_member_fn): Likewise.
16482         (read_structure_type): Likewise.
16483         (process_structure_scope): Likewise.
16484         (read_enumeration_type): Likewise.
16485         (read_array_type): Likewise.
16486         (read_common_block): Likewise.
16487         (read_namespace_type): Likewise.
16488         (read_namespace): Likewise.
16489         (read_module_type): Likewise.
16490         (read_tag_pointer_type): Likewise.
16491         (read_tag_ptr_to_member_type): Likewise.
16492         (read_tag_string_type): Likewise.
16493         (read_subroutine_type): Likewise.
16494         (read_typedef): Likewise.
16495         (read_base_type): Likewise.
16496         (attr_to_dynamic_prop): Likewise.
16497         (read_subrange_type): Likewise.
16498         (read_unspecified_type): Likewise.
16499         (load_partial_dies): Likewise.
16500         (read_partial_die): Likewise.
16501         (find_partial_die): Likewise.
16502         (guess_partial_die_structure_name): Likewise.
16503         (fixup_partial_die): Likewise.
16504         (read_attribute_value): Likewise.
16505         (read_addr_index_from_leb128): Likewise.
16506         (dwarf2_read_addr_index): Likewise.
16507         (dwarf2_string_attr): Likewise.
16508         (lnp_state_machine::check_line_address): Likewise.
16509         (dwarf_decode_lines_1): Likewise.
16510         (dwarf_decode_lines): Likewise.
16511         (dwarf2_start_symtab): Likewise.
16512         (var_decode_location): Likewise.
16513         (new_symbol_full): Likewise.
16514         (dwarf2_const_value_data): Likewise.
16515         (dwarf2_const_value_attr): Likewise.
16516         (dwarf2_const_value): Likewise.
16517         (die_type): Likewise.
16518         (die_containing_type): Likewise.
16519         (lookup_die_type): Likewise.
16520         (guess_full_die_structure_name): Likewise.
16521         (anonymous_struct_prefix): Likewise.
16522         (dwarf2_name): Likewise.
16523         (follow_die_ref_or_sig): Likewise.
16524         (follow_die_offset): Likewise.
16525         (follow_die_ref): Likewise.
16526         (dwarf2_fetch_die_loc_sect_off): Likewise.
16527         (dwarf2_fetch_constant_bytes): Likewise.
16528         (dwarf2_fetch_die_type_sect_off): Likewise.
16529         (dwarf2_get_die_type): Likewise.
16530         (follow_die_sig): Likewise.
16531         (decode_locdesc): Likewise.
16532         (dwarf2_per_cu_objfile): Likewise.
16533         (dwarf2_per_cu_text_offset): Likewise.
16534         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16535         objfile.
16536         (set_die_type): Access objfile through
16537         dwarf2_per_objfile.
16538
16539 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16540
16541         * valprint.c (converted_character_d): Remove typedef.
16542         (DEF_VEC_O (converted_character_d)): Remove.
16543         (count_next_character): Use std::vector.
16544         (print_converted_chars_to_obstack): Likewise.
16545         (generic_printstr): Likewise.
16546
16547 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16548
16549         * xml-support.h (struct gdb_xml_value): Add constructor.
16550         <value>: Change type to unique_xmalloc_ptr.
16551         (gdb_xml_value_s): Remove typedef.
16552         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16553         (gdb_xml_element_start_handler): Change parameter type to
16554         std::vector.
16555         (xml_find_attribute): Likewise.
16556         * xml-support.c (xml_find_attribute): Change parameter type to
16557         std::vector and adjust.
16558         (gdb_xml_values_cleanup): Remove.
16559         (gdb_xml_parser::start_element): Adjust to std::vector.
16560         (xinclude_start_include): Change paraeter type to std::vector
16561         and adjust.
16562         * btrace.c (check_xml_btrace_version): Likewise.
16563         (parse_xml_btrace_block): Likewise.
16564         (parse_xml_btrace_pt_config_cpu): Likewise.
16565         (parse_xml_btrace_pt): Likewise.
16566         (parse_xml_btrace_conf_bts): Likewise.
16567         (parse_xml_btrace_conf_pt): Likewise.
16568         * memory-map.c (memory_map_start_memory): Likewise.
16569         (memory_map_start_property): Likewise.
16570         * osdata.c (osdata_start_osdata): Likewise.
16571         (osdata_start_item): Likewise.
16572         (osdata_start_column): Likewise.
16573         * remote.c (start_thread): Likewise.
16574         * solib-aix.c (library_list_start_library): Likewise.
16575         (library_list_start_list): Likewise.
16576         * solib-svr4.c (library_list_start_library): Likewise.
16577         (svr4_library_list_start_list): Likewise.
16578         * solib-target.c (library_list_start_segment): Likewise.
16579         (library_list_start_section): Likewise.
16580         (library_list_start_library): Likewise.
16581         (library_list_start_list): Likewise.
16582         * tracepoint.c (traceframe_info_start_memory): Likewise.
16583         (traceframe_info_start_tvar): Likewise.
16584         * xml-syscall.c (syscall_start_syscall): Likewise.
16585         * xml-tdesc.c (tdesc_start_target): Likewise.
16586         (tdesc_start_feature): Likewise.
16587         (tdesc_start_reg): Likewise.
16588         (tdesc_start_union): Likewise.
16589         (tdesc_start_struct): Likewise.
16590         (tdesc_start_flags): Likewise.
16591         (tdesc_start_enum): Likewise.
16592         (tdesc_start_field): Likewise.
16593         (tdesc_start_enum_value): Likewise.
16594         (tdesc_start_vector): Likewise.
16595
16596 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16597
16598         * extension.h (struct xmethod_worker) <clone>: Remove.
16599         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16600         Remove.
16601         (python_xmethod_worker::clone): Remove.
16602         * valops.c (find_overload_match): Use std::move instead of
16603         clone.
16604
16605 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16606
16607         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16608         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16609         <free_xmethod_worker_data>: Remove.
16610         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16611         <get_xmethod_arg_types>: Remove.
16612         <get_xmethod_result_type>: Remove.
16613         <invoke_xmethod>: Remove.
16614         * extension.c (new_xmethod_worker): Remove.
16615         (clone_xmethod_worker): Remove.
16616         (get_matching_xmethod_workers): Return void, pass std::vector by
16617         pointer.
16618         (get_xmethod_arg_types): Rename to...
16619         (xmethod_worker::get_arg_types): ... this, and adjust.
16620         (get_xmethod_result_type): Rename to...
16621         (xmethod_worker::get_result_type): ... this, and adjust.
16622         (invoke_xmethod): Remove.
16623         (free_xmethod_worker): Remove.
16624         (free_xmethod_worker_vec): Remove.
16625         * extension.h (enum ext_lang_rc): Move here from
16626         extension-priv.h.
16627         (struct xmethod_worker): Add constructor and destructor.
16628         <data>: Remove.
16629         <value>: Remove.
16630         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16631         virtual pure methods.
16632         <get_arg_types, get_result_type>: New methods.
16633         (xmethod_worker_ptr): Remove typedef.
16634         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16635         (xmethod_worker_vec): Remove typedef.
16636         (xmethod_worker_up): New typedef.
16637         (invoke_xmethod): Remove.
16638         (clone_xmethod_worker): Remove.
16639         (free_xmethod_worker): Remove.
16640         (free_xmethod_worker_vec): Remove.
16641         (get_xmethod_arg_types): Remove.
16642         (get_xmethod_result_type): Remove.
16643         * valops.c (find_method_list): Use std::vector, don't use
16644         intermediate vector.
16645         (value_find_oload_method_list): Use std::vector.
16646         (find_overload_match): Use std::vector.
16647         (find_oload_champ): Use std::vector.
16648         * value.c (value_free): Use operator delete.
16649         (value_of_xmethod): Rename to...
16650         (value_from_xmethod): ... this.  Don't assign
16651         xmethod_worker::value, take rvalue-reference.
16652         (result_type_of_xmethod): Adjust.
16653         (call_xmethod): Adjust.
16654         * value.h: Include extension.h.
16655         (struct xmethod_worker): Don't forward-declare.
16656         (value_of_xmethod): Rename to...
16657         (value_from_xmethod): ... this, take rvalue-reference.
16658         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16659         (struct python_xmethod_worker): ... this, add constructor and
16660         destructor.
16661         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16662         (gdbpy_free_xmethod_worker_data): Rename to...
16663         (python_xmethod_worker::~python_xmethod_worker): ... this and
16664         adjust.
16665         (gdbpy_clone_xmethod_worker_data): Rename to...
16666         (python_xmethod_worker::clone): ... this and adjust.
16667         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16668         temporary vector.
16669         (gdbpy_get_xmethod_arg_types): Rename to...
16670         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16671         (gdbpy_get_xmethod_result_type): Rename to...
16672         (python_xmethod_worker::do_get_result_type): ... this and
16673         adjust.
16674         (gdbpy_invoke_xmethod): Rename to...
16675         (python_xmethod_worker::invoke): ... this and adjust.
16676         (new_python_xmethod_worker): Rename to...
16677         (python_xmethod_worker::python_xmethod_worker): ... this and
16678         adjust.
16679         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16680         Remove.
16681         (gdbpy_free_xmethod_worker_data): Remove.
16682         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16683         (gdbpy_get_xmethod_arg_types): Remove.
16684         (gdbpy_get_xmethod_result_type): Remove.
16685         (gdbpy_invoke_xmethod): Remove.
16686         * python/python.c (python_extension_ops): Remove obsolete
16687         callbacks.
16688
16689 2018-01-05  Pedro Alves  <palves@redhat.com>
16690
16691         PR gdb/18653
16692         * common/signals-state-save-restore.c
16693         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16694         find a custom handler preinstalled, instead of internal erroring.
16695         But only warn if !quiet.
16696         * common/signals-state-save-restore.h
16697         (save_original_signals_state): New parameter 'quiet'.
16698         * main.c (captured_main_1): Move save_original_signals_state call
16699         after option handling, and pass QUIET.
16700
16701 2018-01-05  Pedro Alves  <palves@redhat.com>
16702
16703         * spu-tdep.c (spu_catch_start): Pass
16704         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16705
16706 2018-01-05  Pedro Alves  <palves@redhat.com>
16707
16708         PR gdb/22670
16709         * ada-lang.c (literal_symbol_name_matcher): New function.
16710         (ada_get_symbol_name_matcher): Use it for
16711         symbol_name_match_type::SEARCH_NAME.
16712         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16713         it down instead of assuming symbol_name_match_type::FULL.
16714         * block.h (block_lookup_symbol): New parameter 'match_type'.
16715         * c-valprint.c (print_unpacked_pointer): Use
16716         lookup_symbol_search_name instead of lookup_symbol.
16717         * compile/compile-object-load.c (get_out_value_type): Pass down
16718         symbol_name_match_type::SEARCH_NAME.
16719         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16720         symbol_name_match_type::FULL.
16721         * cp-support.c (cp_get_symbol_name_matcher): Handle
16722         symbol_name_match_type::SEARCH_NAME.
16723         * infrun.c (insert_exception_resume_breakpoint): Use
16724         lookup_symbol_search_name.
16725         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16726         * psymtab.c (maintenance_check_psymtabs): Use
16727         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16728         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16729         SYMBOL_SEARCH_NAME.
16730         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16731         if symbol_name_match_type::SEARCH_NAME.
16732         (lookup_symbol_in_language): Pass down
16733         symbol_name_match_type::FULL.
16734         (lookup_symbol_search_name): New.
16735         (lookup_language_this): Pass down
16736         symbol_name_match_type::SEARCH_NAME.
16737         (lookup_symbol_aux, lookup_local_symbol): New parameter
16738         'match_type'.  Pass it down.
16739         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16740         (lookup_symbol_search_name): New declaration.
16741         (lookup_symbol_in_block): New 'match_type' parameter.
16742
16743 2018-01-05  Pedro Alves  <palves@redhat.com>
16744
16745         PR gdb/22670
16746         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16747         ada_lookup_symbol.
16748         (ada_lookup_symbol): Reimplement in terms of
16749         ada_lookup_symbol_list, bits factored out from
16750         ada_lookup_encoded_symbol.
16751
16752 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16753
16754         * ada-exp.y (write_object_renaming): When subscripting an array
16755         using a symbol as the index, pass the block in call to
16756         ada_lookup_encoded_symbol when looking that symbol up.
16757
16758 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16759
16760         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16761         TYPE_INDEX_TYPE.
16762
16763 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16764
16765         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16766         the case where VALUE_LVAL (val0) is not lval_memory.
16767
16768 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16769
16770         * ada-valprint.c (print_optional_low_bound): Handle
16771         character-indexed array printing like boolean-indexed array
16772         printing.
16773
16774 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16775
16776         * NEWS: Create a new section for the next release branch.
16777         Rename the section of the current branch, now that it has
16778         been cut.
16779
16780 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16781
16782         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16783         * version.in: Bump version to 8.1.50.DATE-git.
16784
16785 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16786
16787         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16788         Add field.
16789         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16790         Add field.
16791         (default_exception_support_info) <catch_handlers_sym>: Add field.
16792         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16793         (ada_exception_name_addr_1): Add "catch handlers" handling.
16794         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16795         Update all callers.
16796         (create_excep_cond_exprs) <ex>: Add parameter.
16797         (re_set_exception): Update create_excep_cond_exprs call.
16798         (print_it_exception, print_one_exception, print_mention_exception)
16799         (print_recreate_exception): Add "catch handler" handling.
16800         (allocate_location_catch_handlers, re_set_catch_handlers)
16801         (check_status_catch_handlers, print_it_catch_handlers)
16802         (print_one_catch_handlers, print_mention_catch_handlers)
16803         (print_recreate_catch_handlers): New function.
16804         (catch_handlers_breakpoint_ops): New variable.
16805         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16806         Add parameter.  Add "catch handler" handling.
16807         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16808         Add "catch handler" handling.
16809         (ada_exception_catchpoint_cond_string): Add "catch handler"
16810         handling.
16811         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16812         call.
16813         (catch_ada_handlers_command): New function.
16814         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16815         operations structure.
16816         (_initialize_ada_language): Add "catch handlers" command entry.
16817         * NEWS: Document "catch handlers" feature.
16818
16819 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16820
16821         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16822         account when creating the array type of the slice.
16823         (ada_value_slice): Likewise.
16824
16825 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16826
16827         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16828         New enum value.
16829         (create_array_type_with_stride): Add byte_stride_prop parameter.
16830         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16831         New parameter.  Update all callers in this file.
16832         (array_type_has_dynamic_stride): New function.
16833         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16834         of arrays with dynamic byte strides.
16835         * dwarf2read.c (read_array_type): Add support for dynamic
16836         DW_AT_byte_stride attributes.
16837
16838 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16839
16840         * dwarf2read.c (read_unspecified_type): Treat
16841         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16842
16843 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16844
16845         Update copyright year range in all GDB files.
16846
16847 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16848
16849         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16850         and gdb/testsuite/gdb.base/step-line.c.
16851
16852 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16853
16854         * copyright.py (main): Dump the contents of
16855         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16856         even if BY_HAND is empty.
16857
16858 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16859
16860         * top.c (print_gdb_version): Update Copyright year in version
16861         message.
16862
16863 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16864
16865         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16866
16867 For older changes see ChangeLog-2017.
16868 \f
16869 Local Variables:
16870 mode: change-log
16871 left-margin: 8
16872 fill-column: 74
16873 version-control: never
16874 coding: utf-8
16875 End: