Add an optional "alias" attribute to syscall entries.
[external/binutils.git] / gdb / ChangeLog
1 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
2
3         * NEWS: Add entry documenting system call aliases.
4         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
5         to get_syscalls_by_name.
6         * gdbarch.sh (UNKNOWN_SYSCALL): Remove.
7         * gdbarch.h: Regenerate.
8         * syscalls/gdb-syscalls.dtd (syscall): Add alias attribute.
9         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_name): Rename
10         from get_syscall_by_name.  Now accepts a pointer to a vector of
11         integers and returns a bool.
12         [HAVE_LIBEXPAT] (struct syscall_desc): Add alias member.
13         (syscall_create_syscall_desc): Add alias parameter and pass it to
14         syscall_desc constructor.
15         (syscall_start_syscall): Handle alias attribute.
16         (syscall_attr): Add alias attribute.
17         (xml_get_syscalls_by_name): Rename from xml_get_syscall_number.
18         Now accepts a pointer to a vector of integers and returns a
19         bool.  Add syscalls whose alias or name matches the requested
20         name.
21         (get_syscalls_by_name): Rename from get_syscall_by_name.  Now
22         accepts a pointer to a vector of integers and returns a bool.
23         * xml-syscall.h (get_syscalls_by_name): Likewise.
24
25 2018-12-13  John Baldwin  <jhb@FreeBSD.org>
26
27         * break-catch-syscall.c (catch_syscall_split_args): Pass 'result'
28         to get_syscalls_by_group.
29         * xml-syscall.c [!HAVE_LIBEXPAT] (get_syscalls_by_group): Return
30         false.
31         [HAVE_LIBEXPAT] (xml_list_syscalls_by_group): Append syscall
32         numbers to an existing vector of integers and return a bool.
33         (get_syscalls_by_group): Accept pointer to vector of integers
34         and change return type to bool.
35         * xml-syscall.h (get_syscalls_by_group): Likewise.
36
37 2018-12-13  Jim Wilson  <jimw@sifive.com>
38
39         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
40         comment for SD field, and correct xlen calculation.  For MISA, add
41         comment for MXL field, add call to register_size, and correct base
42         calculation.
43
44 2018-12-13  Stafford Horne  <shorne@gmail.com>
45
46         * NEWS(New targets): Add or1k*-*-linux*.
47
48 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
49
50         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
51         declare on one line to fix ARI warning.
52
53 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
54
55         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
56         (infcall_suspend_state::registers): New.
57         (infcall_suspend_state::restore): New.
58         (infcall_suspend_state::thread_suspend): Rename to...
59         (infcall_suspend_state::m_thread_suspend): ...this.
60         (infcall_suspend_state::registers): Rename to...
61         (infcall_suspend_state::m_registers): ...this.
62         (infcall_suspend_state::siginfo_gdbarch): Rename to...
63         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
64         (infcall_suspend_state::siginfo_data): Rename to...
65         (infcall_suspend_state::m_siginfo_data): ...this.
66         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
67         constructor.
68         (restore_infcall_suspend_state): Rewrite to use
69         infcall_suspend_state::restore method.
70         (get_infcall_suspend_state_regcache): Use
71         infcall_suspend_state::registers method.
72
73 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
74
75         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
76         arguments are passed in integer registers.
77         (riscv_call_arg_complex_float): Likewise.
78
79 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
80
81         * nat/linux-osdata.c (common_getter): New function.
82         (struct osdata_type): Change getter to take_snapshot.
83         Add LONGEST len_avail and struct buffer buffer.
84         Change all elements in the initializer.
85         Add an element for the list of types.
86         (linux_xfer_osdata_info_os_types): New function.
87         (linux_common_xfer_osdata): Use common_getter for the list of types.
88         Replace getter call by common_getter.
89         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
90         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
91         (linux_xfer_osdata_fds): Likewise.
92         (linux_xfer_osdata_modules): Likewise.
93         (linux_xfer_osdata_msg): Likewise.
94         (linux_xfer_osdata_processes): Likewise.
95         (linux_xfer_osdata_processgroups): Likewise.
96         (linux_xfer_osdata_sem): Likewise.
97         (linux_xfer_osdata_shm): Likewise.
98         (linux_xfer_osdata_isockets): Likewise.
99         (linux_xfer_osdata_threads): Likewise.
100
101 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
102
103         * nat/linux-osdata.c: Removed various trailing spaces.
104
105 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
106
107         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
108         leading whitespace before #include line.
109
110 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
111             Дилян Палаузов  <dilyan.palauzov@aegee.org>
112
113         PR gdb/23950
114         * configure.ac: Search for tgetent in libtinfow.
115         * configure: Re-generate.
116
117 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
118
119         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
120         (thread_db_err_str): Forward declare.
121         (delete_thread_db_info): Call td_ta_delete_p if available.
122         (try_thread_db_load_1): Acquire td_ta_delete address.
123         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
124
125 2018-12-08  Pedro Alves  <palves@redhat.com>
126
127         * source.c (forward_search_command): Rename to ...
128         (search_command_helper): ... this.  Add 'forward' parameter.
129         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
130         buffer.  Handle backward searches too.
131         (forward_search_command, reverse_search_command): Reimplement by
132         calling search_command_helper.
133
134 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
135
136         * .dir-locals.el: Copy most of the settings from c-mode over to
137         c++-mode.
138
139 2018-12-08  Stafford Horne  <shorne@gmail.com>
140
141         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
142         * configure.tgt: Add or1k*-*-linux*.
143         * or1k-linux-tdep.c: New file.
144         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
145
146 2018-12-07  Pedro Alves  <palves@redhat.com>
147
148         * dwarf2read.c (get_gdb_index_contents_from_section): Use
149         gdb::make_array_view.
150
151 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
152
153         * language.c (_initialize_language): Fix leak by assigning
154         a static string to language.  Same for range and case_sensitive,
155         even if no leak is detected for these variables.
156
157 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
158
159         * configure: Re-generate.
160         * configure.ac: Use separate sed expressions to escape variables
161         in auto-load directories.
162
163 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
164
165         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
166         (riscv_find_default_target_description): Use new function to
167         extract feature from gdbarch_info.
168         (riscv_gdbarch_init): Add error checks for xlen and flen between
169         target description and bfd headers.  Be smarter about when we
170         think the hardware floating point abi should be used.
171
172 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
173
174         * nat/aarch64-linux-hw-point.c
175         (aarch64_linux_any_set_debug_regs_state): New function.
176         * nat/aarch64-linux-hw-point.h
177         (aarch64_linux_any_set_debug_regs_state): New declaration.
178         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
179         BPs or WPs are set.
180
181 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
182
183         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
184         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
185
186 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
187             Simon Marchi  <simon.marchi@ericsson.com>
188
189         * linespec.c (symtab_vector_up): Remove.
190         (symtabs_from_filename): Change return type to std::vector.
191         (collect_symtabs_from_filename): Likewise.
192         (create_sals_line_offset): Assign return value of
193         collect_symtabs_from_filename to *ls->file_symtabs.
194         (convert_explicit_location_to_linespec): Remove call to release.
195         (parse_linespec): Likewise.
196         (symtab_collector) <symtab_collector>: Remove initialization of
197         m_symtabs.
198         <release_symtabs>: Change return type to std::vector<symtab *>.
199         <operator ()>: Adjust.
200
201 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
202
203         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
204         defined.
205         (union sigval32, struct siginfo32, fbsd_siginfo_size)
206         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
207         of KERN_PROC_AUXV and PT_LWPINFO.
208         (fbsd_nat_target::xfer_partial): Define method unconditionally.
209         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
210         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
211         Make TARGET_OBJECT_FREEBSD_VMMAP and
212         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
213         and KERN_PROC_PS_STRINGS.
214         * fbsd-nat.h: Include <sys/proc.h>.
215         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
216
217 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
218
219         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
220         header files.
221         (riscv_linux_nat_target::read_description): New method.
222
223 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
224
225         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
226         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
227         (riscv_tdesc_cache): New global.
228         (riscv_create_target_description): Look in the cache before
229         creating a new target description.
230
231 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
232
233         * arch/riscv.h (riscv_gdb_features::operator==): New.
234         (riscv_gdb_features::operator!=): New.
235         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
236         operator.
237
238 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
239
240         * arch/riscv.h (riscv_create_target_description): Make return type
241         const.
242         * arch/riscv.c (riscv_create_target_description): Likewise.
243         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
244
245 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
246             Keith Seitz  <keiths@redhat.com>
247             Tom Tromey  <tom@tromey.com>
248             Sergio Durigan Junior  <sergiodj@redhat.com>
249
250         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
251         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
252         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
253         inside the CU.
254
255 2018-11-30  Pedro Alves  <palves@redhat.com>
256
257         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
258         <stratum>: New override.
259         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
260         <stratum>: New override.
261         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
262         <stratum>: New override.
263         * exec.c (exec_target) <exec_target>: Delete.
264         <stratum>: New override.
265         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
266         stratum method instead of the to_stratum field.
267         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
268         <stratum>: New override.
269         (thread_db_target::thread_db_target): Delete.
270         * make-target-delegates (print_class): Don't print a ctor
271         declaration.  Print a stratum method override declaration.
272         * process-stratum-target.h (process_stratum_target)
273         <process_stratum_target>: Delete.
274         <stratum>: New override.
275         * ravenscar-thread.c (ravenscar_thread_target)
276         <ravenscar_thread_target>: Delete.
277         <stratum>: New override.
278         * record-btrace.c (record_btrace_target)
279         <record_btrace_target>: Delete.
280         <stratum>: New override.
281         * record-full.c (record_full_base_target)
282         <record_full_base_target>: Delete.
283         <stratum>: New override.
284         * record.c (record_disconnect, record_detach)
285         (record_mourn_inferior, record_kill): Adjust to use the stratum
286         method instead of the to_stratum field.
287         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
288         * sol-thread.c (sol_thread_target)
289         <sol_thread_target>: Delete.
290         <stratum>: New override.
291         * spu-multiarch.c (spu_multiarch_target)
292         <spu_multiarch_target>: Delete.
293         <stratum>: New override.
294         * target-delegates.c: Regenerate.
295         * target.c (target_stack::push, target_stack::unpush)
296         (pop_all_targets_above, pop_all_targets_at_and_above)
297         (info_target_command, target_require_runnable)
298         (target_stack::find_beneath): Adjust to use the stratum method
299         instead of the to_stratum field.
300         (dummy_target::dummy_target): Delete.
301         (dummy_target::stratum): New.
302         (debug_target::debug_target): Delete.
303         (debug_target::stratum): New.
304         (maintenance_print_target_stack): Adjust to use the stratum method
305         instead of the to_stratum field.
306         * target.h (struct target_ops) <stratum>: New method.
307         <to_stratum>: Delete.
308         <is_pushed>: Adjust to use the stratum method
309         instead of the to_stratum field.
310
311 2018-11-30  Pedro Alves  <palves@redhat.com>
312
313         * corelow.c (core_target) <has_all_memory, has_execution>: New
314         overrides.
315         * inf-child.c (inf_child_target::has_all_memory)
316         (inf_child_target::has_memory, inf_child_target::has_stack)
317         (inf_child_target::has_registers)
318         (inf_child_target::has_execution): Delete.
319         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
320         has_stack, has_registers, has_execution>: Delete.
321         * process-stratum-target.c
322         (process_stratum_target::has_all_memory)
323         (process_stratum_target::has_memory)
324         (process_stratum_target::has_stack)
325         (process_stratum_target::has_registers)
326         (process_stratum_target::has_execution): New.
327         * process-stratum-target.h (process_stratum_target)
328         <has_all_memory, has_memory, has_stack, has_registers,
329         has_execution>: New method overrides.
330         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
331         has_memory, has_stack, has_registers, has_execution>: Delete.
332         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
333         has_execution>: Delete.
334         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
335         has_registers, has_execution>: Delete.
336         * target.c (default_child_has_all_memory)
337         (default_child_has_memory, default_child_has_stack)
338         (default_child_has_registers, default_child_has_execution):
339         Delete.
340         * target.h (default_child_has_all_memory)
341         (default_child_has_memory, default_child_has_stack)
342         (default_child_has_registers, default_child_has_execution):
343         Delete.
344         * tracefile.h (tracefile_target) <has_execution>: New override.
345
346 2018-11-30  Pedro Alves  <palves@redhat.com>
347
348         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
349         * bsd-kvm.c: Include "process-stratum-target.h".
350         (bsd_kvm_target): Now inherits from process_stratum_target.
351         (bsd_kvm_target::bsd_kvm_target): Default it.
352         * corelow.c: Include "process-stratum-target.h".
353         (core_target): Now inherits from process_stratum_target.
354         (core_target::core_target): Don't set to_stratum here.
355         * inf-child.c (inf_child_target::inf_child_target): Delete.
356         * inf-child.h: Include "process-stratum-target.h".
357         (inf_child_target): Inherit from process_stratum_target.
358         (inf_child_target) <inf_child_target>: Default it.
359         <can_async_p, supports_non_stop, supports_disable_randomization>:
360         Delete overrides.
361         * process-stratum-target.c: New file.
362         * process-stratum-target.h: New file.
363         * remote-sim.c: Include "process-stratum-target.h".
364         (gdbsim_target): Inherit from process_stratum_target.
365         <gdbsim_target>: Default it.
366         * remote.c: Include "process-stratum-target.h".
367         (remote_target): Inherit from process_stratum_target.
368         <remote_target>: Default it.
369         * target.c (default_thread_address_space)
370         (default_thread_architecture): Delete.
371         * target.h (target_ops) <thread_architecture>: Now returns NULL by
372         default.
373         <thread_address_space>: Ditto.
374         * test-target.h: Include "process-stratum-target.h" instead of
375         "target.h".
376         (test_target_ops): Inherit from process_stratum_target.
377         <test_target_ops>: Default it.
378         * tracefile.c (tracefile_target::tracefile_target): Delete.
379         * tracefile.h: Include "process-stratum-target.h".
380         (tracefile_target): Inherit from process_stratum_target.
381         <tracefile_target>: Default it.
382         * target-delegates.c: Regenerate.
383
384 2018-11-30  Pedro Alves  <palves@redhat.com>
385
386         * Makefile.in (COMMON_SFILES): Add test-target.c.
387         * gdbarch-selftests.c: Include "test-target.h".
388         * regcache.c: Include "test-target.h".
389         * target.c (test_target_info, test_target_ops::info): Move to ...
390         * test-target.c: ... this new file.
391         * target.h (test_target_ops): Move to ...
392         * test-target.h: ... this new file.
393
394 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
395
396         * source.c (forward_search_command): Fix leak by using
397         xrealloc even for the first allocation in the loop, as buf
398         is static.
399
400 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
401
402         PR gdb/23093
403         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
404         (fbsd_gdb_signal_to_target): New.
405         (fbsd_init_abi): Install gdbarch "signal_from_target" and
406         "signal_to_target" methods.
407
408 2018-11-29  Tom Tromey  <tom@tromey.com>
409
410         * valarith.c (value_x_unop): Don't set argvec[3].
411
412 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
413
414         PR gdb/23917
415         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
416         semicolon.
417
418 2018-11-26  Pedro Alves  <palves@redhat.com>
419
420         * procfs.c (procfs_notice_thread): Replace uses of
421         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
422         * sol-thread.c (sol_thread_target::wait)
423         (sol_update_thread_list_callback): Likewise.
424
425 2018-11-25  Tom Tromey  <tom@tromey.com>
426
427         * ui-out.c (ui_out::field_fmt): Remove comment.
428         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
429         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
430
431 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
432
433         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
434         leak in open_source_file' has been partially undone by '2179fbc36d23
435         Return scoped_fd from open_source_file'. Re-add the transfer of
436         current s->fullname to the unique_xmalloc_ptr fullname given
437         to find_and_open_source.
438
439 2018-11-23  Pedro Alves  <palves@redhat.com>
440
441         * gdbthread.h (enum thread_state): Move comments here.
442         (is_running, is_stopped, is_exited): Remove declarations.
443
444 2018-11-22  Pedro Alves  <palves@redhat.com>
445
446         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
447         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
448         ALL_NON_EXITED_THREADS with all_non_exited_threads.
449         (print_one_breakpoint_location): Replace ALL_INFERIORS with
450         all_inferiors.
451         * bsd-kvm.c: Include inferior.h.
452         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
453         with all_non_exited_threads.
454         * common/filtered-iterator.h: New.
455         * common/safe-iterator.h: New.
456         * corelow.c (core_target_open): Don't call init_thread_list here.
457         * darwin-nat.c (thread_info_from_private_thread_info): Replace
458         ALL_THREADS with all_threads.
459         * fbsd-nat.c (fbsd_nat_target::resume): Replace
460         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
461         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
462         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
463         * fork-child.c (postfork_hook): Don't call init_thread_list here.
464         * gdbarch-selftests.c (register_to_value_test): Adjust.
465         * gdbthread.h: Don't include "inferior.h" here.
466         (struct inferior): Forward declare.
467         (enum step_over_calls_kind): Moved here from inferior.h.
468         (thread_info::deletable): Definition moved to thread.c.
469         (find_thread_ptid (inferior *, ptid_t)): Declare.
470         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
471         Include "thread-iter.h".
472         (all_threads, all_non_exited_threads, all_threads_safe): New.
473         (any_thread_p): Declare.
474         (thread_list): Delete.
475         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
476         all_non_exited_threads.
477         (proceed_after_attach_callback): Delete.
478         (proceed_after_attach): Take an inferior pointer instead of an
479         integer PID.  Adjust to use range-for.
480         (attach_post_wait): Pass down inferior pointer instead of pid.
481         Use range-for instead of ALL_NON_EXITED_THREADS.
482         (detach_command): Remove init_thread_list call.
483         * inferior-iter.h: New.
484         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
485         (delete_thread_of_inferior): Delete.
486         (delete_inferior, exit_inferior_1): Use range-for with
487         inf->threads_safe() instead of iterate_over_threads.
488         (inferior_appeared): Call init_thread_list here.
489         (discard_all_inferiors): Use all_non_exited_inferiors.
490         (find_inferior_id, find_inferior_pid): Use all_inferiors.
491         (iterate_over_inferiors): Use all_inferiors_safe.
492         (have_inferiors, number_of_live_inferiors): Use
493         all_non_exited_inferiors.
494         (number_of_inferiors): Use all_inferiors and std::distance.
495         (print_inferior): Use all_inferiors.
496         * inferior.h: Include gdbthread.h.
497         (enum step_over_calls_kind): Moved to gdbthread.h.
498         (struct inferior) <thread_list>: New field.
499         <threads, non_exited_threads, threads_safe>: New methods.
500         (ALL_INFERIORS): Delete.
501         Include "inferior-iter.h".
502         (ALL_NON_EXITED_INFERIORS): Delete.
503         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
504         functions.
505         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
506         ALL_NON_EXITED_THREADS with all_non_exited_threads.
507         * infrun.c (follow_exec): Use all_threads_safe.
508         (clear_proceed_status, proceed): Use all_non_exited_threads.
509         (init_wait_for_inferior): Don't clear inline frame state here.
510         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
511         all_threads instead of ALL_NON_EXITED_THREADS.
512         (random_pending_event_thread): Use all_non_exited_threads instead
513         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
514         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
515         instead of ALL_NON_EXITED_THREADS.
516         (handle_no_resumed): Use all_non_exited_threads instead of
517         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
518         ALL_INFERIORS.
519         (restart_threads, switch_back_to_stepped_thread): Use
520         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
521         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
522         all_inferiors.
523         (kill_unfollowed_fork_children): Use inf->non_exited_threads
524         instead of ALL_NON_EXITED_THREADS.
525         * linux-tdep.c (linux_make_corefile_notes): Use
526         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
527         * linux-thread-db.c (thread_db_target::update_thread_list):
528         Replace ALL_INFERIORS with all_inferiors.
529         (thread_db_target::thread_handle_to_thread_info): Use
530         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
531         * mi/mi-interp.c (multiple_inferiors_p): New.
532         (mi_on_resume_1): Simplify using all_non_exited_threads and
533         multiple_inferiors_p.
534         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
535         instead of ALL_NON_EXITED_THREADS.
536         * nto-procfs.c (nto_procfs_target::open): Don't call
537         init_thread_list here.
538         * record-btrace.c (record_btrace_target_open)
539         (record_btrace_target::stop_recording)
540         (record_btrace_target::close)
541         (record_btrace_target::record_is_replaying)
542         (record_btrace_target::resume, record_btrace_target::wait)
543         (record_btrace_target::record_stop_replaying): Use
544         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
545         * record-full.c (record_full_wait_1): Use all_non_exited_threads
546         instead of ALL_NON_EXITED_THREADS.
547         * regcache.c (cooked_read_test): Remove reference to global
548         thread_list.
549         * remote-sim.c (gdbsim_target::create_inferior): Don't call
550         init_thread_list here.
551         * remote.c (remote_target::update_thread_list): Use
552         all_threads_safe instead of ALL_NON_EXITED_THREADS.
553         (remote_target::process_initial_stop_replies): Replace
554         ALL_INFERIORS with all_non_exited_inferiors and use
555         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
556         (remote_target::open_1): Don't call init_thread_list here.
557         (remote_target::append_pending_thread_resumptions)
558         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
559         instead of ALL_NON_EXITED_THREADS.
560         (remote_target::commit_resume)
561         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
562         with all_non_exited_inferiors and use all_non_exited_threads
563         instead of ALL_NON_EXITED_THREADS.
564         (remote_target::kill_new_fork_children): Use
565         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
566         init_thread_list and init_wait_for_inferior calls.
567         (remote_target::remote_btrace_maybe_reopen)
568         (remote_target::thread_handle_to_thread_info): Use
569         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
570         * target.c (target_terminal::restore_inferior)
571         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
572         all_non_exited_inferiors.
573         * thread-iter.c: New file.
574         * thread-iter.h: New file.
575         * thread.c: Include "inline-frame.h".
576         (thread_list): Delete.
577         (clear_thread_inferior_resources): Call clear_inline_frame_state.
578         (init_thread_list): Use all_threads_safe instead of
579         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
580         (new_thread): Adjust to per-inferior thread lists.
581         (add_thread_silent): Pass inferior to find_thread_ptid.
582         (thread_info::deletable): New, moved from the header.
583         (delete_thread_1): Adjust to per-inferior thread lists.
584         (find_thread_global_id): Use inf->threads().
585         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
586         find_thread_ptid.
587         (find_thread_ptid(inferior*, ptid_t)): New overload.
588         (iterate_over_threads): Use all_threads_safe.
589         (any_thread_p): New.
590         (thread_count): Use all_threads and std::distance.
591         (live_threads_count): Use all_non_exited_threads and
592         std::distance.
593         (valid_global_thread_id): Use all_threads.
594         (in_thread_list): Use find_thread_ptid.
595         (first_thread_of_inferior): Adjust to per-inferior thread lists.
596         (any_thread_of_inferior, any_live_thread_of_inferior): Use
597         inf->non_exited_threads().
598         (prune_threads, delete_exited_threads): Use all_threads_safe.
599         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
600         (set_resumed, set_running): Use all_non_exited_threads.
601         (is_thread_state, is_stopped, is_exited, is_running)
602         (is_executing): Delete.
603         (set_executing, set_stop_requested, finish_thread_state): Use
604         all_non_exited_threads.
605         (print_thread_info_1): Use all_inferiors and all_threads.
606         (thread_apply_all_command): Use all_non_exited_threads.
607         (thread_find_command): Use all_threads.
608         (update_threads_executing): Use all_non_exited_threads.
609         * tid-parse.c (parse_thread_id): Use inf->threads.
610         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
611
612 2018-11-22  Pedro Alves  <palves@redhat.com>
613
614         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
615         switch to it before calling into try_open_exec_file.
616
617 2018-11-22  Pedro Alves  <palves@redhat.com>
618
619         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
620         inferior_thread instead of find_thread_ptid, and only when
621         inferior_ptid is not null_ptid.
622         * inferior.c (add_inferior): Don't include target_pid_to_str
623         output when the inferior is not started.
624         * python/py-inferior.c (python_on_normal_stop): Don't use
625         find_thread_ptid.
626         (tui_on_user_selected_context_changed): Use inferior_thread
627         instead of find_thread_ptid, and only when inferior_ptid is not
628         null_ptid.
629
630 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
631
632         PR python/23714
633         * gdb/python/python.c (execute_gdb_command): Call
634         prevent_dont_repeat earlier to avoid affecting dont_repeat.
635
636 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
637
638         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
639         (HFILES_NO_SRCDIR): Add arch/riscv.h.
640         * arch/riscv.c: New file.
641         * arch/riscv.h: New file.
642         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
643         this list, and add arch/riscv.o.
644         * features/Makefile: Add riscv features.
645         * features/riscv/32bit-cpu.c: New file.
646         * features/riscv/32bit-cpu.xml: New file.
647         * features/riscv/32bit-csr.c: New file.
648         * features/riscv/32bit-csr.xml: New file.
649         * features/riscv/32bit-fpu.c: New file.
650         * features/riscv/32bit-fpu.xml: New file.
651         * features/riscv/64bit-cpu.c: New file.
652         * features/riscv/64bit-cpu.xml: New file.
653         * features/riscv/64bit-csr.c: New file.
654         * features/riscv/64bit-csr.xml: New file.
655         * features/riscv/64bit-fpu.c: New file.
656         * features/riscv/64bit-fpu.xml: New file.
657         * features/riscv/rebuild-csr-xml.sh: New file.
658         * riscv-tdep.c: Add 'arch/riscv.h' include.
659         (riscv_gdb_reg_names): Delete.
660         (csr_reggroup): New global.
661         (struct riscv_register_alias): Delete.
662         (struct riscv_register_feature): New structure.
663         (riscv_register_aliases): Delete.
664         (riscv_xreg_feature): New global.
665         (riscv_freg_feature): New global.
666         (riscv_virtual_feature): New global.
667         (riscv_csr_feature): New global.
668         (riscv_create_csr_aliases): New function.
669         (riscv_read_misa_reg): Delete.
670         (riscv_has_feature): Delete.
671         (riscv_isa_xlen): Simplify, just return cached xlen.
672         (riscv_isa_flen): Simplify, just return cached flen.
673         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
674         (riscv_register_name): Update to make use of tdesc_register_name.
675         Look up xreg and freg names in the new globals riscv_xreg_feature
676         and riscv_freg_feature.  Don't supply csr aliases here.
677         (riscv_fpreg_q_type): Delete.
678         (riscv_register_type): Use tdesc_register_type in almost all
679         cases, override the returned type in a few specific cases only.
680         (riscv_print_one_register_info): Handle errors reading registers.
681         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
682         registers that are otherwise unknown to GDB.  Also check the
683         csr_reggroup.
684         (riscv_print_registers_info): Remove assert about upper register
685         number, and use gdbarch_register_reggroup_p instead of
686         short-cutting.
687         (riscv_find_default_target_description): New function.
688         (riscv_check_tdesc_feature): New function.
689         (riscv_add_reggroups): New function.
690         (riscv_setup_register_aliases): New function.
691         (riscv_init_reggroups): New function.
692         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
693         setup register groups.  Register new riscv debug variable.
694         * riscv-tdep.h: Add 'arch/riscv.h' include.
695         (struct gdbarch_tdep): Remove abi union, and add
696         riscv_gdbarch_features field.  Remove cached quad floating point
697         type, and provide initialisation for double type field.
698         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
699         the list of targets using the feature based target descriptions.
700         * NEWS: Mention target description support.
701
702 2018-11-21  Pedro Alves  <palves@redhat.com>
703
704         * valops.c (find_method_list, value_find_oload_method_list)
705         (find_overload_match, find_oload_champ): Rename parameters and
706         locals.
707
708 2018-11-21  Pedro Alves  <palves@redhat.com>
709
710         * valops.c (find_method_list): Replace pointer and length
711         parameters with an gdb::array_view.  Adjust.
712         (value_find_oload_method_list): Likewise.
713         (find_overload_match): Use gdb::array_view for methods list.
714         Adjust to find_oload_champ interface change.
715         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
716         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
717
718 2018-11-21  Pedro Alves  <palves@redhat.com>
719
720         * gdbtypes.c (compare_badness): Change type of parameters to const
721         reference.  Adjust to badness_vector being a std::vector now.
722         (rank_function): Adjust to badness_vector being a std::vector now.
723         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
724         (LENGTH_MATCH): Delete.
725         (compare_badness): Change type of parameters to const reference.
726         (rank_function): Return a badness_vector by value now.
727         (find_overload_match): Adjust to badness_vector being a
728         std::vector now.  Remove cleanups.
729         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
730         badness_vector pointer.
731         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
732         a badness_vector pointer.  Adjust to badness_vector being a
733         std::vector now.  Remove cleanups.
734         (find_oload_champ): 'oload_champ_bv' parameter now
735         a badness_vector pointer.  Adjust to badness_vector being a
736         std::vector now.  Remove cleanups.
737
738 2018-11-21  Pedro Alves  <palves@redhat.com>
739
740         * cp-support.c (sym_return_val_size, sym_return_val_index)
741         (sym_return_val): Delete.
742         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
743         add to the vector.
744         (make_symbol_overload_list): Adjust to return a std::vector
745         instead of maintaining a global open coded vector.
746         (make_symbol_overload_list_block): Add std::vector parameter.
747         (make_symbol_overload_list_block): Rename to ...
748         (add_symbol_overload_list_block): ... this and add std::vector
749         parameter.
750         (make_symbol_overload_list_namespace): Rename to ...
751         (add_symbol_overload_list_namespace): ... this and add std::vector
752         parameter.
753         (make_symbol_overload_list_adl_namespace): Rename to ...
754         (add_symbol_overload_list_adl_namespace): ... this and add
755         std::vector parameter.
756         (make_symbol_overload_list_adl): Delete.
757         (add_symbol_overload_list_adl): New.
758         (make_symbol_overload_list_using): Rename to ...
759         (add_symbol_overload_list_using): ... this and add std::vector
760         parameter.
761         (make_symbol_overload_list_qualified): Rename to ...
762         (add_symbol_overload_list_qualified): ... this and add std::vector
763         parameter.
764         * cp-support.h: Include "common/array-view.h" and <vector>.
765         (make_symbol_overload_list): Change return type to std::vector.
766         (make_symbol_overload_list_adl): Delete declaration.
767         (add_symbol_overload_list_adl): New declaration.
768         * valops.c (find_overload_match): Local 'oload_syms' now a
769         std::vector.
770         (find_oload_champ_namespace): 'oload_syms' parameter now a
771         std::vector pointer.
772         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
773         std::vector pointer.  Adjust to new make_symbol_overload_list
774         interface.
775
776 2018-11-21  Pedro Alves  <palves@redhat.com>
777
778         * common/array-view.h (array_view::splice(size_type, size_t)): New.
779         (array_view::splice(size_type)): New.
780         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
781         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
782         std::vector.
783         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
784         * extension.h: Include "common/array-view.h".
785         (xmethod_worker::invoke): Adjust to use gdb::array_view.
786         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
787         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
788         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
789         (xmethod_worker::do_get_result_type): Adjust to use
790         gdb::array_view.
791         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
792         * gdbtypes.h: Include "common/array-view.h".
793         (rank_function): Adjust to use gdb::array_view.
794         * python/py-xmethods.c (python_xmethod_worker::invoke)
795         (python_xmethod_worker::do_get_arg_types)
796         (python_xmethod_worker::do_get_result_type)
797         (python_xmethod_worker::invoke): Adjust to new interfaces.
798         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
799         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
800         * valops.c (find_overload_match, find_oload_champ_namespace)
801         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
802         gdb:array_view and the new xmethod_worker interfaces.
803         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
804         gdb::array_view.
805         * value.h (find_overload_match, result_type_of_xmethod)
806         (call_xmethod): Adjust to use gdb::array_view.
807         * unittests/array-view-selftests.c: Add slicing tests.
808
809 2018-11-21  Pedro Alves  <palves@redhat.com>
810
811         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
812         * common/array-view.h (make_array_view): New.
813         * compile/compile-object-run.c (compile_object_run): Adjust to
814         pass an array_view.
815         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
816         * eval.c (eval_call): Adjust to pass an array_view.
817         (evaluate_subexp_standard): Adjust to pass an array_view.
818         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
819         * guile/scm-value.c (gdbscm_value_call): Likewise.
820         * infcall.c (push_dummy_code): Replace pointer + size parameters
821         with an array_view parameter.
822         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
823         adjust.
824         * infcall.h: Include "common/array-view.h".
825         (call_function_by_hand, call_function_by_hand_dummy): Replace
826         pointer + size parameters with an array_view parameter.
827         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
828         * linux-tdep.c (linux_infcall_mmap): Likewise.
829         * objc-lang.c (lookup_objc_class, lookup_child_selector)
830         (value_nsstring, print_object_command): Likewise.
831         * python/py-value.c (valpy_call): Likewise.
832         * rust-lang.c (rust_evaluate_funcall): Likewise.
833         * spu-tdep.c (flush_ea_cache): Likewise.
834         * valarith.c (value_x_binop, value_x_unop): Likewise.
835         * valops.c (value_allocate_space_in_inferior): Likewise.
836         * unittests/array-view-selftests.c (run_tests): Add
837         gdb::make_array_view test.
838
839 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
840
841         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
842         than a fixed size buffer.
843
844 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
845
846         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
847         and remove insertion of extra spaces in GDB's output.
848         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
849         Layout field into a temporary buffer, and then output it as a
850         string field.
851
852 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
853
854         * NEWS: Document the language choice done by
855         'info [types|functions|variables]|rbreak'.
856
857 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
858
859         * symtab.c (treg_matches_sym_type_name): Use
860         scoped_switch_to_sym_language_if_auto instead of local logic.
861         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
862         to switch to SYM language when language mode is auto.
863
864 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
865
866         * language.h (scoped_switch_to_sym_language_if_auto): New class.
867
868 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
869
870         * symtab.c (search_symbols): Properly check absence of type regexp
871         before entering the loop scanning the minimal symbols.
872
873 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
874
875         * s12z-tdep.c (s12z_extract_return_value): New function.
876         (inv_reg_perm) New array.
877         (s12z_return_value): Populate readbuf if non-null.
878
879 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
880
881         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
882         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
883         to MinGW fixed by Gnulib.
884         (O_NOINHERIT): Define if not defined.
885
886 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
887
888         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
889
890 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
891
892         * infrun.c (displaced_step_inferior_state) <next>: Remove.
893
894 2018-11-19  Tom Tromey  <tom@tromey.com>
895
896         * source.c (get_filename_and_charpos): Return void.
897
898 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
899
900         * skip.c (_initialize_step_skip): Fix "info skip" help.
901
902 2018-11-16  Tom Tromey  <tom@tromey.com>
903
904         PR rust/23625:
905         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
906
907 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
908
909         * infrun.c (displaced_step_inferior_states): Change type to
910         std::forward_list.
911         (get_displaced_stepping_state): Adjust.
912         (displaced_step_in_progress_any_inferior): Adjust.
913         (add_displaced_stepping_state): Adjust.
914         (remove_displaced_stepping_state): Adjust.
915
916 2018-11-18  Tom Tromey  <tom@tromey.com>
917
918         PR build/23814:
919         * target-delegates.c: Rebuild.
920         * ia64-linux-nat.c (class ia64_linux_nat_target)
921         <have_steppable_watchpoint>: Use override.  Return true, not 1.
922         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
923         "self" argument.
924         (ia64_linux_nat_target::low_new_thread): Rename.
925         (class ia64_linux_nat_target) <read_description>: Don't declare.
926         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
927         bool.
928
929 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
930
931         PR gdb/22736:
932         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
933         lang_struct_return code.
934
935 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
936
937         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
938         return_method.
939         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
940         * amd64-tdep.c (amd64_push_arguments): Likewise.
941         (amd64_push_dummy_call): Likewise.
942         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
943         * arc-tdep.c (arc_push_dummy_call): Likewise.
944         * arm-tdep.c (arm_push_dummy_call): Likewise.
945         * avr-tdep.c (avr_push_dummy_call): Likewise.
946         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
947         * cris-tdep.c (cris_push_dummy_call): Likewise.
948         * csky-tdep.c (csky_push_dummy_call): Likewise.
949         * frv-tdep.c (frv_push_dummy_call): Likewise.
950         * gdbarch.c: Regenerate.
951         * gdbarch.h: Regenerate.
952         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
953         return_method.
954         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
955         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
956         (hppa64_push_dummy_call): Likewise.
957         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
958         * i386-tdep.c (i386_push_dummy_call): Likewise.
959         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
960         * infcall.c (call_function_by_hand_dummy): Likewise.
961         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
962         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
963         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
964         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
965         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
966         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
967         * mep-tdep.c (mep_push_dummy_call): Likewise.
968         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
969         (mips_n32n64_push_dummy_call): Likewise.
970         (mips_o32_push_dummy_call): Likewise.
971         (mips_o64_push_dummy_call): Likewise.
972         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
973         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
974         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
975         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
976         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
977         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
978         (ppc64_sysv_abi_push_dummy_call): Likewise.
979         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
980         (ppc64_sysv_abi_push_dummy_call): Likewise.
981         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
982         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
983         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
984         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
985         * rx-tdep.c (rx_push_dummy_call): Likewise.
986         * s390-tdep.c (s390_push_dummy_call): Likewise.
987         * score-tdep.c (score_push_dummy_call): Likewise.
988         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
989         (sh_push_dummy_call_nofpu): Likewise.
990         * sparc-tdep.c (sparc32_store_arguments): Likewise.
991         (sparc32_push_dummy_call): Likewise.
992         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
993         (sparc64_push_dummy_call): Likewise.
994         * spu-tdep.c (spu_push_dummy_call): Likewise.
995         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
996         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
997         * v850-tdep.c (v850_push_dummy_call): Likewise.
998         * vax-tdep.c (vax_push_dummy_call): Likewise.
999         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
1000         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
1001
1002 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
1003
1004         * gdbarch.sh (enum function_call_return_method): Add enum.
1005         * gdbarch.h: Regenerate.
1006         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
1007
1008 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
1009
1010         * unittests/copy_bitwise-selftests.c: New file.
1011         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
1012         (selftests::copy_bitwise_tests): Delete, moving this code to
1013         unittests/copy_bitwise-selftests.c instead.
1014         (_initialize_utils): Do not register copy_bitwise tests.
1015         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1016         unittests/copy_bitwise-selftests.c.
1017
1018 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
1019
1020         * ada-lang.c (move_bits): Delete. Update all callers to use
1021         copy_bitwise instead.
1022         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
1023         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1024         Move from here to utils.c.
1025         (_initialize_dwarf2loc): Remove call to register copy_bitwise
1026         selftests.
1027         * utils.h (copy_bitwise): Add declaration.
1028         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
1029         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
1030         Moved here from dwarf2loc.c.
1031         (_initialize_utils): Register copy_bitwise selftests.
1032
1033 2018-11-14  Jim Wilson  <jimw@sifive.com>
1034
1035         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1036         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1037         then increment next_regnum if odd.
1038         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1039         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1040         function type.  Pass new arg to riscv_arg_location based on function
1041         type.
1042         (riscv_return_value): Pass new arg to riscv_arg_location.
1043
1044         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1045         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1046         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1047
1048         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1049         setting len.  New local align, set to max of arg align and xlen,
1050         and pass to first riscv_assign_stack_location call.
1051
1052 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1053
1054         * skip.c (complete_skip_number): New function.
1055         (_initialize_step_skip): Add completers to some skip commands.
1056
1057 2018-11-09  Tom Tromey  <tom@tromey.com>
1058
1059         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1060         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1061         <guesses>: Now a std::vector.
1062         (remote_g_packet_data_init, register_remote_g_packet_guess):
1063         Update.
1064         (remote_read_description_p): Update.  Return bool.
1065         (remote_target::read_description): Update.
1066         (struct remote_g_packet_guess): Add constructor.
1067
1068 2018-11-09  Tom Tromey  <tom@tromey.com>
1069
1070         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1071         move assignment operator.
1072         * psymtab.c (psymtab_to_fullname): Update.
1073         * source.h (open_source_file): Return scoped_fd.
1074         (find_and_open_source): Likewise.
1075         * source.c (open_source_file): Return scoped_fd.
1076         (get_filename_and_charpos): Update.
1077         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1078         (forward_search_command): Likewise.
1079         (reverse_search_command): Likewise.
1080         (find_and_open_source): Return scoped_fd.
1081         * tui/tui-source.c (tui_set_source_content): Update.  Use
1082         gdb_file_up.
1083
1084 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1085
1086         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1087         overflow.
1088
1089 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1090
1091         * configure: Regenerate.
1092
1093 2018-11-09  Tom de Vries  <tdevries@suse.de>
1094
1095         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1096         unconditionally, to set the language of the symbol.  Manage freeing
1097         returned pointer using gdb::unique_xmalloc_ptr.
1098
1099 2018-11-08  Tom Tromey  <tom@tromey.com>
1100
1101         * record.c (require_record_target): Upper-case "<TAB>".
1102
1103 2018-11-08  Tom Tromey  <tom@tromey.com>
1104
1105         * python/lib/gdb/command/pretty_printers.py
1106         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1107
1108 2018-11-08  Tom Tromey  <tom@tromey.com>
1109
1110         PR gdb/23555:
1111         PR gdb/23838:
1112         * target.h (target_supports_terminal_ours): Return bool.
1113         * target.c (target_supports_terminal_ours): Handle case where
1114         current_top_target returns nullptr.  Return bool.
1115
1116 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1117
1118         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1119         return the correct count for potential HFAs.
1120
1121 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1122
1123         * i387-tdep.c (i387_supply_xsave): Split handling of
1124         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1125         (i387_collect_xsave): Likewise.
1126
1127 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1128
1129         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1130         (riscv_frame_this_id): Catch errors thrown while building the
1131         frame cache, leave the frame id as the default, which is the outer
1132         frame id.
1133
1134 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1135
1136         * ada-lang.c (read_atcb): Only set task_info->called_task if
1137         task_info->state == Entry_Caller_Sleep.
1138         (print_ada_task_info): Do not check task_info->state before
1139         checking task_info->called_task.
1140         (info_task): Likewise.
1141
1142 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1143
1144         * ada-tasks.c (read_atcb): Clear task_info before computing
1145         the value of each of its fields.
1146
1147 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1148
1149         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1150         NULL before dereferencing it.
1151
1152 2018-11-06  Tom de Vries  <tdevries@suse.de>
1153
1154         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1155         program headers.
1156
1157 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1158
1159         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1160         so that it applies to uclinux as well.
1161
1162 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1163
1164         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1165         when on AAPCS.
1166
1167 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1168
1169         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1170         RISCV_CSR_SSTATUS_REGNUM.
1171
1172 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1173
1174         * source.c (open_source_file): Fix leak by transferring the
1175         current s->fullname to the unique_xmalloc_ptr fullname given
1176         to find_and_open_source.
1177
1178 2018-11-04  Tom Tromey  <tom@tromey.com>
1179
1180         * varobj.c (install_default_visualizer): Update.
1181         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1182         Return gdbpy_ref.
1183         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1184         (find_pretty_printer_from_progspace)
1185         (find_pretty_printer_from_gdb, find_pretty_printer)
1186         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1187         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1188         Update.
1189
1190 2018-11-04  Tom Tromey  <tom@tromey.com>
1191
1192         * python/python.c (gdbpy_parameter_value): Update.
1193         * python/python-internal.h (python_string_to_unicode)
1194         (python_string_to_target_python_string)
1195         (host_string_to_python_string): Return gdbpy_ref.
1196         * python/py-utils.c (python_string_to_unicode)
1197         (unicode_to_encoded_python_string)
1198         (unicode_to_target_python_string)
1199         (python_string_to_target_string)
1200         (python_string_to_target_python_string): Return gdbpy_ref.
1201         (python_string_to_host_string): Update.
1202         (host_string_to_python_string): Return gdbpy_ref.
1203         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1204         (stpy_fullname): Update.
1205         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1206         Update.
1207         * python/py-prettyprint.c (print_string_repr): Update.
1208         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1209         (objfpy_get_build_id): Update.
1210         * python/py-breakpoint.c (bppy_get_location)
1211         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1212         Update.
1213
1214 2018-11-04  Tom Tromey  <tom@tromey.com>
1215
1216         * python/python-internal.h (gdb_py_object_from_longest)
1217         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1218         * python/py-value.c (valpy_int): Update.
1219         * python/py-utils.c (gdb_py_object_from_longest): Return
1220         gdbpy_ref.
1221         (gdb_py_object_from_ulongest): Likewise.
1222         * python/py-type.c (typy_get_alignof): Update.
1223         * python/py-linetable.c (ltpy_get_all_source_lines)
1224         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1225         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1226
1227 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1228
1229         * ada-lang.c (_initialize_ada_language): Fix typo.
1230
1231 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1232
1233         * language.c (type): Remove.
1234         (_initialize_language): Remove assignment to type.
1235
1236 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1237
1238         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1239         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1240         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1241         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1242         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1243         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1244         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1245         and aarch64-ravenscar-thread.o.
1246         * NEWS: Add entry documenting Ravenscar tasking support
1247         on AArch64 ELF.
1248
1249 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1250
1251         * symtab.c (info_functions_command): Initialize quiet flag.
1252         * stack.c (info_args_command): Likewise.
1253
1254 2018-11-01  Jim Wilson  <jimw@sifive.com>
1255
1256         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1257         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1258         debugging messages.
1259
1260 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1261
1262         * ada-lang.c (ada_watch_location_expression): New function.
1263         (ada_language_defn): Set la_watch_location_expression to
1264         ada_watch_location_expression.
1265
1266 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1267
1268         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1269
1270 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1271
1272         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1273         shifting.
1274
1275 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1276             Joel Brobecker  <brobecker@adacore.com>
1277
1278         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1279         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1280         * arm-pikeos-tdep.c: New file.
1281         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1282         embedded system.
1283         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1284
1285 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1286
1287         * common/pathstuff.c (get_standard_temp_dir): New.
1288         * common/pathstuff.h (get_standard_temp_dir): New.
1289         * config.in: Re-generate.
1290         * configure: Re-generate.
1291         * configure.ac: Don't check for mkdtemp.
1292         * gnulib/aclocal-m4-deps.mk: Re-generate.
1293         * gnulib/aclocal.m4: Re-generate.
1294         * gnulib/config.in: Re-generate.
1295         * gnulib/configure: Re-generate.
1296         * gnulib/import/Makefile.am: Re-generate.
1297         * gnulib/import/Makefile.in: Re-generate.
1298         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1299         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1300         * gnulib/import/m4/mkdtemp.m4: New file.
1301         * gnulib/import/mkdtemp.c: New file.
1302         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1303         Add mkdtemp module.
1304         * unittests/mkdir-recursive-selftests.c (test): Use
1305         get_standard_temp_dir.
1306         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1307         ifdef.
1308         * compile/compile.c (get_compile_file_tempdir): Likewise.
1309
1310 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1311
1312         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1313         (SIG_FRAME_LR_OFFSET64): New define.
1314         (SIG_FRAME_FP_OFFSET64): New define.
1315         (aix_sighandle_frame_cache): New Function.
1316         (aix_sighandle_frame_this_id): New Function.
1317         (aix_sighandle_frame_prev_register): New Function.
1318         (aix_sighandle_frame_sniffer): New Function.
1319         (aix_sighandle_frame_unwind): New global variable.
1320         (rs6000_aix_init_osabi): Install new frame unwinder.
1321
1322 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1323
1324         PR gdb/23835
1325         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1326         already defined.
1327
1328 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1329
1330         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1331
1332 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1333
1334         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1335         (producer_is_icc): New function.
1336         (check_producer): Set producer_is_icc field on dwarf2_cu.
1337         (dwarf2_init_integer_type): New function.
1338         (read_base_type): Call dwarf2_init_integer_type instead of
1339         init_integer_type in all cases.
1340         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1341         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1342         LEN is greater than 0.
1343
1344 2018-10-30  Tom Tromey  <tom@tromey.com>
1345
1346         * main.c (captured_main_1): Check return value of bfd_init.
1347
1348 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1349
1350         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1351         Adjust comments.
1352
1353 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1354
1355         * procfs.c: Include common/pathstuff.h.
1356
1357 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1358
1359         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1360         Add missing braces.  No functional change.
1361
1362 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1363
1364         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1365         to report a bad option and fix indentation.
1366         * demangle.c (demangle_command): Use report_unrecognized_option_error
1367         to report a bad option and correctly report the bad option.
1368
1369 2018-10-27  Tom Tromey  <tom@tromey.com>
1370
1371         PR cli/23364:
1372         * darwin-nat.c (copied_shell): New global.
1373         (may_have_sip): Rename from should_disable_startup_with_shell.
1374         (copy_shell_to_cache, maybe_cache_shell): New functions.
1375         (darwin_nat_target::create_inferior): Update.  Use
1376         copied_shell.
1377
1378 2018-10-27  Tom Tromey  <tom@tromey.com>
1379
1380         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1381         (run_tests): Call test_to_file.
1382         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1383         temporary files.
1384         * common/scoped_fd.h (scoped_fd::to_file): New method.
1385
1386 2018-10-27  Tom Tromey  <tom@tromey.com>
1387
1388         * unittests/scoped_mmap-selftests.c (test_normal): Use
1389         gdb_mkostemp_cloexec.
1390         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1391         Use gdb_mkostemp_cloexec.
1392         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1393         gnulib/config.in, gnulib/configure,
1394         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1395         gnulib/import/m4/gnulib-cache.m4,
1396         gnulib/import/m4/gnulib-comp.m4: Update.
1397         * gnulib/import/m4/mkostemp.m4: New file.
1398         * gnulib/import/m4/mkstemp.m4: Remove.
1399         * gnulib/import/mkostemp.c: New file.
1400         * gnulib/import/mkstemp.m4: Remove.
1401         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1402         mkstemp, add mkostemp.  Apply new patch.
1403         * gnulib/import/stdlib.in.h: Apply patch.
1404         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1405         New file.
1406         * dwarf-index-write.c (write_psymtabs_to_index): Use
1407         gdb_mkostemp_cloexec.
1408         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1409
1410 2018-10-27  Tom Tromey  <tom@tromey.com>
1411
1412         * unittests/mkdir-recursive-selftests.c: New file.
1413         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1414         unittests/mkdir-recursive-selftests.c.
1415         * dwarf-index-cache.c (mkdir_recursive): Move to
1416         common/filestuff.c.
1417         (index_cache::store): Check return value of mkdir_recursive.
1418         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1419         (_initialize_index_cache): Don't register test.
1420         * common/filestuff.h (mkdir_recursive): Declare.
1421         * common/filestuff.c (mkdir_recursive): Move from
1422         dwarf-index-cache.c.  Return bool.
1423
1424 2018-10-27  Tom Tromey  <tom@tromey.com>
1425
1426         * dwarf-index-write.c (write_psymtabs_to_index): Move
1427         make_temp_filename to common/pathstuff.c.
1428         * common/pathstuff.h (make_temp_filename): Declare.
1429         * common/pathstuff.c (make_temp_filename): New function, moved
1430         from dwarf-index-write.c.
1431
1432 2018-10-27  Tom Tromey  <tom@tromey.com>
1433
1434         * procfs.c (procfs_target::create_inferior): Use get_shell.
1435         * cli/cli-cmds.c (shell_escape): Use get_shell.
1436         * windows-nat.c (windows_nat_target::create_inferior): Use
1437         get_shell.
1438         * common/pathstuff.c (get_shell): New function.
1439         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1440         (fork_inferior): Use get_shell.
1441         * common/pathstuff.h (get_shell): Declare.
1442
1443 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1444
1445         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1446
1447 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1448
1449         * stack.c (print_variable_and_value_data): Add preg and treg.
1450         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1451         and update callers.
1452         (print_frame_arg_vars): Likewise.
1453         (prepare_reg): New function.
1454         (info_locals_command): Extract info print args and use them.
1455         (info_args_command): Likewise.
1456         (_initialize_stack): Modify on-line help.
1457         * symtab.c (treg_matches_sym_type_name): New function.
1458         (search_symbols): New arg t_regexp.
1459         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1460         (info_variables_command): Extract info print args and use them.
1461         (info_functions_command): Likewise.
1462         (info_types_command): Update call to symtab_symbol_info.
1463         (_initialize_symtab): Modify on-line help.
1464         * symtab.h (treg_matches_sym_type_name): New function.
1465         (search_symbols): New t_regexp arg.
1466
1467 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1468
1469         * cli-utils.c (extract_arg_maybe_quoted): New function.
1470         (extract_info_print_args): New function.
1471         (info_print_args_help): New function.
1472         (report_unrecognized_option_error): New function.
1473         * cli-utils.h (extract_arg_maybe_quoted): New function.
1474         (extract_info_print_args): New function.
1475         (info_print_args_help): New function.
1476         (report_unrecognized_option_error): New function.
1477
1478 2018-10-26  Tom Tromey  <tom@tromey.com>
1479
1480         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1481         (compute_compunit_symtab_includes): Update.
1482         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1483         (compunit_symtab_ptr): Likewise.
1484
1485 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1486
1487         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1488         default_print_auxv_entry for specific tag values.
1489
1490 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1491
1492         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1493
1494 2018-10-26  Jim Wilson  <jimw@sifive.com>
1495
1496         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1497         (riscv_linux_sigframe_init): Declare.
1498         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1499         (riscv_linux_sigframe): New.
1500         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1501         (riscv_linux_sigframe_init): Define.
1502         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1503
1504         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1505         (riscv_isa_flen): Likewise.  Drop static.
1506         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1507         (riscv_isa_flen): Likewise.  Declare.
1508
1509 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1510             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1511
1512         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1513         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1514         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1515         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1516         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1517         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1518         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1519         Define.
1520         (struct ppc_linux_features) <htm>: New field.
1521         (ppc_linux_no_features): Add initializer for htm field.
1522         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1523         new tdescs.
1524         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1525         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1526         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1527         Define if not already defined.
1528         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1529         and rs6000/powerpc-isa207-htm-vsx64l.
1530         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1531         rs6000/powerpc-isa207-htm-vsx64l.xml.
1532         * features/rs6000/power-htm-spr.xml: New file.
1533         * features/rs6000/power-htm-core.xml: New file.
1534         * features/rs6000/power64-htm-core.xml: New file.
1535         * features/rs6000/power-htm-fpu.xml: New file.
1536         * features/rs6000/power-htm-altivec.xml: New file.
1537         * features/rs6000/power-htm-vsx.xml: New file.
1538         * features/rs6000/power-htm-ppr.xml: New file.
1539         * features/rs6000/power-htm-dscr.xml: New file.
1540         * features/rs6000/power-htm-tar.xml: New file.
1541         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1542         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1543         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1544         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1545         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1546         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1547         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1548         fetch_regset with HTM regsets.
1549         (store_register, store_ppc_registers): Call store_regset with HTM
1550         regsets.
1551         (ppc_linux_nat_target::read_description): Set htm field in the
1552         features struct if needed.
1553         * ppc-linux-tdep.c: Include
1554         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1555         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1556         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1557         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1558         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1559         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1560         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1561         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1562         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1563         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1564         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1565         (ppc32_linux_ctarregset): New globals.
1566         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1567         (ppc_linux_collect_core_cpgrregset): New function.
1568         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1569         regsets.
1570         (ppc_linux_core_read_description): Check if the tm spr section is
1571         present and set htm in the features struct.
1572         (_initialize_ppc_linux_tdep): Call
1573         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1574         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1575         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1576         Declare.
1577         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1578         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1579         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1580         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1581         New fields.
1582         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1583         Likewise.
1584         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1585         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1586         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1587         New enum fields.
1588         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1589         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1590         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1591         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1592         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1593         <PPC_CTAR_REGNUM>: Likewise.
1594         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1595         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1596         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1597         (IS_CEFP_PSEUDOREG): Define.
1598         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1599         registers.  Return names for the checkpointed DFP, VSX, and EFP
1600         pseudo registers.
1601         (rs6000_pseudo_register_type): Remove initial assert and raise an
1602         internal error in the else clause instead.  Return types for the
1603         checkpointed DFP, VSX, and EFP pseudo registers.
1604         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1605         checkpointed DFP pseudo registers.
1606         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1607         checkpointed VSX pseudo registers.
1608         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1609         from efpr_pseudo_register_read and
1610         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1611         registers.
1612         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1613         Handle checkpointed DFP, VSX, and EFP registers.
1614         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1615         (efp_ax_pseudo_register_collect): New functions.
1616         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1617         register logic to new functions.  Handle checkpointed DFP, VSX,
1618         and EFP pseudo registers.
1619         (rs6000_gdbarch_init): Look for and validate the htm features.
1620         Include checkpointed DFP, VSX and EFP pseudo-registers.
1621         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1622         HTM registers.
1623
1624 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1625
1626         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1627         without altivec or fpu.
1628
1629 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1630             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1631
1632         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1633         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1634         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1635         Define if not already defined.
1636         * features/rs6000/power-ebb.xml: New file.
1637         * features/rs6000/power-linux-pmu.xml: New file.
1638         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1639         features.
1640         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1641         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1642         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1643         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1644         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1645         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1646         fetch_regset with ebb and pmu regsets.
1647         (store_register, store_ppc_registers): Call store_regset with ebb
1648         and pmu regsets.
1649         (ppc_linux_nat_target::read_description): Set isa207 field in the
1650         features struct if ebb and pmu are avaiable.
1651         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1652         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1653         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1654         and pmu regsets.
1655         (ppc_linux_core_read_description): Check if the pmu section is
1656         present and set isa207 in the features struct.
1657         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1658         (ppc32_linux_pmuregset): Declare.
1659         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1660         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1661         <ppc_sier_regnum>: New field.
1662         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1663         New enum values.
1664         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1665         values.
1666         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1667         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1668         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1669         ebb and pmu features.
1670
1671 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1672             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1673
1674         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1675         (tdesc_powerpc_isa207_vsx64l): Declare.
1676         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1677         (struct ppc_linux_features) <isa207>: New field.
1678         (ppc_linux_no_features): Add initializer for isa207 field.
1679         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1680         new tdescs.
1681         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1682         (NT_PPC_TAR): Define if not already defined.
1683         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1684         rs6000/powerpc-isa207-vsx64l.
1685         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1686         rs6000/powerpc-isa207-vsx64l.xml.
1687         * features/rs6000/power-tar.xml: New file.
1688         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1689         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1690         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1691         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1692         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1693         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1694         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1695         fetch_regset with the TAR regset.
1696         (store_register, store_ppc_registers): Call store_regset with the
1697         TAR regset.
1698         (ppc_linux_nat_target::read_description): Set isa207 field in the
1699         features struct if needed.
1700         * ppc-linux-tdep.c: Include
1701         features/rs6000/powerpc-isa207-vsx32l.c and
1702         features/rs6000/powerpc-isa207-vsx64l.c.
1703         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1704         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1705         regset.
1706         (ppc_linux_core_read_description): Check if the tar section is
1707         present and set isa207 in the features struct.
1708         (_initialize_ppc_linux_tdep): Call
1709         initialize_tdesc_powerpc_isa207_vsx32l and
1710         initialize_tdesc_powerpc_isa207_vsx64l.
1711         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1712         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1713         (enum) <PPC_TAR_REGNUM>: New enum value.
1714         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1715         feature.
1716         (ppc_process_record_op31): Record changes to TAR.
1717
1718 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1719             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1720
1721         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1722         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1723         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1724         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1725         (struct ppc_linux_features) <ppr_dscr>: New field.
1726         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1727         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1728         new tdescs.
1729         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1730         Define if not already defined.
1731         * features/Makefile (WHICH): Add
1732         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1733         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1734         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1735         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1736         * features/rs6000/power-dscr.xml: New file.
1737         * features/rs6000/power-ppr.xml: New file.
1738         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1739         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1740         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1741         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1742         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1743         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1744         * ppc-linux-nat.c: Include <sys/uio.h>.
1745         (fetch_regset, store_regset, check_regset): New functions.
1746         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1747         DSCR and PPR regsets.
1748         (store_register, store_ppc_registers): Call store_regset with
1749         DSCR and PPR regsets.
1750         (ppc_linux_get_hwcap2): New function.
1751         (ppc_linux_nat_target::read_description): Call
1752         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1753         features struct if needed.
1754         * ppc-linux-tdep.c: Include
1755         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1756         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1757         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1758         (ppc32_linux_dscrregset): New globals.
1759         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1760         and dscr regsets.
1761         (ppc_linux_core_read_description): Check if the ppr and dscr
1762         sections are present and set ppr_dscr in the features struct.
1763         (_initialize_ppc_linux_tdep): Call
1764         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1765         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1766         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1767         (ppc32_linux_dscrregset): Declare.
1768         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1769         <ppc_dscr_regnum>: New field.
1770         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1771         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1772         and dscr features.
1773         (ppc_process_record_op31): Record changes to PPR and DSCR.
1774
1775 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1776
1777         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1778         second initializer line for the have_* variables.  Initialize
1779         have_fpu to 0 instead of 1.
1780
1781 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1782
1783         * arch/ppc-linux-common.c (ppc_linux_match_description):
1784         Parenthesize tdesc assignements and indent them properly.
1785
1786 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1787
1788         * ppc-linux-nat.c (fetch_register): Change if statement to else
1789         if.
1790         (store_register): Likewise.
1791
1792 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1793
1794         * rs6000-tdep.c: Remove reggroups.h include.
1795         (rs6000_pseudo_register_reggroup_p): Remove.
1796         (rs6000_gdbarch_init): Remove call to
1797         set_tdesc_pseudo_register_reggroup_p.
1798
1799 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1800
1801         * reggroups.c (default_register_reggroup_p): Return true for
1802         decfloat registers and float_reggroup.
1803
1804 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1805
1806         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1807         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1808         ppc_linux_collect_vrregset by regcache_collect_regset.
1809
1810 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1811
1812         * linux-tdep.c (linux_collect_regset_section_cb): Use
1813         std::vector<gdb_byte> instead of char * and malloc for buf.
1814         Remove xfree.
1815
1816 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1817
1818         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1819         symtab_start instead of always using language_unknown.
1820
1821 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1822
1823         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1824         READ_P parameter, catch and ignore register access errors from
1825         either the old or new MISA location.
1826         (riscv_has_feature): Update call to riscv_read_misa_reg.
1827
1828 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1829
1830         * python/py-function.c (convert_values_to_python): Return
1831         gdbpy_ref<>.  Add header comment.
1832         (fnpy_call): Adjust.
1833
1834 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1835
1836         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1837         (cmdpy_completer_handle_brkchars): Adjust.
1838         (cmdpy_completer): Adjust.
1839
1840 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1841
1842         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1843         Pass correct regnum to raw_supply_zeroed.
1844
1845 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1846
1847         * regcache.c (cooked_read_test): Add CSKY to the list of
1848         architectures with a save_reggroup
1849
1850 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1851
1852         PR gdb/23368
1853         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1854         transfer terminal state from old new new inferior.
1855         * terminal.h (swap_terminal_info): New function.
1856         * inflow.c (swap_terminal_info): New function.
1857
1858 2018-10-23  Tom Tromey  <tom@tromey.com>
1859
1860         * record-btrace.c (get_thread_current_frame_id): Rename from
1861         get_thread_current_frame.  Return a frame_id.
1862         (record_btrace_start_replaying): Update.
1863
1864 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1865
1866         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1867         for CSRs.
1868
1869 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1870
1871         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1872         have_nonsteppable_watchpoint attribute to 1.
1873
1874 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1875
1876         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1877         register names.
1878         (struct register_alias): Rename to...
1879         (struct riscv_register_alias): ...this, and update comment.
1880         (riscv_register_aliases): Update type, and alias names.  Remove
1881         CSR names from this list.
1882         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1883         register names.  Add an extra assertion.
1884         (riscv_is_regnum_a_named_csr): New function.
1885         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1886
1887 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1888
1889         * configure.tgt: Add configuration for s12z.
1890         * s12z-tdep.c:  New file.
1891         * NEWS: Mention new target.
1892
1893 2018-10-22  Jim Wilson  <jimw@sifive.com>
1894
1895         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1896         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1897
1898         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1899         (riscv_register_type): Use them.
1900         (riscv_print_one_register_info): Handle union of floats same as float.
1901         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1902         riscv_fpreg_q_type fields.
1903
1904 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1905
1906         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1907         * gdbarch.h: Re-generate.
1908         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1909         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1910         * eval.c (evaluate_subexp_standard): Likewise.
1911         * findvar.c (value_of_register): Likewise.
1912         (value_of_register_lazy): Likewise.
1913         (address_from_register): Likewise.
1914         * frame.c (get_frame_register_bytes): Likewise.
1915         * gdbarch-selftests.c (register_to_value_test): Likewise.
1916         * h8300-tdep.c (h8300_register_type): Likewise.
1917         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1918         (i386_svr4_reg_to_regnum): Likewise.
1919         * infcmd.c (default_print_registers_info): Likewise.
1920         (registers_info): Likewise.
1921         (print_vector_info): Likewise.
1922         (default_print_float_info): Likewise.
1923         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1924         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1925         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1926         (mi_cmd_data_list_changed_registers): Likewise.
1927         (mi_cmd_data_list_register_values): Likewise.
1928         (mi_cmd_data_write_register_values): Likewise.
1929         (mi_cmd_trace_frame_collected): Likewise.
1930         * mips-tdep.c (print_gp_register_row): Likewise.
1931         (mips_print_registers_info): Likewise.
1932         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1933         * regcache.c (init_regcache_descr): Likewise.
1934         (register_size): Likewise.
1935         (register_dump::dump): Likewise.
1936         (cooked_read_test): Likewise.
1937         (cooked_write_test): Likewise.
1938         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1939         (rs6000_gdbarch_init): Likewise.
1940         * stabsread.c (stab_reg_to_regnum): Likewise.
1941         * stack.c (info_frame_command): Likewise.
1942         * target-descriptions.c (tdesc_register_name): Likewise.
1943         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1944         * tui/tui-regs.c (tui_show_register_group): Likewise.
1945         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1946         (user_reg_map_regnum_to_name): Likewise.
1947         (value_of_user_reg): Likewise.
1948         (maintenance_print_user_registers): Likewise.
1949         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1950         (xtensa_register_name): Likewise.
1951         (xtensa_register_type): Likewise.
1952         (xtensa_reg_to_regnum): Likewise.
1953         (xtensa_pseudo_register_read): Likewise.
1954         (xtensa_pseudo_register_write): Likewise.
1955
1956 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1957
1958         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1959         correctly-sized buffer with raw_read.
1960         (amd64_pseudo_register_write): Use correctly-sized buffer for
1961         raw_read/raw_write.
1962
1963 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1964
1965         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1966         in add_prefix_cmd of set print type.
1967
1968 2018-10-19  Tom Tromey  <tom@tromey.com>
1969
1970         PR tui/18388:
1971         * NEWS: Mention tabset deprecation.
1972         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1973         (update_tab_width): New function.
1974         (tui_set_tab_width, tui_show_tab_width): New functions.
1975         (tui_set_tab_width_command): Use update_tab_width.
1976         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1977         Add new "set tui tab-width" command.
1978         * tui/tui-source.c (tui_set_source_content): Update.
1979         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1980         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1981         Don't declare.
1982         (tui_tab_width): Declare.
1983         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1984         (tui_set_default_tab_len): Remove.
1985
1986 2018-10-19  Tom Tromey  <tom@tromey.com>
1987
1988         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1989         (key_is_backspace, tui_getc): Don't declare.
1990         * tui/tui-io.c (key_is_start_sequence): Now static.
1991         (key_is_end_sequence, key_is_backspace): Remove.
1992         (tui_getc): Now static.
1993
1994 2018-10-19  Tom Tromey  <tom@tromey.com>
1995
1996         * symfile.c (reread_symbols): Clear "static_links".
1997
1998 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1999
2000         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
2001         define.
2002         (aarch64_linux_sigframe_init): Extra boundary checks.
2003
2004 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
2005
2006         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
2007         the possibly non-existent tdesc type 'vec128', but the type of raw
2008         register v16 instead.
2009
2010 2018-10-19  Gary Benson <gbenson@redhat.com>
2011
2012         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
2013
2014 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
2015
2016         PR cli/23785
2017         * cli/cli-dump.c (restore_binary_file): Check if "file" is
2018         NULL.
2019
2020 2018-10-17  Paul Koning  <paul_koning@dell.com>
2021
2022         * charset.c (convert_between_encodings): Fix unsigned overflow.
2023
2024 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
2025
2026         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
2027         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
2028         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
2029         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2030         New functions.
2031         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
2032         and fbsd_info_proc_mappings_header.
2033         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
2034         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
2035         New.
2036
2037 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2038
2039         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2040         Solaris Maintainer.
2041
2042 2018-10-15  Tom Tromey  <tom@tromey.com>
2043
2044         * tui/tui.c (strcat_to_buf): Remove casts.
2045         * tui/tui-winsource.c (tui_show_source_line)
2046         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2047         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2048         * tui/tui-windata.c (tui_first_data_item_displayed)
2049         (tui_delete_data_content_windows, tui_erase_data_content)
2050         (tui_display_all_data, tui_display_data_from)
2051         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2052         * tui/tui-win.c (tui_set_win_height)
2053         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2054         casts.
2055         * tui/tui-win.c (tui_resize_all): Remove casts.
2056         (tui_scroll_backward_command, tui_set_focus)
2057         (tui_set_tab_width_command): Likewise.
2058         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2059         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2060         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2061         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2062         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2063         Remove casts.
2064
2065 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2066
2067         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2068         AArch64/ARM maintainer.
2069
2070 2018-10-11  Gary Benson <gbenson@redhat.com>
2071
2072         * interps.h (interp::m_name): Make private and mutable.
2073         * interps.c (interp::~interp): Free m_name.
2074
2075 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2076             Simon Marchi <simark@simark.ca>
2077
2078         * README (`configure' options): Add documentation for new
2079         "--enable-unit-tests" option.
2080         * acinclude.m4: Include "selftest.m4".
2081         * configure: Regenerate.
2082         * configure.ac: Use "GDB_AC_SELFTEST".
2083         * maint.c (maintenance_selftest): Update message informing
2084         that selftests have been disabled.
2085         (maintenance_info_selftests): Likewise.
2086         * selftest.m4: New file.
2087
2088 2018-10-10  Gary Benson <gbenson@redhat.com>
2089
2090         * remote.c (remote_target::remote_send_printf): Add
2091         missing va_end found by Coverity.
2092
2093 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2094
2095         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2096
2097 2018-10-09  Tom Tromey  <tom@tromey.com>
2098
2099         * configure: Rebuild.
2100         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2101         * NEWS: Update --enable-ubsan documentation.
2102
2103 2018-10-09  Gary Benson <gbenson@redhat.com>
2104
2105         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2106         found by Coverity.
2107
2108 2018-10-08  Tom Tromey  <tom@tromey.com>
2109
2110         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2111         variable.
2112         (riscv_fbsd_init_abi): Likewise.
2113
2114 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2115         * valops.c (value_struct_elt_for_reference): Rename local variable
2116         to work around the shadowing a previous local warning.
2117
2118 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2119
2120         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2121         * NEWS: Mention new FreeBSD/riscv native configuration.
2122         * configure.host: Add riscv*-*-freebsd*.
2123         * configure.nat: Likewise.
2124         * riscv-fbsd-nat.c: New file.
2125
2126 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2127
2128         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2129         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2130         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2131         * NEWS: Mention new FreeBSD/riscv target.
2132         * configure.tgt: Add riscv*-*-freebsd*.
2133         * riscv-fbsd-tdep.c: New file.
2134         * riscv-fbsd-tdep.h: New file.
2135
2136 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2137
2138         * regcache.h (struct regcache_map_entry): Note that this type can
2139         be used with traditional frame caches.
2140         * trad-frame.c (trad_frame_set_reg_regmap): New.
2141         * trad-frame.h (trad_frame_set_reg_regmap): New.
2142
2143 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2144
2145         PR c++/16841
2146         * valops.c (get_virtual_base_offset): New function.
2147         (value_struct_elt_for_reference): Use it to get virtual base offset
2148         and add it in calculating class member address.
2149
2150 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2151
2152         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2153         (check_producer): Check if the producer is codewarrior.
2154         (producer_is_codewarrior): New function.
2155         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2156         produced by codewarrior.
2157         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2158
2159 2018-10-06  Tom Tromey  <tom@tromey.com>
2160
2161         PR python/19399:
2162         * python/py-inferior.c: Add "architecture" entry.
2163         (infpy_architecture): New function.
2164
2165 2018-10-06  Tom Tromey  <tom@tromey.com>
2166
2167         PR python/21765:
2168         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2169         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2170         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2171         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2172
2173 2018-10-06  Tom Tromey  <tom@tromey.com>
2174
2175         PR build/17077:
2176         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2177         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2178         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2179         #include.
2180
2181 2018-10-06  Tom Tromey  <tom@tromey.com>
2182
2183         * python/py-breakpoint.c (bppy_get_location): Handle a
2184         bp_breakpoint without a location.
2185
2186 2018-10-06  Tom Tromey  <tom@tromey.com>
2187
2188         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2189         (_RegEx): Reformat help text.
2190         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2191         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2192         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2193         text.
2194         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2195         (EnableXMethod, DisableXMethod): Remove help indentation.
2196         Capitalize meta-syntactic variables.
2197         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2198         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2199         Capitalize meta-syntactic variables.
2200         * python/lib/gdb/command/explore.py (ExploreCommand)
2201         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2202         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2203         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2204         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2205         Remove help indentation.
2206         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2207         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2208         (DisableFrameFilter, SetFrameFilterPriority)
2209         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2210
2211 2018-10-06  Tom Tromey  <tom@tromey.com>
2212
2213         PR tui/28819:
2214         * tui/tui-io.c (gdb_wgetch): New function.
2215         (tui_mld_getc, tui_getc): Use it.
2216
2217 2018-10-05  Tom Tromey  <tom@tromey.com>
2218
2219         * sol-thread.c (sol_thread_target::wait): Rename inner
2220         "save_ptid".
2221
2222 2018-10-04  Tom Tromey  <tom@tromey.com>
2223
2224         * configure: Rebuild.
2225         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2226
2227 2018-10-04  Tom Tromey  <tom@tromey.com>
2228
2229         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2230         declaration of "block".
2231
2232 2018-10-04  Tom Tromey  <tom@tromey.com>
2233
2234         * common/filestuff.c (fdwalk): Remove inner declaration of
2235         "result".
2236
2237 2018-10-04  Tom Tromey  <tom@tromey.com>
2238
2239         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2240         "structs_addr" and hoist declaration.
2241
2242 2018-10-04  Tom Tromey  <tom@tromey.com>
2243
2244         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2245         variable "size".
2246
2247 2018-10-04  Tom Tromey  <tom@tromey.com>
2248
2249         * mdebugread.c (parse_partial_symbols): Use std::string.
2250
2251 2018-10-04  Tom Tromey  <tom@tromey.com>
2252
2253         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2254         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2255         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2256         header.
2257         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2258         more inner scope.
2259         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2260         * varobj.c (varobj_update): Rename inner "newobj",
2261         "type_changed".
2262         * valprint.c (generic_emit_char): Rename inner "buf".
2263         * valops.c (find_overload_match): Rename inner "temp".
2264         (value_struct_elt_for_reference): Declare "v" in more inner
2265         scope.
2266         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2267         * unittests/array-view-selftests.c (run_tests): Rename inner
2268         "vec".
2269         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2270         header.
2271         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2272         "tsv" in more inner scope.
2273         (print_one_static_tracepoint_marker): Rename inner
2274         "tuple_emitter".
2275         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2276         (tic6x_push_dummy_call): Don't redeclare "addr".
2277         * target-float.c: Declare "dto" lower.
2278         * symtab.c (lookup_local_symbol): Rename inner "sym".
2279         (find_pc_sect_line): Rename inner "pc".
2280         * stack.c (print_frame): Don't redeclare "gdbarch".
2281         (return_command): Rename inner "gdbarch".
2282         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2283         "sp".
2284         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2285         header.
2286         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2287         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2288         scope.
2289         * remote.c (remote_target::update_thread_list): Don't redeclare
2290         "tp".
2291         (remote_target::process_initial_stop_replies): Rename inner
2292         "thread".
2293         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2294         (remote_target::wait_as): Don't redeclare "stop_reply".
2295         (remote_target::get_thread_local_address): Rename inner
2296         "result".
2297         (remote_target::get_tib_address): Likewise.
2298
2299         * regcache.c (cooked_read_test): Rename "regnum".
2300         * record-btrace.c (cmd_record_btrace_start): Rename inner
2301         "exception".
2302         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2303         loop header.
2304         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2305         header.
2306         (ppu2spu_sniffer): Rename inner "buf".
2307         * parse.c (operator_check_standard): Rename inner "type",
2308         "objfile".
2309         * p-valprint.c (pascal_val_print): Introduce new scope for
2310         "low_bound", "high_bound".
2311         * p-exp.y (yylex): Declare "i" in loop header.
2312         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2313         Lower declaration of "s".
2314         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2315         header.
2316         (nios2_push_dummy_call): Rename "len".
2317         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2318         "buf".
2319         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2320         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2321         (linux_xfer_osdata_modules): Likewise.
2322         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2323         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2324         (mips_o64_push_dummy_call): Likewise.
2325         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2326         "op".
2327         * mi/mi-main.c (list_available_thread_groups): Rename inner
2328         "tuple_emitter".
2329         (mi_cmd_data_read_memory): Rename inner "opts".
2330         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2331         "tuple_emitter".
2332         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2333         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2334         more inner scope.
2335         (parse_partial_symbols): Rename inner "pst", "p", "name"
2336         * main.c (captured_main_1): Rename inner "i"s.
2337         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2338         "oso2".
2339         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2340         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2341         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2342         (handle_signal_stop): Rename inner "gdbarch".
2343         (handle_command): Declare "signum" in loop header.
2344         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2345         "status".
2346         (examine_prologue): Rename inner "sol" and "sof".
2347         (ia64_extract_return_value): Rename inner "val".  Declare another
2348         "val" in a more inner scope.
2349         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2350         inner scope.
2351         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2352         "except".
2353         * findvar.c (default_read_var_value): Don't redeclare "addr".
2354         * f-exp.y (yylex): Declare "i" in loop header.
2355         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2356         Rename inner "type", "expect_type".
2357         (evaluate_subexp_for_sizeof): Rename inner "pc".
2358         * elfread.c (elf_symfile_read): Rename inner "abfd".
2359         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2360         "bytes_read".
2361         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2362         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2363         (dwarf_decode_line_header): Rename inner "lh".
2364         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2365         "offset".  Declare "i" in loop header.
2366         (disassemble_dwarf_expression): Rename inner "addr_size".
2367         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2368         inner "result".
2369         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2370         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2371         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2372         "inner_list_emitter".
2373         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2374         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2375         declaration in a block.
2376         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2377         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2378         "obstack_final_size".
2379         * cp-support.c (inspect_type): Declare "i" in loop header.
2380         * compile/compile.c (compile_instance::insert_symbol_error):
2381         Rename inner "e".
2382         * common/agent.c (agent_run_command): Remove inner "ret"
2383         declaration.
2384         * coffread.c (coff_symfile_read): Rename inner "name".
2385         (coff_symfile_read): Rename inner "abfd".
2386         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2387         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2388         "high".
2389         * c-exp.y (lex_one_token): Move "len" declaration lower.
2390         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2391         "gdbarch".
2392         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2393         "b".
2394         (watch_command_1): Declare "mark" later.
2395         (clear_command): Don't shadow "a" or "b".
2396         (delete_command): Rename inner "b".
2397         (delete_trace_command): Likewise.
2398         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2399         "op".
2400         (arm_gdbarch_init): Remove inner "e_flags".
2401         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2402         "offset" in inner blocks.
2403
2404 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2405
2406         * dwarf-index-write.c (file_write): Don't write if the vector is
2407         empty.
2408
2409 2018-10-05  Tom de Vries  <tdevries@suse.de>
2410
2411         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2412         PyArg_ParseTuple call.
2413
2414 2018-10-05  Tom de Vries  <tdevries@suse.de>
2415
2416         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2417         PyArg_ParseTuple call.
2418
2419 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2420
2421         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2422         to avoid exceeding 80 characters per line limit.
2423
2424 2018-10-04  Tom Tromey  <tom@tromey.com>
2425
2426         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2427         (reread_symbols): Update.
2428         * complaints.h (clear_complaints): Remove argument.
2429         * complaints.c (enum complaint_series): Remove.
2430         (series): Remove global.
2431         (complaint_internal): Update.
2432         (clear_complaints): Remove argument.
2433
2434 2018-10-04  Tom Tromey  <tom@tromey.com>
2435
2436         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2437         debugging symbols" message if there is a separate debug objfile.
2438
2439 2018-10-04  Tom Tromey  <tom@tromey.com>
2440
2441         PR cli/19551:
2442         * symfile.c (symbol_file_add_with_addrs): Update output.
2443         * psymtab.c (require_partial_symbols): Update output.
2444
2445 2018-10-04  Tom Tromey  <tom@tromey.com>
2446
2447         PR cli/22234:
2448         * complaints.c: Emit \n.
2449
2450 2018-10-04  Tom Tromey  <tom@tromey.com>
2451
2452         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2453         (separate_debug_file_exists, find_separate_debug_file)
2454         (add_symbol_file_command, reread_symbols, allocate_symtab)
2455         (allocate_compunit_symtab): Use filtered printing, not
2456         unfiltered.
2457         * psymtab.c (require_partial_symbols, dump_psymtab)
2458         (allocate_psymtab): Use filtered printing, not unfiltered.
2459
2460 2018-10-04  Tom Tromey  <tom@tromey.com>
2461
2462         * complaints.c (complaint_internal): Correctly check complaint
2463         count.
2464
2465 2018-10-04  Tom Tromey  <tom@tromey.com>
2466
2467         * complaints.h (struct complaints): Remove declaration.
2468         * complaints.c (clear_complaints): Remove an unused variable.
2469
2470 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2471
2472         * MAINTAINERS (Write After Approval): Add self.
2473
2474 2018-10-03  Tom Tromey  <tom@tromey.com>
2475
2476         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2477         "buffer_contents".
2478         * coffread.c (coff_symtab_read): Initialize "newobj".
2479
2480 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2481
2482         * dwarf2read.c (read_func_scope): Remove struct keyword in
2483         range-based for.
2484
2485 2018-10-03  Tom Tromey  <tom@tromey.com>
2486
2487         * README: Mention --enable-ubsan.
2488         * NEWS: Mention --enable-ubsan.
2489         * acinclude.m4: Include sanitize.m4.
2490         * configure: Rebuild.
2491         * configure.ac: Call AM_GDB_UBSAN.
2492         * sanitize.m4: New file.
2493
2494 2018-10-03  Tom Tromey  <tom@tromey.com>
2495
2496         * expression.h (enum exp_opcode): Use uint8_t as base type.
2497         * expprint.c (op_name): Handle invalid opcodes.
2498
2499 2018-10-03  Tom Tromey  <tom@tromey.com>
2500
2501         * parse.c (prefixify_expression): Add assert.
2502         (parse_exp_in_context_1): Throw exception if the expression is
2503         empty.
2504
2505 2018-10-03  Tom Tromey  <tom@tromey.com>
2506
2507         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2508
2509 2018-10-03  Tom Tromey  <tom@tromey.com>
2510
2511         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2512
2513 2018-10-03  Tom Tromey  <tom@tromey.com>
2514
2515         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2516         unsigned.
2517
2518 2018-10-03  Tom Tromey  <tom@tromey.com>
2519
2520         * findvar.c (extract_integer): Do work in an unsigned type.
2521
2522 2018-10-03  Tom Tromey  <tom@tromey.com>
2523
2524         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2525         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2526         base type.
2527         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2528         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2529         type.
2530         * c-lang.h (enum c_string_type_values): Use unsigned as base
2531         type.
2532         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2533
2534 2018-10-03  Tom Tromey  <tom@tromey.com>
2535
2536         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2537         <~dwarf2_frame_state_reg_info>: Update.
2538         <dwarf2_frame_state_reg_info>: Update.
2539         <alloc_regs>: Add assertion.  Update.
2540         <reg>: Now a std::vector.
2541         <num_regs>: Remove.
2542         <swap>: Update.
2543         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2544         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2545
2546 2018-10-03  Tom Tromey  <tom@tromey.com>
2547
2548         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2549
2550 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2551
2552         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2553
2554 2018-10-02  Tom Tromey  <tom@tromey.com>
2555
2556         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2557
2558 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2559
2560         * NEWS: Mention changed commands.
2561         * ser-uds.c: New file.
2562         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2563         * configure: Regenerate.
2564         * Makefile.in: Add new file.
2565         * serial.c (serial_open): Check if filename is a socket
2566         and lookup the appropriate interface accordingly.
2567
2568 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2569
2570         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2571         define.
2572         (AARCH64_EXTRA_MAGIC): Likewise.
2573         (AARCH64_FPSIMD_MAGIC): Likewise.
2574         (AARCH64_SVE_MAGIC): Likewise.
2575         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2576         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2577         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2578         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2579         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2580         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2581         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2582         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2583         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2584         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2585         (read_aarch64_ctx): Add function.
2586         (aarch64_linux_sigframe_init): Detect FP registers.
2587
2588 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2589
2590         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2591         (AARCH64_D0_REGNUM): Likewise.
2592         (AARCH64_S0_REGNUM): Likewise.
2593         (AARCH64_H0_REGNUM): Likewise.
2594         (AARCH64_B0_REGNUM): Likewise.
2595         (AARCH64_SVE_V0_REGNUM): Likewise.
2596         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2597         (AARCH64_D0_REGNUM): Likewise.
2598         (AARCH64_S0_REGNUM): Likewise.
2599         (AARCH64_H0_REGNUM): Likewise.
2600         (AARCH64_B0_REGNUM): Likewise.
2601         (AARCH64_SVE_V0_REGNUM): Likewise.
2602
2603 2018-10-01  Gary Benson <gbenson@redhat.com>
2604
2605         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2606         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2607         prfpregset_t instead of gdb_prfpregset_t.
2608         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2609         * configure, config.in: Rebuild.
2610
2611 2018-10-01  Gary Benson <gbenson@redhat.com>
2612
2613         * common/gdb_proc_service.h: New file, factored out from...
2614         * gdb_proc_service.h: Moved common code to the above file.
2615         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2616
2617 2018-10-01  Gary Benson <gbenson@redhat.com>
2618
2619         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2620         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2621
2622 2018-10-01  Gary Benson <gbenson@redhat.com>
2623
2624         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2625         (AC_CHECK_HEADERS): Check for linux/elf.h.
2626         * configure, config.in: Rebuild.
2627         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2628         doesn't define elf_fpregset_t.
2629
2630 2018-10-01  Gary Benson <gbenson@redhat.com>
2631
2632         * gdb_proc_service.h: Whitespace change.
2633
2634 2018-10-01  Tom Tromey  <tom@tromey.com>
2635
2636         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2637         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2638         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2639
2640 2018-10-01  Tom Tromey  <tom@tromey.com>
2641
2642         * README: Minor change.
2643
2644 2018-09-30  Pedro Alves  <palves@redhat.com>
2645
2646         * darwin-nat-info.c (darwin_debug_regions_recurse)
2647         (info_mach_exceptions_command): Remove unused local variables.
2648         * darwin-nat.c (darwin_decode_notify_message)
2649         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2650         (darwin_stop_inferior, darwin_setup_exceptions)
2651         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2652         (darwin_nat_target::attach, darwin_nat_target::detach)
2653         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2654         local variables.
2655         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2656         variables.
2657
2658 2018-09-29  Tom Tromey  <tom@tromey.com>
2659
2660         * README: Remove some leftover text.
2661
2662 2018-09-29  Tom Tromey  <tom@tromey.com>
2663
2664         * PROBLEMS: Rewrite.
2665         * README: Update.
2666
2667 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2668
2669         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2670         case with explicit breakpoint kind.
2671         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2672         'additional_info' and related logic.
2673         (riscv_debug_breakpoints): New variable.
2674         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2675         instruction to determine the breakpoint kind.
2676         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2677         flag.  Update description of 'set/show riscv
2678         use-compressed-breakpoints' flag.
2679
2680 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2681
2682         (NEWS): Mention changes to frame related commands.
2683         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2684         (add_prefix_cmd_suppress_notification): New function.
2685         (add_com_suppress_notification): Call
2686         add_cmd_suppress_notification.
2687         * command.h (add_cmd_suppress_notification): Declare.
2688         (add_prefix_cmd_suppress_notification): Declare.
2689         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2690         (parse_frame_specification): Moved from stack.c, with
2691         simplification to handle a single argument.
2692         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2693         switch to the selected frame.  Add a header comment.
2694         * stack.c: Remove 'safe-ctype.h' include.
2695         (find_frame_for_function): Add declaration.
2696         (find_frame_for_address): New function.
2697         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2698         (frame_selection_by_function_completer): New function.
2699         (info_frame_command): Rename to...
2700         (info_frame_command_core): ...this, and update parameter types.
2701         (select_frame_command): Rename to...
2702         (select_frame_command_core): ...this, and update parameter types.
2703         (frame_command): Rename to...
2704         (frame_command_core): ...this, and update parameter types.
2705         (class frame_command_helper): New class to wrap implementations of
2706         frame related sub-commands.
2707         (frame_apply_cmd_list): New static global.
2708         (frame_cmd_list): Make static.
2709         (select_frame_cmd_list): New global for sub-commands.
2710         (info_frame_cmd_list): New global for sub-commands.
2711         (_initialize_stack): Register sub-commands for 'frame',
2712         'select-frame', and 'info frame'.  Update 'frame apply' commands
2713         to use frame_apply_cmd_list.  Move function local static
2714         frame_apply_list to file static frame_apply_cmd_list for
2715         consistency.
2716         * stack.h (select_frame_command): Delete declarationn.
2717         (select_frame_for_mi): Declare new function.
2718
2719 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2720
2721         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2722         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2723         and NOP.
2724
2725 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2726
2727         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2728
2729 2018-09-26  Tom Tromey  <tom@tromey.com>
2730
2731         * valops.c (auto_abandon): Remove dead code.
2732
2733 2018-09-26  Tom Tromey  <tom@tromey.com>
2734
2735         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2736
2737 2018-09-24  Tom Tromey  <tom@tromey.com>
2738
2739         * common/pathstuff.c (get_standard_cache_dir): Make
2740         "xdg_cache_home" and "home" const.
2741         * top.c (init_history): Make "tmpenv" const.
2742         * main.c (get_init_files): Make "homedir" const.
2743
2744 2018-09-23  Tom Tromey  <tom@tromey.com>
2745
2746         PR python/18852:
2747         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2748
2749 2018-09-23  Tom Tromey  <tom@tromey.com>
2750
2751         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2752         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2753         * python/python-internal.h (gdbpy_handle_exception): Declare.
2754         * python/py-utils.c (gdbpy_handle_exception): New function.
2755
2756 2018-09-23  Tom Tromey  <tom@tromey.com>
2757
2758         PR python/17284:
2759         * python/py-type.c (typy_template_argument): Check for negative
2760         argument number.
2761
2762 2018-09-23  Tom Tromey  <tom@tromey.com>
2763
2764         PR python/14062:
2765         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2766
2767 2018-09-23  Tom Tromey  <tom@tromey.com>
2768
2769         PR python/18170:
2770         * python/py-value.c (valpy_int): Allow conversion from pointer
2771         type.
2772
2773 2018-09-23  Tom Tromey  <tom@tromey.com>
2774
2775         PR python/20126:
2776         * python/py-value.c (valpy_int): Respect type sign.
2777
2778 2018-09-23  Tom Tromey  <tom@tromey.com>
2779
2780         PR python/18352;
2781         * python/py-value.c (valpy_float): Allow conversions from int or
2782         char.
2783         (valpy_int, valpy_long): Allow conversions from float.
2784
2785 2018-09-23  Tom Tromey  <tom@tromey.com>
2786
2787         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2788         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2789
2790 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2791
2792         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2793         __sighndlr.
2794         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2795
2796 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2797
2798         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2799         target_terminal::ours().
2800
2801 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2802
2803         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2804         of vl to ULONGEST.
2805
2806 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2807
2808         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2809         redundant condition.
2810
2811 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2812
2813         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2814
2815         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2816         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2817         * sol-thread.c (ps_pdmodel): Don't guard definition.
2818
2819         * procfs.c: Fix formatting.
2820
2821         * procfs.c (sysset_t_alloc): Remove.
2822         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2823         (procfs_debug_inferior): Likewise.
2824         (procfs_set_exec_trap): Likewise.
2825         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2826         (proc_set_traced_sysexit): Likewise.
2827
2828         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2829         (dead_procinfo): Likewise.
2830         (proc_warn): Likewise.
2831         (proc_error): Likewise.
2832         (proc_get_LDT_entry): Likewise.
2833         (do_attach): Likewise.
2834         (procfs_target::pid_to_str): Likewise.
2835         (iterate_over_mappings): Likewise.
2836
2837         * procfs.c (create_procinfo): Fix ARI warning.
2838         (proc_get_status): Likewise.
2839         (proc_stop_process): Likewise.
2840         (proc_run_process): Likewise.
2841         (proc_kill): Likewise.
2842         (proc_get_LDT_entry): Likewise.
2843         (procfs_find_LDT_entry): Likewise.
2844         (proc_update_threads): Likewise.
2845         (proc_iterate_over_threads): Likewise.
2846         (do_attach): Likewise.
2847         (procfs_xfer_memory): Likewise.
2848         (invalidate_cache): Likewise.
2849         (procfs_target::resume): Likewise.
2850         (procfs_init_inferior): Likewise.
2851         (procfs_set_exec_trap): Likewise.
2852         (procfs_target::thread_alive): Likewise.
2853         (procfs_target::pid_to_exec_file): Likewise.
2854         (iterate_over_mappings): Likewise.
2855         (procfs_target::make_corefile_notes): Likewise.
2856         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2857
2858         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2859         (procfs_find_LDT_entry): Likewise.
2860         * sol-thread.c (ps_lgetLDT): Likewise.
2861
2862 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2863
2864         PR tdep/17903
2865         * procfs.c (procfs_target): Declare pid_to_exec_file.
2866         (procfs_target::pid_to_exec_file): New.
2867
2868 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2869
2870         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2871         renaming.
2872         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2873         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2874
2875 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2876
2877         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2878         (supply_fpregset, fill_fpregset): Move ...
2879         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2880         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2881         Remove references to ioctl-based procfs.
2882         Include <sys/reg.h>.
2883         Remove PR_MODEL_NATIVE guards.
2884         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2885         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2886
2887 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2888
2889         PR gdb/20981:
2890         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2891         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2892         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2893
2894 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2895
2896         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2897         (fbsd_print_sockaddr_in6): Likewise.
2898
2899 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2900             Chris January  <chris.january@arm.com>
2901
2902         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2903         (evaluate_subexp_standard): Return a dummy type when
2904         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2905         OP_F77_UNDETERMINED_ARGLIST case.
2906         * expression.h (enum noside): Update comment.
2907
2908 2018-09-19  George Vasick <george.vasick@oracle.com>
2909
2910         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2911
2912 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2913             April Chin <april.chin@oracle.com>
2914             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2915
2916         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2917         uint_t lwpid_t.
2918         (create_procinfo): Print pids in /proc without leading zeros.
2919
2920 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2921
2922         * nios2-tdep.c (nios2_gcc_target_options): New.
2923         (nios2_gdb_arch_init): Install new hook.
2924
2925 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2926
2927         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2928         New file.
2929         * update-gnulib.sh: Apply patch.
2930         * configure: Re-generate.
2931
2932 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2933
2934         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2935         description.  Make "info proc" command descriptions more
2936         consistent.
2937
2938 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2939
2940         * NEWS: Mention 'info proc files' command.
2941
2942 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2943
2944         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2945         descriptors for IP_FILES and IP_ALL.
2946
2947 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2948
2949         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2950         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2951         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2952         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2953         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2954         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2955         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2956         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2957         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2958         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2959         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2960         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2961         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2962         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2963         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2964         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2965         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2966         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2967         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2968         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2969         (struct fbsd_sockaddr_un): New types.
2970         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2971         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2972         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2973         (fbsd_core_info_proc_files): New functions.
2974         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2975         IP_ALL.
2976         * fbsd-tdep.h (fbsd_info_proc_files_header)
2977         (fbsd_info_proc_files_entry): New.
2978
2979 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2980
2981         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2982         * infcmd.c (info_proc_cmd_files): New function.
2983         (_initialize_infcmd): Register 'info proc files' command.
2984
2985 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2986
2987         * gnulib/aclocal-m4-deps.mk: Re-generate.
2988         * gnulib/aclocal.m4: Re-generate.
2989         * gnulib/config.in: Re-generate.
2990         * gnulib/configure: Re-generate.
2991         * gnulib/import/Makefile.am: Re-generate.
2992         * gnulib/import/Makefile.in: Re-generate.
2993         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2994         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2995         * gnulib/import/arpa_inet.in.h: New file.
2996         * gnulib/import/inet_ntop.c: New file.
2997         * gnulib/import/m4/arpa_inet_h.m4: New file.
2998         * gnulib/import/m4/inet_ntop.m4: New file.
2999         * gnulib/import/m4/netinet_in_h.m4: New file.
3000         * gnulib/import/m4/socklen.m4: New file.
3001         * gnulib/import/m4/sockpfaf.m4: New file.
3002         * gnulib/import/m4/stdalign.m4: New file.
3003         * gnulib/import/m4/sys_uio_h.m4: New file.
3004         * gnulib/import/netinet_in.in.h: New file.
3005         * gnulib/import/stdalign.in.h: New file.
3006         * gnulib/import/sys_socket.c: New file.
3007         * gnulib/import/sys_socket.in.h: New file.
3008         * gnulib/import/sys_uio.in.h: New file.
3009         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
3010         module.
3011
3012 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3013
3014         * gnulib/aclocal-m4-deps.mk: New file.
3015         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
3016         deterministically.
3017
3018 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
3019
3020         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
3021         KVE_PATH.
3022
3023 2018-09-18  Tom Tromey  <tom@tromey.com>
3024
3025         * compile/compile-object-load.c (struct
3026         link_hash_table_cleanup_data): Add constructor and destructor.
3027         Use DISABLE_COPY_AND_ASSIGN.
3028         (~link_hash_table_cleanup_data): Rename from
3029         link_hash_table_free.  Now a destructor.
3030         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
3031
3032 2018-09-18  Tom Tromey  <tom@tromey.com>
3033
3034         * compile/compile-object-run.c (do_module_cleanup): Use delete.
3035         * compile/compile-object-load.c (struct munmap_list): Move to
3036         header file.
3037         (munmap_list::add): Rename from munmap_list_add; rewrite.
3038         (munmap_list::~munmap_list): Rename from munmap_list_free.
3039         (munmap_listp_free_cleanup): Remove.
3040         (compile_object_load): Update.
3041         * compile/compile-object-load.h (struct munmap_list): Move from
3042         compile-object-load.c.  Rewrite.
3043
3044 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3045
3046         * aarch64-tdep.c (pass_in_v): Use register size.
3047         (aarch64_extract_return_value): Likewise.
3048         (aarch64_store_return_value): Likewise.
3049
3050 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3051
3052         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3053         rlim_t.
3054
3055 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3056
3057         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3058         Fix short help line.
3059
3060 2018-09-17  Tom Tromey  <tom@tromey.com>
3061
3062         PR python/20445:
3063         * configure: Rebuild.
3064         * configure.ac: Conditionally use -DNDEBUG for Python.
3065
3066 2018-09-17  Tom Tromey  <tom@tromey.com>
3067
3068         * configure: Rebuild.
3069         * configure.ac: Use gmp as a library dependency when checking for
3070         mpfr.
3071
3072 2018-09-17  Pedro Alves  <palves@redhat.com>
3073
3074         * python/py-inferior.c (find_inferior_object): Delete.
3075
3076 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3077
3078         * compile/compile-cplus-types.c
3079         (compile_cplus_instance::enter_scope): Don't use new_scope after
3080         std::move.
3081
3082 2018-09-17  Tom Tromey  <tom@tromey.com>
3083
3084         * common/pathstuff.c (get_standard_cache_dir): Use
3085         ~/Library/Caches on macOS.
3086         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3087
3088 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3089
3090         PR python/23669
3091         * breakpoint.c (commands_cmd_element): New.
3092         (_initialize_breakpoint): Assign commands_cmd_element.
3093         * breakpoint.h (commands_cmd_element): New.
3094         * cli/cli-script.c (while_cmd_element, if_command,
3095         define_cmd_element): New.
3096         (command_name_equals): Remove.
3097         (process_next_line): Compare commands by pointer, not by name.
3098         (_initialize_cli_script): Assign the various cmd_list_element
3099         variables.
3100         * compile/compile.c (compile_cmd_element): New.
3101         (_initialize_compile): Assign compile_cmd_element.
3102         * compile/compile.h (compile_cmd_element): New.
3103         * guile/guile.c (guile_cmd_element): New.
3104         (install_gdb_commands): Assign guile_cmd_element.
3105         * guile/guile.h (guile_cmd_element): New.
3106         * python/python.c (python_cmd_element): New.
3107         (_initialize_python): Assign python_cmd_element.
3108         * python/python.h (python_cmd_element): New.
3109         * tracepoint.c (while_stepping_cmd_element): New.
3110         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3111         * tracepoint.h (while_stepping_cmd_element): New.
3112
3113 2018-09-17  Tom Tromey  <tom@tromey.com>
3114
3115         * infrun.c (save_infcall_suspend_state): Return
3116         infcall_suspend_state_up.
3117         (save_infcall_control_state): Return infcall_control_state_up.
3118         * inferior.h (save_infcall_suspend_state)
3119         (save_infcall_control_state): Declare later.  Return unique
3120         pointers.
3121
3122 2018-09-17  Tom Tromey  <tom@tromey.com>
3123
3124         * infrun.c (struct stop_context): Declare constructor,
3125         destructor, "changed" method.
3126         (stop_context::stop_context): Rename from save_stop_context.
3127         (stop_context::~stop_context): Rename from
3128         release_stop_context_cleanup.
3129         (normal_stop): Update.
3130         (stop_context::changed): Rename from stop_context_changed.  Return
3131         bool.
3132
3133 2018-09-17  Tom Tromey  <tom@tromey.com>
3134
3135         * inferior.h (struct infcall_suspend_state_deleter): New.
3136         (infcall_suspend_state_up): New typedef.
3137         (struct infcall_control_state_deleter): New.
3138         (infcall_control_state_up): New typedef.
3139         (make_cleanup_restore_infcall_suspend_state)
3140         (make_cleanup_restore_infcall_control_state): Don't declare.
3141         * infcall.c (call_function_by_hand_dummy): Update.
3142         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3143         (make_cleanup_restore_infcall_suspend_state): Remove.
3144         (do_restore_infcall_control_state_cleanup)
3145         (make_cleanup_restore_infcall_control_state): Remove.
3146
3147 2018-09-17  Tom Tromey  <tom@tromey.com>
3148
3149         * gdbthread.h (struct thread_control_state): Add initializer.
3150         (class thread_info) <control>: Remove initializer.
3151         * inferior.h (struct inferior_control_state): Add initializer.
3152         (class inferior) <control>: Remove initializer.
3153         (exit_inferior_1): Update.
3154         * infrun.c (struct infcall_control_state): Add constructors.
3155         (save_infcall_control_state): Use new.
3156         (restore_infcall_control_state, discard_infcall_control_state):
3157         Use delete.
3158
3159 2018-09-17  Tom Tromey  <tom@tromey.com>
3160
3161         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3162         unique_ptr.
3163         <siginfo_data>: Now a unique_xmalloc_ptr.
3164         (save_infcall_suspend_state, restore_infcall_suspend_state)
3165         (discard_infcall_suspend_state)
3166         (get_infcall_suspend_state_regcache): Update.
3167
3168 2018-09-17  Tom Tromey  <tom@tromey.com>
3169
3170         * gdbthread.h (struct thread_suspend_state): Add initializers.
3171         (class thread_info) <suspend>: Remove initializer.
3172         * infrun.c (struct infcall_suspend_state): Add initializers.
3173         (save_infcall_suspend_state): Use new.
3174         (discard_infcall_suspend_state): Use delete.
3175
3176 2018-09-16  Tom Tromey  <tom@tromey.com>
3177
3178         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3179         Remove.
3180         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3181         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3182         (py_varobj_iter_new): Likewise.
3183         (py_varobj_get_iterator): Use gdbpy_ref.
3184
3185 2018-09-16  Tom Tromey  <tom@tromey.com>
3186
3187         * python/py-threadevent.c (py_get_event_thread): Simplify.
3188         * python/py-inferior.c (infpy_thread_from_thread_handle):
3189         Return immediately after calling thread_to_thread_object.  Use
3190         Py_RETURN_NONE.
3191         (thread_to_thread_object): Set the exception on a NULL return.
3192
3193 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3194
3195         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3196
3197 2018-09-16  Tom Tromey  <tom@tromey.com>
3198
3199         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3200         Remove.
3201
3202 2018-09-16  Tom Tromey  <tom@tromey.com>
3203
3204         * python/python-internal.h (thread_to_thread_object): Change
3205         return type.
3206         * python/py-inferior.c (thread_to_thread_object): Return a new
3207         reference.
3208         (infpy_thread_from_thread_handle): Update.
3209         * python/py-infthread.c (gdbpy_selected_thread): Update.
3210         * python/py-stopevent.c (create_stop_event_object): Update.
3211         * python/py-threadevent.c (py_get_event_thread): Return a new
3212         reference.
3213         (py_get_event_thread): Update.
3214         * python/py-event.h (py_get_event_thread): Change return type.
3215         * python/py-continueevent.c (create_continue_event_object):
3216         Update.
3217
3218 2018-09-16  Tom Tromey  <tom@tromey.com>
3219
3220         * python/py-progspace.c (pspy_get_objfiles): Update.
3221         * python/python-internal.h (objfile_to_objfile_object): Change
3222         return type.
3223         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3224         Update.
3225         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3226         Update.
3227         * python/python.c (gdbpy_get_current_objfile): Update.
3228         (gdbpy_objfiles): Update.
3229         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3230         Update.
3231         (objfile_to_objfile_object): Return a new reference.
3232         * python/py-symtab.c (stpy_get_objfile): Update.
3233         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3234         Update.
3235
3236 2018-09-16  Tom Tromey  <tom@tromey.com>
3237
3238         * python/py-inferior.c (infpy_get_progspace): Update.
3239         * python/python-internal.h (pspace_to_pspace_object): Change
3240         return type.
3241         * python/py-newobjfileevent.c
3242         (create_clear_objfiles_event_object): Update.
3243         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3244         Update.
3245         * python/python.c (gdbpy_get_current_progspace): Update.
3246         (gdbpy_progspaces): Update.
3247         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3248         reference.
3249         * python/py-objfile.c (objfpy_get_progspace): Update.
3250         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3251         Update.
3252
3253 2018-09-16  Tom Tromey  <tom@tromey.com>
3254
3255         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3256         (solib_name, block_for_pc, find_pc_line): New functions.
3257         (execute_unwinders): Update.
3258         * python/py-block.c (gdbpy_block_for_pc): Remove.
3259         * python/py-inferior.c (infpy_get_progspace): New function.
3260         (inferior_object_getset) <progspace>: Add.
3261         * python/py-progspace.c (pspy_objfiles): Rewrite.
3262         (pspy_solib_name, pspy_block_for_pc)
3263         (pspy_find_pc_line, pspy_is_valid): New functions.
3264         (progspace_object_methods): Add entries for solib_name,
3265         block_for_pc, find_pc_line, is_valid.
3266         * python/python-internal.h (gdbpy_block_for_pc)
3267         (build_objfiles_list): Don't declare.
3268         * python/python.c: Don't include solib.h.
3269         (gdbpy_solib_name, gdbpy_find_pc_line)
3270         (gdbpy_get_current_progspace, build_objfiles_list)
3271         (gdbpy_objfiles): Remove.
3272         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3273         solib_name, find_pc_line>: Remove entries.
3274
3275 2018-09-16  Tom Tromey  <tom@tromey.com>
3276
3277         * top.c (new_ui_command): Use GNU style for metasyntactic
3278         variables.
3279         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3280         variables.
3281         * maint.c (maintenance_translate_address): Remove "<>" around
3282         text.
3283         * interps.c (interpreter_exec_cmd): Use GNU style for
3284         metasyntactic variables.
3285         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3286         metasyntactic variables.
3287         * tracepoint.c (tfind_range_command): Use GNU style for
3288         metasyntactic variables.
3289         (tfind_outside_command): Likewise.
3290         (_initialize_tracepoint): Likewise.
3291         * remote.c (extended_remote_target::create_inferior): Use GNU
3292         style for metasyntactic variables.
3293         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3294         metasyntactic variables.
3295         (adi_assign_command): Likewise.
3296
3297 2018-09-16  Tom Tromey  <tom@tromey.com>
3298
3299         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3300         metasyntactic variables.  Print message if no disassembler options
3301         are available.
3302
3303 2018-09-15  Tom Tromey  <tom@tromey.com>
3304
3305         * infcmd.c (get_inferior_args): Return const char *.
3306         * inferior.h (get_inferior_args): Return type now const.
3307         * linux-tdep.c (linux_fill_prpsinfo): Update.
3308         * procfs.c (procfs_target::make_corefile_notes): Update.
3309
3310 2018-09-07  Tom Tromey  <tom@tromey.com>
3311
3312         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3313         inside the TRY.
3314
3315 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3316
3317         * nios2-tdep.c (nios2_type_align): New.
3318         (nios2_gdb_arch_init): Install type_align hook.
3319
3320 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3321
3322         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3323         type that is neither object file owned, nor gdbarch owned.
3324         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3325         gdbarch is non-NULL.
3326         (alloc_type_instance): Allocate non-objfile owned types on the
3327         gdbarch obstack.
3328         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3329         using TYPE_ALLOC to ensure memory is allocated on the correct
3330         obstack.
3331         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3332         obstack, or the gdbarch obstack.
3333         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3334
3335 2018-09-14  Tom Tromey  <tom@tromey.com>
3336
3337         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3338         block.
3339
3340 2018-09-14  Tom Tromey  <tom@tromey.com>
3341
3342         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3343
3344 2018-09-13  Tom Tromey  <tom@tromey.com>
3345
3346         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3347         static.
3348
3349 2018-09-13  Tom Tromey  <tom@tromey.com>
3350
3351         * exec.c (try_open_exec_file): Use std::string.
3352
3353 2018-09-13  Tom Tromey  <tom@tromey.com>
3354
3355         * utils.h (gdb_bfd_errmsg): Return std::string.
3356         * exec.c (exec_file_attach): Update.
3357         * compile/compile-object-load.c (compile_object_load): Update.
3358         * utils.c (gdb_bfd_errmsg): Return std::string.
3359
3360 2018-09-13  Tom Tromey  <tom@tromey.com>
3361
3362         * procfs.c (struct procinfo_deleter): New.
3363         (procinfo_up): New typedef.
3364         (do_destroy_procinfo_cleanup): Remove.
3365         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3366
3367 2018-09-13  Tom Tromey  <tom@tromey.com>
3368
3369         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3370
3371 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3372 2018-09-13  Tom Tromey  <tom@tromey.com>
3373
3374         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3375         (pspy_get_objfiles): New function.
3376         (progspace_object_methods): New.
3377         (pspace_object_type): Add tp_methods callback.
3378         * python/python-internal.h (build_objfiles_list): New
3379         declaration.
3380         * python/python.c (build_objfiles_list): New function.
3381         (gdbpy_objfiles): Implement using build_objfiles_list.
3382         * NEWS: Mention the Progspace.objfiles method.
3383
3384 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3385
3386         * python/py-inferior.c (infpy_get_progspace): New function.
3387         (inferior_object_getset): Add progspace property.
3388         * NEWS: Mention the new property.
3389
3390 2018-09-13  Tom Tromey  <tom@tromey.com>
3391
3392         PR rust/23650:
3393         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3394
3395 2018-09-13  Tom Tromey  <tom@tromey.com>
3396
3397         PR rust/23626:
3398         * rust-lang.c (rust_enum_variant): Now static.
3399         (rust_empty_enum_p): New function.
3400         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3401         Handle empty enum.
3402
3403 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3404
3405         * python/py-inferior.c (infpy_repr): New.
3406         (inferior_object_type): Register infpy_repr.
3407         * python/py-objfile.c (objfpy_repr): New.
3408         (objfile_object_type): Register objfpy_repr.
3409
3410 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3411
3412         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3413
3414 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3415
3416         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3417         typo.
3418
3419 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3420
3421         * common/common-utils.c: Don't include '<sys/stat.h>'.
3422         (is_regular_file): Move to...
3423         * common/filestuff.c (is_regular_file): ... here.
3424         * common/common-utils.h (is_regular_file): Move to...
3425         * common/filestuff.h (is_regular_file): ... here.
3426
3427 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3428
3429         * skip.c (debug_skip): New variable.
3430         (skiplist_entry::do_skip_file_p): Add debug output.
3431         (skiplist_entry::do_skip_gfile_p): Likewise.
3432         (skiplist_entry::skip_function_p): Likewise.
3433         (_initialize_step_skip): Create debug command.
3434         * NEWS: Mention set/show debug skip.
3435
3436 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3437
3438         * darwin-nat.c (should_disable_startup_with_shell):
3439         New function.
3440         (darwin_nat_target::create_inferior): Add call.
3441
3442 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3443
3444         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3445         inf_port, msg_state>: Initialize.
3446         (struct darwin_thread_info) <signaled, single_step>: Change
3447         type and initialize.
3448         (struct darwin_thread_info) <event>: Initialize.
3449
3450 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3451
3452         PR gdb/23555
3453         PR gdb/23558
3454         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3455         guesses.
3456
3457 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3458
3459         Revert:
3460         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3461
3462         PR gdb/23555
3463         PR gdb/23558
3464         * gnulib/aclocal.m4: Regenerate.
3465         * gnulib/config.in: Regenerate.
3466         * gnulib/configure: Regenerate.
3467         * gnulib/import/Makefile.am: Update.
3468         * gnulib/import/Makefile.in: Update.
3469         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3470         * gnulib/import/_Noreturn.h: ... this.
3471         * gnulib/import/alloca.in.h: Update.
3472         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3473         * gnulib/import/arg-nonnull.h: ... this.
3474         * gnulib/import/assure.h: Update.
3475         * gnulib/import/at-func.c: Update.
3476         * gnulib/import/basename-lgpl.c: Update.
3477         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3478         * gnulib/import/c++defs.h: ... this.
3479         * gnulib/import/canonicalize-lgpl.c: Update.
3480         * gnulib/import/cdefs.h: Update.
3481         * gnulib/import/chdir-long.c: Update.
3482         * gnulib/import/chdir-long.h: Update.
3483         * gnulib/import/cloexec.c: Update.
3484         * gnulib/import/cloexec.h: Update.
3485         * gnulib/import/close.c: Update.
3486         * gnulib/import/closedir.c: Update.
3487         * gnulib/import/config.charset: Update.
3488         * gnulib/import/dirent-private.h: Update.
3489         * gnulib/import/dirent.in.h: Update.
3490         * gnulib/import/dirfd.c: Update.
3491         * gnulib/import/dirname-lgpl.c: Update.
3492         * gnulib/import/dirname.h: Update.
3493         * gnulib/import/dosname.h: Update.
3494         * gnulib/import/dup-safer-flag.c: Update.
3495         * gnulib/import/dup-safer.c: Update.
3496         * gnulib/import/dup.c: Update.
3497         * gnulib/import/dup2.c: Update.
3498         * gnulib/import/errno.in.h: Update.
3499         * gnulib/import/error.c: Update.
3500         * gnulib/import/error.h: Update.
3501         * gnulib/import/exitfail.c: Update.
3502         * gnulib/import/exitfail.h: Update.
3503         * gnulib/import/extra/update-copyright: Update.
3504         * gnulib/import/fchdir.c: Update.
3505         * gnulib/import/fcntl.c: Update.
3506         * gnulib/import/fcntl.in.h: Update.
3507         * gnulib/import/fd-hook.c: Update.
3508         * gnulib/import/fd-hook.h: Update.
3509         * gnulib/import/fd-safer-flag.c: Update.
3510         * gnulib/import/fd-safer.c: Update.
3511         * gnulib/import/fdopendir.c: Update.
3512         * gnulib/import/filename.h: Update.
3513         * gnulib/import/filenamecat-lgpl.c: Update.
3514         * gnulib/import/filenamecat.h: Update.
3515         * gnulib/import/flexmember.h: Update.
3516         * gnulib/import/float+.h: Update.
3517         * gnulib/import/float.c: Update.
3518         * gnulib/import/float.in.h: Update.
3519         * gnulib/import/fnmatch.c: Update.
3520         * gnulib/import/fnmatch.in.h: Update.
3521         * gnulib/import/fnmatch_loop.c: Update.
3522         * gnulib/import/fpucw.h: Update.
3523         * gnulib/import/frexp.c: Update.
3524         * gnulib/import/frexpl.c: Update.
3525         * gnulib/import/fstat.c: Update.
3526         * gnulib/import/fstatat.c: Update.
3527         * gnulib/import/getcwd-lgpl.c: Update.
3528         * gnulib/import/getcwd.c: Update.
3529         * gnulib/import/getdtablesize.c: Update.
3530         * gnulib/import/getlogin_r.c: Update.
3531         * gnulib/import/getprogname.c: Update.
3532         * gnulib/import/getprogname.h: Update.
3533         * gnulib/import/gettext.h: Update.
3534         * gnulib/import/gettimeofday.c: Update.
3535         * gnulib/import/glob-libc.h: Update.
3536         * gnulib/import/glob.c: Update.
3537         * gnulib/import/glob.in.h: Update.
3538         * gnulib/import/glob_internal.h: Update.
3539         * gnulib/import/glob_pattern_p.c: Update.
3540         * gnulib/import/globfree.c: Update.
3541         * gnulib/import/hard-locale.c: Update.
3542         * gnulib/import/hard-locale.h: Update.
3543         * gnulib/import/intprops.h: Update.
3544         * gnulib/import/inttypes.in.h: Update.
3545         * gnulib/import/isnan.c: Update.
3546         * gnulib/import/isnand-nolibm.h: Update.
3547         * gnulib/import/isnand.c: Update.
3548         * gnulib/import/isnanl-nolibm.h: Update.
3549         * gnulib/import/isnanl.c: Update.
3550         * gnulib/import/itold.c: Update.
3551         * gnulib/import/libc-config.h: Update.
3552         * gnulib/import/limits.in.h: Update.
3553         * gnulib/import/localcharset.c: Update.
3554         * gnulib/import/localcharset.h: Update.
3555         * gnulib/import/localtime-buffer.c: Update.
3556         * gnulib/import/localtime-buffer.h: Update.
3557         * gnulib/import/lstat.c: Update.
3558         * gnulib/import/m4/00gnulib.m4: Update.
3559         * gnulib/import/m4/__inline.m4: Update.
3560         * gnulib/import/m4/absolute-header.m4: Update.
3561         * gnulib/import/m4/alloca.m4: Update.
3562         * gnulib/import/m4/builtin-expect.m4: Update.
3563         * gnulib/import/m4/canonicalize.m4: Update.
3564         * gnulib/import/m4/chdir-long.m4: Update.
3565         * gnulib/import/m4/close.m4: Update.
3566         * gnulib/import/m4/closedir.m4: Update.
3567         * gnulib/import/m4/configmake.m4: Update.
3568         * gnulib/import/m4/d-ino.m4: Update.
3569         * gnulib/import/m4/d-type.m4: Update.
3570         * gnulib/import/m4/dirent_h.m4: Update.
3571         * gnulib/import/m4/dirfd.m4: Update.
3572         * gnulib/import/m4/dirname.m4: Update.
3573         * gnulib/import/m4/double-slash-root.m4: Update.
3574         * gnulib/import/m4/dup.m4: Update.
3575         * gnulib/import/m4/dup2.m4: Update.
3576         * gnulib/import/m4/eealloc.m4: Update.
3577         * gnulib/import/m4/environ.m4: Update.
3578         * gnulib/import/m4/errno_h.m4: Update.
3579         * gnulib/import/m4/error.m4: Update.
3580         * gnulib/import/m4/exponentd.m4: Update.
3581         * gnulib/import/m4/exponentl.m4: Update.
3582         * gnulib/import/m4/extensions.m4: Update.
3583         * gnulib/import/m4/extern-inline.m4: Update.
3584         * gnulib/import/m4/fchdir.m4: Update.
3585         * gnulib/import/m4/fcntl-o.m4: Update.
3586         * gnulib/import/m4/fcntl.m4: Update.
3587         * gnulib/import/m4/fcntl_h.m4: Update.
3588         * gnulib/import/m4/fdopendir.m4: Update.
3589         * gnulib/import/m4/filenamecat.m4: Update.
3590         * gnulib/import/m4/flexmember.m4: Update.
3591         * gnulib/import/m4/float_h.m4: Update.
3592         * gnulib/import/m4/fnmatch.m4: Update.
3593         * gnulib/import/m4/fnmatch_h.m4: Update.
3594         * gnulib/import/m4/fpieee.m4: Update.
3595         * gnulib/import/m4/frexp.m4: Update.
3596         * gnulib/import/m4/frexpl.m4: Update.
3597         * gnulib/import/m4/fstat.m4: Update.
3598         * gnulib/import/m4/fstatat.m4: Update.
3599         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3600         * gnulib/import/m4/getcwd-path-max.m4: Update.
3601         * gnulib/import/m4/getcwd.m4: Update.
3602         * gnulib/import/m4/getdtablesize.m4: Update.
3603         * gnulib/import/m4/getlogin.m4: Update.
3604         * gnulib/import/m4/getlogin_r.m4: Update.
3605         * gnulib/import/m4/getpagesize.m4: Update.
3606         * gnulib/import/m4/getprogname.m4: Update.
3607         * gnulib/import/m4/gettimeofday.m4: Update.
3608         * gnulib/import/m4/glibc21.m4: Update.
3609         * gnulib/import/m4/glob.m4: Update.
3610         * gnulib/import/m4/glob_h.m4: Update.
3611         * gnulib/import/m4/gnulib-cache.m4: Update.
3612         * gnulib/import/m4/gnulib-common.m4: Update.
3613         * gnulib/import/m4/gnulib-comp.m4: Update.
3614         * gnulib/import/m4/gnulib-tool.m4: Update.
3615         * gnulib/import/m4/hard-locale.m4: Update.
3616         * gnulib/import/m4/include_next.m4: Update.
3617         * gnulib/import/m4/inttypes-pri.m4: Update.
3618         * gnulib/import/m4/inttypes.m4: Update.
3619         * gnulib/import/m4/isnand.m4: Update.
3620         * gnulib/import/m4/isnanl.m4: Update.
3621         * gnulib/import/m4/largefile.m4: Update.
3622         * gnulib/import/m4/limits-h.m4: Update.
3623         * gnulib/import/m4/localcharset.m4: Update.
3624         * gnulib/import/m4/locale-fr.m4: Update.
3625         * gnulib/import/m4/locale-ja.m4: Update.
3626         * gnulib/import/m4/locale-zh.m4: Update.
3627         * gnulib/import/m4/localtime-buffer.m4: Update.
3628         * gnulib/import/m4/longlong.m4: Update.
3629         * gnulib/import/m4/lstat.m4: Update.
3630         * gnulib/import/m4/malloc.m4: Update.
3631         * gnulib/import/m4/malloca.m4: Update.
3632         * gnulib/import/m4/math_h.m4: Update.
3633         * gnulib/import/m4/mbrtowc.m4: Update.
3634         * gnulib/import/m4/mbsinit.m4: Update.
3635         * gnulib/import/m4/mbsrtowcs.m4: Update.
3636         * gnulib/import/m4/mbstate_t.m4: Update.
3637         * gnulib/import/m4/memchr.m4: Update.
3638         * gnulib/import/m4/memmem.m4: Update.
3639         * gnulib/import/m4/mempcpy.m4: Update.
3640         * gnulib/import/m4/memrchr.m4: Update.
3641         * gnulib/import/m4/mkdir.m4: Update.
3642         * gnulib/import/m4/mkstemp.m4: Update.
3643         * gnulib/import/m4/mmap-anon.m4: Update.
3644         * gnulib/import/m4/mode_t.m4: Update.
3645         * gnulib/import/m4/msvc-inval.m4: Update.
3646         * gnulib/import/m4/msvc-nothrow.m4: Update.
3647         * gnulib/import/m4/multiarch.m4: Update.
3648         * gnulib/import/m4/nocrash.m4: Update.
3649         * gnulib/import/m4/off_t.m4: Update.
3650         * gnulib/import/m4/onceonly.m4: Update.
3651         * gnulib/import/m4/open-cloexec.m4: Update.
3652         * gnulib/import/m4/open.m4: Update.
3653         * gnulib/import/m4/openat.m4: Update.
3654         * gnulib/import/m4/opendir.m4: Update.
3655         * gnulib/import/m4/pathmax.m4: Update.
3656         * gnulib/import/m4/rawmemchr.m4: Update.
3657         * gnulib/import/m4/readdir.m4: Update.
3658         * gnulib/import/m4/readlink.m4: Update.
3659         * gnulib/import/m4/realloc.m4: Update.
3660         * gnulib/import/m4/rename.m4: Update.
3661         * gnulib/import/m4/rewinddir.m4: Update.
3662         * gnulib/import/m4/rmdir.m4: Update.
3663         * gnulib/import/m4/save-cwd.m4: Update.
3664         * gnulib/import/m4/secure_getenv.m4: Update.
3665         * gnulib/import/m4/setenv.m4: Update.
3666         * gnulib/import/m4/signal_h.m4: Update.
3667         * gnulib/import/m4/ssize_t.m4: Update.
3668         * gnulib/import/m4/stat-time.m4: Update.
3669         * gnulib/import/m4/stat.m4: Update.
3670         * gnulib/import/m4/std-gnu11.m4: Update.
3671         * gnulib/import/m4/stdbool.m4: Update.
3672         * gnulib/import/m4/stddef_h.m4: Update.
3673         * gnulib/import/m4/stdint.m4: Update.
3674         * gnulib/import/m4/stdio_h.m4: Update.
3675         * gnulib/import/m4/stdlib_h.m4: Update.
3676         * gnulib/import/m4/strchrnul.m4: Update.
3677         * gnulib/import/m4/strdup.m4: Update.
3678         * gnulib/import/m4/strerror.m4: Update.
3679         * gnulib/import/m4/string_h.m4: Update.
3680         * gnulib/import/m4/strstr.m4: Update.
3681         * gnulib/import/m4/strtok_r.m4: Update.
3682         * gnulib/import/m4/sys_socket_h.m4: Update.
3683         * gnulib/import/m4/sys_stat_h.m4: Update.
3684         * gnulib/import/m4/sys_time_h.m4: Update.
3685         * gnulib/import/m4/sys_types_h.m4: Update.
3686         * gnulib/import/m4/tempname.m4: Update.
3687         * gnulib/import/m4/time_h.m4: Update.
3688         * gnulib/import/m4/unistd-safer.m4: Update.
3689         * gnulib/import/m4/unistd_h.m4: Update.
3690         * gnulib/import/m4/warn-on-use.m4: Update.
3691         * gnulib/import/m4/wchar_h.m4: Update.
3692         * gnulib/import/m4/wchar_t.m4: Update.
3693         * gnulib/import/m4/wctype_h.m4: Update.
3694         * gnulib/import/m4/wint_t.m4: Update.
3695         * gnulib/import/malloc.c: Update.
3696         * gnulib/import/malloc/scratch_buffer.h: Update.
3697         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3698         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3699         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3700         * gnulib/import/malloca.c: Update.
3701         * gnulib/import/malloca.h: Update.
3702         * gnulib/import/malloca.valgrind: Update.
3703         * gnulib/import/math.in.h: Update.
3704         * gnulib/import/mbrtowc.c: Update.
3705         * gnulib/import/mbsinit.c: Update.
3706         * gnulib/import/mbsrtowcs-impl.h: Update.
3707         * gnulib/import/mbsrtowcs-state.c: Update.
3708         * gnulib/import/mbsrtowcs.c: Update.
3709         * gnulib/import/memchr.c: Update.
3710         * gnulib/import/memmem.c: Update.
3711         * gnulib/import/mempcpy.c: Update.
3712         * gnulib/import/memrchr.c: Update.
3713         * gnulib/import/mkdir.c: Update.
3714         * gnulib/import/mkstemp.c: Update.
3715         * gnulib/import/msvc-inval.c: Update.
3716         * gnulib/import/msvc-inval.h: Update.
3717         * gnulib/import/msvc-nothrow.c: Update.
3718         * gnulib/import/msvc-nothrow.h: Update.
3719         * gnulib/import/open.c: Update.
3720         * gnulib/import/openat-die.c: Update.
3721         * gnulib/import/openat-priv.h: Update.
3722         * gnulib/import/openat-proc.c: Update.
3723         * gnulib/import/openat.c: Update.
3724         * gnulib/import/openat.h: Update.
3725         * gnulib/import/opendir.c: Update.
3726         * gnulib/import/pathmax.h: Update.
3727         * gnulib/import/pipe-safer.c: Update.
3728         * gnulib/import/rawmemchr.c: Update.
3729         * gnulib/import/readdir.c: Update.
3730         * gnulib/import/readlink.c: Update.
3731         * gnulib/import/realloc.c: Update.
3732         * gnulib/import/ref-add.sin: Update.
3733         * gnulib/import/ref-del.sin: Update.
3734         * gnulib/import/rename.c: Update.
3735         * gnulib/import/rewinddir.c: Update.
3736         * gnulib/import/rmdir.c: Update.
3737         * gnulib/import/same-inode.h: Update.
3738         * gnulib/import/save-cwd.c: Update.
3739         * gnulib/import/save-cwd.h: Update.
3740         * gnulib/import/scratch_buffer.h: Update.
3741         * gnulib/import/secure_getenv.c: Update.
3742         * gnulib/import/setenv.c: Update.
3743         * gnulib/import/signal.in.h: Update.
3744         * gnulib/import/stat-time.c: Update.
3745         * gnulib/import/stat-time.h: Update.
3746         * gnulib/import/stat-w32.c: Update.
3747         * gnulib/import/stat-w32.h: Update.
3748         * gnulib/import/stat.c: Update.
3749         * gnulib/import/stdbool.in.h: Update.
3750         * gnulib/import/stddef.in.h: Update.
3751         * gnulib/import/stdint.in.h: Update.
3752         * gnulib/import/stdio.in.h: Update.
3753         * gnulib/import/stdlib.in.h: Update.
3754         * gnulib/import/str-two-way.h: Update.
3755         * gnulib/import/strchrnul.c: Update.
3756         * gnulib/import/strdup.c: Update.
3757         * gnulib/import/streq.h: Update.
3758         * gnulib/import/strerror-override.c: Update.
3759         * gnulib/import/strerror-override.h: Update.
3760         * gnulib/import/strerror.c: Update.
3761         * gnulib/import/string.in.h: Update.
3762         * gnulib/import/stripslash.c: Update.
3763         * gnulib/import/strnlen1.c: Update.
3764         * gnulib/import/strnlen1.h: Update.
3765         * gnulib/import/strstr.c: Update.
3766         * gnulib/import/strtok_r.c: Update.
3767         * gnulib/import/sys_stat.in.h: Update.
3768         * gnulib/import/sys_time.in.h: Update.
3769         * gnulib/import/sys_types.in.h: Update.
3770         * gnulib/import/tempname.c: Update.
3771         * gnulib/import/tempname.h: Update.
3772         * gnulib/import/time.in.h: Update.
3773         * gnulib/import/unistd--.h: Update.
3774         * gnulib/import/unistd-safer.h: Update.
3775         * gnulib/import/unistd.in.h: Update.
3776         * gnulib/import/unsetenv.c: Update.
3777         * gnulib/import/verify.h: Update.
3778         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3779         * gnulib/import/wchar.in.h: Update.
3780         * gnulib/import/wctype.in.h: Update.
3781         * gnulib/import/xalloc-oversized.h: Update.
3782         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3783         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3784
3785 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3786
3787         * record-btrace.c (get_thread_current_frame): Remove
3788         old_inferior_ptid.
3789
3790 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3791
3792         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3793         with check_tag to 1 if and only if the type is tagged and the
3794         component being searched cannot been found in the current
3795         view. Otherwise, always call ada_to_fixed_type with
3796         check_tag to 0.
3797
3798 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3799
3800         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3801         declaration.
3802         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3803         * ada-varobj.c (ada_varobj_get_number_of_children,
3804         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3805
3806 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3807
3808         * ada-valprint.c (ada_value_print): Use type instead of
3809         enclosing type.
3810
3811 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3812
3813         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3814         an array of access to unconstrained array.
3815
3816 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3817
3818         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3819         (ada_check_typedef): Use it.
3820
3821 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3822
3823         * ada-varobj.c (ada_varobj_describe_struct_child)
3824         (ada_varobj_describe_child): Handle union case like struct one.
3825
3826 2018-09-10  Tom Tromey  <tom@tromey.com>
3827
3828         PR python/18380:
3829         * python/python.c (_initialize_python): Make example in "python"
3830         help work in Python 3.
3831
3832 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3833
3834         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3835         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3836         $(EXEEXT) to the script, as it is not a program.
3837
3838 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3839
3840         * python/py-prettyprint.c (pretty_print_one_value): Return
3841         gdbpy_ref<>.
3842         (print_string_repr): Adjust.
3843         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3844         * python/python-internal.h (apply_varobj_pretty_printer): Return
3845         gdbpy_ref<>.
3846         * varobj.c (varobj_value_get_print_value): Adjust.
3847
3848 2018-09-08  Tom Tromey  <tom@tromey.com>
3849
3850         PR python/16047:
3851         * python/py-prettyprint.c (pretty_print_one_value): Check for
3852         to_string method.
3853
3854 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3855
3856         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3857         replace_operator_with_call.
3858
3859 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3860
3861         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3862
3863 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3864
3865         * ada-typeprint.c (print_range): Print the bounds using TYPE
3866         rather than its TYPE_TARGET_TYPE.
3867
3868 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3869
3870         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3871         call to ada_to_fixed_value_create.
3872
3873 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3874
3875         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3876
3877 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3878
3879         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3880         by calls to error.
3881
3882 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3883
3884         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3885         Move update of loop variable "fi".
3886
3887 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3888
3889         * ada-lang.c (value_assign_to_component): In the case of
3890         big-endian targets, extract the bits of the given VAL
3891         using an src_offset of zero if container is not a scalar.
3892
3893 2018-09-06  Simon Ser  <contact@emersion.fr>
3894
3895         PR gdb/23105
3896         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3897         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3898         * fbsd-tdep.c (fbsd_make_note_desc): New.
3899         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3900         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3901         * target.h (enum target_object) Add FreeBSD-specific
3902         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3903
3904 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3905
3906         * compile/compile-c.h (generate_c_for_variable_locations):
3907         Change reference to pointer.
3908         * compile/compile-c-support.c (compile_program) <compute>:
3909         Likewise.
3910         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3911         (generate_c_for_for_one_variable): Likewise
3912         (generate_c_for_variable_locations): Likewise
3913         * compile/compile-c-types.c (compile_c_instance::convert_type):
3914         Likewise
3915         * compile/compile-cplus-symbols.c (convert_one_symbol):
3916         std::move the scope passed to enter_scope.
3917         * compile/compile-cplus-types.c
3918         (compile_cplus_instance::enter_scope): Make parameter
3919         rvalue-reference.
3920         (compile_cplus_instance::new_scope): Change reference to
3921         pointer.
3922         (compile_cplus_instance::convert_type): Likewise
3923         (compile_cplus_convert_typedef): std::move the scope passed to
3924         enter_scope.
3925         (compile_cplus_convert_struct_or_union): Likewise.
3926         (compile_cplus_convert_enum): Likewise.
3927         (compile_cplus_convert_namespace): Likewise.
3928         * compile/compile-cplus.h (compile_cplus_instance)
3929         <enter_scope>: Make parameter rvalue-reference.
3930         * compile/compile-internal.h (compile_instance)
3931         <get_cached_type>: Likewise
3932         * compile/compile-loc2c.c (push): Likewise
3933         (pushf): Likewise
3934         (unary): Likewise
3935         (binary): Likewise
3936         (print_label): Likewise
3937         (pushf_register_address): Likewise
3938         (pushf_register): Likewise
3939         (do_compile_dwarf_expr_to_c): Likewise
3940         (compile_dwarf_expr_to_c): Likewise
3941         (compile_dwarf_bounds_to_c): Likewise
3942         * compile/compile.c (compile_instance::get_cached_type):
3943         Likewise
3944         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3945         (compile_dwarf_bounds_to_c): Likewise
3946         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3947         (dwarf2_compile_property_to_c): Likewise
3948         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3949         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3950         Likewise
3951
3952 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3953
3954         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3955         * tui/tui-data.c (init_content_element): Don't initialize it.
3956
3957 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3958
3959         * tui/tui-data.h (struct tui_win_info)
3960         <detail::opaque>: Remove.
3961         * tui/tui-data.c (init_win_info): Remove assignment.
3962
3963 2018-09-05  Tom Tromey  <tom@tromey.com>
3964
3965         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3966         -Wformat-nonliteral.
3967         * target-float.c (host_float_ops<T>::to_string)
3968         (host_float_ops<T>::from_string): Use
3969         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3970         * configure: Rebuild.
3971
3972 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3973
3974         * printcmd.c (printf_c_string): Use
3975         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3976         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3977
3978 2018-09-05  Tom Tromey  <tom@tromey.com>
3979
3980         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3981
3982 2018-09-05  Tom de Vries  <tdevries@suse.de>
3983
3984         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3985         with resolve_abstract_p == true.
3986         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3987         defaulting to false. Propagate resolve_abstract_p to
3988         dwarf2_fetch_die_loc_sect_off.
3989         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3990         parameter, defaulting to false.
3991         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3992         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3993         parameter.
3994         * dwarf2read.h (struct die_info): Forward-declare.
3995         (die_info_ptr): New typedef.
3996         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3997
3998 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3999
4000         GDB 8.2 released.
4001
4002 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
4003             Pedro Alves  <palves@redhat.com>
4004
4005         * gnulib/Makefile.in (aclocal_m4_deps): Move to
4006         "aclocal-m4-deps.mk".  Include file here.
4007         $(srcdir)/aclocal.m4: Add "configure.ac".
4008         * gnulib/aclocal-m4-deps.mk: New file.
4009         * gnulib/update-gnulib.sh: Automatically update
4010         "aclocal-m4-deps.mk".
4011
4012 2018-09-04  Tom Tromey  <tom@tromey.com>
4013
4014         * configure: Rebuild.
4015         * configure.ac: Remove multi-ice code.
4016
4017 2018-09-04  Tom Tromey  <tom@tromey.com>
4018
4019         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
4020         (ada-exp.o): Update.
4021
4022 2018-09-04  Tom Tromey  <tom@tromey.com>
4023
4024         * Makefile.in (printcmd.o, target-float.o): Remove.
4025         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
4026
4027 2018-09-04  Tom Tromey  <tom@tromey.com>
4028
4029         * gnulib/Makefile.in: Remove obsolete comment.
4030         * Makefile.in: Remove obsolete comment.
4031
4032 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
4033
4034         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
4035         line with '+'.
4036
4037 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4038
4039         * riscv-tdep.c: Add 'prologue-value.h' include.
4040         (struct riscv_unwind_cache): New struct.
4041         (riscv_debug_unwinder): New global.
4042         (riscv_scan_prologue): Update arguments, capture register details
4043         from prologue scan.
4044         (riscv_skip_prologue): Reformat arguments line, move end of
4045         prologue calculation into riscv_scan_prologue.
4046         (riscv_frame_cache): Update return type, create
4047         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4048         details.
4049         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4050         (riscv_frame_prev_register): Use the trad_frame within the
4051         riscv_unwind_cache.
4052         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4053         flag.
4054
4055 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4056
4057         * trad-frame.h (trad_frame_set_realreg): Declare.
4058         (trad_frame_set_addr): Declare.
4059         * trad-frame.c (trad_frame_set_realreg): Define new function.
4060         (trad_frame_set_addr): Define new function.
4061         (trad_frame_set_reg_realreg): Use new function.
4062         (trad_frame_set_reg_addr): Use new function.
4063
4064 2018-09-01  Keith Seitz  <keiths@redhat.com>
4065
4066         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4067         pulongest instead of "%lld".
4068         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4069         ATTRIBUTE_UNUSED.
4070
4071 2018-08-31  Tom Tromey  <tom@tromey.com>
4072
4073         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4074         variant part type.
4075
4076 2018-08-31  Pedro Alves  <palves@redhat.com>
4077
4078         * gdbarch.h: Regenerate.
4079
4080 2018-08-31  Pedro Alves  <palves@redhat.com>
4081
4082         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4083         * target.h (Hardware watchpoint interfaces): Describe
4084         continuable/steppable/non-steppable watchpoints.
4085         * gdbarch.h, gdbarch.c: Regenerate.
4086
4087 2018-08-31  Pedro Alves  <palves@redhat.com>
4088
4089         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4090         Delete.
4091         * s390-linux-nat.c
4092         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4093         * target.h (target_ops::have_continuable_watchpoint): Delete.
4094         (target_have_continuable_watchpoint): Delete.
4095         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4096         * target-delegates.c: Regenerate.
4097
4098 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4099
4100         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4101         the files present in "gnulib/import/m4/".
4102
4103 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4104
4105         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4106         c.sw, c.swsp, and c.sdsp.
4107
4108 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4109
4110         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4111         (riscv_read_misa_reg): Don't cache value read into inferior data.
4112         (riscv_new_inferior_data): Delete.
4113         (riscv_inferior_data_cleanup): Delete.
4114         (riscv_inferior_data): Delete.
4115         (riscv_invalidate_inferior_data): Delete.
4116         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4117
4118 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4119
4120         * compile/compile-cplus-types.c
4121         (compile_cplus_instance::leave_scope): Take the address of scope
4122         object.
4123         (compile_cplus_instance::convert_qualified_base): Compare quals
4124         to 0.
4125
4126 2018-08-30  Keith Seitz  <keiths@redhat.com>
4127
4128         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4129         Use "%s" and host_address_to_string instead of "%p" in printf.
4130
4131 2018-08-29  Keith Seitz  <keiths@redhat.com>
4132
4133         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4134         and compile-cplus-types.c.
4135         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4136         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4137         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4138         Declare.
4139         * compile/compile-c-support.c: Include compile-cplus.h.
4140         (load_libcompile): Templatize.
4141         (get_compile_context): "New" function.
4142         (c_get_compile_context): Use get_compile_context.
4143         (cplus_get_compile_context): New function.
4144         (cplus_push_user_expression, cplus_pop_user_expression)
4145         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4146         (cplus_compute_program): Define new structs/functions.
4147         * compile/compile-cplus-symmbols.c: New file.
4148         * compile/compile-cplus-types.c: New file.
4149         * compile/compile-cplus.h: New file.
4150         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4151         Declare.
4152         * compile/compile-object-load.c (get_out_value_type): Use
4153         strncmp_iw when comparing symbol names.
4154         (compile_object_load): Add mst_bss and mst_data.
4155         * compile/compile.c (_initialize_compile): Remove
4156         -Wno-implicit-function-declaration from `compile_args'.
4157         * compile/gcc-cp-plugin.h: New file.
4158         * NEWS: Mention C++ compile support and new debug options.
4159
4160 2018-08-29  Keith Seitz  <keiths@redhat.com>
4161
4162         * linespec.c (collect_info::add_symbol): Make virtual.
4163         (struct symbol_searcher_collect_info): New struct.
4164         (symbol_searcher::find_all_symbols): New method.
4165         * symtab.h (class symbol_searcher): New class.
4166
4167 2018-08-29  Keith Seitz  <keiths@redhat.com>
4168
4169         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4170         Change to vector of block_symbol.  Update all users.
4171         (struct collect_info) <symbols>: Likewise.
4172         (collect_info::add_symbol): Take block_symbol as argument.
4173         Update all callers.
4174         (decode_compound_collector) <m_symbols>: Change type to vector
4175         of block_symbol.  Update all users.
4176         (decode_compound_collector::operator ()): Change parameter type
4177         to block_symbol.
4178         (find_method, find_function_symbols, find_linespec_symbols)
4179         (find_label_symbols_in_block, find_label_symbols): Change symbol
4180         vectors to block_symbol vectors.
4181         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4182         block_symbol.
4183
4184 2018-08-29  Keith Seitz  <keiths@redhat.com>
4185
4186         * linespec.c (symbolp): Remove typedef and VEC definitions.
4187         (bound_minimal_symbol_d): Likewise.
4188
4189 2018-08-29  Keith Seitz  <keiths@redhat.com>
4190
4191         * linespec.c (decode_compound_collector::decode_compound_collector):
4192         Remove initialization for `m_symtabs'.
4193         (decode_compound_collector::release_symbols): Change return type
4194         to std::vector.  Update all callers.
4195         (class decode_compound_collector) <m_symbols>: Change type to
4196         std::vector.
4197         (lookup_prefix_sym): Change return type to std::vector.  Update all
4198         callers.
4199         (compare_symbols): Remove.
4200         (std_compare_symbols): Rename to `compare_symbols'.
4201         (find_method): Change `sym_classes' parameter to std::vector.
4202         Update all callers.  Use std::sort to sort sym_classes.
4203         (find_linespec_symbols): Remove cleanup.
4204
4205 2018-08-29  Keith Seitz  <keiths@redhat.com>
4206
4207         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4208         std::vector.  Update all users.
4209         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4210         (struct collect_info) <minimal_symbols>: Likewise.
4211         (compare_msymbols): Return bool.  Change parameters to const
4212         bound_minimal_symbol references.
4213         (find_method, find_function_symbols, find_linespec_symbols): Change
4214         `minsyms' parameter to std::vector.  Update all callers.
4215
4216 2018-08-29  Keith Seitz  <keiths@redhat.com>
4217
4218         * linespec.c (struct linespec) <label_symbols>: Change type to
4219         std::vector.  Update all users.
4220         (find_label_symbols_in_block): Change `result' parameter to
4221         std::vector.  Update all callers.
4222         (find_label_symbols): Return std::vector.  Update all callers.
4223
4224 2018-08-29  Keith Seitz  <keiths@redhat.com>
4225
4226         * linespec.c (struct linespec) <function_symbols>: Change type to
4227         std::vector.  Update all users.
4228         (struct collect_info) <function_symbols>: Likewise.
4229         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4230         (std_compare_symbols): New function.
4231         (find_method, find_function_symbols, find_linespec_symbols)
4232         (find_label_symbols_in_block): Change `symbols' parameter to
4233         std::vector.  Update all callers.
4234         (find_label_symbols): Likewise for `function_symbols' and
4235         `label_funcs_ret'.
4236
4237 2018-08-29  Keith Seitz  <keiths@redhat.com>
4238
4239         * linespec.c (symtab_vector_up): Define.
4240         (struct linespec) <file_symtabs>: Change type to std::vector *.
4241         Update all uses.
4242         (struct collect_info) <file_symtabs>: Likewise.
4243         (collect_symtabs_from_filename): Return symtab_vector_up.
4244         Update all callers.
4245         (decode_objc): Remove cleanup.
4246         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4247         (symtab_collector::release_symtabs): Return symtab_vector_up.
4248         Update all callers.
4249         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4250         Update all users.
4251         (collect_symtabs_from_filename, symtabs_from_filename): Return
4252         symtab_vector_up.  Update all callers.
4253
4254 2018-08-29  Tom Tromey  <tom@tromey.com>
4255
4256         * csky-tdep.c (csky_analyze_prologue): Use
4257         core_addr_to_string_nz.
4258
4259 2018-08-29  Tom Tromey  <tom@tromey.com>
4260
4261         * windows-nat.c (struct xlate_exception) <them>: Change type to
4262         DWORD.
4263         (xlate): Fix formatting.  Remove last entry.
4264         (struct xlate_exception, xlate): Comment out.
4265         (windows_nat_target::resume): Use ranged for.
4266
4267 2018-08-29  Jim Wilson  <jimw@sifive.com>
4268
4269         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4270         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4271         of NT_PRFPREG.
4272         (riscv_linux_nat_target::store_registers): Likewise.
4273
4274 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4275
4276         PR gdb/23555
4277         PR gdb/23558
4278         * gnulib/aclocal.m4: Regenerate.
4279         * gnulib/config.in: Regenerate.
4280         * gnulib/configure: Regenerate.
4281         * gnulib/import/Makefile.am: Update.
4282         * gnulib/import/Makefile.in: Update.
4283         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4284         * gnulib/import/_Noreturn.h: ... this.
4285         * gnulib/import/alloca.in.h: Update.
4286         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4287         * gnulib/import/arg-nonnull.h: ... this.
4288         * gnulib/import/assure.h: Update.
4289         * gnulib/import/at-func.c: Update.
4290         * gnulib/import/basename-lgpl.c: Update.
4291         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4292         * gnulib/import/c++defs.h: ... this.
4293         * gnulib/import/canonicalize-lgpl.c: Update.
4294         * gnulib/import/cdefs.h: Update.
4295         * gnulib/import/chdir-long.c: Update.
4296         * gnulib/import/chdir-long.h: Update.
4297         * gnulib/import/cloexec.c: Update.
4298         * gnulib/import/cloexec.h: Update.
4299         * gnulib/import/close.c: Update.
4300         * gnulib/import/closedir.c: Update.
4301         * gnulib/import/config.charset: Update.
4302         * gnulib/import/dirent-private.h: Update.
4303         * gnulib/import/dirent.in.h: Update.
4304         * gnulib/import/dirfd.c: Update.
4305         * gnulib/import/dirname-lgpl.c: Update.
4306         * gnulib/import/dirname.h: Update.
4307         * gnulib/import/dosname.h: Update.
4308         * gnulib/import/dup-safer-flag.c: Update.
4309         * gnulib/import/dup-safer.c: Update.
4310         * gnulib/import/dup.c: Update.
4311         * gnulib/import/dup2.c: Update.
4312         * gnulib/import/errno.in.h: Update.
4313         * gnulib/import/error.c: Update.
4314         * gnulib/import/error.h: Update.
4315         * gnulib/import/exitfail.c: Update.
4316         * gnulib/import/exitfail.h: Update.
4317         * gnulib/import/extra/update-copyright: Update.
4318         * gnulib/import/fchdir.c: Update.
4319         * gnulib/import/fcntl.c: Update.
4320         * gnulib/import/fcntl.in.h: Update.
4321         * gnulib/import/fd-hook.c: Update.
4322         * gnulib/import/fd-hook.h: Update.
4323         * gnulib/import/fd-safer-flag.c: Update.
4324         * gnulib/import/fd-safer.c: Update.
4325         * gnulib/import/fdopendir.c: Update.
4326         * gnulib/import/filename.h: Update.
4327         * gnulib/import/filenamecat-lgpl.c: Update.
4328         * gnulib/import/filenamecat.h: Update.
4329         * gnulib/import/flexmember.h: Update.
4330         * gnulib/import/float+.h: Update.
4331         * gnulib/import/float.c: Update.
4332         * gnulib/import/float.in.h: Update.
4333         * gnulib/import/fnmatch.c: Update.
4334         * gnulib/import/fnmatch.in.h: Update.
4335         * gnulib/import/fnmatch_loop.c: Update.
4336         * gnulib/import/fpucw.h: Update.
4337         * gnulib/import/frexp.c: Update.
4338         * gnulib/import/frexpl.c: Update.
4339         * gnulib/import/fstat.c: Update.
4340         * gnulib/import/fstatat.c: Update.
4341         * gnulib/import/getcwd-lgpl.c: Update.
4342         * gnulib/import/getcwd.c: Update.
4343         * gnulib/import/getdtablesize.c: Update.
4344         * gnulib/import/getlogin_r.c: Update.
4345         * gnulib/import/getprogname.c: Update.
4346         * gnulib/import/getprogname.h: Update.
4347         * gnulib/import/gettext.h: Update.
4348         * gnulib/import/gettimeofday.c: Update.
4349         * gnulib/import/glob-libc.h: Update.
4350         * gnulib/import/glob.c: Update.
4351         * gnulib/import/glob.in.h: Update.
4352         * gnulib/import/glob_internal.h: Update.
4353         * gnulib/import/glob_pattern_p.c: Update.
4354         * gnulib/import/globfree.c: Update.
4355         * gnulib/import/hard-locale.c: Update.
4356         * gnulib/import/hard-locale.h: Update.
4357         * gnulib/import/intprops.h: Update.
4358         * gnulib/import/inttypes.in.h: Update.
4359         * gnulib/import/isnan.c: Update.
4360         * gnulib/import/isnand-nolibm.h: Update.
4361         * gnulib/import/isnand.c: Update.
4362         * gnulib/import/isnanl-nolibm.h: Update.
4363         * gnulib/import/isnanl.c: Update.
4364         * gnulib/import/itold.c: Update.
4365         * gnulib/import/libc-config.h: Update.
4366         * gnulib/import/limits.in.h: Update.
4367         * gnulib/import/localcharset.c: Update.
4368         * gnulib/import/localcharset.h: Update.
4369         * gnulib/import/localtime-buffer.c: Update.
4370         * gnulib/import/localtime-buffer.h: Update.
4371         * gnulib/import/lstat.c: Update.
4372         * gnulib/import/m4/00gnulib.m4: Update.
4373         * gnulib/import/m4/__inline.m4: Update.
4374         * gnulib/import/m4/absolute-header.m4: Update.
4375         * gnulib/import/m4/alloca.m4: Update.
4376         * gnulib/import/m4/builtin-expect.m4: Update.
4377         * gnulib/import/m4/canonicalize.m4: Update.
4378         * gnulib/import/m4/chdir-long.m4: Update.
4379         * gnulib/import/m4/close.m4: Update.
4380         * gnulib/import/m4/closedir.m4: Update.
4381         * gnulib/import/m4/configmake.m4: Update.
4382         * gnulib/import/m4/d-ino.m4: Update.
4383         * gnulib/import/m4/d-type.m4: Update.
4384         * gnulib/import/m4/dirent_h.m4: Update.
4385         * gnulib/import/m4/dirfd.m4: Update.
4386         * gnulib/import/m4/dirname.m4: Update.
4387         * gnulib/import/m4/double-slash-root.m4: Update.
4388         * gnulib/import/m4/dup.m4: Update.
4389         * gnulib/import/m4/dup2.m4: Update.
4390         * gnulib/import/m4/eealloc.m4: Update.
4391         * gnulib/import/m4/environ.m4: Update.
4392         * gnulib/import/m4/errno_h.m4: Update.
4393         * gnulib/import/m4/error.m4: Update.
4394         * gnulib/import/m4/exponentd.m4: Update.
4395         * gnulib/import/m4/exponentl.m4: Update.
4396         * gnulib/import/m4/extensions.m4: Update.
4397         * gnulib/import/m4/extern-inline.m4: Update.
4398         * gnulib/import/m4/fchdir.m4: Update.
4399         * gnulib/import/m4/fcntl-o.m4: Update.
4400         * gnulib/import/m4/fcntl.m4: Update.
4401         * gnulib/import/m4/fcntl_h.m4: Update.
4402         * gnulib/import/m4/fdopendir.m4: Update.
4403         * gnulib/import/m4/filenamecat.m4: Update.
4404         * gnulib/import/m4/flexmember.m4: Update.
4405         * gnulib/import/m4/float_h.m4: Update.
4406         * gnulib/import/m4/fnmatch.m4: Update.
4407         * gnulib/import/m4/fnmatch_h.m4: Update.
4408         * gnulib/import/m4/fpieee.m4: Update.
4409         * gnulib/import/m4/frexp.m4: Update.
4410         * gnulib/import/m4/frexpl.m4: Update.
4411         * gnulib/import/m4/fstat.m4: Update.
4412         * gnulib/import/m4/fstatat.m4: Update.
4413         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4414         * gnulib/import/m4/getcwd-path-max.m4: Update.
4415         * gnulib/import/m4/getcwd.m4: Update.
4416         * gnulib/import/m4/getdtablesize.m4: Update.
4417         * gnulib/import/m4/getlogin.m4: Update.
4418         * gnulib/import/m4/getlogin_r.m4: Update.
4419         * gnulib/import/m4/getpagesize.m4: Update.
4420         * gnulib/import/m4/getprogname.m4: Update.
4421         * gnulib/import/m4/gettimeofday.m4: Update.
4422         * gnulib/import/m4/glibc21.m4: Update.
4423         * gnulib/import/m4/glob.m4: Update.
4424         * gnulib/import/m4/glob_h.m4: Update.
4425         * gnulib/import/m4/gnulib-cache.m4: Update.
4426         * gnulib/import/m4/gnulib-common.m4: Update.
4427         * gnulib/import/m4/gnulib-comp.m4: Update.
4428         * gnulib/import/m4/gnulib-tool.m4: Update.
4429         * gnulib/import/m4/hard-locale.m4: Update.
4430         * gnulib/import/m4/include_next.m4: Update.
4431         * gnulib/import/m4/inttypes-pri.m4: Update.
4432         * gnulib/import/m4/inttypes.m4: Update.
4433         * gnulib/import/m4/isnand.m4: Update.
4434         * gnulib/import/m4/isnanl.m4: Update.
4435         * gnulib/import/m4/largefile.m4: Update.
4436         * gnulib/import/m4/limits-h.m4: Update.
4437         * gnulib/import/m4/localcharset.m4: Update.
4438         * gnulib/import/m4/locale-fr.m4: Update.
4439         * gnulib/import/m4/locale-ja.m4: Update.
4440         * gnulib/import/m4/locale-zh.m4: Update.
4441         * gnulib/import/m4/localtime-buffer.m4: Update.
4442         * gnulib/import/m4/longlong.m4: Update.
4443         * gnulib/import/m4/lstat.m4: Update.
4444         * gnulib/import/m4/malloc.m4: Update.
4445         * gnulib/import/m4/malloca.m4: Update.
4446         * gnulib/import/m4/math_h.m4: Update.
4447         * gnulib/import/m4/mbrtowc.m4: Update.
4448         * gnulib/import/m4/mbsinit.m4: Update.
4449         * gnulib/import/m4/mbsrtowcs.m4: Update.
4450         * gnulib/import/m4/mbstate_t.m4: Update.
4451         * gnulib/import/m4/memchr.m4: Update.
4452         * gnulib/import/m4/memmem.m4: Update.
4453         * gnulib/import/m4/mempcpy.m4: Update.
4454         * gnulib/import/m4/memrchr.m4: Update.
4455         * gnulib/import/m4/mkdir.m4: Update.
4456         * gnulib/import/m4/mkstemp.m4: Update.
4457         * gnulib/import/m4/mmap-anon.m4: Update.
4458         * gnulib/import/m4/mode_t.m4: Update.
4459         * gnulib/import/m4/msvc-inval.m4: Update.
4460         * gnulib/import/m4/msvc-nothrow.m4: Update.
4461         * gnulib/import/m4/multiarch.m4: Update.
4462         * gnulib/import/m4/nocrash.m4: Update.
4463         * gnulib/import/m4/off_t.m4: Update.
4464         * gnulib/import/m4/onceonly.m4: Update.
4465         * gnulib/import/m4/open-cloexec.m4: Update.
4466         * gnulib/import/m4/open.m4: Update.
4467         * gnulib/import/m4/openat.m4: Update.
4468         * gnulib/import/m4/opendir.m4: Update.
4469         * gnulib/import/m4/pathmax.m4: Update.
4470         * gnulib/import/m4/rawmemchr.m4: Update.
4471         * gnulib/import/m4/readdir.m4: Update.
4472         * gnulib/import/m4/readlink.m4: Update.
4473         * gnulib/import/m4/realloc.m4: Update.
4474         * gnulib/import/m4/rename.m4: Update.
4475         * gnulib/import/m4/rewinddir.m4: Update.
4476         * gnulib/import/m4/rmdir.m4: Update.
4477         * gnulib/import/m4/save-cwd.m4: Update.
4478         * gnulib/import/m4/secure_getenv.m4: Update.
4479         * gnulib/import/m4/setenv.m4: Update.
4480         * gnulib/import/m4/signal_h.m4: Update.
4481         * gnulib/import/m4/ssize_t.m4: Update.
4482         * gnulib/import/m4/stat-time.m4: Update.
4483         * gnulib/import/m4/stat.m4: Update.
4484         * gnulib/import/m4/std-gnu11.m4: Update.
4485         * gnulib/import/m4/stdbool.m4: Update.
4486         * gnulib/import/m4/stddef_h.m4: Update.
4487         * gnulib/import/m4/stdint.m4: Update.
4488         * gnulib/import/m4/stdio_h.m4: Update.
4489         * gnulib/import/m4/stdlib_h.m4: Update.
4490         * gnulib/import/m4/strchrnul.m4: Update.
4491         * gnulib/import/m4/strdup.m4: Update.
4492         * gnulib/import/m4/strerror.m4: Update.
4493         * gnulib/import/m4/string_h.m4: Update.
4494         * gnulib/import/m4/strstr.m4: Update.
4495         * gnulib/import/m4/strtok_r.m4: Update.
4496         * gnulib/import/m4/sys_socket_h.m4: Update.
4497         * gnulib/import/m4/sys_stat_h.m4: Update.
4498         * gnulib/import/m4/sys_time_h.m4: Update.
4499         * gnulib/import/m4/sys_types_h.m4: Update.
4500         * gnulib/import/m4/tempname.m4: Update.
4501         * gnulib/import/m4/time_h.m4: Update.
4502         * gnulib/import/m4/unistd-safer.m4: Update.
4503         * gnulib/import/m4/unistd_h.m4: Update.
4504         * gnulib/import/m4/warn-on-use.m4: Update.
4505         * gnulib/import/m4/wchar_h.m4: Update.
4506         * gnulib/import/m4/wchar_t.m4: Update.
4507         * gnulib/import/m4/wctype_h.m4: Update.
4508         * gnulib/import/m4/wint_t.m4: Update.
4509         * gnulib/import/malloc.c: Update.
4510         * gnulib/import/malloc/scratch_buffer.h: Update.
4511         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4512         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4513         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4514         * gnulib/import/malloca.c: Update.
4515         * gnulib/import/malloca.h: Update.
4516         * gnulib/import/malloca.valgrind: Update.
4517         * gnulib/import/math.in.h: Update.
4518         * gnulib/import/mbrtowc.c: Update.
4519         * gnulib/import/mbsinit.c: Update.
4520         * gnulib/import/mbsrtowcs-impl.h: Update.
4521         * gnulib/import/mbsrtowcs-state.c: Update.
4522         * gnulib/import/mbsrtowcs.c: Update.
4523         * gnulib/import/memchr.c: Update.
4524         * gnulib/import/memmem.c: Update.
4525         * gnulib/import/mempcpy.c: Update.
4526         * gnulib/import/memrchr.c: Update.
4527         * gnulib/import/mkdir.c: Update.
4528         * gnulib/import/mkstemp.c: Update.
4529         * gnulib/import/msvc-inval.c: Update.
4530         * gnulib/import/msvc-inval.h: Update.
4531         * gnulib/import/msvc-nothrow.c: Update.
4532         * gnulib/import/msvc-nothrow.h: Update.
4533         * gnulib/import/open.c: Update.
4534         * gnulib/import/openat-die.c: Update.
4535         * gnulib/import/openat-priv.h: Update.
4536         * gnulib/import/openat-proc.c: Update.
4537         * gnulib/import/openat.c: Update.
4538         * gnulib/import/openat.h: Update.
4539         * gnulib/import/opendir.c: Update.
4540         * gnulib/import/pathmax.h: Update.
4541         * gnulib/import/pipe-safer.c: Update.
4542         * gnulib/import/rawmemchr.c: Update.
4543         * gnulib/import/readdir.c: Update.
4544         * gnulib/import/readlink.c: Update.
4545         * gnulib/import/realloc.c: Update.
4546         * gnulib/import/ref-add.sin: Update.
4547         * gnulib/import/ref-del.sin: Update.
4548         * gnulib/import/rename.c: Update.
4549         * gnulib/import/rewinddir.c: Update.
4550         * gnulib/import/rmdir.c: Update.
4551         * gnulib/import/same-inode.h: Update.
4552         * gnulib/import/save-cwd.c: Update.
4553         * gnulib/import/save-cwd.h: Update.
4554         * gnulib/import/scratch_buffer.h: Update.
4555         * gnulib/import/secure_getenv.c: Update.
4556         * gnulib/import/setenv.c: Update.
4557         * gnulib/import/signal.in.h: Update.
4558         * gnulib/import/stat-time.c: Update.
4559         * gnulib/import/stat-time.h: Update.
4560         * gnulib/import/stat-w32.c: Update.
4561         * gnulib/import/stat-w32.h: Update.
4562         * gnulib/import/stat.c: Update.
4563         * gnulib/import/stdbool.in.h: Update.
4564         * gnulib/import/stddef.in.h: Update.
4565         * gnulib/import/stdint.in.h: Update.
4566         * gnulib/import/stdio.in.h: Update.
4567         * gnulib/import/stdlib.in.h: Update.
4568         * gnulib/import/str-two-way.h: Update.
4569         * gnulib/import/strchrnul.c: Update.
4570         * gnulib/import/strdup.c: Update.
4571         * gnulib/import/streq.h: Update.
4572         * gnulib/import/strerror-override.c: Update.
4573         * gnulib/import/strerror-override.h: Update.
4574         * gnulib/import/strerror.c: Update.
4575         * gnulib/import/string.in.h: Update.
4576         * gnulib/import/stripslash.c: Update.
4577         * gnulib/import/strnlen1.c: Update.
4578         * gnulib/import/strnlen1.h: Update.
4579         * gnulib/import/strstr.c: Update.
4580         * gnulib/import/strtok_r.c: Update.
4581         * gnulib/import/sys_stat.in.h: Update.
4582         * gnulib/import/sys_time.in.h: Update.
4583         * gnulib/import/sys_types.in.h: Update.
4584         * gnulib/import/tempname.c: Update.
4585         * gnulib/import/tempname.h: Update.
4586         * gnulib/import/time.in.h: Update.
4587         * gnulib/import/unistd--.h: Update.
4588         * gnulib/import/unistd-safer.h: Update.
4589         * gnulib/import/unistd.in.h: Update.
4590         * gnulib/import/unsetenv.c: Update.
4591         * gnulib/import/verify.h: Update.
4592         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4593         * gnulib/import/wchar.in.h: Update.
4594         * gnulib/import/wctype.in.h: Update.
4595         * gnulib/import/xalloc-oversized.h: Update.
4596         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4597         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4598
4599 2018-08-16  Gary Benson <gbenson@redhat.com>
4600
4601         PR gdb/13000:
4602         * gdb/main.c (captured_main_1): Exit with nonzero status
4603         in batch mode if the last command to be executed failed.
4604         * NEWS: Mention the above.
4605
4606 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4607
4608         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4609         end of warning message.
4610
4611 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4612
4613         PR gdb/22943:
4614         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4615         (aarch64_extract_return_value): Use
4616         aapcs_is_vfp_call_or_return_candidate.
4617         (aarch64_return_in_memory): Likewise.
4618         (aarch64_store_return_value): Likewise.
4619
4620 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4621
4622         * aarch64-tdep.c
4623         (aapcs_is_vfp_call_or_return_candidate): Make static
4624         (pass_in_v_or_stack): Remove function.
4625         (pass_in_v_vfp_candidate): New function.
4626         (aarch64_push_dummy_call): Check for float register candidates.
4627
4628 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4629
4630         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4631         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4632         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4633
4634 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4635
4636         PR build/23399
4637         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4638         (struct ipa_sym_addresses): Rename to...
4639         (struct ipa_sym_addresses_common): ... this.
4640         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4641
4642 2018-08-28  Tom Tromey  <tom@tromey.com>
4643
4644         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4645         (token_fifo): Now a std::vector.
4646         (yylex, c_parse): Update.
4647         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4648         (token_fifo): Now a std::vector.
4649         (yylex, d_parse): Update.
4650         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4651         (token_fifo): Now a std::vector.
4652         (yylex, go_parse): Update.
4653
4654 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4655
4656         * parser-defs.h (struct type_stack) <elements>: Change type to
4657         std::vector<union type_stack_elt>.
4658         <depth, size>: Remove.
4659         * parse.c (parse_exp_in_context_1): Adjust.
4660         (type_stack_reserve): Remove.
4661         (check_type_stack_depth): Remove.
4662         (insert_into_type_stack): Adjust to std::vector.
4663         (insert_type): Likewise.
4664         (push_type): Likewise.
4665         (push_type_int): Likewise.
4666         (insert_type_address_space): Likewise.
4667         (pop_type): Likewise.
4668         (pop_type_int): Likewise.
4669         (pop_typelist): Likewise.
4670         (pop_type_stack): Likewise.
4671         (append_type_stack): Likewise.
4672         (push_type_stack): Likewise.
4673         (get_type_stack): Likewise.
4674         (type_stack_cleanup): Likewise.
4675         (push_typelist): Likewise.
4676         (follow_types): Likewise.
4677         (_initialize_parse): Likewise.
4678
4679 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4680
4681         * NEWS: Mention csky target.
4682
4683 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4684             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4685             Don Breazeal  <donb@codesourcery.com>
4686
4687         * csky-linux-tdep.c: New file.
4688         * csky-tdep.c: Likewise.
4689         * csky-tdep.h: Likewise.
4690         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4691         csky-tdep.o.
4692         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4693         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4694         * configure.tgt: Add csky support.
4695
4696 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4697
4698         * python/py-framefilter.c (py_print_frame): Print frame architecture
4699         when printing on an MI output.
4700
4701 2018-08-27  Tom Tromey  <tom@tromey.com>
4702
4703         PR build/23087:
4704         * configure: Rebuild.
4705         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4706
4707 2018-08-27  Tom Tromey  <tom@tromey.com>
4708
4709         * aarch64-linux-tdep.c
4710         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4711         casts to int.
4712
4713 2018-08-27  Tom Tromey  <tom@tromey.com>
4714
4715         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4716         unsigned.
4717         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4718         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4719         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4720         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4721         unsigned.
4722
4723 2018-08-27  Tom Tromey  <tom@tromey.com>
4724
4725         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4726         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4727
4728 2018-08-27  Tom Tromey  <tom@tromey.com>
4729
4730         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4731         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4732         ULONGEST_MAX.
4733         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4734         ULONGEST_MAX.
4735         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4736         ULONGEST_MAX.
4737         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4738         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4739         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4740         ULONGEST_MAX.
4741         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4742         (ppc64_linux_sigaction_tramp_frame)
4743         (ppc32_linux_sighandler_tramp_frame)
4744         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4745         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4746         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4747         * mn10300-linux-tdep.c (am33_linux_sigframe)
4748         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4749         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4750         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4751         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4752         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4753         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4754         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4755         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4756         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4757         * microblaze-linux-tdep.c
4758         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4759         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4760         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4761         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4762         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4763         * common/common-types.h (ULONGEST_MAX): New define.
4764         (CORE_ADDR_MAX): Fix formatting.
4765         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4766         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4767         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4768         (arm_linux_rt_sigreturn_tramp_frame)
4769         (arm_eabi_linux_sigreturn_tramp_frame)
4770         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4771         (thumb2_eabi_linux_sigreturn_tramp_frame)
4772         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4773         (arm_linux_restart_syscall_tramp_frame)
4774         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4775         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4776         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4777         ULONGEST_MAX.
4778         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4779
4780 2018-08-27  Tom Tromey  <tom@tromey.com>
4781
4782         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4783         CORE_ADDR_MAX.
4784         * mips-tdep.c (mips_deal_with_atomic_sequence)
4785         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4786         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4787         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4788         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4789         CORE_ADDR_MAX.
4790         * aarch64-tdep.c (aarch64_software_single_step): Use
4791         CORE_ADDR_MAX.
4792
4793 2018-08-27  Tom Tromey  <tom@tromey.com>
4794
4795         * linespec.c (complete_linespec_component): Add cast to "char".
4796         * completer.c (completion_tracker::build_completion_result): Add
4797         cast to "char".
4798
4799 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4800
4801         * solist.h (struct solist, struct target_so_ops): Fix
4802         indentation.
4803
4804 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4805
4806         * ada-tasks.c (ada_task_info_s): Remove typedef.
4807         (DEF_VEC_O(ada_task_info_s)): Remove.
4808         (struct ada_tasks_inferior_data): Initialize fields.
4809         <task_list>: Make an std::vector.
4810         (get_ada_tasks_inferior_data): Allocate with new.
4811         (ada_get_task_number): Adjust.
4812         (get_task_number_from_id): Likewise.
4813         (valid_task_id): Likewise.
4814         (ada_get_task_info_from_ptid): Likewise.
4815         (iterate_over_live_ada_tasks): Likewise.
4816         (add_ada_task): Likewise.
4817         (read_known_tasks): Likewise.
4818         (ada_build_task_list): Likewise.
4819         (print_ada_task_info): Likewise.
4820         (info_task): Likewise.
4821         (task_command_1): Likewise.
4822
4823 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4824
4825         * ada-lang.c (add_angle_brackets): Return std::string.
4826
4827 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4828
4829         * python/py-threadevent.c (py_get_event_thread): Initialize
4830         pythread.
4831
4832 2018-08-24  Pedro Alves  <palves@redhat.com>
4833
4834         * python/py-bpevent.c (create_breakpoint_event_object): Use
4835         copy-initialization.
4836         * python/py-continueevent.c (emit_continue_event): Use
4837         copy-initialization.
4838         * python/py-exitedevent.c (create_exited_event_object): Return a
4839         gdbpy_ref<>.
4840         (emit_exited_event): Use copy-initialization.
4841         * python/py-inferior.c (python_new_inferior)
4842         (python_inferior_deleted, add_thread_object): Use
4843         copy-initialization.
4844         * python/py-infevents.c (create_inferior_call_event_object)
4845         (create_register_changed_event_object)
4846         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4847         (emit_inferior_call_event, emit_memory_changed_event)
4848         (emit_register_changed_event): Use copy-initialization.
4849         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4850         Return a gdbpy_ref<>.
4851         (emit_new_objfile_event): Use copy-initialization.
4852         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4853         (emit_clear_objfiles_event): Use copy-initialization.
4854         * python/py-signalevent.c (create_signal_event_object): Use
4855         copy-initialization.
4856         * python/py-threadevent.c (create_thread_event_object): Use
4857         copy-initialization.
4858
4859 2018-08-24  Pedro Alves  <palves@redhat.com>
4860             Simon Marchi  <simon.marchi@ericsson.com>
4861
4862         PR gdb/23379
4863         * python/py-continueevent.c: Include "gdbthread.h".
4864         (create_continue_event_object): Add intro comment.  Add 'ptid'
4865         parameter.  Use it to find thread to pass to
4866         create_thread_event_object.
4867         (emit_continue_event): Pass PTID down to
4868         create_continue_event_object.
4869         * python/py-event.h (py_get_event_thread): Declare.
4870         (create_thread_event_object): Remove default from 'thread'
4871         parameter.
4872         * python/py-stopevent.c (create_stop_event_object): Use
4873         py_get_event_thread.
4874         * python/py-threadevent.c (get_event_thread): Rename to ...
4875         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4876         and use it to find the thread.
4877         (create_thread_event_object): Assert that THREAD isn't null.
4878         Don't find the event thread here.
4879
4880 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4881
4882         * block.h (blockrange, blockranges): New struct declarations.
4883         (struct block): Add new field named `ranges'.
4884         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4885         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4886         macros for accessing ranges in struct block.
4887         (make_blockranges): New declaration.
4888         block.c (make_blockranges): New function.
4889         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4890         for block.
4891         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4892         * blockframe.c (cache_pc_function_block): New static global.
4893         (clear_pc_function_cache): Clear cache_pc_function_block.
4894         (find_pc_partial_function): Move comment to symtab.h.  Add
4895         support for non-contiguous blocks.
4896         * cli/cli-cmds.c (block.h): Include.
4897         (print_disassembly): Handle printing of non-contiguous blocks.
4898         (disassemble_current_function): Likewise.
4899         (disassemble_command): Likewise.
4900
4901         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4902         BLOCK_START.
4903         * blockframe.c (get_pc_function_start): Likewise.
4904         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4905         (gcc_symbol_address): Likewise.
4906         * compile/compile-object-run.c (compile_object_run): Likewise.
4907         * compile/compile.c (get_expr_block_and_pc): Likewise.
4908         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4909         (func_addr_to_tail_call_list): Likewise.
4910         * findvar.c (default_read_var_value): Likewise.
4911         * inline-frame.c (inline_frame_this_id): Likewise.
4912         (skip-inline_frames): Likewise.
4913         * infcmd.c (until_next_command): Likewise.
4914         * linespec.c (convert_linespec_to_sals): Likewise.
4915         * parse.c (parse_exp_in_context_1): Likewise.
4916         * printcmd.c (build_address_symbolic): likewise.
4917         (info_address_command): Likewise.
4918         symtab.c (find_function_start_sal): Likewise.
4919         (skip_prologue_sal): Likewise.
4920         (find_function_alias_target): Likewise.
4921         (find_gnu_ifunc): Likewise.
4922         * stack.c (find_frame_funname): Likewise.
4923         * symtab.c (fixup_symbol_section): Likewise.
4924         (find_function_start_sal): Likewise.
4925         (skip_prologue_sal): Likewsie.
4926         (find_function_alias_target): Likewise.
4927         (find_gnu_ifunc): Likewise.
4928         * tracepoint.c (info_scope_command): Likewise.
4929         * value.c (value_fn_field): Likewise.
4930
4931         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4932         in place of find_pc_partial_function.
4933         * blockframe.c (find_function_entry_range_from_pc): New function.
4934         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4935         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4936         for each range in a block.
4937
4938
4939 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4940
4941         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4942         incrementation.
4943
4944 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4945
4946         * solib-svr4.c (read_program_headers_from_bfd): Return
4947         gdb::optional<gdb::byte_vector>.
4948         (svr4_exec_displacement): Adjust.
4949
4950 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4951
4952         * solib-svr4.c (read_program_header): Return
4953         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4954         (find_program_interpreter): Return
4955         gdb::optional<gdb::byte_vector>.
4956         (scan_dyntag_auxv): Adjust.
4957         (enable_break): Adjust.
4958         (svr4_exec_displacement): Adjust.
4959
4960 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4961
4962         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4963         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4964
4965 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4966
4967         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4968         string_vprintf.
4969         * guile/scm-utils.c (gdbscm_printf): Likewise.
4970         * serial.c (serial_printf): Likewise.
4971         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4972
4973 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4974
4975         * stack.c (print_frame): Print frame architecture when printing on
4976         an MI output.
4977         * NEWS: Mention new "arch" attribute in frame output.
4978
4979 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4980
4981         * arch/aarch64.h (aarch64_regnum): Update comment.
4982
4983 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4984
4985         * NEWS: Add SVE to 8.2 section.
4986
4987 2018-08-21  Pedro Alves  <palves@redhat.com>
4988
4989         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4990         out from gdbscm_parse_function_args.
4991         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4992         gdbscm_parse_function_args_1.
4993
4994 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4995
4996         PR gdb/17816
4997         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4998         operator.
4999
5000 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
5001
5002         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
5003
5004 2018-08-19  Michael Spang  <spang@google.com>
5005
5006         PR gdb/11786
5007         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
5008         for PT_TLS segments.
5009
5010 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
5011
5012         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
5013         dwarf_variable_value.
5014         * dwarf2-frame.c (class dwarf_expr_executor):
5015         Add override for dwarf_variable_value.
5016         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
5017         (class symbol_needs_eval_context): Likewise.
5018         (indirect_synthetic_pointer): Add forward declaration.
5019         (sect_variable_value): New function.
5020         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
5021         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
5022         for DW_OP_GNU_variable_value.
5023
5024 2018-08-16  Tom Tromey  <tom@tromey.com>
5025
5026         * top.c (read_command_file): Update.
5027         (command_line_input): Remove "repeat" argument.
5028         * ada-lang.c (get_selections): Update.
5029         * linespec.c (decode_line_2): Update.
5030         * defs.h (command_line_input): Remove argument.
5031         * cli/cli-script.c (read_next_line): Update.
5032         * python/py-gdb-readline.c: Update.
5033
5034 2018-08-17  Tom Tromey  <tom@tromey.com>
5035
5036         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5037         command_line_input.
5038
5039 2018-08-15  Tom Tromey  <tom@tromey.com>
5040
5041         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5042
5043 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5044
5045         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5046         If used, use find_pc_partial_function to find address range
5047         to disassemble.
5048         * mi/mi-main.c (mi_cmd_list_features): Report
5049         "data-disassemble-a-option" feature.
5050         * NEWS: Mention new -data-disassemble option -a.
5051
5052 2018-08-13  Tom Tromey  <tom@tromey.com>
5053
5054         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5055
5056 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5057
5058         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5059         (aarch64_linux_collect_sve_regset): Likewise.
5060         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5061         * regcache.h (regcache_map_entry_size): New function.
5062
5063 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5064
5065         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5066         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5067         (SVE_HEADER_VL_LENGTH): Likewise.
5068         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5069         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5070         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5071         (SVE_HEADER_SIZE_OFFSET): Likewise.
5072         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5073         (SVE_HEADER_VL_OFFSET): Likewise.
5074         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5075         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5076         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5077         (SVE_HEADER_SIZE): Likewise.
5078         (aarch64_linux_core_read_vq): Add function.
5079         (aarch64_linux_core_read_description): Check for SVE section.
5080
5081 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5082
5083         * aarch64-fbsd-tdep.c
5084         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5085         collect_size.
5086         * aarch64-linux-tdep.c
5087         (aarch64_linux_iterate_over_regset_sections): Likewise.
5088         * alpha-linux-tdep.c
5089         (alpha_linux_iterate_over_regset_sections):
5090         * alpha-nbsd-tdep.c
5091         (alphanbsd_iterate_over_regset_sections): Likewise.
5092         * amd64-fbsd-tdep.c
5093         (amd64fbsd_iterate_over_regset_sections): Likewise.
5094         * amd64-linux-tdep.c
5095         (amd64_linux_iterate_over_regset_sections): Likewise.
5096         * arm-bsd-tdep.c
5097         (armbsd_iterate_over_regset_sections): Likewise.
5098         * arm-fbsd-tdep.c
5099         (arm_fbsd_iterate_over_regset_sections): Likewise.
5100         * arm-linux-tdep.c
5101         (arm_linux_iterate_over_regset_sections): Likewise.
5102         * corelow.c (get_core_registers_cb): Likewise.
5103         (core_target::fetch_registers): Likewise.
5104         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5105         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5106         * gdbarch.h (void): Regenerate.
5107         * gdbarch.sh: Add supply_size and collect_size.
5108         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5109         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5110         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5111         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5112         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5113         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5114         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5115         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5116         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5117         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5118         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5119         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5120         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5121         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5122         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5123         Likewise.
5124         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5125         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5126         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5127         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5128         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5129         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5130         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5131         Likewise.
5132         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5133         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5134         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5135         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5136         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5137         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5138         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5139         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5140
5141 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5142
5143         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5144         with string_printf.
5145
5146 2018-08-10  Keith Seitz  <keiths@redhat.com>
5147
5148         * compile/compile-c-support.c (add_code_header, add_code_footer):
5149         Move into policy class.
5150         (c_push_user_expression, pop_user_expression_nop)
5151         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5152         (compile_program): New host class.
5153         (c_compile_program): New typedef.
5154         (c_compute_porgram): Use c_compile_program.
5155
5156 2018-08-10  Keith Seitz  <keiths@redhat.com>
5157
5158         * compile/compile-internal.h (compile_instance::~compile_instance):
5159         Remove calls to htab_delete.
5160         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5161         * compile.c (compile_instance::compile_instance): Initialize
5162         htab unique pointers.
5163         (compile_instance::get_cached_type, compile_instance::insert_type)
5164         (compile_instance::error_symbol_once): Update for unique_ptr.
5165
5166 2018-08-10  Keith Seitz  <keiths@redhat.com>
5167
5168         * compile/compile-c-symbols.c (struct symbol_error)
5169         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5170         (compile_instance::insert_symbol_error)
5171         (compile_instance::error_symbol_once): Move to ...
5172         * compile/compile.c: ... here.
5173
5174 2018-08-10  Keith Seitz  <keiths@redhat.com>
5175
5176         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5177         instead of `new_compile_instance'.
5178         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5179         Update description.
5180         If the symbol error map is not initialized, create it.
5181         (generate_c_for_for_one_symbol): Do not check/initialize
5182         the symbol error map.
5183         * compile/compile-c-types.c (compile_c_instance): Make a class.
5184         Update all callers.
5185         (compile_instance::compile_instance): Initialize the type cache.
5186         (get_cached_type): New function.
5187         (insert_type): Update description.
5188         (compile_c_instance::m_default_cflags): Define.
5189         (convert_type): Update description.  Use get_cached_type.
5190         (delete_instance): Moved to destructor.
5191         (new_compile_instance): Moved to constructor.
5192         * compile/compile-c.h (compile_c_instance): Make class inheriting
5193         from compile_instance.
5194         <base>: Remove field.
5195         <type_map, symbol_err_map>: Move to base class.
5196         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5197         * compile/compile-internal.h (compile_instance): Make class.
5198         <type_map_t, symbol_err_map_t>: Define.
5199         <fe>: Rename to `m_gcc_fe'.
5200         <scope, block, gcc_target_options>: Add `m_' prefix.
5201         <m_type_map, m_symbol_err_map>: New fields, moved from
5202         compile_c_instance.
5203         <destroy>: Remove.
5204         (convert_type, new_compile_instance): Remove.
5205         * compile/compile.c (cleanup_compile_instance): Remove.
5206         (compile_to_object): Use unique_ptr to eliminate cleanups.
5207         (compile_instance::set_print_callback, compile_instance::version)
5208         (compile_instance::set_verbose)
5209         (compile_instance::set_driver_filename)
5210         (compile_instance::set_triplet_regexp)
5211         (compile_instance::set_arguments)
5212         (compile_instance::set_source_file)
5213         (compile_instance::compile): Define.
5214
5215 2018-08-10  Keith Seitz  <keiths@redhat.com>
5216
5217         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5218         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5219         gcc-c-fe.def to define C plugin.
5220         (delete_instance): Delete `c_plugin'.
5221         (new_compile_instance): Initialize `c_plugin'.
5222         * compile/compile-c.h: Include gcc_c_plugin.h.
5223         (struct compile_c_instance) <c_plugin>: New member.
5224         * gcc-c-plugin.h: New file.
5225         Update all callers with API change.
5226
5227 2018-08-10  Keith Seitz  <keiths@redhat.com>
5228
5229         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5230         (HFILES_NO_SRCDIR): ... to here.
5231         Add compile-internal.h and compile-c.h.
5232         * compile/compile-c-support.c: Include compile-c.h.
5233         * compile/compile-c-symbols.c: Include compile-c.h.
5234         (generate_c_for_variable_locations): Update comment.
5235         * compile/compile-c-types.c: Include compile-c.h.
5236         * compile/compile-c.h: New file -- moved C language declarations
5237         from other files here.
5238         * compile/compile-internal.h: Do not include hashtab.h or
5239         common/enum-flags.h.
5240         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5241         (gcc_convert_symbol, gcc_symbol_address)
5242         (generate_c_for_variable_locations, c_get_mode_for_size)
5243         (c_get_range_decl_name): Definitions moved to compile-c.h.
5244         * compile/compile-loc2c.c: Include compile-c.h.
5245
5246 2018-08-10  Keith Seitz  <keiths@redhat.com>
5247
5248         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5249         (c_symbol_substitution_name): ... this.
5250         Update all callers.
5251
5252 2018-08-10  Keith Seitz  <keiths@redhat.com>
5253
5254         * compile/compile-c-support.c (c_compute_program): Use
5255         unique_xmalloc_ptr to eliminate cleanup.
5256         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5257         Return a unique_xmalloc_ptr and eliminate cleanup.
5258         * compile/compile-internal.h (generate_c_for_variable_locations):
5259         Return unique_xmalloc_ptr and update description.
5260
5261 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5262
5263         * corelow.c (core_target::get_core_register_section): Rename
5264         min_size to section_min_size.
5265
5266 2018-08-09  Jim Wilson  <jimw@sifive.com>
5267
5268         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5269         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5270         * NEWS: Mention new GNU/Linux RISC-V target.
5271         * configure.host: Add riscv*-*-linux*.
5272         * configure.nat: Add riscv*.
5273         * configure.tgt: Add riscv*-*-linux*.
5274         * riscv-linux-nat.c: New file.
5275         * riscv-linux-tdep.c: New file.
5276
5277 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5278
5279         * infrun.c (resume): Make static, add forward declaration.
5280         (proceed): Update header comment.
5281         * infrun.h (resume): Delete declaration.
5282
5283 2018-08-09  Tom Tromey  <tom@tromey.com>
5284
5285         * riscv-tdep.h: Minor formatting fixes.
5286
5287 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5288
5289         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5290         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5291         (test_mkdir_recursive): Likewise.
5292         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5293
5294 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5295
5296         * valarith.c (value_subscripted_rvalue): If an array is not in
5297         memory, and we don't know the upper bound, then we can't know that
5298         the requested element exists or not.
5299
5300 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5301
5302         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5303         (target_options_to_string): Add comment.
5304
5305 2018-08-08  Tom Tromey  <tom@tromey.com>
5306
5307         * unittests/scoped_mmap-selftests.c: Check result of "write".
5308
5309 2018-08-08  Jim Wilson  <jimw@sifive.com>
5310
5311         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5312         (decode_register_index_short): New.
5313         (decode_j_type_insn, decode_cj_type_insn): New.
5314         (decode_b_type_insn, decode_cb_type_insn): New.
5315         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5316         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5317         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5318         is_c_sw_insn instead of is_sw_insn.
5319         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5320         (riscv_software_single_step): New.
5321         * riscv-tdep.h (riscv_software_single_step): Declare.
5322
5323         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5324         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5325
5326 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5327
5328         PR gdb/18050:
5329         * target.c (dispose_inferior): Don't dispose of inferiors that are
5330         already killed.
5331
5332 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5333
5334         * remote.c (remote_target::download_tracepoint): Change char* to
5335         const char*.
5336
5337 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5338
5339         * target.h (target_options_to_string): Return an std::string.
5340         * target.c (str_comma_list_concat_elem): Return void, use
5341         std::string.
5342         (do_option): Likewise.
5343         (target_options_to_string): Return an std::string.
5344         * linux-nat.c (linux_nat_target::wait): Adjust.
5345         * target-debug.h (target_debug_print_options): Adjust.
5346
5347 2018-08-07  Tom Tromey  <tom@tromey.com>
5348
5349         * Makefile.in (CPPFLAGS): New variable.
5350         (INTERNAL_CPPFLAGS): Use it.
5351
5352 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5353
5354         * NEWS: Mention the index cache.
5355
5356 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5357
5358         * common/pathstuff.h (get_standard_cache_dir): New.
5359         * common/pathstuff.c (get_standard_cache_dir): New.
5360         * build-id.h (build_id_to_string): New.
5361         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5362         DEBUG_STR_SUFFIX): Move to here.
5363         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5364         DEBUG_STR_SUFFIX): Move from there.
5365         (write_psymtabs_to_index): Make non-static, add basename
5366         parameter.  Write to temporary files, rename when done.
5367         (save_gdb_index_command): Adjust call to
5368         write_psymtabs_to_index.
5369         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5370         field.
5371         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5372         (get_gdb_index_contents_from_cache): New.
5373         (get_gdb_index_contents_from_cache_dwz): New.
5374         (dwarf2_initialize_objfile): Read index from cache.
5375         (dwarf2_build_psymtabs): Save to index.
5376         * dwarf-index-cache.h: New file.
5377         * dwarf-index-cache.c: New file.
5378         * dwarf-index-write.h: New file.
5379
5380 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5381
5382         * gnulib/aclocal.m4: Re-generate.
5383         * gnulib/config.in: Re-generate.
5384         * gnulib/configure: Re-generate.
5385         * gnulib/import/Makefile.am: Re-generate.
5386         * gnulib/import/Makefile.in: Re-generate.
5387         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5388         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5389         * gnulib/import/m4/mkdir.m4: New file.
5390         * gnulib/import/mkdir.c: New file.
5391         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5392         module.
5393
5394 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5395
5396         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5397         * common/scoped_mmap.c: New file.
5398         * common/scoped_mmap.h (destroy): New method.
5399         (~scoped_mmap, reset): Use destroy.
5400         (scoped_mmap): New move constructor.
5401         (mmap_file): New declaration.
5402         * unittests/scoped_mmap-selftests.c (test_normal,
5403         test_invalid_filename, run_tests): New functions.
5404         (_initialize_scoped_mmap_selftests): Register selftest.
5405
5406 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5407
5408         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5409         (read_gdb_index_from_buffer): ... this.  Remove section
5410         parameter, add buffer parameter.
5411         (get_gdb_index_contents_ftype,
5412         get_gdb_index_contents_dwz_ftype): New typedefs.
5413         (dwarf2_read_gdb_index): Add callback parameters to get the
5414         index contents.
5415         (get_gdb_index_contents_from_section): New.
5416         (dwarf2_initialize_objfile): Update call to
5417         dwarf2_read_gdb_index.
5418
5419 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5420
5421         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5422         (gdb_open_cloexec): Likewise.
5423         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5424         (commandline_from_pid): Likewise.
5425         (linux_xfer_osdata_threads): Likewise.
5426         (linux_xfer_osdata_fds): Likewise.
5427         * ada-lang.c (is_package_name): Likewise.
5428         * auxv.c (procfs_xfer_auxv): Likewise.
5429         * breakpoint.c (print_one_breakpoint_location): Use
5430         uiout::field_fmt.
5431         (print_one_catch_solib): Use string_printf.
5432         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5433         (add_pe_forwarded_sym): Likewise.
5434         * dwarf2read.c (create_type_unit_group): Likewise.
5435         (build_error_marker_type): Likewise.
5436         * infcall.c (get_function_name): Likewise.
5437         * valprint.c (print_converted_chars_to_obstack): Likewise.
5438         * xtensa-tdep.c (xtensa_register_type): Likewise.
5439
5440 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5441
5442         * remote.c (remote_target::download_tracepoint): Fix format
5443         string errors.
5444
5445 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5446
5447         * tracefile.c: Include common/byte-vector.h.
5448         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5449         with trace_regblock_size if needed.  Update uses of buf.
5450
5451 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5452
5453         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5454         std::vector<unsigned char>.
5455         * tracepoint.c (collection_list::collection_list): Remove
5456         m_regs_mask initializer from initializer list.  Resize
5457         m_regs_mask using the largest remote register number.
5458         (collection_list::add_remote_register): Remove size check on
5459         m_regs_mask.  Use at to access element.
5460         (collection_list::stringify): Change type of temp_buf to
5461         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5462         stringify the register mask.  Use pack_hex_byte for the register
5463         mask.
5464
5465 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5466
5467         * tracepoint.h (class collection_list) <add_register>: Remove.
5468         <add_remote_register, add_ax_registers, add_local_register>:
5469         Declare.
5470         <add_memrange>: Add scope parameter.
5471         * tracepoint.c (encode_actions_1): Likewise.
5472         (collection_list::add_register): Rename to ...
5473         (collection_list::add_remote_register): ... this.  Update
5474         comment.
5475         (collection_list::add_ax_registers, add_local_register): New
5476         methods.
5477         (collection_list::add_memrange): Add scope parameter.  Call
5478         add_local_register instead of add_register.
5479         (finalize_tracepoint_aexpr): New function.
5480         (collection_list::collect_symbol): Update calls to add_memrange.
5481         Call add_local_register instead of add_register.  Call
5482         add_ax_registers.  Call finalize_tracepoint_aexpr.
5483         (encode_actions_1): Get remote regnos for $reg action.  Call
5484         add_remote_register, add_ax_registers, and add_local_register.
5485         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5486         (validate_actionline): Call finalize_tracepoint_aexpr.
5487
5488 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5489
5490         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5491         Replace array buf with gdb::char_vector buf, of size
5492         get_remote_packet_size ().  Replace references to buf and
5493         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5494         and xsnprintf with snprintf.  Raise errors if the buffer is too
5495         small.
5496
5497 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5498
5499         * remote.c (remote_target::download_tracepoint): Fix the has_more
5500         predicate in the QTDP action list iteration.
5501
5502 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5503
5504         * remote.c (remote_target::download_tracepoint): Fix indentation
5505         in for block.
5506
5507 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5508
5509         * proc-api.c (_initialize_proc_api): Remove c, unused.
5510         * procfs.c (procfs_init_inferior): Remove signals, unused.
5511         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5512         unused.
5513
5514 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5515             Andrew Burgess  <andrew.burgess@embecosm.com>
5516
5517         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5518         'W_STOPCODE (0)' as this could be ambiguous.
5519
5520 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5521
5522         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5523         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5524         "ai_socktype").
5525
5526 2018-08-02  Tom Tromey  <tom@tromey.com>
5527
5528         PR symtab/16842.
5529         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5530         symbols.
5531         (process_structure_scope): Likewise.
5532
5533 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5534
5535         PR gdb/22629:
5536         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5537         kill inferior.
5538
5539 2018-08-02  Tom Tromey  <tom@tromey.com>
5540
5541         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5542         (darwin_suspend_inferior, darwin_resume_inferior)
5543         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5544         (darwin_check_new_threads): Check result of get_darwin_inferior.
5545
5546 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5547
5548         GDB 8.1.1 released.
5549
5550 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5551
5552         * varobj.c (varobj_get_path_expr_parent): Report an error if
5553         parent is a dynamic varobj.
5554
5555 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5556
5557         * gnulib/aclocal.m4: Re-generate.
5558         * gnulib/config.in: Re-generate.
5559         * gnulib/configure: Re-generate.
5560         * gnulib/import/Makefile.in: Re-generate.
5561         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5562         * gnulib/import/m4/onceonly.m4: Re-generate.
5563
5564 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5565
5566         * target-descriptions.c (struct xml_test_tdesc): New.
5567         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5568         (record_xml_tdesc): Update.
5569         (maintenance_check_xml_descriptions): Update.
5570         * target-descriptions.h (record_xml_tdesc): Update comment.
5571
5572 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5573
5574         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5575         checking array bounds are defined.
5576
5577 2018-07-30  Tom Tromey  <tom@tromey.com>
5578
5579         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5580         irreflexivity violation.
5581
5582 2018-07-30  Tom Tromey  <tom@tromey.com>
5583
5584         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5585         * value.c (unpack_long): Remove lint code.
5586         * valops.c (value_ind): Remove lint code.
5587         * valarith.c (value_x_binop, value_x_unop, value_equal)
5588         (value_pos): Remove lint code.
5589
5590 2018-07-28  Tom de Vries  <tdevries@suse.de>
5591
5592         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5593         with undefined upper bound as <optimized out>.
5594
5595 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5596
5597         * gcore.in: Rename variable "name" to "prefix".  Expand
5598         "usage" text.
5599
5600 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5601
5602         * windows-nat.c (windows_nat_target::create_inferior): Update to
5603         call close() in global namespace.
5604
5605 2018-07-26  Tom Tromey  <tom@tromey.com>
5606
5607         * dwarf-index-write.c (add_address_entry): Don't add objfile
5608         offsets.
5609         * dbxread.c (find_stab_function): Rename from
5610         find_stab_function_addr.  Return a bound_minimal_symbol.
5611         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5612         Don't add objfile offsets.
5613         (end_psymtab): Use raw_text_low, raw_text_high,
5614         MSYMBOL_VALUE_RAW_ADDRESS.
5615         (read_ofile_symtab): Update.
5616         (process_one_symbol): Update.
5617         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5618         offsets.
5619         (dw2_relocate): Remove.
5620         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5621         searching addrmap.
5622         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5623         Update.
5624         (process_psymtab_comp_unit_reader, add_partial_symbol)
5625         (add_partial_subprogram, dwarf2_ranges_read): Update.
5626         (load_partial_dies): Update.
5627         (add_address_entry): Don't add objfile offsets.
5628         (dwarf2_build_include_psymtabs): Update.
5629         (create_addrmap_from_aranges): Don't add objfile offsets.
5630         (dw2_find_pc_sect_compunit_symtab): Update.
5631         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5632         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5633         Update.
5634         (parse_partial_symbols): Don't add objfile offsets.  Use
5635         raw_text_low, raw_text_high.  Update.
5636         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5637         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5638         or call 'relocate' quick function.  Clear psymbol_map.
5639         * psympriv.h (struct partial_symbol) <address>: Add section
5640         offset.
5641         <set_unrelocated_address>: Rename from set_address.
5642         <raw_text_low, raw_text_high>: New methods.
5643         <text_low, text_high>: Add objfile parameter.
5644         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5645         set_unrelocated_address.
5646         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5647         (find_pc_psymbol): Update.
5648         (fixup_psymbol_section, relocate_psymtabs): Remove.
5649         (dump_psymtab, psym_functions): Update.
5650         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5651         parameter.
5652         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5653         (start_psymtab_common): Update.
5654         * symfile-debug.c (debug_qf_relocate): Remove.
5655         (debug_sym_quick_functions): Update.
5656         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5657         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5658         Update.
5659
5660 2018-07-26  Tom Tromey  <tromey@redhat.com>
5661
5662         * dbxread.c (end_psymtab): Use text_high_valid and
5663         text_low_valid.
5664         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5665         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5666         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5667         Update comment.
5668         <text_low_valid, text_high_valid>: New fields.
5669         <set_text_low, set_text_high>: Update.
5670         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5671
5672 2018-07-26  Tom Tromey  <tom@tromey.com>
5673
5674         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5675         Update.
5676         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5677         textlow and texthigh fields.
5678         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5679         Update.
5680         * mdebugread.c (parse_lines, parse_partial_symbols)
5681         (psymtab_to_symtab_1): Update.
5682         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5683         Rename fields.  Update comment.  Now private.
5684         <text_low, text_high, set_text_low, set_text_high>: New methods.
5685         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5686         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5687         (start_psymtab_common, maintenance_info_psymtabs)
5688         (maintenance_check_psymtabs): Update.
5689         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5690         texthigh fields.
5691         (scan_xcoff_symtab): Update.
5692
5693 2018-07-26  Tom Tromey  <tromey@redhat.com>
5694
5695         * psympriv.h (struct partial_symbol) <unrelocated_address,
5696         address, set_address>: New methods.
5697         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5698         (fixup_psymbol_section, relocate_psymtabs): Update.
5699         (print_partial_symbols): Add 'objfile' parameter.  Update.
5700         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5701         Update.
5702
5703 2018-07-26  Tom Tromey  <tom@tromey.com>
5704
5705         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5706         (debug_names::write_psymbols): Update.
5707         * psympriv.h (struct partial_symbol): Derive from
5708         general_symbol_info.
5709         <obj_section>: New method.
5710         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5711         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5712         (find_pc_sect_psymbol, fixup_psymbol_section)
5713         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5714         (print_partial_symbols, recursively_search_psymtabs)
5715         (compare_psymbols, psymbol_hash, psymbol_compare)
5716         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5717         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5718
5719 2018-07-26  Tom Tromey  <tromey@redhat.com>
5720
5721         * dbxread.c (end_psymtab): Remove dead code.
5722
5723 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5724
5725         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5726         DWARF unwinders are disabled.
5727         * dwarf2-frame.c: Add dwarf2read.h include.
5728         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5729         disabled.
5730         (dwarf2_frame_unwinders_enabled_p): Define.
5731         (show_dwarf_unwinders_enabled_p): New function.
5732         (_initialize_dwarf2_frame): Register switch to control DWARF
5733         unwinder use.
5734         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5735         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5736         (show_dwarf_cmdlist): Remove static keyword.
5737         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5738         (show_dwarf_cmdlist): Declare.
5739         * NEWS: Document new feature.
5740
5741 2018-07-26  Tom de Vries  <tdevries@suse.de>
5742
5743         PR breakpoints/23366
5744         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5745
5746 2018-07-26  Tom de Vries  <tdevries@suse.de>
5747
5748         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5749         DW_AT_count can't be translated to a dynamic prop.
5750
5751 2018-07-25  Tom de Vries  <tdevries@suse.de>
5752
5753         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5754         try/catch.
5755
5756 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5757
5758         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5759
5760 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5761
5762         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5763
5764 2018-07-24  Keith Seitz  <keiths@redhat.comt
5765
5766         PR symtab/23010
5767         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5768         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5769         instead of add_symbol_to_list.
5770         (read_file_scope): Call prepare_one_comp_unit before reading
5771         any other DIEs.
5772
5773 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5774
5775         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5776
5777 2018-07-24  Tom Tromey  <tom@tromey.com>
5778
5779         * utils.c (malloc, realloc, free): Don't declare.
5780         * configure, config.in: Rebuild.
5781         * configure.ac: Don't check for declarations of free, malloc, or
5782         realloc.
5783
5784 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5785
5786         * aarch64-linux-nat.c
5787         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5788         variable.
5789         * arm-linux-nat.c (fetch_regs): Likewise.
5790         (store_regs): Likewise.
5791         (fetch_vfp_regs): Likewise.
5792         (store_vfp_regs): Likewise.
5793         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5794         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5795         (arm_linux_nat_target::insert_watchpoint): Likewise.
5796         (arm_linux_nat_target::remove_watchpoint): Likewise.
5797         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5798         Likewise.
5799         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5800         Likewise.
5801         * ppc-linux-nat.c (fetch_register): Likewise.
5802         (fetch_all_gp_regs): Likewise.
5803         (fetch_ppc_registers): Likewise.
5804         (store_all_gp_regs): Likewise.
5805         (store_ppc_registers): Likewise.
5806         (hwdebug_insert_point): Likewise.
5807         (can_use_watchpoint_cond_accel): Likewise.
5808         * remote-sim.c (gdb_os_write_stdout): Likewise.
5809
5810 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5811             Tom Tromey  <tom@tromey.com>
5812
5813         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5814         test for it.
5815         * configure: Rebuild.
5816
5817 2018-07-22  Tom Tromey  <tom@tromey.com>
5818
5819         * regformats/regdat.sh: Define xmltarget_${name} inside
5820         #ifndef IN_PROCESS_AGENT.
5821
5822 2018-07-22  Tom Tromey  <tom@tromey.com>
5823
5824         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5825
5826 2018-07-22  Tom Tromey  <tom@tromey.com>
5827
5828         * symfile.c (reread_symbols): Notify iter, not objfile.
5829
5830 2018-07-22  Tom Tromey  <tom@tromey.com>
5831
5832         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5833         Use arch_ops.
5834         (ravenscar_thread_target::prepare_to_store): Likewise.
5835
5836 2018-07-22  Tom Tromey  <tom@tromey.com>
5837
5838         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5839         unused variable.  Call value_fetch_lazy when needed.
5840         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5841         Remove unused variable.  Call value_fetch_lazy when needed.
5842
5843 2018-07-22  Tom Tromey  <tom@tromey.com>
5844
5845         * m32c-tdep.c (mark_dma): Return void.
5846         (make_regs): Remove unused declarations.
5847
5848 2018-07-22  Tom Tromey  <tom@tromey.com>
5849
5850         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5851         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5852         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5853         bkscm_get_valid_block_smob_arg_unsafe for effect.
5854
5855 2018-07-22  Tom Tromey  <tom@tromey.com>
5856
5857         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5858         value_type.
5859
5860 2018-07-22  Tom Tromey  <tom@tromey.com>
5861
5862         * windows-nat.c (saved_context): Conditionally define.
5863         * remote.c (remote_target::remote_btrace_maybe_reopen):
5864         Conditionally declare "warned".
5865         * inflow.c (sigquit_ours): Conditionally define.
5866         (new_tty): Move "tty" declaration inside #if.
5867         * guile/guile.c (guile_datadir): Conditionally define.
5868         * charset.c (set_be_le_names): Move some declarations inside #if.
5869         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5870         #if.
5871         (parse_xml_btrace_conf): Likewise.
5872
5873 2018-07-22  Tom Tromey  <tom@tromey.com>
5874
5875         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5876
5877 2018-07-22  Tom Tromey  <tom@tromey.com>
5878
5879         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5880         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5881         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5882         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5883         * stack.c (frame_apply_level_command): Remove unused variable.
5884         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5885         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5886         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5887         unused variable.
5888         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5889         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5890         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5891         variable.
5892         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5893         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5894         variable.
5895         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5896         Remove unused variable.
5897         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5898         variable.
5899         * common/tdesc.c (print_xml_feature::visit): Remove unused
5900         variable.
5901         * compile/compile-object-load.c (store_regs): Remove unused
5902         variables.
5903         * complaints.c (clear_complaints): Remove unused variable.
5904         * corelow.c (core_target_open): Remove unused variable.
5905         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5906         variable.
5907         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5908         variable.
5909         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5910         variable.
5911         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5912         variable.
5913         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5914         variable.
5915         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5916         variable.
5917         * ia64-tdep.c (examine_prologue): Remove unused variable.
5918         * infcall.c (run_inferior_call): Remove unused variable.
5919         * inferior.c (exit_inferior): Remove unused variable.
5920         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5921         * linespec.c (decode_line_2): Remove unused variable.
5922         * linux-nat.c (super_close): Remove.
5923         * linux-tdep.c (linux_info_proc): Remove unused variable.
5924         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5925         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5926         Remove unused variable.
5927         * parse.c (find_minsym_type_and_address): Remove unused variable.
5928         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5929         variable.
5930         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5931         variable.
5932         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5933         variables.
5934         * record-btrace.c (record_btrace_target::store_registers): Remove
5935         unused variable.
5936         (cmd_show_record_btrace_cpu): Remove unused variable.
5937         * riscv-tdep.c (riscv_register_reggroup_p)
5938         (riscv_push_dummy_call, riscv_return_value): Remove unused
5939         variable.
5940         * rust-exp.y (literal): Remove unused variable.
5941         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5942         unused variable.
5943         <STRUCTOP_ANONYMOUS>: Likewise.
5944         * s390-linux-tdep.c (s390_linux_init_abi_31)
5945         (s390_linux_init_abi_64): Remove unused variable.
5946         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5947         (file_select_thread, net_windows_open, _initialize_ser_windows):
5948         Remove unused variables.
5949         * symtab.c (find_pc_sect_line): Remove unused variable.
5950         * target-memory.c (compute_garbled_blocks): Remove unused
5951         variable.
5952         (target_write_memory_blocks): Remove unused variable.
5953         * target.c (target_stack::unpush): Remove unused variables.
5954         * tracepoint.c (start_tracing, all_tracepoint_actions)
5955         (merge_uploaded_trace_state_variables)
5956         (print_one_static_tracepoint_marker): Remove unused variable.
5957         * unittests/basic_string_view/element_access/char/1.cc (test01):
5958         Remove unused variable.
5959         * windows-nat.c (windows_continue, windows_add_all_dlls)
5960         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5961         Remove unused variables.
5962
5963 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5964
5965         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5966         attr_profile in HAVE_ELF.
5967         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5968         HAVE_ELF.
5969
5970 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5971
5972         * frame.c (frame_register_unwind): Change parameter name.
5973         (frame_unwind_register): Likewise.
5974         (frame_unwind_register_value): Likewise.
5975         (frame_unwind_register_signed): Likewise.
5976         (frame_unwind_register_unsigned): Likewise.
5977         * frame.h (frame_register_unwind): Likewise.
5978         (frame_unwind_register): Likewise.
5979         (frame_unwind_register_value): Likewise.
5980         (frame_unwind_register_signed): Likewise.
5981         (frame_unwind_register_unsigned): Likewise.
5982         (frame_unwind_arch): Likewise.
5983
5984 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5985
5986         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5987         ISA maintenance.
5988
5989 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5990
5991         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5992         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5993         hand.
5994
5995 2018-07-20  Keith Seitz  <keiths@redhat.com>
5996
5997         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5998         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5999         m_compunit_symtab, m_language>: Add "m_" prefix.
6000         Update all uses.
6001         * buildsym.c: Update all uses.
6002
6003 2018-07-20  Tom Tromey  <tom@tromey.com>
6004
6005         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
6006         * buildsym.h (record_line_ftype): Remove typedef.
6007
6008 2018-07-20  Tom Tromey  <tom@tromey.com>
6009
6010         * buildsym-legacy.h (augment_type_symtab): Don't declare.
6011         (end_expandable_symtab): Likewise.
6012         (end_symtab_get_static_block): Likewise.
6013         (end_symtab_from_static_block): Likewise.
6014         * buildsym-legacy.c (augment_type_symtab): Remove.
6015         (end_expandable_symtab): Remove.
6016         (end_symtab_get_static_block): Remove.
6017         (end_symtab_from_static_block): Remove.
6018
6019 2018-07-20  Tom Tromey  <tom@tromey.com>
6020
6021         * dwarf2read.c: Include buildsym.h.
6022         (struct dwarf2_cu) <builder>: New method.
6023         (fixup_go_packaging): Update.
6024         (process_full_comp_unit, process_full_type_unit): Update.  Don't
6025         use scoped_free_pendings.
6026         (using_directives): Add "cu" parameter, remove "language".
6027         (read_import_statement, setup_type_unit_groups, )
6028         (read_func_scope, read_lexical_block_scope)
6029         (dwarf2_record_block_ranges, read_namespace): Update.
6030         (lnp_state_machine::lnp_state_machine): Add cu parameter.
6031         (lnp_state_machine::handle_end_sequence): Update.
6032         (class lnp_state_machine) <m_cu>: New member.
6033         <m_record_line_callback>: Remove.
6034         <m_currently_recording_lines>: New member.
6035         (lnp_state_machine::handle_set_file): Update.
6036         (noop_record_line): Remove.
6037         (dwarf_record_line_p): Add cu parameter.
6038         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6039         (lnp_state_machine::record_line)
6040         (lnp_state_machine::lnp_state_machine)
6041         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6042         (dwarf_decode_lines): Update.
6043         (dwarf2_start_subfile): Add cu parameter.
6044         (dwarf2_start_symtab, new_symbol): Update.
6045         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6046         Remove dwarf2_per_objfile parameter.
6047         (dwarf_decode_macros): Update.
6048
6049 2018-07-20  Tom Tromey  <tom@tromey.com>
6050
6051         * stabsread.c (define_symbol): Update.
6052         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6053         * dwarf2read.c (new_symbol): Update.
6054         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6055         * cp-namespace.c: Include buildsym.h.
6056         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6057         * buildsym-legacy.c (get_buildsym_compunit): New function.
6058
6059 2018-07-20  Tom Tromey  <tom@tromey.com>
6060
6061         * xcoffread.c: Include buildsym-legacy.h.
6062         * windows-nat.c: Include buildsym-legacy.h.
6063         * stabsread.c: Include buildsym-legacy.h.
6064         * mdebugread.c: Include buildsym-legacy.h.
6065         * buildsym-legacy.h: New file.
6066         * buildsym-legacy.c: New file, from buildsym.c.
6067         * go32-nat.c: Include buildsym-legacy.h.
6068         * dwarf2read.c: Include buildsym-legacy.h.
6069         * dbxread.c: Include buildsym-legacy.h.
6070         * cp-namespace.c: Include buildsym-legacy.h.
6071         * coffread.c: Include buildsym-legacy.h.
6072         * buildsym.h: Move some contents to buildsym-legacy.h.
6073         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6074         buildsym-legacy.c.
6075         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6076
6077 2018-07-20  Tom Tromey  <tom@tromey.com>
6078
6079         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6080         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6081         (buildsym_compunit::buildsym_compunit)
6082         (buildsym_compunit::~buildsym_compunit)
6083         (buildsym_compunit::get_macro_table): Define.
6084
6085 2018-07-20  Tom Tromey  <tom@tromey.com>
6086
6087         * buildsym.c (reset_symtab_globals): Remove.
6088         (buildsym_compunit::end_symtab_from_static_block): Update.
6089         (buildsym_compunit::augment_type_symtab): Update.
6090         (end_symtab_from_static_block): Call free_buildsym_compunit.
6091         (augment_type_symtab, end_symtab, end_expandable_symtab):
6092         Likewise.
6093
6094 2018-07-20  Tom Tromey  <tom@tromey.com>
6095
6096         * arch-utils.c: Do not include buildsym.h.
6097         * mipsread.c: Do not include buildsym.h.
6098         * machoread.c: Do not include buildsym.h.
6099         * elfread.c: Do not include buildsym.h.
6100
6101 2018-07-20  Tom Tromey  <tom@tromey.com>
6102
6103         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6104         initialization.
6105         (buildsym_compunit): Add new constructor.
6106         (struct buildsym_compunit) <get_last_source_file, finish_block,
6107         record_block_range, start_subfile, patch_subfile_names,
6108         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6109         set_last_source_start_addr, get_last_source_start_addr,
6110         get_local_using_directives, set_local_using_directives,
6111         get_global_using_directives, outermost_context_p,
6112         get_current_context_stack, get_context_stack_depth,
6113         get_current_subfile, get_local_symbols, get_file_symbols,
6114         get_global_symbols, record_debugformat, record_producer,
6115         push_context, pop_context, end_symtab_get_static_block,
6116         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6117         New public methods.
6118         <record_pending_block, finish_block_internal, make_blockvector,
6119         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6120         private methods.
6121         Update all users.
6122
6123 2018-05-22  Tom Tromey  <tom@tromey.com>
6124
6125         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6126         parameter.
6127         (finish_block_internal): Update.
6128
6129 2018-07-20  Tom Tromey  <tom@tromey.com>
6130
6131         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6132         parameter.
6133         (finish_block_internal): Update.
6134
6135 2018-07-20  Tom Tromey  <tom@tromey.com>
6136
6137         * buildsym.h (EXTERN): Don't define or undef.
6138         * buildsym.c (EXTERN): Don't define.
6139
6140 2018-07-20  Tom Tromey  <tom@tromey.com>
6141
6142         * buildsym.c: Remove TODO comment.
6143
6144 2018-07-20  Tom Tromey  <tom@tromey.com>
6145
6146         * coffread.c (coff_symtab_read): Update.
6147         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6148         (xcoff_new_init): Update.
6149         * mipsread.c (mipscoff_new_init): Update.
6150         * mdebugread.c (mdebug_build_psymtabs): Update.
6151         * elfread.c (elf_new_init): Update.
6152         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6153         Update.
6154         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6155         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6156         (stabsect_build_psymtabs): Update.
6157         * buildsym.h (buildsym_init): Don't declare.
6158         * buildsym.c: Update comment.
6159         (prepare_for_building): Remove.
6160         (start_symtab, restart_symtab): Update.
6161         (reset_symtab_globals): Update comment.
6162         (buildsym_init): Remove.
6163
6164 2018-07-20  Tom Tromey  <tom@tromey.com>
6165
6166         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6167         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6168         (read_enum_type, common_block_start, common_block_end)
6169         (cleanup_undefined_types_1, finish_global_stabs): Update.
6170         * mdebugread.c (psymtab_to_symtab_1): Update.
6171         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6172         (read_lexical_block_scope, new_symbol): Update.
6173         * dbxread.c (process_one_symbol): Update.
6174         * coffread.c (coff_symtab_read, process_coff_symbol)
6175         (coff_read_enum_type): Update.
6176         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6177         declare.
6178         (get_local_symbols, get_file_symbols, get_global_symbols): New
6179         functions.
6180         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6181         m_global_symbols.
6182         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6183         (~scoped_free_pendings): Update.
6184         (finish_block, prepare_for_building, reset_symtab_globals)
6185         (end_symtab_get_static_block, end_symtab_with_blockvector)
6186         (augment_type_symtab, push_context): Update.
6187         (get_local_symbols, get_file_symbols, get_global_symbols): New
6188         functions.
6189         (buildsym_init): Update.
6190
6191 2018-07-20  Tom Tromey  <tom@tromey.com>
6192
6193         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6194         (process_full_type_unit): Likewise.
6195         (dwarf2_start_symtab): Set list_in_scope.
6196
6197 2018-07-20  Tom Tromey  <tom@tromey.com>
6198
6199         * dwarf2read.c (process_psymtab_comp_unit_reader)
6200         (build_type_psymtabs_reader): Do not set list_in_scope.
6201
6202 2018-07-20  Tom Tromey  <tom@tromey.com>
6203
6204         * buildsym.c (free_pendings): Remove.
6205         (add_symbol_to_list, scoped_free_pendings)
6206         (finish_block_internal, buildsym_init): Update.
6207
6208 2018-07-20  Tom Tromey  <tom@tromey.com>
6209
6210         * xcoffread.c (read_xcoff_symtab): Update.
6211         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6212         Update.
6213         * dbxread.c (process_one_symbol): Update.
6214         * coffread.c (coff_symtab_read): Update.
6215         * buildsym.h (finish_block): Update.
6216         * buildsym.c (finish_block): Remove "listhead" argument.
6217         (end_symtab_get_static_block): Update.
6218
6219 2018-07-20  Tom Tromey  <tom@tromey.com>
6220
6221         * buildsym.h (class scoped_free_pendings): Remove constructor.
6222         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6223         method.
6224         <m_pending_block_obstack, m_pending_blocks>: New members.
6225         (pending_block_obstack, pending_blocks): Remove.
6226         (scoped_free_pendings::scoped_free_pendings): Default.
6227         (~scoped_free_pendings): Update.
6228         (free_pending_blocks): Remove.
6229         (finish_block_internal, record_pending_block, make_blockvector)
6230         (end_symtab_get_static_block, augment_type_symtab, push_context)
6231         (buildsym_init): Update.
6232
6233 2018-07-20  Tom Tromey  <tom@tromey.com>
6234
6235         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6236         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6237         members.
6238         (pending_addrmap, pending_addrmap_obstack)
6239         (pending_addrmap_interesting): Remove.
6240         (scoped_free_pendings, record_block_range, make_blockvector)
6241         (prepare_for_building, reset_symtab_globals, buildsym_init):
6242         Update.
6243
6244 2018-07-20  Tom Tromey  <tom@tromey.com>
6245
6246         * xcoffread.c (process_linenos): Update.
6247         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6248         * mdebugread.c (psymtab_to_symtab_1): Update.
6249         * dwarf2read.c (setup_type_unit_groups)
6250         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6251         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6252         * dbxread.c (process_one_symbol): Update.
6253         * coffread.c (coff_symtab_read, enter_linenos)
6254         (process_coff_symbol): Update.
6255         * buildsym.h (current_subfile): Don't declare.
6256         (get_current_subfile): Declare.
6257         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6258         member.
6259         (start_subfile, free_buildsym_compunit, push_subfile)
6260         (prepare_for_building, start_symtab): Update.
6261         (get_current_subfile): New function.
6262
6263 2018-07-20  Tom Tromey  <tom@tromey.com>
6264
6265         * coffread.c (coff_symtab_read): Update.
6266         * xcoffread.c (read_xcoff_symtab): Update.
6267         * dwarf2read.c (new_symbol): Update.
6268         (read_func_scope, read_lexical_block_scope): Update.
6269         * dbxread.c (process_one_symbol): Update.
6270         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6271         (outermost_context_p): Remove macro.
6272         (outermost_context_p, get_current_context_stack)
6273         (get_context_stack_depth): Declare.
6274         (pop_context): Return struct context_stack.
6275         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6276         member.
6277         (context_stack_size): Remove.
6278         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6279         (prepare_for_building, end_symtab_get_static_block)
6280         (augment_type_symtab, push_context): Update.
6281         (pop_context): Return struct context_stack.
6282         (outermost_context_p, get_current_context_stack)
6283         (get_context_stack_depth): New functions.
6284         (buildsym_init): Update.
6285
6286 2018-07-20  Tom Tromey  <tom@tromey.com>
6287
6288         * rust-exp.y: Now a pure parser.  Update all rules.
6289         (%union): Move earlier.
6290         (current_parser, work_obstack): Remove globals.
6291         (rust_parser, ~rust_parser): Update.
6292         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6293         lex_character, lex_number, lex_string, lex_identifier,
6294         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6295         convert_name, convert_params_to_expression,
6296         convert_ast_to_expression, ast_basic_type, ast_operation,
6297         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6298         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6299         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6300         ast_array_type, ast_slice_type, ast_reference_type,
6301         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6302         (rust_parse): Update.
6303         (rustyyerror, rustyylex): Add parser parameter.
6304         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6305         (rust_lex_stringish_test, rust_lex_test_sequence)
6306         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6307         (rust_lex_test_push_back, rust_lex_tests): Update.
6308
6309 2018-07-19  Pedro Alves  <palves@redhat.com>
6310
6311         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6312         gdb::unique_xmalloc_ptr.
6313         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6314         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6315         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6316         copy-initialization.
6317         * guile/scm-pretty-print.c (ppscm_print_children): Use
6318         gdb::unique_xmalloc_ptr instead of cleanups.
6319         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6320         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6321         gdb::unique_xmalloc_ptr.
6322         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6323         Adjust to use gdb::unique_xmalloc_ptr.
6324         * guile/scm-utils.c (extract_arg): Adjust.
6325         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6326         gdb::unique_xmalloc_ptr instead of a cleanup.
6327
6328 2018-07-19  Tom Tromey  <tom@tromey.com>
6329
6330         * utils.c (do_value_free_to_mark)
6331         (make_cleanup_value_free_to_mark): Remove.
6332         * utils.h (make_cleanup_value_free_to_mark): Remove.
6333
6334 2018-07-19  Pedro Alves  <palves@redhat.com>
6335
6336         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6337         forwarding reference.
6338
6339 2018-07-18  Pedro Alves  <palves@redhat.com>
6340
6341         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6342         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6343         cleanup.
6344
6345 2018-07-18  Pedro Alves  <palves@redhat.com>
6346
6347         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6348         exceptions.
6349         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6350         (gdbscm_wrap): New.
6351         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6352         directly instead of a cleanup.
6353         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6354         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6355         (vlscm_binop_gdbthrow): New, factored out from ...
6356         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6357         (vlscm_rich_compare): Use gdbscm_wrap.
6358         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6359         instead of a cleanup.
6360         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6361         cleanup.
6362         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6363         Use xfree directly instead of a cleanup.
6364         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6365         Adjust to use gdbscm_wrap and scoped_value_mark.
6366         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6367         (gdbscm_value_address, gdbscm_value_dereference)
6368         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6369         scoped_value_mark.
6370         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6371         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6372         scoped_value_mark.
6373         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6374         gdbscm_wrap and scoped_value_mark.
6375         (gdbscm_value_to_string): Use xfree directly instead of a
6376         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6377         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6378         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6379         scoped_value_mark.
6380         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6381         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6382         scoped_value_mark.
6383         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6384         gdbscm_wrap.
6385
6386 2018-07-18  Tom de Vries  <tdevries@suse.de>
6387
6388         * findvar.c (default_read_var_value): Also resolve dynamic type for
6389         LOC_OPTIMIZED_OUT vars.
6390
6391 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6392
6393         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6394         decoding.
6395
6396 2018-07-17  Tom Tromey  <tom@tromey.com>
6397
6398         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6399         (compute_enum_list, pascm_set_param_value_x)
6400         (gdbscm_parameter_value): Update.
6401         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6402         (gdbscm_scm_to_host_string): Update.
6403         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6404         Update.
6405         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6406         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6407         * guile/scm-string.c (gdbscm_scm_to_string): Return
6408         unique_xmalloc_ptr.
6409         (gdbscm_scm_to_host_string): Likewise.
6410
6411 2018-07-17  Tom Tromey  <tom@tromey.com>
6412
6413         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6414         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6415         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6416         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6417         unique_xmalloc_ptr.
6418
6419 2018-07-17  Tom Tromey  <tom@tromey.com>
6420
6421         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6422         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6423         Update.
6424         * guile/scm-cmd.c (cmdscm_function): Update.
6425         * guile/scm-pretty-print.c
6426         (ppscm_print_exception_unless_memory_error): Update.
6427         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6428         Return unique_xmalloc_ptr.
6429
6430 2018-07-17  Tom Tromey  <tom@tromey.com>
6431
6432         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6433         Use string_printf.
6434
6435 2018-07-17  Jim Wilson  <jimw@sifive.com>
6436
6437         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6438         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6439         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6440         unecessary braces after EF_RISCV_RVC test.  Delete call to
6441         set_gdbarch_decr_pc_after_break.
6442
6443         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6444         RISCV_LAST_FP_REGNUM + 1.
6445         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6446
6447 2018-07-17  Tom Tromey  <tom@tromey.com>
6448
6449         * configure.ac: Remove --disable-gdbcli.
6450         * configure: Rebuild.
6451         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6452         (SUBDIR_CLI_CFLAGS): Remove.
6453         (SFILES): Use SUBDIR_CLI_SRCS.
6454         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6455
6456 2018-07-17  Tom Tromey  <tom@tromey.com>
6457
6458         PR gdb/18624:
6459         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6460
6461 2018-07-16  Jim Wilson  <jimw@sifive.com>
6462
6463         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6464
6465 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6466
6467         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6468         variable.
6469         (libunwind_frame_sniffer): Likewise.
6470         (libunwind_frame_prev_register): Likewise.
6471         (libunwind_sigtramp_frame_sniffer): Likewise.
6472         * ia64-tdep.c (ia64_access_reg): Likewise.
6473         (ia64_access_rse_reg): Likewise.
6474         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6475         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6476
6477 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6478
6479         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6480
6481 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6482
6483         * remote-sim.c (gdbsim_target::close,
6484         gdbsim_target::mourn_inferior): Remove unused variables.
6485
6486 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6487
6488         * ia64-tdep.c (ktab_buf): New global.
6489         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6490         (get_kernel_table): Adjust.
6491
6492 2018-07-16  Tom Tromey  <tom@tromey.com>
6493
6494         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6495         * dwarf2read.c (using_directives, new_symbol): Use
6496         outermost_context_p.
6497         * dbxread.c (process_one_symbol): Use outermost_context_p.
6498         * coffread.c (coff_symtab_read): Use outermost_context_p.
6499
6500 2018-07-16  Tom Tromey  <tom@tromey.com>
6501
6502         * dwarf2read.c (using_directives, read_func_scope)
6503         (read_lexical_block_scope): Update.
6504         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6505         * buildsym.h (local_using_directives, global_using_directives):
6506         Don't declare.
6507         (get_local_using_directives, set_local_using_directives)
6508         (get_global_using_directives): Declare.
6509         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6510         m_global_using_directives>: New members.
6511         (finish_block_internal, prepare_for_building)
6512         (reset_symtab_globals, end_symtab_get_static_block)
6513         (push_context): Update.
6514         (get_local_using_directives, set_local_using_directives)
6515         (get_global_using_directives): New functions.
6516         (buildsym_init): Update.
6517
6518 2018-07-16  Tom Tromey  <tom@tromey.com>
6519
6520         * xcoffread.c (xcoff_initial_scan): Don't call
6521         free_pending_blocks.
6522         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6523         * buildsym.h (class scoped_free_pendings): Add constructor.
6524         (free_pending_blocks): Don't declare.
6525         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6526         (free_pending_blocks): Now static.
6527
6528 2018-07-16  Tom Tromey  <tom@tromey.com>
6529
6530         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6531         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6532         member.
6533         (struct subfile_stack): Remove.
6534         (subfile_stack): Remove.
6535         (push_subfile, pop_subfile, buildsym_init): Update.
6536
6537 2018-07-16  Tom Tromey  <tom@tromey.com>
6538
6539         * buildsym.c (push_subfile): Use gdb_assert.
6540         (pop_subfile): Use gdb_assert.
6541
6542 2018-07-16  Tom Tromey  <tom@tromey.com>
6543
6544         * buildsym.h (merge_symbol_lists): Remove.
6545         * buildsym.c (merge_symbol_lists): Remove.
6546
6547 2018-07-16  Tom Tromey  <tom@tromey.com>
6548
6549         * stabsread.c (scan_file_globals): Update comment.
6550         * stabsread.h (scan_file_globals): Move from buildsym.h.
6551         * buildsym.h (scan_file_globals): Move to stabsread.h.
6552
6553 2018-07-16  Tom Tromey  <tom@tromey.com>
6554
6555         * xcoffread.c (xcoff_new_init): Update.
6556         * mipsread.c (mipscoff_new_init): Update.
6557         * mdebugread.c (mdebug_build_psymtabs): Update.
6558         * elfread.c (elf_new_init): Update.
6559         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6560         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6561         * buildsym.h (buildsym_new_init): Don't declare.
6562         * buildsym.c (buildsym_new_init): Remove.
6563
6564 2018-07-16  Tom Tromey  <tom@tromey.com>
6565
6566         * stabsread.h (within_function): Move from buildsym.h.
6567         * stabsread.c (start_stabs): Clear within_function.
6568         * coffread.c (coff_start_symtab): Clear within_function.
6569         * buildsym.h (within_function): Move to stabsread.h.
6570         * buildsym.c (prepare_for_building): Update.
6571
6572 2018-07-16  Tom Tromey  <tom@tromey.com>
6573
6574         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6575         * dwarf2read.c (dwarf2_start_symtab): Don't set
6576         processing_gcc_compilation.
6577         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6578
6579 2018-07-16  Tom Tromey  <tom@tromey.com>
6580
6581         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6582         (next_symbol_text_func): Move from buildsym.h.
6583         * stabsread.c (hashname): Move from buildsym.c.
6584         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6585         (next_symbol_text_func, hashname): Move to stabsread.h.
6586         * buildsym.c: Don't include bcache.h
6587         (hashname): Move to stasbread.c.
6588
6589 2018-07-16  Tom Tromey  <tom@tromey.com>
6590
6591         * buildsym.h (context_stack_size): Don't declare.
6592         * buildsym.c (context_stack_size): New global.
6593
6594 2018-07-16  Tom Tromey  <tom@tromey.com>
6595
6596         * dbxread.c (processing_acc_compilation): New global.
6597         * buildsym.h (processing_acc_compilation): Don't declare.
6598
6599 2018-07-16  Tom Tromey  <tom@tromey.com>
6600
6601         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6602         * dbxread.c (read_ofile_symtab): Update.
6603         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6604         * buildsym.h (last_source_start_addr): Remove.
6605         (set_last_source_start_addr, get_last_source_start_addr):
6606         Declare.
6607         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6608         parameter.
6609         (struct buildsym_compunit) <m_last_source_start_addr>: New
6610         member.
6611         (prepare_for_building): Remove start_addr parameter.
6612         (start_symtab, restart_symtab, end_symtab_get_static_block)
6613         (end_symtab_with_blockvector): Update.
6614         (set_last_source_start_addr, get_last_source_start_addr): New
6615         functions.
6616
6617 2018-07-16  Tom Tromey  <tom@tromey.com>
6618
6619         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6620         member.
6621         (have_line_numbers): Remove.
6622         (record_line, prepare_for_building, end_symtab_get_static_block)
6623         (augment_type_symtab): Update.
6624
6625 2018-07-16  Tom Tromey  <tom@tromey.com>
6626
6627         * buildsym.c (~buildsym_compunit): Free the macro table.
6628         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6629         methods.
6630         <m_pending_macros>: New member.
6631         (pending_macros): Remove.
6632         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6633         (reset_symtab_globals, end_symtab_get_static_block)
6634         (end_symtab_with_blockvector, augment_type_symtab)
6635         (buildsym_init): Update.
6636
6637 2018-07-16  Tom Tromey  <tom@tromey.com>
6638
6639         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6640         parameter.
6641         (buildsym_compunit::set_last_source_file): New method.
6642         <m_last_source_file>: New member.
6643         (prepare_for_building): Remove "name" parameter.
6644         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6645         (last_source_file): Remove.
6646         (set_last_source_file, get_last_source_file): Update.
6647
6648 2018-07-16  Tom Tromey  <tom@tromey.com>
6649
6650         * buildsym.c (prepare_for_building): Add assert.
6651
6652 2018-07-16  Tom Tromey  <tom@tromey.com>
6653
6654         * buildsym.c (~buildsym_compunit): Update.
6655         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6656         (start_subfile, patch_subfile_names)
6657         (end_symtab_with_blockvector): Update.
6658
6659 2018-07-16  Tom Tromey  <tom@tromey.com>
6660
6661         * buildsym.c (struct buildsym_compunit): Add constructor,
6662         destructor, initializers.
6663         (start_buildsym_compunit): Remove.
6664         (free_buildsym_compunit): Use "delete".
6665         (start_symtab, restart_symtab): Use "new".
6666
6667 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6668
6669         * symfile.c (set_objfile_default_section_offset): Remove struct
6670         keyword.
6671
6672 2018-07-14  Stafford Horne  <shorne@gmail.com>
6673
6674         * (Responsible Maintainers): Add myself as or1k maintainer.
6675
6676 2018-07-13  Tom Tromey  <tom@tromey.com>
6677
6678         * symfile.c (set_objfile_default_section_offset): Use extra braces
6679         around initializer.
6680
6681 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6682
6683         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6684         non-branching basr.
6685
6686 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6687
6688         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6689         unittests/cli-utils-selftests.c
6690         * unittests/cli-utils-selftests.c: New file.
6691
6692 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6693
6694         * NEWS: Mention new commands. Mention change to 'thread apply'.
6695
6696 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6697
6698         * thread.c (thr_try_catch_cmd): New function.
6699         (thread_apply_all_command): Handle qcs flags.
6700         (thread_apply_command): Handle qcs flags.
6701         (taas_command): New function.
6702         (tfaas_command): New function.
6703         (_initialize_thread): Update to setup the new commands 'taas
6704         and 'tfaas'. Change doc string for 'thread apply'.
6705
6706 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6707
6708         * stack.c: (trailing_outermost_frame): New function, mostly
6709         extracted from backtrace_command_1.
6710         (leading_innermost_frame): New function.
6711         (backtrace_command_1): Update to call trailing_outermost_frame.
6712         (frame_apply_command_count): New function.
6713         (frame_apply_level_command): New function.
6714         (frame_apply_all_command): New function.
6715         (frame_apply_command): New function.
6716         (faas_command): New function.
6717         (frame_cmd_list): New variable.
6718         (_initialize_stack): Update to setup the new commands 'frame apply'
6719         and 'faas'.
6720
6721 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6722
6723         * cli-utils.c (number_or_range_parser::get_number): Only handle
6724         numbers or convenience var as numbers.
6725         (parse_flags): New function.
6726         (parse_flags_qcs): New function.
6727         (number_or_range_parser::finished): Ensure parsing end is detected
6728         before end of string.
6729         * cli-utils.h (parse_flags): New function.
6730         (parse_flags_qcs): New function.
6731         (number_or_range_parser): Remove m_finished bool.
6732         (number_or_range_parser::skip_range): Set m_in_range to false.
6733
6734 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6735
6736         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6737         on Windows.
6738
6739 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6740             Jan Kratochvil  <jan.kratochvil@redhat.com>
6741             Paul Fertser  <fercerpav@gmail.com>
6742             Tsutomu Seki  <sekiriki@gmail.com>
6743             Pedro Alves  <palves@redhat.com>
6744
6745         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6746         'unittests/parse-connection-spec-selftests.c'.
6747         (COMMON_SFILES): Add 'common/netstuff.c'.
6748         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6749         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6750         * common/netstuff.c: New file.
6751         * common/netstuff.h: New file.
6752         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6753         (wait_for_connect): Update comment.  New parameter
6754         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6755         Use 'sock' directly instead of 'scb->fd'.
6756         (try_connect): New function, with code from 'net_open'.
6757         (net_open): Rewrite main loop to deal with multiple
6758         sockets/addresses.  Handle IPv6-style hostnames; implement
6759         support for IPv6 connections.
6760         * unittests/parse-connection-spec-selftests.c: New file.
6761
6762 2018-07-11  Pedro Alves  <palves@redhat.com>
6763
6764         PR gdb/23377
6765         * remote.c (remote_target::remote_detach_pid): Call
6766         set_current_process.
6767
6768 2018-07-11  Pedro Alves  <palves@redhat.com>
6769
6770         * h8300-tdep.c (h8300_gdbarch_init): Remove
6771         set_gdbarch_ecoff_reg_to_regnum calls.
6772
6773 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6774
6775         PR c++/23373
6776         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6777         offsets/sizes for static members of a class/struct.
6778
6779 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6780
6781         * target-descriptions.c (tdesc_register_bitsize): Rename.
6782         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6783         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6784         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6785
6786 2018-07-10  Tom Tromey  <tom@tromey.com>
6787
6788         * breakpoint.c (moribund_locations): Now static and a
6789         std::vector.
6790         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6791         (build_bpstat_chain, update_global_location_list)
6792         (breakpoint_retire_moribund): Update.
6793         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6794         VEC.
6795
6796 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6797
6798         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6799         (riscv_register_reggroup_p): Use new function, remove unneeded
6800         parenthesis.
6801         (riscv_push_dummy_call): Extend assert to compare against xlen or
6802         flen based on register type.
6803
6804 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6805
6806         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6807
6808 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6809
6810         * remote.c (show_hardware_watchpoint_limit): New function.
6811         (show_hardware_watchpoint_length_limit): New function.
6812         (show_hardware_breakpoint_limit): New function.
6813         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6814         where appropriate, update help text.
6815
6816 2018-07-09  Tom Tromey  <tom@tromey.com>
6817
6818         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6819         (CLIBS): Don't mention NAT_CLIBS.
6820
6821 2018-07-09  Tom Tromey  <tom@tromey.com>
6822
6823         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6824         (LIBGDB_OBS, clean mostlyclean): Update.
6825         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6826
6827 2018-07-09  Tom Tromey  <tom@tromey.com>
6828
6829         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6830         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6831         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6832
6833 2018-07-09  Tom Tromey  <tom@tromey.com>
6834
6835         * Makefile.in (ALLDEPFILES): Remove exec.c.
6836         (COMMON_OBS): Remove exec.o.
6837         (COMMON_SFILES): Add exec.c.
6838
6839 2018-07-09  Tom Tromey  <tom@tromey.com>
6840
6841         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6842
6843 2018-07-09  Tom Tromey  <tom@tromey.com>
6844
6845         * Makefile.in (clean mostlyclean): Remove stamp-version.
6846         (version.c): Depend on stamp-version.
6847         (stamp-version): New rule, from version.c rule.
6848
6849 2018-07-09  Tom Tromey  <tom@tromey.com>
6850
6851         * Makefile.in (init.c): Depend on stamp-init.
6852         (stamp-init): New rule, from init.c rule.
6853         (clean mostlyclean): Remove stamp-init.
6854
6855 2018-07-09  Tom Tromey  <tom@tromey.com>
6856
6857         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6858         SUBDIR_GCC_COMPILE_SRCS.
6859
6860 2018-07-09  Tom Tromey  <tom@tromey.com>
6861
6862         * Makefile.in (init.c): Remove some unused sed rules.
6863
6864 2018-07-09  Tom Tromey  <tom@tromey.com>
6865
6866         * Makefile.in (TSOBS): Remove.
6867         (INIT_FILES): Update.
6868         (LIBGDB_OBS): Update.
6869         (COMMON_SFILES): Add inflow.c.
6870         (SFILES): Remove inflow.c.
6871
6872 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6873
6874         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6875
6876 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6877
6878         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6879         get_saveloc_name, is_signal_frame_name, step_name,
6880         init_remote_name, create_addr_space_name,
6881         destroy_addr_space_name, search_unwind_table_name,
6882         find_dyn_list_name): Constify.
6883
6884 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6885
6886         * darwin-nat.c (darwin_pthread_kill): New function.
6887         (darwin_resume_thread): Use darwin_pthread_kill.
6888
6889 2018-07-05  Tom de Vries  <tdevries@suse.de>
6890
6891         * macroexp.c (macro_buffer) <operator=>: New member function.
6892
6893 2018-07-04  Tom Tromey  <tom@tromey.com>
6894
6895         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6896
6897 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6898
6899         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6900         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6901         * maint.c: Likewise.
6902         * top.c: Likewise.
6903
6904 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6905
6906         * NEWS: Create a new section for the next release branch.
6907         Rename the section of the current branch, now that it has
6908         been cut.
6909
6910 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6911
6912         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6913         * version.in: Bump version to 8.2.50.DATE-git.
6914
6915 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6916             Pedro Alves  <palves@redhat.com>
6917
6918         * linux-nat.c (linux_init_ptrace): Rename to ...
6919         (linux_init_ptrace_procfs): ... this.  Call
6920         linux_proc_init_warnings.
6921         (linux_nat_target::post_attach)
6922         (linux_nat_target::post_startup_inferior): Adjust.
6923         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6924         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6925
6926 2018-07-04  Tom de Vries  <tdevries@suse.de>
6927
6928         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6929         check ...
6930         (read_comp_unit_head): ... here.
6931
6932 2018-07-03  Tom Tromey  <tom@tromey.com>
6933
6934         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6935         (stop_tracing, tstatus_command)
6936         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6937         (print_one_static_tracepoint_marker): Update.
6938         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6939         std::vector.
6940         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6941         VEC.
6942         (all_tracepoints, static_tracepoints_here): Return std::vector.
6943
6944 2018-07-03  Tom Tromey  <tom@tromey.com>
6945
6946         * common/ptid.c (ptid_equal): Remove.
6947         * common/ptid.h (ptid_equal): Don't declare.
6948         * ada-tasks.c: Update.
6949         * breakpoint.c: Update.
6950         * common/agent.c: Update.
6951         * corelow.c: Update.
6952         * darwin-nat-info.c: Update.
6953         * darwin-nat.c: Update.
6954         * dcache.c: Update.
6955         * dtrace-probe.c: Update.
6956         * dummy-frame.c: Update.
6957         * fbsd-nat.c: Update.
6958         * frame.c: Update.
6959         * gdbthread.h: Update.
6960         * gnu-nat.c: Update.
6961         * go32-nat.c: Update.
6962         * inf-loop.c: Update.
6963         * inf-ptrace.c: Update.
6964         * infcall.c: Update.
6965         * infcmd.c: Update.
6966         * inflow.c: Update.
6967         * infrun.c: Update.
6968         * linux-fork.c: Update.
6969         * linux-nat.c: Update.
6970         * linux-thread-db.c: Update.
6971         * mi/mi-cmd-var.c: Update.
6972         * mi/mi-interp.c: Update.
6973         * mi/mi-main.c: Update.
6974         * nto-procfs.c: Update.
6975         * ppc-linux-tdep.c: Update.
6976         * procfs.c: Update.
6977         * python/py-inferior.c: Update.
6978         * python/py-record-btrace.c: Update.
6979         * python/py-record.c: Update.
6980         * ravenscar-thread.c: Update.
6981         * regcache.c: Update.
6982         * remote-sim.c: Update.
6983         * remote.c: Update.
6984         * sol-thread.c: Update.
6985         * solib.c: Update.
6986         * target.c: Update.
6987         * tui/tui-stack.c: Update.
6988         * varobj.c: Update.
6989         * windows-nat.c: Update.
6990         * windows-tdep.c: Update.
6991
6992 2018-07-03  Tom Tromey  <tom@tromey.com>
6993
6994         * common/ptid.c (ptid_match): Remove.
6995         * common/ptid.h (ptid_match): Don't declare.
6996         * fbsd-nat.c: Update.
6997         * infcmd.c: Update.
6998         * infrun.c: Update.
6999         * linux-nat.c: Update.
7000         * record-btrace.c: Update.
7001         * regcache.c: Update.
7002         * remote.c: Update.
7003
7004 2018-07-03  Tom Tromey  <tom@tromey.com>
7005
7006         * common/ptid.c (ptid_tid_p): Remove.
7007         * common/ptid.h (ptid_tid_p): Don't declare.
7008         * sol-thread.c: Update.
7009
7010 2018-07-03  Tom Tromey  <tom@tromey.com>
7011
7012         * common/ptid.c (ptid_lwp_p): Remove.
7013         * common/ptid.h (ptid_lwp_p): Don't declare.
7014         * fbsd-nat.c: Update.
7015         * linux-nat.c: Update.
7016         * nat/linux-procfs.c: Update.
7017         * nat/x86-linux-dregs.c: Update.
7018         * sol-thread.c: Update.
7019
7020 2018-07-03  Tom Tromey  <tom@tromey.com>
7021
7022         * common/ptid.c (ptid_is_pid): Remove.
7023         * common/ptid.h (ptid_is_pid): Don't declare.
7024         * infrun.c: Update.
7025         * linux-nat.c: Update.
7026         * mi/mi-interp.c: Update.
7027         * remote.c: Update.
7028         * thread.c: Update.
7029
7030 2018-07-03  Tom Tromey  <tom@tromey.com>
7031
7032         * common/ptid.c (ptid_get_tid): Remove.
7033         * common/ptid.h (ptid_get_tid): Don't declare.
7034         * ada-tasks.c: Update.
7035         * aix-thread.c: Update.
7036         * bsd-uthread.c: Update.
7037         * darwin-nat.c: Update.
7038         * fbsd-nat.c: Update.
7039         * i386-darwin-nat.c: Update.
7040         * infrun.c: Update.
7041         * linux-tdep.c: Update.
7042         * nto-procfs.c: Update.
7043         * ppc-ravenscar-thread.c: Update.
7044         * python/py-infthread.c: Update.
7045         * ravenscar-thread.c: Update.
7046         * sol-thread.c: Update.
7047         * sparc-ravenscar-thread.c: Update.
7048         * windows-nat.c: Update.
7049
7050 2018-07-03  Tom Tromey  <tom@tromey.com>
7051
7052         * common/ptid.c (ptid_get_lwp): Remove.
7053         * common/ptid.h (ptid_get_lwp): Don't declare.
7054         * aarch64-linux-nat.c: Update.
7055         * ada-tasks.c: Update.
7056         * aix-thread.c: Update.
7057         * amd64-linux-nat.c: Update.
7058         * arm-linux-nat.c: Update.
7059         * corelow.c: Update.
7060         * fbsd-nat.c: Update.
7061         * fbsd-tdep.c: Update.
7062         * gnu-nat.c: Update.
7063         * i386-cygwin-tdep.c: Update.
7064         * i386-gnu-nat.c: Update.
7065         * i386-linux-nat.c: Update.
7066         * ia64-linux-nat.c: Update.
7067         * inf-ptrace.c: Update.
7068         * infrun.c: Update.
7069         * linux-fork.c: Update.
7070         * linux-nat.c: Update.
7071         * linux-tdep.c: Update.
7072         * linux-thread-db.c: Update.
7073         * mips-linux-nat.c: Update.
7074         * nat/aarch64-linux-hw-point.c: Update.
7075         * nat/aarch64-linux.c: Update.
7076         * nat/linux-btrace.c: Update.
7077         * nat/linux-osdata.c: Update.
7078         * nat/linux-procfs.c: Update.
7079         * nat/x86-linux-dregs.c: Update.
7080         * obsd-nat.c: Update.
7081         * ppc-fbsd-nat.c: Update.
7082         * ppc-linux-nat.c: Update.
7083         * procfs.c: Update.
7084         * python/py-infthread.c: Update.
7085         * ravenscar-thread.c: Update.
7086         * remote.c: Update.
7087         * s390-linux-nat.c: Update.
7088         * sol-thread.c: Update.
7089         * sol2-tdep.c: Update.
7090         * spu-linux-nat.c: Update.
7091         * x86-linux-nat.c: Update.
7092         * xtensa-linux-nat.c: Update.
7093
7094 2018-07-03  Tom Tromey  <tom@tromey.com>
7095
7096         * common/ptid.c (ptid_get_pid): Remove.
7097         * common/ptid.h (ptid_get_pid): Don't declare.
7098         * aarch64-linux-nat.c: Update.
7099         * ada-lang.c: Update.
7100         * aix-thread.c: Update.
7101         * alpha-bsd-nat.c: Update.
7102         * amd64-fbsd-nat.c: Update.
7103         * amd64-linux-nat.c: Update.
7104         * arm-linux-nat.c: Update.
7105         * arm-nbsd-nat.c: Update.
7106         * auxv.c: Update.
7107         * break-catch-syscall.c: Update.
7108         * breakpoint.c: Update.
7109         * bsd-uthread.c: Update.
7110         * corelow.c: Update.
7111         * ctf.c: Update.
7112         * darwin-nat.c: Update.
7113         * fbsd-nat.c: Update.
7114         * fbsd-tdep.c: Update.
7115         * gcore.c: Update.
7116         * gnu-nat.c: Update.
7117         * hppa-nbsd-nat.c: Update.
7118         * hppa-obsd-nat.c: Update.
7119         * i386-fbsd-nat.c: Update.
7120         * ia64-linux-nat.c: Update.
7121         * inf-ptrace.c: Update.
7122         * infcmd.c: Update.
7123         * inferior.c: Update.
7124         * inferior.h: Update.
7125         * inflow.c: Update.
7126         * infrun.c: Update.
7127         * linux-fork.c: Update.
7128         * linux-nat.c: Update.
7129         * linux-tdep.c: Update.
7130         * linux-thread-db.c: Update.
7131         * m68k-bsd-nat.c: Update.
7132         * mi/mi-interp.c: Update.
7133         * mi/mi-main.c: Update.
7134         * mips-linux-nat.c: Update.
7135         * mips-nbsd-nat.c: Update.
7136         * mips64-obsd-nat.c: Update.
7137         * nat/aarch64-linux-hw-point.c: Update.
7138         * nat/aarch64-linux.c: Update.
7139         * nat/linux-btrace.c: Update.
7140         * nat/linux-osdata.c: Update.
7141         * nat/linux-procfs.c: Update.
7142         * nat/x86-linux-dregs.c: Update.
7143         * nto-procfs.c: Update.
7144         * obsd-nat.c: Update.
7145         * ppc-linux-nat.c: Update.
7146         * ppc-nbsd-nat.c: Update.
7147         * ppc-obsd-nat.c: Update.
7148         * proc-service.c: Update.
7149         * procfs.c: Update.
7150         * python/py-inferior.c: Update.
7151         * python/py-infthread.c: Update.
7152         * ravenscar-thread.c: Update.
7153         * record.c: Update.
7154         * remote-sim.c: Update.
7155         * remote.c: Update.
7156         * rs6000-nat.c: Update.
7157         * s390-linux-nat.c: Update.
7158         * sh-nbsd-nat.c: Update.
7159         * sol-thread.c: Update.
7160         * sparc-nat.c: Update.
7161         * sparc64-tdep.c: Update.
7162         * spu-linux-nat.c: Update.
7163         * spu-tdep.c: Update.
7164         * target-debug.h: Update.
7165         * target.c: Update.
7166         * thread.c: Update.
7167         * tid-parse.c: Update.
7168         * tracefile-tfile.c: Update.
7169         * vax-bsd-nat.c: Update.
7170         * windows-nat.c: Update.
7171         * x86-linux-nat.c: Update.
7172         * x86-nat.c: Update.
7173
7174 2018-07-03  Tom Tromey  <tom@tromey.com>
7175
7176         * common/ptid.c (pid_to_ptid): Remove.
7177         * common/ptid.h (pid_to_ptid): Don't declare.
7178         * aix-thread.c: Update.
7179         * arm-linux-nat.c: Update.
7180         * common/ptid.c: Update.
7181         * common/ptid.h: Update.
7182         * corelow.c: Update.
7183         * ctf.c: Update.
7184         * darwin-nat.c: Update.
7185         * fbsd-nat.c: Update.
7186         * fork-child.c: Update.
7187         * gnu-nat.c: Update.
7188         * go32-nat.c: Update.
7189         * inf-ptrace.c: Update.
7190         * infcmd.c: Update.
7191         * inferior.c: Update.
7192         * infrun.c: Update.
7193         * linux-fork.c: Update.
7194         * linux-nat.c: Update.
7195         * nat/aarch64-linux-hw-point.c: Update.
7196         * nat/fork-inferior.c: Update.
7197         * nat/x86-linux-dregs.c: Update.
7198         * nto-procfs.c: Update.
7199         * obsd-nat.c: Update.
7200         * procfs.c: Update.
7201         * progspace.c: Update.
7202         * remote.c: Update.
7203         * rs6000-nat.c: Update.
7204         * s390-linux-nat.c: Update.
7205         * sol-thread.c: Update.
7206         * spu-linux-nat.c: Update.
7207         * target.c: Update.
7208         * top.c: Update.
7209         * tracefile-tfile.c: Update.
7210         * windows-nat.c: Update.
7211
7212 2018-07-03  Tom Tromey  <tom@tromey.com>
7213
7214         * common/ptid.h (ptid_build): Don't declare.
7215         * common/ptid.c (ptid_build): Remove.
7216         * aix-thread.c: Update.
7217         * bsd-kvm.c: Update.
7218         * bsd-uthread.c: Update.
7219         * common/agent.c: Update.
7220         * common/ptid.c: Update.
7221         * common/ptid.h: Update.
7222         * corelow.c: Update.
7223         * darwin-nat.c: Update.
7224         * fbsd-nat.c: Update.
7225         * gnu-nat.c: Update.
7226         * linux-fork.c: Update.
7227         * linux-nat.c: Update.
7228         * linux-thread-db.c: Update.
7229         * nat/linux-osdata.c: Update.
7230         * nat/linux-procfs.c: Update.
7231         * nto-procfs.c: Update.
7232         * obsd-nat.c: Update.
7233         * proc-service.c: Update.
7234         * procfs.c: Update.
7235         * ravenscar-thread.c: Update.
7236         * remote-sim.c: Update.
7237         * remote.c: Update.
7238         * sol-thread.c: Update.
7239         * target.c: Update.
7240         * windows-nat.c: Update.
7241
7242 2018-07-03  Tom Tromey  <tom@tromey.com>
7243
7244         * infrun.c (follow_exec): Use exit_inferior_silent.
7245         * inferior.c (exit_inferior_num_silent): Remove.
7246         * inferior.h (exit_inferior_num_silent): Don't declare.
7247
7248 2018-07-03  Tom Tromey  <tom@tromey.com>
7249
7250         PR cli/23340:
7251         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7252         inferior_ptid on error.
7253
7254 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7255             Simon Marchi  <simon.marchi@polymtl.ca>
7256
7257         PR tdep/8282
7258         * disasm.h (gdb_disassembler): Add
7259         `m_disassembler_options_holder'. member
7260         * disasm.c (get_all_disassembler_options): New function.
7261         (gdb_disassembler::gdb_disassembler): Use it.
7262         (gdb_buffered_insn_length_init_dis): Likewise.
7263         (gdb_buffered_insn_length): Adjust accordingly.
7264         (set_disassembler_options): Handle options with arguments.
7265         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7266         line if showing options with descriptions.
7267         (disassembler_options_completer): Adapt to using the
7268         `disasm_options_and_args_t' structure.
7269         * mips-tdep.c (mips_disassembler_options): New variable.
7270         (mips_disassembler_options_o32): Likewise.
7271         (mips_disassembler_options_n32): Likewise.
7272         (mips_disassembler_options_n64): Likewise.
7273         (gdb_print_insn_mips): Don't set `disassembler_options'.
7274         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7275         functions.
7276         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7277         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7278         `gdbarch_disassembler_options_implicit' and
7279         `gdbarch_valid_disassembler_options'.
7280         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7281         `disasm_options_and_args_t' structure.
7282         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7283         method.
7284         (valid_disassembler_options): Switch from `disasm_options_t' to
7285         the `disasm_options_and_args_t' structure.
7286         * NEWS: Document `set disassembler-options' support for the MIPS
7287         target.
7288         * gdbarch.h: Regenerate.
7289         * gdbarch.c: Regenerate.
7290
7291 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7292
7293         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7294
7295 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7296
7297         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7298         parameter in call to amd64_target_description.
7299         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7300         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7301         (amd64fbsd_init_abi): Likewise.
7302         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7303         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7304         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7305         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7306
7307 2018-06-29  Pedro Alves  <palves@redhat.com>
7308
7309         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7310         "segments" parameter.
7311         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7312         (_initialize_amd64_tdep): Update call to
7313         amd64_create_target_description.
7314         (amd64_target_description): Add "segments" parameter.  Adjust
7315         the implementation to use it.
7316         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7317         call to amd64_create_target_description.
7318         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7319         * gdb/arch/amd64.h (amd64_create_target_description): Add
7320         "segments" register.
7321         * gdb/arch/amd64.c (amd64_create_target_description): Add
7322         "segments" parameter.  Call create_feature_i386_64bit_segments
7323         only if SEGMENTS is true.
7324         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7325         call to amd64_create_target_description.
7326
7327 2018-06-29  Pedro Alves  <palves@redhat.com>
7328
7329         * thread.c (thread_target_id_str): New, factored out from ...
7330         (print_thread_info_1): ... here.  Use it to compute the max
7331         "Target Id" column width.
7332
7333 2018-06-29  Pedro Alves  <palves@redhat.com>
7334
7335         * remote.c (remote_target::extra_thread_info): Delete
7336         'display_buf' and 'n' locals.  from the cache, regardless of
7337         packet mechanims is in use.  Use cache for qThreadExtra and qP
7338         methods too.
7339
7340 2018-06-29  Pedro Alves  <palves@redhat.com>
7341
7342         * blockframe.c (find_pc_sect_containing_function): New function.
7343         * breakpoint.c (print_breakpoint_location): Don't call
7344         find_pc_sect_function.
7345         * linespec.c (create_sals_line_offset): Record the location's
7346         symbol in the sal.
7347         * linespec.c (convert_address_location_to_sals): Fill in sal's
7348         symbol with find_pc_sect_containing_function.
7349         * symtab.c (find_function_start_sal): Rename to ...
7350         (find_function_start_sal_1): ... this.
7351         (find_function_start_sal): Reimplement as wrapper around
7352         find_function_start_sal_1, and use
7353         find_pc_sect_containing_function to fill in the sal's symbol.
7354         (find_function_start_sal(symbol*, bool)): Adjust.
7355         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7356         comments.
7357         (find_pc_sect_containing_function): Declare.
7358
7359 2018-06-29  Pedro Alves  <palves@redhat.com>
7360
7361         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7362         true if the the location has no symbol.
7363
7364 2018-06-28  Tom Tromey  <tom@tromey.com>
7365
7366         * NEWS: Mention --enable-codesign.
7367         * silent-rules.mk (ECHO_SIGN): New variable.
7368         * configure.ac: Add --enable-codesign.
7369         * configure: Rebuild.
7370         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7371         (gdb$(EXEEXT)): Optionally invoke codesign.
7372
7373 2018-06-28  Pedro Alves  <palves@redhat.com>
7374
7375         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7376         comments.
7377         (switch_to_thread_no_regs): Adjust comment.
7378         * infcmd.c (stop_pc): Delete.
7379         (post_create_inferior, info_program_command): Replace references
7380         to stop_pc with references to thread_info->suspend.stop_pc.
7381         * inferior.h (stop_pc): Delete declaration.
7382         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7383         (handle_inferior_event_1, handle_signal_stop)
7384         (process_event_stop_test, keep_going_stepped_thread)
7385         (handle_step_into_function, handle_step_into_function_backward)
7386         (print_stop_location): Replace references to stop_pc with
7387         references to thread_info->suspend.stop_pc.
7388         (struct infcall_suspend_state) <stop_pc>: Delete field.
7389         (save_infcall_suspend_state, restore_infcall_suspend_state):
7390         Remove references to inf_stat->stop_pc.
7391         * linux-fork.c (fork_load_infrun_state): Likewise.
7392         * record-btrace.c (record_btrace_set_replay): Likewise.
7393         * record-full.c (record_full_goto_entry): Likewise.
7394         * remote.c (print_one_stopped_thread): Likewise.
7395         * target.c (target_resume): Extend comment.
7396         * thread.c (set_executing_thread): New.
7397         (set_executing): Use it.
7398         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7399         Remove references to stop_pc.
7400
7401 2018-06-28  Pedro Alves  <palves@redhat.com>
7402
7403         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7404         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7405
7406 2018-06-28  Tom Tromey  <tom@tromey.com>
7407
7408         * coffread.c (coff_symfile_finish): Update.
7409         * xcoffread.c (xcoff_symfile_finish): Update.
7410         * elfread.c (elf_symfile_finish): Update.
7411         * symfile.h (dwarf2_free_objfile): Don't declare.
7412         * dwarf2read.c (_initialize_dwarf2_read): Use
7413         register_objfile_data_with_cleanup.
7414         (dwarf2_free_objfile): Now static.  Change signature.
7415
7416 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7417
7418         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7419         option "-o" to add-symbol-file-load to add an offset to each
7420         section's load address.
7421         * symfile.c (set_objfile_default_section_offset): New function.
7422
7423 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7424
7425         * symfile.c (add_symbol_file_command): Make sure that sections
7426         with the same name are sorted in the same order.
7427
7428 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7429
7430         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7431         require the second argument.  If omitted, load sections at the
7432         addresses specified in the file.
7433
7434 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7435
7436         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7437         (_initialize_symfile): Add option "-o" to symbol-file to add an
7438         offset to each section of the symbol file.
7439
7440 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7441
7442         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7443
7444 2018-06-27  Tom Tromey  <tom@tromey.com>
7445
7446         * stack.c (_initialize_stack): Update "func" help text.
7447
7448 2018-06-27  Tom Tromey  <tom@tromey.com>
7449
7450         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7451         std::vector.
7452         (unwind_infopy_str, pyuw_create_unwind_info)
7453         (unwind_infopy_add_saved_register, pyuw_sniffer)
7454         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7455         Update.
7456         (struct saved_reg): Add constructor.
7457         <value>: Now a gdbpy_ref<>.
7458
7459 2018-06-27  Tom Tromey  <tom@tromey.com>
7460
7461         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7462
7463 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7464
7465         * gdb-gdb.py.in: Format using autopep8.
7466
7467 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7468
7469         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7470         (type_lookup_function): Recognize CORE_ADDR values.
7471
7472 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7473
7474         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7475         print tag_name.
7476
7477 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7478
7479         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7480         <__lt__>: Add.
7481
7482 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7483
7484         * gdb-gdb.py: Move to...
7485         * gdb-gdb.py.in: ... here.
7486         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7487         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7488         dependencies.
7489         (distclean): Remove gdb-gdb.py when cleaning.
7490         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7491         * configure: Re-generate.
7492
7493 2018-06-27  Pedro Alves  <palves@redhat.com>
7494
7495         * proc-service.c (get_ps_regcache): New.
7496         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7497         (ps_lsetfpregs): Use it.
7498
7499 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7500
7501         PR gdb/21695
7502         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7503         declaration.
7504         (dwarf_decode_lines_1): Adjust.
7505
7506 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7507
7508         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7509         override.
7510         <info_proc>: Likewise.
7511
7512 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7513
7514         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7515         to windows_fetch_one_register, and only handle the case of
7516         fetching one register.  Move the code that reloads the context
7517         and iterates over all registers if R is negative to...
7518         (windows_nat_target::fetch_registers): ... here.
7519         (do_windows_store_inferior_registers): Rename to
7520         windows_store_one_register, and only handle the case of storing
7521         one register.  Move the code that handles the case where r is
7522         negative to...
7523         (windows_nat_target::store_registers) ... here.
7524
7525 2018-06-26  Tom Tromey  <tom@tromey.com>
7526
7527         PR rust/22574:
7528         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7529         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7530         Update.
7531         (rust_internal_print_type): Add podata parameter.
7532         (rust_print_type): Update.
7533
7534 2018-06-26  Tom Tromey  <tom@tromey.com>
7535
7536         * typeprint.h (struct print_offset_data) <update, finish,
7537         maybe_print_hole>: New methods.
7538         <indentation>: New constant.
7539         * typeprint.c (print_offset_data::indentation): Define.
7540         (print_offset_data::maybe_print_hole, print_offset_data::update)
7541         (print_offset_data::finish): Move from c-typeprint.c and rename.
7542         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7543         (print_spaces_filtered_with_print_options): Update.
7544         (c_print_type_union_field_offset, maybe_print_hole)
7545         (c_print_type_struct_field_offset): Move to typeprint.c and
7546         rename.
7547         (c_type_print_base_struct_union): Update.
7548
7549 2018-06-25  Pedro Alves  <palves@redhat.com>
7550
7551         * gdbthread.h (thread_info_ref, delete_thread)
7552         (delete_thread_silent, first_thread_of_inferior)
7553         (any_thread_of_inferior, switch_to_thread)
7554         (enable_thread_stack_temporaries)
7555         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7556         (get_last_thread_stack_temporary)
7557         (value_in_thread_stack_temporaries, can_access_registers_thread):
7558         Spell out "struct thread_info" instead of just "thread_info".
7559         * inferior.h (notice_new_inferior): Likewise.
7560
7561 2018-06-25  Pedro Alves  <palves@redhat.com>
7562
7563         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7564         pass thread_info pointer to delete_thread.
7565         (windows_nat_target::detach): Pass inferior pointer to
7566         detach_inferior.
7567         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7568         delete_thread.
7569         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7570         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7571         and pass a thread_info pointer to delete_thread.
7572         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7573         pass thread_info pointer to delete_thread.
7574         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7575         delete_thread_silent call.
7576         * procfs.c (procfs_target::detach): Pass inferior pointer to
7577         detach_inferior.
7578         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7579         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7580         delete_thread_silent call.
7581         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7582         pass thread_info pointer to delete_thread.
7583         (windows_nat_target::detach): Pass inferior pointer to
7584         delete_inferior.
7585
7586 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7587
7588         * regcache.c (readable_regcache::read_part): Fix asserts.
7589         (reg_buffer::raw_collect_part): New function.
7590         (regcache::write_part): Fix asserts.
7591         (reg_buffer::raw_supply_part): New function.
7592         (regcache::transfer_regset_register): New helper function.
7593         (regcache::transfer_regset): Call new functions.
7594         (regcache_supply_regset): Use gdb_byte*.
7595         (regcache::supply_regset): Likewise.
7596         (regcache_collect_regset): Likewise.
7597         (regcache::collect_regset): Likewise.
7598         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7599         (reg_buffer::raw_supply_part): Likewise.
7600         (regcache::transfer_regset_register): Likewise.
7601         (regcache::transfer_regset): Use gdb_byte*.
7602
7603 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7604
7605         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7606
7607 2018-06-21  Pedro Alves  <palves@redhat.com>
7608
7609         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7610         instead of a ptid_t.  All callers adjusted.
7611         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7612         adjusted.
7613         (print_ada_task_info, display_current_task_id, task_command_1):
7614         Adjust.
7615         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7616         inferior_thread.
7617         (breakpoint_kind): Adjust.
7618         (remove_breakpoints_pid): Rename to ...
7619         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7620         pointer.  All callers adjusted.
7621         (bpstat_clear_actions): Use inferior_thread.
7622         (get_bpstat_thread): New.
7623         (bpstat_do_actions): Use it.
7624         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7625         to take a thread_info pointer.  All callers adjusted.
7626         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7627         (breakpoint_re_set_thread): Use inferior_thread.
7628         * breakpoint.h (struct inferior): Forward declare.
7629         (bpstat_stop_status): Update.
7630         (remove_breakpoints_pid): Delete.
7631         (remove_breakpoints_inf): New.
7632         * bsd-uthread.c (bsd_uthread_target::wait)
7633         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7634         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7635         (maint_btrace_packet_history_cmd)
7636         (maint_btrace_clear_packet_history_cmd): Adjust.
7637         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7638         inferior_thread.
7639         * cli/cli-interp.c: Include "inferior.h".
7640         * common/refcounted-object.h (struct
7641         refcounted_object_ref_policy): New.
7642         * compile/compile-object-load.c: Include gdbthread.h.
7643         (store_regs): Use inferior_thread.
7644         * corelow.c (core_target::close): Use current_inferior.
7645         (core_target_open): Adjust to use first_thread_of_inferior and use
7646         the current inferior.
7647         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7648         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7649         <thread>: ... this new field.  All references adjusted.
7650         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7651         Take a thread_info pointer instead of a ptid_t.
7652         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7653         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7654         thread_info pointer instead of a ptid_t.
7655         * elfread.c: Include "inferior.h".
7656         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7657         Use inferior_thread.
7658         * eval.c (evaluate_subexp): Likewise.
7659         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7660         inferior_thread.
7661         * gdb_proc_service.h (struct thread_info): Forward declare.
7662         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7663         <thread>: ... this new field.  All references adjusted.
7664         * gdbarch.h, gdbarch.c: Regenerate.
7665         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7666         'thread' parameter.  All implementations and callers adjusted.
7667         * gdbthread.h (thread_info) <set_running>: New method.
7668         (delete_thread, delete_thread_silent): Take a thread_info pointer
7669         instead of a ptid.
7670         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7671         (first_thread_of_process): Delete, replaced by ...
7672         (first_thread_of_inferior): ... this new function.  All callers
7673         adjusted.
7674         (any_live_thread_of_process): Delete, replaced by ...
7675         (any_live_thread_of_inferior): ... this new function.  All callers
7676         adjusted.
7677         (switch_to_thread, switch_to_no_thread): Declare.
7678         (is_executing): Delete.
7679         (enable_thread_stack_temporaries): Update comment.
7680         <enable_thread_stack_temporaries>: Take a thread_info pointer
7681         instead of a ptid_t.  Incref the thread.
7682         <~enable_thread_stack_temporaries>: Decref the thread.
7683         <m_ptid>: Delete
7684         <m_thr>: New.
7685         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7686         (get_last_thread_stack_temporary)
7687         (value_in_thread_stack_temporaries, can_access_registers_thread):
7688         Take a thread_info pointer instead of a ptid_t.  All callers
7689         adjusted.
7690         * infcall.c (get_call_return_value): Use inferior_thread.
7691         (run_inferior_call): Work with thread pointers instead of ptid_t.
7692         (call_function_by_hand_dummy): Work with thread pointers instead
7693         of ptid_t.  Use thread_info_ref.
7694         * infcmd.c (proceed_thread_callback): Access thread's state
7695         directly.
7696         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7697         access thread's state directly.
7698         (continue_command): Use inferior_thread.
7699         (info_program_command): Use find_thread_ptid and access thread
7700         state directly.
7701         (proceed_after_attach_callback): Use thread state directly.
7702         (notice_new_inferior): Take a thread_info pointer instead of a
7703         ptid_t.  All callers adjusted.
7704         (exit_inferior): Take an inferior pointer instead of a pid.  All
7705         callers adjusted.
7706         (exit_inferior_silent): New.
7707         (detach_inferior): Delete.
7708         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7709         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7710         (detach_inferior_command, kill_inferior_command): Use
7711         find_inferior_id instead of valid_gdb_inferior_id and
7712         gdb_inferior_id_to_pid.
7713         (inferior_command): Use inferior and thread pointers.
7714         * inferior.h (struct thread_info): Forward declare.
7715         (notice_new_inferior): Take a thread_info pointer instead of a
7716         ptid_t.  All callers adjusted.
7717         (detach_inferior): Delete declaration.
7718         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7719         instead of a pid.  All callers adjusted.
7720         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7721         (valid_gdb_inferior_id): Delete.
7722         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7723         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7724         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7725         ...
7726         <inf>: ... this new field.
7727         <step_ptid>: Delete, replaced by ...
7728         <step_thread>: ... this new field.
7729         (get_displaced_stepping_state): Take an inferior pointer instead
7730         of a pid.  All callers adjusted.
7731         (displaced_step_in_progress_any_inferior): Adjust.
7732         (displaced_step_in_progress_thread): Take a thread pointer instead
7733         of a ptid_t.  All callers adjusted.
7734         (displaced_step_in_progress, add_displaced_stepping_state): Take
7735         an inferior pointer instead of a pid.  All callers adjusted.
7736         (get_displaced_step_closure_by_addr): Adjust.
7737         (remove_displaced_stepping_state): Take an inferior pointer
7738         instead of a pid.  All callers adjusted.
7739         (displaced_step_prepare_throw, displaced_step_prepare)
7740         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7741         All callers adjusted.
7742         (start_step_over): Adjust.
7743         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7744         displaced step queue.
7745         (do_target_resume): Adjust.
7746         (fetch_inferior_event): Use inferior_thread.
7747         (context_switch, get_inferior_stop_soon): Take an
7748         execution_control_state pointer instead of a ptid_t.  All callers
7749         adjusted.
7750         (switch_to_thread_cleanup): Delete.
7751         (stop_all_threads): Use scoped_restore_current_thread.
7752         * inline-frame.c: Include "gdbthread.h".
7753         (inline_state) <inline_state>: Take a thread pointer instead of a
7754         ptid_t.  All callers adjusted.
7755         <ptid>: Delete, replaced by ...
7756         <thread>: ... this new field.
7757         (find_inline_frame_state): Take a thread pointer instead of a
7758         ptid_t.  All callers adjusted.
7759         (skip_inline_frames, step_into_inline_frame)
7760         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7761         pointer instead of a ptid_t.  All callers adjusted.
7762         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7763         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7764         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7765         pointers directly.
7766         * linux-nat.c (get_detach_signal): Likewise.
7767         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7768         (thread_db_notice_clone): Adjust.
7769         (thread_db_find_new_threads_silently)
7770         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7771         a thread pointer instead of a ptid_t.  All callers adjusted.
7772         * mi/mi-cmd-var.c: Include "inferior.h".
7773         (mi_cmd_var_update_iter): Update to use thread pointers.
7774         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7775         inferior directly.
7776         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7777         out to ...
7778         (mi_output_running): ... this new function.
7779         (mi_on_resume_1): Adjust to use it.
7780         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7781         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7782         directly.
7783         (interrupt_thread_callback): : Adjust to use thread and inferior
7784         pointers.
7785         * proc-service.c: Include "gdbthread.h".
7786         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7787         * progspace-and-thread.c: Include "inferior.h".
7788         * progspace.c: Include "inferior.h".
7789         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7790         hold a reference to an inferior_object.
7791         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7792         inferior_thread.
7793         * python/py-inferior.c (struct inferior_object): Give the type a
7794         tag name instead of a typedef.
7795         (python_on_normal_stop): No need to check if the current thread is
7796         listed.
7797         (inferior_to_inferior_object): Change return type to
7798         inferior_object.  All callers adjusted.
7799         (find_thread_object): Delete, bits factored out to ...
7800         (thread_to_thread_object): ... this new function.
7801         * python/py-infthread.c (create_thread_object): Use
7802         inferior_to_inferior_object.
7803         (thpy_is_stopped): Use thread pointer directly.
7804         (gdbpy_selected_thread): Use inferior_thread.
7805         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7806         field, replaced with ...
7807         <thread>: ... this new field.  All users adjusted.
7808         (btpy_insn_or_gap_new): Drop const.
7809         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7810         callers adjusted.
7811         * python/py-record.c: Include "gdbthread.h".
7812         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7813         a ptid_t.  All callers adjusted.
7814         (gdbpy_current_recording): Use inferior_thread.
7815         * python/py-record.h (recpy_record_object) <ptid>: Delete
7816         field, replaced with ...
7817         <thread>: ... this new field.  All users adjusted.
7818         (recpy_element_object) <ptid>: Delete
7819         field, replaced with ...
7820         <thread>: ... this new field.  All users adjusted.
7821         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7822         a ptid_t.  All callers adjusted.
7823         * python/py-threadevent.c: Include "gdbthread.h".
7824         (get_event_thread): Use thread_to_thread_object.
7825         * python/python-internal.h (struct inferior_object): Forward
7826         declare.
7827         (find_thread_object, find_inferior_object): Delete declarations.
7828         (thread_to_thread_object, inferior_to_inferior_object): New
7829         declarations.
7830         * record-btrace.c: Include "inferior.h".
7831         (require_btrace_thread): Use inferior_thread.
7832         (record_btrace_frame_sniffer)
7833         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7834         (get_thread_current_frame): Use scoped_restore_current_thread and
7835         switch_to_thread.
7836         (get_thread_current_frame): Use thread pointer directly.
7837         (record_btrace_replay_at_breakpoint): Use thread's inferior
7838         pointer directly.
7839         * record-full.c: Include "inferior.h".
7840         * regcache.c: Include "gdbthread.h".
7841         (get_thread_arch_regcache): Use the inferior's address space
7842         directly.
7843         (get_thread_regcache, registers_changed_thread): New.
7844         * regcache.h (get_thread_regcache(thread_info *thread)): New
7845         overload.
7846         (registers_changed_thread): New.
7847         (remote_target) <remote_detach_1>: Swap order of parameters.
7848         (remote_add_thread): <remote_add_thread>: Return the new thread.
7849         (get_remote_thread_info(ptid_t)): New overload.
7850         (remote_target::remote_notice_new_inferior): Use thread pointers
7851         directly.
7852         (remote_target::process_initial_stop_replies): Use
7853         thread_info::set_running.
7854         (remote_target::remote_detach_1, remote_target::detach)
7855         (extended_remote_target::detach): Adjust.
7856         * stack.c (frame_show_address): Use inferior_thread.
7857         * target-debug.h (target_debug_print_thread_info_pp): New.
7858         * target-delegates.c: Regenerate.
7859         * target.c (default_thread_address_space): Delete.
7860         (memory_xfer_partial_1): Use current_inferior.
7861         (target_detach): Use current_inferior.
7862         (target_thread_address_space): Delete.
7863         (generic_mourn_inferior): Use current_inferior.
7864         * target.h (struct target_ops) <thread_address_space>: Delete.
7865         (target_thread_address_space): Delete.
7866         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7867         pointers directly.
7868         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7869         thread pointer instead of a ptid_t.  Adjust all callers.
7870         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7871         (first_thread_of_process): Delete, replaced by ...
7872         (first_thread_of_inferior): ... this new function.  All callers
7873         adjusted.
7874         (any_thread_of_process): Rename to ...
7875         (any_thread_of_inferior): ... this, and take an inferior pointer.
7876         (any_live_thread_of_process): Rename to ...
7877         (any_live_thread_of_inferior): ... this, and take an inferior
7878         pointer.
7879         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7880         (value_in_thread_stack_temporaries)
7881         (get_last_thread_stack_temporary): Take a thread pointer instead
7882         of a ptid_t.  Adjust all callers.
7883         (thread_info::set_running): New.
7884         (validate_registers_access): Use inferior_thread.
7885         (can_access_registers_ptid): Rename to ...
7886         (can_access_registers_thread): ... this, and take a thread
7887         pointer.
7888         (print_thread_info_1): Adjust to compare thread pointers instead
7889         of ptids.
7890         (switch_to_no_thread, switch_to_thread): Make extern.
7891         (scoped_restore_current_thread::~scoped_restore_current_thread):
7892         Use m_thread pointer directly.
7893         (scoped_restore_current_thread::scoped_restore_current_thread):
7894         Use inferior_thread.
7895         (thread_command): Use thread pointer directly.
7896         (thread_num_make_value_helper): Use inferior_thread.
7897         * top.c (execute_command): Use inferior_thread.
7898         * tui/tui-interp.c: Include "inferior.h".
7899         * varobj.c (varobj_create): Use inferior_thread.
7900         (value_of_root_1): Use find_thread_global_id instead of
7901         global_thread_id_to_ptid.
7902
7903 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7904
7905         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7906         possible.
7907         (regcache::write_part): Likewise.
7908         (readable_regcache::cooked_read_part): Update comment.
7909         (readable_regcache::cooked_write_part): Likewise.
7910         * regcache.h: (readable_regcache::read_part): Likewise.
7911         (regcache::write_part): Likewise.
7912
7913 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7914             Dirk Schubert  <dirk.schubert@arm.com>
7915
7916         * aarch64-linux-nat.c (post_attach): New.
7917         (aarch64_linux_nat_target::post_attach): Override post_attach to
7918         record the number of hardware debug registers.
7919
7920 2018-06-20  Tom Tromey  <tom@tromey.com>
7921
7922         * python/py-param.c (add_setshow_generic): Make parameters const.
7923         (parmpy_init): Update.
7924
7925 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7926
7927         * regcache.h (regcache_cooked_read_ftype): Rename to...
7928         (register_read_ftype): ...this, change type to function_view.
7929         (class reg_buffer) <save>: Remove src parameter.
7930         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7931         parameter non-const in first overload.  Remove src parameter in
7932         second overload.
7933         * regcache.c (do_cooked_read): Remove.
7934         (readonly_detached_regcache::readonly_detached_regcache): Make
7935         parameter non-const, adjust call to other constructor.
7936         (reg_buffer::save): Remove src parameter.
7937         * frame.c (do_frame_register_read): Remove.
7938         (frame_save_as_regcache): Use lambda function.
7939         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7940         parameter to ppu2spu_data *.
7941         (ppu2spu_sniffer): Use lambda function.
7942
7943 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7944
7945         * record-full.c (record_full_target::insert_breakpoint): Remove
7946         "struct" keyword, add const.
7947
7948 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7949
7950         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7951         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7952         * configure.ac: Remove AC_PREREQ, add missing quoting.
7953         * gnulib/configure.ac: Modernize usage of
7954         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7955         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7956         (AUTOMAKE_VERSION): Bump to 1.15.1.
7957         * configure: Re-generate.
7958         * config.in: Re-generate.
7959         * aclocal.m4: Re-generate.
7960         * gnulib/aclocal.m4: Re-generate.
7961         * gnulib/config.in: Re-generate.
7962         * gnulib/configure: Re-generate.
7963         * gnulib/import/Makefile.in: Re-generate.
7964
7965 2018-06-19  Pedro Alves  <palves@redhat.com>
7966
7967         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7968         (lookup_minimal_symbol_by_pc_section): ... here with
7969         gdb_assert_not_reached added.
7970
7971 2018-06-19  Pedro Alves  <palves@redhat.com>
7972
7973         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7974         parameter with a block parameter.  Compare location's block symbol
7975         with the frame's block instead of addresses.
7976         (skip_inline_frames): Pass the current block instead of the
7977         frame's address.  Break out as soon as we determine the frame
7978         should not be skipped.
7979
7980 2018-06-18  Tom Tromey  <tom@tromey.com>
7981
7982         * solib-aix.c (solib_aix_get_section_offsets): Return
7983         unique_xmalloc_ptr.
7984         (solib_aix_solib_create_inferior_hook): Update.
7985
7986 2018-06-18  Tom Tromey  <tom@tromey.com>
7987
7988         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7989
7990 2018-06-18  Tom Tromey  <tom@tromey.com>
7991
7992         * solib-frv.c (frv_relocate_main_executable): Use
7993         unique_xmalloc_ptr.
7994         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7995         unique_xmalloc_ptr.
7996
7997 2018-06-18  Tom Tromey  <tom@tromey.com>
7998
7999         * objfiles.h (inhibit_section_map_updates): Update.
8000         (resume_section_map_updates, resume_section_map_updates_cleanup):
8001         Remove.
8002         * solib-svr4.c (svr4_handle_solib_event): Update.
8003         * objfiles.c (inhibit_section_map_updates): Return
8004         scoped_restore_tmpl<int>.
8005         (resume_section_map_updates, resume_section_map_updates_cleanup):
8006         Remove.
8007
8008 2018-06-18  Tom Tromey  <tom@tromey.com>
8009
8010         * valprint.h (read_string): Update.
8011         * valprint.c (read_string): Change type of "buffer".
8012         (val_print_string): Update.
8013         * python/py-value.c (valpy_string): Update.
8014         * language.h (struct language_defn) <la_get_string>: Change
8015         type of "buffer".
8016         (default_get_string, c_get_string): Update.
8017         * language.c (default_get_string): Change type of "buffer".
8018         * guile/scm-value.c (gdbscm_value_to_string): Update.
8019         * c-lang.c (c_get_string): Change type of "buffer".
8020
8021 2018-06-18  Tom Tromey  <tom@tromey.com>
8022
8023         * ser-mingw.c (struct pipe_state_destroyer): New.
8024         (pipe_state_up): New typedef.
8025         (cleanup_pipe_state): Remove.
8026         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
8027
8028 2018-06-18  Tom Tromey  <tom@tromey.com>
8029
8030         * rust-lang.h (rust_yyerror): Don't declare.
8031         * rust-lang.c (rust_language_defn): Update.
8032         * rust-exp.y (yyerror): Now static.
8033         * parse.c (parse_exp_in_context_1): Update.
8034         * p-lang.h (p_yyerror): Don't declare.
8035         * p-lang.c (p_language_defn): Update.
8036         * p-exp.y (yyerror): Now static.
8037         * opencl-lang.c (opencl_language_defn): Update.
8038         * objc-lang.c (objc_language_defn): Update.
8039         * m2-lang.h (m2_yyerror): Don't declare.
8040         * m2-lang.c (m2_language_defn): Update.
8041         * m2-exp.y (yyerror): Now static.
8042         * language.h (struct language_defn) <la_error>: Remove.
8043         * language.c (unk_lang_error): Remove.
8044         (unknown_language_defn, auto_language_defn): Remove.
8045         * go-lang.h (go_yyerror): Don't declare.
8046         * go-lang.c (go_language_defn): Update.
8047         * go-exp.y (yyerror): Now static.
8048         * f-lang.h (f_yyerror): Don't declare.
8049         * f-lang.c (f_language_defn): Update.
8050         * f-exp.y (yyerror): Now static.
8051         * d-lang.h (d_yyerror): Don't declare.
8052         * d-lang.c (d_language_defn): Update.
8053         * d-exp.y (yyerror): Now static.
8054         * c-lang.h (c_yyerror): Don't declare.
8055         * c-lang.c (c_language_defn, cplus_language_defn)
8056         (asm_language_defn, minimal_language_defn): Update.
8057         * c-exp.y (yyerror): Now static.
8058         * ada-lang.h (ada_yyerror): Don't declare.
8059         * ada-lang.c (ada_language_defn): Update.
8060         * ada-exp.y (yyerror): Now static.
8061
8062 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8063
8064         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8065         (store_sveregs_to_thread): Likewise.
8066         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8067         (aarch64_linux_store_inferior_registers): Likewise.
8068         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8069         function.
8070         (aarch64_sve_regs_copy_to_regcache): Likewise.
8071         (aarch64_sve_regs_copy_from_regcache): Likewise.
8072         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8073         declaration.
8074         (aarch64_sve_regs_copy_to_regcache): Likewise.
8075         (aarch64_sve_regs_copy_from_regcache): Likewise.
8076         (sve_context): Structure from Linux headers.
8077         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8078         (SVE_SIG_ZREG_SIZE): Likewise.
8079         (SVE_SIG_PREG_SIZE): Likewise.
8080         (SVE_SIG_FFR_SIZE): Likewise.
8081         (SVE_SIG_REGS_OFFSET): Likewise.
8082         (SVE_SIG_ZREGS_OFFSET): Likewise.
8083         (SVE_SIG_ZREG_OFFSET): Likewise.
8084         (SVE_SIG_ZREGS_SIZE): Likewise.
8085         (SVE_SIG_PREGS_OFFSET): Likewise.
8086         (SVE_SIG_PREG_OFFSET): Likewise.
8087         (SVE_SIG_PREGS_SIZE): Likewise.
8088         (SVE_SIG_FFR_OFFSET): Likewise.
8089         (SVE_SIG_REGS_SIZE): Likewise.
8090         (SVE_SIG_CONTEXT_SIZE): Likewise.
8091         (SVE_PT_REGS_MASK): Likewise.
8092         (SVE_PT_REGS_FPSIMD): Likewise.
8093         (SVE_PT_REGS_SVE): Likewise.
8094         (SVE_PT_VL_INHERIT): Likewise.
8095         (SVE_PT_VL_ONEXEC): Likewise.
8096         (SVE_PT_REGS_OFFSET): Likewise.
8097         (SVE_PT_FPSIMD_OFFSET): Likewise.
8098         (SVE_PT_FPSIMD_SIZE): Likewise.
8099         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8100         (SVE_PT_SVE_PREG_SIZE): Likewise.
8101         (SVE_PT_SVE_FFR_SIZE): Likewise.
8102         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8103         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8104         (__SVE_SIG_TO_PT): Likewise.
8105         (SVE_PT_SVE_OFFSET): Likewise.
8106         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8107         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8108         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8109         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8110         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8111         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8112         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8113         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8114         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8115         (SVE_PT_SVE_SIZE): Likewise.
8116         (SVE_PT_SIZE): Likewise.
8117         (HAS_SVE_STATE): New define.
8118
8119 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8120
8121         * nat/aarch64-sve-linux-sigcontext.h: New file.
8122         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8123         new files.
8124         (SVE_VQ_MIN): Likewise.
8125         (SVE_VQ_MAX): Likewise.
8126         (SVE_VL_MIN): Likewise.
8127         (SVE_VL_MAX): Likewise.
8128         (SVE_NUM_ZREGS): Likewise.
8129         (SVE_NUM_PREGS): Likewise.
8130         (sve_vl_valid): Likewise.
8131         (struct user_sve_header): Likewise.
8132
8133 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8134             Richard Bunt <Richard.Bunt@arm.com>
8135
8136         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8137         was requested by GDB.
8138
8139 2018-06-15  Tom de Vries  <tdevries@suse.de>
8140
8141         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8142
8143 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8144
8145         * gnulib/update-gnulib.sh: Print expected versions of
8146         autoconf/aclocal.
8147
8148 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8149
8150         * arch-utils.c (default_type_align): Use type_length_units.
8151         * gdbtypes.c (type_align): Use type_length_units.
8152
8153 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8154
8155         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8156         of 'define' command.
8157
8158 2018-06-14  Tom de Vries  <tdevries@suse.de>
8159
8160         PR cli/22573
8161         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8162         get_no_prettyformat_print_options.
8163
8164 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8165
8166         * sparc-nat.h: Include target.h.
8167         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8168         <fetch_registers>: Remove this argument in function call.
8169         <store_registers>: Remove this argument in function call, remove
8170         extra semicolon.
8171         <low_forget_process>: Call sparc64_forget_process instead of
8172         sparc_forget_process.
8173
8174 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8175
8176         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8177         (procfs_target::make_corefile_notes): Adjust to new
8178         target_read_alloc return type.
8179
8180 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8181             Stephen Roberts  <stephen.roberts@arm.com>
8182
8183         PR gdb/22882
8184         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8185         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8186         Move should_notify_stop local into more inner scope.
8187
8188 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8189             Stephen Roberts  <stephen.roberts@arm.com>
8190
8191         PR gdb/22882
8192         * infrun.c (resume_1): Add call to mark_async_event_handler.
8193
8194 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8195
8196         * infrun.c (do_target_wait): Change old version of $pc printed.
8197
8198 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8199
8200         * dwarf2read.c (read_index_from_section): Rename to...
8201         (read_gdb_index_from_section): ... this, update all callers.
8202         (dwarf2_read_index): Rename to...
8203         (dwarf2_read_gdb_index): ... this, update all callers.
8204
8205 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8206
8207         * hppa-linux-nat.c
8208         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8209         hppa_linux_nat_target::fetch_registers.
8210
8211 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8212
8213         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8214         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8215         (AARCH64_DWARF_SVE_FFR): Likewise.
8216         (AARCH64_DWARF_SVE_P0): Likewise.
8217         (AARCH64_DWARF_SVE_Z0): Likewise.
8218
8219 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8220
8221         * common/common-regcache.h (raw_compare): New function.
8222         * regcache.c (regcache::raw_compare): Likewise.
8223         * regcache.h (regcache::raw_compare): New declaration.
8224
8225 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8226
8227         * common/common-regcache.h (reg_buffer_common): New structure.
8228         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8229         (reg_buffer::raw_supply): Likewise.
8230         (reg_buffer::raw_supply_integer): Likewise.
8231         (reg_buffer::raw_supply_zeroed): Likewise.
8232         (reg_buffer::raw_collect): Likewise.
8233         (reg_buffer::raw_collect_integer): Likewise.
8234         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8235         (reg_buffer::raw_supply): Likewise.
8236         (reg_buffer::raw_supply_integer): Likewise.
8237         (reg_buffer::raw_supply_zeroed): Likewise.
8238         (reg_buffer::raw_collect): Likewise.
8239         (reg_buffer::raw_collect_integer): Likewise.
8240
8241 2018-06-10  Tom Tromey  <tom@tromey.com>
8242
8243         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8244         (class remote_state) <stop_reply_queue>: Now std::vector.
8245         (remote_state::~remote_state)
8246         (remote_target::stop_reply_queue_length): Update.
8247         (struct queue_iter_param, remove_child_of_pending_fork)
8248         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8249         (check_pending_event_prevents_wildcard_vcont_callback)
8250         (remove_stop_reply_for_inferior)
8251         (remove_stop_reply_of_remote_state)
8252         (remote_notif_remove_once_on_match)
8253         (stop_reply_match_ptid_and_ws)
8254         (remote_kill_child_of_pending_fork): Remove.
8255         (remote_target::remove_new_fork_children)
8256         (remote_target::check_pending_events_prevent_wildcard_vcont)
8257         (remote_target::discard_pending_stop_replies)
8258         (remote_target::discard_pending_stop_replies_in_queue)
8259         (remote_target::remote_notif_remove_queued_reply)
8260         (remote_target::queued_stop_reply)
8261         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8262         (remote_target::wait, remote_target::kill_new_fork_children)
8263         (remote_target::async): Update.
8264
8265 2018-06-10  Tom Tromey  <tom@tromey.com>
8266
8267         * record-full.c (record_full_arch_list_cleanups): Remove.
8268         (record_full_message): Use try/catch.
8269         (record_full_wait_cleanups): Remove.
8270         (record_full_wait_1): Use try/catch.
8271         (record_full_restore): Likewise.
8272
8273 2018-06-10  Tom Tromey  <tom@tromey.com>
8274
8275         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8276         declare VEC.  Add constructor.
8277         <in_target_beneath>: Now bool.
8278         (record_full_breakpoints): Now a std::vector, static.
8279         (record_full_sync_record_breakpoints)
8280         (record_full_init_record_breakpoints)
8281         (record_full_target::insert_breakpoint)
8282         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8283
8284 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8285
8286         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8287         * serial.c (serial_interface_lookup): Remove struct keyword.
8288
8289 2018-06-10  Tom Tromey  <tom@tromey.com>
8290
8291         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8292         method.
8293         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8294         a method.
8295         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8296         method.
8297         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8298         "beneath" as a method.
8299         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8300         Use "beneath" as a method.
8301
8302 2018-06-10  Tom Tromey  <tom@tromey.com>
8303
8304         * tracefile.c (struct trace_file_writer_deleter): New.
8305         <operator()>: Rename from trace_file_writer_xfree.
8306         (trace_file_writer_up): New typedef.
8307         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8308
8309 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8310
8311         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8312         <m_registers, m_register_status>: Change type to
8313         std::unique_ptr.
8314         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8315         XCNEWVEC.
8316
8317 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8318
8319         * common/common-regcache.h (enum register_status): Add
8320         underlying type "signed char".
8321         * regcache.h (reg_buffer) <m_register_status>: Change type to
8322         register_status *.
8323         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8324         register_status instead of signed char.
8325         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8326         (reg_buffer::get_register_status): Remove cast.
8327         (readable_regcache::raw_read): Remove cast.
8328         (readable_regcache::cooked_read): Remove cast.
8329
8330 2018-06-09  Tom Tromey  <tom@tromey.com>
8331
8332         * source.c (reverse_search_command, forward_search_command): Use
8333         scoped_fd.
8334
8335 2018-06-09  Tom Tromey  <tom@tromey.com>
8336
8337         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8338         (serial_ops_list): Now static, std::vector.
8339         (serial_interface_lookup, serial_add_interface): Update.
8340
8341 2018-06-09  Tom Tromey  <tom@tromey.com>
8342
8343         * dwarf2read.c (process_cu_includes): Update.
8344         (process_full_comp_unit): Update.
8345         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8346         std::vector.
8347
8348 2018-06-08  Paul Koning  <paul_koning@dell.com>
8349
8350         PR gdb/23252
8351
8352         * python/python.c (do_start_initialization):
8353         Avoid call to internal Python API.
8354         (init__gdb_module): New function.
8355
8356 2018-06-08  Gary Benson <gbenson@redhat.com>
8357
8358         * linux-thread-db.c (valprint.h): New include.
8359         (struct check_thread_db_info): New structure.
8360         (check_thread_db_on_load, tdb_testinfo): New static globals.
8361         (check_thread_db, check_thread_db_callback): New functions.
8362         (try_thread_db_load_1): Run integrity checks if requested.
8363         (maintenance_check_libthread_db): New function.
8364         (_initialize_thread_db): Register "maint check libthread-db"
8365         and "maint set/show check-libthread-db".
8366         * NEWS: Mention the above new commands.
8367
8368 2018-06-08  Tom Tromey  <tom@tromey.com>
8369
8370         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8371         now a method.
8372
8373 2018-06-08  Tom Tromey  <tom@tromey.com>
8374
8375         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8376
8377 2018-06-08  Tom Tromey  <tom@tromey.com>
8378
8379         * common/btrace-common.h (struct btrace_data): Add constructor,
8380         destructor, move assignment operator.
8381         <empty, clear, fini>: New methods.
8382         <format>: Initialize.
8383         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8384         (btrace_data_empty): Don't declare.
8385         * common/btrace-common.c (btrace_data_init): Remove.
8386         (btrace_data::fini): Rename from btrace_data_fini.
8387         (btrace_data::empty): Rename from btrace_data_empty.
8388         (btrace_data::clear): Rename from btrace_data_clear.  Return
8389         bool.
8390         * btrace.h (make_cleanup_btrace_data): Don't declare.
8391         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8392         (parse_xml_btrace): Update.
8393         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8394         (maint_btrace_clear_packet_history_cmd): Update.
8395
8396 2018-06-07  Pedro Alves  <palves@redhat.com>
8397
8398         * target.h (target_ops) <beneath>: Now a method.  All references
8399         updated.
8400         (class target_stack): New.
8401         * target.c (g_target_stack): New.
8402         (g_current_top_target): Delete.
8403         (current_top_target): Get the top target out of g_target_stack.
8404         (target_stack::push, target_stack::unpush): New.
8405         (push_target, unpush_target): Reimplement.
8406         (target_is_pushed): Reimplement in terms of g_target_stack.
8407         (target_ops::beneath, target_stack::find_beneath): New.
8408
8409 2018-06-07  Pedro Alves  <palves@redhat.com>
8410
8411         * target.h (find_target_beneath): Delete declaration.
8412         * target.c (find_target_beneath): Delete definition.
8413         * aix-thread.c: All callers of find_target_beneath adjusted to
8414         call target_ops::beneath instead.
8415         * bsd-uthread.c: Likewise.
8416         * linux-thread-db.c: Likewise.
8417         * ravenscar-thread.c: Likewise.
8418         * sol-thread.c: Likewise.
8419         * spu-multiarch.c: Likewise.
8420
8421 2018-06-07  Pedro Alves  <palves@redhat.com>
8422
8423         * target.h (target_ops) <beneath>: Now a method.  All references
8424         updated.
8425         (target_ops) <m_beneath>: New.
8426         * target.c (target_ops::beneath): New.
8427         * corelow.c: Adjust all references to target_ops::beneath.
8428         * linux-thread-db.c: Likewise.
8429         * make-target-delegates: Likewise.
8430         * record-btrace.c: Likewise.
8431         * record-full.c: Likewise.
8432         * remote.c: Likewise.
8433         * target.c: Likewise.
8434         * target-delegates.c: Regenerate.
8435
8436 2018-06-07  Pedro Alves  <palves@redhat.com>
8437
8438         * target.h (target_stack): Delete.
8439         (current_top_target): Declare function.
8440         * target.c (target_stack): Delete.
8441         (g_current_top_target): New.
8442         (current_top_target): New function.
8443         * auxv.c: Use current_top_target instead of target_stack
8444         throughout.
8445         * avr-tdep.c: Likewise.
8446         * breakpoint.c: Likewise.
8447         * corefile.c: Likewise.
8448         * elfread.c: Likewise.
8449         * eval.c: Likewise.
8450         * exceptions.c: Likewise.
8451         * frame.c: Likewise.
8452         * gdbarch-selftests.c: Likewise.
8453         * gnu-v3-abi.c: Likewise.
8454         * ia64-tdep.c: Likewise.
8455         * ia64-vms-tdep.c: Likewise.
8456         * infcall.c: Likewise.
8457         * infcmd.c: Likewise.
8458         * infrun.c: Likewise.
8459         * linespec.c: Likewise.
8460         * linux-tdep.c: Likewise.
8461         * minsyms.c: Likewise.
8462         * ppc-linux-nat.c: Likewise.
8463         * ppc-linux-tdep.c: Likewise.
8464         * procfs.c: Likewise.
8465         * regcache.c: Likewise.
8466         * remote.c: Likewise.
8467         * rs6000-tdep.c: Likewise.
8468         * s390-linux-nat.c: Likewise.
8469         * s390-tdep.c: Likewise.
8470         * solib-aix.c: Likewise.
8471         * solib-darwin.c: Likewise.
8472         * solib-dsbt.c: Likewise.
8473         * solib-spu.c: Likewise.
8474         * solib-svr4.c: Likewise.
8475         * solib-target.c: Likewise.
8476         * sparc-tdep.c: Likewise.
8477         * sparc64-tdep.c: Likewise.
8478         * spu-tdep.c: Likewise.
8479         * symfile.c: Likewise.
8480         * symtab.c: Likewise.
8481         * target-descriptions.c: Likewise.
8482         * target-memory.c: Likewise.
8483         * target.c: Likewise.
8484         * target.h: Likewise.
8485         * tracefile-tfile.c: Likewise.
8486         * tracepoint.c: Likewise.
8487         * valops.c: Likewise.
8488         * valprint.c: Likewise.
8489         * value.c: Likewise.
8490         * windows-tdep.c: Likewise.
8491         * mi/mi-main.c: Likewise.
8492
8493 2018-06-07  Tom Tromey  <tom@tromey.com>
8494
8495         * valprint.h (build_address_symbolic): Declare.
8496         * printcmd.c (print_address_symbolic): Update.
8497         (build_address_symbolic): Change "name" and "filename" to
8498         std::string.
8499         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8500         Update.
8501         * defs.h (build_address_symbolic): Remove declaration.
8502
8503 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8504
8505         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8506         (aarch64_vnv_type): Add function.
8507         (aarch64_pseudo_register_name): Add V regs for SVE.
8508         (aarch64_pseudo_register_type): Likewise.
8509         (aarch64_pseudo_register_reggroup_p): Likewise.
8510         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8511         (aarch64_pseudo_read_value): Add V regs for SVE.
8512         (aarch64_pseudo_write_2): Use V0 offset for SVE
8513         (aarch64_pseudo_write): Add V regs for SVE.
8514         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8515
8516 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8517
8518         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8519         (sve_vl_from_vq): Likewise.
8520
8521 2018-06-05  Tom Tromey  <tom@tromey.com>
8522
8523         * cli/cli-cmds.c (show_version): Update.
8524         * top.c (print_gdb_version): Add "interactive" parameter.
8525         Update.
8526         * main.c (captured_main_1): Update.
8527         * top.h (print_gdb_version): Add "interactive" parameter and a
8528         comment.
8529
8530 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8531
8532         * common/enum-flags.h: Add trailing semicolon to example in
8533         comment.
8534
8535 2018-06-05  Tom Tromey  <tom@tromey.com>
8536
8537         PR cli/12326:
8538         * NEWS: Add entry about pager.
8539         * utils.c (pagination_disabled_for_command): New global.
8540         (prompt_for_continue): Allow "c" response to prompt.
8541         (reinitialize_more_filter): Clear
8542         pagination_disabled_for_command.
8543         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8544
8545 2018-06-04  Tom Tromey  <tom@tromey.com>
8546
8547         * ada-lang.h (ada_lookup_symbol_list): Update.
8548         * ada-lang.c (resolve_subexp): Update.
8549         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8550         parameter.
8551         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8552         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8553         results parameter to std::vector.
8554         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8555         Update.
8556         * ada-exp.y (block_lookup): Update.
8557         (select_possible_type_sym): Change type of syms.  Remove nsyms
8558         parameter.
8559         (write_var_or_type, write_name_assoc): Update.
8560
8561 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8562
8563         * windows-nat.c (windows_nat_target::xfer_partial): Return
8564         TARGET_XFER_E_IO if we need to delegate to the target beneath
8565         but BENEATH is NULL.
8566
8567 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8568
8569         * Makefile.in (config.status): Add configure.nat as a
8570         dependency.
8571
8572 2018-06-04  Tom Tromey  <tom@tromey.com>
8573
8574         * cp-name-parser.y (cpname_state): Add method declarations.
8575         (HANDLE_QUAL): Update.
8576         (cpname_state::d_grab, cpname_state::fill_comp)
8577         (cpname_state::make_operator, cpname_state::make_dtor)
8578         (cpname_state::make_builtin_type, cpname_state::make_name)
8579         (cpname_state::d_qualify, cpname_state::d_int_type)
8580         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8581         (%union): Move earlier.
8582
8583 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8584
8585         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8586
8587 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8588
8589         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8590         (aarch64_pseudo_write_1): Likewise.
8591         (aarch64_pseudo_read_value): Use helper.
8592         (aarch64_pseudo_write): Likewise.
8593
8594 2018-06-04  Pedro Alves  <palves@redhat.com>
8595
8596         * darwin-nat.c (darwin_ops): Delete.
8597         (darwin_attach_pid): Use get_native_target.
8598
8599 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8600
8601         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8602         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8603
8604 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8605
8606         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8607         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8608         (aarch64_gdbarch_init): Check for SVE.
8609         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8610
8611 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8612
8613         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8614         * aarch64-tdep.h (aarch64_read_description): Likewise.
8615         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8616         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8617         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8618         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8619         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8620
8621 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8622
8623         * value.c (value_fetch_lazy_bitfield): New.
8624         (value_fetch_lazy_memory): New.
8625         (value_fetch_lazy_register): New.
8626         (value_fetch_lazy): Factor out to smaller functions.
8627
8628 2018-06-01  Tom Tromey  <tom@tromey.com>
8629
8630         * cp-name-parser.y (backslashable, represented): Now const.
8631
8632 2018-06-01  Tom Tromey  <tom@tromey.com>
8633
8634         * cp-name-parser.y: Include parser-defs.h.
8635         (parser_fprintf): Remove declaration.
8636
8637 2018-06-01  Tom Tromey  <tom@tromey.com>
8638
8639         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8640         %parse-param.
8641         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8642         (global_result): Remove globals.
8643         (struct cpname_state): New.
8644         (yyparse): Don't declare.
8645         (yylex, yyerror): Move declarations after %union.
8646         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8647         (make_name): Add state parameter.
8648         Update all callers.
8649         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8650         parameter.
8651         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8652         Update.
8653         (yylex): Add lvalp, state parameters.
8654         (yyerror): Add state parameter.
8655         (cp_demangled_name_to_comp): Update.
8656
8657 2018-06-01  Tom Tromey  <tom@tromey.com>
8658
8659         * cp-name-parser.y (parser_fprintf): Declare.
8660         (GDB_YY_REMAP_PREFIX): Define.
8661         Include yy-remap.h.  Don't redefine yy* identifiers.
8662
8663 2018-06-01  Tom Tromey  <tom@tromey.com>
8664
8665         * python/py-type.c (typy_legacy_template_argument): Update.
8666         * cp-support.h (cp_demangled_name_to_comp): Update.
8667         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8668         parameter to be a "std::string *".
8669         (main): Update.
8670
8671 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8672
8673         * ada-lex.l: Include "diagnostics.h" instead of
8674         "common/diagnostics.h".
8675         * unittests/environ-selftests.c: Likewise.
8676         * common/diagnostics.h: Moved to ../include.
8677
8678 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8679
8680         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8681         to language_mode_manual while calling breakpoint_re_set_one.
8682
8683 2018-06-01  Tom Tromey  <tom@tromey.com>
8684
8685         * valops.c (value_cast_structs, destructor_name_p): Update.
8686         * symtab.c (gdb_mangle_name): Update.
8687         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8688         Update.
8689         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8690         (pascal_object_print_value_fields, pascal_object_print_value):
8691         Update.
8692         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8693         * linespec.c (find_methods): Update.
8694         * gdbtypes.h (type_name_no_tag): Remove.
8695         (type_name_or_error): Rename from type_name_no_tag_or_error.
8696         * gdbtypes.c (type_name_no_tag): Remove.
8697         (type_name_or_error): Rename from type_name_no_tag_or_error.
8698         (lookup_struct_elt_type, check_typedef): Update.
8699         * expprint.c (print_subexp_standard): Update.
8700         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8701         * d-namespace.c (d_lookup_nested_symbol): Update.
8702         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8703         (cp_print_class_member): Update.
8704         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8705         * completer.c (add_struct_fields): Update.
8706         * c-typeprint.c (cp_type_print_derivation_info)
8707         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8708         Update.
8709         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8710         (ada_prefer_type, ada_is_exception_sym): Update.
8711
8712 2018-06-01  Tom Tromey  <tom@tromey.com>
8713
8714         * valops.c (enum_constant_from_type, value_namespace_elt)
8715         (value_maybe_namespace_elt): Update.
8716         * valarith.c (find_size_for_pointer_math): Update.
8717         * target-descriptions.c (make_gdb_type): Update.
8718         * symmisc.c (print_symbol): Update.
8719         * stabsread.c (define_symbol, read_type)
8720         (complain_about_struct_wipeout, add_undefined_type)
8721         (cleanup_undefined_types_1): Update.
8722         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8723         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8724         (rust_internal_print_type, rust_composite_type)
8725         (rust_evaluate_funcall, rust_evaluate_subexp)
8726         (rust_inclusive_range_type_p): Update.
8727         * python/py-type.c (typy_get_tag): Update.
8728         * p-typeprint.c (pascal_type_print_base): Update.
8729         * mdebugread.c (parse_symbol, parse_type): Update.
8730         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8731         Update.
8732         * guile/scm-type.c (gdbscm_type_tag): Update.
8733         * go-lang.c (sixg_string_p): Update.
8734         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8735         Update.
8736         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8737         (TYPE_TAG_NAME): Remove.
8738         * gdbtypes.c (type_name_no_tag): Simplify.
8739         (check_typedef, check_types_equal, recursive_dump_type)
8740         (copy_type_recursive, arch_composite_type): Update.
8741         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8742         in summary mode when needed.
8743         * eval.c (evaluate_funcall): Update.
8744         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8745         (process_structure_scope, read_enumeration_type)
8746         (read_namespace_type, read_module_type, determine_prefix): Update.
8747         * cp-support.c (inspect_type): Update.
8748         * coffread.c (process_coff_symbol, decode_base_type): Update.
8749         * c-varobj.c (c_is_path_expr_parent): Update.
8750         * c-typeprint.c (c_type_print_base_struct_union): Update.
8751         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8752         summary when using C language.
8753         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8754         (gen_maybe_namespace_elt): Update.
8755         * ada-lang.c (ada_type_name): Simplify.
8756         (empty_record, ada_template_to_fixed_record_type_1)
8757         (template_to_static_fixed_type)
8758         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8759
8760 2018-06-01  Tom Tromey  <tom@tromey.com>
8761
8762         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8763         c_print_type.
8764         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8765         (c_print_type): Update.
8766         (c_print_type): New overload.
8767         (c_type_print_varspec_prefix, c_type_print_args)
8768         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8769         (c_type_print_base_struct_union, c_type_print_base_1)
8770         (cp_type_print_method_args): Add "language" parameter.
8771         (c_type_print_base): Update.
8772         * c-lang.h (c_print_type): Add new overload.
8773
8774 2018-06-01  Tom Tromey  <tom@tromey.com>
8775
8776         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8777         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8778
8779 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8780
8781         * aarch64-tdep.c (aarch64_sve_register_names): New const
8782         var.
8783         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8784         (AARCH64_SVE_Z_REGS_NUM): New define.
8785         (AARCH64_SVE_P_REGS_NUM): Likewise.
8786         (AARCH64_SVE_NUM_REGS): Likewise.
8787
8788 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8789
8790         * nat/linux-ptrace.h [__alpha__]
8791         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8792         definitions.
8793
8794 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8795
8796         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8797         the endianness selected.
8798         * NEWS: Document `set endian auto' mode operation update.
8799
8800 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8801
8802         * Makefile.in: Add new header.
8803         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8804         (sve_vl_from_vg): Likewise.
8805         (sve_vq_from_vl): Likewise.
8806         (sve_vl_from_vq): Likewise.
8807         (sve_vq_from_vg): Likewise.
8808         (sve_vg_from_vq): Likewise.
8809         * configure.nat: Add new c file.
8810         * nat/aarch64-sve-linux-ptrace.c: New file.
8811         * nat/aarch64-sve-linux-ptrace.h: New file.
8812
8813 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8814
8815         * aarch64-linux-nat.c (aarch64_linux_read_description):
8816         Add parmeter zero.
8817         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8818         Likewise.
8819         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8820         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8821         (aarch64_gdbarch_init): Add parmeter zero.
8822         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8823         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8824         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8825         parmeter.
8826         * doc/gdb.texinfo: Describe SVE feature
8827         * features/aarch64-sve.c: New file.
8828
8829 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8830
8831         PR gdb/23210
8832         * gdbarch.sh (significant_addr_bit): Default to zero when
8833         not set by target architecture.
8834         * gdbarch.c: Re-generated.
8835         * utils.c (address_significant): Update.
8836
8837 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8838
8839         * stack.c (func_command): Remove trailing newline in call to error.
8840
8841 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8842
8843         * regcache.h (regcache_raw_collect): Remove, update callers to
8844         use regcache::raw_collect.
8845         * regcache.c (regcache_raw_collect): Remove.
8846
8847 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8848
8849         * regcache.h (regcache_raw_supply): Remove, update callers to
8850         use detached_regcache::raw_supply.
8851         * regcache.c (regcache_raw_supply): Remove.
8852
8853 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8854
8855         * regcache.h (regcache_cooked_write_part): Remove, update
8856         callers to use regcache::cooked_write_part.
8857         * regcache.c (regcache_cooked_write_part): Remove.
8858
8859 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8860
8861         * regcache.h (regcache_cooked_read_part): Remove, update callers
8862         to use readable_regcache::cooked_read_part.
8863         * regcache.c (regcache_cooked_read_part): Remove.
8864
8865 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8866
8867         * regcache.h (regcache_cooked_read_value): Remove, update
8868         callers to use readable_regcache::cooked_read_value.
8869         * regcache.c (regcache_cooked_read_value): Remove.
8870
8871 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8872
8873         * regcache.h (regcache_cooked_write): Remove, update callers to
8874         use regcache::cooked_write.
8875         * regcache.c (regcache_cooked_write): Remove.
8876
8877 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8878
8879         * regcache.h (regcache_invalidate): Remove, update callers to
8880         use detached_regcache::invalidate instead.
8881         * regcache.c (regcache_invalidate): Remove.
8882
8883 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8884
8885         * regcache.h (regcache_raw_write_part): Remove, update callers
8886         to use regcache::raw_write_part instead.
8887         * regcache.c (regcache_raw_write_part): Remove.
8888
8889 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8890
8891         * regcache.h (regcache_raw_read_part): Remove, update callers to
8892         use readable_regcache::raw_read_part instead.
8893         * regcache.c (regcache_raw_read_part): Remove.
8894
8895 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8896
8897         * regcache.h (regcache_cooked_read): Remove, update callers to
8898         use readable_regcache::cooked_read instead.
8899         * regcache.c (regcache_cooked_read): Remove.
8900
8901 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8902
8903         * regcache.h (regcache_raw_write): Remove, update callers to use
8904         regcache::raw_write instead.
8905         * regcache.c (regcache_raw_write): Remove.
8906
8907 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8908
8909         * regcache.h (regcache_raw_read): Remove, update callers to use
8910         readable_regcache::raw_read instead.
8911         * regcache.c (regcache_raw_read): Remove.
8912
8913 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8914
8915         * regcache.h (regcache_raw_update): Remove, update callers to
8916         use readable_regcache::raw_update instead.
8917         * regcache.c (regcache_raw_update): Remove.
8918
8919 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8920
8921         * regcache.h (regcache_register_status): Remove, update callers
8922         to use reg_buffer::get_register_status directly instead.
8923         * regcache.c (regcache_register_status): Remove.
8924
8925 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8926
8927         * regcache.h (regcache_get_ptid): Remove, update all callers to
8928         call regcache::ptid instead.
8929         * regcache.c (regcache_get_ptid): Remove.
8930
8931 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8932
8933         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8934
8935 2018-05-30  Pedro Alves  <palves@redhat.com>
8936
8937         * common/common-exceptions.h (exception_rethrow): Use
8938         ATTRIBUTE_NORETURN.
8939
8940 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8941
8942         * breakpoint.c (print_solib_event, check_status_catch_solib):
8943         Remove struct keyword in range-based for loops.
8944         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8945         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8946         Likewise.
8947         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8948         Likewise.
8949         * symfile.c (addr_info_make_relative): Likewise.
8950         * thread.c (value_in_thread_stack_temporaries): Likewise.
8951
8952 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8953
8954         PR gdb/16841
8955         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8956         aggregate type to get its real type before accessing it.
8957
8958 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8959
8960         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8961         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8962         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8963         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8964         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8965         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8966         * printcmd.c (info_address_command): Likewise.
8967
8968 2018-05-29  Tom Tromey  <tom@tromey.com>
8969
8970         * windows-nat.c (handle_exception): Update fall-through comment.
8971
8972 2018-05-29  Tom Tromey  <tom@tromey.com>
8973
8974         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8975         (struct program_space) <added_solibs>: Now a std::vector.
8976         * breakpoint.c (print_solib_event): Update.
8977         (check_status_catch_solib): Update.
8978         * progspace.c (clear_program_space_solib_cache): Update.
8979         * solib.c (update_solib_list): Update.
8980
8981 2018-05-29  Tom Tromey  <tom@tromey.com>
8982
8983         * python/py-type.c (typy_richcompare): Update.
8984         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8985         * gdbtypes.h (types_deeply_equal): Return bool.
8986         (types_equal): Likewise.
8987         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8988         declare VEC.
8989         (check_types_equal): Change worklist to std::vector.  Return
8990         bool.
8991         (struct type_equality_entry): Add constructor.
8992         (compare_maybe_null_strings): Return bool.
8993         (check_types_worklist): Return bool.  Change worklist to
8994         std::vector.
8995         (types_deeply_equal): Use std::vector.
8996         (types_equal): Return bool.
8997         (compare_maybe_null_strings): Simplify.
8998
8999 2018-05-29  Tom Tromey  <tom@tromey.com>
9000
9001         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
9002
9003 2018-05-29  Tom Tromey  <tom@tromey.com>
9004
9005         * objc-lang.h: Don't include cp-support.h.
9006         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
9007         declare VEC.
9008
9009 2018-05-27  Tom Tromey  <tom@tromey.com>
9010
9011         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
9012
9013 2018-05-25  Tom Tromey  <tom@tromey.com>
9014
9015         * value.c (value::location): Initialize.
9016
9017 2018-05-25  Tom Tromey  <tom@tromey.com>
9018
9019         * dbxread.c (init_bincl_list): Remove.
9020         (bincl_list): Now a std::vector.
9021         (bincls_allocated, next_bincl): Remove.
9022         (free_bincl_list, do_free_bincl_list_cleanup)
9023         (make_cleanup_free_bincl_list): Remove.
9024         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
9025         unique_xmalloc_ptr.
9026         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
9027         (struct header_file_location): Add constructor.
9028         (add_bincl_to_list): Remove.
9029
9030 2018-05-25  Tom Tromey  <tom@tromey.com>
9031
9032         * tui/tui.c (tui_enable): Update.
9033         * mi/mi-interp.c (mi_interp::init): Update.
9034         * interps.h (class interp) <name>: New method.
9035         <m_name>: Rename from name.
9036         (~scoped_restore_interp): Update.
9037         * interps.c (interp::interp): Update.
9038         (interp_add, interp_set, interp_lookup_existing)
9039         (current_interp_named_p): Update.
9040
9041 2018-05-25  Tom Tromey  <tom@tromey.com>
9042
9043         * interps.c (interp_name): Remove.
9044         * mi/mi-interp.c (mi_interp::init): Update.
9045         * interps.h (interp_name): Remove.
9046         (~scoped_restore_interp): Update.
9047         * tui/tui.c (tui_enable): Update.
9048
9049 2018-05-25  Tom Tromey  <tom@tromey.com>
9050
9051         * utils.c (fputs_maybe_filtered): Update.
9052         * linespec.c (decode_line_full): Update.
9053         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9054         (mi_print_breakpoint_for_event, mi_solib_loaded)
9055         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9056         (mi_user_selected_context_changed): Update.
9057         * mi/mi-main.c (mi_execute_command): Update.
9058         * cli/cli-script.c (execute_control_command): Update.
9059         * python/python.c (execute_gdb_command): Update.
9060         * solib.c (info_sharedlibrary_command): Update.
9061         * interps.c (interp_ui_out): Remove.
9062         * interps.h (interp_ui_out): Remove.
9063
9064 2018-05-25  Tom Tromey  <tom@tromey.com>
9065
9066         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9067         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9068         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9069
9070 2018-05-25  Tom Tromey  <tom@tromey.com>
9071
9072         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9073         * interps.c (interp_exec): Use scoped_restore.
9074
9075 2018-05-25  Tom Tromey  <tom@tromey.com>
9076
9077         * remote.c (remote_target::remote_file_get): Use
9078         gdb::byte_vector.
9079         (remote_target::remote_file_put): Likewise.
9080
9081 2018-05-25  Tom Tromey  <tom@tromey.com>
9082
9083         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9084         a std::string.
9085         (get_pe_section_index, add_pe_exported_sym): Update.
9086         (read_pe_exported_syms): Use gdb::def_vector.
9087
9088 2018-05-25  Tom Tromey  <tom@tromey.com>
9089
9090         * frame.c (remove_prev_frame): Remove.
9091         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9092
9093 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9094
9095         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9096         Remove prototypes.
9097         * mips-linux-nat.c (supply_fpregset): Always call
9098         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9099         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9100         `mips_fill_fpregset'.
9101         * mips-linux-tdep.c (mips_supply_fpregset)
9102         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9103         (mips_fill_fpregset_wrapper): Remove functions.
9104         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9105         (mips_linux_fpregset): Remove variable.
9106         (mips_linux_iterate_over_regset_sections): Use
9107         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9108         (mips_linux_o32_sigframe_init): Remove comment.
9109
9110 2018-05-25  Pedro Alves  <palves@redhat.com>
9111
9112         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9113         (struct readahead_cache, struct packet_reg, struct
9114         remote_arch_state, class remote_state): Move higher up in the
9115         file.
9116         (remote_target::m_remote_state): Now an object instead of a pointer.
9117         (remote_target::get_remote_state): Adjust.
9118
9119 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9120
9121         * stack.c (select_and_print_frame): Delete.
9122         (struct function_bounds): Move struct within function.
9123         (func_command): Most content moved into new function
9124         find_frame_for_function, use new function, print result, add
9125         function comment.
9126         (find_frame_for_function): New function, now returns a result.
9127
9128 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9129
9130         * stack.c (iterate_over_block_arg_vars): Fix comment.
9131         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9132
9133 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9134
9135         PR gdb/23203
9136         * frame.c
9137         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9138         Define.
9139         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9140         Define.
9141         * frame.h (class scoped_restore_selected_frame): New class.
9142         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9143         of any exception, use scoped_restore_selected_frame to restore the
9144         frame instead.
9145
9146 2018-05-24  Pedro Alves  <palves@redhat.com>
9147
9148         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9149         override.
9150
9151 2018-05-23  Tom Tromey  <tom@tromey.com>
9152
9153         * complaints.c (struct complaints): Remove.
9154         (symfile_complaint_book): Remove.
9155         (series): New global.
9156         (complaint_internal): Update.
9157         (clear_complaints): Update.
9158
9159 2018-05-23  Tom Tromey  <tom@tromey.com>
9160
9161         * complaints.c (counters): New global.
9162         (struct complain): Remove.
9163         (struct complaints) <root>: Remove.
9164         (complaint_sentinel): Remove.
9165         (symfile_complaint_book): Update.
9166         (find_complaint) Remove.
9167         (complaint_internal, clear_complaints): Update.
9168
9169 2018-05-23  Tom Tromey  <tom@tromey.com>
9170
9171         * complaints.c (struct complain) <file, line>: Remove.
9172         (find_complaint): Remove file, line parameters.
9173         (complaint_internal): Update.
9174
9175 2018-05-23  Tom Tromey  <tom@tromey.com>
9176
9177         * complaints.c (vcomplaint): Remove.
9178         (complaint_internal) Merge in contents of vcomplaint.
9179
9180 2018-05-23  Tom Tromey  <tom@tromey.com>
9181
9182         * complaints.c (struct complaints) <explanation>: Remove.
9183         (symfile_explanations): Remove.
9184         (symfile_complaint_book): Update.
9185         (vcomplaint): Update.
9186         (struct explanation): Remove.
9187
9188 2018-05-23  Tom Tromey  <tom@tromey.com>
9189
9190         * complaints.c (symfile_complaints): Remove.
9191         (complaint_internal): Remove "complaints" parameter.
9192         (clear_complaints, vcomplaint): Remove "c" parameter.
9193         (get_complaints): Remove.
9194         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9195         (dwarf2_debug_line_missing_file_complaint)
9196         (dwarf2_debug_line_missing_end_sequence_complaint)
9197         (dwarf2_complex_location_expr_complaint)
9198         (dwarf2_const_value_length_mismatch_complaint)
9199         (dwarf2_section_buffer_overflow_complaint)
9200         (dwarf2_macro_malformed_definition_complaint)
9201         (dwarf2_invalid_attrib_class_complaint)
9202         (create_addrmap_from_index, dw2_symtab_iter_next)
9203         (dw2_expand_marked_cus)
9204         (dw2_debug_names_iterator::find_vec_in_debug_names)
9205         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9206         (create_debug_type_hash_table, init_cutu_and_read_dies)
9207         (partial_die_parent_scope, add_partial_enumeration)
9208         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9209         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9210         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9211         (create_cus_hash_table, create_dwp_hash_table)
9212         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9213         (dwarf2_rnglists_process, dwarf2_ranges_process)
9214         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9215         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9216         (handle_struct_member_die, process_structure_scope)
9217         (read_array_type, read_common_block, read_module_type)
9218         (read_tag_pointer_type, read_typedef, read_base_type)
9219         (read_subrange_type, load_partial_dies, partial_die_info::read)
9220         (partial_die_info::read, partial_die_info::read)
9221         (partial_die_info::read, read_checked_initial_length_and_offset)
9222         (dwarf2_string_attr, read_formatted_entries)
9223         (dwarf_decode_line_header)
9224         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9225         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9226         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9227         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9228         (get_signatured_type, get_DW_AT_signature_type)
9229         (decode_locdesc, file_file_name, consume_improper_spaces)
9230         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9231         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9232         (dwarf2_symbol_mark_computed, set_die_type)
9233         (read_attribute_value): Update.
9234         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9235         Update.
9236         * dbxread.c (unknown_symtype_complaint)
9237         (lbrac_mismatch_complaint, repeated_header_complaint)
9238         (set_namestring, function_outside_compilation_unit_complaint)
9239         (read_dbx_symtab, process_one_symbol): Update.
9240         * gdbtypes.c (stub_noname_complaint): Update.
9241         * windows-nat.c (handle_unload_dll): Update.
9242         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9243         (decode_base_type): Update.
9244         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9245         (eb_complaint, record_include_begin, record_include_end)
9246         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9247         (process_xcoff_symbol, read_symbol)
9248         (function_outside_compilation_unit_complaint)
9249         (scan_xcoff_symtab): Update.
9250         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9251         * buildsym.c (finish_block_internal, make_blockvector)
9252         (end_symtab_get_static_block, augment_type_symtab): Update.
9253         * dtrace-probe.c (dtrace_process_dof)
9254         (dtrace_static_probe_ops::get_probes): Update.
9255         * complaints.h (struct complaint): Don't declare.
9256         (symfile_complaints): Remove.
9257         (complaint_internal): Remove "complaints" parameter.
9258         (complaint): Likewise.
9259         (clear_complaints): Likewise.
9260         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9261         (reread_symbols): Update.
9262         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9263         (dwarf2_frame_cache, decode_frame_entry): Update.
9264         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9265         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9266         (info_selectors_command): Update.
9267         * macrotab.c (macro_include, check_for_redefinition)
9268         (macro_undef): Update.
9269         * objfiles.c (filter_overlapping_sections): Update.
9270         * stabsread.c (invalid_cpp_abbrev_complaint)
9271         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9272         (define_symbol, error_type, read_type, rs6000_builtin_type)
9273         (stabs_method_name_from_physname, read_member_functions)
9274         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9275         (attach_fields_to_type, complain_about_struct_wipeout)
9276         (read_range_type, read_args, common_block_start)
9277         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9278         Update.
9279         * mdebugread.c (index_complaint, unknown_ext_complaint)
9280         (basic_type_complaint, bad_tag_guess_complaint)
9281         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9282         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9283         (parse_procedure, parse_lines)
9284         (function_outside_compilation_unit_complaint)
9285         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9286         (bad_tag_guess_complaint, reg_value_complaint): Update.
9287         * cp-support.c (demangled_name_complaint): Update.
9288         * macroscope.c (sal_macro_scope): Update.
9289         * dwarf-index-write.c (class debug_names): Update.
9290
9291 2018-05-23  Tom Tromey  <tom@tromey.com>
9292
9293         * complaints.c (clear_complaints): Remove "noisy" parameter.
9294         * complaints.h (clear_complaints): Update.
9295         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9296         (reread_symbols): Update.
9297
9298 2018-05-23  Tom Tromey  <tom@tromey.com>
9299
9300         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9301         SUBSEQUENT_MESSAGE.
9302         (vcomplaint, clear_complaints): Update.
9303         (symfile_explanations): Remove some messages.
9304
9305 2018-05-23  Tom Tromey  <tom@tromey.com>
9306
9307         * complaints.c (internal_complaint): Remove.
9308         * complaints.h (internal_complaint): Remove.
9309
9310 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9311
9312         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9313
9314 2018-05-22  Pedro Alves  <palves@redhat.com>
9315
9316         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9317         (remote_fileio_badfd, remote_fileio_return_errno)
9318         (remote_fileio_return_success, remote_fileio_func_open)
9319         (remote_fileio_func_open, remote_fileio_func_close)
9320         (remote_fileio_func_read, remote_fileio_func_write)
9321         (remote_fileio_func_lseek, remote_fileio_func_rename)
9322         (remote_fileio_func_unlink, remote_fileio_func_stat)
9323         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9324         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9325         remote_target parameter.
9326         (remote_fio_func_map) <func>: Add remote_target parameter.
9327         (do_remote_fileio_request, remote_fileio_request):
9328         * remote-fileio.h (remote_fileio_request):
9329         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9330         remote_target parameter.
9331         (remote_notif_process, handle_notification): Adjust to pass down
9332         the remote.
9333         (remote_notif_state_allocate): Add remote_target parameter.  Save
9334         it.
9335         * remote-notif.h (struct remote_target): Forward declare.
9336         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9337         remote_target parameter.
9338         (struct remote_notif_state) <remote>: New field.
9339         (remote_notif_ack, remote_notif_parse): Add remote_target
9340         parameter.
9341         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9342         remote_target parameter.
9343         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9344         (threads_listing_context, rmt_thread_action, protocol_feature)
9345         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9346         (packet_result, struct threads_listing_context, remote_state):
9347         Move definitions and declarations higher up.
9348         (remote_target) <~remote_target>: Declare.
9349         (remote_download_command_source, remote_file_put, remote_file_get)
9350         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9351         (remote_hostio_pread_vFile, remote_hostio_send_command)
9352         (remote_hostio_set_filesystem, remote_hostio_open)
9353         (remote_hostio_close, remote_hostio_unlink, remote_state)
9354         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9355         (get_memory_write_packet_size, get_memory_read_packet_size)
9356         (append_pending_thread_resumptions, remote_detach_1)
9357         (append_resumption, remote_resume_with_vcont)
9358         (add_current_inferior_and_thread, wait_ns, wait_as)
9359         (process_stop_reply, remote_notice_new_inferior)
9360         (process_initial_stop_replies, remote_add_thread)
9361         (btrace_sync_conf, remote_btrace_maybe_reopen)
9362         (remove_new_fork_children, kill_new_fork_children)
9363         (discard_pending_stop_replies, stop_reply_queue_length)
9364         (check_pending_events_prevent_wildcard_vcont)
9365         (discard_pending_stop_replies_in_queue, stop_reply)
9366         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9367         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9368         (remote_interrupt_as, remote_interrupt_ns)
9369         (remote_get_noisy_reply, remote_query_attached)
9370         (remote_add_inferior, remote_current_thread, get_current_thread)
9371         (set_thread, set_general_thread, set_continue_thread)
9372         (set_general_process, write_ptid)
9373         (remote_unpack_thread_info_response, remote_get_threadinfo)
9374         (parse_threadlist_response, remote_get_threadlist)
9375         (remote_threadlist_iterator, remote_get_threads_with_ql)
9376         (remote_get_threads_with_qxfer)
9377         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9378         (get_offsets, remote_check_symbols, remote_supported_packet)
9379         (remote_query_supported, remote_packet_size)
9380         (remote_serial_quit_handler, remote_detach_pid)
9381         (remote_vcont_probe, remote_resume_with_hc)
9382         (send_interrupt_sequence, interrupt_query)
9383         (remote_notif_get_pending_events, fetch_register_using_p)
9384         (send_g_packet, process_g_packet, fetch_registers_using_g)
9385         (store_register_using_P, store_registers_using_G)
9386         (set_remote_traceframe, check_binary_download)
9387         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9388         (remote_xfer_live_readonly_partial, remote_read_bytes)
9389         (remote_send_printf, remote_flash_write, readchar)
9390         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9391         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9392         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9393         (extended_remote_disable_randomization, extended_remote_run)
9394         (send_environment_packet, extended_remote_environment_support)
9395         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9396         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9397         (packet_command): Now methods of ...
9398         (remote_target): ... this class.
9399         (m_remote_state) <remote_target>: New field.
9400         (struct remote_state) <stop_reply_queue,
9401         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9402         fields.
9403         (remote_state::remote_state): Allocate stop_reply_queue.
9404         (remote_state): Delete global.
9405         (get_remote_state_raw): Delete.
9406         (remote_target::get_remote_state): Allocate m_remote_state on
9407         demand.
9408         (get_current_remote_target): New.
9409         (remote_ops, extended_remote_ops): Delete.
9410         (wait_forever_enabled_p, remote_async_inferior_event_token):
9411         Delete, moved to struct remote_state.
9412         (remote_target::close): Delete self.  Destruction bits split to
9413         ...
9414         (remote_target::~remote_target): ... this.
9415         (show_memory_packet_size): Adjust to use
9416         get_current_remote_target.
9417         (struct protocol_feature) <func>: Add remote_target parameter.
9418         All callers adjusted.
9419         (curr_quit_handler_target): New.
9420         (remote_serial_quit_handler): Reimplement.
9421         (remote_target::open_1): Adjust to use get_current_remote_target.
9422         Heap-allocate remote_target/extended_remote_target instances.
9423         (vcont_builder::vcont_builder): Add remote_target parameter, and
9424         save it in m_remote.  All callers adjusted.
9425         (vcont_builder::m_remote): New field.
9426         (vcont_builder::restart, vcont_builder::flush)
9427         (vcont_builder::push_action): Use it.
9428         (remote_target::commit_resume): Use it.
9429         (struct queue_iter_param) <remote>: New field.
9430         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9431         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9432         (check_pending_event_prevents_wildcard_vcont_callback)
9433         (remote_target::check_pending_events_prevent_wildcard_vcont)
9434         (remote_target::discard_pending_stop_replies)
9435         (remote_target::discard_pending_stop_replies_in_queue)
9436         (remote_target::remote_notif_remove_queued_reply): Fill in
9437         'remote' field.
9438         (remote_notif_get_pending_events): New.
9439         (remote_target::readchar, remote_target::remote_serial_write):
9440         Save/restore curr_quit_handler_target.
9441         (putpkt): New.
9442         (kill_new_fork_children): Fill in 'remote' field.
9443         (packet_command): Use get_current_remote_target, defer to
9444         remote_target method of same name.
9445         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9446         parameter, and save it in m_remote.  All callers adjusted.
9447         (scoped_remote_fd::release): Use m_remote.
9448         (scoped_remote_fd::m_remote): New field.
9449         (remote_file_put, remote_file_get, remote_file_delete): Use
9450         get_current_remote_target, defer to remote_target method of same
9451         name.
9452         (remote_btrace_reset): Add remote_state paremeter.  Update all
9453         callers.
9454         (remote_async_inferior_event_handler). Pass down 'data'.
9455         (remote_new_objfile): Use get_current_remote_target.
9456         (remote_target::vcont_r_supported): New.
9457         (set_range_stepping): Use get_current_remote_target and
9458         remote_target::vcont_r_supported.
9459         (_initialize_remote): Don't allocate 'remote_state' and
9460         'stop_reply_queue' globals.
9461         * remote.h (struct remote_target): Forward declare.
9462         (getpkt, putpkt, remote_notif_get_pending_events): Add
9463         'remote_target' parameter.
9464
9465 2018-05-22  Pedro Alves  <palves@redhat.com>
9466
9467         * remote.c (vcont_builder): Now a class.  Make all data members
9468         private.
9469         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9470         Declare methods.
9471         (vcont_builder_restart): Rename to ...
9472         (vcont_builder::restart): ... this.
9473         (vcont_builder_flush): Rename to ...
9474         (vcont_builder::flush): ... this.
9475         (vcont_builder_push_action): Rename to ...
9476         (vcont_builder::push_action): ... this.
9477         (remote_target::commit_resume): Adjust.
9478
9479 2018-05-22  Pedro Alves  <palves@redhat.com>
9480
9481         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9482         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9483         (get_fixed_memory_packet_size): New.
9484         (get_memory_packet_size): Use it.
9485         (set_memory_packet_size): Don't override the config size with
9486         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9487         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9488         Don't refer to get_memory_packet_size if not connected to a remote
9489         target.  Show "(default)" if configured size is 0.
9490
9491 2018-05-22  Pedro Alves  <palves@redhat.com>
9492
9493         * remote.c (remote_target::mourn_inferior): Move
9494         discard_pending_stop_replies call here from ...
9495         (_initialize_remote): ... here.
9496
9497 2018-05-22  Pedro Alves  <palves@redhat.com>
9498
9499         * remote.c (compare_section_command): Remove set_general_process
9500         call.
9501
9502 2018-05-22  Pedro Alves  <palves@redhat.com>
9503
9504         * remote.c (struct packet_reg, struct remote_arch_state):
9505         Move higher up in the file.
9506         (remote_state) <m_arch_states>: Store remote_arch_state values
9507         instead of remote_arch_state pointers.
9508         (remote_state::get_remote_arch_state): Adjust.
9509
9510 2018-05-22  Pedro Alves  <palves@redhat.com>
9511
9512         * remote.c: Include <unordered_map>.
9513         (remote_state): Now a class.
9514         (remote_state) <get_remote_arch_state>: Declare method.
9515         <get_remote_arch_state>: New field.
9516         (remote_arch_state) <remote_arch_state>: Declare ctor.
9517         <regs>: Now a unique_ptr.
9518         (remote_gdbarch_data_handle): Delete.
9519         (get_remote_arch_state): Delete.
9520         (remote_state::get_remote_arch_state): New.
9521         (get_remote_state): Adjust to call remote_state's
9522         get_remote_arch_state method.
9523         (init_remote_state): Delete, bits factored out to ...
9524         (remote_arch_state::remote_arch_state): ... this new method.
9525         (get_remote_packet_size, get_memory_packet_size)
9526         (process_g_packet, remote_target::fetch_registers)
9527         (remote_target::prepare_to_store, store_registers_using_G)
9528         (remote_target::store_registers, remote_target::get_trace_status):
9529         Adjust to call remote_state's method.
9530         (_initialize_remote): Remove reference to
9531         remote_gdbarch_data_handle.
9532
9533 2018-05-22  Pedro Alves  <palves@redhat.com>
9534
9535         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9536         pread>: New method declarations.
9537         (remote_target::open_1): Adjust.
9538         (readahead_cache_invalidate): Rename to ...
9539         (readahead_cache::invalidate): ... this, and adjust to be a class
9540         method.
9541         (readahead_cache_invalidate_fd): Rename to ...
9542         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9543         class method.
9544         (remote_hostio_pwrite): Adjust.
9545         (remote_hostio_pread_from_cache): Rename to ...
9546         (readahead_cache::pread): ... this, and adjust to be a class
9547         method.
9548         (remote_hostio_close): Adjust.
9549
9550 2018-05-22  Pedro Alves  <palves@redhat.com>
9551
9552         * remote.c (remote_hostio_close_cleanup): Delete.
9553         (class scoped_remote_fd): New.
9554         (remote_file_put, remote_file_get): Use it.
9555
9556 2018-05-22  Pedro Alves  <palves@redhat.com>
9557
9558         (struct vCont_action_support): Use bool and initialize all fields.
9559         (struct readahead_cache): Initialize all fields.
9560         (remote_state): Use bool and initialize all fields.
9561         (remote_state::remote_state, remote_state::~remote_state): New.
9562         (new_remote_state): Delete.
9563         (_initialize_remote): Use new to allocate remote_state.
9564
9565 2018-05-22  Pedro Alves  <palves@redhat.com>
9566             張俊芝  <zjz@zjz.name>
9567
9568         PR gdb/22973
9569         * c-exp.y: Include "c-support.h".
9570         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9571         of tolower.  Use c_ident_is_alpha to scan names.
9572         * c-lang.c: Include "c-support.h".
9573         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9574         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9575         * c-support.h: New file, with bits factored out from ...
9576         * cp-name-parser.y: ... this file.
9577         Include "c-support.h".
9578         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9579         c-support.h and renamed.
9580         (symbol_end, yylex): Adjust.
9581
9582 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9583
9584         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9585         parameter type to CORE_ADDR.
9586         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9587         parameter type in declaration to CORE_ADDR.
9588         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9589         target_auxv_search to get AT_HWCAP and use the result to get the
9590         target description.
9591         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9592         to CORE_ADDR. Remove the cast of the return value to unsigned
9593         long. Fix error predicate of target_auxv_search.
9594         (ppc_linux_nat_target::read_description): Change the type of the
9595         hwcap variable to CORE_ADDR.
9596
9597 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9598
9599         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9600         if the size of fpscr is larger than 32 bits.
9601
9602 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9603
9604         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9605         (ppc32_linux_vsxregmap): New global.
9606         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9607         regcache_supply_regset, and regcache_collect_regset.
9608         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9609         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9610         (fetch_vsx_register, store_vsx_register): Remove.
9611         (fetch_vsx_registers): Add regno parameter. Get regset using
9612         ppc_linux_vsxregset. Use regset to supply registers.
9613         (store_vsx_registers): Add regno parameter. Get regset using
9614         ppc_linux_vsxregset. Use regset to collect registers.
9615         (fetch_register): Call fetch_vsx_registers instead of
9616         fetch_vsx_register.
9617         (store_register): Call store_vsx_registers instead of
9618         store_vsx_register.
9619         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9620         new regno parameter.
9621         (store_ppc_registers): Call store_vsx_registers with -1 for the
9622         new regno parameter.
9623         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9624         (ppc_collect_vsxregset): Remove.
9625
9626 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9627
9628         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9629         offset fields.
9630         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9631         for vector register offset fields.
9632         (ppc64_fbsd_reg_offsets): Likewise.
9633         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9634         to vector register offset fields.
9635         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9636         to vector register offset fields.
9637         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9638         vector register offset fields.
9639         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9640         initializers for vector register offset fields.
9641         (rs6000_aix64_reg_offsets): Likewise.
9642         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9643         (ppc_supply_vrregset): Remove.
9644         (ppc_collect_vrregset): Remove.
9645         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9646         (ppc_linux_vrregset) : New function.
9647         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9648         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9649         (ppc32_linux_vrregset): Remove.
9650         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9651         and use result instead of ppc32_linux_vrregset.
9652         (ppc32_linux_reg_offsets): Remove initializers for vector register
9653         offset fields.
9654         (ppc64_linux_reg_offsets): Likewise.
9655         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9656         * ppc-linux-nat.c: Include regset.h.
9657         (gdb_vrregset_t): Adjust comment to account for little-endian
9658         mode.
9659         (supply_vrregset, fill_vrregset): Remove.
9660         (fetch_altivec_register, store_altivec_register): Remove.
9661         (fetch_altivec_registers): Add regno parameter. Get regset using
9662         ppc_linux_vrregset. Use regset to supply registers.
9663         (store_altivec_registers): Add regno parameter. Get regset using
9664         ppc_linux_vrregset. Use regset to collect registers.
9665         (fetch_register): Call fetch_altivec_registers instead of
9666         fetch_altivec_register.
9667         (store_register): Call store_altivec_registers instead of
9668         store_altivec_register.
9669         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9670         the new regno parameter.
9671         (store_ppc_registers): Call store_altivec_registers with -1 for
9672         the new regno parameter.
9673
9674 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9675
9676         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9677         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9678         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9679         (gdb_vrregset_t): Change array type size to
9680         PPC_LINUX_SIZEOF_VRREGSET.
9681         (gdb_vsxregset_t): Change array type size to
9682         PPC_LINUX_SIZEOF_VSXREGSET.
9683         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9684         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9685         PPC_LINUX_SIZEOF_VSXREGSET.
9686
9687 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9688
9689         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9690         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9691         nat/ppc-linux.c.
9692         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9693         ppc_linux_target_wordsize with tid.
9694         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9695         wordsize with tid.
9696         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9697         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9698         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9699         tid parameter. Remove static specifier.
9700         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9701         (ppc_linux_target_wordsize): New declaration.
9702
9703 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9704
9705         * arch/ppc-linux-common.c: New file.
9706         * arch/ppc-linux-common.h: New file.
9707         * arch/ppc-linux-tdesc.h: New file.
9708         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9709         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9710         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9711         arch/ppc-linux-tdesc.h.
9712         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9713         arch/ppc-linux-tdesc.h.
9714         (ppc_linux_nat_target::read_description): Remove target
9715         description matching code. Fill a ppc_linux_features struct and
9716         call ppc_linux_match_description with it. Move comment about ISA
9717         2.05 to ppc-linux-common.c.
9718         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9719         arch/ppc-linux-tdesc.h.
9720         (ppc_linux_core_read_description): Remove target description
9721         matching code. Fill a ppc_linux_features struct and call
9722         ppc_linux_match_description with it.
9723         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9724         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9725         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9726         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9727         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9728         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9729         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9730         (tdesc_powerpc_e500l): Remove.
9731
9732 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9733
9734         * ada-lang.c (catch_assert_command): Pass empty string instead
9735         of NULL for excep_string argument.
9736
9737 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9738
9739         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9740         the width of the requested register exceeds the width of the
9741         `ptrace' data type.
9742
9743 2018-05-21  Tom Tromey  <tom@tromey.com>
9744
9745         * printcmd.c (output_command): Remove.
9746         (output_command_const): Rename to output_command.
9747         * valprint.h (output_command): Rename from output_command_const.
9748         * tracepoint.c (trace_dump_actions): Call output_command.
9749
9750 2018-05-21  Tom Tromey  <tom@tromey.com>
9751
9752         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9753         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9754         * ada-lang.h (create_ada_exception_catchpoint): Update.
9755         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9756         std::string.
9757         (create_excep_cond_exprs, ~ada_catchpoint)
9758         (should_stop_exception, print_one_exception)
9759         (print_mention_exception, print_recreate_exception): Update.
9760         (ada_get_next_arg): Remove.
9761         (catch_ada_exception_command_split): Use std::string.  Change type
9762         of "excep_string", "cond_string".
9763         (catch_ada_exception_command): Update.
9764         (create_ada_exception_catchpoint): Change type of excep_string.
9765         (ada_exception_sal): Remove excep_string parameter.
9766         (~ada_catchpoint): Remove.
9767
9768 2018-05-21  Tom Tromey  <tom@tromey.com>
9769
9770         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9771         cleanup.
9772
9773 2018-05-21  Tom Tromey  <tom@tromey.com>
9774
9775         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9776         Return unique_xmalloc_ptr.
9777         (print_it_exception): Update.
9778
9779 2018-05-21  Tom Tromey  <tom@tromey.com>
9780
9781         * tracepoint.c (trace_dump_actions): Use std::string.
9782
9783 2018-05-21  Tom Tromey  <tom@tromey.com>
9784
9785         * symfile.c (reread_symbols): Use std::string for original_name.
9786
9787 2018-05-21  Tom Tromey  <tom@tromey.com>
9788
9789         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9790         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9791         constructor.
9792
9793 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9794
9795         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9796         instance to...
9797         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9798         * objfiles.c (get_objfile_bfd_data): Allocate
9799         objfile_per_bfd_storage with obstack_new when allocating on
9800         obstack.
9801
9802 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9803
9804         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9805         OBSTACK_ZALLOC.
9806         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9807         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9808         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9809         (add_pending): Likewise.
9810         (parse_symbol): Likewise.
9811         (parse_partial_symbols): Likewise.
9812         (psymtab_to_symtab_1): Likewise.
9813         (new_psymtab): Likewise.
9814         (elfmdebug_build_psymtabs): Likewise.
9815         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9816         * objfiles.c (get_objfile_bfd_data): Likewise.
9817         (objfile_register_static_link): Likewise.
9818         * psymtab.c (allocate_psymtab): Likewise.
9819         * stabsread.c (read_member_functions): Likewise.
9820         * xcoffread.c (xcoff_end_psymtab): Likewise.
9821
9822 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9823
9824         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9825         compiler supports std::is_trivially_constructible.
9826         * common/poison.h: Include obstack.h.
9827         (IsMallocable): Define to is_trivially_constructible if the
9828         compiler supports it, define to true_type otherwise.
9829         (xobnew): New.
9830         (XOBNEW): Redefine.
9831         (xobnewvec): New.
9832         (XOBNEWVEC): Redefine.
9833         * gdb_obstack.h (obstack_zalloc): New.
9834         (OBSTACK_ZALLOC): Redefine.
9835         (obstack_calloc): New.
9836         (OBSTACK_CALLOC): Redefine.
9837         (obstack_new): New.
9838         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9839         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9840         gdbarch.c.
9841         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9842         obstack_calloc/obstack_zalloc.
9843         (gdbarch_obstack_zalloc): Remove.
9844         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9845
9846 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9847
9848         * stack.c (backtrace_command_1): Remove useless variable int i.
9849
9850 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9851
9852         * stack.c (print_frame_info): Fix comment.
9853
9854 2018-05-18  Tom Tromey  <tom@tromey.com>
9855
9856         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9857         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9858         (~dwarf2_per_objfile): Update
9859         (dwarf2_get_dwz_file): Use new.
9860         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9861         unique_ptr.
9862
9863 2018-05-18  Tom Tromey  <tom@tromey.com>
9864
9865         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9866         unique_ptr.
9867         * dwarf2read.c (struct dwp_file): Add constructor and
9868         initializers.
9869         (open_and_init_dwp_file): Return a unique_ptr.
9870         (dwarf2_per_objfile, create_dwp_hash_table)
9871         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9872         (lookup_dwo_unit_in_dwp): Update.
9873         (open_and_init_dwp_file, get_dwp_file): Update.
9874
9875 2018-05-18  Tom Tromey  <tom@tromey.com>
9876
9877         * dwarf2read.c (dwarf2_per_objfile): Update.
9878         (struct mapped_index): Add initializers.
9879         (dwarf2_read_index): Use new.
9880         (dw2_symtab_iter_init): Update.
9881         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9882         unique_ptr.
9883
9884 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9885
9886         * dwarf2read.c (mapped_index) <total_size>: Remove.
9887
9888 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9889
9890         * unittests/format_pieces-selftests.c (test_format_specifier):
9891         Add ARI comments.
9892
9893 2018-05-18  Tom Tromey  <tom@tromey.com>
9894
9895         * c-typeprint.c (maybe_print_hole): New function.
9896         (c_print_type_struct_field_offset): Update.
9897         (c_type_print_base_struct_union): Call maybe_print_hole.
9898
9899 2018-05-17  Keith Seitz  <keiths@redhat.com>
9900
9901         * breakpoint.c (build_bpstat_chain): New function, moved from
9902         bpstat_stop_status.
9903         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9904         If no stop chain is passed, call build_bpstat_chain to build it.
9905         * breakpoint.h (build_bpstat_chain): Declare.
9906         (bpstat_stop_status): Move documentation here from breakpoint.c.
9907         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9908         build the stop chain and pass it to skip_inline_frames.
9909         Pass this stop chain to bpstat_stop_status.
9910         * inline-frame.c: Include breakpoint.h.
9911         (stopped_by_user_bp_inline_frame): New function.
9912         (skip_inline_frames): Add parameter `stop_chain'.
9913         Move documention to inline-frame.h.
9914         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9915         whether the frame should be elided.
9916         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9917         Add moved documentation and update for new parameter.
9918
9919 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9920
9921         PR cli/14975
9922         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9923         unittests/format_pieces-selftests.c.
9924         * common/format.h (format_piece) <operator==>: New.
9925         (format_pieces) <operator[]>: Remove.
9926         * common/format.c (format_pieces::format_pieces): Handle \e.
9927         * unittests/format_pieces-selftests.c: New.
9928
9929 2018-05-17  Tom Tromey  <tom@tromey.com>
9930
9931         PR symtab/23010:
9932         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9933         (dw2_instantiate_symtab): Add skip_partial parameter.
9934         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9935         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9936         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9937         (dw2_expand_symtabs_matching_one)
9938         (dw2_find_pc_sect_compunit_symtab)
9939         (dw2_debug_names_lookup_symbol)
9940         (dw2_debug_names_expand_symtabs_for_function): Update.
9941         (init_cutu_and_read_dies): Add skip_partial parameter.
9942         (process_psymtab_comp_unit, build_type_psymtabs_1)
9943         (process_skeletonless_type_unit, load_partial_comp_unit)
9944         (psymtab_to_symtab_1): Update.
9945         (load_full_comp_unit): Add skip_partial parameter.
9946         (process_imported_unit_die, dwarf2_read_addr_index)
9947         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9948         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9949         (read_signatured_type): Update.
9950
9951 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9952
9953         * value.c (release_value): Remove unused variable.
9954         (record_latest_value): Likewise.
9955         (access_value_history): Likewise.
9956         (preserve_values): Likewise.
9957
9958 2018-05-17  Tom Tromey  <tom@tromey.com>
9959
9960         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9961         Initialize.
9962
9963 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9964
9965         PR gdb/22286
9966         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9967         Also handle registers whose width is not a multiple of
9968         PTRACE_TYPE_RET.
9969         (linux_nat_trad_target::store_register): Likewise.
9970
9971 2018-05-16  Tom Tromey  <tom@tromey.com>
9972
9973         * gdbcore.h (core_bfd): Redefine.
9974         * corelow.c (core_target::close): Update.
9975         (core_target_open): Update.
9976         * progspace.h (struct program_space) <cbfd>: Now a
9977         gdb_bfd_ref_ptr.
9978
9979 2018-05-16  Tom Tromey  <tom@tromey.com>
9980
9981         PR cli/19551:
9982         * symfile-add-flags.h (enum symfile_add_flags)
9983         <SYMFILE_NOT_FILENAME>: New constant.
9984         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9985         objfile name from BFD.
9986         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9987         * minidebug.c (find_separate_debug_file_in_section): Put
9988         ".gnu_debugdata" into BFD's file name.
9989
9990 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9991
9992         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9993         Remove.
9994
9995 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9996
9997         PR binutils/21446
9998         * aarch64-tdep.c (aarch64_analyze_prologue,
9999         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
10000         Indicate not interested in errors.
10001
10002 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10003
10004         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
10005         Supply the MIPS_ZERO_REGNUM register.
10006
10007 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
10008
10009         * mips-tdep.c (mask_address_var): Make variable static.
10010
10011 2018-05-14  Tom Tromey  <tom@tromey.com>
10012
10013         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
10014
10015 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
10016
10017         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
10018         FXSAVE_ADDR for the mxcsr register.
10019
10020 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
10021
10022         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
10023
10024 2018-05-11  Pedro Alves  <palves@redhat.com>
10025
10026         * corelow.c (core_target) <core_target>: No longer inline.
10027         Initialize m_core_gdbarch, m_core_vec and build the section table
10028         here.
10029         <~core_target>: New.
10030         <core_gdbarch, get_core_register_section>: New methods.
10031         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
10032         factored out from ...
10033         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
10034         (core_ops): Delete.
10035         (sniff_core_bfd): Add gdbarch parameter.
10036         (core_close): Delete, merged into ...
10037         (core_target::close): ... here.  Delete self.
10038         (core_close_cleanup): Delete.
10039         (core_target_open): Allocate a core_target on the heap.  Use a
10040         unique_ptr instead of a cleanup.  Bits moved into the core_target
10041         ctor.  Adjust to use core_target methods instead of globals.
10042         (get_core_register_section): Rename to ...
10043         (core_target::get_core_register_section): ... this and adjust.
10044         (struct get_core_registers_cb_data): New.
10045         (get_core_registers_cb): Use it.  Use bool.
10046         (core_target::fetch_registers, core_target::files_info)
10047         (core_target::xfer_partial, core_target::read_description)
10048         (core_target::pid_to, core_target::thread_name): Adjust to
10049         reference class fields instead of globals.
10050         * target.h (struct target_ops_deleter, target_ops_up): New.
10051
10052 2018-05-11  Pedro Alves  <palves@redhat.com>
10053
10054         * corefile.c (core_file_command): Move to corelow.c.
10055         * corelow.c (the_core_target): Delete.
10056         (core_file_command): Moved from corefile.c.  Check exec_bfd
10057         instead of the_core_target.  Use target_detach instead of calling
10058         into the_core_target directly.
10059         (maybe_say_no_core_file_now): New.
10060         (core_target::detach): Use it.
10061         (_initialize_corelow): Remove references to the_core_target.
10062         * gdbcore.h (the_core_target): Delete.
10063
10064 2018-05-11  Tom Tromey  <tromey@redhat.com>
10065             Pedro Alves  <palves@redhat.com>
10066
10067         * corefile.c (core_bfd): Remove.
10068         * gdbcore.h (core_bfd): Now a macro.
10069         * progspace.h (struct program_space) <cbfd>: New field.
10070
10071 2018-05-11  Tom Tromey  <tom@tromey.com>
10072
10073         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10074         gdb::def_vector.
10075
10076 2018-05-10  Tom Tromey  <tom@tromey.com>
10077
10078         * configure: Rebuild.
10079         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10080
10081 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10082
10083         PR server/23158:
10084         * regformats/regdat.sh: Adjust script, following the addition
10085         of the new expedite_regs parameter to init_target_desc.
10086
10087 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10088     
10089         PR gdb/23127
10090         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10091         set_gdbarch_significant_addr_bit.
10092         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10093         set_gdbarch_significant_addr_bit.
10094         * utils.c (address_significant): Update to sign extend addr.
10095
10096 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10097
10098         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10099         (xtensa_linux_init_abi): Limit tdep->num_regs by
10100         tdep->num_nopriv_regs.
10101         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10102         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10103         not initialized.
10104
10105 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10106
10107         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10108
10109 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10110
10111         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10112         (I387_MXCSR_INIT_VAL): New constant.
10113         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10114         buffer if it was supplied by the inferior.
10115         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10116         (i387_xsave_get_clear_bv): New function.
10117         (i387_supply_xsave): Only read x87 control registers from the
10118         xsave buffer if the feature is enabled, and the state will have
10119         been written, otherwise, provide a suitable default.
10120         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10121         including x87 control registers.  Update control registers if they
10122         have changed from the default value, and mark features as enabled
10123         as required.
10124         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10125
10126 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10127
10128         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10129
10130 2018-05-07  Tom Tromey  <tom@tromey.com>
10131
10132         * configure: Rebuild.
10133         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10134
10135 2018-05-07  Tom Tromey  <tom@tromey.com>
10136
10137         PR tdep/20362:
10138         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10139         bit.  Use correct value for VDIV.
10140
10141 2018-05-04  Tom Tromey  <tom@tromey.com>
10142
10143         * configure: Rebuild.
10144         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10145
10146 2018-05-04  Tom Tromey  <tom@tromey.com>
10147
10148         * linux-record.c (record_linux_system_call) <case
10149         RECORD_SYS_RECVFROM>: Add "break".
10150
10151 2018-05-04  Tom Tromey  <tom@tromey.com>
10152
10153         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10154         Add missing "break".
10155         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10156         Add missing "break".
10157
10158 2018-05-04  Tom Tromey  <tom@tromey.com>
10159
10160         * rs6000-tdep.c (ppc_process_record_op4)
10161         (ppc_process_record_op63): Add fall-through comment.
10162
10163 2018-05-04  Tom Tromey  <tom@tromey.com>
10164
10165         * i386-tdep.c (i386_process_record): Add fall-through comment.
10166
10167 2018-05-04  Tom Tromey  <tom@tromey.com>
10168
10169         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10170         comment.
10171
10172 2018-05-04  Tom Tromey  <tom@tromey.com>
10173
10174         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10175         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10176         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10177         comment.
10178         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10179         comment.
10180         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10181         comment.
10182
10183 2018-05-04  Tom Tromey  <tom@tromey.com>
10184
10185         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10186
10187 2018-05-04  Tom Tromey  <tom@tromey.com>
10188
10189         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10190         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10191         * symfile.c (section_is_mapped): Fix fall-through comment.
10192         * stabsread.c (define_symbol, read_member_functions): Fix
10193         fall-through comment.
10194         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10195         comment.
10196         * remote.c (remote_wait_as): Fix fall-through comment.
10197         * p-exp.y (yylex): Fix fall-through comment.
10198         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10199         comment.
10200         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10201         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10202         * jv-exp.y (yylex): Fix fall-through comment.
10203         * go-exp.y (lex_one_token): Fix fall-through comment.
10204         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10205         fall-through comment.
10206         * f-exp.y (yylex): Fix fall-through comment.
10207         * dwarf2read.c (process_die): Fix fall-through comments.
10208         * dbxread.c (process_one_symbol): Fix fall-through comment.
10209         * d-exp.y (lex_one_token): Fix fall-through comment.
10210         * cp-name-parser.y (yylex): Fix fall-through comment.
10211         * coffread.c (coff_symtab_read): Fix fall-through comment.
10212         * c-exp.y (lex_one_token): Fix fall-through comment.
10213         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10214         comment.
10215         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10216         comment.
10217
10218 2018-05-04  Tom Tromey  <tom@tromey.com>
10219
10220         PR python/22730:
10221         * NEWS: Mention gdb.execute change.
10222         * gdbcmd.h (execute_control_command): Don't declare.
10223         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10224         execute_control_commands, execute_control_commands_to_string.
10225         * cli/cli-script.h (execute_control_commands)
10226         (execute_control_commands_to_string): Declare.
10227         (execute_control_command): Add from_tty parameter.
10228         * cli/cli-script.c (execute_control_commands)
10229         (execute_control_commands_to_string): New functions.
10230         (execute_user_command): Use execute_control_commands.
10231         (execute_control_command_1): Add "from_tty" parameter.  Update.
10232         (execute_control_command): Likewise.
10233
10234 2018-05-04  Tom Tromey  <tom@tromey.com>
10235
10236         PR python/22731:
10237         * NEWS: Mention that breakpoint commands are writable.
10238         * python/py-breakpoint.c (bppy_set_commands): New function.
10239         (breakpoint_object_getset) <"commands">: Use it.
10240
10241 2018-05-04  Tom Tromey  <tom@tromey.com>
10242
10243         * tracepoint.c (actions_command): Update.
10244         * mi/mi-cmd-break.c (mi_command_line_array)
10245         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10246         (mi_read_next_line): Remove.
10247         (mi_cmd_break_commands): Update.
10248         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10249         function_view.
10250         * cli/cli-script.c (get_command_line): Update.
10251         (process_next_line): Use function_view.  Constify.
10252         (recurse_read_control_structure, read_command_lines)
10253         (read_command_lines_1): Change argument types to function_view.
10254         (do_define_command, document_command): Update.
10255         * breakpoint.h (check_tracepoint_command): Don't declare.
10256         * breakpoint.c (check_tracepoint_command): Remove.
10257         (commands_command_1, create_tracepoint_from_upload): Update.
10258
10259 2018-05-04  Tom Tromey  <tom@tromey.com>
10260
10261         PR gdb/11750:
10262         * cli/cli-script.h (enum command_control_type) <define_control>:
10263         New constant.
10264         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10265         (build_command_line, execute_control_command_1)
10266         (process_next_line): Likewise.
10267         (do_define_command): New function, extracted from define_command.
10268         (define_command): Use it.
10269
10270 2018-05-04  Tom Tromey  <tom@tromey.com>
10271
10272         * tracepoint.c (actions_command): Update.
10273         * cli/cli-script.h (read_command_lines): Update.
10274         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10275         (MAX_TMPBUF): Remove define.
10276         (define_command): Use string_printf.
10277         (document_command): Likewise.
10278         * breakpoint.c (commands_command_1): Update.
10279
10280 2018-05-04  Tom Tromey  <tom@tromey.com>
10281
10282         * top.c (execute_command): Update.
10283         * cli/cli-script.h (print_command_lines): Now varargs.
10284         * cli/cli-script.c (print_command_lines): Now varargs.
10285         (execute_control_command_1) <case while_control, case if_control>:
10286         Update.
10287
10288 2018-05-04  Tom Tromey  <tom@tromey.com>
10289
10290         * tracepoint.c (all_tracepoint_actions): Rename from
10291         all_tracepoint_actions_and_cleanup.  Change return type.
10292         (actions_command, encode_actions_1, encode_actions)
10293         (trace_dump_actions, tdump_command): Update.
10294         * remote.c (remote_download_command_source): Update.
10295         * python/python.c (gdbpy_eval_from_control_command)
10296         (python_command, python_interactive_command): Update.
10297         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10298         * guile/guile.c (guile_command)
10299         (gdbscm_eval_from_control_command, guile_command): Update.
10300         * compile/compile.c (compile_code_command)
10301         (compile_print_command, compile_to_object): Update.
10302         * cli/cli-script.h (struct command_lines_deleter): New.
10303         (counted_command_line): New typedef.
10304         (struct command_line): Add constructor, destructor.
10305         <body_list>: Remove.
10306         <body_list_0, body_list_1>: New members.
10307         (command_line_up): Remove typedef.
10308         (read_command_lines, read_command_lines_1, get_command_line):
10309         Update.
10310         (copy_command_lines): Don't declare.
10311         * cli/cli-script.c (build_command_line): Use "new".
10312         (get_command_line): Return counted_command_line.
10313         (print_command_lines, execute_user_command)
10314         (execute_control_command_1, while_command, if_command): Update.
10315         (realloc_body_list): Remove.
10316         (process_next_line, recurse_read_control_structure): Update.
10317         (read_command_lines, read_command_lines_1): Return counted_command_line.
10318         (free_command_lines): Use "delete".
10319         (copy_command_lines): Remove.
10320         (define_command, document_command, show_user_1): Update.
10321         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10322         a counted_command_line.
10323         * breakpoint.h (counted_command_line): Remove typedef.
10324         (breakpoint_set_commands): Update.
10325         * breakpoint.c (check_no_tracepoint_commands)
10326         (validate_commands_for_breakpoint): Update.
10327         (breakpoint_set_commands): Change commands to be a
10328         counted_command_line.
10329         (commands_command_1, update_dprintf_command_list)
10330         (create_tracepoint_from_upload): Update.
10331
10332 2018-05-04  Tom Tromey  <tom@tromey.com>
10333
10334         * cli/cli-decode.h (cmd_list_element): New constructor.
10335         (~cmd_list_element): New destructor.
10336         (struct cmd_list_element): Add initializers.
10337         * cli/cli-decode.c (do_add_cmd): Use "new".
10338         (delete_cmd): Use "delete".
10339
10340 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10341             Pedro Alves <palves@redhat.com>
10342
10343         PR breakpoints/19806 and support for PR external/20207.
10344         * NEWS: Mention Aarch64 watchpoint improvements.
10345         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10346         watchpoints and PR external/20207 watchpoints.
10347         * nat/aarch64-linux-hw-point.c
10348         (kernel_supports_any_contiguous_range): New.
10349         (aarch64_watchpoint_offset): New.
10350         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10351         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10352         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10353         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10354         next_addr_orig_p.  Support PR external/20207 watchpoints.
10355         (aarch64_downgrade_regs): New.
10356         (aarch64_dr_state_insert_one_point): New parameters offset and
10357         addr_orig.
10358         (aarch64_dr_state_remove_one_point): Likewise.
10359         (aarch64_handle_breakpoint): Update caller.
10360         (aarch64_handle_aligned_watchpoint): Likewise.
10361         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10362         aligned_offset.
10363         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10364         aarch64_downgrade_regs.
10365         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10366         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10367         (DR_CONTROL_MASK): ... this.
10368         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10369         (unsigned int aarch64_watchpoint_offset): New prototype.
10370         (aarch64_linux_set_debug_regs): Remove const from state.
10371         * utils.c (align_up, align_down): Move to ...
10372         * common/common-utils.c (align_up, align_down): ... here.
10373         * utils.h (align_up, align_down): Move to ...
10374         * common/common-utils.h (align_up, align_down): ... here.
10375
10376 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10377
10378         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10379         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10380         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10381         Re-implement to match the ABI as summarized in GCC's
10382         gcc/config/sparc/sparc.c.  All callers updated.
10383         (sparc32_store_arguments): Remove assertion.
10384
10385 2018-05-04  Tom Tromey  <tom@tromey.com>
10386
10387         * printcmd.c: Don't include tui.h.
10388         (decode_format): Use skip_spaces.
10389
10390 2018-05-04  Tom Tromey  <tom@tromey.com>
10391
10392         PR gdb/22619:
10393         * printcmd.c (last_count): New global.
10394         (x_command): Use saved count when repeating.
10395
10396 2018-05-04  Tom Tromey  <tom@tromey.com>
10397
10398         * nto-procfs.c (do_closedir_cleanup): Remove.
10399         (procfs_pidlist): Use gdb_dir_up.
10400         * procfs.c (do_closedir_cleanup): Remove.
10401         (proc_update_threads): Use gdb_dir_up.
10402         * common/filestuff.h (struct gdb_dir_deleter): New.
10403         (gdb_dir_up): New typedef.
10404
10405 2018-05-04  Tom Tromey  <tom@tromey.com>
10406
10407         * ada-lang.c (print_mention_exception): Use std::string.
10408
10409 2018-05-04  Tom Tromey  <tom@tromey.com>
10410
10411         * ada-lang.c (create_excep_cond_exprs): Update.
10412         (ada_exception_catchpoint_cond_string): Use std::string.
10413
10414 2018-05-04  Tom Tromey  <tom@tromey.com>
10415
10416         * ada-lang.c (xget_renaming_scope): Return std::string.
10417         (old_renaming_is_invisible): Update.
10418
10419 2018-05-04  Tom Tromey  <tom@tromey.com>
10420
10421         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10422         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10423
10424 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10425
10426         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10427
10428 2018-05-04  Tom Tromey  <tom@tromey.com>
10429
10430         * remote.c (remote_query_supported_append): Change type.
10431         (remote_check_symbols): Update.
10432
10433 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10434
10435         PR gdb/11420
10436         * configure.ac: Prepend libpython.
10437         * python/python-config.py: Likewise.
10438         * configure: Regenerate.
10439
10440 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10441
10442         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10443
10444 2018-05-03  Pedro Alves  <palves@redhat.com>
10445
10446         * s390-linux-nat.c
10447         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10448         override.  Write 'true' instead of '1'.
10449         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10450         declaration.
10451
10452 2018-05-02  Pedro Alves  <palves@redhat.com>
10453
10454         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10455         add_inf_child_target.
10456         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10457         add_inf_child_target.
10458         * aix-thread.c (aix_thread_target_info): New.
10459         (aix_thread_target) <shortname, longname, doc>: Delete.
10460         <info>: New.
10461         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10462         add_inf_child_target.
10463         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10464         add_inf_child_target.
10465         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10466         add_inf_child_target.
10467         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10468         add_inf_child_target.
10469         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10470         add_inf_child_target.
10471         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10472         add_inf_child_target.
10473         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10474         add_inf_child_target.
10475         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10476         add_inf_child_target.
10477         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10478         add_inf_child_target.
10479         * bfd-target.c (target_bfd_target_info): New.
10480         (target_bfd) <shortname, longname, doc>: Delete.
10481         <info>: New.
10482         * bsd-kvm.c (bsd_kvm_target_info): New.
10483         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10484         <info>: New.
10485         (bsd_kvm_target::open): Rename to ...
10486         (bsd_kvm_target_open): ... this.  Adjust.
10487         * bsd-uthread.c (bsd_uthread_target_info): New.
10488         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10489         <info>: New.
10490         * corefile.c (core_file_command): Adjust.
10491         * corelow.c (core_target_info): New.
10492         (core_target) <shortname, longname, doc>: Delete.
10493         <info>: New.
10494         (core_target::open): Rename to ...
10495         (core_target_open): ... this.  Adjust.
10496         * ctf.c (ctf_target_info): New.
10497         (ctf_target) <shortname, longname, doc>: Delete.
10498         <info>: New.
10499         (ctf_target::open): Rename to ...
10500         (ctf_target_open): ... this.
10501         (_initialize_ctf): Adjust.
10502         * exec.c (exec_target_info): New.
10503         (exec_target) <shortname, longname, doc>: Delete.
10504         <info>: New.
10505         (exec_target::open): Rename to ...
10506         (exec_target_open): ... this.
10507         * gdbcore.h (core_target_open): Declare.
10508         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10509         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10510         add_inf_child_target.
10511         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10512         add_inf_child_target.
10513         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10514         add_inf_child_target.
10515         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10516         add_inf_child_target.
10517         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10518         add_inf_child_target.
10519         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10520         add_inf_child_target.
10521         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10522         add_inf_child_target.
10523         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10524         add_inf_child_target.
10525         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10526         add_inf_child_target.
10527         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10528         add_inf_child_target.
10529         * inf-child.c (inf_child_target_info): New.
10530         (inf_child_target::info): New.
10531         (inf_child_open_target): Remove 'target' parameter.  Use
10532         get_native_target instead.
10533         (inf_child_target::open): Delete.
10534         (add_inf_child_target): New.
10535         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10536         Delete.
10537         <info>: New.
10538         (add_inf_child_target): Declare.
10539         (inf_child_open_target): Declare.
10540         * linux-thread-db.c (thread_db_target_info): New.
10541         (thread_db_target) <shortname, longname, doc>: Delete.
10542         <info>: New.
10543         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10544         add_inf_child_target.
10545         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10546         add_inf_child_target.
10547         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10548         add_inf_child_target.
10549         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10550         add_inf_child_target.
10551         * make-target-delegates (print_class): Adjust.
10552         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10553         add_inf_child_target.
10554         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10555         add_inf_child_target.
10556         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10557         add_inf_child_target.
10558         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10559         add_inf_child_target.
10560         * nto-procfs.c (nto_native_target_info): New.
10561         (nto_procfs_target_native) <shortname, longname, doc>:
10562         Delete.
10563         <info>: New.
10564         (nto_procfs_target_info): New.
10565         (nto_procfs_target_procfs) <shortname, longname, doc>:
10566         Delete.
10567         <info>: New.
10568         (init_procfs_targets): Adjust.
10569         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10570         add_inf_child_target.
10571         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10572         add_inf_child_target.
10573         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10574         add_inf_child_target.
10575         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10576         add_inf_child_target.
10577         * ravenscar-thread.c (ravenscar_target_info): New.
10578         (ravenscar_thread_target) <shortname, longname, doc>:
10579         Delete.
10580         <info>: New.
10581         * record-btrace.c (record_btrace_target_info):
10582         (record_btrace_target) <shortname, longname, doc>: Delete.
10583         <info>: New.
10584         (record_btrace_target::open): Rename to ...
10585         (record_btrace_target_open): ... this.  Adjust.
10586         * record-full.c (record_longname, record_doc): New.
10587         (record_full_base_target) <shortname, longname, doc>: Delete.
10588         <info>: New.
10589         (record_full_target_info): New.
10590         (record_full_target): <shortname>: Delete.
10591         <info>: New.
10592         (record_full_core_open_1, record_full_open_1): Update comments.
10593         (record_full_base_target::open): Rename to ...
10594         (record_full_open): ... this.
10595         (cmd_record_full_restore): Update.
10596         (_initialize_record_full): Update.
10597         * remote-sim.c (remote_sim_target_info): New.
10598         (gdbsim_target) <shortname, longname, doc>: Delete.
10599         <info>: New.
10600         (gdbsim_target::open): Rename to ...
10601         (gdbsim_target_open): ... this.
10602         (_initialize_remote_sim): Adjust.
10603         * remote.c (remote_doc): New.
10604         (remote_target_info): New.
10605         (remote_target) <shortname, longname, doc>: Delete.
10606         <info>: New.
10607         (extended_remote_target_info): New.
10608         (extended_remote_target) <shortname, longname, doc>: Delete.
10609         <info>: New.
10610         (remote_target::open_1): Make static.  Adjust.
10611         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10612         * s390-linux-nat.c (_initialize_s390_nat): Use
10613         add_inf_child_target.
10614         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10615         add_inf_child_target.
10616         * sol-thread.c (thread_db_target_info): New.
10617         (sol_thread_target) <shortname, longname, doc>: Delete.
10618         <info>: New.
10619         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10620         add_inf_child_target.
10621         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10622         add_inf_child_target.
10623         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10624         add_inf_child_target.
10625         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10626         add_inf_child_target.
10627         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10628         add_inf_child_target.
10629         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10630         add_inf_child_target.
10631         * spu-linux-nat.c (_initialize_spu_nat): Use
10632         add_inf_child_target.
10633         * spu-multiarch.c (spu_multiarch_target_info): New.
10634         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10635         <info>: New.
10636         * target-delegates.c: Regenerate.
10637         * target.c: Include <unordered_map>.
10638         (target_ops_p): Delete.
10639         (DEF_VEC_P(target_ops_p)): Delete.
10640         (target_factories): New.
10641         (test_target_info): New.
10642         (test_target_ops::info): New.
10643         (open_target): Adjust to use target_factories.
10644         (add_target_with_completer): Rename to ...
10645         (add_target): ... this.  Change prototype.  Register target_info
10646         and open callback in target_factories.  Register target_info in
10647         command context instead of target_ops.
10648         (add_target): Delete old implementation.
10649         (add_deprecated_target_alias): Change prototype.  Adjust.
10650         (the_native_target): New.
10651         (set_native_target, get_native_target): New.
10652         (find_default_run_target): Use the_native_target.
10653         (find_attach_target, find_run_target): Simplify.
10654         (target_ops::open): Delete.
10655         (dummy_target_info): New.
10656         (dummy_target::shortname, dummy_target::longname)
10657         (dummy_target::doc): Delete.
10658         (dummy_target::info): New.
10659         (debug_target::shortname, debug_target::longname)
10660         (debug_target::doc): Delete.
10661         (debug_target::info): New.
10662         * target.h (struct target_info): New.
10663         (target_ops::~target_ops): Add comment.
10664         (target_ops::info): New.
10665         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10666         longer virtual.  Implement in terms of target_info.
10667         (set_native_target, get_native_target): Declare.
10668         (target_open_ftype): New.
10669         (add_target, add_target_with_completer)
10670         (add_deprecated_target_alias): Change prototype.
10671         (test_target) <shortname, longname, doc>: Delete.
10672         <info>: New.
10673         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10674         add_inf_child_target.
10675         * tracefile-tfile.c (tfile_target_info): New.
10676         (tfile_target) <shortname, longname, doc>: Delete.
10677         <info>: New.
10678         (tfile_target::open): Rename to ...
10679         (tfile_target_open): ... this.
10680         (_initialize_tracefile_tfile): Adjust.
10681         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10682         add_inf_child_target.
10683         * windows-nat.c (_initialize_windows_nat): Use
10684         add_inf_child_target.
10685         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10686         add_inf_child_target.
10687
10688 2018-05-02  Pedro Alves  <palves@redhat.com>
10689
10690         * linux-nat.h (linux_nat_target) <low_new_thread,
10691         low_delete_thread, low_new_fork, low_forget_process,
10692         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10693         New virtual methods.
10694         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10695         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10696         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10697         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10698         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10699         Delete.
10700         * linux-fork.c (delete_fork): Adjust to call low method.
10701         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10702         (linux_nat_new_fork, linux_nat_forget_process_hook)
10703         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10704         (linux_nat_status_is_event):
10705         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10706         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10707         to call low method.
10708         (sigtrap_is_event): Rename to ...
10709         (linux_nat_target::low_status_is_event): ... this.
10710         (linux_nat_set_status_is_event): Delete.
10711         (save_stop_reason, linux_nat_wait_1)
10712         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10713         low methods.
10714         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10715         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10716         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10717         (linux_nat_set_prepare_to_resume): Delete.
10718         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10719         low virtual methods.
10720         * amd64-linux-nat.c: Likewise.
10721         * arm-linux-nat.c: Likewise.
10722         * i386-linux-nat.c: Likewise.
10723         * ia64-linux-nat.c: Likewise.
10724         * mips-linux-nat.c: Likewise.
10725         * ppc-linux-nat.c: Likewise.
10726         * s390-linux-nat.c: Likewise.
10727         * sparc64-linux-nat.c: Likewise.
10728         * x86-linux-nat.c: Likewise.
10729         * x86-linux-nat.h: Include "nat/x86-linux.h".
10730         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10731         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10732         Override methods.
10733
10734 2018-05-02  Pedro Alves  <palves@redhat.com>
10735
10736         * target.h (target_ops)
10737         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10738         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10739         stopped_by_watchpoint, have_continuable_watchpoint,
10740         stopped_data_address, watchpoint_addr_within_range,
10741         can_accel_watchpoint_condition, can_run, thread_alive,
10742         has_all_memory, has_memory, has_stack, has_registers,
10743         has_execution, can_async_p, is_async_p, supports_non_stop,
10744         always_non_stop_p, can_execute_reverse, supports_multi_process,
10745         supports_enable_disable_tracepoint,
10746         supports_disable_randomization, supports_string_tracing,
10747         supports_evaluation_of_breakpoint_conditions,
10748         can_run_breakpoint_commands, filesystem_is_local,
10749         can_download_tracepoint, get_trace_state_variable_value,
10750         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10751         record_is_replaying, record_will_replay,
10752         augmented_libraries_svr4_read>: Adjust to return bool.
10753         * aarch64-linux-nat.c: All implementations adjusted.
10754         * aix-thread.c: All implementations adjusted.
10755         * arm-linux-nat.c: All implementations adjusted.
10756         * breakpoint.c: All implementations adjusted.
10757         * bsd-kvm.c: All implementations adjusted.
10758         * bsd-uthread.c: All implementations adjusted.
10759         * corelow.c: All implementations adjusted.
10760         * ctf.c: All implementations adjusted.
10761         * darwin-nat.c: All implementations adjusted.
10762         * darwin-nat.h: All implementations adjusted.
10763         * exec.c: All implementations adjusted.
10764         * fbsd-nat.c: All implementations adjusted.
10765         * fbsd-nat.h: All implementations adjusted.
10766         * gnu-nat.c: All implementations adjusted.
10767         * gnu-nat.h: All implementations adjusted.
10768         * go32-nat.c: All implementations adjusted.
10769         * ia64-linux-nat.c: All implementations adjusted.
10770         * inf-child.c: All implementations adjusted.
10771         * inf-child.h: All implementations adjusted.
10772         * inf-ptrace.c: All implementations adjusted.
10773         * inf-ptrace.h: All implementations adjusted.
10774         * linux-nat.c: All implementations adjusted.
10775         * linux-nat.h: All implementations adjusted.
10776         * mips-linux-nat.c: All implementations adjusted.
10777         * nto-procfs.c: All implementations adjusted.
10778         * ppc-linux-nat.c: All implementations adjusted.
10779         * procfs.c: All implementations adjusted.
10780         * ravenscar-thread.c: All implementations adjusted.
10781         * record-btrace.c: All implementations adjusted.
10782         * record-full.c: All implementations adjusted.
10783         * remote-sim.c: All implementations adjusted.
10784         * remote.c: All implementations adjusted.
10785         * s390-linux-nat.c: All implementations adjusted.
10786         * sol-thread.c: All implementations adjusted.
10787         * spu-multiarch.c: All implementations adjusted.
10788         * target-delegates.c: All implementations adjusted.
10789         * target.c: All implementations adjusted.
10790         * target.h: All implementations adjusted.
10791         * tracefile-tfile.c: All implementations adjusted.
10792         * tracefile.c: All implementations adjusted.
10793         * tracefile.h: All implementations adjusted.
10794         * windows-nat.c: All implementations adjusted.
10795         * x86-linux-nat.h: All implementations adjusted.
10796         * x86-nat.h: All implementations adjusted.
10797
10798 2018-05-02  Pedro Alves  <palves@redhat.com>
10799
10800         * make-target-delegates (scan_target_h): Don't trim lines here.
10801         Replace sequences of tabs and/or whitespace with a single
10802         whitespace.
10803         (top level, parsing methods): Trim each line before processing it
10804         here.
10805
10806 2018-05-02  Pedro Alves  <palves@redhat.com>
10807             John Baldwin  <jhb@freebsd.org>
10808
10809         * target.h (enum strata) <debug_stratum>: New.
10810         (struct target_ops) <all delegation methods>: Replace by C++
10811         virtual methods, and drop "to_" prefix.  All references updated
10812         throughout.
10813         <to_shortname, to_longname, to_doc, to_data,
10814         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10815         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10816         virtual methods.  All references updated throughout.
10817         <can_attach, supports_terminal_ours, can_create_inferior,
10818         get_thread_control_capabilities, attach_no_wait>: New
10819         virtual methods.
10820         <insert_breakpoint, remove_breakpoint>: Now
10821         TARGET_DEFAULT_NORETURN methods.
10822         <info_proc>: Now returns bool.
10823         <to_magic>: Delete.
10824         (OPS_MAGIC): Delete.
10825         (current_target): Delete.  All references replaced by references
10826         to ...
10827         (target_stack): ... this.  New.
10828         (target_shortname, target_longname): Adjust.
10829         (target_can_run): Now a function declaration.
10830         (default_child_has_all_memory, default_child_has_memory)
10831         (default_child_has_stack, default_child_has_registers)
10832         (default_child_has_execution): Remove target_ops parameter.
10833         (complete_target_initialization): Delete.
10834         (memory_breakpoint_target): New template class.
10835         (test_target_ops): Refactor as a C++ class with virtual methods.
10836         * make-target-delegates (NAME_PART): Tighten.
10837         (POINTER_PART, CP_SYMBOL): New.
10838         (SIMPLE_RETURN_PART): Reimplement.
10839         (VEC_RETURN_PART): Expect less.
10840         (RETURN_PART, VIRTUAL_PART): New.
10841         (METHOD): Adjust to C++ virtual methods.
10842         (scan_target_h): Remove reference to C99.
10843         (dname): Output "target_ops::" prefix.
10844         (write_function_header): Adjust to output a C++ class method.
10845         (write_declaration): New.
10846         (write_delegator): Adjust to output a C++ class method.
10847         (tdname): Output "dummy_target::" prefix.
10848         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10849         method.
10850         (tdefault_names, debug_names): Delete.
10851         (return_types, tdefaults, styles, argtypes_array): New.
10852         (top level): All methods are delegators.
10853         (print_class): New.
10854         (top level): Print dummy_target and debug_target classes.
10855         * target-delegates.c: Regenerate.
10856         * target-debug.h (target_debug_print_enum_info_proc_what)
10857         (target_debug_print_thread_control_capabilities)
10858         (target_debug_print_thread_info_p): New.
10859         * target.c (dummy_target): Delete.
10860         (the_dummy_target, the_debug_target): New.
10861         (target_stack): Now extern.
10862         (set_targetdebug): Push/unpush debug target.
10863         (default_child_has_all_memory, default_child_has_memory)
10864         (default_child_has_stack, default_child_has_registers)
10865         (default_child_has_execution): Remove target_ops parameter.
10866         (complete_target_initialization): Delete.
10867         (add_target_with_completer): No longer call
10868         complete_target_initialization.
10869         (target_supports_terminal_ours): Use regular delegation.
10870         (update_current_target): Delete.
10871         (push_target): No longer check magic number.  Don't call
10872         update_current_target.
10873         (unpush_target): Don't call update_current_target.
10874         (target_is_pushed): No longer check magic number.
10875         (target_require_runnable): Skip for all stratums over
10876         process_stratum.
10877         (target_ops::info_proc): New.
10878         (target_info_proc): Use find_target_at and
10879         find_default_run_target.
10880         (target_supports_disable_randomization): Use regular delegation.
10881         (target_get_osdata): Use find_target_at.
10882         (target_ops::open, target_ops::close, target_ops::can_attach)
10883         (target_ops::attach, target_ops::can_create_inferior)
10884         (target_ops::create_inferior, target_ops::can_run)
10885         (target_can_run): New.
10886         (default_fileio_target): Use regular delegation.
10887         (target_ops::fileio_open, target_ops::fileio_pwrite)
10888         (target_ops::fileio_pread, target_ops::fileio_fstat)
10889         (target_ops::fileio_close, target_ops::fileio_unlink)
10890         (target_ops::fileio_readlink): New.
10891         (target_fileio_open_1, target_fileio_unlink)
10892         (target_fileio_readlink): Always call the target method.  Handle
10893         FILEIO_ENOSYS.
10894         (return_zero, return_zero_has_execution): Delete.
10895         (init_dummy_target): Delete.
10896         (dummy_target::dummy_target, dummy_target::shortname)
10897         (dummy_target::longname, dummy_target::doc)
10898         (debug_target::debug_target, debug_target::shortname)
10899         (debug_target::longname, debug_target::doc): New.
10900         (target_supports_delete_record): Use regular delegation.
10901         (setup_target_debug): Delete.
10902         (maintenance_print_target_stack): Skip debug_stratum.
10903         (initialize_targets): Instantiate the_dummy_target and
10904         the_debug_target.
10905         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10906         use target_stack.
10907         (target_auxv_search, fprint_target_auxv): Adjust.
10908         (info_auxv_command): Adjust to use target_stack.
10909         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10910         * exceptions.c (print_flush): Handle a NULL target_stack.
10911         * regcache.c (target_ops_no_register): Refactor as class with
10912         virtual methods.
10913
10914         * exec.c (exec_target): New class.
10915         (exec_ops): Now an exec_target.
10916         (exec_open, exec_close_1, exec_get_section_table)
10917         (exec_xfer_partial, exec_files_info, exec_has_memory)
10918         (exec_make_note_section): Refactor as exec_target methods.
10919         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10920         Delete.
10921         (exec_target::find_memory_regions): New.
10922         (_initialize_exec): Don't call init_exec_ops.
10923         * gdbcore.h (exec_file_clear): Delete.
10924
10925         * corefile.c (core_target): Delete.
10926         (core_file_command): Adjust.
10927         * corelow.c (core_target): New class.
10928         (the_core_target): New.
10929         (core_close): Remove target_ops parameter.
10930         (core_close_cleanup): Adjust.
10931         (core_target::close): New.
10932         (core_open, core_detach, get_core_registers, core_files_info)
10933         (core_xfer_partial, core_thread_alive, core_read_description)
10934         (core_pid_to_str, core_thread_name, core_has_memory)
10935         (core_has_stack, core_has_registers, core_info_proc): Rework as
10936         core_target methods.
10937         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10938         (_initialize_corelow): Initialize the_core_target.
10939         * gdbcore.h (core_target): Delete.
10940         (the_core_target): New.
10941
10942         * ctf.c: (ctf_target): New class.
10943         (ctf_ops): Now a ctf_target.
10944         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10945         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10946         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10947         methods.
10948         (init_ctf_ops): Delete.
10949         (_initialize_ctf): Don't call it.
10950         * tracefile-tfile.c (tfile_target): New class.
10951         (tfile_ops): Now a tfile_target.
10952         (tfile_open, tfile_close, tfile_files_info)
10953         (tfile_get_tracepoint_status, tfile_trace_find)
10954         (tfile_fetch_registers, tfile_xfer_partial)
10955         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10956         Refactor as tfile_target methods.
10957         (tfile_xfer_partial_features): Remove target_ops parameter.
10958         (init_tfile_ops): Delete.
10959         (_initialize_tracefile_tfile): Don't call it.
10960         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10961         (tracefile_has_stack, tracefile_has_registers)
10962         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10963         tracefile_target methods.
10964         (init_tracefile_ops): Delete.
10965         (tracefile_target::tracefile_target): New.
10966         * tracefile.h: Include "target.h".
10967         (tracefile_target): New class.
10968         (init_tracefile_ops): Delete.
10969
10970         * spu-multiarch.c (spu_multiarch_target): New class.
10971         (spu_ops): Now a spu_multiarch_target.
10972         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10973         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10974         (spu_search_memory, spu_mourn_inferior): Refactor as
10975         spu_multiarch_target methods.
10976         (init_spu_ops): Delete.
10977         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10978         complete_target_initialization.
10979
10980         * ravenscar-thread.c (ravenscar_thread_target): New class.
10981         (ravenscar_ops): Now a ravenscar_thread_target.
10982         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10983         (ravenscar_thread_alive, ravenscar_pid_to_str)
10984         (ravenscar_fetch_registers, ravenscar_store_registers)
10985         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10986         (ravenscar_stopped_by_hw_breakpoint)
10987         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10988         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10989         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10990         methods.
10991         (init_ravenscar_thread_ops): Delete.
10992         (_initialize_ravenscar): Remove references to
10993         init_ravenscar_thread_ops and complete_target_initialization.
10994
10995         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10996         (bsd_uthread_target): New class.
10997         (bsd_uthread_ops): Now a bsd_uthread_target.
10998         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10999         (bsd_uthread_close, bsd_uthread_mourn_inferior)
11000         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
11001         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
11002         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
11003         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
11004         (bsd_uthread_target): Delete function.
11005         (_initialize_bsd_uthread): Remove reference to
11006         complete_target_initialization.
11007
11008         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
11009         (target_bfd): ... this new class.
11010         (target_bfd_xfer_partial, target_bfd_get_section_table)
11011         (target_bfd_close): Refactor as target_bfd methods.
11012         (target_bfd::~target_bfd): New.
11013         (target_bfd_reopen): Adjust.
11014         (target_bfd::close): New.
11015
11016         * record-btrace.c (record_btrace_target): New class.
11017         (record_btrace_ops): Now a record_btrace_target.
11018         (record_btrace_open, record_btrace_stop_recording)
11019         (record_btrace_disconnect, record_btrace_close)
11020         (record_btrace_async, record_btrace_info)
11021         (record_btrace_insn_history, record_btrace_insn_history_range)
11022         (record_btrace_insn_history_from, record_btrace_call_history)
11023         (record_btrace_call_history_range)
11024         (record_btrace_call_history_from, record_btrace_record_method)
11025         (record_btrace_is_replaying, record_btrace_will_replay)
11026         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
11027         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
11028         (record_btrace_store_registers, record_btrace_prepare_to_store)
11029         (record_btrace_to_get_unwinder)
11030         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
11031         (record_btrace_commit_resume, record_btrace_wait)
11032         (record_btrace_stop, record_btrace_can_execute_reverse)
11033         (record_btrace_stopped_by_sw_breakpoint)
11034         (record_btrace_supports_stopped_by_sw_breakpoint)
11035         (record_btrace_stopped_by_hw_breakpoint)
11036         (record_btrace_supports_stopped_by_hw_breakpoint)
11037         (record_btrace_update_thread_list, record_btrace_thread_alive)
11038         (record_btrace_goto_begin, record_btrace_goto_end)
11039         (record_btrace_goto, record_btrace_stop_replaying_all)
11040         (record_btrace_execution_direction)
11041         (record_btrace_prepare_to_generate_core)
11042         (record_btrace_done_generating_core): Refactor as
11043         record_btrace_target methods.
11044         (init_record_btrace_ops): Delete.
11045         (_initialize_record_btrace): Remove reference to
11046         init_record_btrace_ops.
11047         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11048         the execution_direction global.
11049         (record_full_base_target, record_full_target)
11050         (record_full_core_target): New classes.
11051         (record_full_ops): Now a record_full_target.
11052         (record_full_core_ops): Now a record_full_core_target.
11053         (record_full_target::detach, record_full_target::disconnect)
11054         (record_full_core_target::disconnect)
11055         (record_full_target::mourn_inferior, record_full_target::kill):
11056         New.
11057         (record_full_open, record_full_close, record_full_async): Refactor
11058         as methods of the record_full_base_target class.
11059         (record_full_resume, record_full_commit_resume): Refactor
11060         as methods of the record_full_target class.
11061         (record_full_wait, record_full_stopped_by_watchpoint)
11062         (record_full_stopped_data_address)
11063         (record_full_stopped_by_sw_breakpoint)
11064         (record_full_supports_stopped_by_sw_breakpoint)
11065         (record_full_stopped_by_hw_breakpoint)
11066         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11067         methods of the record_full_base_target class.
11068         (record_full_store_registers, record_full_xfer_partial)
11069         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11070         Refactor as methods of the record_full_target class.
11071         (record_full_can_execute_reverse, record_full_get_bookmark)
11072         (record_full_goto_bookmark, record_full_execution_direction)
11073         (record_full_record_method, record_full_info, record_full_delete)
11074         (record_full_is_replaying, record_full_will_replay)
11075         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11076         (record_full_stop_replaying): Refactor as methods of the
11077         record_full_base_target class.
11078         (record_full_core_resume, record_full_core_kill)
11079         (record_full_core_fetch_registers)
11080         (record_full_core_prepare_to_store)
11081         (record_full_core_store_registers, record_full_core_xfer_partial)
11082         (record_full_core_insert_breakpoint)
11083         (record_full_core_remove_breakpoint)
11084         (record_full_core_has_execution): Refactor
11085         as methods of the record_full_core_target class.
11086         (record_full_base_target::supports_delete_record): New.
11087         (init_record_full_ops): Delete.
11088         (init_record_full_core_ops): Delete.
11089         (record_full_save): Refactor as method of the
11090         record_full_base_target class.
11091         (_initialize_record_full): Remove references to
11092         init_record_full_ops and init_record_full_core_ops.
11093
11094         * remote.c (remote_target, extended_remote_target): New classes.
11095         (remote_ops): Now a remote_target.
11096         (extended_remote_ops): Now an extended_remote_target.
11097         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11098         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11099         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11100         (remote_pass_signals, remote_set_syscall_catchpoint)
11101         (remote_program_signals, )
11102         (remote_thread_always_alive): Remove target_ops parameter.
11103         (remote_thread_alive, remote_thread_name)
11104         (remote_update_thread_list, remote_threads_extra_info)
11105         (remote_static_tracepoint_marker_at)
11106         (remote_static_tracepoint_markers_by_strid)
11107         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11108         (remote_open): Refactor as methods of remote_target.
11109         (extended_remote_open, extended_remote_detach)
11110         (extended_remote_attach, extended_remote_post_attach):
11111         (extended_remote_supports_disable_randomization)
11112         (extended_remote_create_inferior): : Refactor as method of
11113         extended_remote_target.
11114         (remote_set_permissions, remote_open_1, remote_detach)
11115         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11116         (remote_resume, remote_commit_resume, remote_stop)
11117         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11118         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11119         (remote_prepare_to_store, remote_store_registers)
11120         (remote_flash_erase, remote_flash_done, remote_files_info)
11121         (remote_kill, remote_mourn, remote_insert_breakpoint)
11122         (remote_remove_breakpoint, remote_insert_watchpoint)
11123         (remote_watchpoint_addr_within_range)
11124         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11125         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11126         (remote_supports_stopped_by_sw_breakpoint)
11127         (remote_stopped_by_hw_breakpoint)
11128         (remote_supports_stopped_by_hw_breakpoint)
11129         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11130         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11131         (remote_verify_memory): Refactor as methods of remote_target.
11132         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11133         parameter.
11134         (remote_xfer_partial, remote_get_memory_xfer_limit)
11135         (remote_search_memory, remote_rcmd, remote_memory_map)
11136         (remote_pid_to_str, remote_get_thread_local_address)
11137         (remote_get_tib_address, remote_read_description): Refactor as
11138         methods of remote_target.
11139         (remote_target::fileio_open, remote_target::fileio_pwrite)
11140         (remote_target::fileio_pread, remote_target::fileio_close): New.
11141         (remote_hostio_readlink, remote_hostio_fstat)
11142         (remote_filesystem_is_local, remote_can_execute_reverse)
11143         (remote_supports_non_stop, remote_supports_disable_randomization)
11144         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11145         (remote_supports_enable_disable_tracepoint)
11146         (remote_supports_string_tracing)
11147         (remote_can_run_breakpoint_commands, remote_trace_init)
11148         (remote_download_tracepoint, remote_can_download_tracepoint)
11149         (remote_download_trace_state_variable, remote_enable_tracepoint)
11150         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11151         (remote_trace_start, remote_get_trace_status)
11152         (remote_get_tracepoint_status, remote_trace_stop)
11153         (remote_trace_find, remote_get_trace_state_variable_value)
11154         (remote_save_trace_data, remote_get_raw_trace_data)
11155         (remote_set_disconnected_tracing, remote_core_of_thread)
11156         (remote_set_circular_trace_buffer, remote_traceframe_info)
11157         (remote_get_min_fast_tracepoint_insn_len)
11158         (remote_set_trace_buffer_size, remote_set_trace_notes)
11159         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11160         (remote_disable_btrace, remote_teardown_btrace)
11161         (remote_read_btrace, remote_btrace_conf)
11162         (remote_augmented_libraries_svr4_read, remote_load)
11163         (remote_pid_to_exec_file, remote_can_do_single_step)
11164         (remote_execution_direction, remote_thread_handle_to_thread_info):
11165         Refactor as methods of remote_target.
11166         (init_remote_ops, init_extended_remote_ops): Delete.
11167         (remote_can_async_p, remote_is_async_p, remote_async)
11168         (remote_thread_events, remote_upload_tracepoints)
11169         (remote_upload_trace_state_variables): Refactor as methods of
11170         remote_target.
11171         (_initialize_remote): Remove references to init_remote_ops and
11172         init_extended_remote_ops.
11173
11174         * remote-sim.c (gdbsim_target): New class.
11175         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11176         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11177         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11178         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11179         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11180         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11181         Refactor as methods of gdbsim_target.
11182         (gdbsim_ops): Now a gdbsim_target.
11183         (init_gdbsim_ops): Delete.
11184         (gdbsim_cntrl_c): Adjust.
11185         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11186
11187         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11188         (the_amd64_linux_nat_target): New.
11189         (amd64_linux_fetch_inferior_registers)
11190         (amd64_linux_store_inferior_registers): Refactor as methods of
11191         amd64_linux_nat_target.
11192         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11193         * i386-linux-nat.c: Don't include "linux-nat.h".
11194         (i386_linux_nat_target): New class.
11195         (the_i386_linux_nat_target): New.
11196         (i386_linux_fetch_inferior_registers)
11197         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11198         as methods of i386_linux_nat_target.
11199         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11200         * inf-child.c (inf_child_ops): Delete.
11201         (inf_child_fetch_inferior_registers)
11202         (inf_child_store_inferior_registers): Delete.
11203         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11204         methods of inf_child_target.
11205         (inf_child_target::supports_terminal_ours)
11206         (inf_child_target::terminal_init)
11207         (inf_child_target::terminal_inferior)
11208         (inf_child_target::terminal_ours_for_output)
11209         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11210         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11211         New.
11212         (inf_child_open, inf_child_disconnect, inf_child_close)
11213         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11214         (inf_child_post_startup_inferior, inf_child_can_run)
11215         (inf_child_pid_to_exec_file): Refactor as methods of
11216         inf_child_target.
11217         (inf_child_follow_fork): Delete.
11218         (inf_child_target::can_create_inferior)
11219         (inf_child_target::can_attach): New.
11220         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11221         (inf_child_target::has_stack, inf_child_target::has_registers)
11222         (inf_child_target::has_execution): New.
11223         (inf_child_fileio_open, inf_child_fileio_pwrite)
11224         (inf_child_fileio_pread, inf_child_fileio_fstat)
11225         (inf_child_fileio_close, inf_child_fileio_unlink)
11226         (inf_child_fileio_readlink, inf_child_use_agent)
11227         (inf_child_can_use_agent): Refactor as methods of
11228         inf_child_target.
11229         (return_zero, inf_child_target): Delete.
11230         (inf_child_target::inf_child_target): New.
11231         * inf-child.h: Include "target.h".
11232         (inf_child_target): Delete function prototype.
11233         (inf_child_target): New class.
11234         (inf_child_open_target, inf_child_mourn_inferior)
11235         (inf_child_maybe_unpush_target): Delete.
11236         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11237         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11238         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11239         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11240         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11241         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11242         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11243         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11244         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11245         methods of inf_ptrace_target.
11246         (inf_ptrace_target): Delete function.
11247         * inf-ptrace.h: Include "inf-child.h".
11248         (inf_ptrace_target): Delete function declaration.
11249         (inf_ptrace_target): New class.
11250         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11251         * linux-nat.c (linux_target): New.
11252         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11253         (linux_nat_target::~linux_nat_target): New.
11254         (linux_child_post_attach, linux_child_post_startup_inferior)
11255         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11256         (linux_child_remove_fork_catchpoint)
11257         (linux_child_insert_vfork_catchpoint)
11258         (linux_child_remove_vfork_catchpoint)
11259         (linux_child_insert_exec_catchpoint)
11260         (linux_child_remove_exec_catchpoint)
11261         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11262         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11263         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11264         (linux_nat_stopped_data_address)
11265         (linux_nat_stopped_by_sw_breakpoint)
11266         (linux_nat_supports_stopped_by_sw_breakpoint)
11267         (linux_nat_stopped_by_hw_breakpoint)
11268         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11269         (linux_nat_kill, linux_nat_mourn_inferior)
11270         (linux_nat_xfer_partial, linux_nat_thread_alive)
11271         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11272         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11273         (linux_child_static_tracepoint_markers_by_strid)
11274         (linux_nat_is_async_p, linux_nat_can_async_p)
11275         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11276         (linux_nat_supports_multi_process)
11277         (linux_nat_supports_disable_randomization, linux_nat_async)
11278         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11279         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11280         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11281         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11282         methods of linux_nat_target.
11283         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11284         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11285         parameter.
11286         (check_stopped_by_watchpoint): Adjust.
11287         (linux_xfer_partial): Delete.
11288         (linux_target_install_ops, linux_target, linux_nat_add_target):
11289         Delete.
11290         (linux_nat_target::linux_nat_target): New.
11291         * linux-nat.h: Include "inf-ptrace.h".
11292         (linux_nat_target): New.
11293         (linux_target, linux_target_install_ops, linux_nat_add_target):
11294         Delete function declarations.
11295         (linux_target): Declare global.
11296         * linux-thread-db.c (thread_db_target): New.
11297         (thread_db_target::thread_db_target): New.
11298         (thread_db_ops): Delete.
11299         (the_thread_db_target): New.
11300         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11301         (thread_db_update_thread_list, thread_db_pid_to_str)
11302         (thread_db_extra_thread_info)
11303         (thread_db_thread_handle_to_thread_info)
11304         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11305         (thread_db_resume): Refactor as methods of thread_db_target.
11306         (init_thread_db_ops): Delete.
11307         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11308         * x86-linux-nat.c: Don't include "linux-nat.h".
11309         (super_post_startup_inferior): Delete.
11310         (x86_linux_nat_target::~x86_linux_nat_target): New.
11311         (x86_linux_child_post_startup_inferior)
11312         (x86_linux_read_description, x86_linux_enable_btrace)
11313         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11314         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11315         methods of x86_linux_nat_target.
11316         (x86_linux_create_target): Delete.  Bits folded ...
11317         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11318         pointer.
11319         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11320         (x86_linux_nat_target): New class.
11321         (x86_linux_create_target): Delete.
11322         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11323         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11324         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11325         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11326         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11327         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11328         make extern.
11329         (x86_use_watchpoints): Delete.
11330         * x86-nat.h: Include "breakpoint.h" and "target.h".
11331         (x86_use_watchpoints): Delete.
11332         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11333         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11334         (x86_insert_watchpoint, x86_remove_watchpoint)
11335         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11336         (x86_stopped_by_hw_breakpoint): New declarations.
11337         (x86_nat_target): New template class.
11338
11339         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11340         (the_ppc_linux_nat_target): New.
11341         (ppc_linux_fetch_inferior_registers)
11342         (ppc_linux_can_use_hw_breakpoint)
11343         (ppc_linux_region_ok_for_hw_watchpoint)
11344         (ppc_linux_ranged_break_num_registers)
11345         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11346         (ppc_linux_insert_mask_watchpoint)
11347         (ppc_linux_remove_mask_watchpoint)
11348         (ppc_linux_can_accel_watchpoint_condition)
11349         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11350         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11351         (ppc_linux_watchpoint_addr_within_range)
11352         (ppc_linux_masked_watch_num_registers)
11353         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11354         (ppc_linux_read_description): Refactor as methods of
11355         ppc_linux_nat_target.
11356         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11357
11358         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11359         (procfs_target): New class.
11360         (the_procfs_target): New.
11361         (procfs_target): Delete function.
11362         (procfs_auxv_parse, procfs_attach, procfs_detach)
11363         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11364         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11365         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11366         (procfs_create_inferior, procfs_update_thread_list)
11367         (procfs_thread_alive, procfs_pid_to_str)
11368         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11369         (procfs_stopped_data_address, procfs_insert_watchpoint)
11370         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11371         (proc_find_memory_regions, procfs_info_proc)
11372         (procfs_make_note_section): Refactor as methods of procfs_target.
11373         (_initialize_procfs): Adjust.
11374         * sol-thread.c (sol_thread_target): New class.
11375         (sol_thread_ops): Now a sol_thread_target.
11376         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11377         (sol_thread_fetch_registers, sol_thread_store_registers)
11378         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11379         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11380         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11381         (init_sol_thread_ops): Delete.
11382         (_initialize_sol_thread): Adjust.  Remove references to
11383         init_sol_thread_ops and complete_target_initialization.
11384
11385         * windows-nat.c (windows_nat_target): New class.
11386         (windows_fetch_inferior_registers)
11387         (windows_store_inferior_registers, windows_resume, windows_wait)
11388         (windows_attach, windows_detach, windows_pid_to_exec_file)
11389         (windows_files_info, windows_create_inferior)
11390         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11391         (windows_close, windows_pid_to_str, windows_xfer_partial)
11392         (windows_get_tib_address, windows_get_ada_task_ptid)
11393         (windows_thread_name, windows_thread_alive): Refactor as
11394         windows_nat_target methods.
11395         (do_initial_windows_stuff): Adjust.
11396         (windows_target): Delete function.
11397         (_initialize_windows_nat): Adjust.
11398
11399         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11400         (darwin_mourn_inferior, darwin_kill_inferior)
11401         (darwin_create_inferior, darwin_attach, darwin_detach)
11402         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11403         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11404         (darwin_supports_multi_process): Refactor as darwin_nat_target
11405         methods.
11406         (darwin_resume_to, darwin_files_info): Delete.
11407         (_initialize_darwin_inferior): Rename to ...
11408         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11409         * darwin-nat.h: Include "inf-child.h".
11410         (darwin_nat_target): New class.
11411         (darwin_complete_target): Delete.
11412         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11413         (darwin_target): New.
11414         (i386_darwin_fetch_inferior_registers)
11415         (i386_darwin_store_inferior_registers): Refactor as methods of
11416         darwin_nat_target.
11417         (darwin_complete_target): Delete, with ...
11418         (_initialize_i386_darwin_nat): ... bits factored out here.
11419
11420         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11421         (the_alpha_linux_nat_target): New.
11422         (alpha_linux_register_u_offset): Refactor as
11423         alpha_linux_nat_target method.
11424         (_initialize_alpha_linux_nat): Adjust.
11425         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11426         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11427         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11428         methods of linux_nat_trad_target.
11429         (linux_trad_target): Delete.
11430         * linux-nat-trad.h (linux_trad_target): Delete function.
11431         (linux_nat_trad_target): New class.
11432         * mips-linux-nat.c (mips_linux_nat_target): New class.
11433         (super_fetch_registers, super_store_registers, super_close):
11434         Delete.
11435         (the_mips_linux_nat_target): New.
11436         (mips64_linux_regsets_fetch_registers)
11437         (mips64_linux_regsets_store_registers)
11438         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11439         (mips_linux_register_u_offset, mips_linux_read_description)
11440         (mips_linux_can_use_hw_breakpoint)
11441         (mips_linux_stopped_by_watchpoint)
11442         (mips_linux_stopped_data_address)
11443         (mips_linux_region_ok_for_hw_watchpoint)
11444         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11445         (mips_linux_close): Refactor as methods of mips_linux_nat.
11446         (_initialize_mips_linux_nat): Adjust to C++ification.
11447
11448         * aix-thread.c (aix_thread_target): New class.
11449         (aix_thread_ops): Now an aix_thread_target.
11450         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11451         (aix_thread_fetch_registers, aix_thread_store_registers)
11452         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11453         (aix_thread_thread_alive, aix_thread_pid_to_str)
11454         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11455         Refactor as methods of aix_thread_target.
11456         (init_aix_thread_ops): Delete.
11457         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11458         and complete_target_initialization.
11459         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11460         (rs6000_nat_target): New class.
11461         (the_rs6000_nat_target): New.
11462         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11463         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11464         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11465         (super_create_inferior): Delete.
11466         (_initialize_rs6000_nat): Adjust to C++ification.
11467
11468         * arm-linux-nat.c (arm_linux_nat_target): New class.
11469         (the_arm_linux_nat_target): New.
11470         (arm_linux_fetch_inferior_registers)
11471         (arm_linux_store_inferior_registers, arm_linux_read_description)
11472         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11473         (arm_linux_remove_hw_breakpoint)
11474         (arm_linux_region_ok_for_hw_watchpoint)
11475         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11476         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11477         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11478         arm_linux_nat_target.
11479         (_initialize_arm_linux_nat): Adjust to C++ification.
11480
11481         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11482         (the_aarch64_linux_nat_target): New.
11483         (aarch64_linux_fetch_inferior_registers)
11484         (aarch64_linux_store_inferior_registers)
11485         (aarch64_linux_child_post_startup_inferior)
11486         (aarch64_linux_read_description)
11487         (aarch64_linux_can_use_hw_breakpoint)
11488         (aarch64_linux_insert_hw_breakpoint)
11489         (aarch64_linux_remove_hw_breakpoint)
11490         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11491         (aarch64_linux_region_ok_for_hw_watchpoint)
11492         (aarch64_linux_stopped_data_address)
11493         (aarch64_linux_stopped_by_watchpoint)
11494         (aarch64_linux_watchpoint_addr_within_range)
11495         (aarch64_linux_can_do_single_step): Refactor as methods of
11496         aarch64_linux_nat_target.
11497         (super_post_startup_inferior): Delete.
11498         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11499
11500         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11501         (the_hppa_linux_nat_target): New.
11502         (hppa_linux_fetch_inferior_registers)
11503         (hppa_linux_store_inferior_registers): Refactor as methods of
11504         hppa_linux_nat_target.
11505         (_initialize_hppa_linux_nat): Adjust to C++ification.
11506
11507         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11508         (the_ia64_linux_nat_target): New.
11509         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11510         (ia64_linux_stopped_data_address)
11511         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11512         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11513         ia64_linux_nat_target methods.
11514         (super_xfer_partial): Delete.
11515         (_initialize_ia64_linux_nat): Adjust to C++ification.
11516
11517         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11518         (the_m32r_linux_nat_target): New.
11519         (m32r_linux_fetch_inferior_registers)
11520         (m32r_linux_store_inferior_registers): Refactor as
11521         m32r_linux_nat_target methods.
11522         (_initialize_m32r_linux_nat): Adjust to C++ification.
11523
11524         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11525         (the_m68k_linux_nat_target): New.
11526         (m68k_linux_fetch_inferior_registers)
11527         (m68k_linux_store_inferior_registers): Refactor as
11528         m68k_linux_nat_target methods.
11529         (_initialize_m68k_linux_nat): Adjust to C++ification.
11530
11531         * s390-linux-nat.c (s390_linux_nat_target): New class.
11532         (the_s390_linux_nat_target): New.
11533         (s390_linux_fetch_inferior_registers)
11534         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11535         (s390_insert_watchpoint, s390_remove_watchpoint)
11536         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11537         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11538         (s390_auxv_parse, s390_read_description): Refactor as methods of
11539         s390_linux_nat_target.
11540         (_initialize_s390_nat): Adjust to C++ification.
11541
11542         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11543         (the_sparc_linux_nat_target): New.
11544         (_initialize_sparc_linux_nat): Adjust to C++ification.
11545         * sparc-nat.c (sparc_fetch_inferior_registers)
11546         (sparc_store_inferior_registers): Remove target_ops parameter.
11547         * sparc-nat.h (sparc_fetch_inferior_registers)
11548         (sparc_store_inferior_registers): Remove target_ops parameter.
11549         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11550         (the_sparc64_linux_nat_target): New.
11551         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11552
11553         * spu-linux-nat.c (spu_linux_nat_target): New class.
11554         (the_spu_linux_nat_target): New.
11555         (spu_child_post_startup_inferior, spu_child_post_attach)
11556         (spu_child_wait, spu_fetch_inferior_registers)
11557         (spu_store_inferior_registers, spu_xfer_partial)
11558         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11559         methods.
11560         (_initialize_spu_nat): Adjust to C++ification.
11561
11562         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11563         (the_tilegx_linux_nat_target): New.
11564         (fetch_inferior_registers, store_inferior_registers):
11565         Refactor as methods.
11566         (_initialize_tile_linux_nat): Adjust to C++ification.
11567
11568         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11569         (the_xtensa_linux_nat_target): New.
11570         (xtensa_linux_fetch_inferior_registers)
11571         (xtensa_linux_store_inferior_registers): Refactor as
11572         xtensa_linux_nat_target methods.
11573         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11574
11575         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11576         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11577         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11578         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11579         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11580         (fbsd_stopped_by_sw_breakpoint)
11581         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11582         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11583         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11584         (fbsd_post_startup_inferior, fbsd_post_attach)
11585         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11586         (fbsd_set_syscall_catchpoint)
11587         (super_xfer_partial, super_resume, super_wait)
11588         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11589         (fbsd_handle_debug_trap): Remove target_ops parameter.
11590         (fbsd_nat_add_target): Delete.
11591         * fbsd-nat.h: Include "inf-ptrace.h".
11592         (fbsd_nat_add_target): Delete.
11593         (USE_SIGTRAP_SIGINFO): Define.
11594         (fbsd_nat_target): New class.
11595
11596         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11597         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11598         (amd64bsd_target): Delete.
11599         * amd64-bsd-nat.h: New file.
11600         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11601         "x86-bsd-nat.h".
11602         (amd64_fbsd_nat_target): New class.
11603         (the_amd64_fbsd_nat_target): New.
11604         (amd64fbsd_read_description): Refactor as method of
11605         amd64_fbsd_nat_target.
11606         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11607         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11608         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11609         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11610         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11611         (i386bsd_target): Delete.
11612         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11613         (i386bsd_fetch_inferior_registers)
11614         (i386bsd_store_inferior_registers): Declare.
11615         (i386_bsd_nat_target): New class.
11616         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11617         (the_i386_fbsd_nat_target): New.
11618         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11619         i386_fbsd_nat_target methods.
11620         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11621         (_initialize_i386fbsd_nat): Adjust to C++ification.
11622         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11623         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11624         (_initialize_x86_bsd_nat): Adjust to C++ification.
11625         * x86-bsd-nat.h: Include "x86-nat.h".
11626         (x86bsd_target): Delete declaration.
11627         (x86bsd_nat_target): New class.
11628
11629         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11630         (the_aarch64_fbsd_nat_target): New.
11631         (aarch64_fbsd_fetch_inferior_registers)
11632         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11633         aarch64_fbsd_nat_target.
11634         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11635         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11636         (the_alpha_bsd_nat_target): New.
11637         (alphabsd_fetch_inferior_registers)
11638         (alphabsd_store_inferior_registers): Refactor as
11639         alpha_bsd_nat_target methods.
11640         (_initialize_alphabsd_nat): Refactor as methods of
11641         alpha_bsd_nat_target.
11642         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11643         (the_amd64_nbsd_nat_target): New.
11644         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11645         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11646         (the_amd64_obsd_nat_target): New.
11647         (_initialize_amd64obsd_nat): Adjust to C++ification.
11648         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11649         (the_arm_fbsd_nat_target): New.
11650         (arm_fbsd_fetch_inferior_registers)
11651         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11652         (_initialize_arm_fbsd_nat): Refactor as methods of
11653         arm_fbsd_nat_target.
11654         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11655         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11656         (the_arm_netbsd_nat_target): New.
11657         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11658         arm_netbsd_nat_target.
11659         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11660         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11661         (the_hppa_nbsd_nat_target): New.
11662         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11663         hppa_nbsd_nat_target methods.
11664         (_initialize_hppanbsd_nat): Adjust to C++ification.
11665         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11666         (the_hppa_obsd_nat_target): New.
11667         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11668         methods of hppa_obsd_nat_target.
11669         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11670         add_target.
11671         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11672         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11673         add_target.
11674         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11675         (_initialize_i386obsd_nat): Use add_target.
11676         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11677         (the_m68k_bsd_nat_target): New.
11678         (m68kbsd_fetch_inferior_registers)
11679         (m68kbsd_store_inferior_registers): Refactor as methods of
11680         m68k_bsd_nat_target.
11681         (_initialize_m68kbsd_nat): Adjust to C++ification.
11682         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11683         (the_mips_fbsd_nat_target): New.
11684         (mips_fbsd_fetch_inferior_registers)
11685         (mips_fbsd_store_inferior_registers): Refactor as methods of
11686         mips_fbsd_nat_target.
11687         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11688         add_target.
11689         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11690         (the_mips_nbsd_nat_target): New.
11691         (mipsnbsd_fetch_inferior_registers)
11692         (mipsnbsd_store_inferior_registers): Refactor as methods of
11693         mips_nbsd_nat_target.
11694         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11695         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11696         (the_mips64_obsd_nat_target): New.
11697         (mips64obsd_fetch_inferior_registers)
11698         (mips64obsd_store_inferior_registers): Refactor as methods of
11699         mips64_obsd_nat_target.
11700         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11701         add_target.
11702         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11703         nbsd_nat_target.
11704         * nbsd-nat.h: Include "inf-ptrace.h".
11705         (nbsd_nat_target): New class.
11706         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11707         (obsd_wait): Refactor as methods of obsd_nat_target.
11708         (obsd_add_target): Delete.
11709         * obsd-nat.h: Include "inf-ptrace.h".
11710         (obsd_nat_target): New class.
11711         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11712         (the_ppc_fbsd_nat_target): New.
11713         (ppcfbsd_fetch_inferior_registers)
11714         (ppcfbsd_store_inferior_registers): Refactor as methods of
11715         ppc_fbsd_nat_target.
11716         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11717         add_target.
11718         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11719         (the_ppc_nbsd_nat_target): New.
11720         (ppcnbsd_fetch_inferior_registers)
11721         (ppcnbsd_store_inferior_registers): Refactor as methods of
11722         ppc_nbsd_nat_target.
11723         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11724         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11725         (the_ppc_obsd_nat_target): New.
11726         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11727         methods of ppc_obsd_nat_target.
11728         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11729         add_target.
11730         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11731         (the_sh_nbsd_nat_target): New.
11732         (shnbsd_fetch_inferior_registers)
11733         (shnbsd_store_inferior_registers): Refactor as methods of
11734         sh_nbsd_nat_target.
11735         (_initialize_shnbsd_nat): Adjust to C++ification.
11736         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11737         (inf_ptrace_xfer_partial): Delete.
11738         (sparc_xfer_partial, sparc_target): Delete.
11739         * sparc-nat.h (sparc_fetch_inferior_registers)
11740         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11741         (sparc_target): Delete function declaration.
11742         (sparc_target): New template class.
11743         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11744         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11745         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11746         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11747         add_target.
11748         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11749         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11750         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11751         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11752         add_target.
11753         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11754         (the_vax_bsd_nat_target): New.
11755         (vaxbsd_fetch_inferior_registers)
11756         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11757         methods.
11758         (_initialize_vaxbsd_nat): Adjust to C++ification.
11759
11760         * bsd-kvm.c (bsd_kvm_target): New class.
11761         (bsd_kvm_ops): Now a bsd_kvm_target.
11762         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11763         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11764         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11765         bsd_kvm_target.
11766         (bsd_kvm_return_one): Delete.
11767         (bsd_kvm_add_target): Adjust to C++ification.
11768
11769         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11770         (nto_procfs_target_procfs): New classes.
11771         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11772         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11773         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11774         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11775         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11776         (procfs_remove_hw_breakpoint, procfs_resume)
11777         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11778         (procfs_kill_inferior, procfs_store_registers)
11779         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11780         as methods of nto_procfs_target.
11781         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11782         (nto_native_ops): Delete.
11783         (procfs_open, procfs_native_open): Delete.
11784         (nto_native_ops): Now an nto_procfs_target_native.
11785         (init_procfs_targets): Adjust to C++ification.
11786         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11787         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11788         Refactor as methods of nto_procfs_target.
11789
11790         * go32-nat.c (go32_nat_target): New class.
11791         (the_go32_nat_target): New.
11792         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11793         (go32_store_registers, go32_xfer_partial, go32_files_info)
11794         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11795         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11796         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11797         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11798         (go32_target): Delete.
11799         (_initialize_go32_nat): Adjust to C++ification.
11800
11801         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11802         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11803         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11804         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11805         gnu_nat_target.
11806         (gnu_target): Delete.
11807         * gnu-nat.h (gnu_target): Delete.
11808         (gnu_nat_target): New class.
11809         * i386-gnu-nat.c (gnu_base_target): New.
11810         (i386_gnu_nat_target): New class.
11811         (the_i386_gnu_nat_target): New.
11812         (_initialize_i386gnu_nat): Adjust to C++ification.
11813
11814 2018-05-02  Pedro Alves  <palves@redhat.com>
11815
11816         * bfd-target.c (target_bfd_xclose): Rename to ...
11817         (target_bfd_close): ... this.
11818         (target_bfd_reopen): Adjust.
11819         * target.c (target_close): Remove references to to_xclose.
11820         * target.h (target_ops::to_xclose): Delete.
11821         (target_ops::to_close): Update comments.
11822
11823 2018-05-02  Pedro Alves  <palves@redhat.com>
11824
11825         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11826         "linux-nat.h".
11827         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11828         * inf-ptrace.c (inf_ptrace_register_u_offset)
11829         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11830         (inf_ptrace_store_register, inf_ptrace_store_registers)
11831         (inf_ptrace_trad_target): Move to ...
11832         * linux-nat-trad.c: ... this new file.
11833         * linux-nat-trad.h: New file.
11834         * linux-nat.c (linux_target_install_ops): Make extern.
11835         (linux_trad_target): Delete.
11836         * linux-nat.h (linux_trad_target): Delete declaration.
11837         (linux_target_install_ops): Declare.
11838         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11839         "linux-nat.h".
11840
11841 2018-05-02  Pedro Alves  <palves@redhat.com>
11842
11843         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11844         procfs_target/add_target here.
11845         * procfs.c (procfs_target): Make static.
11846         (_initialize_procfs): Call add_target here.
11847         * procfs.h (struct target_ops): Remove forward declaration.
11848         (procfs_target): Remove declaration.
11849         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11850
11851 2018-05-02  Pedro Alves  <palves@redhat.com>
11852
11853         * procfs.c (procfs_stopped_by_watchpoint)
11854         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11855         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11856         Forward declare.
11857         (procfs_use_watchpoints): Delete, move contents...
11858         (procfs_target): ... here.
11859         * procfs.h (procfs_use_watchpoints): Delete declaration.
11860         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11861         procfs_use_watchpoints.
11862         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11863         procfs_use_watchpoints.
11864
11865 2018-05-02  Tom Tromey  <tom@tromey.com>
11866
11867         PR python/20084:
11868         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11869         and var_zuinteger_unlimited.
11870         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11871         and PARAM_ZUINTEGER_UNLIMITED.
11872         (set_parameter_value): Handle var_zuinteger and
11873         var_zuinteger_unlimited.
11874         (add_setshow_generic): Likewise.
11875         (parmpy_init): Likewise.
11876
11877 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11878
11879         PR rust/23124
11880         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11881         pointer is not null before dereferencing it.
11882
11883 2018-04-30  Tom Tromey  <tom@tromey.com>
11884
11885         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11886         is_mi_like_p.
11887
11888 2018-04-30  Tom Tromey  <tom@tromey.com>
11889
11890         * breakpoint.c (mention): Remove use of is_mi_like_p.
11891         (print_mention_ranged_breakpoint): Likewise.
11892         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11893         of is_mi_like_p.
11894
11895 2018-04-30  Tom Tromey  <tom@tromey.com>
11896
11897         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11898
11899 2018-04-30  Tom Tromey  <tom@tromey.com>
11900
11901         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11902         (info_spu_event_command): Remove some uses of is_mi_like_p.
11903
11904 2018-04-30  Tom Tromey  <tom@tromey.com>
11905
11906         * python/py-framefilter.c (py_print_single_arg)
11907         (enumerate_locals, py_print_args, py_print_frame): Remove some
11908         uses of is_mi_like_p.
11909
11910 2018-04-30  Tom Tromey  <tom@tromey.com>
11911
11912         * ui-out.c: Update.
11913         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11914         * ui-out.h (ui_out::is_mi_like_p): Now const.
11915         (ui_out::do_is_mi_like_p): Now const.
11916         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11917
11918 2018-04-30  Tom Tromey  <tom@tromey.com>
11919
11920         * varobj.c (varobj_set_visualizer): Use new_reference.
11921         * python/python.c (gdbpy_decode_line): Use new_reference.
11922         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11923         new_reference.
11924
11925 2018-04-30  Tom Tromey  <tom@tromey.com>
11926
11927         * varobj.c (install_new_value): Use new_reference.
11928         * value.h (value_incref): Return void.  Swap intro comment with
11929         value_decref.
11930         * value.c (set_value_parent): Use new_reference.
11931         (value_incref): Return void.  Update intro comment.
11932         (release_value): Use new_reference.
11933         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11934
11935 2018-04-30  Tom Tromey  <tom@tromey.com>
11936
11937         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11938         * gdb_bfd.h (new_bfd_ref): Remove.
11939         (gdb_bfd_open): Update comment.
11940         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11941         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11942         (gdb_bfd_fdopenr): Use new_reference.
11943         * exec.c (exec_file_attach): Use new_reference.
11944
11945 2018-04-30  Tom Tromey  <tom@tromey.com>
11946
11947         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11948         method.
11949
11950 2018-04-30  Tom Tromey  <tom@tromey.com>
11951
11952         * jit.c (jit_read_code_entry): Use type_align.
11953         * i386-tdep.c (i386_gdbarch_init): Don't call
11954         set_gdbarch_long_long_align_bit.
11955         * gdbarch.sh: Remove long_long_align_bit.
11956         * gdbarch.c, gdbarch.h: Rebuild.
11957         * arc-tdep.c (arc_type_align): New function.
11958         (arc_gdbarch_init): Use arc_type_align.  Don't call
11959         set_gdbarch_long_long_align_bit.
11960
11961 2018-04-30  Tom Tromey  <tom@tromey.com>
11962
11963         * rust-lang.c (rust_type_alignment): Remove.
11964         (rust_composite_type): Use type_align.
11965
11966 2018-04-30  Tom Tromey  <tom@tromey.com>
11967
11968         * NEWS: Mention Type.align.
11969         * python/py-type.c (typy_get_alignof): New function.
11970         (type_object_getset): Add "alignof".
11971
11972 2018-04-30  Tom Tromey  <tom@tromey.com>
11973
11974         PR exp/17095:
11975         * NEWS: Update.
11976         * std-operator.def (UNOP_ALIGNOF): New operator.
11977         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11978         New.
11979         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11980         * c-lang.c (c_op_print_tab): Add alignof.
11981         * c-exp.y (ALIGNOF): New token.
11982         (exp): Add "ALIGNOF" production.
11983         (ident_tokens): Add _Alignof and alignof.
11984
11985 2018-04-30  Tom Tromey  <tom@tromey.com>
11986
11987         * i386-tdep.c (i386_type_align): New function.
11988         (i386_gdbarch_init): Update.
11989         * gdbarch.sh (type_align): New method.
11990         * gdbarch.c, gdbarch.h: Rebuild.
11991         * arch-utils.h (default_type_align): Declare.
11992         * arch-utils.c (default_type_align): New function.
11993         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11994         (struct type) <align_log2>: New field.
11995         <instance_flags>: Now a bitfield.
11996         (TYPE_RAW_ALIGN): New macro.
11997         (type_align, type_raw_align, set_type_align): Declare.
11998         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11999         functions.
12000         * dwarf2read.c (quirk_rust_enum): Set type alignment.
12001         (get_alignment, maybe_set_alignment): New functions.
12002         (read_structure_type, read_enumeration_type, read_array_type)
12003         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
12004         (read_subrange_type, read_base_type): Set type alignment.
12005
12006 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
12007
12008         * dwarf2read.c (read_index_from_section): Use bool.
12009
12010 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
12011
12012         PR gdb/22950
12013         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
12014         with #ifdef.
12015
12016 2018-04-29  John Reiser  <jreiser@BitWagon.com>
12017
12018         PR build/22873
12019         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
12020         last step, and do it atomically.
12021
12022 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
12023
12024         * compile/compile-c-types.c (convert_int, convert_float):
12025         Update for C FE v1.
12026
12027 2018-04-27  Tom Tromey  <tom@tromey.com>
12028
12029         PR rust/22545:
12030         * rust-lang.c (rust_inclusive_range_type_p): New function.
12031         (rust_range): Handle inclusive ranges.
12032         (rust_compute_range): Likewise.
12033         * rust-exp.y (struct rust_op) <inclusive>: New field.
12034         (DOTDOTEQ): New constant.
12035         (range_expr): Add "..=" productions.
12036         (operator_tokens): Add "..=" token.
12037         (ast_range): Add "inclusive" parameter.
12038         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12039         ranges.
12040         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12041         bounds values.
12042         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12043         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12044         Update comments.
12045         * expprint.c (print_subexp_standard): Handle new bounds values.
12046         (dump_subexp_body_standard): Likewise.
12047
12048 2018-04-27  Tom Tromey  <tom@tromey.com>
12049
12050         * configure: Rebuild.
12051         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12052         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12053         "OVERRIDE".
12054         (class symbol_needs_eval_context): Likewise.
12055         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12056         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12057         "virtual".
12058         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12059         "override".
12060         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12061         * aarch64-tdep.c (instruction_reader::read): Use "override".
12062         (instruction_reader_test::read): Likewise.
12063         * arm-tdep.c (instruction_reader::read): Use "override".
12064         (instruction_reader_thumb::read): Likewise.
12065
12066 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12067
12068         PR remote/9665
12069         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12070         instead of remote_send.
12071         (remote_send): Remove.
12072
12073 2018-04-26  Pedro Alves  <palves@redhat.com>
12074
12075         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12076         find_function_start_sal instead of find_pc_line.
12077
12078 2018-04-26  Pedro Alves  <palves@redhat.com>
12079
12080         * breakpoint.c (set_breakpoint_location_function): Handle
12081         mst_data_gnu_ifunc.
12082         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12083         * elfread.c (elf_symtab_read): Give data symbols with
12084         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12085         (elf_rel_plt_read): Update comment.
12086         * linespec.c (convert_linespec_to_sals): Handle
12087         mst_data_gnu_ifunc.
12088         (minsym_found): Handle mst_data_gnu_ifunc.
12089         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12090         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12091         * parse.c (find_minsym_type_and_address): Handle
12092         mst_data_gnu_ifunc.
12093         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12094         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12095         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12096         comment.
12097         <mst_data_gnu_ifunc>: New enumerator.
12098
12099 2018-04-26  Pedro Alves  <palves@redhat.com>
12100
12101         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12102         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12103         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12104         Handle it.
12105         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12106         (lookup_minimal_symbol_by_pc): Adjust.
12107         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12108         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12109         * minsyms.h (lookup_msym_prefer): New enum.
12110         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12111         parameter by a lookup_msym_prefer parameter.
12112
12113 2018-04-26  Pedro Alves  <palves@redhat.com>
12114
12115         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12116         ends in "@plt" instead of looking at the symbol's section.
12117
12118 2018-04-26  Pedro Alves  <palves@redhat.com>
12119
12120         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12121         all references.
12122         (find_pc_partial_function_gnu_ifunc): Rename to ...
12123         (find_pc_partial_function): ... this, and remove references to
12124         'is_gnu_ifunc_p'.
12125         (find_pc_partial_function): Delete old implementation.
12126         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12127
12128 2018-04-26  Pedro Alves  <palves@redhat.com>
12129
12130         * linespec.c (struct bound_minimal_symbol_search_key): New.
12131         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12132         skip first line if we found a GNU ifunc minimal symbol by name.
12133         (compare_msymbols): Change parameters to work with a destructured
12134         lhs minsym.
12135         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12136         functions.
12137
12138 2018-04-26  Pedro Alves  <palves@redhat.com>
12139
12140         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12141         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12142         address/name.
12143         (add_location_to_breakpoint): Store the minsym and the objfile in
12144         the breakpoint location.
12145         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12146         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12147         Record the minsym in the sal.
12148         * symtab.h (symtab_and_line) <msymbol>: New field.
12149
12150 2018-04-26  Pedro Alves  <palves@redhat.com>
12151
12152         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12153         unless we actually resolved the ifunc.
12154
12155 2018-04-26  Pedro Alves  <palves@redhat.com>
12156
12157         * c-exp.y (variable production): Prefer ifunc minsyms over
12158         regular function symbols.
12159         * symtab.c (find_gnu_ifunc): New function.
12160         * minsyms.h (lookup_msym_prefer): New enum.
12161         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12162         parameter by a lookup_msym_prefer parameter.
12163         * symtab.h (find_gnu_ifunc): New declaration.
12164
12165 2018-04-26  Pedro Alves  <palves@redhat.com>
12166
12167         * blockframe.c (find_gnu_ifunc_target_type): New function.
12168         (find_function_type): New.
12169         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12170         return a value with a memory address.
12171         (eval_call): For calls to GNU ifunc functions, try to find the
12172         type of the target function from the type that the resolver
12173         returns.
12174         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12175         symbols.
12176         * infcall.c (find_function_return_type): Delete.
12177         (find_function_addr): Add 'function_type' parameter.  For calls to
12178         GNU ifunc functions, try to find the type of the target function
12179         from the type that the resolver returns, and return it via
12180         FUNCTION_TYPE.
12181         (call_function_by_hand_dummy): Adjust to use the function type
12182         returned by find_function_addr.
12183         (find_function_addr): Add 'function_type' parameter and move
12184         description here.
12185         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12186         declarations.
12187
12188 2018-04-26  Pedro Alves  <palves@redhat.com>
12189
12190         * c-exp.y (variable production): Skip finding an alias for ifunc
12191         symbols.
12192
12193 2018-04-26  Pedro Alves  <palves@redhat.com>
12194
12195         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12196
12197 2018-04-25  Pedro Alves  <palves@redhat.com>
12198
12199         * infcmd.c (kill_command): Print the pid as string, not the whole
12200         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12201         message.
12202         * remote.c (remote_detach_1): Print the pid as string, not the
12203         whole thread's ptid.
12204
12205 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12206             Sergio Durigan Junior  <sergiodj@redhat.com>
12207             Pedro Alves  <palves@redhat.com>
12208
12209         * infcmd.c (kill_command): Print message when inferior has
12210         been killed.
12211         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12212         '1'.
12213         (add_inferior): Improve message printed when
12214         'print_inferior_events' is on.
12215         (exit_inferior): Remove message printed when
12216         'print_inferior_events' is on.
12217         (detach_inferior): Improve message printed when
12218         'print_inferior_events' is on.
12219         (initialize_inferiors): Use 'add_inferior_silent' to set
12220         'current_inferior_'.
12221         * inferior.h (print_inferior_events): Declare here as
12222         'extern'.
12223         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12224         '[Detaching...]' messages when 'print_inferior_events' is on.
12225         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12226         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12227         'Detaching after fork from child...', replace it by '... from
12228         parent...'.
12229         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12230         prefix/suffix when printing 'Detaching...' messages.  Print
12231         them when 'print_inferior_events' is on.
12232         * remote.c (remote_detach_1): Print message when detaching
12233         from inferior and '!is_fork_parent'.
12234
12235 2018-04-24  Tom Tromey  <tom@tromey.com>
12236
12237         * cli-out.h: Reindent.
12238
12239 2018-04-24  Tom Tromey  <tom@tromey.com>
12240
12241         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12242         (cli_ui_out::do_field_string): Use fputs_filtered.
12243         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12244
12245 2018-04-23  Tom Tromey  <tom@tromey.com>
12246
12247         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12248         gdb::unique_xmalloc_ptr.
12249
12250 2018-04-23  Tom Tromey  <tom@tromey.com>
12251
12252         * configure: Rebuild.
12253
12254 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12255
12256         PR gdb/23095
12257         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12258         prepare_for_testing.  Set normal_bp to r_debug_state if target
12259         is bsd.
12260
12261 2018-04-21  Pedro Alves  <palves@redhat.com>
12262             Rajendra SY  <rajendra.sy@gmail.com>
12263
12264         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12265         * remote.c (extended_remote_attach): In all-stop mode, mark the
12266         thread as executing.
12267
12268 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12269
12270         * thread.c (thread_apply_all_command): Fix comment.
12271         (thread_command): Fix comment.
12272
12273 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12274
12275         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12276         parameter.
12277         * features/aarch64-core.c (create_feature_aarch64_core):
12278         Regenerate.
12279         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12280         Likewise.
12281         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12282         Likewise.
12283         * features/i386/32bit-avx512.c
12284         (create_feature_i386_32bit_avx512): Likewise.
12285         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12286         Likewise.
12287         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12288         Likewise.
12289         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12290         Likewise.
12291         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12292         Likewise.
12293         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12294         Likewise.
12295         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12296         Likewise.
12297         * features/i386/64bit-avx512.c
12298         (create_feature_i386_64bit_avx512): Likewise.
12299         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12300         Likewise.
12301         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12302         Likewise.
12303         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12304         Likewise.
12305         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12306         Likewise.
12307         * features/i386/64bit-segments.c
12308         (create_feature_i386_64bit_segments): Likewise.
12309         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12310         Likewise.
12311         * features/i386/x32-core.c
12312         (create_feature_i386_x32_core): Likewise.
12313         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12314         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12315         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12316         * target-descriptions.c: In generated code, don't pass xml
12317         filename.
12318
12319 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12320
12321         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12322         (print_xml_feature::visit_post): Likewise.
12323         (print_xml_feature::visit): Likewise.
12324         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12325         (print_xml_feature): Add new class.
12326         * regformats/regdat.sh: Null xmltarget on feature targets.
12327         * target-descriptions.c (struct target_desc): Add xmltarget.
12328         (maintenance_check_tdesc_xml_convert): Add unittest function.
12329         (tdesc_get_features_xml): Add function to get xml.
12330         (maintenance_check_xml_descriptions): Test xml generation.
12331         * xml-tdesc.c (string_read_description_xml): Add function.
12332         * xml-tdesc.h (string_read_description_xml): Add declaration.
12333
12334 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12335
12336         * features/Makefile: Add feature marker to targets with new style
12337         target descriptions.
12338         * regformats/aarch64.dat: Regenerate.
12339         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12340         * regformats/i386/amd64-avx-linux.dat: Likewise.
12341         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12342         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12343         * regformats/i386/amd64-linux.dat: Likewise.
12344         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12345         * regformats/i386/amd64.dat: Likewise.
12346         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12347         * regformats/i386/i386-avx-linux.dat: Likewise.
12348         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12349         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12350         * regformats/i386/i386-linux.dat: Likewise.
12351         * regformats/i386/i386-mmx-linux.dat: Likewise.
12352         * regformats/i386/i386-mpx-linux.dat: Likewise.
12353         * regformats/i386/i386.dat: Likewise.
12354         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12355         * regformats/i386/x32-avx-linux.dat: Likewise.
12356         * regformats/i386/x32-linux.dat: Likewise.
12357         * regformats/tic6x-c62x-linux.dat: Likewise.
12358         * regformats/tic6x-c64x-linux.dat: Likewise.
12359         * regformats/tic6x-c64xp-linux.dat: Likewise.
12360         * regformats/regdat.sh: Parse feature marker.
12361
12362 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12363
12364         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12365         (tdesc_osabi_name): Likewise.
12366         * target-descriptions.c (tdesc_architecture_name): Add new
12367         function.
12368         (tdesc_osabi_name): Likewise.
12369
12370 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12371
12372         * common/tdesc.c (tdesc_predefined_type): Move to here.
12373         (tdesc_named_type): Likewise.
12374         (tdesc_create_vector): Likewise.
12375         (tdesc_create_struct): Likewise.
12376         (tdesc_set_struct_size): Likewise.
12377         (tdesc_create_union): Likewise.
12378         (tdesc_create_flags): Likewise.
12379         (tdesc_create_enum): Likewise.
12380         (tdesc_add_field): Likewise.
12381         (tdesc_add_typed_bitfield): Likewise.
12382         (tdesc_add_bitfield): Likewise.
12383         (tdesc_add_flag): Likewise.
12384         (tdesc_add_enum_value): Likewise.
12385         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12386         (struct tdesc_type_vector): Likewise.
12387         (struct tdesc_type_field): Likewise.
12388         (struct tdesc_type_with_fields): Likewise.
12389         (tdesc_create_enum): Add declaration.
12390         (tdesc_add_typed_bitfield): Likewise.
12391         (tdesc_add_enum_value): Likewise.
12392         * target-descriptions.c (tdesc_type_field): Move from here.
12393         (tdesc_type_builtin): Likewise.
12394         (tdesc_type_vector): Likewise.
12395         (tdesc_type_with_fields): Likewise.
12396         (tdesc_predefined_types): Likewise.
12397         (tdesc_named_type): Likewise.
12398         (tdesc_create_vector): Likewise.
12399         (tdesc_create_struct): Likewise.
12400         (tdesc_set_struct_size): Likewise.
12401         (tdesc_create_union): Likewise.
12402         (tdesc_create_flags): Likewise.
12403         (tdesc_create_enum): Likewise.
12404         (tdesc_add_field): Likewise.
12405         (tdesc_add_typed_bitfield): Likewise.
12406         (tdesc_add_bitfield): Likewise.
12407         (tdesc_add_flag): Likewise.
12408         (tdesc_add_enum_value): Likewise.
12409         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12410         (tdesc_add_typed_bitfield): Likewise.
12411         (tdesc_add_enum_value): Likewise.
12412
12413 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12414
12415         * common/tdesc.c (tdesc_feature::accept): Move to here.
12416         (tdesc_feature::operator==): Likewise.
12417         (tdesc_create_reg): Likewise.
12418         * common/tdesc.h (tdesc_type_kind): Likewise.
12419         (struct tdesc_type): Likewise.
12420         (struct tdesc_feature): Likewise.
12421         * regformats/regdat.sh: Create a feature.
12422         * target-descriptions.c (tdesc_type_kind): Move from here.
12423         (tdesc_type): Likewise.
12424         (tdesc_type_up): Likewise.
12425         (tdesc_feature): Likewise.
12426         (tdesc_create_reg): Likewise.
12427
12428 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12429
12430         * Makefile.in: Add arch/tdesc.c
12431         * common/tdesc.c: New file.
12432         * common/tdesc.h (tdesc_element_visitor): Move to here.
12433         (tdesc_element): Likewise.
12434         (tdesc_reg): Likewise.
12435         (tdesc_reg_up): Likewise.
12436         * regformats/regdef.h (reg): Add offset to constructors.
12437         * target-descriptions.c (tdesc_element_visitor): Move from here.
12438         (tdesc_element): Likewise.
12439         (tdesc_reg): Likewise.
12440         (tdesc_reg_up): Likewise.
12441
12442 2018-04-17  Tom Tromey  <tom@tromey.com>
12443
12444         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12445         discriminant field.
12446
12447 2018-04-17  Tom Tromey  <tom@tromey.com>
12448
12449         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12450
12451 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12452
12453         * symtab.c (print_symbol_info): Skip printing filename and line
12454         number when `last' is NULL.
12455         (symtab_symbol_info): Use empty string instead of NULL for first
12456         invocation of print_symbol_info.
12457         (rbreak_command): Pass NULL to `last' parameter of
12458         print_symbol_info.
12459
12460 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12461
12462         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12463         instead of nullptr.
12464
12465 2018-04-16  Pedro Alves  <palves@redhat.com>
12466
12467         * MAINTAINERS (sh): Remove.
12468         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12469         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12470         (ALLDEPFILES): Remove sh64-tdep.c.
12471         * NEWS: Mentions that support for SH-5/SH64 is removed.
12472         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12473         (sh*-*-openbsd*): Ditto.
12474         (sh64-*-elf*): Remove.
12475         (sh*): Remove.
12476         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12477         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12478         * sh-tdep.c: No longer include "sh64-tdep.h".
12479         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12480         * sh64-tdep.c, sh64-tdep.h: Remove files.
12481
12482 2018-04-16  Pedro Alves  <palves@redhat.com>
12483
12484         * MAINTAINERS: Remove m88k.
12485         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12486         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12487         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12488         * NEWS: Mention that support for m88k was removed.
12489         * configure.host (m88*-*-*): Remove support.
12490         * configure.nat (m88k-*-*): Remove support.
12491         * configure.tgt (m88*-*-openbsd*): Remove.
12492         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12493
12494 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12495
12496         * configure.tgt (x86_tobjs): New variable.
12497         (amd64_tobjs, i386_tobjs): Use it.
12498
12499 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12500
12501         * symtab.c (print_symbol_info): Precede the symbol definition by
12502         the line number when available.
12503         * NEWS: Advertise this enhancement.
12504
12505 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12506
12507         * NEWS (New options): announce set/show record btrace cpu.
12508         * btrace.c: Include record-btrace.h.
12509         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12510         the vendor is unknown.
12511         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12512         Maybe overwrite the btrace configuration's cpu.
12513         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12514         (btrace_fetch): Add cpu parameter.  Update callers.
12515         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12516         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12517         errata workarounds if the vendor is unknown.
12518         * python/py-record-btrace.c: Include record-btrace.h.
12519         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12520         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12521         * record-btrace.c (record_btrace_cpu_state_kind): New.
12522         (record_btrace_cpu): New.
12523         (set_record_btrace_cpu_cmdlist): New.
12524         (record_btrace_get_cpu): New.
12525         (require_btrace_thread, record_btrace_info)
12526         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12527         (cmd_set_record_btrace_cpu_none): New.
12528         (cmd_set_record_btrace_cpu_auto): New.
12529         (cmd_set_record_btrace_cpu): New.
12530         (cmd_show_record_btrace_cpu): New.
12531         (_initialize_record_btrace): Initialize set/show record btrace cpu
12532         commands.
12533         * record-btrace.h (record_btrace_get_cpu): New.
12534
12535 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12536
12537         * record.c (set_record_command): Fix typo in message.
12538
12539 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12540
12541         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12542
12543 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12544
12545         * infrun.c (process_event_stop_test): Call
12546         gdbarch_in_indirect_branch_thunk.
12547         * gdbarch.sh (in_indirect_branch_thunk): New.
12548         * gdbarch.c: Regenerated.
12549         * gdbarch.h: Regenerated.
12550         * x86-tdep.h: New.
12551         * x86-tdep.c: New.
12552         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12553         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12554         (ALLDEPFILES): Add x86-tdep.c.
12555         * arch-utils.h (default_in_indirect_branch_thunk): New.
12556         * arch-utils.c (default_in_indirect_branch_thunk): New.
12557         * i386-tdep: Include x86-tdep.h.
12558         (i386_in_indirect_branch_thunk): New.
12559         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12560         function.
12561         * amd64-tdep: Include x86-tdep.h.
12562         (amd64_in_indirect_branch_thunk): New.
12563         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12564
12565 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12566
12567         PR gdb/23053
12568         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12569         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12570         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12571         regression.
12572
12573 2018-04-12  Tom Tromey  <tom@tromey.com>
12574
12575         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12576         (rust_evaluate_subexp): Likewise.
12577
12578 2018-04-12  Pedro Alves  <palves@redhat.com>
12579
12580         * procfs.c (procfs_detach): Make forward declaration's prototype
12581         match definition's protototype.
12582         (proc_get_LDT_entry): Remove stale do_cleanups call.
12583
12584 2018-04-12  Pedro Alves  <palves@redhat.com>
12585
12586         * target.h (target_ops::to_has_exited): Delete.
12587         (target_has_exited): Delete.
12588         * target-delegates.c: Regenerate.
12589
12590 2018-04-11  Pedro Alves  <palves@redhat.com>
12591
12592         * target.c (fileio_fh_t::t): Add comment.
12593         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12594         (target_fileio_close): Handle a NULL target.
12595         (invalidate_fileio_fh): New.
12596         (target_close): Call it.
12597         * remote.c (remote_hostio_send_command): No longer check whether
12598         remote_desc is open.
12599
12600 2018-04-11  Pedro Alves  <palves@redhat.com>
12601
12602         * target.c (fileio_fh_t): Make it a named struct instead of a
12603         typedef.
12604         (fileio_fh_t::is_closed): New method.
12605         (DEF_VEC_O (fileio_fh_t)): Remove.
12606         (fileio_fhandles): Now a std::vector.
12607         (is_closed_fileio_fh): Delete.
12608         (acquire_fileio_fd): Adjust.  Rename parameters.
12609         (release_fileio_fd): Adjust.
12610         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12611         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12612         (target_fileio_close): Adjust.
12613
12614 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12615
12616         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12617         index.
12618
12619 2018-04-10  Pedro Alves  <palves@redhat.com>
12620
12621         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12622         (scoped_finish_thread_state): New class.
12623         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12624         cleanup.
12625         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12626         (fetch_inferior_event, normal_stop): Likewise.
12627         * thread.c (finish_thread_state_cleanup): Delete.
12628
12629 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12630             Pedro Alves  <palves@redhat.com>
12631
12632         * value.c: Include "selftest.h" and "common/array-view.h".
12633         (struct range) <operator ==>: New.
12634         (test_ranges_contain): New.
12635         (check_ranges_vector): New.
12636         (test_insert_into_bit_range_vector): New.
12637         (_initialize_values): Register selftests.
12638         * common/array-view.h (operator==, operator!=): New.
12639
12640 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12641
12642         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12643         an iterator.
12644         * inline-frame.c: Include <algorithm>.
12645         (struct inline_state): Add constructor.
12646         (inline_state_s): Remove.
12647         (DEF_VEC_O(inline_state_s)): Remove.
12648         (inline_states): Change type to std::vector.
12649         (find_inline_frame_state): Adjust to std::vector.
12650         (allocate_inline_frame_state): Remove.
12651         (clear_inline_frame_state): Adjust to std::vector.
12652         (skip_inline_frames): Adjust to std::vector.
12653
12654 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12655
12656         * tracepoint.h (struct trace_state_variable): Add constructor.
12657         <name>: Change type to std::string.
12658         * tracepoint.c (tsv_s): Remove.
12659         (DEF_VEC_O(tsv_s)): Remove.
12660         (tvariables): Change to std::vector.
12661         (create_trace_state_variable): Adjust to std::vector.
12662         (find_trace_state_variable): Likewise.
12663         (find_trace_state_variable_by_number): Likewise.
12664         (delete_trace_state_variable): Likewise.
12665         (trace_variable_command): Adjust to std::string.
12666         (delete_trace_variable_command): Likewise.
12667         (tvariables_info_1): Adjust to std::vector.
12668         (save_trace_state_variables): Likewise.
12669         (start_tracing): Likewise.
12670         (merge_uploaded_trace_state_variables): Adjust to std::vector
12671         and std::string.
12672         * target.h (struct target_ops)
12673         <to_download_trace_state_variable>: Pass reference to
12674         trace_state_variable.
12675         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12676         * target-delegates.c: Re-generate.
12677         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12678         (mi_tsv_deleted): Likewise.
12679         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12680         * remote.c (remote_download_trace_state_variable): Change
12681         pointer to reference and adjust.
12682         * make-target-delegates (parse_argtypes): Handle references.
12683         (write_function_header): Likewise.
12684         (munge_type): Likewise.
12685
12686 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12687
12688         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12689         string_view-selftests.c.
12690         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12691         testsuite.
12692         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12693         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12694         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12695         * unittests/basic_string_view/element_access/char/1.cc:
12696         Likewise.
12697         * unittests/basic_string_view/element_access/char/empty.cc:
12698         Likewise.
12699         * unittests/basic_string_view/element_access/char/front_back.cc:
12700         Likewise.
12701         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12702         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12703         Likewise.
12704         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12705         Likewise.
12706         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12707         Likewise.
12708         * unittests/basic_string_view/operations/compare/char/1.cc:
12709         Likewise.
12710         * unittests/basic_string_view/operations/compare/char/13650.cc:
12711         Likewise.
12712         * unittests/basic_string_view/operations/copy/char/1.cc:
12713         Likewise.
12714         * unittests/basic_string_view/operations/data/char/1.cc:
12715         Likewise.
12716         * unittests/basic_string_view/operations/find/char/1.cc:
12717         Likewise.
12718         * unittests/basic_string_view/operations/find/char/2.cc:
12719         Likewise.
12720         * unittests/basic_string_view/operations/find/char/3.cc:
12721         Likewise.
12722         * unittests/basic_string_view/operations/find/char/4.cc:
12723         Likewise.
12724         * unittests/basic_string_view/operations/rfind/char/1.cc:
12725         Likewise.
12726         * unittests/basic_string_view/operations/rfind/char/2.cc:
12727         Likewise.
12728         * unittests/basic_string_view/operations/rfind/char/3.cc:
12729         Likewise.
12730         * unittests/basic_string_view/operations/substr/char/1.cc:
12731         Likewise.
12732         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12733         * unittests/string_view-selftests.c: New file.
12734
12735 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12736
12737         * unittests/basic_string_view/capacity/1.cc: New file.
12738         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12739         * unittests/basic_string_view/cons/char/1.cc: New file.
12740         * unittests/basic_string_view/cons/char/2.cc: New file.
12741         * unittests/basic_string_view/cons/char/3.cc: New file.
12742         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12743         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12744         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12745         * unittests/basic_string_view/element_access/char/1.cc: New file.
12746         * unittests/basic_string_view/element_access/char/2.cc: New file.
12747         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12748         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12749         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12750         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12751         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12752         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12753         * unittests/basic_string_view/include.cc: New file.
12754         * unittests/basic_string_view/inserters/char/1.cc: New file.
12755         * unittests/basic_string_view/inserters/char/2.cc: New file.
12756         * unittests/basic_string_view/inserters/char/3.cc: New file.
12757         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12758         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12759         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12760         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12761         * unittests/basic_string_view/literals/types.cc: New file.
12762         * unittests/basic_string_view/literals/values.cc: New file.
12763         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12764         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12765         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12766         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12767         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12768         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12769         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12770         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12771         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12772         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12773         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12774         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12775         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12776         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12777         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12778         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12779         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12780         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12781         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12782         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12783         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12784         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12785         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12786         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12787         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12788         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12789         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12790         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12791         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12792         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12793         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12794         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12795         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12796         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12797         * unittests/basic_string_view/operators/char/2.cc: New file.
12798         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12799         * unittests/basic_string_view/range_access/char/1.cc: New file.
12800         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12801         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12802         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12803         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12804         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12805         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12806         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12807         * unittests/basic_string_view/typedefs.cc: New file.
12808         * unittests/basic_string_view/types/1.cc: New file.
12809
12810 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12811
12812         * common/gdb_string_view.h: Remove libstdc++ implementation
12813         details, adjust to gdb reality.
12814         * common/gdb_string_view.tcc: Likewise.
12815         * cli/cli-script.c (struct string_view): Remove.
12816         (user_args) <m_args>: Change element type to gdb::string_view.
12817         (user_args::insert_args): Adjust.
12818
12819 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12820
12821         * common/gdb_string_view.h: New file.
12822         * common/gdb_string_view.tcc: New file.
12823
12824 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12825
12826         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12827         * configure: Re-generate.
12828
12829 2018-04-09  Pedro Alves  <palves@redhat.com>
12830
12831         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12832         (set_target_gdbarch): Call
12833         gdb::observers::architecture_changed.notify instead of
12834         observer_notify_architecture_changed.
12835
12836 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12837
12838         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12839         (do_restore_current_traceframe_cleanup): Remove.
12840         (restore_current_traceframe_cleanup_dtor): Remove.
12841         (make_cleanup_restore_current_traceframe): Remove.
12842         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12843         New.
12844         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12845         * infrun.c (fetch_inferior_event): Use
12846         scoped_restore_current_traceframe.
12847
12848 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12849
12850         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12851         Remove.
12852         <n_allocated_type_units>: Remove.
12853         <all_type_units>: Change to std::vector.
12854         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12855         to std::vector change.
12856         (dwarf2_per_objfile::get_cutu): Likewise.
12857         (dwarf2_per_objfile::get_tu): Likewise.
12858         (create_signatured_type_table_from_index): Likewise.
12859         (create_signatured_type_table_from_debug_names): Likewise.
12860         (dw2_symtab_iter_next): Likewise.
12861         (dw2_print_stats): Likewise.
12862         (dw2_expand_all_symtabs): Likewise.
12863         (dw2_expand_marked_cus): Likewise.
12864         (dw2_debug_names_iterator::next): Likewise.
12865         (dwarf2_initialize_objfile): Likewise.
12866         (add_signatured_type_cu_to_table): Likewise.
12867         (create_all_type_units): Likewise.
12868         (add_type_unit): Likewise.
12869         (struct tu_abbrev_offset): Add constructor.
12870         (build_type_psymtabs_1): Adjust to std::vector change.
12871         (print_tu_stats): Likewise.
12872         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12873         (write_debug_names): Likewise.
12874
12875 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12876
12877         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12878         Make an std::vector.
12879         <n_comp_units>: Remove.
12880         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12881         to std::vector change.
12882         (dwarf2_per_objfile::get_cutu): Likewise.
12883         (dwarf2_per_objfile::get_cu): Likewise.
12884         (create_cus_from_index): Likewise.
12885         (create_addrmap_from_index): Likewise.
12886         (create_addrmap_from_aranges): Likewise.
12887         (dwarf2_read_index): Likewise.
12888         (dw2_find_last_source_symtab): Likewise.
12889         (dw2_map_symtabs_matching_filename): Likewise.
12890         (dw2_symtab_iter_next): Likewise.
12891         (dw2_print_stats): Likewise.
12892         (dw2_expand_all_symtabs): Likewise.
12893         (dw2_expand_symtabs_with_fullname): Likewise.
12894         (dw2_expand_marked_cus): Likewise.
12895         (dw2_map_symbol_filenames): Likewise.
12896         (create_cus_from_debug_names): Likewise.
12897         (dwarf2_read_debug_names): Likewise.
12898         (dw2_debug_names_iterator::next): Likewise.
12899         (dwarf2_initialize_objfile): Likewise.
12900         (set_partial_user): Likewise.
12901         (dwarf2_build_psymtabs_hard): Likewise.
12902         (read_comp_units_from_section): Remove arguments, adjust to
12903         std::vector change.
12904         (create_all_comp_units): Adjust to std::vector and
12905         read_comp_units_from_section changes.
12906         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12907         change.
12908         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12909         (psyms_seen_size): Likewise.
12910         (write_gdbindex): Likewise.
12911         (write_debug_names): Likewise.
12912
12913 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12914
12915         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12916         with dwarf2_per_objfile.
12917         (create_cus_from_index): Likewise.
12918         (create_signatured_type_table_from_index): Likewise.
12919         (dwarf2_read_index): Likewise.
12920         (dwarf2_initialize_objfile): Likewise.
12921         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12922         per_cu rather than get_dwarf2_per_objfile.
12923
12924 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12925
12926         * dwarf2read.h (struct signatured_type): Forward declare.
12927         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12928         New methods.
12929         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12930         (dw2_get_cutu): ...this.
12931         (dwarf2_per_objfile::get_cu): Rename from...
12932         (dw2_get_cu): ...this.
12933         (dwarf2_per_objfile::get_tu): New.
12934         (create_addrmap_from_index): Adjust.
12935         (create_addrmap_from_aranges): Adjust.
12936         (dw2_find_last_source_symtab): Adjust.
12937         (dw2_map_symtabs_matching_filename): Adjust.
12938         (dw2_symtab_iter_next): Adjust.
12939         (dw2_print_stats): Adjust.
12940         (dw2_expand_all_symtabs): Adjust.
12941         (dw2_expand_symtabs_with_fullname): Adjust.
12942         (dw2_expand_marked_cus): Adjust.
12943         (dw_expand_symtabs_matching_file_matcher): Adjust.
12944         (dw2_map_symbol_filenames): Adjust.
12945         (dw2_debug_names_iterator::next): Adjust.
12946         (dwarf2_initialize_objfile): Adjust.
12947         (set_partial_user): Adjust.
12948         (dwarf2_build_psymtabs_hard): Adjust.
12949
12950 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12951
12952         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12953         Remove unused variables.
12954         (dw2_map_symtabs_matching_filename): Likewise.
12955         (dwarf2_record_block_ranges): Likewise.
12956         (dwarf2_read_addr_index): Likewise.
12957         (follow_die_offset): Likewise.
12958
12959 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12960
12961         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12962         to symbol_file_add_main.
12963
12964 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12965
12966         PR mi/22299
12967         * mi/mi-console.c (do_fputc_async_safe): New.
12968         (mi_console_file::write_async_safe): New.
12969         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12970         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12971         New.
12972         * ui-file.c (ui_file::putstrn): Adjust call to
12973         fputstrn_unfiltered.
12974         * utils.c (printchar): Replace do_fputs and do_fprintf
12975         parameters by do_fputc.
12976         (fputstr_filtered): Adjust call to printchar.
12977         (fputstr_unfiltered): Likewise.
12978         (fputstrn_filtered): Likewise.
12979         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12980         printchar.
12981         * utils.h (do_fputc_ftype): New typedef.
12982         (fputstrn_unfiltered): Add do_fputc parameter.
12983
12984 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12985
12986         * regformats/i386/i386-avx.dat: Remove.
12987
12988 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12989
12990         PR gdb/22979
12991         * amd64-tdep.c (amd64_none_init_abi): New function.
12992         (amd64_x32_none_init_abi): New function.
12993         (_initialize_amd64_tdep): Register handlers for x86-64 and
12994         x64_32 with GDB_OSABI_NONE.
12995         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12996         GDB_OSABI_NONE osabi.
12997
12998 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12999
13000         PR gdb/22980
13001         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
13002         GDB_OSABI_NONE.
13003         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
13004         * osabi.c (gdb_osabi_names): Add "unknown" entry.
13005
13006 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
13007
13008         * common/byte-vector.h (char_vector): New type.
13009         * target.h (target_read_alloc): Return
13010         gdb::optional<byte_vector>.
13011         (target_read_stralloc): Return gdb::optional<char_vector>.
13012         (target_get_osdata): Return gdb::optional<char_vector>.
13013         * target.c (target_read_alloc_1): Templatize.  Replacement
13014         manual memory management with vector.
13015         (target_read_alloc): Change return type, adjust.
13016         (target_read_stralloc): Change return type, adjust.
13017         (target_get_osdata): Change return type, adjust.
13018         * auxv.c (struct auxv_info) <length>: Remove.
13019         <data>: Change type to gdb::optional<byte_vector>.
13020         (auxv_inferior_data_cleanup): Free auxv_info with delete.
13021         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
13022         (target_auxv_search): Adjust.
13023         (fprint_target_auxv): Adjust.
13024         * avr-tdep.c (avr_io_reg_read_command): Adjust.
13025         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
13026         (linux_make_corefile_notes): Adjust.
13027         * osdata.c (get_osdata): Adjust.
13028         * remote.c (remote_get_threads_with_qxfer): Adjust.
13029         (remote_memory_map): Adjust.
13030         (remote_traceframe_info): Adjust.
13031         (btrace_read_config): Adjust.
13032         (remote_read_btrace): Adjust.
13033         (remote_pid_to_exec_file): Adjust.
13034         * solib-aix.c (solib_aix_get_library_list): Adjust.
13035         * solib-dsbt.c (decode_loadmap): Don't free buf.
13036         (dsbt_get_initial_loadmaps): Adjust.
13037         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13038         * solib-target.c (solib_target_current_sos): Adjust.
13039         * tracepoint.c (sdata_make_value): Adjust.
13040         * xml-support.c (xinclude_start_include): Adjust.
13041         (xml_fetch_content_from_file): Adjust.
13042         * xml-support.h (xml_fetch_another): Change return type.
13043         (xml_fetch_content_from_file): Change return type.
13044         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13045         * xml-tdesc.c (file_read_description_xml): Adjust.
13046         (fetch_available_features_from_target): Change return type.
13047         (target_fetch_description_xml): Adjust.
13048         (target_read_description_xml): Adjust.
13049
13050 2018-04-06  Tom Tromey  <tom@tromey.com>
13051
13052         * value.c (~value): Update.
13053         (struct value) <contents>: Now unique_xmalloc_ptr.
13054         (value_contents_bits_eq, allocate_value_contents)
13055         (value_contents_raw, value_contents_all_raw)
13056         (value_contents_for_printing, value_contents_for_printing_const)
13057         (set_value_enclosing_type): Update.
13058
13059 2018-04-06  Tom Tromey  <tom@tromey.com>
13060
13061         * value.c (range_s): Remove typedef, VEC.
13062         (struct range): Add operator<.
13063         (range_lessthan): Remove.
13064         (ranges_contain): Change type.
13065         (~value): Update.
13066         (struct value) <unavailable, optimized_out>: Now std::vector.
13067         (value_entirely_available)
13068         (value_entirely_covered_by_range_vector)
13069         (value_entirely_unavailable, value_entirely_optimized_out):
13070         Update.
13071         (insert_into_bit_range_vector): Change argument type.
13072         (find_first_range_overlap): Likewise.
13073         (struct ranges_and_idx, value_contents_bits_eq)
13074         (require_not_optimized_out, require_available): Update.
13075         (ranges_copy_adjusted): Change argument types.
13076         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13077
13078 2018-04-06  Tom Tromey  <tom@tromey.com>
13079
13080         * value.c (~value): Update.
13081         (struct value) <parent>: Now a value_ref_ptr.
13082         (value_parent, set_value_parent, value_address, value_copy):
13083         Update.
13084
13085 2018-04-06  Tom Tromey  <tom@tromey.com>
13086
13087         * value.c (struct value): Add constructor, destructor, and member
13088         initializers.
13089         (allocate_value_lazy, value_decref): Update.
13090
13091 2018-04-06  Tom Tromey  <tom@tromey.com>
13092
13093         * value.c (struct value) <released, next>: Remove.
13094         (all_values): Now a std::vector.
13095         (allocate_value_lazy): Update.
13096         (value_next): Remove.
13097         (value_mark, value_free_to_mark, release_value)
13098         (value_release_to_mark): Update.
13099
13100 2018-04-06  Tom Tromey  <tom@tromey.com>
13101
13102         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13103         (free_value_chain): Remove.
13104         * value.c (free_value_chain): Remove.
13105         (value_release_to_mark): Return a std::vector.
13106         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13107         std::vector.
13108         (check_condition): Update.
13109         * eval.c (fetch_subexp_value): Change "val_chain" to a
13110         std::vector.
13111         * breakpoint.c (update_watchpoint): Update.
13112         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13113
13114 2018-04-06  Tom Tromey  <tom@tromey.com>
13115
13116         * value.h (free_all_values): Remove.
13117         * value.c (free_all_values): Remove.
13118
13119 2018-04-06  Tom Tromey  <tom@tromey.com>
13120
13121         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13122         (value_history_chain, value_history_count): Remove.
13123         (value_history): New global.
13124         (record_latest_value, access_value_history, show_values)
13125         (preserve_values): Update.
13126
13127 2018-04-06  Tom Tromey  <tom@tromey.com>
13128
13129         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13130         * varobj.c (varobj_set_display_format, varobj_set_value)
13131         (install_default_visualizer, construct_visualizer)
13132         (install_new_value, ~varobj, varobj_get_value_type)
13133         (my_value_of_variable, varobj_editable_p): Update.
13134         * c-varobj.c (c_describe_child, c_value_of_variable)
13135         (cplus_number_of_children, cplus_describe_child): Update.
13136         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13137         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13138         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13139
13140 2018-04-06  Tom Tromey  <tom@tromey.com>
13141
13142         * printcmd.c (last_examine_address): Change type to
13143         value_ref_ptr.
13144         (do_examine, x_command): Update.
13145
13146 2018-04-06  Tom Tromey  <tom@tromey.com>
13147
13148         * value.c (release_value): Update.
13149         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13150         (struct bpstats) <val>: Now a value_ref_ptr.
13151         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13152         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13153         (~watchpoint, print_it_watchpoint, watch_command_1)
13154         (invalidate_bp_value_on_memory_change): Update.
13155
13156 2018-04-06  Tom Tromey  <tom@tromey.com>
13157
13158         * varobj.c (varobj_clear_saved_item)
13159         (update_dynamic_varobj_children, install_new_value, ~varobj):
13160         Update.
13161         * value.h (value_incref): Move declaration earlier.
13162         (value_decref): Rename from value_free.
13163         (struct value_ref_policy): New.
13164         (value_ref_ptr): New typedef.
13165         (struct value_deleter): Remove.
13166         (gdb_value_up): Remove typedef.
13167         (release_value): Change return type.
13168         (release_value_or_incref): Remove.
13169         * value.c (set_value_parent): Update.
13170         (value_incref): Change return type.
13171         (value_decref): Rename from value_free.
13172         (value_free_to_mark, free_all_values, free_value_chain): Update.
13173         (release_value): Return value_ref_ptr.
13174         (release_value_or_incref): Remove.
13175         (record_latest_value, set_internalvar, clear_internalvar):
13176         Update.
13177         * stack.c (info_frame_command): Don't call value_free.
13178         * python/py-value.c (valpy_dealloc, valpy_new)
13179         (value_to_value_object): Update.
13180         * printcmd.c (do_examine): Update.
13181         * opencl-lang.c (lval_func_free_closure): Update.
13182         * mi/mi-main.c (register_changed_p): Don't call value_free.
13183         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13184         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13185         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13186         value_free.
13187         * guile/scm-value.c (vlscm_free_value_smob)
13188         (vlscm_scm_from_value): Update.
13189         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13190         (frame_unwind_register_unsigned, get_frame_register_bytes)
13191         (put_frame_register_bytes): Don't call value_free.
13192         * findvar.c (address_from_register): Don't call value_free.
13193         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13194         * dwarf2loc.c (entry_data_value_free_closure)
13195         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13196         (dwarf2_evaluate_loc_desc_full): Update.
13197         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13198         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13199         (~watchpoint, watch_command_1)
13200         (invalidate_bp_value_on_memory_change): Update.
13201         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13202
13203 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13204
13205         PR gdb/23022
13206         * warning.m4: Add -Wno-error=deprecated-register.
13207         * configure: Re-generate.
13208
13209 2018-04-05  Tom Tromey  <tom@tromey.com>
13210
13211         * linespec.h: Remove include of "vec.h".
13212
13213 2018-04-05  Tom Tromey  <tom@tromey.com>
13214
13215         * linespec.c (typep): Remove typedef.
13216         (find_methods, find_superclass_methods): Take a std::vector.
13217         (find_method): Use std::vector.
13218
13219 2018-04-05  Tom Tromey  <tom@tromey.com>
13220
13221         * utils.c (compare_strings): Remove.
13222         * utils.h (compare_strings): Remove.
13223         * objc-lang.h (find_imps): Update.
13224         * objc-lang.c (find_methods): Take a std::vector.
13225         (uniquify_strings, find_imps): Likewise.
13226         * linespec.c (find_methods): Take a std::vector.
13227         (decode_objc): Use std::vector.
13228         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13229         a std::vector.
13230         (find_method, find_function_symbols): Use std::vector.
13231
13232 2018-04-05  Tom Tromey  <tom@tromey.com>
13233
13234         * completer.c (completion_tracker::completion_tracker): Remove
13235         cast.
13236         (completion_tracker::discard_completions): Likewise.
13237         * breakpoint.c (ambiguous_names_p): Remove cast.
13238         * ada-lang.c (_initialize_ada_language): Remove cast.
13239         * utils.h (streq): Update.
13240         (streq_hash): Add new declaration.
13241         * utils.c (streq): Return bool.
13242         (streq_hash): New function.
13243
13244 2018-04-05  Tom Tromey  <tom@tromey.com>
13245
13246         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13247         Remove a string copy.
13248
13249 2018-04-05  Tom Tromey  <tom@tromey.com>
13250
13251         * linespec.c (filter_results): Use std::vector.
13252         (decode_line_2, decode_line_full): Update.
13253
13254 2018-04-05  Tom Tromey  <tom@tromey.com>
13255
13256         * linespec.c (canonical_to_fullform): Return std::string.
13257         (filter_results): Update.
13258         (struct decode_line_2_item): Add constructor.
13259         <fullform, displayform>: Now std::string.
13260         (decode_line_2_compare_items): Now a std::sort comparator.
13261         (decode_line_2): Update.
13262
13263 2018-04-05  Tom Tromey  <tom@tromey.com>
13264
13265         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13266         (unexpected_linespec_error): Update.
13267         (linespec_parse_basic, parse_linespec): Update.
13268
13269 2018-04-05  Tom Tromey  <tom@tromey.com>
13270
13271         * linespec.c (linespec_parse_basic): Reindent.
13272
13273 2018-04-05  Tom Tromey  <tom@tromey.com>
13274
13275         * minsyms.h (iterate_over_minimal_symbols): Update.
13276         * minsyms.c (iterate_over_minimal_symbols): Take a
13277         gdb::function_view.
13278         * linespec.c (struct collect_minsyms): Remove.
13279         (compare_msyms): Now a std::sort comparator.
13280         (add_minsym): Add parameters.
13281         (search_minsyms_for_name): Update.  Use std::vector.
13282
13283 2018-04-03  Tom Tromey  <tom@tromey.com>
13284
13285         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13286         gdb::byte_vector.
13287
13288 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13289
13290         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13291
13292 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13293
13294         PR gdb/16959
13295         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13296         printing static type.
13297
13298 2018-04-01  Tom Tromey  <tom@tromey.com>
13299
13300         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13301         (rs6000_xfer_shared_libraries): Update.
13302
13303 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13304
13305         * common/gdb_vecs.h (char_ptr): Remove.
13306         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13307
13308 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13309
13310         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13311         with std::vector.
13312         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13313
13314 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13315
13316         * tracepoint.h (struct uploaded_tp): Initialize fields.
13317         <actions, step_actions, cmd_strings>: Change type to
13318         std::vector<char *>.
13319         * tracepoint.c (get_uploaded_tp): Allocate with new.
13320         (free_uploaded_tps): Free with delete.
13321         (parse_tracepoint_definition): Adjust to std::vector change.
13322         * breakpoint.c (read_uploaded_action): Likewise.
13323         (create_tracepoint_from_upload): Likewise.
13324         * ctf.c (ctf_write_uploaded_tp): Likewise.
13325         (SET_ARRAY_FIELD): Likewise.
13326         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13327
13328 2018-03-30  Tom Tromey  <tom@tromey.com>
13329
13330         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13331         std::unique_ptr.
13332         (svr4_keep_data_in_core): Update.
13333         (svr4_read_so_list): Update.
13334
13335 2018-03-30  Tom Tromey  <tom@tromey.com>
13336
13337         * windows-nat.c (handle_output_debug_string, handle_exception):
13338         Update.
13339         * target.h (target_read_string): Update.
13340         * target.c (target_read_string): Change "string" to
13341         unique_xmalloc_ptr.
13342         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13343         Update.
13344         * solib-frv.c (frv_current_sos): Update.
13345         * solib-dsbt.c (dsbt_current_sos): Update.
13346         * solib-darwin.c (darwin_current_sos): Update.
13347         * linux-thread-db.c (inferior_has_bug): Update.
13348         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13349         Update.  Remove alloca.
13350         * ada-lang.c (ada_main_name): Update.
13351
13352 2018-03-30  Tom Tromey  <tom@tromey.com>
13353
13354         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13355         (struct dwo_file_deleter): New.
13356         (dwo_file_up): New typedef.
13357         (open_and_init_dwo_file): Use dwo_file_up.
13358         (free_dwo_file_cleanup): Remove.
13359
13360 2018-03-30  Tom Tromey  <tom@tromey.com>
13361
13362         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13363         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13364
13365 2018-03-30  Tom Tromey  <tom@tromey.com>
13366
13367         * dwarf2read.c (class free_cached_comp_units): New class.
13368         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13369         (free_cached_comp_units): Remove function.
13370
13371 2018-03-30  Tom Tromey  <tom@tromey.com>
13372
13373         * utils.h (make_cleanup_unpush_target): Remove.
13374         * inf-ptrace.c (struct target_unpusher): New.
13375         (target_unpush_up) New typedef.
13376         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13377         target_unpush_up.
13378         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13379
13380 2018-03-27  Tom Tromey  <tom@tromey.com>
13381
13382         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13383
13384 2018-03-27  Pedro Alves  <palves@redhat.com>
13385             Tom Tromey  <tom@tromey.com>
13386
13387         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13388         destructor.  Now a class.
13389         (gdb_readline_wrapper_cleanup): Remove function.
13390         (gdb_readline_wrapper): Remove cleanups.
13391
13392 2018-03-27  Tom Tromey  <tom@tromey.com>
13393
13394         * typeprint.h (struct type_print_options) <local_typedefs,
13395         global_typedefs>: Remove "struct" keyword.
13396         (class typedef_hash_table): New class.
13397         (recursively_update_typedef_hash, add_template_parameters)
13398         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13399         (find_typedef_in_hash): Don't declare.
13400         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13401         (typedef_hash_table::recursively_update): Rename from
13402         recursively_update_typedef_hash.  Now a member.
13403         (typedef_hash_table::add_template_parameters): Rename from
13404         add_template_parameters.  Now a member.
13405         (typedef_hash_table::typedef_hash_table): Now a constructor;
13406         rename from create_typedef_hash.
13407         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13408         rename from free_typedef_hash.
13409         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13410         (do_free_global_table): Remove.
13411         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13412         from copy_type_recursive.
13413         (create_global_typedef_table): Remove.
13414         (typedef_hash_table::find_global_typedef): Now a member of
13415         typedef_hash_table.
13416         (typedef_hash_table::find_typedef): Rename from
13417         find_typedef_in_hash; now a member.
13418         (whatis_exp): Update.
13419         * extension.h (struct ext_lang_type_printers): Add constructor and
13420         destructor.
13421         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13422         declare.
13423         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13424         Now a constructor; rename from start_ext_lang_type_printers.
13425         (ext_lang_type_printers): Now a destructor; rename from
13426         free_ext_lang_type_printers.
13427         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13428         Update.
13429         (c_type_print_base_struct_union): Update.  Remove cleanups.
13430
13431 2018-03-27  Tom Tromey  <tom@tromey.com>
13432
13433         * dwarf-index-write.c: Include <cmath>.
13434
13435 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13436
13437         * NEWS: Add entry describing new "set|show varsize-limit" command.
13438         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13439         command.
13440         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13441         "set variable".
13442
13443 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13444
13445         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13446         dwarf-index-write.c
13447         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13448         * dwarf-index-common.c: New file.
13449         * dwarf-index-common.h: New file.
13450         * dwarf-index-write.c: New file.
13451         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13452         (struct dwarf2_section_info): Move from here.
13453         (dwarf2_section_info_def): Likewise.
13454         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13455         (offset_type): Likewise.
13456         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13457         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13458         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13459         (byte_swap): Likewise.
13460         (MAYBE_SWAP): Likewise.
13461         (dwarf2_per_cu_ptr): Likewise.
13462         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13463         (struct tu_stats): Likewise.
13464         (struct dwarf2_per_objfile): Likewise.
13465         (struct dwarf2_per_cu_data): Likewise.
13466         (struct signatured_type): Likewise.
13467         (sig_type_ptr): Likewise.
13468         (DEF_VEC_P (sig_type_ptr)): Likewise.
13469         (INDEX4_SUFFIX): Likewise.
13470         (INDEX5_SUFFIX): Likewise.
13471         (DEBUG_STR_SUFFIX): Likewise.
13472         (dwarf2_read_section): Make non-static.
13473         (mapped_index_string_hash): Move from here.
13474         (dwarf5_djb_hash): Likewise.
13475         (file_write): Likewise.
13476         (class data_buf): Likewise.
13477         (struct symtab_index_entry): Likewise.
13478         (struct mapped_symtab): Likewise.
13479         (find_slot): Likewise.
13480         (hash_expand): Likewise.
13481         (add_index_entry): Likewise.
13482         (uniquify_cu_indices): Likewise.
13483         (class c_str_view): Likewise.
13484         (class c_str_view_hasher): Likewise.
13485         (class vector_hasher): Likewise.
13486         (write_hash_table): Likewise.
13487         (psym_index_map): Likewise.
13488         (struct addrmap_index_data): Likewise.
13489         (add_address_entry): Likewise.
13490         (add_address_entry_worker): Likewise.
13491         (write_address_map): Likewise.
13492         (symbol_kind): Likewise.
13493         (write_psymbols): Likewise.
13494         (struct signatured_type_index_data): Likewise.
13495         (write_one_signatured_type): Likewise.
13496         (recursively_count_psymbols): Likewise.
13497         (recursively_write_psymbols): Likewise.
13498         (class debug_names): Likewise.
13499         (check_dwarf64_offsets): Likewise.
13500         (psyms_seen_size): Likewise.
13501         (write_gdbindex): Likewise.
13502         (write_debug_names): Likewise.
13503         (assert_file_size): Likewise.
13504         (write_psymtabs_to_index): Likewise.
13505         (save_gdb_index_command): Likewise.
13506         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13507         command.
13508         * dwarf2read.h: New file.
13509
13510 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13511
13512         PR gdb/22670
13513         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13514         symbol name if the CU's language stores symbol names in linkage
13515         format.
13516         * language.h (struct language_defn)
13517         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13518         all instances of this struct.
13519
13520 2018-03-26  Tom Tromey  <tom@tromey.com>
13521
13522         * stack.c (backtrace_command_1): Remove verbose code.
13523
13524 2018-03-26  Tom Tromey  <tom@tromey.com>
13525
13526         * python/py-framefilter.c (py_print_type): Don't catch
13527         exceptions.  Return void.
13528         (py_print_value): Likewise.
13529         (py_print_single_arg): Likewise.
13530         (enumerate_args): Don't catch exceptions.
13531         (py_print_args): Likewise.
13532         (py_print_frame): Likewise.
13533         (gdbpy_apply_frame_filter): Catch exceptions here.
13534
13535 2018-03-26  Tom Tromey  <tom@tromey.com>
13536
13537         * stack.c (_initialize_stack): Remove trailing newlines from help
13538         text.  Add "Usage" line to "backtrace" help.
13539
13540 2018-03-26  Tom Tromey  <tom@tromey.com>
13541
13542         PR python/16486:
13543         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13544
13545 2018-03-26  Tom Tromey  <tom@tromey.com>
13546
13547         * python/py-framefilter.c (py_print_single_arg): Return
13548         EXT_LANG_BT_ERROR from catch.
13549
13550 2018-03-26  Tom Tromey  <tom@tromey.com>
13551
13552         PR backtrace/15584:
13553         * stack.c (backtrace_command_1): Move some code into no-filters
13554         "if".
13555
13556 2018-03-26  Tom Tromey  <tom@tromey.com>
13557
13558         * python/py-framefilter.c (throw_quit_or_print_exception): New
13559         function.
13560         (gdbpy_apply_frame_filter): Use it.
13561
13562 2018-03-26  Tom Tromey  <tom@tromey.com>
13563
13564         PR cli/17716:
13565         * python/py-framefilter.c (py_print_type, py_print_value)
13566         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13567         RETURN_MASK_ERROR.
13568
13569 2018-03-26  Tom Tromey  <tom@tromey.com>
13570
13571         * python/py-framefilter.c (enumerate_args): Use
13572         gdb::unique_xmalloc_ptr.
13573
13574 2018-03-26  Tom Tromey  <tom@tromey.com>
13575
13576         * python/py-framefilter.c (py_print_frame): Return
13577         EXT_LANG_BT_OK.
13578         (gdbpy_apply_frame_filter): Update comment.
13579         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13580         Remove.
13581         <EXT_LANG_BT_NO_FILTERS>: Change value.
13582
13583 2018-03-26  Tom Tromey  <tom@tromey.com>
13584
13585         PR backtrace/15582:
13586         * stack.c (backtrace_command): Parse "hide" argument.
13587         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13588         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13589         constant.
13590
13591 2018-03-26  Tom Tromey  <tom@tromey.com>
13592
13593         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13594         add "flags".
13595         (backtrace_command): Remove "fulltrace", add "flags".
13596
13597 2018-03-26  Tom Tromey  <tom@tromey.com>
13598
13599         * stack.c (backtrace_command): Rewrite command line parsing.
13600
13601 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13602
13603         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13604
13605 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13606
13607         * filename-seen-cache.h: Add include guard.
13608
13609 2018-03-26  Keith Seitz  <keiths@redhat.com>
13610
13611         * symfile.c (place_section): Remove "struct" from section_addr_info
13612         in comment.
13613         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13614         "struct" keyword from section_addr_info.
13615
13616 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13617
13618         * regformats/regdef.h (reg): Add constructors.
13619
13620 2018-03-25  Pedro Alves  <palves@redhat.com>
13621
13622         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13623         if then/else bodies in var_func_name extraction.
13624
13625 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13626
13627         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13628         lookup_minimal_symbol() to find symbol entry.
13629         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13630
13631 2018-03-23  Keith Seitz  <keiths@redhat.com>
13632
13633         PR c++/22968
13634         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13635         nested type definitions for C++, too.
13636
13637 2018-03-23  Tom Tromey  <tom@tromey.com>
13638
13639         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13640         a typedef.
13641         (macho_register_oso): Remove.
13642         (macho_symtab_read): Take a std::vector.
13643         (oso_el_compare_name): Now a std::sort comparator.
13644         (macho_symfile_read_all_oso): Take a std::vector.
13645         (macho_symfile_read): Use std::vector.  Remove cleanups.
13646
13647 2018-03-22  Tom Tromey  <tom@tromey.com>
13648
13649         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13650         (record_full_goto_bookmark): Use std::string.
13651
13652 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13653
13654         PR tdep/18295
13655         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13656         a single mask.
13657
13658 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13659
13660         * rs6000-tdep.c (store_insn_p): New function.
13661         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13662         and cr_reg to their unshifted values. Use store_insn_p to
13663         match LR saves using either R1 or fdata->alloca_reg. Use
13664         store_insn_p to match CR saves. Set alloca_reg_offset
13665         when alloca_reg and framep are set. Remove lr_reg shift
13666         when assigning to fdata->lr_register.
13667
13668 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13669
13670         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13671         command line args instead of emitting a warning.
13672
13673 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13674
13675         * tracepoint.h (struct static_tracepoint_marker): Initialize
13676         fields, define default constructor, move constructor and move
13677         assignment, disable the rest.
13678         <str_id, extra>: Make std::string.
13679         (release_static_tracepoint_marker): Remove.
13680         (free_current_marker): Remove.
13681         * tracepoint.c (free_current_marker): Remove.
13682         (parse_static_tracepoint_marker_definition): Adjust to
13683         std::string, use new hex2str overload.
13684         (release_static_tracepoint_marker): Remove.
13685         (print_one_static_tracepoint_marker): Get marker by reference
13686         and adjust to std::string.
13687         (info_static_tracepoint_markers_command): Adjust to std::vector
13688         changes
13689         * target.h (static_tracepoint_marker_p): Remove typedef.
13690         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13691         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13692         bool.
13693         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13694         * target-debug.h
13695         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13696         (target_debug_print_std_vector_static_tracepoint_marker): New.
13697         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13698         to...
13699         (target_debug_print_static_tracepoint_marker_p): ... this.
13700         * target-delegates.c: Re-generate.
13701         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13702         Make std::string.
13703         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13704         (decode_static_tracepoint_spec): Adjust to std::vector.
13705         (tracepoint_print_one_detail): Adjust to std::string.
13706         (strace_marker_decode_location): Adjust to std::string.
13707         (update_static_tracepoint): Adjust to std::string, remove call
13708         to release_static_tracepoint_marker.
13709         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13710         Adjust to std::vector.
13711         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13712         (remote_static_tracepoint_markers_by_strid): Adjust to
13713         std::vector.
13714         * common/rsp-low.h (hex2str): New overload with explicit count
13715         of bytes.
13716         * common/rsp-low.c (hex2str): New overload with explicit count
13717         of bytes.
13718         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13719         (_initialize_rsp_low_selftests): Add test_hex2str test.
13720         * unittests/tracepoint-selftests.c
13721         (test_parse_static_tracepoint_marker_definition): Adjust to
13722         std::string.
13723
13724 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13725
13726         * tracepoint.c (parse_static_tracepoint_marker_definition):
13727         Consider case where the definition is followed by more
13728         definitions.
13729         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13730         tracepoint-selftests.c.
13731         * unittests/tracepoint-selftests.c: New.
13732
13733 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13734
13735         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13736         Carvalho.
13737
13738 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13739
13740         * symtab.c (find_pc_sect_line): fixed indentation.
13741
13742 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13743
13744         * symtab.c (find_pc_sect_line): now uses binary search.
13745
13746 2018-03-19  Tom Tromey  <tom@tromey.com>
13747
13748         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13749         "IDENT" production.
13750
13751 2018-03-19  Pedro Alves  <palves@redhat.com>
13752             Tom Tromey  <tom@tromey.com>
13753
13754         * unittests/observable-selftests.c: New file.
13755         * common/observable.h: New file.
13756         * observable.h: New file.
13757         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13758         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13759         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13760         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13761         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13762         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13763         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13764         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13765         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13766         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13767         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13768         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13769         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13770         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13771         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13772         tui/tui-interp.c, valops.c: Update all users.
13773         * tui/tui-hooks.c (tui_bp_created_observer)
13774         (tui_bp_deleted_observer, tui_bp_modified_observer)
13775         (tui_inferior_exit_observer, tui_before_prompt_observer)
13776         (tui_normal_stop_observer, tui_register_changed_observer):
13777         Remove.
13778         (tui_observers_token): New global.
13779         (attach_or_detach, tui_attach_detach_observers): New functions.
13780         (tui_install_hooks, tui_remove_hooks): Use
13781         tui_attach_detach_observers.
13782         * record-btrace.c (record_btrace_thread_observer): Remove.
13783         (record_btrace_thread_observer_token): New global.
13784         * observer.sh: Remove.
13785         * observer.c: Rename to observable.c.
13786         * observable.c (namespace gdb_observers): Define new objects.
13787         (observer_debug): Move into gdb_observers namespace.
13788         (struct observer, struct observer_list, xalloc_observer_list_node)
13789         (xfree_observer_list_node, generic_observer_attach)
13790         (generic_observer_detach, generic_observer_notify): Remove.
13791         (_initialize_observer): Update.
13792         Don't include observer.inc.
13793         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13794         (clean mostlyclean): Likewise.
13795         (observer.h, observer.inc): Remove targets.
13796         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13797         (COMMON_SFILES): Use observable.c, not observer.c.
13798         * .gitignore: Remove observer.h.
13799
13800 2018-03-18  Tom Tromey  <tom@tromey.com>
13801
13802         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13803         gdb::def_vector.
13804         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13805
13806 2018-03-17  Tom Tromey  <tom@tromey.com>
13807
13808         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13809
13810 2018-03-17  Tom Tromey  <tom@tromey.com>
13811
13812         * target.c (class scoped_target_fd): New.
13813         (target_fileio_close_cleanup): Remove.
13814         (target_fileio_read_alloc_1): Use scoped_target_fd.
13815
13816 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13817
13818         * silent-rules.mk: New.
13819         * Makefile.in: Include silent-rules.mk
13820         (srcdir, VPATH, top_srcdir): Move up.
13821         (COMPILE): Add ECHO_CXX.
13822         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13823         (init.c): Add ECHO_INIT_C.
13824         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13825         (version.c): Add ECHO_GEN.
13826         (printcmd.o): Add ECHO_CXX.
13827         (target-float.o): Add ECHO_CXX.
13828         (ada-exp.o): Add ECHO_CXX.
13829         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13830         (insight$(EXEEXT)): Add ECHO_CXXLD.
13831         * gnulib/configure.ac: Add AM_SILENT_RULES.
13832         * gnulib/aclocal.m4: Re-generate.
13833         * gnulib/configure: Re-generate.
13834         * gnulib/import/Makefile.in: Re-generate.
13835
13836 2018-03-16  Tom Tromey  <tom@tromey.com>
13837
13838         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13839         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13840         * utils.c (do_free_section_addr_info)
13841         (make_cleanup_free_section_addr_info): Remove.
13842         * symfile.h (struct other_sections): Add constructor.
13843         (struct section_addr_info): Remove.
13844         (section_addr_info): New typedef.
13845         (struct sym_fns) <sym_offsets>: Change type of parameter.
13846         (build_section_addr_info_from_objfile)
13847         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13848         (default_symfile_offsets, symbol_file_add)
13849         (symbol_file_add_from_bfd)
13850         (build_section_addr_info_from_section_table): Update.
13851         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13852         * symfile.c (alloc_section_addr_info): Remove.
13853         (build_section_addr_info_from_section_table): Change return type.
13854         Update.
13855         (build_section_addr_info_from_bfd)
13856         (build_section_addr_info_from_objfile): Likewise.
13857         (free_section_addr_info): Remove.
13858         (relative_addr_info_to_section_offsets): Change type of "addrs".
13859         (addrs_section_compar): Now a std::sort comparator.
13860         (addrs_section_sort): Change return type.
13861         (addr_info_make_relative): Change type of "addrs".  Update.
13862         (default_symfile_offsets, syms_from_objfile_1)
13863         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13864         (symbol_file_add_separate): Update.
13865         (symbol_file_add): Change type of "addrs".  Update.
13866         (add_symbol_file_command): Update.  Remove cleanups.
13867         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13868         cleanups.
13869         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13870         * solib.c (solib_read_symbols): Update.
13871         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13872         * machoread.c (macho_symfile_offsets): Update.
13873         * jit.c (jit_bfd_try_read_symtab): Update.
13874
13875 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13876
13877         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13878         unittests/utils-selftests.c.
13879         * unittests/utils-selftests.c: New file.
13880
13881 2018-03-14  Tom Tromey  <tom@tromey.com>
13882
13883         PR cli/14977:
13884         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13885         for NULL.
13886
13887 2018-03-14  Tom Tromey  <tom@tromey.com>
13888
13889         PR cli/19918:
13890         * printcmd.c (printf_pointer): Allow "-" in format.
13891
13892 2018-03-14  Tom Tromey  <tom@tromey.com>
13893
13894         * printcmd.c (_initialize_printcmd): Add usage to printf.
13895
13896 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13897
13898         * MAINTAINERS: Update my email address.
13899
13900 2018-03-13  Tom Tromey  <tom@tromey.com>
13901
13902         * machoread.c (macho_check_dsym): Change filenamep to a
13903         std::string*.
13904         (macho_symfile_read): Update.
13905         * symfile.c (load_command): Use std::string.
13906
13907 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13908
13909         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13910         to error message string.
13911         (riscv_register_name): Use xsnprintf instead of sprintf.
13912         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13913         internal_error.
13914         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13915         error.
13916         (riscv_push_dummy_call): Likewise.
13917
13918 2018-03-12  Tom Tromey  <tom@tromey.com>
13919
13920         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13921         Use gdb::byte_vector.
13922         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13923
13924 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13925
13926         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13927         parameter type to readable_regcache.
13928         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13929         the declaration.
13930
13931 2018-03-11  Tom Tromey  <tom@tromey.com>
13932
13933         * dwarf2read.c (struct nextfield): Add initializers.
13934         (struct nextfnfield): Remove.
13935         (struct fnfieldlist): Add initializers.  Remove "length" and
13936         "head", use std::vector.
13937         (struct decl_field_list): Remove.
13938         (struct field_info): Add initializers.
13939         <fields, baseclasses>: Now std::vector.
13940         <nbaseclasses, nfnfields, typedef_field_list_count,
13941         nested_types_list_count>: Remove.
13942         (dwarf2_add_field, dwarf2_add_type_defn)
13943         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13944         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13945         (process_structure_scope): Update.
13946
13947 2018-03-11  Tom Tromey  <tom@tromey.com>
13948
13949         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13950         for use by std::sort.
13951         (build_type_psymtabs_1): Use std::vector.
13952
13953 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13954
13955         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13956         and LIBMPFR in the printed configuration.
13957
13958 2018-03-08  Tom Tromey  <tom@tromey.com>
13959
13960         * source.c (get_filename_and_charpos): Use scoped_fd.
13961         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13962         (procfs_pidlist): Likewise.
13963         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13964         (iterate_over_mappings): Likewise.
13965
13966 2018-03-08  Tom Tromey  <tom@tromey.com>
13967
13968         * infcall.c (struct call_return_meta_info)
13969         <stack_temporaries_enabled>: Remove.
13970         (get_call_return_value, call_function_by_hand_dummy): Update.
13971         * thread.c (disable_thread_stack_temporaries): Remove.
13972         (enable_thread_stack_temporaries): Remove.
13973         (thread_stack_temporaries_enabled_p): Return bool.
13974         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13975         (get_last_thread_stack_temporary): Update.
13976         * eval.c (evaluate_subexp): Update.
13977         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13978         class, not a function.
13979         (value_ptr, value_vec): Remove typedefs.
13980         (class thread_info) <stack_temporaries_enabled>: Now bool.
13981         <stack_temporaries>: Now a std::vector.
13982         (thread_stack_temporaries_enabled_p)
13983         (value_in_thread_stack_temporaries): Return bool.
13984
13985 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13986
13987         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13988         (getpkt_or_notif_sane_1): Likewise.
13989
13990 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13991
13992         * build-id.c (build_id_to_debug_bfd): Use std::string.
13993
13994 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13995
13996         * build-id.c (find_separate_debug_file_by_buildid): Return
13997         std::string.
13998         * build-id.h (find_separate_debug_file_by_buildid): Return
13999         std::string.
14000         * coffread.c (coff_symfile_read): Adjust to std::string.
14001         * elfread.c (elf_symfile_read): Adjust to std::string.
14002         * symfile.c (separate_debug_file_exists): Change parameter to
14003         std::string.
14004         (find_separate_debug_file): Return std::string.
14005         (find_separate_debug_file_by_debuglink): Return std::string.
14006         * symfile.h (find_separate_debug_file_by_debuglink): Return
14007         std::string.
14008
14009 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
14010
14011         * common/xml-utils.c (xml_escape_text): Move code to...
14012         (xml_escape_text_append): ... this new function.
14013         * common/xml-utils.h (xml_escape_text_append): New declaration.
14014         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
14015         New function.
14016         (_initialize_xml_utils): register test_xml_escape_text_append as
14017         a selftest.
14018
14019 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
14020
14021         * defs.h: Remove MAX_REGISTER_SIZE.
14022         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
14023         asserts.
14024         * python/py-unwind.c (pyuw_sniffer): Likewise.
14025
14026 2018-03-07  Tom Tromey  <tom@tromey.com>
14027
14028         * linux-tdep.c (linux_info_proc): Update.
14029         * target.h (struct target_ops) <to_fileio_readlink>: Return
14030         optional<string>.
14031         (target_fileio_readlink): Return optional<string>.
14032         * remote.c (remote_hostio_readlink): Return optional<string>.
14033         * inf-child.c (inf_child_fileio_readlink): Return
14034         optional<string>.
14035         * target.c (target_fileio_readlink): Return optional<string>.
14036
14037 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14038
14039         * regcache.c (cooked_read_test): Add riscv to the list of
14040         architectures that have a save_reggroup.
14041
14042 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14043
14044         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14045         value is not a dynamic class object.
14046
14047 2018-03-06  Tom Tromey  <tom@tromey.com>
14048
14049         * rust-exp.y: Formatting fixes.
14050
14051 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14052
14053         * riscv-tdep.c (riscv_register_name): Remove target description
14054         support.
14055         (riscv_gdbarch_init): Remove target description check.
14056
14057 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14058
14059         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14060         comment.
14061         * riscv-tdep.h: Likewise.
14062
14063 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14064
14065         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14066         (riscv_pseudo_register_write): Delete.
14067         (riscv_gdbarch_init): Remove all use of pseudo registers.
14068
14069 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14070
14071         * record-btrace.c (btrace_print_lines): Replace cleanup
14072         parameter with RAII equivalents.
14073         (btrace_insn_history): Replace cleanup with RAII equivalents.
14074         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14075         make_cleanup_ui_out_tuple_begin_end): Remove.
14076         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14077         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14078         make_cleanup_ui_out_list_begin_end): Remove.
14079
14080 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14081
14082         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14083         parameter types to std::vector.  Use bool.
14084         (record_btrace_wait): Replace VEC(tp_t) with
14085         std::vector<thread_info *>.
14086         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14087
14088 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14089
14090         * record-btrace.c (record_btrace_disable_callback): Remove.
14091         (struct scoped_btrace_disable): New.
14092         (record_btrace_open): Use scoped_btrace_disable.
14093
14094 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14095
14096         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14097         reading values from registers.
14098
14099 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14100
14101         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14102         where appropriate.
14103
14104 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14105
14106         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14107         change parameter type.  Use GDB's print functions, and use
14108         core_addr_to_string where appropriate.
14109         (riscv_push_dummy_call): Use core_addr_to_string where
14110         appropriate, update call to riscv_print_arg_location, and reindent
14111         a few lines.
14112         (riscv_return_value): Update call to riscv_print_arg_location.
14113
14114 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14115             Tim Newsome <tim@sifive.com>
14116             Albert Ou <a0u@eecs.berkeley.edu>
14117             Darius Rad <darius@bluespec.com>
14118
14119         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14120         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14121         (ALLDEPFILES): Add riscv-tdep.c
14122         * configure.tgt: Add riscv support.
14123         * riscv-tdep.c: New file.
14124         * riscv-tdep.h: New file.
14125         * NEWS: Mention new target.
14126         * MAINTAINERS: Add entry for riscv.
14127
14128 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14129
14130         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14131         fields within aggregates.
14132
14133 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14134
14135         * record-btrace.c (btrace_print_lines): Change type of flags to
14136         gdb_disassembly_flags.
14137
14138 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14139
14140         * fbsd-nat.c: Include "inf-ptrace.h".
14141         (USE_SIGTRAP_SIGINFO): Conditionally define.
14142         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14143         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14144         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14145         function.
14146         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14147         Likewise.
14148         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14149         Likewise.
14150         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14151         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14152         "supports_stopped_by_hw_breakpoint" target methods.
14153
14154 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14155
14156         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14157         * fbsd-nat.c (debug_fbsd_nat): New variable.
14158         (show_fbsd_nat_debug): New function.
14159         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14160         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14161
14162 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14163
14164         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14165         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14166         prototype.
14167         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14168         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14169         method.
14170
14171 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14172
14173         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14174         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14175
14176 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14177
14178         * charset.c (struct charset_vector): New.
14179         (charsets): Change type to charset_vector.
14180         (find_charset_names): Adjust.
14181         (add_one): Adjust.
14182         (_initialize_charset): Adjust.
14183
14184 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14185
14186         * progspace.h (struct program_space) <deleted_solibs>: Change
14187         type to std::vector<std::string>.
14188         * progspace.c (clear_program_space_solib_cache): Adjust.
14189         * breakpoint.c (print_solib_event): Adjust.
14190         (check_status_catch_solib): Adjust.
14191         * solib.c (update_solib_list): Adjust.
14192         * ui-out.h (class ui_out) <field_string>: New overload.
14193         * ui-out.c (ui_out::field_string): New overload.
14194
14195 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14196
14197         * progspace.h (struct program_space): Add constructor and
14198         destructor, initialize fields.
14199         (add_program_space): Remove.
14200         * progspace.c (add_program_space): Rename to...
14201         (program_space::program_space): ... this.
14202         (release_program_space): Rename to...
14203         (program_space::~program_space): ... this.
14204         (delete_program_space): Use delete to delete program_space.
14205         (initialize_progspace): Use new to allocate program_space.
14206         * inferior.c (add_inferior_with_spaces): Likewise.
14207         (clone_inferior_command): Likewise.
14208         * infrun.c (follow_fork_inferior): Likewise.
14209         (handle_vfork_child_exec_or_exit): Likewise.
14210
14211 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14212
14213         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14214         (delim_string_to_char_ptr_vec): Return std::vector of
14215         gdb::unique_xmalloc_ptr.
14216         (dirnames_to_char_ptr_vec_append): Take std::vector of
14217         gdb::unique_xmalloc_ptr.
14218         (dirnames_to_char_ptr_vec): Return std::vector of
14219         gdb::unique_xmalloc_ptr.
14220         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14221         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14222         (delim_string_to_char_ptr_vec): Return an std::vector of
14223         gdb::unique_xmalloc_ptr, adjust the code.
14224         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14225         gdb::unique_xmalloc_ptr, adjust the code.
14226         (dirnames_to_char_ptr_vec): Return an std::vector of
14227         gdb::unique_xmalloc_ptr, adjust the code.
14228         * auto-load.c (auto_load_safe_path_vec): Change type to
14229         std::vector of gdb::unique_xmalloc_ptr.
14230         (auto_load_expand_dir_vars): Return an std::vector of
14231         gdb::unique_xmalloc_ptr, adjust the code.
14232         (auto_load_safe_path_vec_update): Adjust.
14233         (filename_is_in_auto_load_safe_path_vec): Adjust.
14234         (auto_load_objfile_script_1): Adjust.
14235         * build-id.c (build_id_to_debug_bfd): Adjust.
14236         * linux-thread-db.c (thread_db_load_search): Adjust.
14237         * source.c (add_path): Adjust.
14238         (openp): Adjust.
14239         * symfile.c (find_separate_debug_file): Adjust.
14240         * utils.c (do_free_char_ptr_vec): Remove.
14241         (make_cleanup_free_char_ptr_vec): Remove.
14242
14243 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14244
14245         PR gdb/22907
14246         * common/pathstuff.c: Conditionally include "<windows.h>".
14247
14248 2018-03-01  Georg Sauthoff  <mail@georg.so>
14249
14250         PR gdb/22888
14251         * gcore.in: Quote variables and switch interpreter to bash.
14252
14253 2018-03-01  Tom Tromey  <tom@tromey.com>
14254
14255         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14256         assertion.  Add assertion for discriminant_index.
14257         (quirk_rust_enum): Use correct base type name in univariant case.
14258
14259 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14260
14261         * record.c (get_call_history_modifiers): Return a
14262         record_print_flags.
14263         (cmd_record_call_history): Adjust.
14264         * record-btrace.c (record_btrace_call_history): Adjust.
14265         (record_btrace_call_history_range): Adjust.
14266         (record_btrace_call_history_from): Adjust.
14267         * target-debug.h (target_debug_print_record_print_flags): New.
14268         * target-delegates.c: Re-generate.
14269         * target.c (target_call_history): Change flags type.
14270         (target_call_history_from): Likewise.
14271         (target_call_history_range): Likewise.
14272         * target.h (struct target_ops) <target_call_history>: Likewise.
14273         (target_call_history_from): Likewise.
14274         (target_call_history_range): Likewise.
14275
14276 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14277             Simon Marchi  <simon.marchi@polymtl.ca>
14278
14279         * common/common-utils.c: Include "sys/stat.h".
14280         (is_regular_file): Move here from "source.c"; change return
14281         type to "bool".
14282         * common/common-utils.h (is_regular_file): New prototype.
14283         * common/pathstuff.c (contains_dir_separator): New function.
14284         * common/pathstuff.h (contains_dir_separator): New prototype.
14285         * source.c: Don't include "sys/stat.h".
14286         (is_regular_file): Move to "common/common-utils.c".
14287
14288 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14289
14290         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14291         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14292         * auto-load.c: Include "common/pathstuff.h".
14293         * common/common-def.h (current_directory): Move here.
14294         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14295         function.
14296         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14297         prototype.
14298         * common/pathstuff.c: New file.
14299         * common/pathstuff.h: New file.
14300         * compile/compile.c: Include "common/pathstuff.h".
14301         * defs.h (current_directory): Move to "common/common-defs.h".
14302         * dwarf2read.c: Include "common/pathstuff.h".
14303         * exec.c: Likewise.
14304         * guile/scm-safe-call.c: Likewise.
14305         * linux-thread-db.c: Likewise.
14306         * main.c: Likewise.
14307         * nto-tdep.c: Likewise.
14308         * objfiles.c: Likewise.
14309         * source.c: Likewise.
14310         * symtab.c: Likewise.
14311         * utils.c: Include "common/pathstuff.h".
14312         (gdb_realpath): Move to "common/pathstuff.c".
14313         (gdb_realpath_keepfile): Likewise.
14314         (gdb_abspath): Likewise.
14315         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14316         (gdb_realpath_keepfile): Likewise.
14317         (gdb_abspath): Likewise.
14318
14319 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14320
14321         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14322         wildcard process pid for super_resume for kernels with a
14323         specific bug.
14324
14325 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14326
14327         * compile/compile.c (get_args): Add additional comments
14328         explaining function.
14329
14330 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14331             Tom Tromey  <tom@tromey.com>
14332
14333         * target.h (memory_write_request_s): Remove typedef.  Don't define
14334         VEC.
14335         (target_write_memory_blocks): Change argument to std::vector.
14336         (struct memory_write_request): Add constructor.
14337         * target-memory.c (compare_block_starting_address): Return bool.
14338         Change argument types.
14339         (claim_memory): Change arguments to use std::vector.
14340         (split_regular_and_flash_blocks, blocks_to_erase)
14341         (compute_garbled_blocks): Likewise.
14342         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14343         (target_write_memory_blocks): Change argument to std::vector.
14344         * symfile.c (struct load_section_data): Add constructor and
14345         destructor.  Use std::vector for "requests".
14346         (struct load_progress_data): Add initializers.
14347         (load_section_callback): Update.  Use "new".
14348         (clear_memory_write_data): Remove.
14349         (generic_load): Update.
14350
14351 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14352
14353         * arch/aarch64.h: Use common/tdesc.h.
14354
14355 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14356
14357         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14358         architecture with a 64-bit ABI.
14359
14360 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14361
14362         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14363         ahead of target description loading.
14364
14365 2018-02-26  Tom Tromey  <tom@tromey.com>
14366
14367         * stack.c (backtrace_command_1): Update.
14368         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14369         of "flags".
14370         * python/py-framefilter.c (py_print_frame)
14371         (gdbpy_apply_frame_filter): Change type of "flags".
14372         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14373         of "flags".
14374         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14375         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14376         * extension.h (enum frame_filter_flag): Rename from
14377         frame_filter_flags.
14378         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14379         (apply_ext_lang_frame_filter): Change type of "flags".
14380         * extension.c (apply_ext_lang_frame_filter): Change type of
14381         "flags".
14382         * extension-priv.h (struct extension_language_ops)
14383         <apply_frame_filter>: Change type of "flags".
14384
14385 2018-02-26  Tom Tromey  <tom@tromey.com>
14386
14387         PR python/16497:
14388         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14389         off-by-one in py_end computation.
14390         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14391         PRINT_MORE_FRAMES.
14392         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14393         constant.
14394
14395 2018-02-26  Tom Tromey  <tom@tromey.com>
14396
14397         * dwarf2read.c (struct variant_field): New.
14398         (struct nextfield) <variant>: New field.
14399         (dwarf2_add_field): Handle DW_TAG_variant_part.
14400         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14401         discriminated union.
14402         (read_structure_type): Handle DW_TAG_variant_part.
14403         (handle_struct_member_die): New function, extracted from
14404         process_structure_scope.  Handle DW_TAG_variant.
14405         (process_structure_scope): Handle discriminated unions.  Call
14406         handle_struct_member_die.
14407
14408 2018-02-26  Tom Tromey  <tom@tromey.com>
14409
14410         * rust-lang.h (rust_last_path_segment): Declare.
14411         * rust-lang.c (rust_last_path_segment): Now public.  Change
14412         contract.
14413         (struct disr_info): Remove.
14414         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14415         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14416         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14417         (rust_enum_p, rust_enum_variant): New function.
14418         (rust_underscore_fields): Remove "offset" parameter.
14419         (rust_print_enum): New function.
14420         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14421         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14422         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14423         enums.
14424         (rust_internal_print_type): New function, from rust_print_type.
14425         Remove enum code.
14426         (rust_print_type): Call rust_internal_print_type.
14427         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14428         Update enum handling.
14429         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14430         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14431         (rust_union_quirks): New functions.
14432         (process_full_comp_unit, process_full_type_unit): Call
14433         rust_union_quirks.
14434         (process_structure_scope): Update rust_unions if necessary.
14435
14436 2018-02-26  Tom Tromey  <tom@tromey.com>
14437
14438         * value.h (value_union_variant): Declare.
14439         * valops.c (value_union_variant): New function.
14440         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14441         (struct discriminant_info): New.
14442         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14443         enumerator.
14444         (struct main_type) <flag_discriminated_union>: New field.
14445
14446 2018-02-26  Tom Tromey  <tom@tromey.com>
14447
14448         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14449         unittests/unpack-selftests.c.
14450         * unittests/unpack-selftests.c: New file.
14451         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14452
14453 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14454
14455         * dwarf2read.c (struct partial_die_info) <read>: New method.
14456         (read_partial_die): Remove the declaration.
14457         (load_partial_dies): Update.
14458         (partial_die_info::partial_die_info):
14459         (read_partial_die): Change it to partial_die_info::read.
14460
14461 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14462
14463         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14464         (fixup_partial_die): Remove declaration.
14465         (scan_partial_symbols): Update.
14466         (partial_die_parent_scope): Likewise.
14467         (partial_die_full_name): Likewise.
14468         (fixup_partial_die): Change it to partial_die_info::fixup.
14469
14470 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14471
14472         * dwarf2read.c (read_partial_die): Update the declaration.
14473         (load_partial_dies): Caller update.
14474         (read_partial_die): Remove one argument abbrev_len.
14475
14476 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14477
14478         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14479         assignment operator.
14480         (load_partial_dies): Use ctor and copy ctor.
14481         (read_partial_die): Update.
14482         (dwarf2_cu::find_partial_die): Use ctor.
14483
14484 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14485
14486         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14487         (find_partial_die_in_comp_unit): Change it to
14488         dwarf2_cu::find_partial_die.
14489         (find_partial_die): Update.
14490
14491 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14492
14493         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14494         is NULL.
14495
14496 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14497
14498         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14499
14500 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14501
14502         * arch/amd64.h: Use common/tdesc.h.
14503         * arch/i386.c: Likewise.
14504         * arch/i386.h: Likewise.
14505         * arch/tic6x.c: Likewise.
14506         * arch/tdesc.h: Move file from here...
14507         * common/tdesc.h: ...to here.
14508         * features/aarch64-core.c: Regenerate.
14509         * features/aarch64-fpu.c: Regenerate.
14510         * features/i386/32bit-avx.c: Regenerate.
14511         * features/i386/32bit-avx512.c: Regenerate.
14512         * features/i386/32bit-core.c: Regenerate.
14513         * features/i386/32bit-linux.c: Regenerate.
14514         * features/i386/32bit-mpx.c: Regenerate.
14515         * features/i386/32bit-pkeys.c: Regenerate.
14516         * features/i386/32bit-sse.c: Regenerate.
14517         * features/i386/64bit-avx.c: Regenerate.
14518         * features/i386/64bit-avx512.c: Regenerate.
14519         * features/i386/64bit-core.c: Regenerate.
14520         * features/i386/64bit-linux.c: Regenerate.
14521         * features/i386/64bit-mpx.c: Regenerate.
14522         * features/i386/64bit-pkeys.c: Regenerate.
14523         * features/i386/64bit-segments.c: Regenerate.
14524         * features/i386/64bit-sse.c: Regenerate.
14525         * features/i386/x32-core.c: Regenerate.
14526         * features/tic6x-c6xp.c: Regenerate.
14527         * features/tic6x-core.c: Regenerate.
14528         * features/tic6x-gp.c: Regenerate.
14529         * target-descriptions.c: Use common/tdesc.h.
14530         * target-descriptions.h: Likewise.
14531
14532 2018-02-24  Tom Tromey  <tom@tromey.com>
14533
14534         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14535         (try_thread_db_load_from_dir, thread_db_load_search): Use
14536         std::string.
14537         (info_auto_load_libthread_db_compare): Return bool.  Change
14538         argument types.
14539         (info_auto_load_libthread_db): Use std::vector, std::string.
14540         Remove cleanups.
14541
14542 2018-02-24  Tom Tromey  <tom@tromey.com>
14543
14544         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14545         std::string.
14546         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14547         std::string*.
14548         * gdbarch.c: Rebuild.
14549         * gdbarch.h: Rebuild.
14550         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14551         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14552         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14553         std::string*.
14554
14555 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14556
14557         * gdbtypes.h (sect_offset): Change type to uint64_t.
14558         (sect_offset_str): New function.
14559         * dwarf2read.c (create_addrmap_from_aranges): Use
14560         sect_offset_str.
14561         (error_check_comp_unit_head): Likewise.
14562         (create_debug_type_hash_table): Likewise.
14563         (read_cutu_die_from_dwo): Likewise.
14564         (init_cutu_and_read_dies): Likewise.
14565         (init_cutu_and_read_dies_no_follow): Likewise.
14566         (process_psymtab_comp_unit_reader): Likewise.
14567         (partial_die_parent_scope): Likewise.
14568         (peek_die_abbrev): Likewise.
14569         (process_queue): Likewise.
14570         (dwarf2_physname): Likewise.
14571         (read_namespace_alias): Likewise.
14572         (read_import_statement): Likewise.
14573         (create_dwo_cu_reader): Likewise.
14574         (create_cus_hash_table): Likewise.
14575         (lookup_dwo_cutu): Likewise.
14576         (inherit_abstract_dies): Likewise.
14577         (read_func_scope): Likewise.
14578         (read_call_site_scope): Likewise.
14579         (dwarf2_add_member_fn): Likewise.
14580         (read_common_block): Likewise.
14581         (read_module_type): Likewise.
14582         (read_typedef): Likewise.
14583         (read_subrange_type): Likewise.
14584         (load_partial_dies): Likewise.
14585         (read_partial_die): Likewise.
14586         (find_partial_die): Likewise.
14587         (read_str_index): Likewise.
14588         (dwarf2_string_attr): Likewise.
14589         (build_error_marker_type): Likewise.
14590         (lookup_die_type): Likewise.
14591         (dump_die_shallow): Likewise.
14592         (follow_die_ref): Likewise.
14593         (dwarf2_fetch_die_loc_sect_off): Likewise.
14594         (dwarf2_fetch_constant_bytes): Likewise.
14595         (follow_die_sig): Likewise.
14596         (get_signatured_type): Likewise.
14597         (get_DW_AT_signature_type): Likewise.
14598         (dwarf2_find_containing_comp_unit): Likewise.
14599         (set_die_type): Likewise.
14600
14601 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14602
14603         * arch/aarch64.c: Include "common-defs.h".
14604         * arch/amd64.c: Likewise.
14605         * arch/i386.c: Likewise.
14606
14607 2018-02-21  Tom Tromey  <tom@tromey.com>
14608
14609         * value.h: (extract_field_op): Update.
14610         * eval.c (extract_field_op): Return a const char *.
14611         * expression.h (parse_expression_for_completion): Update.
14612         * completer.c (complete_expression): Update.
14613         (add_struct_fields): Make fieldname const.
14614         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14615         (mark_completion_tag, parse_exp_in_context_1): Update.
14616         (parse_expression_for_completion): Change "name" to
14617         unique_xmalloc_ptr*.
14618
14619 2018-02-21  Tom Tromey  <tom@tromey.com>
14620
14621         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14622
14623 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14624
14625         * avr-tdep.c (avr_read_pc): Change parameter type to
14626         readable_regcache.
14627         * gdbarch.sh (read_pc): Likewise.
14628         * gdbarch.c: Re-generated.
14629         * gdbarch.h: Re-generated.
14630         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14631         readable_regcache.
14632         * ia64-tdep.c (ia64_read_pc): Likewise.
14633         * mips-tdep.c (mips_read_pc): Likewise.
14634         * spu-tdep.c (spu_read_pc): Likewise.
14635
14636 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14637
14638         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14639         * regcache-dump.c: New file.
14640         * regcache.c: Move register_dump to regcache-dump.c.
14641         (maintenance_print_registers): Likewise.
14642         (maintenance_print_raw_registers): Likewise.
14643         (maintenance_print_cooked_registers): Likewise.
14644         (maintenance_print_register_groups): Likewise.
14645         (maintenance_print_remote_registers): Likewise.
14646         (_initialize_regcache): Likewise.
14647         * regcache.h (register_dump): Moved from regcache.c.
14648
14649 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14650
14651         * regcache.c (regcache::regcache): Update.
14652         (regcache::invalidate): Move it to detached_regcache::invalidate.
14653         (get_thread_arch_aspace_regcache): Update.
14654         (regcache::raw_update): Update.
14655         (regcache::cooked_read): Remove some code.
14656         (regcache::cooked_read_value): Likewise.
14657         (regcache::raw_write): Remove assert on m_readonly_p.
14658         (regcache::raw_supply_integer): Move it to
14659         detached_regcache::raw_supply_integer.
14660         (regcache::raw_supply_zeroed): Likewise.
14661         * regcache.h (detached_regcache) <raw_supply_integer>: New
14662         declaration.
14663         <raw_supply_zeroed, invalidate>: Likewise.
14664         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14665         <invalidate>: Likewise.
14666         <m_readonly_p>: Removed.
14667
14668 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14669
14670         * infcmd.c (get_return_value): Let stop_regs point to
14671         get_current_regcache.
14672         * regcache.c (regcache::regcache): Remove.
14673         (register_dump_reg_buffer): New class.
14674         (regcache_print): Adjust.
14675         * regcache.h (regcache): Remove constructors.
14676
14677 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14678
14679         * regcache.c (class register_dump): New class.
14680         (register_dump_regcache, register_dump_none): New class.
14681         (register_dump_remote, register_dump_groups): New class.
14682         (regcache_print): Update.
14683         * regcache.h (regcache_dump_what): Move it to regcache.c.
14684         (regcache) <dump>: Remove.
14685
14686 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14687
14688         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14689          reg_buffer_rw *.
14690         (jit_unwind_reg_set_impl): Call raw_supply.
14691         (jit_frame_sniffer): Use reg_buffer_rw.
14692         * record-full.c (record_full_core_regbuf): Change its type.
14693         (record_full_core_open_1): Use reg_buffer_rw.
14694         (record_full_close): Likewise.
14695         (record_full_core_fetch_registers): Use regcache->raw_supply.
14696         (record_full_core_store_registers): Likewise.
14697         * regcache.c (regcache::get_register_status): Move it to
14698         reg_buffer.
14699         (regcache_raw_set_cached_value): Remove.
14700         (regcache::raw_set_cached_value): Remove.
14701         (regcache::raw_write): Call raw_supply.
14702         (regcache::raw_supply): Move it to reg_buffer_rw.
14703         * regcache.h (regcache_raw_set_cached_value): Remove.
14704         (reg_buffer_rw): New class.
14705
14706 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14707
14708         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14709         readonly_detached_regcache.
14710         (dummy_frame_prev_register): Use regcache->cooked_read.
14711         * frame.c (frame_save_as_regcache): Change return type.
14712         (frame_pop): Update.
14713         * frame.h (frame_save_as_regcache): Update declaration.
14714         * inferior.h (get_infcall_suspend_state_regcache): Update
14715         declaration.
14716         * infrun.c (infcall_suspend_state) <registers>: use
14717         readonly_detached_regcache.
14718         (save_infcall_suspend_state): Don't use regcache_dup.
14719         (get_infcall_suspend_state_regcache): Change return type.
14720         * linux-fork.c (struct fork_info) <savedregs>: Change to
14721         readonly_detached_regcache.
14722         <pc>: New field.
14723         (fork_save_infrun_state): Don't use regcache_dup.
14724         (info_checkpoints_command): Adjust.
14725         * mi/mi-main.c (register_changed_p): Update declaration.
14726         (mi_cmd_data_list_changed_registers): Use
14727         readonly_detached_regcache.
14728         (register_changed_p): Change parameter type to
14729         readonly_detached_regcache.
14730         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14731         readonly_detached_regcache.
14732         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14733         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14734         New.
14735         (regcache::save): Move it to reg_buffer.
14736         (regcache::restore): Change parameter type.
14737         (regcache_dup): Remove.
14738         * regcache.h (reg_buffer) <save>: New method.
14739         (readonly_detached_regcache): New class.
14740         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14741         readonly_detached_regcache.
14742         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14743
14744 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14745
14746         * frame.c (frame_save_as_regcache): Use regcache method save.
14747         (frame_pop): Use regcache method restore.
14748         * infrun.c (restore_infcall_suspend_state): Likewise.
14749         * linux-fork.c (fork_load_infrun_state): Likewise.
14750         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14751         save.
14752         * regcache.c (regcache_save): Remove.
14753         (regcache::restore): More asserts.
14754         (regcache_cpy): Remove.
14755         * regcache.h (regcache_save): Remove the declaration.
14756         (regcache::restore): Move from private to public.
14757         Remove the friend declaration of regcache_cpy.
14758         (regcache_cpy): Remove declaration.
14759
14760 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14761
14762         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14763         parameter type to 'readable_regcache *'.
14764         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14765         * arm-tdep.c (arm_neon_quad_read): Likewise.
14766         (arm_pseudo_read): Likewise.
14767         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14768         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14769         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14770         * gdbarch.c: Re-generated.
14771         * gdbarch.h: Re-generated.
14772         * gdbarch.sh (pseudo_register_read): Change parameter type to
14773         'readable_regcache *'.
14774         (pseudo_register_read_value): Likewise.
14775         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14776         (h8300_pseudo_register_read): Likewise.
14777         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14778         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14779         (i386_pseudo_register_read_into_value): Likewise.
14780         (i386_pseudo_register_read_value): Likewise.
14781         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14782         declaration.
14783         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14784         * m32c-tdep.c (m32c_raw_read): Likewise.
14785         (m32c_read_flg): Likewise.
14786         (m32c_banked_register): Likewise.
14787         (m32c_banked_read): Likewise.
14788         (m32c_sb_read): Likewise.
14789         (m32c_part_read): Likewise.
14790         (m32c_cat_read): Likewise.
14791         (m32c_r3r2r1r0_read): Likewise.
14792         (m32c_pseudo_register_read): Likewise.
14793         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14794         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14795         (mep_pseudo_cr64_read): Likewise.
14796         (mep_pseudo_register_read): Likewise.
14797         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14798         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14799         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14800         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14801         (regcache::cooked_read): Likewise.
14802         (regcache::cooked_read_value): Likewise.
14803         (regcache_cooked_read_signed):
14804         (regcache::cooked_read): Likewise.
14805         * regcache.h (readable_regcache): New class.
14806         (regcache): Inherit readable_regcache.  Move some methods to
14807         readable_regcache.
14808         * rl78-tdep.c (rl78_pseudo_register_read): Change
14809         parameter type to 'readable_regcache *'.
14810         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14811         (e500_pseudo_register_read): Change parameter type to
14812         'readable_regcache *'.
14813         (dfp_pseudo_register_read): Likewise.
14814         (vsx_pseudo_register_read): Likewise.
14815         (efpr_pseudo_register_read): Likewise.
14816         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14817         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14818         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14819         (sh64_pseudo_register_read): Likewise.
14820         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14821         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14822         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14823         (spu_pseudo_register_read): Likewise.
14824         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14825         (xtensa_pseudo_register_read): Likewise.
14826
14827 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14828
14829         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14830         (regcache::arch): Move it to reg_buffer::arch.
14831         (regcache::register_buffer): Likewise.
14832         (regcache::assert_regnum): Likewise.
14833         (regcache::num_raw_registers): Likewise.
14834         * regcache.h (reg_buffer): New class.
14835         (regcache): Inherit reg_buffer.
14836
14837 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14838
14839         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14840         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14841
14842 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14843
14844         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14845
14846 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14847
14848         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14849         (SFILES): Remove common/*.c files.
14850         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14851         * common/common.host: Add common reference.
14852         * configure.ac: Likewise.
14853         * configure: Regenerate.
14854
14855 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14856
14857         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14858         (block_initialize_namespace): Use new.
14859         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14860         (dwarf2_free_objfile): Use delete.
14861         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14862         (copy_type_recursive): Use new.
14863         * gdb_obstack.h (allocate_on_obstack): New.
14864
14865 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14866
14867         PR gdb/22849
14868         * inferior.c (exit_inferior_1): Reset inf->control.
14869
14870 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14871
14872         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14873         declaration.
14874
14875 2018-02-14  Pedro Alves  <palves@redhat.com>
14876
14877         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14878         frame_cleanup_after_sniffer on exception.
14879
14880 2018-02-14  Tom Tromey  <tom@tromey.com>
14881
14882         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14883         const.
14884         (solib_bfd_open): Make pathname const.
14885         * solib.c (solib_bfd_open): Make pathname const.
14886         * solib-spu.c (spu_bfd_fopen): Make name const.
14887         (spu_bfd_open): Make pathname const.
14888         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14889         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14890
14891 2018-02-14  Tom Tromey  <tom@tromey.com>
14892
14893         * symfile.c (symfile_bfd_open): Update.
14894         * source.h (openp, source_full_path_of, find_and_open_source):
14895         Change argument type to unique_xmalloc_ptr.
14896         * source.c (openp): Take a unique_xmalloc_ptr.
14897         (source_full_path_of, find_and_open_source): Likewise.
14898         (open_source_file, symtab_to_fullname): Update.
14899         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14900         unique_xmalloc_ptr.
14901         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14902         (exec_file_find): Update.
14903         * psymtab.c (psymtab_to_fullname): Update.
14904         * nto-tdep.h (nto_find_and_open_solib): Update.
14905         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14906         unique_xmalloc_ptr.
14907         * exec.c (exec_file_attach): Update.
14908         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14909         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14910
14911 2018-02-14  Tom Tromey  <tom@tromey.com>
14912
14913         * solib.c: Include source.h.
14914         * nto-tdep.c: Include source.h.
14915         * mi/mi-cmd-env.c: Include source.h.
14916         * infcmd.c: Include source.h.
14917         * exec.c: Include source.h.
14918         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14919         (add_path, directory_switch, source_path, init_source_path): Move
14920         declarations...
14921         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14922         (add_path, directory_switch, source_path, init_source_path):
14923         ...here.
14924
14925 2018-02-14  Tom Tromey  <tom@tromey.com>
14926
14927         * solist.h (exec_file_find, solib_find): Return
14928         unique_xmalloc_ptr.
14929         (solib_bfd_fopen): Take a const char *.
14930         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14931         (exec_file_find, solib_find): Likewise.
14932         (solib_bfd_fopen): Do not take ownership of "pathname".
14933         (solib_bfd_open): Use unique_xmalloc_ptr.
14934         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14935         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14936         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14937         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14938
14939 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14940
14941         * ada-lang.c (name_match_type_from_name): Remove reference to
14942         ada_name_for_lookup in function's documentation.
14943         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14944
14945 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14946
14947         * defs.h (enum openp_flags): New enum.
14948         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14949         Move to enum openp_flags.
14950         (openp_flags): New enum flags.
14951         (openp): Change parameter type to openp_flags.
14952         * source.c (openp): Change parameter type to openp_flags.
14953         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14954         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14955
14956 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14957
14958         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14959         per-command.
14960
14961 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14962
14963         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14964         into...
14965         (class dwarf2_queue_guard): ...the destructor of this new class.
14966         (dw2_do_instantiate_symtab): Create instance of the new class
14967         dwarf2_queue_guard, remove cleanup.
14968
14969 2018-02-09  Tom Tromey  <tom@tromey.com>
14970
14971         * source.c (find_source_lines): Don't reference past the end of
14972         the vector.
14973
14974 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14975
14976         * remote.c (remote_btrace_maybe_reopen): Change error message.
14977         * btrace.c (btrace_enable): Likewise.
14978         (parse_xml_btrace): Likewise.
14979         (parse_xml_btrace_conf): Likewise.
14980
14981 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14982
14983         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14984         (linux_enable_pt, linux_enable_bts): Call
14985         diagnose_perf_event_open_fail.
14986
14987 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14988
14989         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14990         Remove parameter and change return type.  Update callers.  Move it.
14991         (linux_enable_bts, linux_enable_pt): Improve error message.
14992         (linux_enable_pt): Remove zero buffer size check.
14993         (linux_enable_btrace): Improve error messages.  Remove NULL return
14994         check.
14995
14996 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14997
14998         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14999         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
15000         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
15001         (linux_supports_pt, linux_supports_btrace): Remove.
15002         (linux_enable_bts): Call cpu_supports_bts.
15003         * nat/linux-btrace.h (linux_supports_btrace): Remove.
15004         * remote.c (remote_supports_btrace): Remove.
15005         (init_remote_ops): Remove remote_supports_btrace.
15006         * target-delegates.c: Regenerated.
15007         * target.c (target_supports_btrace): Remove.
15008         * target.h (target_ops) <to_supports_btrace>: Remove
15009         (target_supports_btrace): Remove.
15010         * x86-linux-nat.c (x86_linux_create_target): Remove
15011         linux_supports_btrace.
15012
15013 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15014
15015         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
15016         btrace failed.
15017         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
15018         exception and use message in own exception.
15019
15020 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15021
15022         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
15023         (perf_event_pt_event_type): Use gdb_file_up.
15024         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
15025         scoped_fd, and scoped_mmap.
15026
15027 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15028
15029         * common/scoped_mmap.h: New.
15030         * unittests/scoped_mmap-selftest.c: New.
15031         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15032         unittests/scoped_mmap-selftest.c.
15033
15034 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
15035
15036         * common/scoped_fd.h: New.
15037         * unittests/scoped_fd-selftest.c: New.
15038         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15039         unittests/scoped_fd-selftest.c.
15040
15041 2018-02-09  Tom Tromey  <tom@tromey.com>
15042
15043         * auto-load.c (auto_load_section_scripts): Use
15044         gdb::unique_xmalloc_ptr.
15045
15046 2018-02-09  Tom Tromey  <tom@tromey.com>
15047
15048         * auto-load.c (execute_script_contents): Use std::string.
15049
15050 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15051
15052         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15053         Python function, rather than a new command.
15054
15055 2018-02-08  Tom Tromey  <tom@tromey.com>
15056
15057         * solib.c (solib_find_1): Use std::string.
15058         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15059
15060 2018-02-08  Tom Tromey  <tom@tromey.com>
15061
15062         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15063
15064 2018-02-08  Tom Tromey  <tom@tromey.com>
15065
15066         * source.c (find_source_lines): Use gdb::def_vector.
15067
15068 2018-02-08  Tom Tromey  <tom@tromey.com>
15069
15070         * macrocmd.c (struct temporary_macro_definition): New.
15071         (macro_define_command): Use temporary_macro_definition.  Remove
15072         cleanups.
15073         (free_macro_definition_ptr): Remove.
15074
15075 2018-02-08  Tom Tromey  <tom@tromey.com>
15076
15077         * macroexp.c (maybe_expand): Use std::string.
15078
15079 2018-02-08  Tom Tromey  <tom@tromey.com>
15080
15081         * macroexp.c (struct macro_buffer): Add initializers for some
15082         members.
15083         (init_buffer, init_shared_buffer, free_buffer)
15084         (free_buffer_return_text): Remove.
15085         (macro_buffer): New constructors.
15086         (~macro_buffer): New destructor.
15087         (macro_buffer::set_shared): New method.
15088         (macro_buffer::resize_buffer, macro_buffer::appendc)
15089         (macro_buffer::appendmem): Now methods, not free functions.
15090         (set_token, append_tokens_without_splicing, stringify)
15091         (macro_stringify): Update.
15092         (gather_arguments): Change return type.  Remove argc_p argument,
15093         add args_ptr argument.  Use std::vector.
15094         (substitute_args): Remove argc argument.  Accept std::vector.
15095         (expand): Update.  Use std::vector.
15096         (scan, macro_expand, macro_expand_next): Update.
15097
15098 2018-02-08  Tom Tromey  <tom@tromey.com>
15099
15100         * symtab.c (default_collect_symbol_completion_matches_break_on):
15101         Use unique_xmalloc_ptr.
15102         * macroscope.h: (sal_macro_scope, user_macro_scope)
15103         (default_macro_scope): Return unique_xmalloc_ptr.
15104         * macroscope.c (sal_macro_scope, user_macro_scope)
15105         (default_macro_scope): Return unique_xmalloc_ptr.
15106         * macroexp.h (macro_expand, macro_expand_once): Return
15107         unique_xmalloc_ptr.
15108         * macroexp.c (macro_expand, macro_expand_once): Return
15109         unique_xmalloc_ptr.
15110         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15111         (info_macro_command, info_macros_command): Use
15112         unique_xmalloc_ptr.
15113         * compile/compile-c-support.c (write_macro_definitions): Use
15114         unique_xmalloc_ptr.
15115         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15116
15117 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15118
15119         * value.c (value_static_field): Assign field type instead of
15120         containing type when returning an optimized out value.
15121
15122 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15123
15124         * ft32-tdep.c (ft32_read_pc): Remove.
15125         (ft32_write_pc): Remove.
15126         (ft32_gdbarch_init): Update.
15127         * m32r-tdep.c (m32r_read_pc): Remove.
15128         (m32r_gdbarch_init): Update.
15129         * mep-tdep.c (mep_read_pc): Remove.
15130         (mep_gdbarch_init): Update.
15131         * microblaze-tdep.c (microblaze_write_pc): Remove.
15132         (microblaze_gdbarch_init): Update.
15133         * mn10300-tdep.c (mn10300_read_pc): Remove.
15134         (mn10300_write_pc): Remove.
15135         (mn10300_gdbarch_init): Update.
15136         * moxie-tdep.c (moxie_read_pc): Remove.
15137         (moxie_write_pc): Remove.
15138         (moxie_gdbarch_init): Update.
15139
15140 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15141
15142         * expprint.c (print_subexp_standard): Handle
15143         OP_F77_UNDETERMINED_ARGLIST.
15144         (dump_subexp_body_standard): Likewise.
15145
15146 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15147
15148         * target-descriptions.c (tdesc_element_visitor) Add empty
15149         implementations.
15150         (tdesc_type): Move make_gdb_type from here.
15151         (tdesc_type_builtin): Likewise.
15152         (tdesc_type_vector): Likewise.
15153         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15154         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15155         (make_gdb_type_union): Likewise.
15156         (make_gdb_type_flags): Likewise.
15157         (make_gdb_type_enum): Likewise.
15158         (make_gdb_type): New function.
15159         (tdesc_register_type): Use static make_gdb_type.
15160
15161 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15162
15163         * infcmd.c (default_print_one_register_info): Align natural-format
15164         column values consistently one under another.
15165         (pad_to_column): New function.
15166
15167 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15168
15169         * dwarf2read.c (dwarf2_physname): Move commment.
15170
15171 2018-02-01  Leszek Swirski  <leszeks@google.com>
15172
15173         * varobj.c (varobj_formatted_print_options): Allow recursive
15174         pretty printing if pretty printing is enabled.
15175
15176 2018-02-01  Leszek Swirski  <leszeks@google.com>
15177
15178         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15179         names after a structop as a filename.
15180
15181 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15182
15183         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15184         (arm_record_coproc_data_proc): Likewise.
15185
15186 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15187
15188         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15189
15190 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15191
15192         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15193         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15194
15195 2018-01-31  Pedro Alves  <palves@redhat.com>
15196
15197         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15198         * inflow.c (child_terminal_save_inferior): Wrap reference to
15199         tcgetpgrp in HAVE_TERMIOS_H.
15200         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15201         _WIN32.
15202         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15203         always iterate over all inferiors.
15204         (gdbsim_cntrl_c): Adjust.
15205         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15206
15207 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15208
15209         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15210         index type is objfile-owned if the element type is as well.
15211
15212 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15213
15214         GDB 8.1 released.
15215
15216 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15217
15218         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15219         "features/s390x-linux64.c".
15220         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15221         s390_linux32 and s390x_linux64.
15222         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15223         default tdesc.
15224         * s390-tdep.c: Include "features/s390-linux32.c" and
15225         "features/s390x-linux64.c".
15226         (s390_tdesc_valid): Add check for tdesc_has_registers.
15227         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15228         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15229         tdesc_s390x_linux64.
15230         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15231         tdesc_s390x_linux64 to...
15232         * s390-tdep.h: ...here.
15233
15234 2018-01-30  Pedro Alves  <palves@redhat.com>
15235
15236         PR gdb/13211
15237         * config.in, configure: Regenerate.
15238         * configure.ac: Check for getpgid.
15239         * go32-nat.c (go32_pass_ctrlc): New.
15240         (go32_target): Install it.
15241         * inf-child.c (inf_child_target): Install
15242         child_terminal_save_inferior, child_pass_ctrlc and
15243         child_interrupt.
15244         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15245         (inf_ptrace_target): No longer install it.
15246         * infcmd.c (interrupt_target_1): Adjust.
15247         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15248         (child_interrupt): Declare.
15249         (inferior::terminal_state): New.
15250         * inflow.c (struct terminal_info): Update comments.
15251         (inferior_process_group): Delete.
15252         (terminal_is_ours): Delete.
15253         (gdb_tty_state): New.
15254         (child_terminal_init): Adjust.
15255         (is_gdb_terminal, sharing_input_terminal_1)
15256         (sharing_input_terminal): New functions.
15257         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15258         Set the process's actual process group in the foreground if
15259         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15260         mark terminal as the inferior's if not sharing GDB's terminal.
15261         Don't check attach_flag.
15262         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15263         pass down a target_terminal_state.
15264         (child_terminal_save_inferior): New, factored out from ...
15265         (child_terminal_ours_1): ... this.  Handle
15266         target_terminal_state::is_ours_for_output.
15267         (child_interrupt, child_pass_ctrlc): New.
15268         (inflow_inferior_exit): Clear the inferior's terminal_state.
15269         (copy_terminal_info): Copy the inferior's terminal state.
15270         (_initialize_inflow): Remove reference to terminal_is_ours.
15271         * inflow.h (inferior_process_group): Delete.
15272         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15273         * procfs.c (procfs_target): Don't install procfs_interrupt.
15274         (procfs_interrupt): Delete.
15275         * remote.c (remote_serial_quit_handler): Adjust.
15276         (remote_interrupt): Remove ptid parameter.  Adjust.
15277         * target-delegates.c: Regenerate.
15278         * target.c: Include "terminal.h".
15279         (target_terminal::terminal_state): Rename to ...
15280         (target_terminal::m_terminal_state): ... this.
15281         (target_terminal::init): Adjust.
15282         (target_terminal::inferior): Adjust to per-inferior
15283         terminal_state.
15284         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15285         (target_terminal::ours, target_terminal::ours_for_output): Use
15286         target_terminal_is_ours_kind.
15287         (target_interrupt): Remove ptid parameter.  Adjust.
15288         (default_target_pass_ctrlc): Adjust.
15289         * target.h (target_ops::to_terminal_save_inferior): New field.
15290         (target_ops::to_interrupt): Remove ptid_t parameter.
15291         (target_interrupt): Remove ptid_t parameter.  Update comment.
15292         (target_pass_ctrlc): Update comment.
15293         * target/target.h (target_terminal_state): New scoped enum,
15294         factored out of ...
15295         (target_terminal::terminal_state): ... here.
15296         (target_terminal::inferior): Update comments.
15297         (target_terminal::restore_inferior): New.
15298         (target_terminal::is_inferior, target_terminal::is_ours)
15299         (target_terminal::is_ours_for_output): Adjust.
15300         (target_terminal::scoped_restore_terminal_state): Adjust to
15301         rename, and call restore_inferior() instead of inferior().
15302         (target_terminal::scoped_restore_terminal_state::m_state): Change
15303         type.
15304         (target_terminal::terminal_state): Rename to ...
15305         (target_terminal::m_terminal_state): ... this and change type.
15306
15307 2018-01-30  Pedro Alves  <palves@redhat.com>
15308
15309         * linux-nat.c (wait_for_signal): New function.
15310         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15311         directly.
15312         (async_terminal_is_ours)
15313         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15314         (linux_nat_add_target): Don't override
15315         to_terminal_inferior/to_terminal_ours.
15316
15317 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15318
15319         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15320
15321 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15322
15323         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15324         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15325         dwarf2_per_objfile_free here.
15326         (dwarf2_per_objfile_free): Remove.
15327         (_initialize_dwarf2_read): Don't register
15328         dwarf2_per_objfile_free as a registry cleanup.
15329
15330 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15331
15332         Avoid compilation errors in MinGW native builds
15333
15334         The error is triggered by including python-internal.h, and the
15335         error message is:
15336
15337              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15338                       from build-gnulib/import/math.h:27,
15339                       from d:/usr/Python26/include/pyport.h:235,
15340                       from d:/usr/Python26/include/Python.h:58,
15341                       from python/python-internal.h:94,
15342                       from python/py-arch.c:24:
15343              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15344         using ::hypot;
15345                 ^~~~~
15346
15347         This happens because Python headers define 'hypot' to expand t
15348         '_hypot' in the Windows builds.
15349         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15350         'hypoth'.  This avoids a compilation error.
15351
15352 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15353
15354         * MAINTAINERS (Write After Approval): Fix ordering.
15355
15356 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15357
15358         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15359
15360 2018-01-26  Alan Modra  <amodra@gmail.com>
15361
15362         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15363         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15364         Remove nop.  Make const.  Comment.
15365         (powerpc32_plt_stub_so_2): New.
15366         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15367         Correct count.  Update uses.
15368         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15369         Move common code reading PLT entry word.  Correct
15370         powerpc32_plt_stub PLT address calculation.
15371         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15372         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15373         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15374         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15375         (ppc64_standard_linkage8): Likewise.
15376         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15377         Correct insns description.
15378         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15379
15380 2018-01-24  Pedro Alves  <palves@redhat.com>
15381
15382         GCC PR libstdc++/83906
15383         * gdbtypes.c (operator==(const dynamic_prop &,
15384         const dynamic_prop &)): New.
15385         (operator==(const range_bounds &, const range_bounds &)): New.
15386         (check_types_equal): Use them instead of memcmp.
15387         * gdbtypes.h (operator==(const dynamic_prop &,
15388         const dynamic_prop &)): Declare.
15389         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15390         (operator==(const range_bounds &, const range_bounds &)): Declare.
15391         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15392
15393 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15394
15395         * s390-linux-tdep.c (s390_record_address_mask)
15396         (s390_record_calc_disp_common, s390_record_calc_disp)
15397         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15398         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15399         (s390_process_record): Move to s390-tdep.c.
15400         (s390_linux_init_abi_any): Adjust.
15401         * s390-tdep.c (s390_record_address_mask)
15402         (s390_record_calc_disp_common, s390_record_calc_disp)
15403         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15404         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15405         (s390_process_record): Moved from s390-linux-tdep.c
15406         (s390_gdbarch_init): Adjust.
15407
15408 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15409
15410         * s390-linux-nat.c (s390-tdep.h): New include.
15411         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15412         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15413         (ALLDEPFILES): Add s390-tdep.c.
15414         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15415         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15416         * s390-tdep.h: ...this.  New file.
15417         * s390-linux-tdep.c (s390-tdep.h): New include.
15418         (_initialize_s390_tdep): Rename to...
15419         (_initialize_s390_linux_tdep): ...this and adjust.
15420         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15421         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15422         s390-tdep.h.
15423         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15424         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15425         (s390_is_partial_instruction, s390_software_single_step)
15426         (is_non_branch_ril, s390_displaced_step_copy_insn)
15427         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15428         (s390_prologue_data, s390_addr, s390_store, s390_load)
15429         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15430         (s390_register_call_saved, s390_guess_tracepoint_registers)
15431         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15432         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15433         (s390_pseudo_register_name, s390_pseudo_register_type)
15434         (s390_pseudo_register_read, s390_pseudo_register_write)
15435         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15436         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15437         (s390_addr_bits_remove, s390_address_class_type_flags)
15438         (s390_address_class_type_flags_to_name)
15439         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15440         (s390_function_arg_float, s390_function_arg_vector)
15441         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15442         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15443         (s390_frame_align, s390_register_return_value, s390_return_value)
15444         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15445         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15446         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15447         (s390_trad_frame_prev_register, s390_unwind_cache)
15448         (s390_prologue_frame_unwind_cache)
15449         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15450         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15451         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15452         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15453         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15454         (s390_frame_base_address, s390_local_base_address)
15455         (s390_frame_base, s390_gcc_target_options)
15456         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15457         (s390_validate_reg_range, s390_tdesc_valid)
15458         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15459         * s390-tdep.c: ...this.  New file.
15460
15461 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15462
15463         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15464         (s390_process_record, s390_gdbarch_tdep_alloc)
15465         (s390_linux_init_abi_any): Use/set new hook.
15466
15467 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15468
15469         * s390-linux-tdep.c (osabi.h): New include.
15470         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15471         (s390_linux_init_abi_any): New functions.
15472         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15473
15474 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15475
15476         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15477         tdesc_has_registers check
15478
15479 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15480
15481         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15482         (s390_validate_reg_range): New macro.
15483         (s390_gdbarch_init): Adjust.
15484
15485 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15486
15487         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15488         (s390_gdbarch_tdep_alloc): Adjust.
15489         (s390_gdbarch_init): Adjust.
15490
15491 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15492
15493         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15494         <have_tdb>: Change type to bool.
15495         (s390_gdbarch_tdep_alloc): Adjust.
15496         (s390_gdbarch_init): Adjust.
15497
15498 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15499
15500         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15501         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15502         (s390_gdbarch_tdep_alloc): New function.
15503         (s390_gdbarch_init): Allocate tdep at start and use its fields
15504         instead of separate variables.
15505
15506 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15507
15508         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15509         when looking for cached gdbarch and add comment for remaining.
15510
15511 2018-01-22  Pedro Alves  <palves@redhat.com>
15512             Sergio Durigan Junior  <sergiodj@redhat.com>
15513
15514         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15515         case.
15516
15517 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15518
15519         * MAINTAINERS: Update my company e-mail address.
15520
15521 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15522
15523         * regcache.c (cooked_write_test): New function.
15524         (_initialize_regcache): Register the test.
15525
15526 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15527
15528         * ia64-tdep.c (ia64_pseudo_register_read): Call
15529         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15530         * m32c-tdep.c (m32c_cat_read): Likewise.
15531         (m32c_r3r2r1r0_read): Likewise.
15532         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15533         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15534
15535 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15536
15537         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15538         method raw_read instead of regcache_raw_read.
15539         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15540         * arm-tdep.c (arm_neon_quad_read): Likewise.
15541         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15542         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15543         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15544         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15545         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15546         (i386_pseudo_register_read_into_value): Likewise.
15547         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15548         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15549         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15550         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15551         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15552         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15553         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15554         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15555         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15556
15557 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15558
15559         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15560         * configure.tgt: Remove target mt.
15561         * mt-tdep.c: Remove.
15562         * regcache.c (cooked_read_test): Remove the check for mt.
15563
15564 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15565
15566         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15567         instead of gdbarch_pseudo_register_read_value.
15568
15569 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15570
15571         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15572         language is Ada.
15573
15574 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15575
15576         * linespec.c (create_sals_line_offset): Remove code that preserved
15577         the symtab_and_line's line number.
15578
15579 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15580
15581         * varobj.c (varobj_create): Don't set valid_block when creating a
15582         floating varobj.
15583
15584 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15585
15586         * varobj.c (varobj_create): Remove out of date comment.
15587
15588 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15589
15590         PR mi/20395
15591         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15592         updating innermost block.
15593         * parse.c (innermost_block_tracker::update): Take extra type
15594         parameter, and check types match before updating innermost block.
15595         (write_dollar_variable): Update innermost block for registers.
15596         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15597         (innermost_block_tracker::innermost_block_tracker): Initialise
15598         m_types member.
15599         (innermost_block_tracker::reset): Take type parameter.
15600         (innermost_block_tracker::update): Take type parameter, and pass
15601         type through as needed.
15602         (innermost_block_tracker::m_types): New member.
15603         * varobj.c (varobj_create): Pass type when reseting innermost
15604         block.
15605
15606 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15607
15608         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15609         * ada-lang.c (resolve_subexp): Likewise.
15610         * breakpoint.c (set_breakpoint_condition) Likewise.
15611         (watch_command_1) Likewise.
15612         * c-exp.y (variable): Likewise.
15613         * d-exp.y (PrimaryExpression): Likewise.
15614         * f-exp.y (variable): Likewise.
15615         * go-exp.y (variable): Likewise.
15616         * m2-exp.y (variable): Likewise.
15617         * objfiles.c (objfile::~objfile): Likewise.
15618         * p-exp.y (variable): Likewise.
15619         * parse.c (innermost_block): Change type.
15620         * parser-defs.h (class innermost_block_tracker): New.
15621         (innermost_block): Change to innermost_block_tracker.
15622         * printcmd.c (display_command): Switch to innermost_block API.
15623         (do_one_display): Likewise.
15624         * rust-exp.y (do_one_display): Likewise.
15625         * symfile.c (clear_symtab_users): Likewise.
15626         * varobj.c (varobj_create): Switch to innermost_block API, replace
15627         use of innermost_block with block stored on varobj object.
15628
15629 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15630
15631         * expression.h (innermost_block): Remove declaration.
15632         * varobj.c: Add 'parser-defs.h' include.
15633
15634 2018-01-19  Tom Tromey  <tom@tromey.com>
15635
15636         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15637         symbols in the static and global blocks.
15638
15639 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15640
15641         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15642         gdb_ptrace.h, and move including gdb_wait.h ...
15643         * nat/linux-ptrace.h: ... to here.
15644
15645 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15646
15647         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15648         inf_ptrace_detach_success.
15649         (inf_ptrace_detach_success): Add inferior parameter, use it
15650         instead of inferior_ptid, pass it to detach_inferior.
15651         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15652         parameter.
15653         * inferior.c (detach_inferior): Add overload that takes an
15654         inferior object.
15655         * inferior.h (detach_inferior): Likewise.
15656         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15657         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15658         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15659
15660 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15661
15662         * target.h (struct target_ops) <to_detach>: Add inferior
15663         parameter.
15664         (target_detach): Likewise.
15665         * target.c (dispose_inferior): Pass inferior down.
15666         (target_detach): Pass inferior down.  Assert that it is equal to
15667         the current inferior.
15668         * aix-thread.c (aix_thread_detach): Pass inferior down.
15669         * corefile.c (core_file_command): Pass current_inferior() down.
15670         * corelow.c (core_detach): Add inferior parameter.
15671         * darwin-nat.c (darwin_detach): Likewise.
15672         * gnu-nat.c (gnu_detach): Likewise.
15673         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15674         * infcmd.c (detach_command): Pass current_inferior() down to
15675         target_detach.
15676         * infrun.c (follow_fork_inferior): Pass parent_inf to
15677         target_detach.
15678         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15679         target_detach.
15680         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15681         * linux-thread-db.c (thread_db_detach): Likewise.
15682         * nto-procfs.c (procfs_detach): Likewise.
15683         * procfs.c (procfs_detach): Likewise.
15684         * record.c (record_detach): Likewise.
15685         * record.h (struct inferior): Forward-declare.
15686         (record_detach): Add inferior parameter.
15687         * remote-sim.c (gdbsim_detach): Likewise.
15688         * remote.c (remote_detach_1): Likewise.
15689         (remote_detach): Likewise.
15690         (extended_remote_detach): Likewise.
15691         * sol-thread.c (sol_thread_detach): Likewise.
15692         * target-debug.h (target_debug_print_inferior_p): New macro.
15693         * target-delegates.c: Re-generate.
15694         * top.c (kill_or_detach): Pass inferior down to target_detach.
15695         * windows-nat.c (windows_detach): Add inferior parameter.
15696
15697 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15698
15699         * target.h (struct target_ops) <to_detach>: Remove args
15700         parameter.
15701         (target_detach): Likewise.
15702         * target.c (dispose_inferior): Adjust.
15703         (target_detach): Remove args parameter, adjust.
15704         * aix-thread.c (aix_thread_detach): Adjust.
15705         * corefile.c (core_file_command): Adjust.
15706         * corelow.c (core_detach): Adjust.
15707         * darwin-nat.c (darwin_detach): Adjust.
15708         * gnu-nat.c (gnu_detach): Adjust.
15709         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15710         * infcmd.c (detach_command): Adjust
15711         * infrun.c (follow_fork_inferior): Adjust.
15712         (handle_vfork_child_exec_or_exit): Adjust.
15713         * linux-fork.c (linux_fork_detach): Remove args parameter.
15714         * linux-fork.h (linux_fork_detach): Likewise.
15715         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15716         * linux-thread-db.c (thread_db_detach): Likewise.
15717         * nto-procfs.c (procfs_detach): Likewise.
15718         * procfs.c (procfs_detach): Likewise.
15719         (do_detach): Remove signo parameter.
15720         * record.c (record_detach): Remove args parameter.
15721         * record.h (record_detach): Likewise.
15722         * remote-sim.c (gdbsim_detach): Likewise.
15723         * remote.c (remote_detach_1): Likewise.
15724         (remote_detach): Likewise.
15725         (extended_remote_detach): Likewise.
15726         * sol-thread.c (sol_thread_detach): Likewise.
15727         * target-delegates.c: Re-generate.
15728         * top.c (struct qt_args) <args>: Remove field.
15729         (kill_or_detach): Don't pass args.
15730         (quit_force): Don't set args.
15731         * windows-nat.c (windows_detach): Remove args parameter.
15732
15733 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15734
15735         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15736         (arm_linux_init_abi): Install it.
15737
15738 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15739
15740         * osabi.c (gdb_osabi_names): Extend the regexp for
15741         arm-linux-gnueabihf.
15742
15743 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15744
15745         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15746         m_abbrevs.
15747         (abbrev_table::add_abbrev): Update.
15748         (abbrev_table::lookup_abbrev): Update.
15749
15750 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15751
15752         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15753
15754 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15755
15756         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15757         to "std::string".
15758
15759 2018-01-17  Tom Tromey  <tom@tromey.com>
15760
15761         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15762
15763 2018-01-17  Tom Tromey  <tom@tromey.com>
15764
15765         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15766         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15767         (create_array_type_with_stride): Update.
15768         * dwarf2read.c (set_die_type): Update.
15769
15770 2018-01-17  Tom Tromey  <tom@tromey.com>
15771
15772         * dwarf2read.c (delayed_method_info): Remove typedef.
15773         (dwarf2_cu::method_info): Now a std::vector.
15774         (add_to_method_list): Update.
15775         (free_delayed_list): Remove.
15776         (compute_delayed_physnames): Update.
15777         (process_full_comp_unit, process_full_type_unit): Clear the method
15778         list.  Remove cleanups.
15779         (psymtab_include_file_name): Add name_holder parameter.  Use
15780         unique_xmalloc_ptr.
15781         (dwarf_decode_lines): Update.
15782
15783 2018-01-17  Tom Tromey  <tom@tromey.com>
15784             Simon Marchi  <simon.marchi@ericsson.com>
15785
15786         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15787         (dwarf2_per_objfile::free_cached_comp_units)
15788         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15789         (init_cutu_and_read_dies_no_follow): Update.
15790         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15791         (dwarf2_cu::~dwarf2_cu): New.
15792         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15793         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15794
15795 2018-01-17  Tom Tromey  <tom@tromey.com>
15796             Simon Marchi  <simon.marchi@ericsson.com>
15797
15798         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15799         (struct die_reader_specs) <abbrev_table>: New member.
15800         (struct abbrev_table): Add constructor.
15801         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15802         <abbrev_obstack>: Now an auto_obstack.
15803         (abbrev_table_up): New typedef.
15804         (init_cu_die_reader): Add abbrev_table parameter.
15805         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15806         Add result_dwo_abbrev_table.
15807         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15808         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15809         Update.
15810         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15811         parameter.
15812         (skip_children): Update.
15813         (abbrev_table::alloc_abbrev): Rename from
15814         abbrev_table_alloc_abbrev.
15815         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15816         (abbrev_table::lookup_abbrev): Rename from
15817         abbrev_table_lookup_abbrev.
15818         (abbrev_table_read_table): Return abbrev_table_up.
15819         (abbrev_table_free, abbrev_table_free_cleanup)
15820         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15821         (load_partial_dies): Update.
15822
15823 2018-01-17  Tom Tromey  <tom@tromey.com>
15824
15825         * dwarf2read.c (dwarf2_compute_name): Update comment.
15826         (read_func_scope, read_variable): Update.
15827         (new_symbol): Remove.
15828         (new_symbol_full): Rename to new_symbol.
15829
15830 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15831
15832         PR gdb/16577
15833         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15834         a warning instead of throwing an error, set section size to 0 and return
15835         NULL.
15836         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15837
15838 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15839
15840         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15841         std::string.
15842         (linux_ptrace_attach_fail_reason_string): Likewise.
15843         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15844         Likewise.
15845         (linux_ptrace_attach_fail_reason_string): Likewise.
15846         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15847
15848 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15849
15850         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15851
15852 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15853
15854         PR gdb/21559
15855         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15856         checking for fs_base/gs_base fields in struct user_regs_struct.
15857         * configure: Regenerate.
15858
15859 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15860
15861         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15862         function.
15863         (aarch64_linux_init_abi): Install it to gdbarch hook
15864         gcc_target_options.
15865
15866 2018-01-15  Pedro Alves  <palves@redhat.com>
15867
15868         * common/signals-state-save-restore.c
15869         (save_original_signals_state): Fix typos.
15870
15871 2017-01-12  Tom Tromey  <tom@tromey.com>
15872             Sergio Durigan Junior  <sergiodj@redhat.com>
15873
15874         * Makefile.in (install-only): Install gdb-add-index.
15875
15876 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15877
15878         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15879
15880 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15881
15882         * infrun.c (keep_going_pass_signal): Clear step-over info when
15883         insert_breakpoints fails.
15884
15885 2018-01-11  Pedro Alves  <palves@redhat.com>
15886
15887         PR gdb/22583
15888         * infrun.c (resume): Rename to ...
15889         (resume_1): ... this.
15890         (resume): Reimplement as wrapper around resume_1.
15891
15892 2018-01-11  Pedro Alves  <palves@redhat.com>
15893
15894         PR remote/22597
15895         * remote.c (remote_parse_stop_reply): Default to the last-set
15896         general thread instead of to 'magic_null_ptid'.
15897
15898 2018-01-10  Pedro Alves  <palves@redhat.com>
15899
15900         * language.h (language_get_symbol_name_matcher): Rename ...
15901         (get_symbol_name_matcher): ... this.
15902         * language.c (language_get_symbol_name_matcher): Ditto.
15903         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15904         callers adjusted.
15905
15906 2018-01-10  Pedro Alves  <palves@redhat.com>
15907
15908         PR gdb/22670
15909         * dwarf2read.c
15910         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15911         Adjust to use language_get_symbol_name_matcher instead of
15912         language_defn::la_get_symbol_name_matcher.
15913         * language.c (language_get_symbol_name_matcher): If in Ada mode
15914         and the lookup name is a verbatim match, return Ada's matcher.
15915         * language.h (language_get_symbol_name_matcher): Adjust comment.
15916         (ada_lookup_name_info::verbatim_p):: New method.
15917
15918 2018-01-10  Pedro Alves  <palves@redhat.com>
15919
15920         PR gdb/22670
15921         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15922         minsym's language is language_auto or language_cplus, pass down
15923         language_ada instead.
15924         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15925
15926 2018-01-10  Pedro Alves  <palves@redhat.com>
15927
15928         PR gdb/22670
15929         * minsyms.c (linkage_name_str): New function.
15930         (iterate_over_minimal_symbols): Use it.
15931
15932 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15933
15934         * NEWS: Document that 'info proc' now works on FreeBSD.
15935
15936 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15937
15938         * configure.ac: Check for kinfo_getfile in libutil.
15939         * configure: Regenerate.
15940         * config.in: Regenerate.
15941         * fbsd-nat.c: Include "fbsd-tdep.h".
15942         (fbsd_fetch_cmdline): New.
15943         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15944         rather than calling error.
15945         (fbsd_info_proc): New.
15946         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15947         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15948         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15949
15950 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15951
15952         * fbsd-nat.c (struct free_deleter): Remove.
15953         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15954
15955 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15956
15957         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15958         NULL for an empty pathname.
15959
15960 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15961
15962         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15963         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15964         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15965         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15966         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15967         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15968         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15969         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15970         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15971         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15972         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15973         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15974         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15975         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15976         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15977
15978 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15979
15980         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15981         (gnu_xfer_auxv): New function.
15982         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15983         TARGET_OBJECT_AUXV.
15984
15985 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15986             Simon Marchi  <simon.marchi@ericsson.com>
15987
15988         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15989         common/selftest.c.
15990         (COMMON_OBS): Remove selftest.o.
15991         * configure.ac: Append selftest-arch.c and common/selftest.c to
15992         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15993         * configure: Re-generated.
15994         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15995         GDB_SELF_TEST.
15996         (maintenance_info_selftests): Likewise.
15997
15998 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15999
16000         * ada-valprint.c (val_print_packed_array_elements): Use
16001         proper number of elements when printing an array indexed
16002         by an enumeration type.
16003
16004 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16005
16006         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
16007         (dw2_get_file_names_reader): Adjust.
16008         (lookup_dwo_signatured_type): Adjust.
16009         (lookup_dwp_signatured_type): Adjust.
16010         (lookup_signatured_type): Adjust.
16011         (create_type_unit_group): Adjust.
16012         (get_type_unit_group): Adjust.
16013         (process_psymtab_comp_unit_reader): Adjust.
16014         (build_type_psymtabs_reader): Adjust.
16015         (scan_partial_symbols): Adjust.
16016         (add_partial_symbol): Adjust.
16017         (add_partial_subprogram): Adjust.
16018         (peek_die_abbrev): Adjust.
16019         (fixup_go_packaging): Adjust.
16020         (process_imported_unit_die): Adjust.
16021         (dwarf2_compute_name): Adjust.
16022         (dwarf2_physname): Adjust.
16023         (read_import_statement): Adjust.
16024         (handle_DW_AT_stmt_list): Adjust.
16025         (read_file_scope): Adjust.
16026         (read_func_scope): Adjust.
16027         (read_lexical_block_scope): Adjust.
16028         (read_call_site_scope): Adjust.
16029         (read_variable): Adjust.
16030         (dwarf2_rnglists_process): Adjust.
16031         (dwarf2_ranges_process): Adjust.
16032         (dwarf2_ranges_read): Adjust.
16033         (dwarf2_get_pc_bounds): Adjust.
16034         (dwarf2_record_block_ranges): Adjust.
16035         (dwarf2_add_field): Adjust.
16036         (dwarf2_add_member_fn): Adjust.
16037         (read_structure_type): Adjust.
16038         (process_structure_scope): Adjust.
16039         (read_enumeration_type): Adjust.
16040         (read_array_type): Adjust.
16041         (mark_common_block_symbol_computed): Adjust.
16042         (read_common_block): Adjust.
16043         (read_namespace_type): Adjust.
16044         (read_namespace): Adjust.
16045         (read_module_type): Adjust.
16046         (read_tag_pointer_type): Adjust.
16047         (read_tag_ptr_to_member_type): Adjust.
16048         (read_tag_string_type): Adjust.
16049         (read_subroutine_type): Adjust.
16050         (read_typedef): Adjust.
16051         (read_base_type): Adjust.
16052         (attr_to_dynamic_prop): Adjust.
16053         (read_subrange_type): Adjust.
16054         (read_unspecified_type): Adjust.
16055         (dwarf2_read_abbrevs): Adjust.
16056         (load_partial_dies): Adjust.
16057         (read_partial_die): Adjust.
16058         (find_partial_die): Adjust.
16059         (guess_partial_die_structure_name): Adjust.
16060         (fixup_partial_die): Adjust.
16061         (read_attribute_value): Adjust.
16062         (read_addr_index): Adjust.
16063         (read_addr_index_from_leb128): Adjust.
16064         (read_str_index): Adjust.
16065         (dwarf2_string_attr): Adjust.
16066         (get_debug_line_section): Adjust.
16067         (dwarf_decode_line_header): Adjust.
16068         (lnp_state_machine::check_line_address): Adjust.
16069         (dwarf_decode_lines_1): Adjust.
16070         (dwarf_decode_lines): Adjust.
16071         (dwarf2_start_symtab): Adjust.
16072         (var_decode_location): Adjust.
16073         (new_symbol_full): Adjust.
16074         (dwarf2_const_value_data): Adjust.
16075         (dwarf2_const_value_attr): Adjust.
16076         (dwarf2_const_value): Adjust.
16077         (die_type): Adjust.
16078         (die_containing_type): Adjust.
16079         (build_error_marker_type): Adjust.
16080         (lookup_die_type): Adjust.
16081         (guess_full_die_structure_name): Adjust.
16082         (anonymous_struct_prefix): Adjust.
16083         (determine_prefix): Adjust.
16084         (dwarf2_name): Adjust.
16085         (follow_die_ref_or_sig): Adjust.
16086         (follow_die_offset): Adjust.
16087         (follow_die_ref): Adjust.
16088         (follow_die_sig_1): Adjust.
16089         (follow_die_sig): Adjust.
16090         (get_signatured_type): Adjust.
16091         (get_DW_AT_signature_type): Adjust.
16092         (decode_locdesc): Adjust.
16093         (dwarf_decode_macros): Adjust.
16094         (cu_debug_loc_section): Adjust.
16095         (fill_in_loclist_baton): Adjust.
16096         (dwarf2_symbol_mark_computed): Adjust.
16097         (init_one_comp_unit): Don't assign
16098         dwarf2_cu::dwarf2_per_objfile.
16099         (set_die_type): Adjust.
16100
16101 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16102
16103         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16104         <dwarf2_per_objfile>: New field.
16105         (dwarf2_per_objfile): Remove global.
16106         (get_dwarf2_per_objfile): New function.
16107         (set_dwarf2_per_objfile): New function.
16108         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16109         dwarf2_per_objfile.
16110         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16111         (read_abbrev_offset): Likewise.
16112         (read_indirect_string): Likewise.
16113         (read_indirect_line_string): Likewise.
16114         (read_indirect_string_at_offset): Likewise.
16115         (read_indirect_string_from_dwz): Likewise.
16116         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16117         dwarf2_per_objfile.
16118         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16119         (create_all_comp_units): Change objfile parameter to
16120         dwarf2_per_objfile.
16121         (create_all_type_units): Likewise.
16122         (process_queue): Add dwarf2_per_objfile parameter.
16123         (read_and_check_comp_unit_head): Likewise.
16124         (lookup_dwo_unit_in_dwp): Likewise.
16125         (get_dwp_file): Likewise.
16126         (process_cu_includes): Likewise.
16127         (struct free_dwo_file_cleanup_data): New struct.
16128         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16129         set_dwarf2_per_objfile.
16130         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16131         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16132         context, adjust calls.
16133         (dw2_instantiate_symtab): Likewise.
16134         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16135         (dw2_get_cu): Likewise.
16136         (create_cu_from_index_list): Change objfile parameter to
16137         dwarf2_per_objfile.
16138         (create_cus_from_index_list): Get dwarf2_per_objfile from
16139         context, adjust calls.
16140         (create_cus_from_index): Likewise.
16141         (create_signatured_type_table_from_index): Change objfile
16142         parameter to dwarf2_per_objfile.
16143         (create_signatured_type_table_from_debug_names): Change objfile
16144         parameter to dwarf2_per_objfile.
16145         (create_addrmap_from_index): Likewise.
16146         (create_addrmap_from_aranges): Likewise.
16147         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16148         (dw2_setup): Remove.
16149         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16150         context.
16151         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16152         get_dwarf2_per_objfile.
16153         (dw2_forget_cached_source_info): Likewise.
16154         (dw2_map_symtabs_matching_filename): Likewise.
16155         (struct dw2_symtab_iterator) <index>: Remove.
16156         <dwarf2_per_objfile>: New field.
16157         (dw2_symtab_iter_init): Replace index parameter with
16158         dwarf2_per_objfile.
16159         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16160         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16161         (dw2_print_stats): Likewise.
16162         (dw2_dump): Likewise.
16163         (dw2_expand_symtabs_for_function): Likewise.
16164         (dw2_expand_all_symtabs): Likewise.
16165         (dw2_expand_symtabs_with_fullname): Likewise.
16166         (dw2_expand_marked_cus): Replace index and objfile parameters
16167         with dwarf2_per_objfile.
16168         (dw_expand_symtabs_matching_file_matcher): Add
16169         dwarf2_per_objfile parameter and adjust calls.
16170         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16171         adjust calls.
16172         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16173         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16174         adjust calls.
16175         (create_cus_from_debug_names_list): Replace objfile parameter
16176         with dwarf2_per_objfile and adjust calls.
16177         (create_cus_from_debug_names): Likewise.
16178         (dwarf2_read_debug_names): Likewise.
16179         (mapped_debug_names::namei_to_name): Adjust call.
16180         (dw2_debug_names_iterator::next): Likewise.
16181         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16182         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16183         (dw2_debug_names_dump): Likewise.
16184         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16185         (dw2_debug_names_expand_symtabs_matching): Likewise.
16186         (dwarf2_initialize_objfile): Likewise.
16187         (dwarf2_build_psymtabs): Likewise.
16188         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16189         this_cu.
16190         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16191         (read_and_check_comp_unit_head): Likewise.
16192         (read_abbrev_offset): Likewise.
16193         (create_debug_type_hash_table): Likewise.
16194         (create_debug_types_hash_table): Likewise.
16195         (create_all_type_units): Replace objfile parameter with
16196         dwarf2_per_objfile.
16197         (add_type_unit): Add dwarf2_per_objfile parameter.
16198         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16199         with dwarf2_per_objfile.
16200         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16201         (lookup_dwp_signatured_type): Likewise.
16202         (lookup_signatured_type): Likewise.
16203         (read_cutu_die_from_dwo): Likewise.
16204         (init_tu_and_read_dwo_dies): Likewise.
16205         (init_cutu_and_read_dies): Likewise.
16206         (init_cutu_and_read_dies_no_follow): Likewise.
16207         (allocate_type_unit_groups_table): Add objfile parameter.
16208         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16209         (get_type_unit_group): Likewise.
16210         (process_psymtab_comp_unit): Update call.
16211         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16212         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16213         (print_tu_stats): Likewise.
16214         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16215         in void* parameter.
16216         (build_type_psymtabs): Change objfile parameter to
16217         dwarf2_per_objfile.
16218         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16219         passed in void* parameter.
16220         (process_skeletonless_type_units): Change objfile parameter to
16221         dwarf2_per_objfile.
16222         (set_partial_user): Likewise.
16223         (dwarf2_build_psymtabs_hard): Likewise.
16224         (read_comp_units_from_section): Likewise.
16225         (create_all_comp_units): Likewise.
16226         (scan_partial_symbols): Update calls.
16227         (add_partial_symbol): Likewise.
16228         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16229         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16230         (process_queue): Add dwarf2_per_objfile parameter.
16231         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16232         (compute_compunit_symtab_includes): Likewise.
16233         (process_cu_includes): Add dwarf2_per_objfile parameter.
16234         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16235         (process_full_type_unit): Likewise.
16236         (process_imported_unit_die): Update call.
16237         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16238         (read_file_scope): Likewise.
16239         (allocate_dwo_file_hash_table): Add objfile parameter.
16240         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16241         (create_cus_hash_table): Likewise.
16242         (create_dwp_hash_table): Likewise.
16243         (create_dwo_unit_in_dwp_v1): Likewise.
16244         (create_dwp_v2_section): Likewise.
16245         (create_dwo_unit_in_dwp_v2): Likewise.
16246         (lookup_dwo_unit_in_dwp): Likewise.
16247         (try_open_dwop_file): Likewise.
16248         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16249         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16250         cleanup to include a reference to dwarf2_per_objfile.
16251         (open_dwp_file): Add dwarf2_per_objfile parameter.
16252         (open_and_init_dwp_file): Likewise.
16253         (get_dwp_file): Likewise.
16254         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16255         (queue_and_load_all_dwo_tus): Update call.
16256         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16257         data.
16258         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16259         (dwarf2_ranges_process): Likewise.
16260         (dwarf2_get_pc_bounds): Likewise.
16261         (mark_common_block_symbol_computed): Likewise.
16262         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16263         (dwarf2_read_abbrevs): Update call.
16264         (read_partial_die): Use dwarf2_per_objfile from cu.
16265         (find_partial_die): Likewise.
16266         (fixup_partial_die): Likewise.
16267         (read_attribute_value): Likewise.
16268         (read_indirect_string_at_offset_from): Add objfile parameter.
16269         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16270         parameter.
16271         (read_indirect_string_from_dwz): Add objfile parameter.
16272         (read_indirect_string): Add objfile parameter.
16273         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16274         (read_addr_index): Use dwarf2_per_objfile from cu.
16275         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16276         call dw2_setup.
16277         (read_str_index): Use dwarf2_per_objfile from cu.
16278         (get_debug_line_section): Likewise.
16279         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16280         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16281         (new_symbol_full): Use dwarf2_per_objfile from cu.
16282         (build_error_marker_type): Likewise.
16283         (lookup_die_type): Likewise.
16284         (determine_prefix): Likewise.
16285         (follow_die_offset): Likewise.
16286         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16287         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16288         (dwarf2_fetch_die_type_sect_off): Likewise.
16289         (dwarf2_get_die_type): Likewise.
16290         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16291         (get_signatured_type): Likewise.
16292         (get_DW_AT_signature_type): Likewise.
16293         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16294         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16295         (cu_debug_loc_section): Likewise.
16296         (fill_in_loclist_baton): Likewise.
16297         (dwarf2_symbol_mark_computed): Likewise.
16298         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16299         dwarf2_per_objfile.
16300         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16301         parameter.
16302         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16303         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16304         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16305         (set_die_type): Use dwarf2_free_objfile from cu.
16306         (get_die_type_at_offset): Likewise.
16307         (dwarf2_per_objfile_free): Don't assign global variable.
16308         (debug_names) <constructor>: Add dwarf2_per_objfile
16309         parameter, update m_debugstrlookup construction.
16310         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16311         parameter.
16312         <m_dwarf2_per_objfile>: New field.
16313         <lookup>: Use m_dwarf2_per_objfile.
16314         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16315         (psyms_seen_size): Likewise.
16316         (write_gdbindex): Replace objfile parameter with
16317         dwarf2_per_objfile.
16318         (write_debug_names): Likewise.
16319         (write_psymtabs_to_index): Likewise.
16320         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16321         calls.
16322
16323 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16324
16325         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16326         <dwarf2_per_objfile>: New field.
16327         (struct dwarf2_per_cu_data) <objfile>: Remove.
16328         <dwarf2_per_objfile>: New field.
16329         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16330         of objfile.
16331         (create_signatured_type_table_from_index): Likewise.
16332         (create_debug_type_hash_table): Likewise.
16333         (fill_in_sig_entry_from_dwo_entry): Likewise.
16334         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16335         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16336         objfile.
16337         (create_partial_symtab): Access objfile through
16338         dwarf2_per_objfile.
16339         (process_psymtab_comp_unit_reader): Likewise.
16340         (read_comp_units_from_section): Likewise.
16341         (scan_partial_symbols): Likewise.
16342         (add_partial_symbol): Likewise.
16343         (add_partial_subprogram): Likewise.
16344         (peek_die_abbrev): Likewise.
16345         (fixup_go_packaging): Likewise.
16346         (process_full_comp_unit): Likewise.
16347         (process_full_type_unit): Likewise.
16348         (process_imported_unit_die): Likewise.
16349         (dwarf2_compute_name): Likewise.
16350         (dwarf2_physname): Likewise.
16351         (read_import_statement): Likewise.
16352         (create_cus_hash_table): Assign dwarf2_physname instead of
16353         objfile.
16354         (read_func_scope): Access objfile through dwarf2_per_objfile.
16355         (read_lexical_block_scope): Likewise.
16356         (read_call_site_scope): Likewise.
16357         (read_variable): Likewise.
16358         (dwarf2_rnglists_process): Likewise.
16359         (dwarf2_ranges_process): Likewise.
16360         (dwarf2_ranges_read): Likewise.
16361         (dwarf2_record_block_ranges): Likewise.
16362         (dwarf2_add_field): Likewise.
16363         (dwarf2_add_member_fn): Likewise.
16364         (read_structure_type): Likewise.
16365         (process_structure_scope): Likewise.
16366         (read_enumeration_type): Likewise.
16367         (read_array_type): Likewise.
16368         (read_common_block): Likewise.
16369         (read_namespace_type): Likewise.
16370         (read_namespace): Likewise.
16371         (read_module_type): Likewise.
16372         (read_tag_pointer_type): Likewise.
16373         (read_tag_ptr_to_member_type): Likewise.
16374         (read_tag_string_type): Likewise.
16375         (read_subroutine_type): Likewise.
16376         (read_typedef): Likewise.
16377         (read_base_type): Likewise.
16378         (attr_to_dynamic_prop): Likewise.
16379         (read_subrange_type): Likewise.
16380         (read_unspecified_type): Likewise.
16381         (load_partial_dies): Likewise.
16382         (read_partial_die): Likewise.
16383         (find_partial_die): Likewise.
16384         (guess_partial_die_structure_name): Likewise.
16385         (fixup_partial_die): Likewise.
16386         (read_attribute_value): Likewise.
16387         (read_addr_index_from_leb128): Likewise.
16388         (dwarf2_read_addr_index): Likewise.
16389         (dwarf2_string_attr): Likewise.
16390         (lnp_state_machine::check_line_address): Likewise.
16391         (dwarf_decode_lines_1): Likewise.
16392         (dwarf_decode_lines): Likewise.
16393         (dwarf2_start_symtab): Likewise.
16394         (var_decode_location): Likewise.
16395         (new_symbol_full): Likewise.
16396         (dwarf2_const_value_data): Likewise.
16397         (dwarf2_const_value_attr): Likewise.
16398         (dwarf2_const_value): Likewise.
16399         (die_type): Likewise.
16400         (die_containing_type): Likewise.
16401         (lookup_die_type): Likewise.
16402         (guess_full_die_structure_name): Likewise.
16403         (anonymous_struct_prefix): Likewise.
16404         (dwarf2_name): Likewise.
16405         (follow_die_ref_or_sig): Likewise.
16406         (follow_die_offset): Likewise.
16407         (follow_die_ref): Likewise.
16408         (dwarf2_fetch_die_loc_sect_off): Likewise.
16409         (dwarf2_fetch_constant_bytes): Likewise.
16410         (dwarf2_fetch_die_type_sect_off): Likewise.
16411         (dwarf2_get_die_type): Likewise.
16412         (follow_die_sig): Likewise.
16413         (decode_locdesc): Likewise.
16414         (dwarf2_per_cu_objfile): Likewise.
16415         (dwarf2_per_cu_text_offset): Likewise.
16416         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16417         objfile.
16418         (set_die_type): Access objfile through
16419         dwarf2_per_objfile.
16420
16421 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16422
16423         * valprint.c (converted_character_d): Remove typedef.
16424         (DEF_VEC_O (converted_character_d)): Remove.
16425         (count_next_character): Use std::vector.
16426         (print_converted_chars_to_obstack): Likewise.
16427         (generic_printstr): Likewise.
16428
16429 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16430
16431         * xml-support.h (struct gdb_xml_value): Add constructor.
16432         <value>: Change type to unique_xmalloc_ptr.
16433         (gdb_xml_value_s): Remove typedef.
16434         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16435         (gdb_xml_element_start_handler): Change parameter type to
16436         std::vector.
16437         (xml_find_attribute): Likewise.
16438         * xml-support.c (xml_find_attribute): Change parameter type to
16439         std::vector and adjust.
16440         (gdb_xml_values_cleanup): Remove.
16441         (gdb_xml_parser::start_element): Adjust to std::vector.
16442         (xinclude_start_include): Change paraeter type to std::vector
16443         and adjust.
16444         * btrace.c (check_xml_btrace_version): Likewise.
16445         (parse_xml_btrace_block): Likewise.
16446         (parse_xml_btrace_pt_config_cpu): Likewise.
16447         (parse_xml_btrace_pt): Likewise.
16448         (parse_xml_btrace_conf_bts): Likewise.
16449         (parse_xml_btrace_conf_pt): Likewise.
16450         * memory-map.c (memory_map_start_memory): Likewise.
16451         (memory_map_start_property): Likewise.
16452         * osdata.c (osdata_start_osdata): Likewise.
16453         (osdata_start_item): Likewise.
16454         (osdata_start_column): Likewise.
16455         * remote.c (start_thread): Likewise.
16456         * solib-aix.c (library_list_start_library): Likewise.
16457         (library_list_start_list): Likewise.
16458         * solib-svr4.c (library_list_start_library): Likewise.
16459         (svr4_library_list_start_list): Likewise.
16460         * solib-target.c (library_list_start_segment): Likewise.
16461         (library_list_start_section): Likewise.
16462         (library_list_start_library): Likewise.
16463         (library_list_start_list): Likewise.
16464         * tracepoint.c (traceframe_info_start_memory): Likewise.
16465         (traceframe_info_start_tvar): Likewise.
16466         * xml-syscall.c (syscall_start_syscall): Likewise.
16467         * xml-tdesc.c (tdesc_start_target): Likewise.
16468         (tdesc_start_feature): Likewise.
16469         (tdesc_start_reg): Likewise.
16470         (tdesc_start_union): Likewise.
16471         (tdesc_start_struct): Likewise.
16472         (tdesc_start_flags): Likewise.
16473         (tdesc_start_enum): Likewise.
16474         (tdesc_start_field): Likewise.
16475         (tdesc_start_enum_value): Likewise.
16476         (tdesc_start_vector): Likewise.
16477
16478 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16479
16480         * extension.h (struct xmethod_worker) <clone>: Remove.
16481         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16482         Remove.
16483         (python_xmethod_worker::clone): Remove.
16484         * valops.c (find_overload_match): Use std::move instead of
16485         clone.
16486
16487 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16488
16489         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16490         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16491         <free_xmethod_worker_data>: Remove.
16492         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16493         <get_xmethod_arg_types>: Remove.
16494         <get_xmethod_result_type>: Remove.
16495         <invoke_xmethod>: Remove.
16496         * extension.c (new_xmethod_worker): Remove.
16497         (clone_xmethod_worker): Remove.
16498         (get_matching_xmethod_workers): Return void, pass std::vector by
16499         pointer.
16500         (get_xmethod_arg_types): Rename to...
16501         (xmethod_worker::get_arg_types): ... this, and adjust.
16502         (get_xmethod_result_type): Rename to...
16503         (xmethod_worker::get_result_type): ... this, and adjust.
16504         (invoke_xmethod): Remove.
16505         (free_xmethod_worker): Remove.
16506         (free_xmethod_worker_vec): Remove.
16507         * extension.h (enum ext_lang_rc): Move here from
16508         extension-priv.h.
16509         (struct xmethod_worker): Add constructor and destructor.
16510         <data>: Remove.
16511         <value>: Remove.
16512         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16513         virtual pure methods.
16514         <get_arg_types, get_result_type>: New methods.
16515         (xmethod_worker_ptr): Remove typedef.
16516         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16517         (xmethod_worker_vec): Remove typedef.
16518         (xmethod_worker_up): New typedef.
16519         (invoke_xmethod): Remove.
16520         (clone_xmethod_worker): Remove.
16521         (free_xmethod_worker): Remove.
16522         (free_xmethod_worker_vec): Remove.
16523         (get_xmethod_arg_types): Remove.
16524         (get_xmethod_result_type): Remove.
16525         * valops.c (find_method_list): Use std::vector, don't use
16526         intermediate vector.
16527         (value_find_oload_method_list): Use std::vector.
16528         (find_overload_match): Use std::vector.
16529         (find_oload_champ): Use std::vector.
16530         * value.c (value_free): Use operator delete.
16531         (value_of_xmethod): Rename to...
16532         (value_from_xmethod): ... this.  Don't assign
16533         xmethod_worker::value, take rvalue-reference.
16534         (result_type_of_xmethod): Adjust.
16535         (call_xmethod): Adjust.
16536         * value.h: Include extension.h.
16537         (struct xmethod_worker): Don't forward-declare.
16538         (value_of_xmethod): Rename to...
16539         (value_from_xmethod): ... this, take rvalue-reference.
16540         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16541         (struct python_xmethod_worker): ... this, add constructor and
16542         destructor.
16543         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16544         (gdbpy_free_xmethod_worker_data): Rename to...
16545         (python_xmethod_worker::~python_xmethod_worker): ... this and
16546         adjust.
16547         (gdbpy_clone_xmethod_worker_data): Rename to...
16548         (python_xmethod_worker::clone): ... this and adjust.
16549         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16550         temporary vector.
16551         (gdbpy_get_xmethod_arg_types): Rename to...
16552         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16553         (gdbpy_get_xmethod_result_type): Rename to...
16554         (python_xmethod_worker::do_get_result_type): ... this and
16555         adjust.
16556         (gdbpy_invoke_xmethod): Rename to...
16557         (python_xmethod_worker::invoke): ... this and adjust.
16558         (new_python_xmethod_worker): Rename to...
16559         (python_xmethod_worker::python_xmethod_worker): ... this and
16560         adjust.
16561         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16562         Remove.
16563         (gdbpy_free_xmethod_worker_data): Remove.
16564         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16565         (gdbpy_get_xmethod_arg_types): Remove.
16566         (gdbpy_get_xmethod_result_type): Remove.
16567         (gdbpy_invoke_xmethod): Remove.
16568         * python/python.c (python_extension_ops): Remove obsolete
16569         callbacks.
16570
16571 2018-01-05  Pedro Alves  <palves@redhat.com>
16572
16573         PR gdb/18653
16574         * common/signals-state-save-restore.c
16575         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16576         find a custom handler preinstalled, instead of internal erroring.
16577         But only warn if !quiet.
16578         * common/signals-state-save-restore.h
16579         (save_original_signals_state): New parameter 'quiet'.
16580         * main.c (captured_main_1): Move save_original_signals_state call
16581         after option handling, and pass QUIET.
16582
16583 2018-01-05  Pedro Alves  <palves@redhat.com>
16584
16585         * spu-tdep.c (spu_catch_start): Pass
16586         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16587
16588 2018-01-05  Pedro Alves  <palves@redhat.com>
16589
16590         PR gdb/22670
16591         * ada-lang.c (literal_symbol_name_matcher): New function.
16592         (ada_get_symbol_name_matcher): Use it for
16593         symbol_name_match_type::SEARCH_NAME.
16594         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16595         it down instead of assuming symbol_name_match_type::FULL.
16596         * block.h (block_lookup_symbol): New parameter 'match_type'.
16597         * c-valprint.c (print_unpacked_pointer): Use
16598         lookup_symbol_search_name instead of lookup_symbol.
16599         * compile/compile-object-load.c (get_out_value_type): Pass down
16600         symbol_name_match_type::SEARCH_NAME.
16601         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16602         symbol_name_match_type::FULL.
16603         * cp-support.c (cp_get_symbol_name_matcher): Handle
16604         symbol_name_match_type::SEARCH_NAME.
16605         * infrun.c (insert_exception_resume_breakpoint): Use
16606         lookup_symbol_search_name.
16607         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16608         * psymtab.c (maintenance_check_psymtabs): Use
16609         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16610         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16611         SYMBOL_SEARCH_NAME.
16612         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16613         if symbol_name_match_type::SEARCH_NAME.
16614         (lookup_symbol_in_language): Pass down
16615         symbol_name_match_type::FULL.
16616         (lookup_symbol_search_name): New.
16617         (lookup_language_this): Pass down
16618         symbol_name_match_type::SEARCH_NAME.
16619         (lookup_symbol_aux, lookup_local_symbol): New parameter
16620         'match_type'.  Pass it down.
16621         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16622         (lookup_symbol_search_name): New declaration.
16623         (lookup_symbol_in_block): New 'match_type' parameter.
16624
16625 2018-01-05  Pedro Alves  <palves@redhat.com>
16626
16627         PR gdb/22670
16628         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16629         ada_lookup_symbol.
16630         (ada_lookup_symbol): Reimplement in terms of
16631         ada_lookup_symbol_list, bits factored out from
16632         ada_lookup_encoded_symbol.
16633
16634 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16635
16636         * ada-exp.y (write_object_renaming): When subscripting an array
16637         using a symbol as the index, pass the block in call to
16638         ada_lookup_encoded_symbol when looking that symbol up.
16639
16640 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16641
16642         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16643         TYPE_INDEX_TYPE.
16644
16645 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16646
16647         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16648         the case where VALUE_LVAL (val0) is not lval_memory.
16649
16650 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16651
16652         * ada-valprint.c (print_optional_low_bound): Handle
16653         character-indexed array printing like boolean-indexed array
16654         printing.
16655
16656 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16657
16658         * NEWS: Create a new section for the next release branch.
16659         Rename the section of the current branch, now that it has
16660         been cut.
16661
16662 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16663
16664         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16665         * version.in: Bump version to 8.1.50.DATE-git.
16666
16667 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16668
16669         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16670         Add field.
16671         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16672         Add field.
16673         (default_exception_support_info) <catch_handlers_sym>: Add field.
16674         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16675         (ada_exception_name_addr_1): Add "catch handlers" handling.
16676         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16677         Update all callers.
16678         (create_excep_cond_exprs) <ex>: Add parameter.
16679         (re_set_exception): Update create_excep_cond_exprs call.
16680         (print_it_exception, print_one_exception, print_mention_exception)
16681         (print_recreate_exception): Add "catch handler" handling.
16682         (allocate_location_catch_handlers, re_set_catch_handlers)
16683         (check_status_catch_handlers, print_it_catch_handlers)
16684         (print_one_catch_handlers, print_mention_catch_handlers)
16685         (print_recreate_catch_handlers): New function.
16686         (catch_handlers_breakpoint_ops): New variable.
16687         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16688         Add parameter.  Add "catch handler" handling.
16689         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16690         Add "catch handler" handling.
16691         (ada_exception_catchpoint_cond_string): Add "catch handler"
16692         handling.
16693         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16694         call.
16695         (catch_ada_handlers_command): New function.
16696         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16697         operations structure.
16698         (_initialize_ada_language): Add "catch handlers" command entry.
16699         * NEWS: Document "catch handlers" feature.
16700
16701 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16702
16703         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16704         account when creating the array type of the slice.
16705         (ada_value_slice): Likewise.
16706
16707 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16708
16709         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16710         New enum value.
16711         (create_array_type_with_stride): Add byte_stride_prop parameter.
16712         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16713         New parameter.  Update all callers in this file.
16714         (array_type_has_dynamic_stride): New function.
16715         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16716         of arrays with dynamic byte strides.
16717         * dwarf2read.c (read_array_type): Add support for dynamic
16718         DW_AT_byte_stride attributes.
16719
16720 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16721
16722         * dwarf2read.c (read_unspecified_type): Treat
16723         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16724
16725 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16726
16727         Update copyright year range in all GDB files.
16728
16729 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16730
16731         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16732         and gdb/testsuite/gdb.base/step-line.c.
16733
16734 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16735
16736         * copyright.py (main): Dump the contents of
16737         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16738         even if BY_HAND is empty.
16739
16740 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16741
16742         * top.c (print_gdb_version): Update Copyright year in version
16743         message.
16744
16745 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16746
16747         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16748
16749 For older changes see ChangeLog-2017.
16750 \f
16751 Local Variables:
16752 mode: change-log
16753 left-margin: 8
16754 fill-column: 74
16755 version-control: never
16756 coding: utf-8
16757 End: