RISC-V: Correct printing of MSTATUS and MISA.
[external/binutils.git] / gdb / ChangeLog
1 2018-12-13  Jim Wilson  <jimw@sifive.com>
2
3         * riscv-tdep.c (riscv_print_one_register_info): For MSTATUS, add
4         comment for SD field, and correct xlen calculation.  For MISA, add
5         comment for MXL field, add call to register_size, and correct base
6         calculation.
7
8 2018-12-13  Stafford Horne  <shorne@gmail.com>
9
10         * NEWS(New targets): Add or1k*-*-linux*.
11
12 2018-12-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
13
14         * nat/linux-osdata.c (linux_xfer_osdata_info_os_types): Forward
15         declare on one line to fix ARI warning.
16
17 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
18
19         * infrun.c (infcall_suspend_state::infcall_suspend_state): New.
20         (infcall_suspend_state::registers): New.
21         (infcall_suspend_state::restore): New.
22         (infcall_suspend_state::thread_suspend): Rename to...
23         (infcall_suspend_state::m_thread_suspend): ...this.
24         (infcall_suspend_state::registers): Rename to...
25         (infcall_suspend_state::m_registers): ...this.
26         (infcall_suspend_state::siginfo_gdbarch): Rename to...
27         (infcall_suspend_state::m_siginfo_gdbarch): ...this.
28         (infcall_suspend_state::siginfo_data): Rename to...
29         (infcall_suspend_state::m_siginfo_data): ...this.
30         (save_infcall_suspend_state): Rewrite to use infcall_suspend_state
31         constructor.
32         (restore_infcall_suspend_state): Rewrite to use
33         infcall_suspend_state::restore method.
34         (get_infcall_suspend_state_regcache): Use
35         infcall_suspend_state::registers method.
36
37 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
38
39         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
40         arguments are passed in integer registers.
41         (riscv_call_arg_complex_float): Likewise.
42
43 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
44
45         * nat/linux-osdata.c (common_getter): New function.
46         (struct osdata_type): Change getter to take_snapshot.
47         Add LONGEST len_avail and struct buffer buffer.
48         Change all elements in the initializer.
49         Add an element for the list of types.
50         (linux_xfer_osdata_info_os_types): New function.
51         (linux_common_xfer_osdata): Use common_getter for the list of types.
52         Replace getter call by common_getter.
53         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
54         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
55         (linux_xfer_osdata_fds): Likewise.
56         (linux_xfer_osdata_modules): Likewise.
57         (linux_xfer_osdata_msg): Likewise.
58         (linux_xfer_osdata_processes): Likewise.
59         (linux_xfer_osdata_processgroups): Likewise.
60         (linux_xfer_osdata_sem): Likewise.
61         (linux_xfer_osdata_shm): Likewise.
62         (linux_xfer_osdata_isockets): Likewise.
63         (linux_xfer_osdata_threads): Likewise.
64
65 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
66
67         * nat/linux-osdata.c: Removed various trailing spaces.
68
69 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
70
71         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
72         leading whitespace before #include line.
73
74 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
75             Дилян Палаузов  <dilyan.palauzov@aegee.org>
76
77         PR gdb/23950
78         * configure.ac: Search for tgetent in libtinfow.
79         * configure: Re-generate.
80
81 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
82
83         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
84         (thread_db_err_str): Forward declare.
85         (delete_thread_db_info): Call td_ta_delete_p if available.
86         (try_thread_db_load_1): Acquire td_ta_delete address.
87         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
88
89 2018-12-08  Pedro Alves  <palves@redhat.com>
90
91         * source.c (forward_search_command): Rename to ...
92         (search_command_helper): ... this.  Add 'forward' parameter.
93         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
94         buffer.  Handle backward searches too.
95         (forward_search_command, reverse_search_command): Reimplement by
96         calling search_command_helper.
97
98 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
99
100         * .dir-locals.el: Copy most of the settings from c-mode over to
101         c++-mode.
102
103 2018-12-08  Stafford Horne  <shorne@gmail.com>
104
105         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
106         * configure.tgt: Add or1k*-*-linux*.
107         * or1k-linux-tdep.c: New file.
108         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
109
110 2018-12-07  Pedro Alves  <palves@redhat.com>
111
112         * dwarf2read.c (get_gdb_index_contents_from_section): Use
113         gdb::make_array_view.
114
115 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
116
117         * language.c (_initialize_language): Fix leak by assigning
118         a static string to language.  Same for range and case_sensitive,
119         even if no leak is detected for these variables.
120
121 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
122
123         * configure: Re-generate.
124         * configure.ac: Use separate sed expressions to escape variables
125         in auto-load directories.
126
127 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
128
129         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
130         (riscv_find_default_target_description): Use new function to
131         extract feature from gdbarch_info.
132         (riscv_gdbarch_init): Add error checks for xlen and flen between
133         target description and bfd headers.  Be smarter about when we
134         think the hardware floating point abi should be used.
135
136 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
137
138         * nat/aarch64-linux-hw-point.c
139         (aarch64_linux_any_set_debug_regs_state): New function.
140         * nat/aarch64-linux-hw-point.h
141         (aarch64_linux_any_set_debug_regs_state): New declaration.
142         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
143         BPs or WPs are set.
144
145 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
146
147         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
148         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
149
150 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
151             Simon Marchi  <simon.marchi@ericsson.com>
152
153         * linespec.c (symtab_vector_up): Remove.
154         (symtabs_from_filename): Change return type to std::vector.
155         (collect_symtabs_from_filename): Likewise.
156         (create_sals_line_offset): Assign return value of
157         collect_symtabs_from_filename to *ls->file_symtabs.
158         (convert_explicit_location_to_linespec): Remove call to release.
159         (parse_linespec): Likewise.
160         (symtab_collector) <symtab_collector>: Remove initialization of
161         m_symtabs.
162         <release_symtabs>: Change return type to std::vector<symtab *>.
163         <operator ()>: Adjust.
164
165 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
166
167         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
168         defined.
169         (union sigval32, struct siginfo32, fbsd_siginfo_size)
170         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
171         of KERN_PROC_AUXV and PT_LWPINFO.
172         (fbsd_nat_target::xfer_partial): Define method unconditionally.
173         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
174         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
175         Make TARGET_OBJECT_FREEBSD_VMMAP and
176         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
177         and KERN_PROC_PS_STRINGS.
178         * fbsd-nat.h: Include <sys/proc.h>.
179         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
180
181 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
182
183         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
184         header files.
185         (riscv_linux_nat_target::read_description): New method.
186
187 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
188
189         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
190         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
191         (riscv_tdesc_cache): New global.
192         (riscv_create_target_description): Look in the cache before
193         creating a new target description.
194
195 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
196
197         * arch/riscv.h (riscv_gdb_features::operator==): New.
198         (riscv_gdb_features::operator!=): New.
199         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
200         operator.
201
202 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
203
204         * arch/riscv.h (riscv_create_target_description): Make return type
205         const.
206         * arch/riscv.c (riscv_create_target_description): Likewise.
207         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
208
209 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
210             Keith Seitz  <keiths@redhat.com>
211             Tom Tromey  <tom@tromey.com>
212             Sergio Durigan Junior  <sergiodj@redhat.com>
213
214         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
215         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
216         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
217         inside the CU.
218
219 2018-11-30  Pedro Alves  <palves@redhat.com>
220
221         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
222         <stratum>: New override.
223         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
224         <stratum>: New override.
225         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
226         <stratum>: New override.
227         * exec.c (exec_target) <exec_target>: Delete.
228         <stratum>: New override.
229         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
230         stratum method instead of the to_stratum field.
231         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
232         <stratum>: New override.
233         (thread_db_target::thread_db_target): Delete.
234         * make-target-delegates (print_class): Don't print a ctor
235         declaration.  Print a stratum method override declaration.
236         * process-stratum-target.h (process_stratum_target)
237         <process_stratum_target>: Delete.
238         <stratum>: New override.
239         * ravenscar-thread.c (ravenscar_thread_target)
240         <ravenscar_thread_target>: Delete.
241         <stratum>: New override.
242         * record-btrace.c (record_btrace_target)
243         <record_btrace_target>: Delete.
244         <stratum>: New override.
245         * record-full.c (record_full_base_target)
246         <record_full_base_target>: Delete.
247         <stratum>: New override.
248         * record.c (record_disconnect, record_detach)
249         (record_mourn_inferior, record_kill): Adjust to use the stratum
250         method instead of the to_stratum field.
251         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
252         * sol-thread.c (sol_thread_target)
253         <sol_thread_target>: Delete.
254         <stratum>: New override.
255         * spu-multiarch.c (spu_multiarch_target)
256         <spu_multiarch_target>: Delete.
257         <stratum>: New override.
258         * target-delegates.c: Regenerate.
259         * target.c (target_stack::push, target_stack::unpush)
260         (pop_all_targets_above, pop_all_targets_at_and_above)
261         (info_target_command, target_require_runnable)
262         (target_stack::find_beneath): Adjust to use the stratum method
263         instead of the to_stratum field.
264         (dummy_target::dummy_target): Delete.
265         (dummy_target::stratum): New.
266         (debug_target::debug_target): Delete.
267         (debug_target::stratum): New.
268         (maintenance_print_target_stack): Adjust to use the stratum method
269         instead of the to_stratum field.
270         * target.h (struct target_ops) <stratum>: New method.
271         <to_stratum>: Delete.
272         <is_pushed>: Adjust to use the stratum method
273         instead of the to_stratum field.
274
275 2018-11-30  Pedro Alves  <palves@redhat.com>
276
277         * corelow.c (core_target) <has_all_memory, has_execution>: New
278         overrides.
279         * inf-child.c (inf_child_target::has_all_memory)
280         (inf_child_target::has_memory, inf_child_target::has_stack)
281         (inf_child_target::has_registers)
282         (inf_child_target::has_execution): Delete.
283         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
284         has_stack, has_registers, has_execution>: Delete.
285         * process-stratum-target.c
286         (process_stratum_target::has_all_memory)
287         (process_stratum_target::has_memory)
288         (process_stratum_target::has_stack)
289         (process_stratum_target::has_registers)
290         (process_stratum_target::has_execution): New.
291         * process-stratum-target.h (process_stratum_target)
292         <has_all_memory, has_memory, has_stack, has_registers,
293         has_execution>: New method overrides.
294         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
295         has_memory, has_stack, has_registers, has_execution>: Delete.
296         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
297         has_execution>: Delete.
298         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
299         has_registers, has_execution>: Delete.
300         * target.c (default_child_has_all_memory)
301         (default_child_has_memory, default_child_has_stack)
302         (default_child_has_registers, default_child_has_execution):
303         Delete.
304         * target.h (default_child_has_all_memory)
305         (default_child_has_memory, default_child_has_stack)
306         (default_child_has_registers, default_child_has_execution):
307         Delete.
308         * tracefile.h (tracefile_target) <has_execution>: New override.
309
310 2018-11-30  Pedro Alves  <palves@redhat.com>
311
312         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
313         * bsd-kvm.c: Include "process-stratum-target.h".
314         (bsd_kvm_target): Now inherits from process_stratum_target.
315         (bsd_kvm_target::bsd_kvm_target): Default it.
316         * corelow.c: Include "process-stratum-target.h".
317         (core_target): Now inherits from process_stratum_target.
318         (core_target::core_target): Don't set to_stratum here.
319         * inf-child.c (inf_child_target::inf_child_target): Delete.
320         * inf-child.h: Include "process-stratum-target.h".
321         (inf_child_target): Inherit from process_stratum_target.
322         (inf_child_target) <inf_child_target>: Default it.
323         <can_async_p, supports_non_stop, supports_disable_randomization>:
324         Delete overrides.
325         * process-stratum-target.c: New file.
326         * process-stratum-target.h: New file.
327         * remote-sim.c: Include "process-stratum-target.h".
328         (gdbsim_target): Inherit from process_stratum_target.
329         <gdbsim_target>: Default it.
330         * remote.c: Include "process-stratum-target.h".
331         (remote_target): Inherit from process_stratum_target.
332         <remote_target>: Default it.
333         * target.c (default_thread_address_space)
334         (default_thread_architecture): Delete.
335         * target.h (target_ops) <thread_architecture>: Now returns NULL by
336         default.
337         <thread_address_space>: Ditto.
338         * test-target.h: Include "process-stratum-target.h" instead of
339         "target.h".
340         (test_target_ops): Inherit from process_stratum_target.
341         <test_target_ops>: Default it.
342         * tracefile.c (tracefile_target::tracefile_target): Delete.
343         * tracefile.h: Include "process-stratum-target.h".
344         (tracefile_target): Inherit from process_stratum_target.
345         <tracefile_target>: Default it.
346         * target-delegates.c: Regenerate.
347
348 2018-11-30  Pedro Alves  <palves@redhat.com>
349
350         * Makefile.in (COMMON_SFILES): Add test-target.c.
351         * gdbarch-selftests.c: Include "test-target.h".
352         * regcache.c: Include "test-target.h".
353         * target.c (test_target_info, test_target_ops::info): Move to ...
354         * test-target.c: ... this new file.
355         * target.h (test_target_ops): Move to ...
356         * test-target.h: ... this new file.
357
358 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
359
360         * source.c (forward_search_command): Fix leak by using
361         xrealloc even for the first allocation in the loop, as buf
362         is static.
363
364 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
365
366         PR gdb/23093
367         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
368         (fbsd_gdb_signal_to_target): New.
369         (fbsd_init_abi): Install gdbarch "signal_from_target" and
370         "signal_to_target" methods.
371
372 2018-11-29  Tom Tromey  <tom@tromey.com>
373
374         * valarith.c (value_x_unop): Don't set argvec[3].
375
376 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
377
378         PR gdb/23917
379         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
380         semicolon.
381
382 2018-11-26  Pedro Alves  <palves@redhat.com>
383
384         * procfs.c (procfs_notice_thread): Replace uses of
385         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
386         * sol-thread.c (sol_thread_target::wait)
387         (sol_update_thread_list_callback): Likewise.
388
389 2018-11-25  Tom Tromey  <tom@tromey.com>
390
391         * ui-out.c (ui_out::field_fmt): Remove comment.
392         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
393         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
394
395 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
396
397         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
398         leak in open_source_file' has been partially undone by '2179fbc36d23
399         Return scoped_fd from open_source_file'. Re-add the transfer of
400         current s->fullname to the unique_xmalloc_ptr fullname given
401         to find_and_open_source.
402
403 2018-11-23  Pedro Alves  <palves@redhat.com>
404
405         * gdbthread.h (enum thread_state): Move comments here.
406         (is_running, is_stopped, is_exited): Remove declarations.
407
408 2018-11-22  Pedro Alves  <palves@redhat.com>
409
410         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
411         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
412         ALL_NON_EXITED_THREADS with all_non_exited_threads.
413         (print_one_breakpoint_location): Replace ALL_INFERIORS with
414         all_inferiors.
415         * bsd-kvm.c: Include inferior.h.
416         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
417         with all_non_exited_threads.
418         * common/filtered-iterator.h: New.
419         * common/safe-iterator.h: New.
420         * corelow.c (core_target_open): Don't call init_thread_list here.
421         * darwin-nat.c (thread_info_from_private_thread_info): Replace
422         ALL_THREADS with all_threads.
423         * fbsd-nat.c (fbsd_nat_target::resume): Replace
424         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
425         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
426         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
427         * fork-child.c (postfork_hook): Don't call init_thread_list here.
428         * gdbarch-selftests.c (register_to_value_test): Adjust.
429         * gdbthread.h: Don't include "inferior.h" here.
430         (struct inferior): Forward declare.
431         (enum step_over_calls_kind): Moved here from inferior.h.
432         (thread_info::deletable): Definition moved to thread.c.
433         (find_thread_ptid (inferior *, ptid_t)): Declare.
434         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
435         Include "thread-iter.h".
436         (all_threads, all_non_exited_threads, all_threads_safe): New.
437         (any_thread_p): Declare.
438         (thread_list): Delete.
439         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
440         all_non_exited_threads.
441         (proceed_after_attach_callback): Delete.
442         (proceed_after_attach): Take an inferior pointer instead of an
443         integer PID.  Adjust to use range-for.
444         (attach_post_wait): Pass down inferior pointer instead of pid.
445         Use range-for instead of ALL_NON_EXITED_THREADS.
446         (detach_command): Remove init_thread_list call.
447         * inferior-iter.h: New.
448         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
449         (delete_thread_of_inferior): Delete.
450         (delete_inferior, exit_inferior_1): Use range-for with
451         inf->threads_safe() instead of iterate_over_threads.
452         (inferior_appeared): Call init_thread_list here.
453         (discard_all_inferiors): Use all_non_exited_inferiors.
454         (find_inferior_id, find_inferior_pid): Use all_inferiors.
455         (iterate_over_inferiors): Use all_inferiors_safe.
456         (have_inferiors, number_of_live_inferiors): Use
457         all_non_exited_inferiors.
458         (number_of_inferiors): Use all_inferiors and std::distance.
459         (print_inferior): Use all_inferiors.
460         * inferior.h: Include gdbthread.h.
461         (enum step_over_calls_kind): Moved to gdbthread.h.
462         (struct inferior) <thread_list>: New field.
463         <threads, non_exited_threads, threads_safe>: New methods.
464         (ALL_INFERIORS): Delete.
465         Include "inferior-iter.h".
466         (ALL_NON_EXITED_INFERIORS): Delete.
467         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
468         functions.
469         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
470         ALL_NON_EXITED_THREADS with all_non_exited_threads.
471         * infrun.c (follow_exec): Use all_threads_safe.
472         (clear_proceed_status, proceed): Use all_non_exited_threads.
473         (init_wait_for_inferior): Don't clear inline frame state here.
474         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
475         all_threads instead of ALL_NON_EXITED_THREADS.
476         (random_pending_event_thread): Use all_non_exited_threads instead
477         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
478         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
479         instead of ALL_NON_EXITED_THREADS.
480         (handle_no_resumed): Use all_non_exited_threads instead of
481         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
482         ALL_INFERIORS.
483         (restart_threads, switch_back_to_stepped_thread): Use
484         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
485         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
486         all_inferiors.
487         (kill_unfollowed_fork_children): Use inf->non_exited_threads
488         instead of ALL_NON_EXITED_THREADS.
489         * linux-tdep.c (linux_make_corefile_notes): Use
490         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
491         * linux-thread-db.c (thread_db_target::update_thread_list):
492         Replace ALL_INFERIORS with all_inferiors.
493         (thread_db_target::thread_handle_to_thread_info): Use
494         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
495         * mi/mi-interp.c (multiple_inferiors_p): New.
496         (mi_on_resume_1): Simplify using all_non_exited_threads and
497         multiple_inferiors_p.
498         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
499         instead of ALL_NON_EXITED_THREADS.
500         * nto-procfs.c (nto_procfs_target::open): Don't call
501         init_thread_list here.
502         * record-btrace.c (record_btrace_target_open)
503         (record_btrace_target::stop_recording)
504         (record_btrace_target::close)
505         (record_btrace_target::record_is_replaying)
506         (record_btrace_target::resume, record_btrace_target::wait)
507         (record_btrace_target::record_stop_replaying): Use
508         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
509         * record-full.c (record_full_wait_1): Use all_non_exited_threads
510         instead of ALL_NON_EXITED_THREADS.
511         * regcache.c (cooked_read_test): Remove reference to global
512         thread_list.
513         * remote-sim.c (gdbsim_target::create_inferior): Don't call
514         init_thread_list here.
515         * remote.c (remote_target::update_thread_list): Use
516         all_threads_safe instead of ALL_NON_EXITED_THREADS.
517         (remote_target::process_initial_stop_replies): Replace
518         ALL_INFERIORS with all_non_exited_inferiors and use
519         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
520         (remote_target::open_1): Don't call init_thread_list here.
521         (remote_target::append_pending_thread_resumptions)
522         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
523         instead of ALL_NON_EXITED_THREADS.
524         (remote_target::commit_resume)
525         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
526         with all_non_exited_inferiors and use all_non_exited_threads
527         instead of ALL_NON_EXITED_THREADS.
528         (remote_target::kill_new_fork_children): Use
529         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
530         init_thread_list and init_wait_for_inferior calls.
531         (remote_target::remote_btrace_maybe_reopen)
532         (remote_target::thread_handle_to_thread_info): Use
533         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
534         * target.c (target_terminal::restore_inferior)
535         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
536         all_non_exited_inferiors.
537         * thread-iter.c: New file.
538         * thread-iter.h: New file.
539         * thread.c: Include "inline-frame.h".
540         (thread_list): Delete.
541         (clear_thread_inferior_resources): Call clear_inline_frame_state.
542         (init_thread_list): Use all_threads_safe instead of
543         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
544         (new_thread): Adjust to per-inferior thread lists.
545         (add_thread_silent): Pass inferior to find_thread_ptid.
546         (thread_info::deletable): New, moved from the header.
547         (delete_thread_1): Adjust to per-inferior thread lists.
548         (find_thread_global_id): Use inf->threads().
549         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
550         find_thread_ptid.
551         (find_thread_ptid(inferior*, ptid_t)): New overload.
552         (iterate_over_threads): Use all_threads_safe.
553         (any_thread_p): New.
554         (thread_count): Use all_threads and std::distance.
555         (live_threads_count): Use all_non_exited_threads and
556         std::distance.
557         (valid_global_thread_id): Use all_threads.
558         (in_thread_list): Use find_thread_ptid.
559         (first_thread_of_inferior): Adjust to per-inferior thread lists.
560         (any_thread_of_inferior, any_live_thread_of_inferior): Use
561         inf->non_exited_threads().
562         (prune_threads, delete_exited_threads): Use all_threads_safe.
563         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
564         (set_resumed, set_running): Use all_non_exited_threads.
565         (is_thread_state, is_stopped, is_exited, is_running)
566         (is_executing): Delete.
567         (set_executing, set_stop_requested, finish_thread_state): Use
568         all_non_exited_threads.
569         (print_thread_info_1): Use all_inferiors and all_threads.
570         (thread_apply_all_command): Use all_non_exited_threads.
571         (thread_find_command): Use all_threads.
572         (update_threads_executing): Use all_non_exited_threads.
573         * tid-parse.c (parse_thread_id): Use inf->threads.
574         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
575
576 2018-11-22  Pedro Alves  <palves@redhat.com>
577
578         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
579         switch to it before calling into try_open_exec_file.
580
581 2018-11-22  Pedro Alves  <palves@redhat.com>
582
583         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
584         inferior_thread instead of find_thread_ptid, and only when
585         inferior_ptid is not null_ptid.
586         * inferior.c (add_inferior): Don't include target_pid_to_str
587         output when the inferior is not started.
588         * python/py-inferior.c (python_on_normal_stop): Don't use
589         find_thread_ptid.
590         (tui_on_user_selected_context_changed): Use inferior_thread
591         instead of find_thread_ptid, and only when inferior_ptid is not
592         null_ptid.
593
594 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
595
596         PR python/23714
597         * gdb/python/python.c (execute_gdb_command): Call
598         prevent_dont_repeat earlier to avoid affecting dont_repeat.
599
600 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
601
602         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
603         (HFILES_NO_SRCDIR): Add arch/riscv.h.
604         * arch/riscv.c: New file.
605         * arch/riscv.h: New file.
606         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
607         this list, and add arch/riscv.o.
608         * features/Makefile: Add riscv features.
609         * features/riscv/32bit-cpu.c: New file.
610         * features/riscv/32bit-cpu.xml: New file.
611         * features/riscv/32bit-csr.c: New file.
612         * features/riscv/32bit-csr.xml: New file.
613         * features/riscv/32bit-fpu.c: New file.
614         * features/riscv/32bit-fpu.xml: New file.
615         * features/riscv/64bit-cpu.c: New file.
616         * features/riscv/64bit-cpu.xml: New file.
617         * features/riscv/64bit-csr.c: New file.
618         * features/riscv/64bit-csr.xml: New file.
619         * features/riscv/64bit-fpu.c: New file.
620         * features/riscv/64bit-fpu.xml: New file.
621         * features/riscv/rebuild-csr-xml.sh: New file.
622         * riscv-tdep.c: Add 'arch/riscv.h' include.
623         (riscv_gdb_reg_names): Delete.
624         (csr_reggroup): New global.
625         (struct riscv_register_alias): Delete.
626         (struct riscv_register_feature): New structure.
627         (riscv_register_aliases): Delete.
628         (riscv_xreg_feature): New global.
629         (riscv_freg_feature): New global.
630         (riscv_virtual_feature): New global.
631         (riscv_csr_feature): New global.
632         (riscv_create_csr_aliases): New function.
633         (riscv_read_misa_reg): Delete.
634         (riscv_has_feature): Delete.
635         (riscv_isa_xlen): Simplify, just return cached xlen.
636         (riscv_isa_flen): Simplify, just return cached flen.
637         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
638         (riscv_register_name): Update to make use of tdesc_register_name.
639         Look up xreg and freg names in the new globals riscv_xreg_feature
640         and riscv_freg_feature.  Don't supply csr aliases here.
641         (riscv_fpreg_q_type): Delete.
642         (riscv_register_type): Use tdesc_register_type in almost all
643         cases, override the returned type in a few specific cases only.
644         (riscv_print_one_register_info): Handle errors reading registers.
645         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
646         registers that are otherwise unknown to GDB.  Also check the
647         csr_reggroup.
648         (riscv_print_registers_info): Remove assert about upper register
649         number, and use gdbarch_register_reggroup_p instead of
650         short-cutting.
651         (riscv_find_default_target_description): New function.
652         (riscv_check_tdesc_feature): New function.
653         (riscv_add_reggroups): New function.
654         (riscv_setup_register_aliases): New function.
655         (riscv_init_reggroups): New function.
656         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
657         setup register groups.  Register new riscv debug variable.
658         * riscv-tdep.h: Add 'arch/riscv.h' include.
659         (struct gdbarch_tdep): Remove abi union, and add
660         riscv_gdbarch_features field.  Remove cached quad floating point
661         type, and provide initialisation for double type field.
662         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
663         the list of targets using the feature based target descriptions.
664         * NEWS: Mention target description support.
665
666 2018-11-21  Pedro Alves  <palves@redhat.com>
667
668         * valops.c (find_method_list, value_find_oload_method_list)
669         (find_overload_match, find_oload_champ): Rename parameters and
670         locals.
671
672 2018-11-21  Pedro Alves  <palves@redhat.com>
673
674         * valops.c (find_method_list): Replace pointer and length
675         parameters with an gdb::array_view.  Adjust.
676         (value_find_oload_method_list): Likewise.
677         (find_overload_match): Use gdb::array_view for methods list.
678         Adjust to find_oload_champ interface change.
679         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
680         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
681
682 2018-11-21  Pedro Alves  <palves@redhat.com>
683
684         * gdbtypes.c (compare_badness): Change type of parameters to const
685         reference.  Adjust to badness_vector being a std::vector now.
686         (rank_function): Adjust to badness_vector being a std::vector now.
687         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
688         (LENGTH_MATCH): Delete.
689         (compare_badness): Change type of parameters to const reference.
690         (rank_function): Return a badness_vector by value now.
691         (find_overload_match): Adjust to badness_vector being a
692         std::vector now.  Remove cleanups.
693         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
694         badness_vector pointer.
695         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
696         a badness_vector pointer.  Adjust to badness_vector being a
697         std::vector now.  Remove cleanups.
698         (find_oload_champ): 'oload_champ_bv' parameter now
699         a badness_vector pointer.  Adjust to badness_vector being a
700         std::vector now.  Remove cleanups.
701
702 2018-11-21  Pedro Alves  <palves@redhat.com>
703
704         * cp-support.c (sym_return_val_size, sym_return_val_index)
705         (sym_return_val): Delete.
706         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
707         add to the vector.
708         (make_symbol_overload_list): Adjust to return a std::vector
709         instead of maintaining a global open coded vector.
710         (make_symbol_overload_list_block): Add std::vector parameter.
711         (make_symbol_overload_list_block): Rename to ...
712         (add_symbol_overload_list_block): ... this and add std::vector
713         parameter.
714         (make_symbol_overload_list_namespace): Rename to ...
715         (add_symbol_overload_list_namespace): ... this and add std::vector
716         parameter.
717         (make_symbol_overload_list_adl_namespace): Rename to ...
718         (add_symbol_overload_list_adl_namespace): ... this and add
719         std::vector parameter.
720         (make_symbol_overload_list_adl): Delete.
721         (add_symbol_overload_list_adl): New.
722         (make_symbol_overload_list_using): Rename to ...
723         (add_symbol_overload_list_using): ... this and add std::vector
724         parameter.
725         (make_symbol_overload_list_qualified): Rename to ...
726         (add_symbol_overload_list_qualified): ... this and add std::vector
727         parameter.
728         * cp-support.h: Include "common/array-view.h" and <vector>.
729         (make_symbol_overload_list): Change return type to std::vector.
730         (make_symbol_overload_list_adl): Delete declaration.
731         (add_symbol_overload_list_adl): New declaration.
732         * valops.c (find_overload_match): Local 'oload_syms' now a
733         std::vector.
734         (find_oload_champ_namespace): 'oload_syms' parameter now a
735         std::vector pointer.
736         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
737         std::vector pointer.  Adjust to new make_symbol_overload_list
738         interface.
739
740 2018-11-21  Pedro Alves  <palves@redhat.com>
741
742         * common/array-view.h (array_view::splice(size_type, size_t)): New.
743         (array_view::splice(size_type)): New.
744         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
745         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
746         std::vector.
747         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
748         * extension.h: Include "common/array-view.h".
749         (xmethod_worker::invoke): Adjust to use gdb::array_view.
750         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
751         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
752         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
753         (xmethod_worker::do_get_result_type): Adjust to use
754         gdb::array_view.
755         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
756         * gdbtypes.h: Include "common/array-view.h".
757         (rank_function): Adjust to use gdb::array_view.
758         * python/py-xmethods.c (python_xmethod_worker::invoke)
759         (python_xmethod_worker::do_get_arg_types)
760         (python_xmethod_worker::do_get_result_type)
761         (python_xmethod_worker::invoke): Adjust to new interfaces.
762         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
763         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
764         * valops.c (find_overload_match, find_oload_champ_namespace)
765         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
766         gdb:array_view and the new xmethod_worker interfaces.
767         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
768         gdb::array_view.
769         * value.h (find_overload_match, result_type_of_xmethod)
770         (call_xmethod): Adjust to use gdb::array_view.
771         * unittests/array-view-selftests.c: Add slicing tests.
772
773 2018-11-21  Pedro Alves  <palves@redhat.com>
774
775         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
776         * common/array-view.h (make_array_view): New.
777         * compile/compile-object-run.c (compile_object_run): Adjust to
778         pass an array_view.
779         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
780         * eval.c (eval_call): Adjust to pass an array_view.
781         (evaluate_subexp_standard): Adjust to pass an array_view.
782         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
783         * guile/scm-value.c (gdbscm_value_call): Likewise.
784         * infcall.c (push_dummy_code): Replace pointer + size parameters
785         with an array_view parameter.
786         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
787         adjust.
788         * infcall.h: Include "common/array-view.h".
789         (call_function_by_hand, call_function_by_hand_dummy): Replace
790         pointer + size parameters with an array_view parameter.
791         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
792         * linux-tdep.c (linux_infcall_mmap): Likewise.
793         * objc-lang.c (lookup_objc_class, lookup_child_selector)
794         (value_nsstring, print_object_command): Likewise.
795         * python/py-value.c (valpy_call): Likewise.
796         * rust-lang.c (rust_evaluate_funcall): Likewise.
797         * spu-tdep.c (flush_ea_cache): Likewise.
798         * valarith.c (value_x_binop, value_x_unop): Likewise.
799         * valops.c (value_allocate_space_in_inferior): Likewise.
800         * unittests/array-view-selftests.c (run_tests): Add
801         gdb::make_array_view test.
802
803 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
804
805         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
806         than a fixed size buffer.
807
808 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
809
810         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
811         and remove insertion of extra spaces in GDB's output.
812         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
813         Layout field into a temporary buffer, and then output it as a
814         string field.
815
816 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
817
818         * NEWS: Document the language choice done by
819         'info [types|functions|variables]|rbreak'.
820
821 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
822
823         * symtab.c (treg_matches_sym_type_name): Use
824         scoped_switch_to_sym_language_if_auto instead of local logic.
825         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
826         to switch to SYM language when language mode is auto.
827
828 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
829
830         * language.h (scoped_switch_to_sym_language_if_auto): New class.
831
832 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
833
834         * symtab.c (search_symbols): Properly check absence of type regexp
835         before entering the loop scanning the minimal symbols.
836
837 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
838
839         * s12z-tdep.c (s12z_extract_return_value): New function.
840         (inv_reg_perm) New array.
841         (s12z_return_value): Populate readbuf if non-null.
842
843 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
844
845         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
846         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
847         to MinGW fixed by Gnulib.
848         (O_NOINHERIT): Define if not defined.
849
850 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
851
852         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
853
854 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
855
856         * infrun.c (displaced_step_inferior_state) <next>: Remove.
857
858 2018-11-19  Tom Tromey  <tom@tromey.com>
859
860         * source.c (get_filename_and_charpos): Return void.
861
862 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
863
864         * skip.c (_initialize_step_skip): Fix "info skip" help.
865
866 2018-11-16  Tom Tromey  <tom@tromey.com>
867
868         PR rust/23625:
869         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
870
871 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
872
873         * infrun.c (displaced_step_inferior_states): Change type to
874         std::forward_list.
875         (get_displaced_stepping_state): Adjust.
876         (displaced_step_in_progress_any_inferior): Adjust.
877         (add_displaced_stepping_state): Adjust.
878         (remove_displaced_stepping_state): Adjust.
879
880 2018-11-18  Tom Tromey  <tom@tromey.com>
881
882         PR build/23814:
883         * target-delegates.c: Rebuild.
884         * ia64-linux-nat.c (class ia64_linux_nat_target)
885         <have_steppable_watchpoint>: Use override.  Return true, not 1.
886         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
887         "self" argument.
888         (ia64_linux_nat_target::low_new_thread): Rename.
889         (class ia64_linux_nat_target) <read_description>: Don't declare.
890         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
891         bool.
892
893 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
894
895         PR gdb/22736:
896         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
897         lang_struct_return code.
898
899 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
900
901         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
902         return_method.
903         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
904         * amd64-tdep.c (amd64_push_arguments): Likewise.
905         (amd64_push_dummy_call): Likewise.
906         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
907         * arc-tdep.c (arc_push_dummy_call): Likewise.
908         * arm-tdep.c (arm_push_dummy_call): Likewise.
909         * avr-tdep.c (avr_push_dummy_call): Likewise.
910         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
911         * cris-tdep.c (cris_push_dummy_call): Likewise.
912         * csky-tdep.c (csky_push_dummy_call): Likewise.
913         * frv-tdep.c (frv_push_dummy_call): Likewise.
914         * gdbarch.c: Regenerate.
915         * gdbarch.h: Regenerate.
916         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
917         return_method.
918         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
919         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
920         (hppa64_push_dummy_call): Likewise.
921         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
922         * i386-tdep.c (i386_push_dummy_call): Likewise.
923         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
924         * infcall.c (call_function_by_hand_dummy): Likewise.
925         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
926         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
927         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
928         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
929         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
930         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
931         * mep-tdep.c (mep_push_dummy_call): Likewise.
932         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
933         (mips_n32n64_push_dummy_call): Likewise.
934         (mips_o32_push_dummy_call): Likewise.
935         (mips_o64_push_dummy_call): Likewise.
936         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
937         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
938         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
939         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
940         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
941         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
942         (ppc64_sysv_abi_push_dummy_call): Likewise.
943         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
944         (ppc64_sysv_abi_push_dummy_call): Likewise.
945         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
946         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
947         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
948         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
949         * rx-tdep.c (rx_push_dummy_call): Likewise.
950         * s390-tdep.c (s390_push_dummy_call): Likewise.
951         * score-tdep.c (score_push_dummy_call): Likewise.
952         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
953         (sh_push_dummy_call_nofpu): Likewise.
954         * sparc-tdep.c (sparc32_store_arguments): Likewise.
955         (sparc32_push_dummy_call): Likewise.
956         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
957         (sparc64_push_dummy_call): Likewise.
958         * spu-tdep.c (spu_push_dummy_call): Likewise.
959         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
960         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
961         * v850-tdep.c (v850_push_dummy_call): Likewise.
962         * vax-tdep.c (vax_push_dummy_call): Likewise.
963         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
964         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
965
966 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
967
968         * gdbarch.sh (enum function_call_return_method): Add enum.
969         * gdbarch.h: Regenerate.
970         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
971
972 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
973
974         * unittests/copy_bitwise-selftests.c: New file.
975         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
976         (selftests::copy_bitwise_tests): Delete, moving this code to
977         unittests/copy_bitwise-selftests.c instead.
978         (_initialize_utils): Do not register copy_bitwise tests.
979         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
980         unittests/copy_bitwise-selftests.c.
981
982 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
983
984         * ada-lang.c (move_bits): Delete. Update all callers to use
985         copy_bitwise instead.
986         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
987         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
988         Move from here to utils.c.
989         (_initialize_dwarf2loc): Remove call to register copy_bitwise
990         selftests.
991         * utils.h (copy_bitwise): Add declaration.
992         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
993         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
994         Moved here from dwarf2loc.c.
995         (_initialize_utils): Register copy_bitwise selftests.
996
997 2018-11-14  Jim Wilson  <jimw@sifive.com>
998
999         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
1000         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
1001         then increment next_regnum if odd.
1002         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
1003         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
1004         function type.  Pass new arg to riscv_arg_location based on function
1005         type.
1006         (riscv_return_value): Pass new arg to riscv_arg_location.
1007
1008         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
1009         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
1010         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
1011
1012         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
1013         setting len.  New local align, set to max of arg align and xlen,
1014         and pass to first riscv_assign_stack_location call.
1015
1016 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
1017
1018         * skip.c (complete_skip_number): New function.
1019         (_initialize_step_skip): Add completers to some skip commands.
1020
1021 2018-11-09  Tom Tromey  <tom@tromey.com>
1022
1023         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
1024         (struct remote_g_packet_data): Derive from allocate_on_obstack.
1025         <guesses>: Now a std::vector.
1026         (remote_g_packet_data_init, register_remote_g_packet_guess):
1027         Update.
1028         (remote_read_description_p): Update.  Return bool.
1029         (remote_target::read_description): Update.
1030         (struct remote_g_packet_guess): Add constructor.
1031
1032 2018-11-09  Tom Tromey  <tom@tromey.com>
1033
1034         * common/scoped_fd.h (class scoped_fd): Add move constructor and
1035         move assignment operator.
1036         * psymtab.c (psymtab_to_fullname): Update.
1037         * source.h (open_source_file): Return scoped_fd.
1038         (find_and_open_source): Likewise.
1039         * source.c (open_source_file): Return scoped_fd.
1040         (get_filename_and_charpos): Update.
1041         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1042         (forward_search_command): Likewise.
1043         (reverse_search_command): Likewise.
1044         (find_and_open_source): Return scoped_fd.
1045         * tui/tui-source.c (tui_set_source_content): Update.  Use
1046         gdb_file_up.
1047
1048 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1049
1050         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1051         overflow.
1052
1053 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1054
1055         * configure: Regenerate.
1056
1057 2018-11-09  Tom de Vries  <tdevries@suse.de>
1058
1059         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1060         unconditionally, to set the language of the symbol.  Manage freeing
1061         returned pointer using gdb::unique_xmalloc_ptr.
1062
1063 2018-11-08  Tom Tromey  <tom@tromey.com>
1064
1065         * record.c (require_record_target): Upper-case "<TAB>".
1066
1067 2018-11-08  Tom Tromey  <tom@tromey.com>
1068
1069         * python/lib/gdb/command/pretty_printers.py
1070         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1071
1072 2018-11-08  Tom Tromey  <tom@tromey.com>
1073
1074         PR gdb/23555:
1075         PR gdb/23838:
1076         * target.h (target_supports_terminal_ours): Return bool.
1077         * target.c (target_supports_terminal_ours): Handle case where
1078         current_top_target returns nullptr.  Return bool.
1079
1080 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1081
1082         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1083         return the correct count for potential HFAs.
1084
1085 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1086
1087         * i387-tdep.c (i387_supply_xsave): Split handling of
1088         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1089         (i387_collect_xsave): Likewise.
1090
1091 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1092
1093         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1094         (riscv_frame_this_id): Catch errors thrown while building the
1095         frame cache, leave the frame id as the default, which is the outer
1096         frame id.
1097
1098 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1099
1100         * ada-lang.c (read_atcb): Only set task_info->called_task if
1101         task_info->state == Entry_Caller_Sleep.
1102         (print_ada_task_info): Do not check task_info->state before
1103         checking task_info->called_task.
1104         (info_task): Likewise.
1105
1106 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1107
1108         * ada-tasks.c (read_atcb): Clear task_info before computing
1109         the value of each of its fields.
1110
1111 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1112
1113         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1114         NULL before dereferencing it.
1115
1116 2018-11-06  Tom de Vries  <tdevries@suse.de>
1117
1118         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1119         program headers.
1120
1121 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1122
1123         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1124         so that it applies to uclinux as well.
1125
1126 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1127
1128         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1129         when on AAPCS.
1130
1131 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1132
1133         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1134         RISCV_CSR_SSTATUS_REGNUM.
1135
1136 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1137
1138         * source.c (open_source_file): Fix leak by transferring the
1139         current s->fullname to the unique_xmalloc_ptr fullname given
1140         to find_and_open_source.
1141
1142 2018-11-04  Tom Tromey  <tom@tromey.com>
1143
1144         * varobj.c (install_default_visualizer): Update.
1145         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1146         Return gdbpy_ref.
1147         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1148         (find_pretty_printer_from_progspace)
1149         (find_pretty_printer_from_gdb, find_pretty_printer)
1150         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1151         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1152         Update.
1153
1154 2018-11-04  Tom Tromey  <tom@tromey.com>
1155
1156         * python/python.c (gdbpy_parameter_value): Update.
1157         * python/python-internal.h (python_string_to_unicode)
1158         (python_string_to_target_python_string)
1159         (host_string_to_python_string): Return gdbpy_ref.
1160         * python/py-utils.c (python_string_to_unicode)
1161         (unicode_to_encoded_python_string)
1162         (unicode_to_target_python_string)
1163         (python_string_to_target_string)
1164         (python_string_to_target_python_string): Return gdbpy_ref.
1165         (python_string_to_host_string): Update.
1166         (host_string_to_python_string): Return gdbpy_ref.
1167         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1168         (stpy_fullname): Update.
1169         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1170         Update.
1171         * python/py-prettyprint.c (print_string_repr): Update.
1172         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1173         (objfpy_get_build_id): Update.
1174         * python/py-breakpoint.c (bppy_get_location)
1175         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1176         Update.
1177
1178 2018-11-04  Tom Tromey  <tom@tromey.com>
1179
1180         * python/python-internal.h (gdb_py_object_from_longest)
1181         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1182         * python/py-value.c (valpy_int): Update.
1183         * python/py-utils.c (gdb_py_object_from_longest): Return
1184         gdbpy_ref.
1185         (gdb_py_object_from_ulongest): Likewise.
1186         * python/py-type.c (typy_get_alignof): Update.
1187         * python/py-linetable.c (ltpy_get_all_source_lines)
1188         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1189         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1190
1191 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1192
1193         * ada-lang.c (_initialize_ada_language): Fix typo.
1194
1195 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1196
1197         * language.c (type): Remove.
1198         (_initialize_language): Remove assignment to type.
1199
1200 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1201
1202         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1203         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1204         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1205         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1206         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1207         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1208         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1209         and aarch64-ravenscar-thread.o.
1210         * NEWS: Add entry documenting Ravenscar tasking support
1211         on AArch64 ELF.
1212
1213 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1214
1215         * symtab.c (info_functions_command): Initialize quiet flag.
1216         * stack.c (info_args_command): Likewise.
1217
1218 2018-11-01  Jim Wilson  <jimw@sifive.com>
1219
1220         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1221         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1222         debugging messages.
1223
1224 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1225
1226         * ada-lang.c (ada_watch_location_expression): New function.
1227         (ada_language_defn): Set la_watch_location_expression to
1228         ada_watch_location_expression.
1229
1230 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1231
1232         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1233
1234 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1235
1236         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1237         shifting.
1238
1239 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1240             Joel Brobecker  <brobecker@adacore.com>
1241
1242         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1243         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1244         * arm-pikeos-tdep.c: New file.
1245         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1246         embedded system.
1247         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1248
1249 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1250
1251         * common/pathstuff.c (get_standard_temp_dir): New.
1252         * common/pathstuff.h (get_standard_temp_dir): New.
1253         * config.in: Re-generate.
1254         * configure: Re-generate.
1255         * configure.ac: Don't check for mkdtemp.
1256         * gnulib/aclocal-m4-deps.mk: Re-generate.
1257         * gnulib/aclocal.m4: Re-generate.
1258         * gnulib/config.in: Re-generate.
1259         * gnulib/configure: Re-generate.
1260         * gnulib/import/Makefile.am: Re-generate.
1261         * gnulib/import/Makefile.in: Re-generate.
1262         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1263         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1264         * gnulib/import/m4/mkdtemp.m4: New file.
1265         * gnulib/import/mkdtemp.c: New file.
1266         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1267         Add mkdtemp module.
1268         * unittests/mkdir-recursive-selftests.c (test): Use
1269         get_standard_temp_dir.
1270         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1271         ifdef.
1272         * compile/compile.c (get_compile_file_tempdir): Likewise.
1273
1274 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1275
1276         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1277         (SIG_FRAME_LR_OFFSET64): New define.
1278         (SIG_FRAME_FP_OFFSET64): New define.
1279         (aix_sighandle_frame_cache): New Function.
1280         (aix_sighandle_frame_this_id): New Function.
1281         (aix_sighandle_frame_prev_register): New Function.
1282         (aix_sighandle_frame_sniffer): New Function.
1283         (aix_sighandle_frame_unwind): New global variable.
1284         (rs6000_aix_init_osabi): Install new frame unwinder.
1285
1286 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1287
1288         PR gdb/23835
1289         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1290         already defined.
1291
1292 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1293
1294         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1295
1296 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1297
1298         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1299         (producer_is_icc): New function.
1300         (check_producer): Set producer_is_icc field on dwarf2_cu.
1301         (dwarf2_init_integer_type): New function.
1302         (read_base_type): Call dwarf2_init_integer_type instead of
1303         init_integer_type in all cases.
1304         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1305         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1306         LEN is greater than 0.
1307
1308 2018-10-30  Tom Tromey  <tom@tromey.com>
1309
1310         * main.c (captured_main_1): Check return value of bfd_init.
1311
1312 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1313
1314         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1315         Adjust comments.
1316
1317 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1318
1319         * procfs.c: Include common/pathstuff.h.
1320
1321 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1322
1323         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1324         Add missing braces.  No functional change.
1325
1326 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1327
1328         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1329         to report a bad option and fix indentation.
1330         * demangle.c (demangle_command): Use report_unrecognized_option_error
1331         to report a bad option and correctly report the bad option.
1332
1333 2018-10-27  Tom Tromey  <tom@tromey.com>
1334
1335         PR cli/23364:
1336         * darwin-nat.c (copied_shell): New global.
1337         (may_have_sip): Rename from should_disable_startup_with_shell.
1338         (copy_shell_to_cache, maybe_cache_shell): New functions.
1339         (darwin_nat_target::create_inferior): Update.  Use
1340         copied_shell.
1341
1342 2018-10-27  Tom Tromey  <tom@tromey.com>
1343
1344         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1345         (run_tests): Call test_to_file.
1346         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1347         temporary files.
1348         * common/scoped_fd.h (scoped_fd::to_file): New method.
1349
1350 2018-10-27  Tom Tromey  <tom@tromey.com>
1351
1352         * unittests/scoped_mmap-selftests.c (test_normal): Use
1353         gdb_mkostemp_cloexec.
1354         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1355         Use gdb_mkostemp_cloexec.
1356         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1357         gnulib/config.in, gnulib/configure,
1358         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1359         gnulib/import/m4/gnulib-cache.m4,
1360         gnulib/import/m4/gnulib-comp.m4: Update.
1361         * gnulib/import/m4/mkostemp.m4: New file.
1362         * gnulib/import/m4/mkstemp.m4: Remove.
1363         * gnulib/import/mkostemp.c: New file.
1364         * gnulib/import/mkstemp.m4: Remove.
1365         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1366         mkstemp, add mkostemp.  Apply new patch.
1367         * gnulib/import/stdlib.in.h: Apply patch.
1368         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1369         New file.
1370         * dwarf-index-write.c (write_psymtabs_to_index): Use
1371         gdb_mkostemp_cloexec.
1372         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1373
1374 2018-10-27  Tom Tromey  <tom@tromey.com>
1375
1376         * unittests/mkdir-recursive-selftests.c: New file.
1377         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1378         unittests/mkdir-recursive-selftests.c.
1379         * dwarf-index-cache.c (mkdir_recursive): Move to
1380         common/filestuff.c.
1381         (index_cache::store): Check return value of mkdir_recursive.
1382         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1383         (_initialize_index_cache): Don't register test.
1384         * common/filestuff.h (mkdir_recursive): Declare.
1385         * common/filestuff.c (mkdir_recursive): Move from
1386         dwarf-index-cache.c.  Return bool.
1387
1388 2018-10-27  Tom Tromey  <tom@tromey.com>
1389
1390         * dwarf-index-write.c (write_psymtabs_to_index): Move
1391         make_temp_filename to common/pathstuff.c.
1392         * common/pathstuff.h (make_temp_filename): Declare.
1393         * common/pathstuff.c (make_temp_filename): New function, moved
1394         from dwarf-index-write.c.
1395
1396 2018-10-27  Tom Tromey  <tom@tromey.com>
1397
1398         * procfs.c (procfs_target::create_inferior): Use get_shell.
1399         * cli/cli-cmds.c (shell_escape): Use get_shell.
1400         * windows-nat.c (windows_nat_target::create_inferior): Use
1401         get_shell.
1402         * common/pathstuff.c (get_shell): New function.
1403         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1404         (fork_inferior): Use get_shell.
1405         * common/pathstuff.h (get_shell): Declare.
1406
1407 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1408
1409         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1410
1411 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1412
1413         * stack.c (print_variable_and_value_data): Add preg and treg.
1414         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1415         and update callers.
1416         (print_frame_arg_vars): Likewise.
1417         (prepare_reg): New function.
1418         (info_locals_command): Extract info print args and use them.
1419         (info_args_command): Likewise.
1420         (_initialize_stack): Modify on-line help.
1421         * symtab.c (treg_matches_sym_type_name): New function.
1422         (search_symbols): New arg t_regexp.
1423         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1424         (info_variables_command): Extract info print args and use them.
1425         (info_functions_command): Likewise.
1426         (info_types_command): Update call to symtab_symbol_info.
1427         (_initialize_symtab): Modify on-line help.
1428         * symtab.h (treg_matches_sym_type_name): New function.
1429         (search_symbols): New t_regexp arg.
1430
1431 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1432
1433         * cli-utils.c (extract_arg_maybe_quoted): New function.
1434         (extract_info_print_args): New function.
1435         (info_print_args_help): New function.
1436         (report_unrecognized_option_error): New function.
1437         * cli-utils.h (extract_arg_maybe_quoted): New function.
1438         (extract_info_print_args): New function.
1439         (info_print_args_help): New function.
1440         (report_unrecognized_option_error): New function.
1441
1442 2018-10-26  Tom Tromey  <tom@tromey.com>
1443
1444         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1445         (compute_compunit_symtab_includes): Update.
1446         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1447         (compunit_symtab_ptr): Likewise.
1448
1449 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1450
1451         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1452         default_print_auxv_entry for specific tag values.
1453
1454 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1455
1456         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1457
1458 2018-10-26  Jim Wilson  <jimw@sifive.com>
1459
1460         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1461         (riscv_linux_sigframe_init): Declare.
1462         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1463         (riscv_linux_sigframe): New.
1464         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1465         (riscv_linux_sigframe_init): Define.
1466         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1467
1468         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1469         (riscv_isa_flen): Likewise.  Drop static.
1470         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1471         (riscv_isa_flen): Likewise.  Declare.
1472
1473 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1474             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1475
1476         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1477         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1478         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1479         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1480         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1481         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1482         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1483         Define.
1484         (struct ppc_linux_features) <htm>: New field.
1485         (ppc_linux_no_features): Add initializer for htm field.
1486         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1487         new tdescs.
1488         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1489         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1490         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1491         Define if not already defined.
1492         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1493         and rs6000/powerpc-isa207-htm-vsx64l.
1494         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1495         rs6000/powerpc-isa207-htm-vsx64l.xml.
1496         * features/rs6000/power-htm-spr.xml: New file.
1497         * features/rs6000/power-htm-core.xml: New file.
1498         * features/rs6000/power64-htm-core.xml: New file.
1499         * features/rs6000/power-htm-fpu.xml: New file.
1500         * features/rs6000/power-htm-altivec.xml: New file.
1501         * features/rs6000/power-htm-vsx.xml: New file.
1502         * features/rs6000/power-htm-ppr.xml: New file.
1503         * features/rs6000/power-htm-dscr.xml: New file.
1504         * features/rs6000/power-htm-tar.xml: New file.
1505         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1506         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1507         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1508         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1509         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1510         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1511         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1512         fetch_regset with HTM regsets.
1513         (store_register, store_ppc_registers): Call store_regset with HTM
1514         regsets.
1515         (ppc_linux_nat_target::read_description): Set htm field in the
1516         features struct if needed.
1517         * ppc-linux-tdep.c: Include
1518         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1519         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1520         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1521         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1522         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1523         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1524         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1525         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1526         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1527         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1528         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1529         (ppc32_linux_ctarregset): New globals.
1530         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1531         (ppc_linux_collect_core_cpgrregset): New function.
1532         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1533         regsets.
1534         (ppc_linux_core_read_description): Check if the tm spr section is
1535         present and set htm in the features struct.
1536         (_initialize_ppc_linux_tdep): Call
1537         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1538         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1539         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1540         Declare.
1541         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1542         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1543         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1544         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1545         New fields.
1546         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1547         Likewise.
1548         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1549         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1550         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1551         New enum fields.
1552         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1553         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1554         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1555         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1556         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1557         <PPC_CTAR_REGNUM>: Likewise.
1558         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1559         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1560         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1561         (IS_CEFP_PSEUDOREG): Define.
1562         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1563         registers.  Return names for the checkpointed DFP, VSX, and EFP
1564         pseudo registers.
1565         (rs6000_pseudo_register_type): Remove initial assert and raise an
1566         internal error in the else clause instead.  Return types for the
1567         checkpointed DFP, VSX, and EFP pseudo registers.
1568         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1569         checkpointed DFP pseudo registers.
1570         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1571         checkpointed VSX pseudo registers.
1572         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1573         from efpr_pseudo_register_read and
1574         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1575         registers.
1576         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1577         Handle checkpointed DFP, VSX, and EFP registers.
1578         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1579         (efp_ax_pseudo_register_collect): New functions.
1580         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1581         register logic to new functions.  Handle checkpointed DFP, VSX,
1582         and EFP pseudo registers.
1583         (rs6000_gdbarch_init): Look for and validate the htm features.
1584         Include checkpointed DFP, VSX and EFP pseudo-registers.
1585         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1586         HTM registers.
1587
1588 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1589
1590         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1591         without altivec or fpu.
1592
1593 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1594             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1595
1596         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1597         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1598         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1599         Define if not already defined.
1600         * features/rs6000/power-ebb.xml: New file.
1601         * features/rs6000/power-linux-pmu.xml: New file.
1602         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1603         features.
1604         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1605         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1606         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1607         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1608         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1609         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1610         fetch_regset with ebb and pmu regsets.
1611         (store_register, store_ppc_registers): Call store_regset with ebb
1612         and pmu regsets.
1613         (ppc_linux_nat_target::read_description): Set isa207 field in the
1614         features struct if ebb and pmu are avaiable.
1615         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1616         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1617         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1618         and pmu regsets.
1619         (ppc_linux_core_read_description): Check if the pmu section is
1620         present and set isa207 in the features struct.
1621         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1622         (ppc32_linux_pmuregset): Declare.
1623         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1624         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1625         <ppc_sier_regnum>: New field.
1626         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1627         New enum values.
1628         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1629         values.
1630         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1631         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1632         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1633         ebb and pmu features.
1634
1635 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1636             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1637
1638         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1639         (tdesc_powerpc_isa207_vsx64l): Declare.
1640         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1641         (struct ppc_linux_features) <isa207>: New field.
1642         (ppc_linux_no_features): Add initializer for isa207 field.
1643         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1644         new tdescs.
1645         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1646         (NT_PPC_TAR): Define if not already defined.
1647         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1648         rs6000/powerpc-isa207-vsx64l.
1649         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1650         rs6000/powerpc-isa207-vsx64l.xml.
1651         * features/rs6000/power-tar.xml: New file.
1652         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1653         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1654         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1655         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1656         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1657         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1658         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1659         fetch_regset with the TAR regset.
1660         (store_register, store_ppc_registers): Call store_regset with the
1661         TAR regset.
1662         (ppc_linux_nat_target::read_description): Set isa207 field in the
1663         features struct if needed.
1664         * ppc-linux-tdep.c: Include
1665         features/rs6000/powerpc-isa207-vsx32l.c and
1666         features/rs6000/powerpc-isa207-vsx64l.c.
1667         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1668         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1669         regset.
1670         (ppc_linux_core_read_description): Check if the tar section is
1671         present and set isa207 in the features struct.
1672         (_initialize_ppc_linux_tdep): Call
1673         initialize_tdesc_powerpc_isa207_vsx32l and
1674         initialize_tdesc_powerpc_isa207_vsx64l.
1675         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1676         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1677         (enum) <PPC_TAR_REGNUM>: New enum value.
1678         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1679         feature.
1680         (ppc_process_record_op31): Record changes to TAR.
1681
1682 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1683             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1684
1685         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1686         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1687         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1688         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1689         (struct ppc_linux_features) <ppr_dscr>: New field.
1690         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1691         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1692         new tdescs.
1693         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1694         Define if not already defined.
1695         * features/Makefile (WHICH): Add
1696         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1697         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1698         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1699         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1700         * features/rs6000/power-dscr.xml: New file.
1701         * features/rs6000/power-ppr.xml: New file.
1702         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1703         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1704         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1705         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1706         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1707         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1708         * ppc-linux-nat.c: Include <sys/uio.h>.
1709         (fetch_regset, store_regset, check_regset): New functions.
1710         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1711         DSCR and PPR regsets.
1712         (store_register, store_ppc_registers): Call store_regset with
1713         DSCR and PPR regsets.
1714         (ppc_linux_get_hwcap2): New function.
1715         (ppc_linux_nat_target::read_description): Call
1716         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1717         features struct if needed.
1718         * ppc-linux-tdep.c: Include
1719         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1720         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1721         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1722         (ppc32_linux_dscrregset): New globals.
1723         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1724         and dscr regsets.
1725         (ppc_linux_core_read_description): Check if the ppr and dscr
1726         sections are present and set ppr_dscr in the features struct.
1727         (_initialize_ppc_linux_tdep): Call
1728         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1729         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1730         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1731         (ppc32_linux_dscrregset): Declare.
1732         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1733         <ppc_dscr_regnum>: New field.
1734         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1735         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1736         and dscr features.
1737         (ppc_process_record_op31): Record changes to PPR and DSCR.
1738
1739 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1740
1741         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1742         second initializer line for the have_* variables.  Initialize
1743         have_fpu to 0 instead of 1.
1744
1745 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1746
1747         * arch/ppc-linux-common.c (ppc_linux_match_description):
1748         Parenthesize tdesc assignements and indent them properly.
1749
1750 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1751
1752         * ppc-linux-nat.c (fetch_register): Change if statement to else
1753         if.
1754         (store_register): Likewise.
1755
1756 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1757
1758         * rs6000-tdep.c: Remove reggroups.h include.
1759         (rs6000_pseudo_register_reggroup_p): Remove.
1760         (rs6000_gdbarch_init): Remove call to
1761         set_tdesc_pseudo_register_reggroup_p.
1762
1763 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1764
1765         * reggroups.c (default_register_reggroup_p): Return true for
1766         decfloat registers and float_reggroup.
1767
1768 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1769
1770         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1771         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1772         ppc_linux_collect_vrregset by regcache_collect_regset.
1773
1774 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1775
1776         * linux-tdep.c (linux_collect_regset_section_cb): Use
1777         std::vector<gdb_byte> instead of char * and malloc for buf.
1778         Remove xfree.
1779
1780 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1781
1782         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1783         symtab_start instead of always using language_unknown.
1784
1785 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1786
1787         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1788         READ_P parameter, catch and ignore register access errors from
1789         either the old or new MISA location.
1790         (riscv_has_feature): Update call to riscv_read_misa_reg.
1791
1792 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1793
1794         * python/py-function.c (convert_values_to_python): Return
1795         gdbpy_ref<>.  Add header comment.
1796         (fnpy_call): Adjust.
1797
1798 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1799
1800         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1801         (cmdpy_completer_handle_brkchars): Adjust.
1802         (cmdpy_completer): Adjust.
1803
1804 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1805
1806         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1807         Pass correct regnum to raw_supply_zeroed.
1808
1809 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1810
1811         * regcache.c (cooked_read_test): Add CSKY to the list of
1812         architectures with a save_reggroup
1813
1814 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1815
1816         PR gdb/23368
1817         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1818         transfer terminal state from old new new inferior.
1819         * terminal.h (swap_terminal_info): New function.
1820         * inflow.c (swap_terminal_info): New function.
1821
1822 2018-10-23  Tom Tromey  <tom@tromey.com>
1823
1824         * record-btrace.c (get_thread_current_frame_id): Rename from
1825         get_thread_current_frame.  Return a frame_id.
1826         (record_btrace_start_replaying): Update.
1827
1828 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1829
1830         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1831         for CSRs.
1832
1833 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1834
1835         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1836         have_nonsteppable_watchpoint attribute to 1.
1837
1838 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1839
1840         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1841         register names.
1842         (struct register_alias): Rename to...
1843         (struct riscv_register_alias): ...this, and update comment.
1844         (riscv_register_aliases): Update type, and alias names.  Remove
1845         CSR names from this list.
1846         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1847         register names.  Add an extra assertion.
1848         (riscv_is_regnum_a_named_csr): New function.
1849         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1850
1851 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1852
1853         * configure.tgt: Add configuration for s12z.
1854         * s12z-tdep.c:  New file.
1855         * NEWS: Mention new target.
1856
1857 2018-10-22  Jim Wilson  <jimw@sifive.com>
1858
1859         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1860         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1861
1862         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1863         (riscv_register_type): Use them.
1864         (riscv_print_one_register_info): Handle union of floats same as float.
1865         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1866         riscv_fpreg_q_type fields.
1867
1868 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1869
1870         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1871         * gdbarch.h: Re-generate.
1872         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1873         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1874         * eval.c (evaluate_subexp_standard): Likewise.
1875         * findvar.c (value_of_register): Likewise.
1876         (value_of_register_lazy): Likewise.
1877         (address_from_register): Likewise.
1878         * frame.c (get_frame_register_bytes): Likewise.
1879         * gdbarch-selftests.c (register_to_value_test): Likewise.
1880         * h8300-tdep.c (h8300_register_type): Likewise.
1881         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1882         (i386_svr4_reg_to_regnum): Likewise.
1883         * infcmd.c (default_print_registers_info): Likewise.
1884         (registers_info): Likewise.
1885         (print_vector_info): Likewise.
1886         (default_print_float_info): Likewise.
1887         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1888         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1889         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1890         (mi_cmd_data_list_changed_registers): Likewise.
1891         (mi_cmd_data_list_register_values): Likewise.
1892         (mi_cmd_data_write_register_values): Likewise.
1893         (mi_cmd_trace_frame_collected): Likewise.
1894         * mips-tdep.c (print_gp_register_row): Likewise.
1895         (mips_print_registers_info): Likewise.
1896         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1897         * regcache.c (init_regcache_descr): Likewise.
1898         (register_size): Likewise.
1899         (register_dump::dump): Likewise.
1900         (cooked_read_test): Likewise.
1901         (cooked_write_test): Likewise.
1902         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1903         (rs6000_gdbarch_init): Likewise.
1904         * stabsread.c (stab_reg_to_regnum): Likewise.
1905         * stack.c (info_frame_command): Likewise.
1906         * target-descriptions.c (tdesc_register_name): Likewise.
1907         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1908         * tui/tui-regs.c (tui_show_register_group): Likewise.
1909         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1910         (user_reg_map_regnum_to_name): Likewise.
1911         (value_of_user_reg): Likewise.
1912         (maintenance_print_user_registers): Likewise.
1913         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1914         (xtensa_register_name): Likewise.
1915         (xtensa_register_type): Likewise.
1916         (xtensa_reg_to_regnum): Likewise.
1917         (xtensa_pseudo_register_read): Likewise.
1918         (xtensa_pseudo_register_write): Likewise.
1919
1920 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1921
1922         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1923         correctly-sized buffer with raw_read.
1924         (amd64_pseudo_register_write): Use correctly-sized buffer for
1925         raw_read/raw_write.
1926
1927 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1928
1929         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1930         in add_prefix_cmd of set print type.
1931
1932 2018-10-19  Tom Tromey  <tom@tromey.com>
1933
1934         PR tui/18388:
1935         * NEWS: Mention tabset deprecation.
1936         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1937         (update_tab_width): New function.
1938         (tui_set_tab_width, tui_show_tab_width): New functions.
1939         (tui_set_tab_width_command): Use update_tab_width.
1940         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1941         Add new "set tui tab-width" command.
1942         * tui/tui-source.c (tui_set_source_content): Update.
1943         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1944         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1945         Don't declare.
1946         (tui_tab_width): Declare.
1947         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1948         (tui_set_default_tab_len): Remove.
1949
1950 2018-10-19  Tom Tromey  <tom@tromey.com>
1951
1952         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1953         (key_is_backspace, tui_getc): Don't declare.
1954         * tui/tui-io.c (key_is_start_sequence): Now static.
1955         (key_is_end_sequence, key_is_backspace): Remove.
1956         (tui_getc): Now static.
1957
1958 2018-10-19  Tom Tromey  <tom@tromey.com>
1959
1960         * symfile.c (reread_symbols): Clear "static_links".
1961
1962 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1963
1964         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1965         define.
1966         (aarch64_linux_sigframe_init): Extra boundary checks.
1967
1968 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1969
1970         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1971         the possibly non-existent tdesc type 'vec128', but the type of raw
1972         register v16 instead.
1973
1974 2018-10-19  Gary Benson <gbenson@redhat.com>
1975
1976         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1977
1978 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1979
1980         PR cli/23785
1981         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1982         NULL.
1983
1984 2018-10-17  Paul Koning  <paul_koning@dell.com>
1985
1986         * charset.c (convert_between_encodings): Fix unsigned overflow.
1987
1988 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1989
1990         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1991         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1992         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1993         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1994         New functions.
1995         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1996         and fbsd_info_proc_mappings_header.
1997         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1998         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1999         New.
2000
2001 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
2002
2003         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
2004         Solaris Maintainer.
2005
2006 2018-10-15  Tom Tromey  <tom@tromey.com>
2007
2008         * tui/tui.c (strcat_to_buf): Remove casts.
2009         * tui/tui-winsource.c (tui_show_source_line)
2010         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
2011         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
2012         * tui/tui-windata.c (tui_first_data_item_displayed)
2013         (tui_delete_data_content_windows, tui_erase_data_content)
2014         (tui_display_all_data, tui_display_data_from)
2015         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
2016         * tui/tui-win.c (tui_set_win_height)
2017         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
2018         casts.
2019         * tui/tui-win.c (tui_resize_all): Remove casts.
2020         (tui_scroll_backward_command, tui_set_focus)
2021         (tui_set_tab_width_command): Likewise.
2022         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
2023         * tui/tui-regs.c (tui_show_register_group): Remove cast.
2024         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
2025         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
2026         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
2027         Remove casts.
2028
2029 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
2030
2031         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
2032         AArch64/ARM maintainer.
2033
2034 2018-10-11  Gary Benson <gbenson@redhat.com>
2035
2036         * interps.h (interp::m_name): Make private and mutable.
2037         * interps.c (interp::~interp): Free m_name.
2038
2039 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2040             Simon Marchi <simark@simark.ca>
2041
2042         * README (`configure' options): Add documentation for new
2043         "--enable-unit-tests" option.
2044         * acinclude.m4: Include "selftest.m4".
2045         * configure: Regenerate.
2046         * configure.ac: Use "GDB_AC_SELFTEST".
2047         * maint.c (maintenance_selftest): Update message informing
2048         that selftests have been disabled.
2049         (maintenance_info_selftests): Likewise.
2050         * selftest.m4: New file.
2051
2052 2018-10-10  Gary Benson <gbenson@redhat.com>
2053
2054         * remote.c (remote_target::remote_send_printf): Add
2055         missing va_end found by Coverity.
2056
2057 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2058
2059         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2060
2061 2018-10-09  Tom Tromey  <tom@tromey.com>
2062
2063         * configure: Rebuild.
2064         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2065         * NEWS: Update --enable-ubsan documentation.
2066
2067 2018-10-09  Gary Benson <gbenson@redhat.com>
2068
2069         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2070         found by Coverity.
2071
2072 2018-10-08  Tom Tromey  <tom@tromey.com>
2073
2074         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2075         variable.
2076         (riscv_fbsd_init_abi): Likewise.
2077
2078 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2079         * valops.c (value_struct_elt_for_reference): Rename local variable
2080         to work around the shadowing a previous local warning.
2081
2082 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2083
2084         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2085         * NEWS: Mention new FreeBSD/riscv native configuration.
2086         * configure.host: Add riscv*-*-freebsd*.
2087         * configure.nat: Likewise.
2088         * riscv-fbsd-nat.c: New file.
2089
2090 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2091
2092         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2093         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2094         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2095         * NEWS: Mention new FreeBSD/riscv target.
2096         * configure.tgt: Add riscv*-*-freebsd*.
2097         * riscv-fbsd-tdep.c: New file.
2098         * riscv-fbsd-tdep.h: New file.
2099
2100 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2101
2102         * regcache.h (struct regcache_map_entry): Note that this type can
2103         be used with traditional frame caches.
2104         * trad-frame.c (trad_frame_set_reg_regmap): New.
2105         * trad-frame.h (trad_frame_set_reg_regmap): New.
2106
2107 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2108
2109         PR c++/16841
2110         * valops.c (get_virtual_base_offset): New function.
2111         (value_struct_elt_for_reference): Use it to get virtual base offset
2112         and add it in calculating class member address.
2113
2114 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2115
2116         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2117         (check_producer): Check if the producer is codewarrior.
2118         (producer_is_codewarrior): New function.
2119         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2120         produced by codewarrior.
2121         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2122
2123 2018-10-06  Tom Tromey  <tom@tromey.com>
2124
2125         PR python/19399:
2126         * python/py-inferior.c: Add "architecture" entry.
2127         (infpy_architecture): New function.
2128
2129 2018-10-06  Tom Tromey  <tom@tromey.com>
2130
2131         PR python/21765:
2132         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2133         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2134         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2135         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2136
2137 2018-10-06  Tom Tromey  <tom@tromey.com>
2138
2139         PR build/17077:
2140         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2141         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2142         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2143         #include.
2144
2145 2018-10-06  Tom Tromey  <tom@tromey.com>
2146
2147         * python/py-breakpoint.c (bppy_get_location): Handle a
2148         bp_breakpoint without a location.
2149
2150 2018-10-06  Tom Tromey  <tom@tromey.com>
2151
2152         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2153         (_RegEx): Reformat help text.
2154         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2155         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2156         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2157         text.
2158         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2159         (EnableXMethod, DisableXMethod): Remove help indentation.
2160         Capitalize meta-syntactic variables.
2161         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2162         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2163         Capitalize meta-syntactic variables.
2164         * python/lib/gdb/command/explore.py (ExploreCommand)
2165         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2166         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2167         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2168         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2169         Remove help indentation.
2170         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2171         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2172         (DisableFrameFilter, SetFrameFilterPriority)
2173         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2174
2175 2018-10-06  Tom Tromey  <tom@tromey.com>
2176
2177         PR tui/28819:
2178         * tui/tui-io.c (gdb_wgetch): New function.
2179         (tui_mld_getc, tui_getc): Use it.
2180
2181 2018-10-05  Tom Tromey  <tom@tromey.com>
2182
2183         * sol-thread.c (sol_thread_target::wait): Rename inner
2184         "save_ptid".
2185
2186 2018-10-04  Tom Tromey  <tom@tromey.com>
2187
2188         * configure: Rebuild.
2189         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2190
2191 2018-10-04  Tom Tromey  <tom@tromey.com>
2192
2193         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2194         declaration of "block".
2195
2196 2018-10-04  Tom Tromey  <tom@tromey.com>
2197
2198         * common/filestuff.c (fdwalk): Remove inner declaration of
2199         "result".
2200
2201 2018-10-04  Tom Tromey  <tom@tromey.com>
2202
2203         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2204         "structs_addr" and hoist declaration.
2205
2206 2018-10-04  Tom Tromey  <tom@tromey.com>
2207
2208         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2209         variable "size".
2210
2211 2018-10-04  Tom Tromey  <tom@tromey.com>
2212
2213         * mdebugread.c (parse_partial_symbols): Use std::string.
2214
2215 2018-10-04  Tom Tromey  <tom@tromey.com>
2216
2217         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2218         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2219         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2220         header.
2221         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2222         more inner scope.
2223         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2224         * varobj.c (varobj_update): Rename inner "newobj",
2225         "type_changed".
2226         * valprint.c (generic_emit_char): Rename inner "buf".
2227         * valops.c (find_overload_match): Rename inner "temp".
2228         (value_struct_elt_for_reference): Declare "v" in more inner
2229         scope.
2230         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2231         * unittests/array-view-selftests.c (run_tests): Rename inner
2232         "vec".
2233         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2234         header.
2235         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2236         "tsv" in more inner scope.
2237         (print_one_static_tracepoint_marker): Rename inner
2238         "tuple_emitter".
2239         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2240         (tic6x_push_dummy_call): Don't redeclare "addr".
2241         * target-float.c: Declare "dto" lower.
2242         * symtab.c (lookup_local_symbol): Rename inner "sym".
2243         (find_pc_sect_line): Rename inner "pc".
2244         * stack.c (print_frame): Don't redeclare "gdbarch".
2245         (return_command): Rename inner "gdbarch".
2246         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2247         "sp".
2248         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2249         header.
2250         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2251         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2252         scope.
2253         * remote.c (remote_target::update_thread_list): Don't redeclare
2254         "tp".
2255         (remote_target::process_initial_stop_replies): Rename inner
2256         "thread".
2257         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2258         (remote_target::wait_as): Don't redeclare "stop_reply".
2259         (remote_target::get_thread_local_address): Rename inner
2260         "result".
2261         (remote_target::get_tib_address): Likewise.
2262
2263         * regcache.c (cooked_read_test): Rename "regnum".
2264         * record-btrace.c (cmd_record_btrace_start): Rename inner
2265         "exception".
2266         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2267         loop header.
2268         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2269         header.
2270         (ppu2spu_sniffer): Rename inner "buf".
2271         * parse.c (operator_check_standard): Rename inner "type",
2272         "objfile".
2273         * p-valprint.c (pascal_val_print): Introduce new scope for
2274         "low_bound", "high_bound".
2275         * p-exp.y (yylex): Declare "i" in loop header.
2276         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2277         Lower declaration of "s".
2278         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2279         header.
2280         (nios2_push_dummy_call): Rename "len".
2281         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2282         "buf".
2283         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2284         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2285         (linux_xfer_osdata_modules): Likewise.
2286         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2287         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2288         (mips_o64_push_dummy_call): Likewise.
2289         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2290         "op".
2291         * mi/mi-main.c (list_available_thread_groups): Rename inner
2292         "tuple_emitter".
2293         (mi_cmd_data_read_memory): Rename inner "opts".
2294         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2295         "tuple_emitter".
2296         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2297         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2298         more inner scope.
2299         (parse_partial_symbols): Rename inner "pst", "p", "name"
2300         * main.c (captured_main_1): Rename inner "i"s.
2301         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2302         "oso2".
2303         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2304         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2305         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2306         (handle_signal_stop): Rename inner "gdbarch".
2307         (handle_command): Declare "signum" in loop header.
2308         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2309         "status".
2310         (examine_prologue): Rename inner "sol" and "sof".
2311         (ia64_extract_return_value): Rename inner "val".  Declare another
2312         "val" in a more inner scope.
2313         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2314         inner scope.
2315         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2316         "except".
2317         * findvar.c (default_read_var_value): Don't redeclare "addr".
2318         * f-exp.y (yylex): Declare "i" in loop header.
2319         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2320         Rename inner "type", "expect_type".
2321         (evaluate_subexp_for_sizeof): Rename inner "pc".
2322         * elfread.c (elf_symfile_read): Rename inner "abfd".
2323         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2324         "bytes_read".
2325         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2326         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2327         (dwarf_decode_line_header): Rename inner "lh".
2328         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2329         "offset".  Declare "i" in loop header.
2330         (disassemble_dwarf_expression): Rename inner "addr_size".
2331         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2332         inner "result".
2333         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2334         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2335         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2336         "inner_list_emitter".
2337         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2338         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2339         declaration in a block.
2340         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2341         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2342         "obstack_final_size".
2343         * cp-support.c (inspect_type): Declare "i" in loop header.
2344         * compile/compile.c (compile_instance::insert_symbol_error):
2345         Rename inner "e".
2346         * common/agent.c (agent_run_command): Remove inner "ret"
2347         declaration.
2348         * coffread.c (coff_symfile_read): Rename inner "name".
2349         (coff_symfile_read): Rename inner "abfd".
2350         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2351         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2352         "high".
2353         * c-exp.y (lex_one_token): Move "len" declaration lower.
2354         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2355         "gdbarch".
2356         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2357         "b".
2358         (watch_command_1): Declare "mark" later.
2359         (clear_command): Don't shadow "a" or "b".
2360         (delete_command): Rename inner "b".
2361         (delete_trace_command): Likewise.
2362         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2363         "op".
2364         (arm_gdbarch_init): Remove inner "e_flags".
2365         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2366         "offset" in inner blocks.
2367
2368 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2369
2370         * dwarf-index-write.c (file_write): Don't write if the vector is
2371         empty.
2372
2373 2018-10-05  Tom de Vries  <tdevries@suse.de>
2374
2375         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2376         PyArg_ParseTuple call.
2377
2378 2018-10-05  Tom de Vries  <tdevries@suse.de>
2379
2380         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2381         PyArg_ParseTuple call.
2382
2383 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2384
2385         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2386         to avoid exceeding 80 characters per line limit.
2387
2388 2018-10-04  Tom Tromey  <tom@tromey.com>
2389
2390         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2391         (reread_symbols): Update.
2392         * complaints.h (clear_complaints): Remove argument.
2393         * complaints.c (enum complaint_series): Remove.
2394         (series): Remove global.
2395         (complaint_internal): Update.
2396         (clear_complaints): Remove argument.
2397
2398 2018-10-04  Tom Tromey  <tom@tromey.com>
2399
2400         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2401         debugging symbols" message if there is a separate debug objfile.
2402
2403 2018-10-04  Tom Tromey  <tom@tromey.com>
2404
2405         PR cli/19551:
2406         * symfile.c (symbol_file_add_with_addrs): Update output.
2407         * psymtab.c (require_partial_symbols): Update output.
2408
2409 2018-10-04  Tom Tromey  <tom@tromey.com>
2410
2411         PR cli/22234:
2412         * complaints.c: Emit \n.
2413
2414 2018-10-04  Tom Tromey  <tom@tromey.com>
2415
2416         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2417         (separate_debug_file_exists, find_separate_debug_file)
2418         (add_symbol_file_command, reread_symbols, allocate_symtab)
2419         (allocate_compunit_symtab): Use filtered printing, not
2420         unfiltered.
2421         * psymtab.c (require_partial_symbols, dump_psymtab)
2422         (allocate_psymtab): Use filtered printing, not unfiltered.
2423
2424 2018-10-04  Tom Tromey  <tom@tromey.com>
2425
2426         * complaints.c (complaint_internal): Correctly check complaint
2427         count.
2428
2429 2018-10-04  Tom Tromey  <tom@tromey.com>
2430
2431         * complaints.h (struct complaints): Remove declaration.
2432         * complaints.c (clear_complaints): Remove an unused variable.
2433
2434 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2435
2436         * MAINTAINERS (Write After Approval): Add self.
2437
2438 2018-10-03  Tom Tromey  <tom@tromey.com>
2439
2440         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2441         "buffer_contents".
2442         * coffread.c (coff_symtab_read): Initialize "newobj".
2443
2444 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2445
2446         * dwarf2read.c (read_func_scope): Remove struct keyword in
2447         range-based for.
2448
2449 2018-10-03  Tom Tromey  <tom@tromey.com>
2450
2451         * README: Mention --enable-ubsan.
2452         * NEWS: Mention --enable-ubsan.
2453         * acinclude.m4: Include sanitize.m4.
2454         * configure: Rebuild.
2455         * configure.ac: Call AM_GDB_UBSAN.
2456         * sanitize.m4: New file.
2457
2458 2018-10-03  Tom Tromey  <tom@tromey.com>
2459
2460         * expression.h (enum exp_opcode): Use uint8_t as base type.
2461         * expprint.c (op_name): Handle invalid opcodes.
2462
2463 2018-10-03  Tom Tromey  <tom@tromey.com>
2464
2465         * parse.c (prefixify_expression): Add assert.
2466         (parse_exp_in_context_1): Throw exception if the expression is
2467         empty.
2468
2469 2018-10-03  Tom Tromey  <tom@tromey.com>
2470
2471         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2472
2473 2018-10-03  Tom Tromey  <tom@tromey.com>
2474
2475         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2476
2477 2018-10-03  Tom Tromey  <tom@tromey.com>
2478
2479         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2480         unsigned.
2481
2482 2018-10-03  Tom Tromey  <tom@tromey.com>
2483
2484         * findvar.c (extract_integer): Do work in an unsigned type.
2485
2486 2018-10-03  Tom Tromey  <tom@tromey.com>
2487
2488         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2489         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2490         base type.
2491         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2492         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2493         type.
2494         * c-lang.h (enum c_string_type_values): Use unsigned as base
2495         type.
2496         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2497
2498 2018-10-03  Tom Tromey  <tom@tromey.com>
2499
2500         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2501         <~dwarf2_frame_state_reg_info>: Update.
2502         <dwarf2_frame_state_reg_info>: Update.
2503         <alloc_regs>: Add assertion.  Update.
2504         <reg>: Now a std::vector.
2505         <num_regs>: Remove.
2506         <swap>: Update.
2507         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2508         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2509
2510 2018-10-03  Tom Tromey  <tom@tromey.com>
2511
2512         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2513
2514 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2515
2516         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2517
2518 2018-10-02  Tom Tromey  <tom@tromey.com>
2519
2520         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2521
2522 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2523
2524         * NEWS: Mention changed commands.
2525         * ser-uds.c: New file.
2526         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2527         * configure: Regenerate.
2528         * Makefile.in: Add new file.
2529         * serial.c (serial_open): Check if filename is a socket
2530         and lookup the appropriate interface accordingly.
2531
2532 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2533
2534         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2535         define.
2536         (AARCH64_EXTRA_MAGIC): Likewise.
2537         (AARCH64_FPSIMD_MAGIC): Likewise.
2538         (AARCH64_SVE_MAGIC): Likewise.
2539         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2540         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2541         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2542         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2543         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2544         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2545         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2546         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2547         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2548         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2549         (read_aarch64_ctx): Add function.
2550         (aarch64_linux_sigframe_init): Detect FP registers.
2551
2552 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2553
2554         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2555         (AARCH64_D0_REGNUM): Likewise.
2556         (AARCH64_S0_REGNUM): Likewise.
2557         (AARCH64_H0_REGNUM): Likewise.
2558         (AARCH64_B0_REGNUM): Likewise.
2559         (AARCH64_SVE_V0_REGNUM): Likewise.
2560         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2561         (AARCH64_D0_REGNUM): Likewise.
2562         (AARCH64_S0_REGNUM): Likewise.
2563         (AARCH64_H0_REGNUM): Likewise.
2564         (AARCH64_B0_REGNUM): Likewise.
2565         (AARCH64_SVE_V0_REGNUM): Likewise.
2566
2567 2018-10-01  Gary Benson <gbenson@redhat.com>
2568
2569         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2570         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2571         prfpregset_t instead of gdb_prfpregset_t.
2572         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2573         * configure, config.in: Rebuild.
2574
2575 2018-10-01  Gary Benson <gbenson@redhat.com>
2576
2577         * common/gdb_proc_service.h: New file, factored out from...
2578         * gdb_proc_service.h: Moved common code to the above file.
2579         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2580
2581 2018-10-01  Gary Benson <gbenson@redhat.com>
2582
2583         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2584         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2585
2586 2018-10-01  Gary Benson <gbenson@redhat.com>
2587
2588         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2589         (AC_CHECK_HEADERS): Check for linux/elf.h.
2590         * configure, config.in: Rebuild.
2591         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2592         doesn't define elf_fpregset_t.
2593
2594 2018-10-01  Gary Benson <gbenson@redhat.com>
2595
2596         * gdb_proc_service.h: Whitespace change.
2597
2598 2018-10-01  Tom Tromey  <tom@tromey.com>
2599
2600         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2601         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2602         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2603
2604 2018-10-01  Tom Tromey  <tom@tromey.com>
2605
2606         * README: Minor change.
2607
2608 2018-09-30  Pedro Alves  <palves@redhat.com>
2609
2610         * darwin-nat-info.c (darwin_debug_regions_recurse)
2611         (info_mach_exceptions_command): Remove unused local variables.
2612         * darwin-nat.c (darwin_decode_notify_message)
2613         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2614         (darwin_stop_inferior, darwin_setup_exceptions)
2615         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2616         (darwin_nat_target::attach, darwin_nat_target::detach)
2617         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2618         local variables.
2619         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2620         variables.
2621
2622 2018-09-29  Tom Tromey  <tom@tromey.com>
2623
2624         * README: Remove some leftover text.
2625
2626 2018-09-29  Tom Tromey  <tom@tromey.com>
2627
2628         * PROBLEMS: Rewrite.
2629         * README: Update.
2630
2631 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2632
2633         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2634         case with explicit breakpoint kind.
2635         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2636         'additional_info' and related logic.
2637         (riscv_debug_breakpoints): New variable.
2638         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2639         instruction to determine the breakpoint kind.
2640         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2641         flag.  Update description of 'set/show riscv
2642         use-compressed-breakpoints' flag.
2643
2644 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2645
2646         (NEWS): Mention changes to frame related commands.
2647         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2648         (add_prefix_cmd_suppress_notification): New function.
2649         (add_com_suppress_notification): Call
2650         add_cmd_suppress_notification.
2651         * command.h (add_cmd_suppress_notification): Declare.
2652         (add_prefix_cmd_suppress_notification): Declare.
2653         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2654         (parse_frame_specification): Moved from stack.c, with
2655         simplification to handle a single argument.
2656         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2657         switch to the selected frame.  Add a header comment.
2658         * stack.c: Remove 'safe-ctype.h' include.
2659         (find_frame_for_function): Add declaration.
2660         (find_frame_for_address): New function.
2661         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2662         (frame_selection_by_function_completer): New function.
2663         (info_frame_command): Rename to...
2664         (info_frame_command_core): ...this, and update parameter types.
2665         (select_frame_command): Rename to...
2666         (select_frame_command_core): ...this, and update parameter types.
2667         (frame_command): Rename to...
2668         (frame_command_core): ...this, and update parameter types.
2669         (class frame_command_helper): New class to wrap implementations of
2670         frame related sub-commands.
2671         (frame_apply_cmd_list): New static global.
2672         (frame_cmd_list): Make static.
2673         (select_frame_cmd_list): New global for sub-commands.
2674         (info_frame_cmd_list): New global for sub-commands.
2675         (_initialize_stack): Register sub-commands for 'frame',
2676         'select-frame', and 'info frame'.  Update 'frame apply' commands
2677         to use frame_apply_cmd_list.  Move function local static
2678         frame_apply_list to file static frame_apply_cmd_list for
2679         consistency.
2680         * stack.h (select_frame_command): Delete declarationn.
2681         (select_frame_for_mi): Declare new function.
2682
2683 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2684
2685         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2686         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2687         and NOP.
2688
2689 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2690
2691         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2692
2693 2018-09-26  Tom Tromey  <tom@tromey.com>
2694
2695         * valops.c (auto_abandon): Remove dead code.
2696
2697 2018-09-26  Tom Tromey  <tom@tromey.com>
2698
2699         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2700
2701 2018-09-24  Tom Tromey  <tom@tromey.com>
2702
2703         * common/pathstuff.c (get_standard_cache_dir): Make
2704         "xdg_cache_home" and "home" const.
2705         * top.c (init_history): Make "tmpenv" const.
2706         * main.c (get_init_files): Make "homedir" const.
2707
2708 2018-09-23  Tom Tromey  <tom@tromey.com>
2709
2710         PR python/18852:
2711         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2712
2713 2018-09-23  Tom Tromey  <tom@tromey.com>
2714
2715         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2716         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2717         * python/python-internal.h (gdbpy_handle_exception): Declare.
2718         * python/py-utils.c (gdbpy_handle_exception): New function.
2719
2720 2018-09-23  Tom Tromey  <tom@tromey.com>
2721
2722         PR python/17284:
2723         * python/py-type.c (typy_template_argument): Check for negative
2724         argument number.
2725
2726 2018-09-23  Tom Tromey  <tom@tromey.com>
2727
2728         PR python/14062:
2729         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2730
2731 2018-09-23  Tom Tromey  <tom@tromey.com>
2732
2733         PR python/18170:
2734         * python/py-value.c (valpy_int): Allow conversion from pointer
2735         type.
2736
2737 2018-09-23  Tom Tromey  <tom@tromey.com>
2738
2739         PR python/20126:
2740         * python/py-value.c (valpy_int): Respect type sign.
2741
2742 2018-09-23  Tom Tromey  <tom@tromey.com>
2743
2744         PR python/18352;
2745         * python/py-value.c (valpy_float): Allow conversions from int or
2746         char.
2747         (valpy_int, valpy_long): Allow conversions from float.
2748
2749 2018-09-23  Tom Tromey  <tom@tromey.com>
2750
2751         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2752         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2753
2754 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2755
2756         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2757         __sighndlr.
2758         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2759
2760 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2761
2762         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2763         target_terminal::ours().
2764
2765 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2766
2767         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2768         of vl to ULONGEST.
2769
2770 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2771
2772         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2773         redundant condition.
2774
2775 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2776
2777         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2778
2779         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2780         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2781         * sol-thread.c (ps_pdmodel): Don't guard definition.
2782
2783         * procfs.c: Fix formatting.
2784
2785         * procfs.c (sysset_t_alloc): Remove.
2786         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2787         (procfs_debug_inferior): Likewise.
2788         (procfs_set_exec_trap): Likewise.
2789         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2790         (proc_set_traced_sysexit): Likewise.
2791
2792         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2793         (dead_procinfo): Likewise.
2794         (proc_warn): Likewise.
2795         (proc_error): Likewise.
2796         (proc_get_LDT_entry): Likewise.
2797         (do_attach): Likewise.
2798         (procfs_target::pid_to_str): Likewise.
2799         (iterate_over_mappings): Likewise.
2800
2801         * procfs.c (create_procinfo): Fix ARI warning.
2802         (proc_get_status): Likewise.
2803         (proc_stop_process): Likewise.
2804         (proc_run_process): Likewise.
2805         (proc_kill): Likewise.
2806         (proc_get_LDT_entry): Likewise.
2807         (procfs_find_LDT_entry): Likewise.
2808         (proc_update_threads): Likewise.
2809         (proc_iterate_over_threads): Likewise.
2810         (do_attach): Likewise.
2811         (procfs_xfer_memory): Likewise.
2812         (invalidate_cache): Likewise.
2813         (procfs_target::resume): Likewise.
2814         (procfs_init_inferior): Likewise.
2815         (procfs_set_exec_trap): Likewise.
2816         (procfs_target::thread_alive): Likewise.
2817         (procfs_target::pid_to_exec_file): Likewise.
2818         (iterate_over_mappings): Likewise.
2819         (procfs_target::make_corefile_notes): Likewise.
2820         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2821
2822         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2823         (procfs_find_LDT_entry): Likewise.
2824         * sol-thread.c (ps_lgetLDT): Likewise.
2825
2826 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2827
2828         PR tdep/17903
2829         * procfs.c (procfs_target): Declare pid_to_exec_file.
2830         (procfs_target::pid_to_exec_file): New.
2831
2832 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2833
2834         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2835         renaming.
2836         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2837         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2838
2839 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2840
2841         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2842         (supply_fpregset, fill_fpregset): Move ...
2843         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2844         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2845         Remove references to ioctl-based procfs.
2846         Include <sys/reg.h>.
2847         Remove PR_MODEL_NATIVE guards.
2848         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2849         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2850
2851 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2852
2853         PR gdb/20981:
2854         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2855         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2856         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2857
2858 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2859
2860         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2861         (fbsd_print_sockaddr_in6): Likewise.
2862
2863 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2864             Chris January  <chris.january@arm.com>
2865
2866         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2867         (evaluate_subexp_standard): Return a dummy type when
2868         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2869         OP_F77_UNDETERMINED_ARGLIST case.
2870         * expression.h (enum noside): Update comment.
2871
2872 2018-09-19  George Vasick <george.vasick@oracle.com>
2873
2874         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2875
2876 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2877             April Chin <april.chin@oracle.com>
2878             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2879
2880         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2881         uint_t lwpid_t.
2882         (create_procinfo): Print pids in /proc without leading zeros.
2883
2884 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2885
2886         * nios2-tdep.c (nios2_gcc_target_options): New.
2887         (nios2_gdb_arch_init): Install new hook.
2888
2889 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2890
2891         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2892         New file.
2893         * update-gnulib.sh: Apply patch.
2894         * configure: Re-generate.
2895
2896 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2897
2898         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2899         description.  Make "info proc" command descriptions more
2900         consistent.
2901
2902 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2903
2904         * NEWS: Mention 'info proc files' command.
2905
2906 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2907
2908         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2909         descriptors for IP_FILES and IP_ALL.
2910
2911 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2912
2913         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2914         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2915         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2916         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2917         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2918         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2919         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2920         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2921         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2922         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2923         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2924         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2925         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2926         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2927         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2928         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2929         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2930         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2931         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2932         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2933         (struct fbsd_sockaddr_un): New types.
2934         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2935         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2936         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2937         (fbsd_core_info_proc_files): New functions.
2938         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2939         IP_ALL.
2940         * fbsd-tdep.h (fbsd_info_proc_files_header)
2941         (fbsd_info_proc_files_entry): New.
2942
2943 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2944
2945         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2946         * infcmd.c (info_proc_cmd_files): New function.
2947         (_initialize_infcmd): Register 'info proc files' command.
2948
2949 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2950
2951         * gnulib/aclocal-m4-deps.mk: Re-generate.
2952         * gnulib/aclocal.m4: Re-generate.
2953         * gnulib/config.in: Re-generate.
2954         * gnulib/configure: Re-generate.
2955         * gnulib/import/Makefile.am: Re-generate.
2956         * gnulib/import/Makefile.in: Re-generate.
2957         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2958         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2959         * gnulib/import/arpa_inet.in.h: New file.
2960         * gnulib/import/inet_ntop.c: New file.
2961         * gnulib/import/m4/arpa_inet_h.m4: New file.
2962         * gnulib/import/m4/inet_ntop.m4: New file.
2963         * gnulib/import/m4/netinet_in_h.m4: New file.
2964         * gnulib/import/m4/socklen.m4: New file.
2965         * gnulib/import/m4/sockpfaf.m4: New file.
2966         * gnulib/import/m4/stdalign.m4: New file.
2967         * gnulib/import/m4/sys_uio_h.m4: New file.
2968         * gnulib/import/netinet_in.in.h: New file.
2969         * gnulib/import/stdalign.in.h: New file.
2970         * gnulib/import/sys_socket.c: New file.
2971         * gnulib/import/sys_socket.in.h: New file.
2972         * gnulib/import/sys_uio.in.h: New file.
2973         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2974         module.
2975
2976 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2977
2978         * gnulib/aclocal-m4-deps.mk: New file.
2979         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2980         deterministically.
2981
2982 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2983
2984         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2985         KVE_PATH.
2986
2987 2018-09-18  Tom Tromey  <tom@tromey.com>
2988
2989         * compile/compile-object-load.c (struct
2990         link_hash_table_cleanup_data): Add constructor and destructor.
2991         Use DISABLE_COPY_AND_ASSIGN.
2992         (~link_hash_table_cleanup_data): Rename from
2993         link_hash_table_free.  Now a destructor.
2994         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2995
2996 2018-09-18  Tom Tromey  <tom@tromey.com>
2997
2998         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2999         * compile/compile-object-load.c (struct munmap_list): Move to
3000         header file.
3001         (munmap_list::add): Rename from munmap_list_add; rewrite.
3002         (munmap_list::~munmap_list): Rename from munmap_list_free.
3003         (munmap_listp_free_cleanup): Remove.
3004         (compile_object_load): Update.
3005         * compile/compile-object-load.h (struct munmap_list): Move from
3006         compile-object-load.c.  Rewrite.
3007
3008 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
3009
3010         * aarch64-tdep.c (pass_in_v): Use register size.
3011         (aarch64_extract_return_value): Likewise.
3012         (aarch64_store_return_value): Likewise.
3013
3014 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
3015
3016         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
3017         rlim_t.
3018
3019 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
3020
3021         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
3022         Fix short help line.
3023
3024 2018-09-17  Tom Tromey  <tom@tromey.com>
3025
3026         PR python/20445:
3027         * configure: Rebuild.
3028         * configure.ac: Conditionally use -DNDEBUG for Python.
3029
3030 2018-09-17  Tom Tromey  <tom@tromey.com>
3031
3032         * configure: Rebuild.
3033         * configure.ac: Use gmp as a library dependency when checking for
3034         mpfr.
3035
3036 2018-09-17  Pedro Alves  <palves@redhat.com>
3037
3038         * python/py-inferior.c (find_inferior_object): Delete.
3039
3040 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3041
3042         * compile/compile-cplus-types.c
3043         (compile_cplus_instance::enter_scope): Don't use new_scope after
3044         std::move.
3045
3046 2018-09-17  Tom Tromey  <tom@tromey.com>
3047
3048         * common/pathstuff.c (get_standard_cache_dir): Use
3049         ~/Library/Caches on macOS.
3050         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3051
3052 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3053
3054         PR python/23669
3055         * breakpoint.c (commands_cmd_element): New.
3056         (_initialize_breakpoint): Assign commands_cmd_element.
3057         * breakpoint.h (commands_cmd_element): New.
3058         * cli/cli-script.c (while_cmd_element, if_command,
3059         define_cmd_element): New.
3060         (command_name_equals): Remove.
3061         (process_next_line): Compare commands by pointer, not by name.
3062         (_initialize_cli_script): Assign the various cmd_list_element
3063         variables.
3064         * compile/compile.c (compile_cmd_element): New.
3065         (_initialize_compile): Assign compile_cmd_element.
3066         * compile/compile.h (compile_cmd_element): New.
3067         * guile/guile.c (guile_cmd_element): New.
3068         (install_gdb_commands): Assign guile_cmd_element.
3069         * guile/guile.h (guile_cmd_element): New.
3070         * python/python.c (python_cmd_element): New.
3071         (_initialize_python): Assign python_cmd_element.
3072         * python/python.h (python_cmd_element): New.
3073         * tracepoint.c (while_stepping_cmd_element): New.
3074         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3075         * tracepoint.h (while_stepping_cmd_element): New.
3076
3077 2018-09-17  Tom Tromey  <tom@tromey.com>
3078
3079         * infrun.c (save_infcall_suspend_state): Return
3080         infcall_suspend_state_up.
3081         (save_infcall_control_state): Return infcall_control_state_up.
3082         * inferior.h (save_infcall_suspend_state)
3083         (save_infcall_control_state): Declare later.  Return unique
3084         pointers.
3085
3086 2018-09-17  Tom Tromey  <tom@tromey.com>
3087
3088         * infrun.c (struct stop_context): Declare constructor,
3089         destructor, "changed" method.
3090         (stop_context::stop_context): Rename from save_stop_context.
3091         (stop_context::~stop_context): Rename from
3092         release_stop_context_cleanup.
3093         (normal_stop): Update.
3094         (stop_context::changed): Rename from stop_context_changed.  Return
3095         bool.
3096
3097 2018-09-17  Tom Tromey  <tom@tromey.com>
3098
3099         * inferior.h (struct infcall_suspend_state_deleter): New.
3100         (infcall_suspend_state_up): New typedef.
3101         (struct infcall_control_state_deleter): New.
3102         (infcall_control_state_up): New typedef.
3103         (make_cleanup_restore_infcall_suspend_state)
3104         (make_cleanup_restore_infcall_control_state): Don't declare.
3105         * infcall.c (call_function_by_hand_dummy): Update.
3106         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3107         (make_cleanup_restore_infcall_suspend_state): Remove.
3108         (do_restore_infcall_control_state_cleanup)
3109         (make_cleanup_restore_infcall_control_state): Remove.
3110
3111 2018-09-17  Tom Tromey  <tom@tromey.com>
3112
3113         * gdbthread.h (struct thread_control_state): Add initializer.
3114         (class thread_info) <control>: Remove initializer.
3115         * inferior.h (struct inferior_control_state): Add initializer.
3116         (class inferior) <control>: Remove initializer.
3117         (exit_inferior_1): Update.
3118         * infrun.c (struct infcall_control_state): Add constructors.
3119         (save_infcall_control_state): Use new.
3120         (restore_infcall_control_state, discard_infcall_control_state):
3121         Use delete.
3122
3123 2018-09-17  Tom Tromey  <tom@tromey.com>
3124
3125         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3126         unique_ptr.
3127         <siginfo_data>: Now a unique_xmalloc_ptr.
3128         (save_infcall_suspend_state, restore_infcall_suspend_state)
3129         (discard_infcall_suspend_state)
3130         (get_infcall_suspend_state_regcache): Update.
3131
3132 2018-09-17  Tom Tromey  <tom@tromey.com>
3133
3134         * gdbthread.h (struct thread_suspend_state): Add initializers.
3135         (class thread_info) <suspend>: Remove initializer.
3136         * infrun.c (struct infcall_suspend_state): Add initializers.
3137         (save_infcall_suspend_state): Use new.
3138         (discard_infcall_suspend_state): Use delete.
3139
3140 2018-09-16  Tom Tromey  <tom@tromey.com>
3141
3142         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3143         Remove.
3144         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3145         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3146         (py_varobj_iter_new): Likewise.
3147         (py_varobj_get_iterator): Use gdbpy_ref.
3148
3149 2018-09-16  Tom Tromey  <tom@tromey.com>
3150
3151         * python/py-threadevent.c (py_get_event_thread): Simplify.
3152         * python/py-inferior.c (infpy_thread_from_thread_handle):
3153         Return immediately after calling thread_to_thread_object.  Use
3154         Py_RETURN_NONE.
3155         (thread_to_thread_object): Set the exception on a NULL return.
3156
3157 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3158
3159         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3160
3161 2018-09-16  Tom Tromey  <tom@tromey.com>
3162
3163         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3164         Remove.
3165
3166 2018-09-16  Tom Tromey  <tom@tromey.com>
3167
3168         * python/python-internal.h (thread_to_thread_object): Change
3169         return type.
3170         * python/py-inferior.c (thread_to_thread_object): Return a new
3171         reference.
3172         (infpy_thread_from_thread_handle): Update.
3173         * python/py-infthread.c (gdbpy_selected_thread): Update.
3174         * python/py-stopevent.c (create_stop_event_object): Update.
3175         * python/py-threadevent.c (py_get_event_thread): Return a new
3176         reference.
3177         (py_get_event_thread): Update.
3178         * python/py-event.h (py_get_event_thread): Change return type.
3179         * python/py-continueevent.c (create_continue_event_object):
3180         Update.
3181
3182 2018-09-16  Tom Tromey  <tom@tromey.com>
3183
3184         * python/py-progspace.c (pspy_get_objfiles): Update.
3185         * python/python-internal.h (objfile_to_objfile_object): Change
3186         return type.
3187         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3188         Update.
3189         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3190         Update.
3191         * python/python.c (gdbpy_get_current_objfile): Update.
3192         (gdbpy_objfiles): Update.
3193         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3194         Update.
3195         (objfile_to_objfile_object): Return a new reference.
3196         * python/py-symtab.c (stpy_get_objfile): Update.
3197         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3198         Update.
3199
3200 2018-09-16  Tom Tromey  <tom@tromey.com>
3201
3202         * python/py-inferior.c (infpy_get_progspace): Update.
3203         * python/python-internal.h (pspace_to_pspace_object): Change
3204         return type.
3205         * python/py-newobjfileevent.c
3206         (create_clear_objfiles_event_object): Update.
3207         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3208         Update.
3209         * python/python.c (gdbpy_get_current_progspace): Update.
3210         (gdbpy_progspaces): Update.
3211         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3212         reference.
3213         * python/py-objfile.c (objfpy_get_progspace): Update.
3214         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3215         Update.
3216
3217 2018-09-16  Tom Tromey  <tom@tromey.com>
3218
3219         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3220         (solib_name, block_for_pc, find_pc_line): New functions.
3221         (execute_unwinders): Update.
3222         * python/py-block.c (gdbpy_block_for_pc): Remove.
3223         * python/py-inferior.c (infpy_get_progspace): New function.
3224         (inferior_object_getset) <progspace>: Add.
3225         * python/py-progspace.c (pspy_objfiles): Rewrite.
3226         (pspy_solib_name, pspy_block_for_pc)
3227         (pspy_find_pc_line, pspy_is_valid): New functions.
3228         (progspace_object_methods): Add entries for solib_name,
3229         block_for_pc, find_pc_line, is_valid.
3230         * python/python-internal.h (gdbpy_block_for_pc)
3231         (build_objfiles_list): Don't declare.
3232         * python/python.c: Don't include solib.h.
3233         (gdbpy_solib_name, gdbpy_find_pc_line)
3234         (gdbpy_get_current_progspace, build_objfiles_list)
3235         (gdbpy_objfiles): Remove.
3236         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3237         solib_name, find_pc_line>: Remove entries.
3238
3239 2018-09-16  Tom Tromey  <tom@tromey.com>
3240
3241         * top.c (new_ui_command): Use GNU style for metasyntactic
3242         variables.
3243         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3244         variables.
3245         * maint.c (maintenance_translate_address): Remove "<>" around
3246         text.
3247         * interps.c (interpreter_exec_cmd): Use GNU style for
3248         metasyntactic variables.
3249         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3250         metasyntactic variables.
3251         * tracepoint.c (tfind_range_command): Use GNU style for
3252         metasyntactic variables.
3253         (tfind_outside_command): Likewise.
3254         (_initialize_tracepoint): Likewise.
3255         * remote.c (extended_remote_target::create_inferior): Use GNU
3256         style for metasyntactic variables.
3257         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3258         metasyntactic variables.
3259         (adi_assign_command): Likewise.
3260
3261 2018-09-16  Tom Tromey  <tom@tromey.com>
3262
3263         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3264         metasyntactic variables.  Print message if no disassembler options
3265         are available.
3266
3267 2018-09-15  Tom Tromey  <tom@tromey.com>
3268
3269         * infcmd.c (get_inferior_args): Return const char *.
3270         * inferior.h (get_inferior_args): Return type now const.
3271         * linux-tdep.c (linux_fill_prpsinfo): Update.
3272         * procfs.c (procfs_target::make_corefile_notes): Update.
3273
3274 2018-09-07  Tom Tromey  <tom@tromey.com>
3275
3276         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3277         inside the TRY.
3278
3279 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3280
3281         * nios2-tdep.c (nios2_type_align): New.
3282         (nios2_gdb_arch_init): Install type_align hook.
3283
3284 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3285
3286         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3287         type that is neither object file owned, nor gdbarch owned.
3288         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3289         gdbarch is non-NULL.
3290         (alloc_type_instance): Allocate non-objfile owned types on the
3291         gdbarch obstack.
3292         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3293         using TYPE_ALLOC to ensure memory is allocated on the correct
3294         obstack.
3295         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3296         obstack, or the gdbarch obstack.
3297         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3298
3299 2018-09-14  Tom Tromey  <tom@tromey.com>
3300
3301         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3302         block.
3303
3304 2018-09-14  Tom Tromey  <tom@tromey.com>
3305
3306         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3307
3308 2018-09-13  Tom Tromey  <tom@tromey.com>
3309
3310         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3311         static.
3312
3313 2018-09-13  Tom Tromey  <tom@tromey.com>
3314
3315         * exec.c (try_open_exec_file): Use std::string.
3316
3317 2018-09-13  Tom Tromey  <tom@tromey.com>
3318
3319         * utils.h (gdb_bfd_errmsg): Return std::string.
3320         * exec.c (exec_file_attach): Update.
3321         * compile/compile-object-load.c (compile_object_load): Update.
3322         * utils.c (gdb_bfd_errmsg): Return std::string.
3323
3324 2018-09-13  Tom Tromey  <tom@tromey.com>
3325
3326         * procfs.c (struct procinfo_deleter): New.
3327         (procinfo_up): New typedef.
3328         (do_destroy_procinfo_cleanup): Remove.
3329         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3330
3331 2018-09-13  Tom Tromey  <tom@tromey.com>
3332
3333         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3334
3335 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3336 2018-09-13  Tom Tromey  <tom@tromey.com>
3337
3338         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3339         (pspy_get_objfiles): New function.
3340         (progspace_object_methods): New.
3341         (pspace_object_type): Add tp_methods callback.
3342         * python/python-internal.h (build_objfiles_list): New
3343         declaration.
3344         * python/python.c (build_objfiles_list): New function.
3345         (gdbpy_objfiles): Implement using build_objfiles_list.
3346         * NEWS: Mention the Progspace.objfiles method.
3347
3348 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3349
3350         * python/py-inferior.c (infpy_get_progspace): New function.
3351         (inferior_object_getset): Add progspace property.
3352         * NEWS: Mention the new property.
3353
3354 2018-09-13  Tom Tromey  <tom@tromey.com>
3355
3356         PR rust/23650:
3357         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3358
3359 2018-09-13  Tom Tromey  <tom@tromey.com>
3360
3361         PR rust/23626:
3362         * rust-lang.c (rust_enum_variant): Now static.
3363         (rust_empty_enum_p): New function.
3364         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3365         Handle empty enum.
3366
3367 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3368
3369         * python/py-inferior.c (infpy_repr): New.
3370         (inferior_object_type): Register infpy_repr.
3371         * python/py-objfile.c (objfpy_repr): New.
3372         (objfile_object_type): Register objfpy_repr.
3373
3374 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3375
3376         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3377
3378 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3379
3380         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3381         typo.
3382
3383 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3384
3385         * common/common-utils.c: Don't include '<sys/stat.h>'.
3386         (is_regular_file): Move to...
3387         * common/filestuff.c (is_regular_file): ... here.
3388         * common/common-utils.h (is_regular_file): Move to...
3389         * common/filestuff.h (is_regular_file): ... here.
3390
3391 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3392
3393         * skip.c (debug_skip): New variable.
3394         (skiplist_entry::do_skip_file_p): Add debug output.
3395         (skiplist_entry::do_skip_gfile_p): Likewise.
3396         (skiplist_entry::skip_function_p): Likewise.
3397         (_initialize_step_skip): Create debug command.
3398         * NEWS: Mention set/show debug skip.
3399
3400 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3401
3402         * darwin-nat.c (should_disable_startup_with_shell):
3403         New function.
3404         (darwin_nat_target::create_inferior): Add call.
3405
3406 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3407
3408         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3409         inf_port, msg_state>: Initialize.
3410         (struct darwin_thread_info) <signaled, single_step>: Change
3411         type and initialize.
3412         (struct darwin_thread_info) <event>: Initialize.
3413
3414 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3415
3416         PR gdb/23555
3417         PR gdb/23558
3418         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3419         guesses.
3420
3421 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3422
3423         Revert:
3424         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3425
3426         PR gdb/23555
3427         PR gdb/23558
3428         * gnulib/aclocal.m4: Regenerate.
3429         * gnulib/config.in: Regenerate.
3430         * gnulib/configure: Regenerate.
3431         * gnulib/import/Makefile.am: Update.
3432         * gnulib/import/Makefile.in: Update.
3433         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3434         * gnulib/import/_Noreturn.h: ... this.
3435         * gnulib/import/alloca.in.h: Update.
3436         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3437         * gnulib/import/arg-nonnull.h: ... this.
3438         * gnulib/import/assure.h: Update.
3439         * gnulib/import/at-func.c: Update.
3440         * gnulib/import/basename-lgpl.c: Update.
3441         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3442         * gnulib/import/c++defs.h: ... this.
3443         * gnulib/import/canonicalize-lgpl.c: Update.
3444         * gnulib/import/cdefs.h: Update.
3445         * gnulib/import/chdir-long.c: Update.
3446         * gnulib/import/chdir-long.h: Update.
3447         * gnulib/import/cloexec.c: Update.
3448         * gnulib/import/cloexec.h: Update.
3449         * gnulib/import/close.c: Update.
3450         * gnulib/import/closedir.c: Update.
3451         * gnulib/import/config.charset: Update.
3452         * gnulib/import/dirent-private.h: Update.
3453         * gnulib/import/dirent.in.h: Update.
3454         * gnulib/import/dirfd.c: Update.
3455         * gnulib/import/dirname-lgpl.c: Update.
3456         * gnulib/import/dirname.h: Update.
3457         * gnulib/import/dosname.h: Update.
3458         * gnulib/import/dup-safer-flag.c: Update.
3459         * gnulib/import/dup-safer.c: Update.
3460         * gnulib/import/dup.c: Update.
3461         * gnulib/import/dup2.c: Update.
3462         * gnulib/import/errno.in.h: Update.
3463         * gnulib/import/error.c: Update.
3464         * gnulib/import/error.h: Update.
3465         * gnulib/import/exitfail.c: Update.
3466         * gnulib/import/exitfail.h: Update.
3467         * gnulib/import/extra/update-copyright: Update.
3468         * gnulib/import/fchdir.c: Update.
3469         * gnulib/import/fcntl.c: Update.
3470         * gnulib/import/fcntl.in.h: Update.
3471         * gnulib/import/fd-hook.c: Update.
3472         * gnulib/import/fd-hook.h: Update.
3473         * gnulib/import/fd-safer-flag.c: Update.
3474         * gnulib/import/fd-safer.c: Update.
3475         * gnulib/import/fdopendir.c: Update.
3476         * gnulib/import/filename.h: Update.
3477         * gnulib/import/filenamecat-lgpl.c: Update.
3478         * gnulib/import/filenamecat.h: Update.
3479         * gnulib/import/flexmember.h: Update.
3480         * gnulib/import/float+.h: Update.
3481         * gnulib/import/float.c: Update.
3482         * gnulib/import/float.in.h: Update.
3483         * gnulib/import/fnmatch.c: Update.
3484         * gnulib/import/fnmatch.in.h: Update.
3485         * gnulib/import/fnmatch_loop.c: Update.
3486         * gnulib/import/fpucw.h: Update.
3487         * gnulib/import/frexp.c: Update.
3488         * gnulib/import/frexpl.c: Update.
3489         * gnulib/import/fstat.c: Update.
3490         * gnulib/import/fstatat.c: Update.
3491         * gnulib/import/getcwd-lgpl.c: Update.
3492         * gnulib/import/getcwd.c: Update.
3493         * gnulib/import/getdtablesize.c: Update.
3494         * gnulib/import/getlogin_r.c: Update.
3495         * gnulib/import/getprogname.c: Update.
3496         * gnulib/import/getprogname.h: Update.
3497         * gnulib/import/gettext.h: Update.
3498         * gnulib/import/gettimeofday.c: Update.
3499         * gnulib/import/glob-libc.h: Update.
3500         * gnulib/import/glob.c: Update.
3501         * gnulib/import/glob.in.h: Update.
3502         * gnulib/import/glob_internal.h: Update.
3503         * gnulib/import/glob_pattern_p.c: Update.
3504         * gnulib/import/globfree.c: Update.
3505         * gnulib/import/hard-locale.c: Update.
3506         * gnulib/import/hard-locale.h: Update.
3507         * gnulib/import/intprops.h: Update.
3508         * gnulib/import/inttypes.in.h: Update.
3509         * gnulib/import/isnan.c: Update.
3510         * gnulib/import/isnand-nolibm.h: Update.
3511         * gnulib/import/isnand.c: Update.
3512         * gnulib/import/isnanl-nolibm.h: Update.
3513         * gnulib/import/isnanl.c: Update.
3514         * gnulib/import/itold.c: Update.
3515         * gnulib/import/libc-config.h: Update.
3516         * gnulib/import/limits.in.h: Update.
3517         * gnulib/import/localcharset.c: Update.
3518         * gnulib/import/localcharset.h: Update.
3519         * gnulib/import/localtime-buffer.c: Update.
3520         * gnulib/import/localtime-buffer.h: Update.
3521         * gnulib/import/lstat.c: Update.
3522         * gnulib/import/m4/00gnulib.m4: Update.
3523         * gnulib/import/m4/__inline.m4: Update.
3524         * gnulib/import/m4/absolute-header.m4: Update.
3525         * gnulib/import/m4/alloca.m4: Update.
3526         * gnulib/import/m4/builtin-expect.m4: Update.
3527         * gnulib/import/m4/canonicalize.m4: Update.
3528         * gnulib/import/m4/chdir-long.m4: Update.
3529         * gnulib/import/m4/close.m4: Update.
3530         * gnulib/import/m4/closedir.m4: Update.
3531         * gnulib/import/m4/configmake.m4: Update.
3532         * gnulib/import/m4/d-ino.m4: Update.
3533         * gnulib/import/m4/d-type.m4: Update.
3534         * gnulib/import/m4/dirent_h.m4: Update.
3535         * gnulib/import/m4/dirfd.m4: Update.
3536         * gnulib/import/m4/dirname.m4: Update.
3537         * gnulib/import/m4/double-slash-root.m4: Update.
3538         * gnulib/import/m4/dup.m4: Update.
3539         * gnulib/import/m4/dup2.m4: Update.
3540         * gnulib/import/m4/eealloc.m4: Update.
3541         * gnulib/import/m4/environ.m4: Update.
3542         * gnulib/import/m4/errno_h.m4: Update.
3543         * gnulib/import/m4/error.m4: Update.
3544         * gnulib/import/m4/exponentd.m4: Update.
3545         * gnulib/import/m4/exponentl.m4: Update.
3546         * gnulib/import/m4/extensions.m4: Update.
3547         * gnulib/import/m4/extern-inline.m4: Update.
3548         * gnulib/import/m4/fchdir.m4: Update.
3549         * gnulib/import/m4/fcntl-o.m4: Update.
3550         * gnulib/import/m4/fcntl.m4: Update.
3551         * gnulib/import/m4/fcntl_h.m4: Update.
3552         * gnulib/import/m4/fdopendir.m4: Update.
3553         * gnulib/import/m4/filenamecat.m4: Update.
3554         * gnulib/import/m4/flexmember.m4: Update.
3555         * gnulib/import/m4/float_h.m4: Update.
3556         * gnulib/import/m4/fnmatch.m4: Update.
3557         * gnulib/import/m4/fnmatch_h.m4: Update.
3558         * gnulib/import/m4/fpieee.m4: Update.
3559         * gnulib/import/m4/frexp.m4: Update.
3560         * gnulib/import/m4/frexpl.m4: Update.
3561         * gnulib/import/m4/fstat.m4: Update.
3562         * gnulib/import/m4/fstatat.m4: Update.
3563         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3564         * gnulib/import/m4/getcwd-path-max.m4: Update.
3565         * gnulib/import/m4/getcwd.m4: Update.
3566         * gnulib/import/m4/getdtablesize.m4: Update.
3567         * gnulib/import/m4/getlogin.m4: Update.
3568         * gnulib/import/m4/getlogin_r.m4: Update.
3569         * gnulib/import/m4/getpagesize.m4: Update.
3570         * gnulib/import/m4/getprogname.m4: Update.
3571         * gnulib/import/m4/gettimeofday.m4: Update.
3572         * gnulib/import/m4/glibc21.m4: Update.
3573         * gnulib/import/m4/glob.m4: Update.
3574         * gnulib/import/m4/glob_h.m4: Update.
3575         * gnulib/import/m4/gnulib-cache.m4: Update.
3576         * gnulib/import/m4/gnulib-common.m4: Update.
3577         * gnulib/import/m4/gnulib-comp.m4: Update.
3578         * gnulib/import/m4/gnulib-tool.m4: Update.
3579         * gnulib/import/m4/hard-locale.m4: Update.
3580         * gnulib/import/m4/include_next.m4: Update.
3581         * gnulib/import/m4/inttypes-pri.m4: Update.
3582         * gnulib/import/m4/inttypes.m4: Update.
3583         * gnulib/import/m4/isnand.m4: Update.
3584         * gnulib/import/m4/isnanl.m4: Update.
3585         * gnulib/import/m4/largefile.m4: Update.
3586         * gnulib/import/m4/limits-h.m4: Update.
3587         * gnulib/import/m4/localcharset.m4: Update.
3588         * gnulib/import/m4/locale-fr.m4: Update.
3589         * gnulib/import/m4/locale-ja.m4: Update.
3590         * gnulib/import/m4/locale-zh.m4: Update.
3591         * gnulib/import/m4/localtime-buffer.m4: Update.
3592         * gnulib/import/m4/longlong.m4: Update.
3593         * gnulib/import/m4/lstat.m4: Update.
3594         * gnulib/import/m4/malloc.m4: Update.
3595         * gnulib/import/m4/malloca.m4: Update.
3596         * gnulib/import/m4/math_h.m4: Update.
3597         * gnulib/import/m4/mbrtowc.m4: Update.
3598         * gnulib/import/m4/mbsinit.m4: Update.
3599         * gnulib/import/m4/mbsrtowcs.m4: Update.
3600         * gnulib/import/m4/mbstate_t.m4: Update.
3601         * gnulib/import/m4/memchr.m4: Update.
3602         * gnulib/import/m4/memmem.m4: Update.
3603         * gnulib/import/m4/mempcpy.m4: Update.
3604         * gnulib/import/m4/memrchr.m4: Update.
3605         * gnulib/import/m4/mkdir.m4: Update.
3606         * gnulib/import/m4/mkstemp.m4: Update.
3607         * gnulib/import/m4/mmap-anon.m4: Update.
3608         * gnulib/import/m4/mode_t.m4: Update.
3609         * gnulib/import/m4/msvc-inval.m4: Update.
3610         * gnulib/import/m4/msvc-nothrow.m4: Update.
3611         * gnulib/import/m4/multiarch.m4: Update.
3612         * gnulib/import/m4/nocrash.m4: Update.
3613         * gnulib/import/m4/off_t.m4: Update.
3614         * gnulib/import/m4/onceonly.m4: Update.
3615         * gnulib/import/m4/open-cloexec.m4: Update.
3616         * gnulib/import/m4/open.m4: Update.
3617         * gnulib/import/m4/openat.m4: Update.
3618         * gnulib/import/m4/opendir.m4: Update.
3619         * gnulib/import/m4/pathmax.m4: Update.
3620         * gnulib/import/m4/rawmemchr.m4: Update.
3621         * gnulib/import/m4/readdir.m4: Update.
3622         * gnulib/import/m4/readlink.m4: Update.
3623         * gnulib/import/m4/realloc.m4: Update.
3624         * gnulib/import/m4/rename.m4: Update.
3625         * gnulib/import/m4/rewinddir.m4: Update.
3626         * gnulib/import/m4/rmdir.m4: Update.
3627         * gnulib/import/m4/save-cwd.m4: Update.
3628         * gnulib/import/m4/secure_getenv.m4: Update.
3629         * gnulib/import/m4/setenv.m4: Update.
3630         * gnulib/import/m4/signal_h.m4: Update.
3631         * gnulib/import/m4/ssize_t.m4: Update.
3632         * gnulib/import/m4/stat-time.m4: Update.
3633         * gnulib/import/m4/stat.m4: Update.
3634         * gnulib/import/m4/std-gnu11.m4: Update.
3635         * gnulib/import/m4/stdbool.m4: Update.
3636         * gnulib/import/m4/stddef_h.m4: Update.
3637         * gnulib/import/m4/stdint.m4: Update.
3638         * gnulib/import/m4/stdio_h.m4: Update.
3639         * gnulib/import/m4/stdlib_h.m4: Update.
3640         * gnulib/import/m4/strchrnul.m4: Update.
3641         * gnulib/import/m4/strdup.m4: Update.
3642         * gnulib/import/m4/strerror.m4: Update.
3643         * gnulib/import/m4/string_h.m4: Update.
3644         * gnulib/import/m4/strstr.m4: Update.
3645         * gnulib/import/m4/strtok_r.m4: Update.
3646         * gnulib/import/m4/sys_socket_h.m4: Update.
3647         * gnulib/import/m4/sys_stat_h.m4: Update.
3648         * gnulib/import/m4/sys_time_h.m4: Update.
3649         * gnulib/import/m4/sys_types_h.m4: Update.
3650         * gnulib/import/m4/tempname.m4: Update.
3651         * gnulib/import/m4/time_h.m4: Update.
3652         * gnulib/import/m4/unistd-safer.m4: Update.
3653         * gnulib/import/m4/unistd_h.m4: Update.
3654         * gnulib/import/m4/warn-on-use.m4: Update.
3655         * gnulib/import/m4/wchar_h.m4: Update.
3656         * gnulib/import/m4/wchar_t.m4: Update.
3657         * gnulib/import/m4/wctype_h.m4: Update.
3658         * gnulib/import/m4/wint_t.m4: Update.
3659         * gnulib/import/malloc.c: Update.
3660         * gnulib/import/malloc/scratch_buffer.h: Update.
3661         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3662         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3663         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3664         * gnulib/import/malloca.c: Update.
3665         * gnulib/import/malloca.h: Update.
3666         * gnulib/import/malloca.valgrind: Update.
3667         * gnulib/import/math.in.h: Update.
3668         * gnulib/import/mbrtowc.c: Update.
3669         * gnulib/import/mbsinit.c: Update.
3670         * gnulib/import/mbsrtowcs-impl.h: Update.
3671         * gnulib/import/mbsrtowcs-state.c: Update.
3672         * gnulib/import/mbsrtowcs.c: Update.
3673         * gnulib/import/memchr.c: Update.
3674         * gnulib/import/memmem.c: Update.
3675         * gnulib/import/mempcpy.c: Update.
3676         * gnulib/import/memrchr.c: Update.
3677         * gnulib/import/mkdir.c: Update.
3678         * gnulib/import/mkstemp.c: Update.
3679         * gnulib/import/msvc-inval.c: Update.
3680         * gnulib/import/msvc-inval.h: Update.
3681         * gnulib/import/msvc-nothrow.c: Update.
3682         * gnulib/import/msvc-nothrow.h: Update.
3683         * gnulib/import/open.c: Update.
3684         * gnulib/import/openat-die.c: Update.
3685         * gnulib/import/openat-priv.h: Update.
3686         * gnulib/import/openat-proc.c: Update.
3687         * gnulib/import/openat.c: Update.
3688         * gnulib/import/openat.h: Update.
3689         * gnulib/import/opendir.c: Update.
3690         * gnulib/import/pathmax.h: Update.
3691         * gnulib/import/pipe-safer.c: Update.
3692         * gnulib/import/rawmemchr.c: Update.
3693         * gnulib/import/readdir.c: Update.
3694         * gnulib/import/readlink.c: Update.
3695         * gnulib/import/realloc.c: Update.
3696         * gnulib/import/ref-add.sin: Update.
3697         * gnulib/import/ref-del.sin: Update.
3698         * gnulib/import/rename.c: Update.
3699         * gnulib/import/rewinddir.c: Update.
3700         * gnulib/import/rmdir.c: Update.
3701         * gnulib/import/same-inode.h: Update.
3702         * gnulib/import/save-cwd.c: Update.
3703         * gnulib/import/save-cwd.h: Update.
3704         * gnulib/import/scratch_buffer.h: Update.
3705         * gnulib/import/secure_getenv.c: Update.
3706         * gnulib/import/setenv.c: Update.
3707         * gnulib/import/signal.in.h: Update.
3708         * gnulib/import/stat-time.c: Update.
3709         * gnulib/import/stat-time.h: Update.
3710         * gnulib/import/stat-w32.c: Update.
3711         * gnulib/import/stat-w32.h: Update.
3712         * gnulib/import/stat.c: Update.
3713         * gnulib/import/stdbool.in.h: Update.
3714         * gnulib/import/stddef.in.h: Update.
3715         * gnulib/import/stdint.in.h: Update.
3716         * gnulib/import/stdio.in.h: Update.
3717         * gnulib/import/stdlib.in.h: Update.
3718         * gnulib/import/str-two-way.h: Update.
3719         * gnulib/import/strchrnul.c: Update.
3720         * gnulib/import/strdup.c: Update.
3721         * gnulib/import/streq.h: Update.
3722         * gnulib/import/strerror-override.c: Update.
3723         * gnulib/import/strerror-override.h: Update.
3724         * gnulib/import/strerror.c: Update.
3725         * gnulib/import/string.in.h: Update.
3726         * gnulib/import/stripslash.c: Update.
3727         * gnulib/import/strnlen1.c: Update.
3728         * gnulib/import/strnlen1.h: Update.
3729         * gnulib/import/strstr.c: Update.
3730         * gnulib/import/strtok_r.c: Update.
3731         * gnulib/import/sys_stat.in.h: Update.
3732         * gnulib/import/sys_time.in.h: Update.
3733         * gnulib/import/sys_types.in.h: Update.
3734         * gnulib/import/tempname.c: Update.
3735         * gnulib/import/tempname.h: Update.
3736         * gnulib/import/time.in.h: Update.
3737         * gnulib/import/unistd--.h: Update.
3738         * gnulib/import/unistd-safer.h: Update.
3739         * gnulib/import/unistd.in.h: Update.
3740         * gnulib/import/unsetenv.c: Update.
3741         * gnulib/import/verify.h: Update.
3742         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3743         * gnulib/import/wchar.in.h: Update.
3744         * gnulib/import/wctype.in.h: Update.
3745         * gnulib/import/xalloc-oversized.h: Update.
3746         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3747         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3748
3749 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3750
3751         * record-btrace.c (get_thread_current_frame): Remove
3752         old_inferior_ptid.
3753
3754 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3755
3756         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3757         with check_tag to 1 if and only if the type is tagged and the
3758         component being searched cannot been found in the current
3759         view. Otherwise, always call ada_to_fixed_type with
3760         check_tag to 0.
3761
3762 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3763
3764         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3765         declaration.
3766         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3767         * ada-varobj.c (ada_varobj_get_number_of_children,
3768         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3769
3770 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3771
3772         * ada-valprint.c (ada_value_print): Use type instead of
3773         enclosing type.
3774
3775 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3776
3777         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3778         an array of access to unconstrained array.
3779
3780 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3781
3782         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3783         (ada_check_typedef): Use it.
3784
3785 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3786
3787         * ada-varobj.c (ada_varobj_describe_struct_child)
3788         (ada_varobj_describe_child): Handle union case like struct one.
3789
3790 2018-09-10  Tom Tromey  <tom@tromey.com>
3791
3792         PR python/18380:
3793         * python/python.c (_initialize_python): Make example in "python"
3794         help work in Python 3.
3795
3796 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3797
3798         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3799         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3800         $(EXEEXT) to the script, as it is not a program.
3801
3802 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3803
3804         * python/py-prettyprint.c (pretty_print_one_value): Return
3805         gdbpy_ref<>.
3806         (print_string_repr): Adjust.
3807         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3808         * python/python-internal.h (apply_varobj_pretty_printer): Return
3809         gdbpy_ref<>.
3810         * varobj.c (varobj_value_get_print_value): Adjust.
3811
3812 2018-09-08  Tom Tromey  <tom@tromey.com>
3813
3814         PR python/16047:
3815         * python/py-prettyprint.c (pretty_print_one_value): Check for
3816         to_string method.
3817
3818 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3819
3820         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3821         replace_operator_with_call.
3822
3823 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3824
3825         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3826
3827 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3828
3829         * ada-typeprint.c (print_range): Print the bounds using TYPE
3830         rather than its TYPE_TARGET_TYPE.
3831
3832 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3833
3834         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3835         call to ada_to_fixed_value_create.
3836
3837 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3838
3839         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3840
3841 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3842
3843         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3844         by calls to error.
3845
3846 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3847
3848         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3849         Move update of loop variable "fi".
3850
3851 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3852
3853         * ada-lang.c (value_assign_to_component): In the case of
3854         big-endian targets, extract the bits of the given VAL
3855         using an src_offset of zero if container is not a scalar.
3856
3857 2018-09-06  Simon Ser  <contact@emersion.fr>
3858
3859         PR gdb/23105
3860         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3861         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3862         * fbsd-tdep.c (fbsd_make_note_desc): New.
3863         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3864         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3865         * target.h (enum target_object) Add FreeBSD-specific
3866         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3867
3868 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3869
3870         * compile/compile-c.h (generate_c_for_variable_locations):
3871         Change reference to pointer.
3872         * compile/compile-c-support.c (compile_program) <compute>:
3873         Likewise.
3874         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3875         (generate_c_for_for_one_variable): Likewise
3876         (generate_c_for_variable_locations): Likewise
3877         * compile/compile-c-types.c (compile_c_instance::convert_type):
3878         Likewise
3879         * compile/compile-cplus-symbols.c (convert_one_symbol):
3880         std::move the scope passed to enter_scope.
3881         * compile/compile-cplus-types.c
3882         (compile_cplus_instance::enter_scope): Make parameter
3883         rvalue-reference.
3884         (compile_cplus_instance::new_scope): Change reference to
3885         pointer.
3886         (compile_cplus_instance::convert_type): Likewise
3887         (compile_cplus_convert_typedef): std::move the scope passed to
3888         enter_scope.
3889         (compile_cplus_convert_struct_or_union): Likewise.
3890         (compile_cplus_convert_enum): Likewise.
3891         (compile_cplus_convert_namespace): Likewise.
3892         * compile/compile-cplus.h (compile_cplus_instance)
3893         <enter_scope>: Make parameter rvalue-reference.
3894         * compile/compile-internal.h (compile_instance)
3895         <get_cached_type>: Likewise
3896         * compile/compile-loc2c.c (push): Likewise
3897         (pushf): Likewise
3898         (unary): Likewise
3899         (binary): Likewise
3900         (print_label): Likewise
3901         (pushf_register_address): Likewise
3902         (pushf_register): Likewise
3903         (do_compile_dwarf_expr_to_c): Likewise
3904         (compile_dwarf_expr_to_c): Likewise
3905         (compile_dwarf_bounds_to_c): Likewise
3906         * compile/compile.c (compile_instance::get_cached_type):
3907         Likewise
3908         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3909         (compile_dwarf_bounds_to_c): Likewise
3910         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3911         (dwarf2_compile_property_to_c): Likewise
3912         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3913         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3914         Likewise
3915
3916 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3917
3918         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3919         * tui/tui-data.c (init_content_element): Don't initialize it.
3920
3921 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3922
3923         * tui/tui-data.h (struct tui_win_info)
3924         <detail::opaque>: Remove.
3925         * tui/tui-data.c (init_win_info): Remove assignment.
3926
3927 2018-09-05  Tom Tromey  <tom@tromey.com>
3928
3929         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3930         -Wformat-nonliteral.
3931         * target-float.c (host_float_ops<T>::to_string)
3932         (host_float_ops<T>::from_string): Use
3933         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3934         * configure: Rebuild.
3935
3936 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3937
3938         * printcmd.c (printf_c_string): Use
3939         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3940         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3941
3942 2018-09-05  Tom Tromey  <tom@tromey.com>
3943
3944         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3945
3946 2018-09-05  Tom de Vries  <tdevries@suse.de>
3947
3948         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3949         with resolve_abstract_p == true.
3950         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3951         defaulting to false. Propagate resolve_abstract_p to
3952         dwarf2_fetch_die_loc_sect_off.
3953         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3954         parameter, defaulting to false.
3955         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3956         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3957         parameter.
3958         * dwarf2read.h (struct die_info): Forward-declare.
3959         (die_info_ptr): New typedef.
3960         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3961
3962 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3963
3964         GDB 8.2 released.
3965
3966 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3967             Pedro Alves  <palves@redhat.com>
3968
3969         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3970         "aclocal-m4-deps.mk".  Include file here.
3971         $(srcdir)/aclocal.m4: Add "configure.ac".
3972         * gnulib/aclocal-m4-deps.mk: New file.
3973         * gnulib/update-gnulib.sh: Automatically update
3974         "aclocal-m4-deps.mk".
3975
3976 2018-09-04  Tom Tromey  <tom@tromey.com>
3977
3978         * configure: Rebuild.
3979         * configure.ac: Remove multi-ice code.
3980
3981 2018-09-04  Tom Tromey  <tom@tromey.com>
3982
3983         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3984         (ada-exp.o): Update.
3985
3986 2018-09-04  Tom Tromey  <tom@tromey.com>
3987
3988         * Makefile.in (printcmd.o, target-float.o): Remove.
3989         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3990
3991 2018-09-04  Tom Tromey  <tom@tromey.com>
3992
3993         * gnulib/Makefile.in: Remove obsolete comment.
3994         * Makefile.in: Remove obsolete comment.
3995
3996 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3997
3998         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3999         line with '+'.
4000
4001 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4002
4003         * riscv-tdep.c: Add 'prologue-value.h' include.
4004         (struct riscv_unwind_cache): New struct.
4005         (riscv_debug_unwinder): New global.
4006         (riscv_scan_prologue): Update arguments, capture register details
4007         from prologue scan.
4008         (riscv_skip_prologue): Reformat arguments line, move end of
4009         prologue calculation into riscv_scan_prologue.
4010         (riscv_frame_cache): Update return type, create
4011         riscv_unwind_cache, scan the prologue, and fill in remaining cache
4012         details.
4013         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
4014         (riscv_frame_prev_register): Use the trad_frame within the
4015         riscv_unwind_cache.
4016         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
4017         flag.
4018
4019 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
4020
4021         * trad-frame.h (trad_frame_set_realreg): Declare.
4022         (trad_frame_set_addr): Declare.
4023         * trad-frame.c (trad_frame_set_realreg): Define new function.
4024         (trad_frame_set_addr): Define new function.
4025         (trad_frame_set_reg_realreg): Use new function.
4026         (trad_frame_set_reg_addr): Use new function.
4027
4028 2018-09-01  Keith Seitz  <keiths@redhat.com>
4029
4030         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
4031         pulongest instead of "%lld".
4032         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
4033         ATTRIBUTE_UNUSED.
4034
4035 2018-08-31  Tom Tromey  <tom@tromey.com>
4036
4037         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4038         variant part type.
4039
4040 2018-08-31  Pedro Alves  <palves@redhat.com>
4041
4042         * gdbarch.h: Regenerate.
4043
4044 2018-08-31  Pedro Alves  <palves@redhat.com>
4045
4046         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4047         * target.h (Hardware watchpoint interfaces): Describe
4048         continuable/steppable/non-steppable watchpoints.
4049         * gdbarch.h, gdbarch.c: Regenerate.
4050
4051 2018-08-31  Pedro Alves  <palves@redhat.com>
4052
4053         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4054         Delete.
4055         * s390-linux-nat.c
4056         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4057         * target.h (target_ops::have_continuable_watchpoint): Delete.
4058         (target_have_continuable_watchpoint): Delete.
4059         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4060         * target-delegates.c: Regenerate.
4061
4062 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4063
4064         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4065         the files present in "gnulib/import/m4/".
4066
4067 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4068
4069         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4070         c.sw, c.swsp, and c.sdsp.
4071
4072 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4073
4074         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4075         (riscv_read_misa_reg): Don't cache value read into inferior data.
4076         (riscv_new_inferior_data): Delete.
4077         (riscv_inferior_data_cleanup): Delete.
4078         (riscv_inferior_data): Delete.
4079         (riscv_invalidate_inferior_data): Delete.
4080         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4081
4082 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4083
4084         * compile/compile-cplus-types.c
4085         (compile_cplus_instance::leave_scope): Take the address of scope
4086         object.
4087         (compile_cplus_instance::convert_qualified_base): Compare quals
4088         to 0.
4089
4090 2018-08-30  Keith Seitz  <keiths@redhat.com>
4091
4092         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4093         Use "%s" and host_address_to_string instead of "%p" in printf.
4094
4095 2018-08-29  Keith Seitz  <keiths@redhat.com>
4096
4097         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4098         and compile-cplus-types.c.
4099         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4100         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4101         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4102         Declare.
4103         * compile/compile-c-support.c: Include compile-cplus.h.
4104         (load_libcompile): Templatize.
4105         (get_compile_context): "New" function.
4106         (c_get_compile_context): Use get_compile_context.
4107         (cplus_get_compile_context): New function.
4108         (cplus_push_user_expression, cplus_pop_user_expression)
4109         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4110         (cplus_compute_program): Define new structs/functions.
4111         * compile/compile-cplus-symmbols.c: New file.
4112         * compile/compile-cplus-types.c: New file.
4113         * compile/compile-cplus.h: New file.
4114         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4115         Declare.
4116         * compile/compile-object-load.c (get_out_value_type): Use
4117         strncmp_iw when comparing symbol names.
4118         (compile_object_load): Add mst_bss and mst_data.
4119         * compile/compile.c (_initialize_compile): Remove
4120         -Wno-implicit-function-declaration from `compile_args'.
4121         * compile/gcc-cp-plugin.h: New file.
4122         * NEWS: Mention C++ compile support and new debug options.
4123
4124 2018-08-29  Keith Seitz  <keiths@redhat.com>
4125
4126         * linespec.c (collect_info::add_symbol): Make virtual.
4127         (struct symbol_searcher_collect_info): New struct.
4128         (symbol_searcher::find_all_symbols): New method.
4129         * symtab.h (class symbol_searcher): New class.
4130
4131 2018-08-29  Keith Seitz  <keiths@redhat.com>
4132
4133         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4134         Change to vector of block_symbol.  Update all users.
4135         (struct collect_info) <symbols>: Likewise.
4136         (collect_info::add_symbol): Take block_symbol as argument.
4137         Update all callers.
4138         (decode_compound_collector) <m_symbols>: Change type to vector
4139         of block_symbol.  Update all users.
4140         (decode_compound_collector::operator ()): Change parameter type
4141         to block_symbol.
4142         (find_method, find_function_symbols, find_linespec_symbols)
4143         (find_label_symbols_in_block, find_label_symbols): Change symbol
4144         vectors to block_symbol vectors.
4145         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4146         block_symbol.
4147
4148 2018-08-29  Keith Seitz  <keiths@redhat.com>
4149
4150         * linespec.c (symbolp): Remove typedef and VEC definitions.
4151         (bound_minimal_symbol_d): Likewise.
4152
4153 2018-08-29  Keith Seitz  <keiths@redhat.com>
4154
4155         * linespec.c (decode_compound_collector::decode_compound_collector):
4156         Remove initialization for `m_symtabs'.
4157         (decode_compound_collector::release_symbols): Change return type
4158         to std::vector.  Update all callers.
4159         (class decode_compound_collector) <m_symbols>: Change type to
4160         std::vector.
4161         (lookup_prefix_sym): Change return type to std::vector.  Update all
4162         callers.
4163         (compare_symbols): Remove.
4164         (std_compare_symbols): Rename to `compare_symbols'.
4165         (find_method): Change `sym_classes' parameter to std::vector.
4166         Update all callers.  Use std::sort to sort sym_classes.
4167         (find_linespec_symbols): Remove cleanup.
4168
4169 2018-08-29  Keith Seitz  <keiths@redhat.com>
4170
4171         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4172         std::vector.  Update all users.
4173         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4174         (struct collect_info) <minimal_symbols>: Likewise.
4175         (compare_msymbols): Return bool.  Change parameters to const
4176         bound_minimal_symbol references.
4177         (find_method, find_function_symbols, find_linespec_symbols): Change
4178         `minsyms' parameter to std::vector.  Update all callers.
4179
4180 2018-08-29  Keith Seitz  <keiths@redhat.com>
4181
4182         * linespec.c (struct linespec) <label_symbols>: Change type to
4183         std::vector.  Update all users.
4184         (find_label_symbols_in_block): Change `result' parameter to
4185         std::vector.  Update all callers.
4186         (find_label_symbols): Return std::vector.  Update all callers.
4187
4188 2018-08-29  Keith Seitz  <keiths@redhat.com>
4189
4190         * linespec.c (struct linespec) <function_symbols>: Change type to
4191         std::vector.  Update all users.
4192         (struct collect_info) <function_symbols>: Likewise.
4193         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4194         (std_compare_symbols): New function.
4195         (find_method, find_function_symbols, find_linespec_symbols)
4196         (find_label_symbols_in_block): Change `symbols' parameter to
4197         std::vector.  Update all callers.
4198         (find_label_symbols): Likewise for `function_symbols' and
4199         `label_funcs_ret'.
4200
4201 2018-08-29  Keith Seitz  <keiths@redhat.com>
4202
4203         * linespec.c (symtab_vector_up): Define.
4204         (struct linespec) <file_symtabs>: Change type to std::vector *.
4205         Update all uses.
4206         (struct collect_info) <file_symtabs>: Likewise.
4207         (collect_symtabs_from_filename): Return symtab_vector_up.
4208         Update all callers.
4209         (decode_objc): Remove cleanup.
4210         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4211         (symtab_collector::release_symtabs): Return symtab_vector_up.
4212         Update all callers.
4213         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4214         Update all users.
4215         (collect_symtabs_from_filename, symtabs_from_filename): Return
4216         symtab_vector_up.  Update all callers.
4217
4218 2018-08-29  Tom Tromey  <tom@tromey.com>
4219
4220         * csky-tdep.c (csky_analyze_prologue): Use
4221         core_addr_to_string_nz.
4222
4223 2018-08-29  Tom Tromey  <tom@tromey.com>
4224
4225         * windows-nat.c (struct xlate_exception) <them>: Change type to
4226         DWORD.
4227         (xlate): Fix formatting.  Remove last entry.
4228         (struct xlate_exception, xlate): Comment out.
4229         (windows_nat_target::resume): Use ranged for.
4230
4231 2018-08-29  Jim Wilson  <jimw@sifive.com>
4232
4233         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4234         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4235         of NT_PRFPREG.
4236         (riscv_linux_nat_target::store_registers): Likewise.
4237
4238 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4239
4240         PR gdb/23555
4241         PR gdb/23558
4242         * gnulib/aclocal.m4: Regenerate.
4243         * gnulib/config.in: Regenerate.
4244         * gnulib/configure: Regenerate.
4245         * gnulib/import/Makefile.am: Update.
4246         * gnulib/import/Makefile.in: Update.
4247         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4248         * gnulib/import/_Noreturn.h: ... this.
4249         * gnulib/import/alloca.in.h: Update.
4250         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4251         * gnulib/import/arg-nonnull.h: ... this.
4252         * gnulib/import/assure.h: Update.
4253         * gnulib/import/at-func.c: Update.
4254         * gnulib/import/basename-lgpl.c: Update.
4255         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4256         * gnulib/import/c++defs.h: ... this.
4257         * gnulib/import/canonicalize-lgpl.c: Update.
4258         * gnulib/import/cdefs.h: Update.
4259         * gnulib/import/chdir-long.c: Update.
4260         * gnulib/import/chdir-long.h: Update.
4261         * gnulib/import/cloexec.c: Update.
4262         * gnulib/import/cloexec.h: Update.
4263         * gnulib/import/close.c: Update.
4264         * gnulib/import/closedir.c: Update.
4265         * gnulib/import/config.charset: Update.
4266         * gnulib/import/dirent-private.h: Update.
4267         * gnulib/import/dirent.in.h: Update.
4268         * gnulib/import/dirfd.c: Update.
4269         * gnulib/import/dirname-lgpl.c: Update.
4270         * gnulib/import/dirname.h: Update.
4271         * gnulib/import/dosname.h: Update.
4272         * gnulib/import/dup-safer-flag.c: Update.
4273         * gnulib/import/dup-safer.c: Update.
4274         * gnulib/import/dup.c: Update.
4275         * gnulib/import/dup2.c: Update.
4276         * gnulib/import/errno.in.h: Update.
4277         * gnulib/import/error.c: Update.
4278         * gnulib/import/error.h: Update.
4279         * gnulib/import/exitfail.c: Update.
4280         * gnulib/import/exitfail.h: Update.
4281         * gnulib/import/extra/update-copyright: Update.
4282         * gnulib/import/fchdir.c: Update.
4283         * gnulib/import/fcntl.c: Update.
4284         * gnulib/import/fcntl.in.h: Update.
4285         * gnulib/import/fd-hook.c: Update.
4286         * gnulib/import/fd-hook.h: Update.
4287         * gnulib/import/fd-safer-flag.c: Update.
4288         * gnulib/import/fd-safer.c: Update.
4289         * gnulib/import/fdopendir.c: Update.
4290         * gnulib/import/filename.h: Update.
4291         * gnulib/import/filenamecat-lgpl.c: Update.
4292         * gnulib/import/filenamecat.h: Update.
4293         * gnulib/import/flexmember.h: Update.
4294         * gnulib/import/float+.h: Update.
4295         * gnulib/import/float.c: Update.
4296         * gnulib/import/float.in.h: Update.
4297         * gnulib/import/fnmatch.c: Update.
4298         * gnulib/import/fnmatch.in.h: Update.
4299         * gnulib/import/fnmatch_loop.c: Update.
4300         * gnulib/import/fpucw.h: Update.
4301         * gnulib/import/frexp.c: Update.
4302         * gnulib/import/frexpl.c: Update.
4303         * gnulib/import/fstat.c: Update.
4304         * gnulib/import/fstatat.c: Update.
4305         * gnulib/import/getcwd-lgpl.c: Update.
4306         * gnulib/import/getcwd.c: Update.
4307         * gnulib/import/getdtablesize.c: Update.
4308         * gnulib/import/getlogin_r.c: Update.
4309         * gnulib/import/getprogname.c: Update.
4310         * gnulib/import/getprogname.h: Update.
4311         * gnulib/import/gettext.h: Update.
4312         * gnulib/import/gettimeofday.c: Update.
4313         * gnulib/import/glob-libc.h: Update.
4314         * gnulib/import/glob.c: Update.
4315         * gnulib/import/glob.in.h: Update.
4316         * gnulib/import/glob_internal.h: Update.
4317         * gnulib/import/glob_pattern_p.c: Update.
4318         * gnulib/import/globfree.c: Update.
4319         * gnulib/import/hard-locale.c: Update.
4320         * gnulib/import/hard-locale.h: Update.
4321         * gnulib/import/intprops.h: Update.
4322         * gnulib/import/inttypes.in.h: Update.
4323         * gnulib/import/isnan.c: Update.
4324         * gnulib/import/isnand-nolibm.h: Update.
4325         * gnulib/import/isnand.c: Update.
4326         * gnulib/import/isnanl-nolibm.h: Update.
4327         * gnulib/import/isnanl.c: Update.
4328         * gnulib/import/itold.c: Update.
4329         * gnulib/import/libc-config.h: Update.
4330         * gnulib/import/limits.in.h: Update.
4331         * gnulib/import/localcharset.c: Update.
4332         * gnulib/import/localcharset.h: Update.
4333         * gnulib/import/localtime-buffer.c: Update.
4334         * gnulib/import/localtime-buffer.h: Update.
4335         * gnulib/import/lstat.c: Update.
4336         * gnulib/import/m4/00gnulib.m4: Update.
4337         * gnulib/import/m4/__inline.m4: Update.
4338         * gnulib/import/m4/absolute-header.m4: Update.
4339         * gnulib/import/m4/alloca.m4: Update.
4340         * gnulib/import/m4/builtin-expect.m4: Update.
4341         * gnulib/import/m4/canonicalize.m4: Update.
4342         * gnulib/import/m4/chdir-long.m4: Update.
4343         * gnulib/import/m4/close.m4: Update.
4344         * gnulib/import/m4/closedir.m4: Update.
4345         * gnulib/import/m4/configmake.m4: Update.
4346         * gnulib/import/m4/d-ino.m4: Update.
4347         * gnulib/import/m4/d-type.m4: Update.
4348         * gnulib/import/m4/dirent_h.m4: Update.
4349         * gnulib/import/m4/dirfd.m4: Update.
4350         * gnulib/import/m4/dirname.m4: Update.
4351         * gnulib/import/m4/double-slash-root.m4: Update.
4352         * gnulib/import/m4/dup.m4: Update.
4353         * gnulib/import/m4/dup2.m4: Update.
4354         * gnulib/import/m4/eealloc.m4: Update.
4355         * gnulib/import/m4/environ.m4: Update.
4356         * gnulib/import/m4/errno_h.m4: Update.
4357         * gnulib/import/m4/error.m4: Update.
4358         * gnulib/import/m4/exponentd.m4: Update.
4359         * gnulib/import/m4/exponentl.m4: Update.
4360         * gnulib/import/m4/extensions.m4: Update.
4361         * gnulib/import/m4/extern-inline.m4: Update.
4362         * gnulib/import/m4/fchdir.m4: Update.
4363         * gnulib/import/m4/fcntl-o.m4: Update.
4364         * gnulib/import/m4/fcntl.m4: Update.
4365         * gnulib/import/m4/fcntl_h.m4: Update.
4366         * gnulib/import/m4/fdopendir.m4: Update.
4367         * gnulib/import/m4/filenamecat.m4: Update.
4368         * gnulib/import/m4/flexmember.m4: Update.
4369         * gnulib/import/m4/float_h.m4: Update.
4370         * gnulib/import/m4/fnmatch.m4: Update.
4371         * gnulib/import/m4/fnmatch_h.m4: Update.
4372         * gnulib/import/m4/fpieee.m4: Update.
4373         * gnulib/import/m4/frexp.m4: Update.
4374         * gnulib/import/m4/frexpl.m4: Update.
4375         * gnulib/import/m4/fstat.m4: Update.
4376         * gnulib/import/m4/fstatat.m4: Update.
4377         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4378         * gnulib/import/m4/getcwd-path-max.m4: Update.
4379         * gnulib/import/m4/getcwd.m4: Update.
4380         * gnulib/import/m4/getdtablesize.m4: Update.
4381         * gnulib/import/m4/getlogin.m4: Update.
4382         * gnulib/import/m4/getlogin_r.m4: Update.
4383         * gnulib/import/m4/getpagesize.m4: Update.
4384         * gnulib/import/m4/getprogname.m4: Update.
4385         * gnulib/import/m4/gettimeofday.m4: Update.
4386         * gnulib/import/m4/glibc21.m4: Update.
4387         * gnulib/import/m4/glob.m4: Update.
4388         * gnulib/import/m4/glob_h.m4: Update.
4389         * gnulib/import/m4/gnulib-cache.m4: Update.
4390         * gnulib/import/m4/gnulib-common.m4: Update.
4391         * gnulib/import/m4/gnulib-comp.m4: Update.
4392         * gnulib/import/m4/gnulib-tool.m4: Update.
4393         * gnulib/import/m4/hard-locale.m4: Update.
4394         * gnulib/import/m4/include_next.m4: Update.
4395         * gnulib/import/m4/inttypes-pri.m4: Update.
4396         * gnulib/import/m4/inttypes.m4: Update.
4397         * gnulib/import/m4/isnand.m4: Update.
4398         * gnulib/import/m4/isnanl.m4: Update.
4399         * gnulib/import/m4/largefile.m4: Update.
4400         * gnulib/import/m4/limits-h.m4: Update.
4401         * gnulib/import/m4/localcharset.m4: Update.
4402         * gnulib/import/m4/locale-fr.m4: Update.
4403         * gnulib/import/m4/locale-ja.m4: Update.
4404         * gnulib/import/m4/locale-zh.m4: Update.
4405         * gnulib/import/m4/localtime-buffer.m4: Update.
4406         * gnulib/import/m4/longlong.m4: Update.
4407         * gnulib/import/m4/lstat.m4: Update.
4408         * gnulib/import/m4/malloc.m4: Update.
4409         * gnulib/import/m4/malloca.m4: Update.
4410         * gnulib/import/m4/math_h.m4: Update.
4411         * gnulib/import/m4/mbrtowc.m4: Update.
4412         * gnulib/import/m4/mbsinit.m4: Update.
4413         * gnulib/import/m4/mbsrtowcs.m4: Update.
4414         * gnulib/import/m4/mbstate_t.m4: Update.
4415         * gnulib/import/m4/memchr.m4: Update.
4416         * gnulib/import/m4/memmem.m4: Update.
4417         * gnulib/import/m4/mempcpy.m4: Update.
4418         * gnulib/import/m4/memrchr.m4: Update.
4419         * gnulib/import/m4/mkdir.m4: Update.
4420         * gnulib/import/m4/mkstemp.m4: Update.
4421         * gnulib/import/m4/mmap-anon.m4: Update.
4422         * gnulib/import/m4/mode_t.m4: Update.
4423         * gnulib/import/m4/msvc-inval.m4: Update.
4424         * gnulib/import/m4/msvc-nothrow.m4: Update.
4425         * gnulib/import/m4/multiarch.m4: Update.
4426         * gnulib/import/m4/nocrash.m4: Update.
4427         * gnulib/import/m4/off_t.m4: Update.
4428         * gnulib/import/m4/onceonly.m4: Update.
4429         * gnulib/import/m4/open-cloexec.m4: Update.
4430         * gnulib/import/m4/open.m4: Update.
4431         * gnulib/import/m4/openat.m4: Update.
4432         * gnulib/import/m4/opendir.m4: Update.
4433         * gnulib/import/m4/pathmax.m4: Update.
4434         * gnulib/import/m4/rawmemchr.m4: Update.
4435         * gnulib/import/m4/readdir.m4: Update.
4436         * gnulib/import/m4/readlink.m4: Update.
4437         * gnulib/import/m4/realloc.m4: Update.
4438         * gnulib/import/m4/rename.m4: Update.
4439         * gnulib/import/m4/rewinddir.m4: Update.
4440         * gnulib/import/m4/rmdir.m4: Update.
4441         * gnulib/import/m4/save-cwd.m4: Update.
4442         * gnulib/import/m4/secure_getenv.m4: Update.
4443         * gnulib/import/m4/setenv.m4: Update.
4444         * gnulib/import/m4/signal_h.m4: Update.
4445         * gnulib/import/m4/ssize_t.m4: Update.
4446         * gnulib/import/m4/stat-time.m4: Update.
4447         * gnulib/import/m4/stat.m4: Update.
4448         * gnulib/import/m4/std-gnu11.m4: Update.
4449         * gnulib/import/m4/stdbool.m4: Update.
4450         * gnulib/import/m4/stddef_h.m4: Update.
4451         * gnulib/import/m4/stdint.m4: Update.
4452         * gnulib/import/m4/stdio_h.m4: Update.
4453         * gnulib/import/m4/stdlib_h.m4: Update.
4454         * gnulib/import/m4/strchrnul.m4: Update.
4455         * gnulib/import/m4/strdup.m4: Update.
4456         * gnulib/import/m4/strerror.m4: Update.
4457         * gnulib/import/m4/string_h.m4: Update.
4458         * gnulib/import/m4/strstr.m4: Update.
4459         * gnulib/import/m4/strtok_r.m4: Update.
4460         * gnulib/import/m4/sys_socket_h.m4: Update.
4461         * gnulib/import/m4/sys_stat_h.m4: Update.
4462         * gnulib/import/m4/sys_time_h.m4: Update.
4463         * gnulib/import/m4/sys_types_h.m4: Update.
4464         * gnulib/import/m4/tempname.m4: Update.
4465         * gnulib/import/m4/time_h.m4: Update.
4466         * gnulib/import/m4/unistd-safer.m4: Update.
4467         * gnulib/import/m4/unistd_h.m4: Update.
4468         * gnulib/import/m4/warn-on-use.m4: Update.
4469         * gnulib/import/m4/wchar_h.m4: Update.
4470         * gnulib/import/m4/wchar_t.m4: Update.
4471         * gnulib/import/m4/wctype_h.m4: Update.
4472         * gnulib/import/m4/wint_t.m4: Update.
4473         * gnulib/import/malloc.c: Update.
4474         * gnulib/import/malloc/scratch_buffer.h: Update.
4475         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4476         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4477         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4478         * gnulib/import/malloca.c: Update.
4479         * gnulib/import/malloca.h: Update.
4480         * gnulib/import/malloca.valgrind: Update.
4481         * gnulib/import/math.in.h: Update.
4482         * gnulib/import/mbrtowc.c: Update.
4483         * gnulib/import/mbsinit.c: Update.
4484         * gnulib/import/mbsrtowcs-impl.h: Update.
4485         * gnulib/import/mbsrtowcs-state.c: Update.
4486         * gnulib/import/mbsrtowcs.c: Update.
4487         * gnulib/import/memchr.c: Update.
4488         * gnulib/import/memmem.c: Update.
4489         * gnulib/import/mempcpy.c: Update.
4490         * gnulib/import/memrchr.c: Update.
4491         * gnulib/import/mkdir.c: Update.
4492         * gnulib/import/mkstemp.c: Update.
4493         * gnulib/import/msvc-inval.c: Update.
4494         * gnulib/import/msvc-inval.h: Update.
4495         * gnulib/import/msvc-nothrow.c: Update.
4496         * gnulib/import/msvc-nothrow.h: Update.
4497         * gnulib/import/open.c: Update.
4498         * gnulib/import/openat-die.c: Update.
4499         * gnulib/import/openat-priv.h: Update.
4500         * gnulib/import/openat-proc.c: Update.
4501         * gnulib/import/openat.c: Update.
4502         * gnulib/import/openat.h: Update.
4503         * gnulib/import/opendir.c: Update.
4504         * gnulib/import/pathmax.h: Update.
4505         * gnulib/import/pipe-safer.c: Update.
4506         * gnulib/import/rawmemchr.c: Update.
4507         * gnulib/import/readdir.c: Update.
4508         * gnulib/import/readlink.c: Update.
4509         * gnulib/import/realloc.c: Update.
4510         * gnulib/import/ref-add.sin: Update.
4511         * gnulib/import/ref-del.sin: Update.
4512         * gnulib/import/rename.c: Update.
4513         * gnulib/import/rewinddir.c: Update.
4514         * gnulib/import/rmdir.c: Update.
4515         * gnulib/import/same-inode.h: Update.
4516         * gnulib/import/save-cwd.c: Update.
4517         * gnulib/import/save-cwd.h: Update.
4518         * gnulib/import/scratch_buffer.h: Update.
4519         * gnulib/import/secure_getenv.c: Update.
4520         * gnulib/import/setenv.c: Update.
4521         * gnulib/import/signal.in.h: Update.
4522         * gnulib/import/stat-time.c: Update.
4523         * gnulib/import/stat-time.h: Update.
4524         * gnulib/import/stat-w32.c: Update.
4525         * gnulib/import/stat-w32.h: Update.
4526         * gnulib/import/stat.c: Update.
4527         * gnulib/import/stdbool.in.h: Update.
4528         * gnulib/import/stddef.in.h: Update.
4529         * gnulib/import/stdint.in.h: Update.
4530         * gnulib/import/stdio.in.h: Update.
4531         * gnulib/import/stdlib.in.h: Update.
4532         * gnulib/import/str-two-way.h: Update.
4533         * gnulib/import/strchrnul.c: Update.
4534         * gnulib/import/strdup.c: Update.
4535         * gnulib/import/streq.h: Update.
4536         * gnulib/import/strerror-override.c: Update.
4537         * gnulib/import/strerror-override.h: Update.
4538         * gnulib/import/strerror.c: Update.
4539         * gnulib/import/string.in.h: Update.
4540         * gnulib/import/stripslash.c: Update.
4541         * gnulib/import/strnlen1.c: Update.
4542         * gnulib/import/strnlen1.h: Update.
4543         * gnulib/import/strstr.c: Update.
4544         * gnulib/import/strtok_r.c: Update.
4545         * gnulib/import/sys_stat.in.h: Update.
4546         * gnulib/import/sys_time.in.h: Update.
4547         * gnulib/import/sys_types.in.h: Update.
4548         * gnulib/import/tempname.c: Update.
4549         * gnulib/import/tempname.h: Update.
4550         * gnulib/import/time.in.h: Update.
4551         * gnulib/import/unistd--.h: Update.
4552         * gnulib/import/unistd-safer.h: Update.
4553         * gnulib/import/unistd.in.h: Update.
4554         * gnulib/import/unsetenv.c: Update.
4555         * gnulib/import/verify.h: Update.
4556         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4557         * gnulib/import/wchar.in.h: Update.
4558         * gnulib/import/wctype.in.h: Update.
4559         * gnulib/import/xalloc-oversized.h: Update.
4560         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4561         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4562
4563 2018-08-16  Gary Benson <gbenson@redhat.com>
4564
4565         PR gdb/13000:
4566         * gdb/main.c (captured_main_1): Exit with nonzero status
4567         in batch mode if the last command to be executed failed.
4568         * NEWS: Mention the above.
4569
4570 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4571
4572         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4573         end of warning message.
4574
4575 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4576
4577         PR gdb/22943:
4578         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4579         (aarch64_extract_return_value): Use
4580         aapcs_is_vfp_call_or_return_candidate.
4581         (aarch64_return_in_memory): Likewise.
4582         (aarch64_store_return_value): Likewise.
4583
4584 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4585
4586         * aarch64-tdep.c
4587         (aapcs_is_vfp_call_or_return_candidate): Make static
4588         (pass_in_v_or_stack): Remove function.
4589         (pass_in_v_vfp_candidate): New function.
4590         (aarch64_push_dummy_call): Check for float register candidates.
4591
4592 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4593
4594         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4595         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4596         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4597
4598 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4599
4600         PR build/23399
4601         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4602         (struct ipa_sym_addresses): Rename to...
4603         (struct ipa_sym_addresses_common): ... this.
4604         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4605
4606 2018-08-28  Tom Tromey  <tom@tromey.com>
4607
4608         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4609         (token_fifo): Now a std::vector.
4610         (yylex, c_parse): Update.
4611         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4612         (token_fifo): Now a std::vector.
4613         (yylex, d_parse): Update.
4614         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4615         (token_fifo): Now a std::vector.
4616         (yylex, go_parse): Update.
4617
4618 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4619
4620         * parser-defs.h (struct type_stack) <elements>: Change type to
4621         std::vector<union type_stack_elt>.
4622         <depth, size>: Remove.
4623         * parse.c (parse_exp_in_context_1): Adjust.
4624         (type_stack_reserve): Remove.
4625         (check_type_stack_depth): Remove.
4626         (insert_into_type_stack): Adjust to std::vector.
4627         (insert_type): Likewise.
4628         (push_type): Likewise.
4629         (push_type_int): Likewise.
4630         (insert_type_address_space): Likewise.
4631         (pop_type): Likewise.
4632         (pop_type_int): Likewise.
4633         (pop_typelist): Likewise.
4634         (pop_type_stack): Likewise.
4635         (append_type_stack): Likewise.
4636         (push_type_stack): Likewise.
4637         (get_type_stack): Likewise.
4638         (type_stack_cleanup): Likewise.
4639         (push_typelist): Likewise.
4640         (follow_types): Likewise.
4641         (_initialize_parse): Likewise.
4642
4643 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4644
4645         * NEWS: Mention csky target.
4646
4647 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4648             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4649             Don Breazeal  <donb@codesourcery.com>
4650
4651         * csky-linux-tdep.c: New file.
4652         * csky-tdep.c: Likewise.
4653         * csky-tdep.h: Likewise.
4654         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4655         csky-tdep.o.
4656         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4657         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4658         * configure.tgt: Add csky support.
4659
4660 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4661
4662         * python/py-framefilter.c (py_print_frame): Print frame architecture
4663         when printing on an MI output.
4664
4665 2018-08-27  Tom Tromey  <tom@tromey.com>
4666
4667         PR build/23087:
4668         * configure: Rebuild.
4669         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4670
4671 2018-08-27  Tom Tromey  <tom@tromey.com>
4672
4673         * aarch64-linux-tdep.c
4674         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4675         casts to int.
4676
4677 2018-08-27  Tom Tromey  <tom@tromey.com>
4678
4679         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4680         unsigned.
4681         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4682         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4683         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4684         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4685         unsigned.
4686
4687 2018-08-27  Tom Tromey  <tom@tromey.com>
4688
4689         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4690         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4691
4692 2018-08-27  Tom Tromey  <tom@tromey.com>
4693
4694         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4695         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4696         ULONGEST_MAX.
4697         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4698         ULONGEST_MAX.
4699         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4700         ULONGEST_MAX.
4701         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4702         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4703         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4704         ULONGEST_MAX.
4705         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4706         (ppc64_linux_sigaction_tramp_frame)
4707         (ppc32_linux_sighandler_tramp_frame)
4708         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4709         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4710         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4711         * mn10300-linux-tdep.c (am33_linux_sigframe)
4712         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4713         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4714         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4715         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4716         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4717         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4718         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4719         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4720         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4721         * microblaze-linux-tdep.c
4722         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4723         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4724         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4725         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4726         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4727         * common/common-types.h (ULONGEST_MAX): New define.
4728         (CORE_ADDR_MAX): Fix formatting.
4729         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4730         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4731         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4732         (arm_linux_rt_sigreturn_tramp_frame)
4733         (arm_eabi_linux_sigreturn_tramp_frame)
4734         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4735         (thumb2_eabi_linux_sigreturn_tramp_frame)
4736         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4737         (arm_linux_restart_syscall_tramp_frame)
4738         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4739         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4740         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4741         ULONGEST_MAX.
4742         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4743
4744 2018-08-27  Tom Tromey  <tom@tromey.com>
4745
4746         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4747         CORE_ADDR_MAX.
4748         * mips-tdep.c (mips_deal_with_atomic_sequence)
4749         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4750         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4751         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4752         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4753         CORE_ADDR_MAX.
4754         * aarch64-tdep.c (aarch64_software_single_step): Use
4755         CORE_ADDR_MAX.
4756
4757 2018-08-27  Tom Tromey  <tom@tromey.com>
4758
4759         * linespec.c (complete_linespec_component): Add cast to "char".
4760         * completer.c (completion_tracker::build_completion_result): Add
4761         cast to "char".
4762
4763 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4764
4765         * solist.h (struct solist, struct target_so_ops): Fix
4766         indentation.
4767
4768 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4769
4770         * ada-tasks.c (ada_task_info_s): Remove typedef.
4771         (DEF_VEC_O(ada_task_info_s)): Remove.
4772         (struct ada_tasks_inferior_data): Initialize fields.
4773         <task_list>: Make an std::vector.
4774         (get_ada_tasks_inferior_data): Allocate with new.
4775         (ada_get_task_number): Adjust.
4776         (get_task_number_from_id): Likewise.
4777         (valid_task_id): Likewise.
4778         (ada_get_task_info_from_ptid): Likewise.
4779         (iterate_over_live_ada_tasks): Likewise.
4780         (add_ada_task): Likewise.
4781         (read_known_tasks): Likewise.
4782         (ada_build_task_list): Likewise.
4783         (print_ada_task_info): Likewise.
4784         (info_task): Likewise.
4785         (task_command_1): Likewise.
4786
4787 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4788
4789         * ada-lang.c (add_angle_brackets): Return std::string.
4790
4791 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4792
4793         * python/py-threadevent.c (py_get_event_thread): Initialize
4794         pythread.
4795
4796 2018-08-24  Pedro Alves  <palves@redhat.com>
4797
4798         * python/py-bpevent.c (create_breakpoint_event_object): Use
4799         copy-initialization.
4800         * python/py-continueevent.c (emit_continue_event): Use
4801         copy-initialization.
4802         * python/py-exitedevent.c (create_exited_event_object): Return a
4803         gdbpy_ref<>.
4804         (emit_exited_event): Use copy-initialization.
4805         * python/py-inferior.c (python_new_inferior)
4806         (python_inferior_deleted, add_thread_object): Use
4807         copy-initialization.
4808         * python/py-infevents.c (create_inferior_call_event_object)
4809         (create_register_changed_event_object)
4810         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4811         (emit_inferior_call_event, emit_memory_changed_event)
4812         (emit_register_changed_event): Use copy-initialization.
4813         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4814         Return a gdbpy_ref<>.
4815         (emit_new_objfile_event): Use copy-initialization.
4816         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4817         (emit_clear_objfiles_event): Use copy-initialization.
4818         * python/py-signalevent.c (create_signal_event_object): Use
4819         copy-initialization.
4820         * python/py-threadevent.c (create_thread_event_object): Use
4821         copy-initialization.
4822
4823 2018-08-24  Pedro Alves  <palves@redhat.com>
4824             Simon Marchi  <simon.marchi@ericsson.com>
4825
4826         PR gdb/23379
4827         * python/py-continueevent.c: Include "gdbthread.h".
4828         (create_continue_event_object): Add intro comment.  Add 'ptid'
4829         parameter.  Use it to find thread to pass to
4830         create_thread_event_object.
4831         (emit_continue_event): Pass PTID down to
4832         create_continue_event_object.
4833         * python/py-event.h (py_get_event_thread): Declare.
4834         (create_thread_event_object): Remove default from 'thread'
4835         parameter.
4836         * python/py-stopevent.c (create_stop_event_object): Use
4837         py_get_event_thread.
4838         * python/py-threadevent.c (get_event_thread): Rename to ...
4839         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4840         and use it to find the thread.
4841         (create_thread_event_object): Assert that THREAD isn't null.
4842         Don't find the event thread here.
4843
4844 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4845
4846         * block.h (blockrange, blockranges): New struct declarations.
4847         (struct block): Add new field named `ranges'.
4848         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4849         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4850         macros for accessing ranges in struct block.
4851         (make_blockranges): New declaration.
4852         block.c (make_blockranges): New function.
4853         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4854         for block.
4855         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4856         * blockframe.c (cache_pc_function_block): New static global.
4857         (clear_pc_function_cache): Clear cache_pc_function_block.
4858         (find_pc_partial_function): Move comment to symtab.h.  Add
4859         support for non-contiguous blocks.
4860         * cli/cli-cmds.c (block.h): Include.
4861         (print_disassembly): Handle printing of non-contiguous blocks.
4862         (disassemble_current_function): Likewise.
4863         (disassemble_command): Likewise.
4864
4865         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4866         BLOCK_START.
4867         * blockframe.c (get_pc_function_start): Likewise.
4868         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4869         (gcc_symbol_address): Likewise.
4870         * compile/compile-object-run.c (compile_object_run): Likewise.
4871         * compile/compile.c (get_expr_block_and_pc): Likewise.
4872         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4873         (func_addr_to_tail_call_list): Likewise.
4874         * findvar.c (default_read_var_value): Likewise.
4875         * inline-frame.c (inline_frame_this_id): Likewise.
4876         (skip-inline_frames): Likewise.
4877         * infcmd.c (until_next_command): Likewise.
4878         * linespec.c (convert_linespec_to_sals): Likewise.
4879         * parse.c (parse_exp_in_context_1): Likewise.
4880         * printcmd.c (build_address_symbolic): likewise.
4881         (info_address_command): Likewise.
4882         symtab.c (find_function_start_sal): Likewise.
4883         (skip_prologue_sal): Likewise.
4884         (find_function_alias_target): Likewise.
4885         (find_gnu_ifunc): Likewise.
4886         * stack.c (find_frame_funname): Likewise.
4887         * symtab.c (fixup_symbol_section): Likewise.
4888         (find_function_start_sal): Likewise.
4889         (skip_prologue_sal): Likewsie.
4890         (find_function_alias_target): Likewise.
4891         (find_gnu_ifunc): Likewise.
4892         * tracepoint.c (info_scope_command): Likewise.
4893         * value.c (value_fn_field): Likewise.
4894
4895         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4896         in place of find_pc_partial_function.
4897         * blockframe.c (find_function_entry_range_from_pc): New function.
4898         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4899         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4900         for each range in a block.
4901
4902
4903 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4904
4905         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4906         incrementation.
4907
4908 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4909
4910         * solib-svr4.c (read_program_headers_from_bfd): Return
4911         gdb::optional<gdb::byte_vector>.
4912         (svr4_exec_displacement): Adjust.
4913
4914 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4915
4916         * solib-svr4.c (read_program_header): Return
4917         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4918         (find_program_interpreter): Return
4919         gdb::optional<gdb::byte_vector>.
4920         (scan_dyntag_auxv): Adjust.
4921         (enable_break): Adjust.
4922         (svr4_exec_displacement): Adjust.
4923
4924 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4925
4926         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4927         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4928
4929 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4930
4931         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4932         string_vprintf.
4933         * guile/scm-utils.c (gdbscm_printf): Likewise.
4934         * serial.c (serial_printf): Likewise.
4935         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4936
4937 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4938
4939         * stack.c (print_frame): Print frame architecture when printing on
4940         an MI output.
4941         * NEWS: Mention new "arch" attribute in frame output.
4942
4943 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4944
4945         * arch/aarch64.h (aarch64_regnum): Update comment.
4946
4947 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4948
4949         * NEWS: Add SVE to 8.2 section.
4950
4951 2018-08-21  Pedro Alves  <palves@redhat.com>
4952
4953         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4954         out from gdbscm_parse_function_args.
4955         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4956         gdbscm_parse_function_args_1.
4957
4958 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4959
4960         PR gdb/17816
4961         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4962         operator.
4963
4964 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4965
4966         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4967
4968 2018-08-19  Michael Spang  <spang@google.com>
4969
4970         PR gdb/11786
4971         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4972         for PT_TLS segments.
4973
4974 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4975
4976         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4977         dwarf_variable_value.
4978         * dwarf2-frame.c (class dwarf_expr_executor):
4979         Add override for dwarf_variable_value.
4980         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4981         (class symbol_needs_eval_context): Likewise.
4982         (indirect_synthetic_pointer): Add forward declaration.
4983         (sect_variable_value): New function.
4984         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4985         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4986         for DW_OP_GNU_variable_value.
4987
4988 2018-08-16  Tom Tromey  <tom@tromey.com>
4989
4990         * top.c (read_command_file): Update.
4991         (command_line_input): Remove "repeat" argument.
4992         * ada-lang.c (get_selections): Update.
4993         * linespec.c (decode_line_2): Update.
4994         * defs.h (command_line_input): Remove argument.
4995         * cli/cli-script.c (read_next_line): Update.
4996         * python/py-gdb-readline.c: Update.
4997
4998 2018-08-17  Tom Tromey  <tom@tromey.com>
4999
5000         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
5001         command_line_input.
5002
5003 2018-08-15  Tom Tromey  <tom@tromey.com>
5004
5005         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
5006
5007 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
5008
5009         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
5010         If used, use find_pc_partial_function to find address range
5011         to disassemble.
5012         * mi/mi-main.c (mi_cmd_list_features): Report
5013         "data-disassemble-a-option" feature.
5014         * NEWS: Mention new -data-disassemble option -a.
5015
5016 2018-08-13  Tom Tromey  <tom@tromey.com>
5017
5018         * common/common-defs.h (_FORTIFY_SOURCE): Define.
5019
5020 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5021
5022         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
5023         (aarch64_linux_collect_sve_regset): Likewise.
5024         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
5025         * regcache.h (regcache_map_entry_size): New function.
5026
5027 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5028
5029         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
5030         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
5031         (SVE_HEADER_VL_LENGTH): Likewise.
5032         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
5033         (SVE_HEADER_FLAGS_LENGTH): Likewise.
5034         (SVE_HEADER_RESERVED_LENGTH): Likewise.
5035         (SVE_HEADER_SIZE_OFFSET): Likewise.
5036         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5037         (SVE_HEADER_VL_OFFSET): Likewise.
5038         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5039         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5040         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5041         (SVE_HEADER_SIZE): Likewise.
5042         (aarch64_linux_core_read_vq): Add function.
5043         (aarch64_linux_core_read_description): Check for SVE section.
5044
5045 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5046
5047         * aarch64-fbsd-tdep.c
5048         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5049         collect_size.
5050         * aarch64-linux-tdep.c
5051         (aarch64_linux_iterate_over_regset_sections): Likewise.
5052         * alpha-linux-tdep.c
5053         (alpha_linux_iterate_over_regset_sections):
5054         * alpha-nbsd-tdep.c
5055         (alphanbsd_iterate_over_regset_sections): Likewise.
5056         * amd64-fbsd-tdep.c
5057         (amd64fbsd_iterate_over_regset_sections): Likewise.
5058         * amd64-linux-tdep.c
5059         (amd64_linux_iterate_over_regset_sections): Likewise.
5060         * arm-bsd-tdep.c
5061         (armbsd_iterate_over_regset_sections): Likewise.
5062         * arm-fbsd-tdep.c
5063         (arm_fbsd_iterate_over_regset_sections): Likewise.
5064         * arm-linux-tdep.c
5065         (arm_linux_iterate_over_regset_sections): Likewise.
5066         * corelow.c (get_core_registers_cb): Likewise.
5067         (core_target::fetch_registers): Likewise.
5068         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5069         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5070         * gdbarch.h (void): Regenerate.
5071         * gdbarch.sh: Add supply_size and collect_size.
5072         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5073         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5074         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5075         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5076         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5077         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5078         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5079         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5080         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5081         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5082         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5083         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5084         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5085         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5086         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5087         Likewise.
5088         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5089         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5090         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5091         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5092         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5093         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5094         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5095         Likewise.
5096         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5097         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5098         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5099         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5100         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5101         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5102         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5103         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5104
5105 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5106
5107         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5108         with string_printf.
5109
5110 2018-08-10  Keith Seitz  <keiths@redhat.com>
5111
5112         * compile/compile-c-support.c (add_code_header, add_code_footer):
5113         Move into policy class.
5114         (c_push_user_expression, pop_user_expression_nop)
5115         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5116         (compile_program): New host class.
5117         (c_compile_program): New typedef.
5118         (c_compute_porgram): Use c_compile_program.
5119
5120 2018-08-10  Keith Seitz  <keiths@redhat.com>
5121
5122         * compile/compile-internal.h (compile_instance::~compile_instance):
5123         Remove calls to htab_delete.
5124         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5125         * compile.c (compile_instance::compile_instance): Initialize
5126         htab unique pointers.
5127         (compile_instance::get_cached_type, compile_instance::insert_type)
5128         (compile_instance::error_symbol_once): Update for unique_ptr.
5129
5130 2018-08-10  Keith Seitz  <keiths@redhat.com>
5131
5132         * compile/compile-c-symbols.c (struct symbol_error)
5133         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5134         (compile_instance::insert_symbol_error)
5135         (compile_instance::error_symbol_once): Move to ...
5136         * compile/compile.c: ... here.
5137
5138 2018-08-10  Keith Seitz  <keiths@redhat.com>
5139
5140         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5141         instead of `new_compile_instance'.
5142         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5143         Update description.
5144         If the symbol error map is not initialized, create it.
5145         (generate_c_for_for_one_symbol): Do not check/initialize
5146         the symbol error map.
5147         * compile/compile-c-types.c (compile_c_instance): Make a class.
5148         Update all callers.
5149         (compile_instance::compile_instance): Initialize the type cache.
5150         (get_cached_type): New function.
5151         (insert_type): Update description.
5152         (compile_c_instance::m_default_cflags): Define.
5153         (convert_type): Update description.  Use get_cached_type.
5154         (delete_instance): Moved to destructor.
5155         (new_compile_instance): Moved to constructor.
5156         * compile/compile-c.h (compile_c_instance): Make class inheriting
5157         from compile_instance.
5158         <base>: Remove field.
5159         <type_map, symbol_err_map>: Move to base class.
5160         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5161         * compile/compile-internal.h (compile_instance): Make class.
5162         <type_map_t, symbol_err_map_t>: Define.
5163         <fe>: Rename to `m_gcc_fe'.
5164         <scope, block, gcc_target_options>: Add `m_' prefix.
5165         <m_type_map, m_symbol_err_map>: New fields, moved from
5166         compile_c_instance.
5167         <destroy>: Remove.
5168         (convert_type, new_compile_instance): Remove.
5169         * compile/compile.c (cleanup_compile_instance): Remove.
5170         (compile_to_object): Use unique_ptr to eliminate cleanups.
5171         (compile_instance::set_print_callback, compile_instance::version)
5172         (compile_instance::set_verbose)
5173         (compile_instance::set_driver_filename)
5174         (compile_instance::set_triplet_regexp)
5175         (compile_instance::set_arguments)
5176         (compile_instance::set_source_file)
5177         (compile_instance::compile): Define.
5178
5179 2018-08-10  Keith Seitz  <keiths@redhat.com>
5180
5181         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5182         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5183         gcc-c-fe.def to define C plugin.
5184         (delete_instance): Delete `c_plugin'.
5185         (new_compile_instance): Initialize `c_plugin'.
5186         * compile/compile-c.h: Include gcc_c_plugin.h.
5187         (struct compile_c_instance) <c_plugin>: New member.
5188         * gcc-c-plugin.h: New file.
5189         Update all callers with API change.
5190
5191 2018-08-10  Keith Seitz  <keiths@redhat.com>
5192
5193         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5194         (HFILES_NO_SRCDIR): ... to here.
5195         Add compile-internal.h and compile-c.h.
5196         * compile/compile-c-support.c: Include compile-c.h.
5197         * compile/compile-c-symbols.c: Include compile-c.h.
5198         (generate_c_for_variable_locations): Update comment.
5199         * compile/compile-c-types.c: Include compile-c.h.
5200         * compile/compile-c.h: New file -- moved C language declarations
5201         from other files here.
5202         * compile/compile-internal.h: Do not include hashtab.h or
5203         common/enum-flags.h.
5204         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5205         (gcc_convert_symbol, gcc_symbol_address)
5206         (generate_c_for_variable_locations, c_get_mode_for_size)
5207         (c_get_range_decl_name): Definitions moved to compile-c.h.
5208         * compile/compile-loc2c.c: Include compile-c.h.
5209
5210 2018-08-10  Keith Seitz  <keiths@redhat.com>
5211
5212         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5213         (c_symbol_substitution_name): ... this.
5214         Update all callers.
5215
5216 2018-08-10  Keith Seitz  <keiths@redhat.com>
5217
5218         * compile/compile-c-support.c (c_compute_program): Use
5219         unique_xmalloc_ptr to eliminate cleanup.
5220         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5221         Return a unique_xmalloc_ptr and eliminate cleanup.
5222         * compile/compile-internal.h (generate_c_for_variable_locations):
5223         Return unique_xmalloc_ptr and update description.
5224
5225 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5226
5227         * corelow.c (core_target::get_core_register_section): Rename
5228         min_size to section_min_size.
5229
5230 2018-08-09  Jim Wilson  <jimw@sifive.com>
5231
5232         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5233         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5234         * NEWS: Mention new GNU/Linux RISC-V target.
5235         * configure.host: Add riscv*-*-linux*.
5236         * configure.nat: Add riscv*.
5237         * configure.tgt: Add riscv*-*-linux*.
5238         * riscv-linux-nat.c: New file.
5239         * riscv-linux-tdep.c: New file.
5240
5241 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5242
5243         * infrun.c (resume): Make static, add forward declaration.
5244         (proceed): Update header comment.
5245         * infrun.h (resume): Delete declaration.
5246
5247 2018-08-09  Tom Tromey  <tom@tromey.com>
5248
5249         * riscv-tdep.h: Minor formatting fixes.
5250
5251 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5252
5253         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5254         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5255         (test_mkdir_recursive): Likewise.
5256         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5257
5258 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5259
5260         * valarith.c (value_subscripted_rvalue): If an array is not in
5261         memory, and we don't know the upper bound, then we can't know that
5262         the requested element exists or not.
5263
5264 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5265
5266         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5267         (target_options_to_string): Add comment.
5268
5269 2018-08-08  Tom Tromey  <tom@tromey.com>
5270
5271         * unittests/scoped_mmap-selftests.c: Check result of "write".
5272
5273 2018-08-08  Jim Wilson  <jimw@sifive.com>
5274
5275         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5276         (decode_register_index_short): New.
5277         (decode_j_type_insn, decode_cj_type_insn): New.
5278         (decode_b_type_insn, decode_cb_type_insn): New.
5279         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5280         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5281         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5282         is_c_sw_insn instead of is_sw_insn.
5283         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5284         (riscv_software_single_step): New.
5285         * riscv-tdep.h (riscv_software_single_step): Declare.
5286
5287         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5288         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5289
5290 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5291
5292         PR gdb/18050:
5293         * target.c (dispose_inferior): Don't dispose of inferiors that are
5294         already killed.
5295
5296 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5297
5298         * remote.c (remote_target::download_tracepoint): Change char* to
5299         const char*.
5300
5301 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5302
5303         * target.h (target_options_to_string): Return an std::string.
5304         * target.c (str_comma_list_concat_elem): Return void, use
5305         std::string.
5306         (do_option): Likewise.
5307         (target_options_to_string): Return an std::string.
5308         * linux-nat.c (linux_nat_target::wait): Adjust.
5309         * target-debug.h (target_debug_print_options): Adjust.
5310
5311 2018-08-07  Tom Tromey  <tom@tromey.com>
5312
5313         * Makefile.in (CPPFLAGS): New variable.
5314         (INTERNAL_CPPFLAGS): Use it.
5315
5316 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5317
5318         * NEWS: Mention the index cache.
5319
5320 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5321
5322         * common/pathstuff.h (get_standard_cache_dir): New.
5323         * common/pathstuff.c (get_standard_cache_dir): New.
5324         * build-id.h (build_id_to_string): New.
5325         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5326         DEBUG_STR_SUFFIX): Move to here.
5327         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5328         DEBUG_STR_SUFFIX): Move from there.
5329         (write_psymtabs_to_index): Make non-static, add basename
5330         parameter.  Write to temporary files, rename when done.
5331         (save_gdb_index_command): Adjust call to
5332         write_psymtabs_to_index.
5333         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5334         field.
5335         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5336         (get_gdb_index_contents_from_cache): New.
5337         (get_gdb_index_contents_from_cache_dwz): New.
5338         (dwarf2_initialize_objfile): Read index from cache.
5339         (dwarf2_build_psymtabs): Save to index.
5340         * dwarf-index-cache.h: New file.
5341         * dwarf-index-cache.c: New file.
5342         * dwarf-index-write.h: New file.
5343
5344 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5345
5346         * gnulib/aclocal.m4: Re-generate.
5347         * gnulib/config.in: Re-generate.
5348         * gnulib/configure: Re-generate.
5349         * gnulib/import/Makefile.am: Re-generate.
5350         * gnulib/import/Makefile.in: Re-generate.
5351         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5352         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5353         * gnulib/import/m4/mkdir.m4: New file.
5354         * gnulib/import/mkdir.c: New file.
5355         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5356         module.
5357
5358 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5359
5360         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5361         * common/scoped_mmap.c: New file.
5362         * common/scoped_mmap.h (destroy): New method.
5363         (~scoped_mmap, reset): Use destroy.
5364         (scoped_mmap): New move constructor.
5365         (mmap_file): New declaration.
5366         * unittests/scoped_mmap-selftests.c (test_normal,
5367         test_invalid_filename, run_tests): New functions.
5368         (_initialize_scoped_mmap_selftests): Register selftest.
5369
5370 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5371
5372         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5373         (read_gdb_index_from_buffer): ... this.  Remove section
5374         parameter, add buffer parameter.
5375         (get_gdb_index_contents_ftype,
5376         get_gdb_index_contents_dwz_ftype): New typedefs.
5377         (dwarf2_read_gdb_index): Add callback parameters to get the
5378         index contents.
5379         (get_gdb_index_contents_from_section): New.
5380         (dwarf2_initialize_objfile): Update call to
5381         dwarf2_read_gdb_index.
5382
5383 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5384
5385         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5386         (gdb_open_cloexec): Likewise.
5387         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5388         (commandline_from_pid): Likewise.
5389         (linux_xfer_osdata_threads): Likewise.
5390         (linux_xfer_osdata_fds): Likewise.
5391         * ada-lang.c (is_package_name): Likewise.
5392         * auxv.c (procfs_xfer_auxv): Likewise.
5393         * breakpoint.c (print_one_breakpoint_location): Use
5394         uiout::field_fmt.
5395         (print_one_catch_solib): Use string_printf.
5396         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5397         (add_pe_forwarded_sym): Likewise.
5398         * dwarf2read.c (create_type_unit_group): Likewise.
5399         (build_error_marker_type): Likewise.
5400         * infcall.c (get_function_name): Likewise.
5401         * valprint.c (print_converted_chars_to_obstack): Likewise.
5402         * xtensa-tdep.c (xtensa_register_type): Likewise.
5403
5404 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5405
5406         * remote.c (remote_target::download_tracepoint): Fix format
5407         string errors.
5408
5409 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5410
5411         * tracefile.c: Include common/byte-vector.h.
5412         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5413         with trace_regblock_size if needed.  Update uses of buf.
5414
5415 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5416
5417         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5418         std::vector<unsigned char>.
5419         * tracepoint.c (collection_list::collection_list): Remove
5420         m_regs_mask initializer from initializer list.  Resize
5421         m_regs_mask using the largest remote register number.
5422         (collection_list::add_remote_register): Remove size check on
5423         m_regs_mask.  Use at to access element.
5424         (collection_list::stringify): Change type of temp_buf to
5425         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5426         stringify the register mask.  Use pack_hex_byte for the register
5427         mask.
5428
5429 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5430
5431         * tracepoint.h (class collection_list) <add_register>: Remove.
5432         <add_remote_register, add_ax_registers, add_local_register>:
5433         Declare.
5434         <add_memrange>: Add scope parameter.
5435         * tracepoint.c (encode_actions_1): Likewise.
5436         (collection_list::add_register): Rename to ...
5437         (collection_list::add_remote_register): ... this.  Update
5438         comment.
5439         (collection_list::add_ax_registers, add_local_register): New
5440         methods.
5441         (collection_list::add_memrange): Add scope parameter.  Call
5442         add_local_register instead of add_register.
5443         (finalize_tracepoint_aexpr): New function.
5444         (collection_list::collect_symbol): Update calls to add_memrange.
5445         Call add_local_register instead of add_register.  Call
5446         add_ax_registers.  Call finalize_tracepoint_aexpr.
5447         (encode_actions_1): Get remote regnos for $reg action.  Call
5448         add_remote_register, add_ax_registers, and add_local_register.
5449         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5450         (validate_actionline): Call finalize_tracepoint_aexpr.
5451
5452 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5453
5454         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5455         Replace array buf with gdb::char_vector buf, of size
5456         get_remote_packet_size ().  Replace references to buf and
5457         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5458         and xsnprintf with snprintf.  Raise errors if the buffer is too
5459         small.
5460
5461 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5462
5463         * remote.c (remote_target::download_tracepoint): Fix the has_more
5464         predicate in the QTDP action list iteration.
5465
5466 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5467
5468         * remote.c (remote_target::download_tracepoint): Fix indentation
5469         in for block.
5470
5471 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5472
5473         * proc-api.c (_initialize_proc_api): Remove c, unused.
5474         * procfs.c (procfs_init_inferior): Remove signals, unused.
5475         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5476         unused.
5477
5478 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5479             Andrew Burgess  <andrew.burgess@embecosm.com>
5480
5481         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5482         'W_STOPCODE (0)' as this could be ambiguous.
5483
5484 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5485
5486         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5487         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5488         "ai_socktype").
5489
5490 2018-08-02  Tom Tromey  <tom@tromey.com>
5491
5492         PR symtab/16842.
5493         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5494         symbols.
5495         (process_structure_scope): Likewise.
5496
5497 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5498
5499         PR gdb/22629:
5500         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5501         kill inferior.
5502
5503 2018-08-02  Tom Tromey  <tom@tromey.com>
5504
5505         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5506         (darwin_suspend_inferior, darwin_resume_inferior)
5507         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5508         (darwin_check_new_threads): Check result of get_darwin_inferior.
5509
5510 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5511
5512         GDB 8.1.1 released.
5513
5514 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5515
5516         * varobj.c (varobj_get_path_expr_parent): Report an error if
5517         parent is a dynamic varobj.
5518
5519 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5520
5521         * gnulib/aclocal.m4: Re-generate.
5522         * gnulib/config.in: Re-generate.
5523         * gnulib/configure: Re-generate.
5524         * gnulib/import/Makefile.in: Re-generate.
5525         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5526         * gnulib/import/m4/onceonly.m4: Re-generate.
5527
5528 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5529
5530         * target-descriptions.c (struct xml_test_tdesc): New.
5531         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5532         (record_xml_tdesc): Update.
5533         (maintenance_check_xml_descriptions): Update.
5534         * target-descriptions.h (record_xml_tdesc): Update comment.
5535
5536 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5537
5538         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5539         checking array bounds are defined.
5540
5541 2018-07-30  Tom Tromey  <tom@tromey.com>
5542
5543         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5544         irreflexivity violation.
5545
5546 2018-07-30  Tom Tromey  <tom@tromey.com>
5547
5548         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5549         * value.c (unpack_long): Remove lint code.
5550         * valops.c (value_ind): Remove lint code.
5551         * valarith.c (value_x_binop, value_x_unop, value_equal)
5552         (value_pos): Remove lint code.
5553
5554 2018-07-28  Tom de Vries  <tdevries@suse.de>
5555
5556         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5557         with undefined upper bound as <optimized out>.
5558
5559 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5560
5561         * gcore.in: Rename variable "name" to "prefix".  Expand
5562         "usage" text.
5563
5564 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5565
5566         * windows-nat.c (windows_nat_target::create_inferior): Update to
5567         call close() in global namespace.
5568
5569 2018-07-26  Tom Tromey  <tom@tromey.com>
5570
5571         * dwarf-index-write.c (add_address_entry): Don't add objfile
5572         offsets.
5573         * dbxread.c (find_stab_function): Rename from
5574         find_stab_function_addr.  Return a bound_minimal_symbol.
5575         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5576         Don't add objfile offsets.
5577         (end_psymtab): Use raw_text_low, raw_text_high,
5578         MSYMBOL_VALUE_RAW_ADDRESS.
5579         (read_ofile_symtab): Update.
5580         (process_one_symbol): Update.
5581         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5582         offsets.
5583         (dw2_relocate): Remove.
5584         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5585         searching addrmap.
5586         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5587         Update.
5588         (process_psymtab_comp_unit_reader, add_partial_symbol)
5589         (add_partial_subprogram, dwarf2_ranges_read): Update.
5590         (load_partial_dies): Update.
5591         (add_address_entry): Don't add objfile offsets.
5592         (dwarf2_build_include_psymtabs): Update.
5593         (create_addrmap_from_aranges): Don't add objfile offsets.
5594         (dw2_find_pc_sect_compunit_symtab): Update.
5595         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5596         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5597         Update.
5598         (parse_partial_symbols): Don't add objfile offsets.  Use
5599         raw_text_low, raw_text_high.  Update.
5600         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5601         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5602         or call 'relocate' quick function.  Clear psymbol_map.
5603         * psympriv.h (struct partial_symbol) <address>: Add section
5604         offset.
5605         <set_unrelocated_address>: Rename from set_address.
5606         <raw_text_low, raw_text_high>: New methods.
5607         <text_low, text_high>: Add objfile parameter.
5608         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5609         set_unrelocated_address.
5610         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5611         (find_pc_psymbol): Update.
5612         (fixup_psymbol_section, relocate_psymtabs): Remove.
5613         (dump_psymtab, psym_functions): Update.
5614         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5615         parameter.
5616         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5617         (start_psymtab_common): Update.
5618         * symfile-debug.c (debug_qf_relocate): Remove.
5619         (debug_sym_quick_functions): Update.
5620         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5621         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5622         Update.
5623
5624 2018-07-26  Tom Tromey  <tromey@redhat.com>
5625
5626         * dbxread.c (end_psymtab): Use text_high_valid and
5627         text_low_valid.
5628         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5629         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5630         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5631         Update comment.
5632         <text_low_valid, text_high_valid>: New fields.
5633         <set_text_low, set_text_high>: Update.
5634         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5635
5636 2018-07-26  Tom Tromey  <tom@tromey.com>
5637
5638         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5639         Update.
5640         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5641         textlow and texthigh fields.
5642         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5643         Update.
5644         * mdebugread.c (parse_lines, parse_partial_symbols)
5645         (psymtab_to_symtab_1): Update.
5646         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5647         Rename fields.  Update comment.  Now private.
5648         <text_low, text_high, set_text_low, set_text_high>: New methods.
5649         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5650         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5651         (start_psymtab_common, maintenance_info_psymtabs)
5652         (maintenance_check_psymtabs): Update.
5653         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5654         texthigh fields.
5655         (scan_xcoff_symtab): Update.
5656
5657 2018-07-26  Tom Tromey  <tromey@redhat.com>
5658
5659         * psympriv.h (struct partial_symbol) <unrelocated_address,
5660         address, set_address>: New methods.
5661         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5662         (fixup_psymbol_section, relocate_psymtabs): Update.
5663         (print_partial_symbols): Add 'objfile' parameter.  Update.
5664         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5665         Update.
5666
5667 2018-07-26  Tom Tromey  <tom@tromey.com>
5668
5669         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5670         (debug_names::write_psymbols): Update.
5671         * psympriv.h (struct partial_symbol): Derive from
5672         general_symbol_info.
5673         <obj_section>: New method.
5674         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5675         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5676         (find_pc_sect_psymbol, fixup_psymbol_section)
5677         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5678         (print_partial_symbols, recursively_search_psymtabs)
5679         (compare_psymbols, psymbol_hash, psymbol_compare)
5680         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5681         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5682
5683 2018-07-26  Tom Tromey  <tromey@redhat.com>
5684
5685         * dbxread.c (end_psymtab): Remove dead code.
5686
5687 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5688
5689         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5690         DWARF unwinders are disabled.
5691         * dwarf2-frame.c: Add dwarf2read.h include.
5692         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5693         disabled.
5694         (dwarf2_frame_unwinders_enabled_p): Define.
5695         (show_dwarf_unwinders_enabled_p): New function.
5696         (_initialize_dwarf2_frame): Register switch to control DWARF
5697         unwinder use.
5698         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5699         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5700         (show_dwarf_cmdlist): Remove static keyword.
5701         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5702         (show_dwarf_cmdlist): Declare.
5703         * NEWS: Document new feature.
5704
5705 2018-07-26  Tom de Vries  <tdevries@suse.de>
5706
5707         PR breakpoints/23366
5708         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5709
5710 2018-07-26  Tom de Vries  <tdevries@suse.de>
5711
5712         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5713         DW_AT_count can't be translated to a dynamic prop.
5714
5715 2018-07-25  Tom de Vries  <tdevries@suse.de>
5716
5717         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5718         try/catch.
5719
5720 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5721
5722         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5723
5724 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5725
5726         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5727
5728 2018-07-24  Keith Seitz  <keiths@redhat.comt
5729
5730         PR symtab/23010
5731         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5732         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5733         instead of add_symbol_to_list.
5734         (read_file_scope): Call prepare_one_comp_unit before reading
5735         any other DIEs.
5736
5737 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5738
5739         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5740
5741 2018-07-24  Tom Tromey  <tom@tromey.com>
5742
5743         * utils.c (malloc, realloc, free): Don't declare.
5744         * configure, config.in: Rebuild.
5745         * configure.ac: Don't check for declarations of free, malloc, or
5746         realloc.
5747
5748 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5749
5750         * aarch64-linux-nat.c
5751         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5752         variable.
5753         * arm-linux-nat.c (fetch_regs): Likewise.
5754         (store_regs): Likewise.
5755         (fetch_vfp_regs): Likewise.
5756         (store_vfp_regs): Likewise.
5757         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5758         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5759         (arm_linux_nat_target::insert_watchpoint): Likewise.
5760         (arm_linux_nat_target::remove_watchpoint): Likewise.
5761         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5762         Likewise.
5763         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5764         Likewise.
5765         * ppc-linux-nat.c (fetch_register): Likewise.
5766         (fetch_all_gp_regs): Likewise.
5767         (fetch_ppc_registers): Likewise.
5768         (store_all_gp_regs): Likewise.
5769         (store_ppc_registers): Likewise.
5770         (hwdebug_insert_point): Likewise.
5771         (can_use_watchpoint_cond_accel): Likewise.
5772         * remote-sim.c (gdb_os_write_stdout): Likewise.
5773
5774 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5775             Tom Tromey  <tom@tromey.com>
5776
5777         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5778         test for it.
5779         * configure: Rebuild.
5780
5781 2018-07-22  Tom Tromey  <tom@tromey.com>
5782
5783         * regformats/regdat.sh: Define xmltarget_${name} inside
5784         #ifndef IN_PROCESS_AGENT.
5785
5786 2018-07-22  Tom Tromey  <tom@tromey.com>
5787
5788         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5789
5790 2018-07-22  Tom Tromey  <tom@tromey.com>
5791
5792         * symfile.c (reread_symbols): Notify iter, not objfile.
5793
5794 2018-07-22  Tom Tromey  <tom@tromey.com>
5795
5796         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5797         Use arch_ops.
5798         (ravenscar_thread_target::prepare_to_store): Likewise.
5799
5800 2018-07-22  Tom Tromey  <tom@tromey.com>
5801
5802         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5803         unused variable.  Call value_fetch_lazy when needed.
5804         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5805         Remove unused variable.  Call value_fetch_lazy when needed.
5806
5807 2018-07-22  Tom Tromey  <tom@tromey.com>
5808
5809         * m32c-tdep.c (mark_dma): Return void.
5810         (make_regs): Remove unused declarations.
5811
5812 2018-07-22  Tom Tromey  <tom@tromey.com>
5813
5814         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5815         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5816         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5817         bkscm_get_valid_block_smob_arg_unsafe for effect.
5818
5819 2018-07-22  Tom Tromey  <tom@tromey.com>
5820
5821         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5822         value_type.
5823
5824 2018-07-22  Tom Tromey  <tom@tromey.com>
5825
5826         * windows-nat.c (saved_context): Conditionally define.
5827         * remote.c (remote_target::remote_btrace_maybe_reopen):
5828         Conditionally declare "warned".
5829         * inflow.c (sigquit_ours): Conditionally define.
5830         (new_tty): Move "tty" declaration inside #if.
5831         * guile/guile.c (guile_datadir): Conditionally define.
5832         * charset.c (set_be_le_names): Move some declarations inside #if.
5833         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5834         #if.
5835         (parse_xml_btrace_conf): Likewise.
5836
5837 2018-07-22  Tom Tromey  <tom@tromey.com>
5838
5839         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5840
5841 2018-07-22  Tom Tromey  <tom@tromey.com>
5842
5843         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5844         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5845         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5846         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5847         * stack.c (frame_apply_level_command): Remove unused variable.
5848         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5849         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5850         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5851         unused variable.
5852         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5853         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5854         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5855         variable.
5856         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5857         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5858         variable.
5859         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5860         Remove unused variable.
5861         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5862         variable.
5863         * common/tdesc.c (print_xml_feature::visit): Remove unused
5864         variable.
5865         * compile/compile-object-load.c (store_regs): Remove unused
5866         variables.
5867         * complaints.c (clear_complaints): Remove unused variable.
5868         * corelow.c (core_target_open): Remove unused variable.
5869         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5870         variable.
5871         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5872         variable.
5873         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5874         variable.
5875         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5876         variable.
5877         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5878         variable.
5879         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5880         variable.
5881         * ia64-tdep.c (examine_prologue): Remove unused variable.
5882         * infcall.c (run_inferior_call): Remove unused variable.
5883         * inferior.c (exit_inferior): Remove unused variable.
5884         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5885         * linespec.c (decode_line_2): Remove unused variable.
5886         * linux-nat.c (super_close): Remove.
5887         * linux-tdep.c (linux_info_proc): Remove unused variable.
5888         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5889         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5890         Remove unused variable.
5891         * parse.c (find_minsym_type_and_address): Remove unused variable.
5892         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5893         variable.
5894         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5895         variable.
5896         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5897         variables.
5898         * record-btrace.c (record_btrace_target::store_registers): Remove
5899         unused variable.
5900         (cmd_show_record_btrace_cpu): Remove unused variable.
5901         * riscv-tdep.c (riscv_register_reggroup_p)
5902         (riscv_push_dummy_call, riscv_return_value): Remove unused
5903         variable.
5904         * rust-exp.y (literal): Remove unused variable.
5905         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5906         unused variable.
5907         <STRUCTOP_ANONYMOUS>: Likewise.
5908         * s390-linux-tdep.c (s390_linux_init_abi_31)
5909         (s390_linux_init_abi_64): Remove unused variable.
5910         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5911         (file_select_thread, net_windows_open, _initialize_ser_windows):
5912         Remove unused variables.
5913         * symtab.c (find_pc_sect_line): Remove unused variable.
5914         * target-memory.c (compute_garbled_blocks): Remove unused
5915         variable.
5916         (target_write_memory_blocks): Remove unused variable.
5917         * target.c (target_stack::unpush): Remove unused variables.
5918         * tracepoint.c (start_tracing, all_tracepoint_actions)
5919         (merge_uploaded_trace_state_variables)
5920         (print_one_static_tracepoint_marker): Remove unused variable.
5921         * unittests/basic_string_view/element_access/char/1.cc (test01):
5922         Remove unused variable.
5923         * windows-nat.c (windows_continue, windows_add_all_dlls)
5924         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5925         Remove unused variables.
5926
5927 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5928
5929         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5930         attr_profile in HAVE_ELF.
5931         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5932         HAVE_ELF.
5933
5934 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5935
5936         * frame.c (frame_register_unwind): Change parameter name.
5937         (frame_unwind_register): Likewise.
5938         (frame_unwind_register_value): Likewise.
5939         (frame_unwind_register_signed): Likewise.
5940         (frame_unwind_register_unsigned): Likewise.
5941         * frame.h (frame_register_unwind): Likewise.
5942         (frame_unwind_register): Likewise.
5943         (frame_unwind_register_value): Likewise.
5944         (frame_unwind_register_signed): Likewise.
5945         (frame_unwind_register_unsigned): Likewise.
5946         (frame_unwind_arch): Likewise.
5947
5948 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5949
5950         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5951         ISA maintenance.
5952
5953 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5954
5955         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5956         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5957         hand.
5958
5959 2018-07-20  Keith Seitz  <keiths@redhat.com>
5960
5961         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5962         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5963         m_compunit_symtab, m_language>: Add "m_" prefix.
5964         Update all uses.
5965         * buildsym.c: Update all uses.
5966
5967 2018-07-20  Tom Tromey  <tom@tromey.com>
5968
5969         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5970         * buildsym.h (record_line_ftype): Remove typedef.
5971
5972 2018-07-20  Tom Tromey  <tom@tromey.com>
5973
5974         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5975         (end_expandable_symtab): Likewise.
5976         (end_symtab_get_static_block): Likewise.
5977         (end_symtab_from_static_block): Likewise.
5978         * buildsym-legacy.c (augment_type_symtab): Remove.
5979         (end_expandable_symtab): Remove.
5980         (end_symtab_get_static_block): Remove.
5981         (end_symtab_from_static_block): Remove.
5982
5983 2018-07-20  Tom Tromey  <tom@tromey.com>
5984
5985         * dwarf2read.c: Include buildsym.h.
5986         (struct dwarf2_cu) <builder>: New method.
5987         (fixup_go_packaging): Update.
5988         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5989         use scoped_free_pendings.
5990         (using_directives): Add "cu" parameter, remove "language".
5991         (read_import_statement, setup_type_unit_groups, )
5992         (read_func_scope, read_lexical_block_scope)
5993         (dwarf2_record_block_ranges, read_namespace): Update.
5994         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5995         (lnp_state_machine::handle_end_sequence): Update.
5996         (class lnp_state_machine) <m_cu>: New member.
5997         <m_record_line_callback>: Remove.
5998         <m_currently_recording_lines>: New member.
5999         (lnp_state_machine::handle_set_file): Update.
6000         (noop_record_line): Remove.
6001         (dwarf_record_line_p): Add cu parameter.
6002         (dwarf_record_line_1, dwarf_finish_line): Likewise.
6003         (lnp_state_machine::record_line)
6004         (lnp_state_machine::lnp_state_machine)
6005         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
6006         (dwarf_decode_lines): Update.
6007         (dwarf2_start_subfile): Add cu parameter.
6008         (dwarf2_start_symtab, new_symbol): Update.
6009         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
6010         Remove dwarf2_per_objfile parameter.
6011         (dwarf_decode_macros): Update.
6012
6013 2018-07-20  Tom Tromey  <tom@tromey.com>
6014
6015         * stabsread.c (define_symbol): Update.
6016         * buildsym-legacy.h (get_buildsym_compunit): Declare.
6017         * dwarf2read.c (new_symbol): Update.
6018         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
6019         * cp-namespace.c: Include buildsym.h.
6020         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
6021         * buildsym-legacy.c (get_buildsym_compunit): New function.
6022
6023 2018-07-20  Tom Tromey  <tom@tromey.com>
6024
6025         * xcoffread.c: Include buildsym-legacy.h.
6026         * windows-nat.c: Include buildsym-legacy.h.
6027         * stabsread.c: Include buildsym-legacy.h.
6028         * mdebugread.c: Include buildsym-legacy.h.
6029         * buildsym-legacy.h: New file.
6030         * buildsym-legacy.c: New file, from buildsym.c.
6031         * go32-nat.c: Include buildsym-legacy.h.
6032         * dwarf2read.c: Include buildsym-legacy.h.
6033         * dbxread.c: Include buildsym-legacy.h.
6034         * cp-namespace.c: Include buildsym-legacy.h.
6035         * coffread.c: Include buildsym-legacy.h.
6036         * buildsym.h: Move some contents to buildsym-legacy.h.
6037         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6038         buildsym-legacy.c.
6039         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6040
6041 2018-07-20  Tom Tromey  <tom@tromey.com>
6042
6043         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6044         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6045         (buildsym_compunit::buildsym_compunit)
6046         (buildsym_compunit::~buildsym_compunit)
6047         (buildsym_compunit::get_macro_table): Define.
6048
6049 2018-07-20  Tom Tromey  <tom@tromey.com>
6050
6051         * buildsym.c (reset_symtab_globals): Remove.
6052         (buildsym_compunit::end_symtab_from_static_block): Update.
6053         (buildsym_compunit::augment_type_symtab): Update.
6054         (end_symtab_from_static_block): Call free_buildsym_compunit.
6055         (augment_type_symtab, end_symtab, end_expandable_symtab):
6056         Likewise.
6057
6058 2018-07-20  Tom Tromey  <tom@tromey.com>
6059
6060         * arch-utils.c: Do not include buildsym.h.
6061         * mipsread.c: Do not include buildsym.h.
6062         * machoread.c: Do not include buildsym.h.
6063         * elfread.c: Do not include buildsym.h.
6064
6065 2018-07-20  Tom Tromey  <tom@tromey.com>
6066
6067         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6068         initialization.
6069         (buildsym_compunit): Add new constructor.
6070         (struct buildsym_compunit) <get_last_source_file, finish_block,
6071         record_block_range, start_subfile, patch_subfile_names,
6072         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6073         set_last_source_start_addr, get_last_source_start_addr,
6074         get_local_using_directives, set_local_using_directives,
6075         get_global_using_directives, outermost_context_p,
6076         get_current_context_stack, get_context_stack_depth,
6077         get_current_subfile, get_local_symbols, get_file_symbols,
6078         get_global_symbols, record_debugformat, record_producer,
6079         push_context, pop_context, end_symtab_get_static_block,
6080         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6081         New public methods.
6082         <record_pending_block, finish_block_internal, make_blockvector,
6083         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6084         private methods.
6085         Update all users.
6086
6087 2018-05-22  Tom Tromey  <tom@tromey.com>
6088
6089         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6090         parameter.
6091         (finish_block_internal): Update.
6092
6093 2018-07-20  Tom Tromey  <tom@tromey.com>
6094
6095         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6096         parameter.
6097         (finish_block_internal): Update.
6098
6099 2018-07-20  Tom Tromey  <tom@tromey.com>
6100
6101         * buildsym.h (EXTERN): Don't define or undef.
6102         * buildsym.c (EXTERN): Don't define.
6103
6104 2018-07-20  Tom Tromey  <tom@tromey.com>
6105
6106         * buildsym.c: Remove TODO comment.
6107
6108 2018-07-20  Tom Tromey  <tom@tromey.com>
6109
6110         * coffread.c (coff_symtab_read): Update.
6111         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6112         (xcoff_new_init): Update.
6113         * mipsread.c (mipscoff_new_init): Update.
6114         * mdebugread.c (mdebug_build_psymtabs): Update.
6115         * elfread.c (elf_new_init): Update.
6116         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6117         Update.
6118         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6119         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6120         (stabsect_build_psymtabs): Update.
6121         * buildsym.h (buildsym_init): Don't declare.
6122         * buildsym.c: Update comment.
6123         (prepare_for_building): Remove.
6124         (start_symtab, restart_symtab): Update.
6125         (reset_symtab_globals): Update comment.
6126         (buildsym_init): Remove.
6127
6128 2018-07-20  Tom Tromey  <tom@tromey.com>
6129
6130         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6131         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6132         (read_enum_type, common_block_start, common_block_end)
6133         (cleanup_undefined_types_1, finish_global_stabs): Update.
6134         * mdebugread.c (psymtab_to_symtab_1): Update.
6135         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6136         (read_lexical_block_scope, new_symbol): Update.
6137         * dbxread.c (process_one_symbol): Update.
6138         * coffread.c (coff_symtab_read, process_coff_symbol)
6139         (coff_read_enum_type): Update.
6140         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6141         declare.
6142         (get_local_symbols, get_file_symbols, get_global_symbols): New
6143         functions.
6144         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6145         m_global_symbols.
6146         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6147         (~scoped_free_pendings): Update.
6148         (finish_block, prepare_for_building, reset_symtab_globals)
6149         (end_symtab_get_static_block, end_symtab_with_blockvector)
6150         (augment_type_symtab, push_context): Update.
6151         (get_local_symbols, get_file_symbols, get_global_symbols): New
6152         functions.
6153         (buildsym_init): Update.
6154
6155 2018-07-20  Tom Tromey  <tom@tromey.com>
6156
6157         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6158         (process_full_type_unit): Likewise.
6159         (dwarf2_start_symtab): Set list_in_scope.
6160
6161 2018-07-20  Tom Tromey  <tom@tromey.com>
6162
6163         * dwarf2read.c (process_psymtab_comp_unit_reader)
6164         (build_type_psymtabs_reader): Do not set list_in_scope.
6165
6166 2018-07-20  Tom Tromey  <tom@tromey.com>
6167
6168         * buildsym.c (free_pendings): Remove.
6169         (add_symbol_to_list, scoped_free_pendings)
6170         (finish_block_internal, buildsym_init): Update.
6171
6172 2018-07-20  Tom Tromey  <tom@tromey.com>
6173
6174         * xcoffread.c (read_xcoff_symtab): Update.
6175         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6176         Update.
6177         * dbxread.c (process_one_symbol): Update.
6178         * coffread.c (coff_symtab_read): Update.
6179         * buildsym.h (finish_block): Update.
6180         * buildsym.c (finish_block): Remove "listhead" argument.
6181         (end_symtab_get_static_block): Update.
6182
6183 2018-07-20  Tom Tromey  <tom@tromey.com>
6184
6185         * buildsym.h (class scoped_free_pendings): Remove constructor.
6186         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6187         method.
6188         <m_pending_block_obstack, m_pending_blocks>: New members.
6189         (pending_block_obstack, pending_blocks): Remove.
6190         (scoped_free_pendings::scoped_free_pendings): Default.
6191         (~scoped_free_pendings): Update.
6192         (free_pending_blocks): Remove.
6193         (finish_block_internal, record_pending_block, make_blockvector)
6194         (end_symtab_get_static_block, augment_type_symtab, push_context)
6195         (buildsym_init): Update.
6196
6197 2018-07-20  Tom Tromey  <tom@tromey.com>
6198
6199         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6200         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6201         members.
6202         (pending_addrmap, pending_addrmap_obstack)
6203         (pending_addrmap_interesting): Remove.
6204         (scoped_free_pendings, record_block_range, make_blockvector)
6205         (prepare_for_building, reset_symtab_globals, buildsym_init):
6206         Update.
6207
6208 2018-07-20  Tom Tromey  <tom@tromey.com>
6209
6210         * xcoffread.c (process_linenos): Update.
6211         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6212         * mdebugread.c (psymtab_to_symtab_1): Update.
6213         * dwarf2read.c (setup_type_unit_groups)
6214         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6215         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6216         * dbxread.c (process_one_symbol): Update.
6217         * coffread.c (coff_symtab_read, enter_linenos)
6218         (process_coff_symbol): Update.
6219         * buildsym.h (current_subfile): Don't declare.
6220         (get_current_subfile): Declare.
6221         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6222         member.
6223         (start_subfile, free_buildsym_compunit, push_subfile)
6224         (prepare_for_building, start_symtab): Update.
6225         (get_current_subfile): New function.
6226
6227 2018-07-20  Tom Tromey  <tom@tromey.com>
6228
6229         * coffread.c (coff_symtab_read): Update.
6230         * xcoffread.c (read_xcoff_symtab): Update.
6231         * dwarf2read.c (new_symbol): Update.
6232         (read_func_scope, read_lexical_block_scope): Update.
6233         * dbxread.c (process_one_symbol): Update.
6234         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6235         (outermost_context_p): Remove macro.
6236         (outermost_context_p, get_current_context_stack)
6237         (get_context_stack_depth): Declare.
6238         (pop_context): Return struct context_stack.
6239         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6240         member.
6241         (context_stack_size): Remove.
6242         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6243         (prepare_for_building, end_symtab_get_static_block)
6244         (augment_type_symtab, push_context): Update.
6245         (pop_context): Return struct context_stack.
6246         (outermost_context_p, get_current_context_stack)
6247         (get_context_stack_depth): New functions.
6248         (buildsym_init): Update.
6249
6250 2018-07-20  Tom Tromey  <tom@tromey.com>
6251
6252         * rust-exp.y: Now a pure parser.  Update all rules.
6253         (%union): Move earlier.
6254         (current_parser, work_obstack): Remove globals.
6255         (rust_parser, ~rust_parser): Update.
6256         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6257         lex_character, lex_number, lex_string, lex_identifier,
6258         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6259         convert_name, convert_params_to_expression,
6260         convert_ast_to_expression, ast_basic_type, ast_operation,
6261         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6262         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6263         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6264         ast_array_type, ast_slice_type, ast_reference_type,
6265         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6266         (rust_parse): Update.
6267         (rustyyerror, rustyylex): Add parser parameter.
6268         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6269         (rust_lex_stringish_test, rust_lex_test_sequence)
6270         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6271         (rust_lex_test_push_back, rust_lex_tests): Update.
6272
6273 2018-07-19  Pedro Alves  <palves@redhat.com>
6274
6275         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6276         gdb::unique_xmalloc_ptr.
6277         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6278         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6279         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6280         copy-initialization.
6281         * guile/scm-pretty-print.c (ppscm_print_children): Use
6282         gdb::unique_xmalloc_ptr instead of cleanups.
6283         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6284         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6285         gdb::unique_xmalloc_ptr.
6286         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6287         Adjust to use gdb::unique_xmalloc_ptr.
6288         * guile/scm-utils.c (extract_arg): Adjust.
6289         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6290         gdb::unique_xmalloc_ptr instead of a cleanup.
6291
6292 2018-07-19  Tom Tromey  <tom@tromey.com>
6293
6294         * utils.c (do_value_free_to_mark)
6295         (make_cleanup_value_free_to_mark): Remove.
6296         * utils.h (make_cleanup_value_free_to_mark): Remove.
6297
6298 2018-07-19  Pedro Alves  <palves@redhat.com>
6299
6300         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6301         forwarding reference.
6302
6303 2018-07-18  Pedro Alves  <palves@redhat.com>
6304
6305         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6306         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6307         cleanup.
6308
6309 2018-07-18  Pedro Alves  <palves@redhat.com>
6310
6311         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6312         exceptions.
6313         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6314         (gdbscm_wrap): New.
6315         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6316         directly instead of a cleanup.
6317         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6318         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6319         (vlscm_binop_gdbthrow): New, factored out from ...
6320         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6321         (vlscm_rich_compare): Use gdbscm_wrap.
6322         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6323         instead of a cleanup.
6324         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6325         cleanup.
6326         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6327         Use xfree directly instead of a cleanup.
6328         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6329         Adjust to use gdbscm_wrap and scoped_value_mark.
6330         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6331         (gdbscm_value_address, gdbscm_value_dereference)
6332         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6333         scoped_value_mark.
6334         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6335         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6336         scoped_value_mark.
6337         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6338         gdbscm_wrap and scoped_value_mark.
6339         (gdbscm_value_to_string): Use xfree directly instead of a
6340         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6341         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6342         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6343         scoped_value_mark.
6344         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6345         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6346         scoped_value_mark.
6347         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6348         gdbscm_wrap.
6349
6350 2018-07-18  Tom de Vries  <tdevries@suse.de>
6351
6352         * findvar.c (default_read_var_value): Also resolve dynamic type for
6353         LOC_OPTIMIZED_OUT vars.
6354
6355 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6356
6357         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6358         decoding.
6359
6360 2018-07-17  Tom Tromey  <tom@tromey.com>
6361
6362         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6363         (compute_enum_list, pascm_set_param_value_x)
6364         (gdbscm_parameter_value): Update.
6365         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6366         (gdbscm_scm_to_host_string): Update.
6367         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6368         Update.
6369         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6370         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6371         * guile/scm-string.c (gdbscm_scm_to_string): Return
6372         unique_xmalloc_ptr.
6373         (gdbscm_scm_to_host_string): Likewise.
6374
6375 2018-07-17  Tom Tromey  <tom@tromey.com>
6376
6377         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6378         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6379         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6380         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6381         unique_xmalloc_ptr.
6382
6383 2018-07-17  Tom Tromey  <tom@tromey.com>
6384
6385         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6386         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6387         Update.
6388         * guile/scm-cmd.c (cmdscm_function): Update.
6389         * guile/scm-pretty-print.c
6390         (ppscm_print_exception_unless_memory_error): Update.
6391         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6392         Return unique_xmalloc_ptr.
6393
6394 2018-07-17  Tom Tromey  <tom@tromey.com>
6395
6396         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6397         Use string_printf.
6398
6399 2018-07-17  Jim Wilson  <jimw@sifive.com>
6400
6401         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6402         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6403         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6404         unecessary braces after EF_RISCV_RVC test.  Delete call to
6405         set_gdbarch_decr_pc_after_break.
6406
6407         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6408         RISCV_LAST_FP_REGNUM + 1.
6409         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6410
6411 2018-07-17  Tom Tromey  <tom@tromey.com>
6412
6413         * configure.ac: Remove --disable-gdbcli.
6414         * configure: Rebuild.
6415         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6416         (SUBDIR_CLI_CFLAGS): Remove.
6417         (SFILES): Use SUBDIR_CLI_SRCS.
6418         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6419
6420 2018-07-17  Tom Tromey  <tom@tromey.com>
6421
6422         PR gdb/18624:
6423         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6424
6425 2018-07-16  Jim Wilson  <jimw@sifive.com>
6426
6427         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6428
6429 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6430
6431         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6432         variable.
6433         (libunwind_frame_sniffer): Likewise.
6434         (libunwind_frame_prev_register): Likewise.
6435         (libunwind_sigtramp_frame_sniffer): Likewise.
6436         * ia64-tdep.c (ia64_access_reg): Likewise.
6437         (ia64_access_rse_reg): Likewise.
6438         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6439         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6440
6441 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6442
6443         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6444
6445 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6446
6447         * remote-sim.c (gdbsim_target::close,
6448         gdbsim_target::mourn_inferior): Remove unused variables.
6449
6450 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6451
6452         * ia64-tdep.c (ktab_buf): New global.
6453         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6454         (get_kernel_table): Adjust.
6455
6456 2018-07-16  Tom Tromey  <tom@tromey.com>
6457
6458         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6459         * dwarf2read.c (using_directives, new_symbol): Use
6460         outermost_context_p.
6461         * dbxread.c (process_one_symbol): Use outermost_context_p.
6462         * coffread.c (coff_symtab_read): Use outermost_context_p.
6463
6464 2018-07-16  Tom Tromey  <tom@tromey.com>
6465
6466         * dwarf2read.c (using_directives, read_func_scope)
6467         (read_lexical_block_scope): Update.
6468         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6469         * buildsym.h (local_using_directives, global_using_directives):
6470         Don't declare.
6471         (get_local_using_directives, set_local_using_directives)
6472         (get_global_using_directives): Declare.
6473         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6474         m_global_using_directives>: New members.
6475         (finish_block_internal, prepare_for_building)
6476         (reset_symtab_globals, end_symtab_get_static_block)
6477         (push_context): Update.
6478         (get_local_using_directives, set_local_using_directives)
6479         (get_global_using_directives): New functions.
6480         (buildsym_init): Update.
6481
6482 2018-07-16  Tom Tromey  <tom@tromey.com>
6483
6484         * xcoffread.c (xcoff_initial_scan): Don't call
6485         free_pending_blocks.
6486         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6487         * buildsym.h (class scoped_free_pendings): Add constructor.
6488         (free_pending_blocks): Don't declare.
6489         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6490         (free_pending_blocks): Now static.
6491
6492 2018-07-16  Tom Tromey  <tom@tromey.com>
6493
6494         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6495         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6496         member.
6497         (struct subfile_stack): Remove.
6498         (subfile_stack): Remove.
6499         (push_subfile, pop_subfile, buildsym_init): Update.
6500
6501 2018-07-16  Tom Tromey  <tom@tromey.com>
6502
6503         * buildsym.c (push_subfile): Use gdb_assert.
6504         (pop_subfile): Use gdb_assert.
6505
6506 2018-07-16  Tom Tromey  <tom@tromey.com>
6507
6508         * buildsym.h (merge_symbol_lists): Remove.
6509         * buildsym.c (merge_symbol_lists): Remove.
6510
6511 2018-07-16  Tom Tromey  <tom@tromey.com>
6512
6513         * stabsread.c (scan_file_globals): Update comment.
6514         * stabsread.h (scan_file_globals): Move from buildsym.h.
6515         * buildsym.h (scan_file_globals): Move to stabsread.h.
6516
6517 2018-07-16  Tom Tromey  <tom@tromey.com>
6518
6519         * xcoffread.c (xcoff_new_init): Update.
6520         * mipsread.c (mipscoff_new_init): Update.
6521         * mdebugread.c (mdebug_build_psymtabs): Update.
6522         * elfread.c (elf_new_init): Update.
6523         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6524         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6525         * buildsym.h (buildsym_new_init): Don't declare.
6526         * buildsym.c (buildsym_new_init): Remove.
6527
6528 2018-07-16  Tom Tromey  <tom@tromey.com>
6529
6530         * stabsread.h (within_function): Move from buildsym.h.
6531         * stabsread.c (start_stabs): Clear within_function.
6532         * coffread.c (coff_start_symtab): Clear within_function.
6533         * buildsym.h (within_function): Move to stabsread.h.
6534         * buildsym.c (prepare_for_building): Update.
6535
6536 2018-07-16  Tom Tromey  <tom@tromey.com>
6537
6538         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6539         * dwarf2read.c (dwarf2_start_symtab): Don't set
6540         processing_gcc_compilation.
6541         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6542
6543 2018-07-16  Tom Tromey  <tom@tromey.com>
6544
6545         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6546         (next_symbol_text_func): Move from buildsym.h.
6547         * stabsread.c (hashname): Move from buildsym.c.
6548         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6549         (next_symbol_text_func, hashname): Move to stabsread.h.
6550         * buildsym.c: Don't include bcache.h
6551         (hashname): Move to stasbread.c.
6552
6553 2018-07-16  Tom Tromey  <tom@tromey.com>
6554
6555         * buildsym.h (context_stack_size): Don't declare.
6556         * buildsym.c (context_stack_size): New global.
6557
6558 2018-07-16  Tom Tromey  <tom@tromey.com>
6559
6560         * dbxread.c (processing_acc_compilation): New global.
6561         * buildsym.h (processing_acc_compilation): Don't declare.
6562
6563 2018-07-16  Tom Tromey  <tom@tromey.com>
6564
6565         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6566         * dbxread.c (read_ofile_symtab): Update.
6567         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6568         * buildsym.h (last_source_start_addr): Remove.
6569         (set_last_source_start_addr, get_last_source_start_addr):
6570         Declare.
6571         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6572         parameter.
6573         (struct buildsym_compunit) <m_last_source_start_addr>: New
6574         member.
6575         (prepare_for_building): Remove start_addr parameter.
6576         (start_symtab, restart_symtab, end_symtab_get_static_block)
6577         (end_symtab_with_blockvector): Update.
6578         (set_last_source_start_addr, get_last_source_start_addr): New
6579         functions.
6580
6581 2018-07-16  Tom Tromey  <tom@tromey.com>
6582
6583         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6584         member.
6585         (have_line_numbers): Remove.
6586         (record_line, prepare_for_building, end_symtab_get_static_block)
6587         (augment_type_symtab): Update.
6588
6589 2018-07-16  Tom Tromey  <tom@tromey.com>
6590
6591         * buildsym.c (~buildsym_compunit): Free the macro table.
6592         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6593         methods.
6594         <m_pending_macros>: New member.
6595         (pending_macros): Remove.
6596         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6597         (reset_symtab_globals, end_symtab_get_static_block)
6598         (end_symtab_with_blockvector, augment_type_symtab)
6599         (buildsym_init): Update.
6600
6601 2018-07-16  Tom Tromey  <tom@tromey.com>
6602
6603         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6604         parameter.
6605         (buildsym_compunit::set_last_source_file): New method.
6606         <m_last_source_file>: New member.
6607         (prepare_for_building): Remove "name" parameter.
6608         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6609         (last_source_file): Remove.
6610         (set_last_source_file, get_last_source_file): Update.
6611
6612 2018-07-16  Tom Tromey  <tom@tromey.com>
6613
6614         * buildsym.c (prepare_for_building): Add assert.
6615
6616 2018-07-16  Tom Tromey  <tom@tromey.com>
6617
6618         * buildsym.c (~buildsym_compunit): Update.
6619         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6620         (start_subfile, patch_subfile_names)
6621         (end_symtab_with_blockvector): Update.
6622
6623 2018-07-16  Tom Tromey  <tom@tromey.com>
6624
6625         * buildsym.c (struct buildsym_compunit): Add constructor,
6626         destructor, initializers.
6627         (start_buildsym_compunit): Remove.
6628         (free_buildsym_compunit): Use "delete".
6629         (start_symtab, restart_symtab): Use "new".
6630
6631 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6632
6633         * symfile.c (set_objfile_default_section_offset): Remove struct
6634         keyword.
6635
6636 2018-07-14  Stafford Horne  <shorne@gmail.com>
6637
6638         * (Responsible Maintainers): Add myself as or1k maintainer.
6639
6640 2018-07-13  Tom Tromey  <tom@tromey.com>
6641
6642         * symfile.c (set_objfile_default_section_offset): Use extra braces
6643         around initializer.
6644
6645 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6646
6647         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6648         non-branching basr.
6649
6650 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6651
6652         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6653         unittests/cli-utils-selftests.c
6654         * unittests/cli-utils-selftests.c: New file.
6655
6656 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6657
6658         * NEWS: Mention new commands. Mention change to 'thread apply'.
6659
6660 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6661
6662         * thread.c (thr_try_catch_cmd): New function.
6663         (thread_apply_all_command): Handle qcs flags.
6664         (thread_apply_command): Handle qcs flags.
6665         (taas_command): New function.
6666         (tfaas_command): New function.
6667         (_initialize_thread): Update to setup the new commands 'taas
6668         and 'tfaas'. Change doc string for 'thread apply'.
6669
6670 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6671
6672         * stack.c: (trailing_outermost_frame): New function, mostly
6673         extracted from backtrace_command_1.
6674         (leading_innermost_frame): New function.
6675         (backtrace_command_1): Update to call trailing_outermost_frame.
6676         (frame_apply_command_count): New function.
6677         (frame_apply_level_command): New function.
6678         (frame_apply_all_command): New function.
6679         (frame_apply_command): New function.
6680         (faas_command): New function.
6681         (frame_cmd_list): New variable.
6682         (_initialize_stack): Update to setup the new commands 'frame apply'
6683         and 'faas'.
6684
6685 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6686
6687         * cli-utils.c (number_or_range_parser::get_number): Only handle
6688         numbers or convenience var as numbers.
6689         (parse_flags): New function.
6690         (parse_flags_qcs): New function.
6691         (number_or_range_parser::finished): Ensure parsing end is detected
6692         before end of string.
6693         * cli-utils.h (parse_flags): New function.
6694         (parse_flags_qcs): New function.
6695         (number_or_range_parser): Remove m_finished bool.
6696         (number_or_range_parser::skip_range): Set m_in_range to false.
6697
6698 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6699
6700         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6701         on Windows.
6702
6703 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6704             Jan Kratochvil  <jan.kratochvil@redhat.com>
6705             Paul Fertser  <fercerpav@gmail.com>
6706             Tsutomu Seki  <sekiriki@gmail.com>
6707             Pedro Alves  <palves@redhat.com>
6708
6709         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6710         'unittests/parse-connection-spec-selftests.c'.
6711         (COMMON_SFILES): Add 'common/netstuff.c'.
6712         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6713         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6714         * common/netstuff.c: New file.
6715         * common/netstuff.h: New file.
6716         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6717         (wait_for_connect): Update comment.  New parameter
6718         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6719         Use 'sock' directly instead of 'scb->fd'.
6720         (try_connect): New function, with code from 'net_open'.
6721         (net_open): Rewrite main loop to deal with multiple
6722         sockets/addresses.  Handle IPv6-style hostnames; implement
6723         support for IPv6 connections.
6724         * unittests/parse-connection-spec-selftests.c: New file.
6725
6726 2018-07-11  Pedro Alves  <palves@redhat.com>
6727
6728         PR gdb/23377
6729         * remote.c (remote_target::remote_detach_pid): Call
6730         set_current_process.
6731
6732 2018-07-11  Pedro Alves  <palves@redhat.com>
6733
6734         * h8300-tdep.c (h8300_gdbarch_init): Remove
6735         set_gdbarch_ecoff_reg_to_regnum calls.
6736
6737 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6738
6739         PR c++/23373
6740         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6741         offsets/sizes for static members of a class/struct.
6742
6743 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6744
6745         * target-descriptions.c (tdesc_register_bitsize): Rename.
6746         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6747         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6748         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6749
6750 2018-07-10  Tom Tromey  <tom@tromey.com>
6751
6752         * breakpoint.c (moribund_locations): Now static and a
6753         std::vector.
6754         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6755         (build_bpstat_chain, update_global_location_list)
6756         (breakpoint_retire_moribund): Update.
6757         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6758         VEC.
6759
6760 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6761
6762         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6763         (riscv_register_reggroup_p): Use new function, remove unneeded
6764         parenthesis.
6765         (riscv_push_dummy_call): Extend assert to compare against xlen or
6766         flen based on register type.
6767
6768 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6769
6770         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6771
6772 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6773
6774         * remote.c (show_hardware_watchpoint_limit): New function.
6775         (show_hardware_watchpoint_length_limit): New function.
6776         (show_hardware_breakpoint_limit): New function.
6777         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6778         where appropriate, update help text.
6779
6780 2018-07-09  Tom Tromey  <tom@tromey.com>
6781
6782         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6783         (CLIBS): Don't mention NAT_CLIBS.
6784
6785 2018-07-09  Tom Tromey  <tom@tromey.com>
6786
6787         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6788         (LIBGDB_OBS, clean mostlyclean): Update.
6789         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6790
6791 2018-07-09  Tom Tromey  <tom@tromey.com>
6792
6793         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6794         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6795         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6796
6797 2018-07-09  Tom Tromey  <tom@tromey.com>
6798
6799         * Makefile.in (ALLDEPFILES): Remove exec.c.
6800         (COMMON_OBS): Remove exec.o.
6801         (COMMON_SFILES): Add exec.c.
6802
6803 2018-07-09  Tom Tromey  <tom@tromey.com>
6804
6805         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6806
6807 2018-07-09  Tom Tromey  <tom@tromey.com>
6808
6809         * Makefile.in (clean mostlyclean): Remove stamp-version.
6810         (version.c): Depend on stamp-version.
6811         (stamp-version): New rule, from version.c rule.
6812
6813 2018-07-09  Tom Tromey  <tom@tromey.com>
6814
6815         * Makefile.in (init.c): Depend on stamp-init.
6816         (stamp-init): New rule, from init.c rule.
6817         (clean mostlyclean): Remove stamp-init.
6818
6819 2018-07-09  Tom Tromey  <tom@tromey.com>
6820
6821         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6822         SUBDIR_GCC_COMPILE_SRCS.
6823
6824 2018-07-09  Tom Tromey  <tom@tromey.com>
6825
6826         * Makefile.in (init.c): Remove some unused sed rules.
6827
6828 2018-07-09  Tom Tromey  <tom@tromey.com>
6829
6830         * Makefile.in (TSOBS): Remove.
6831         (INIT_FILES): Update.
6832         (LIBGDB_OBS): Update.
6833         (COMMON_SFILES): Add inflow.c.
6834         (SFILES): Remove inflow.c.
6835
6836 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6837
6838         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6839
6840 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6841
6842         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6843         get_saveloc_name, is_signal_frame_name, step_name,
6844         init_remote_name, create_addr_space_name,
6845         destroy_addr_space_name, search_unwind_table_name,
6846         find_dyn_list_name): Constify.
6847
6848 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6849
6850         * darwin-nat.c (darwin_pthread_kill): New function.
6851         (darwin_resume_thread): Use darwin_pthread_kill.
6852
6853 2018-07-05  Tom de Vries  <tdevries@suse.de>
6854
6855         * macroexp.c (macro_buffer) <operator=>: New member function.
6856
6857 2018-07-04  Tom Tromey  <tom@tromey.com>
6858
6859         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6860
6861 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6862
6863         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6864         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6865         * maint.c: Likewise.
6866         * top.c: Likewise.
6867
6868 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6869
6870         * NEWS: Create a new section for the next release branch.
6871         Rename the section of the current branch, now that it has
6872         been cut.
6873
6874 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6875
6876         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6877         * version.in: Bump version to 8.2.50.DATE-git.
6878
6879 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6880             Pedro Alves  <palves@redhat.com>
6881
6882         * linux-nat.c (linux_init_ptrace): Rename to ...
6883         (linux_init_ptrace_procfs): ... this.  Call
6884         linux_proc_init_warnings.
6885         (linux_nat_target::post_attach)
6886         (linux_nat_target::post_startup_inferior): Adjust.
6887         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6888         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6889
6890 2018-07-04  Tom de Vries  <tdevries@suse.de>
6891
6892         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6893         check ...
6894         (read_comp_unit_head): ... here.
6895
6896 2018-07-03  Tom Tromey  <tom@tromey.com>
6897
6898         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6899         (stop_tracing, tstatus_command)
6900         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6901         (print_one_static_tracepoint_marker): Update.
6902         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6903         std::vector.
6904         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6905         VEC.
6906         (all_tracepoints, static_tracepoints_here): Return std::vector.
6907
6908 2018-07-03  Tom Tromey  <tom@tromey.com>
6909
6910         * common/ptid.c (ptid_equal): Remove.
6911         * common/ptid.h (ptid_equal): Don't declare.
6912         * ada-tasks.c: Update.
6913         * breakpoint.c: Update.
6914         * common/agent.c: Update.
6915         * corelow.c: Update.
6916         * darwin-nat-info.c: Update.
6917         * darwin-nat.c: Update.
6918         * dcache.c: Update.
6919         * dtrace-probe.c: Update.
6920         * dummy-frame.c: Update.
6921         * fbsd-nat.c: Update.
6922         * frame.c: Update.
6923         * gdbthread.h: Update.
6924         * gnu-nat.c: Update.
6925         * go32-nat.c: Update.
6926         * inf-loop.c: Update.
6927         * inf-ptrace.c: Update.
6928         * infcall.c: Update.
6929         * infcmd.c: Update.
6930         * inflow.c: Update.
6931         * infrun.c: Update.
6932         * linux-fork.c: Update.
6933         * linux-nat.c: Update.
6934         * linux-thread-db.c: Update.
6935         * mi/mi-cmd-var.c: Update.
6936         * mi/mi-interp.c: Update.
6937         * mi/mi-main.c: Update.
6938         * nto-procfs.c: Update.
6939         * ppc-linux-tdep.c: Update.
6940         * procfs.c: Update.
6941         * python/py-inferior.c: Update.
6942         * python/py-record-btrace.c: Update.
6943         * python/py-record.c: Update.
6944         * ravenscar-thread.c: Update.
6945         * regcache.c: Update.
6946         * remote-sim.c: Update.
6947         * remote.c: Update.
6948         * sol-thread.c: Update.
6949         * solib.c: Update.
6950         * target.c: Update.
6951         * tui/tui-stack.c: Update.
6952         * varobj.c: Update.
6953         * windows-nat.c: Update.
6954         * windows-tdep.c: Update.
6955
6956 2018-07-03  Tom Tromey  <tom@tromey.com>
6957
6958         * common/ptid.c (ptid_match): Remove.
6959         * common/ptid.h (ptid_match): Don't declare.
6960         * fbsd-nat.c: Update.
6961         * infcmd.c: Update.
6962         * infrun.c: Update.
6963         * linux-nat.c: Update.
6964         * record-btrace.c: Update.
6965         * regcache.c: Update.
6966         * remote.c: Update.
6967
6968 2018-07-03  Tom Tromey  <tom@tromey.com>
6969
6970         * common/ptid.c (ptid_tid_p): Remove.
6971         * common/ptid.h (ptid_tid_p): Don't declare.
6972         * sol-thread.c: Update.
6973
6974 2018-07-03  Tom Tromey  <tom@tromey.com>
6975
6976         * common/ptid.c (ptid_lwp_p): Remove.
6977         * common/ptid.h (ptid_lwp_p): Don't declare.
6978         * fbsd-nat.c: Update.
6979         * linux-nat.c: Update.
6980         * nat/linux-procfs.c: Update.
6981         * nat/x86-linux-dregs.c: Update.
6982         * sol-thread.c: Update.
6983
6984 2018-07-03  Tom Tromey  <tom@tromey.com>
6985
6986         * common/ptid.c (ptid_is_pid): Remove.
6987         * common/ptid.h (ptid_is_pid): Don't declare.
6988         * infrun.c: Update.
6989         * linux-nat.c: Update.
6990         * mi/mi-interp.c: Update.
6991         * remote.c: Update.
6992         * thread.c: Update.
6993
6994 2018-07-03  Tom Tromey  <tom@tromey.com>
6995
6996         * common/ptid.c (ptid_get_tid): Remove.
6997         * common/ptid.h (ptid_get_tid): Don't declare.
6998         * ada-tasks.c: Update.
6999         * aix-thread.c: Update.
7000         * bsd-uthread.c: Update.
7001         * darwin-nat.c: Update.
7002         * fbsd-nat.c: Update.
7003         * i386-darwin-nat.c: Update.
7004         * infrun.c: Update.
7005         * linux-tdep.c: Update.
7006         * nto-procfs.c: Update.
7007         * ppc-ravenscar-thread.c: Update.
7008         * python/py-infthread.c: Update.
7009         * ravenscar-thread.c: Update.
7010         * sol-thread.c: Update.
7011         * sparc-ravenscar-thread.c: Update.
7012         * windows-nat.c: Update.
7013
7014 2018-07-03  Tom Tromey  <tom@tromey.com>
7015
7016         * common/ptid.c (ptid_get_lwp): Remove.
7017         * common/ptid.h (ptid_get_lwp): Don't declare.
7018         * aarch64-linux-nat.c: Update.
7019         * ada-tasks.c: Update.
7020         * aix-thread.c: Update.
7021         * amd64-linux-nat.c: Update.
7022         * arm-linux-nat.c: Update.
7023         * corelow.c: Update.
7024         * fbsd-nat.c: Update.
7025         * fbsd-tdep.c: Update.
7026         * gnu-nat.c: Update.
7027         * i386-cygwin-tdep.c: Update.
7028         * i386-gnu-nat.c: Update.
7029         * i386-linux-nat.c: Update.
7030         * ia64-linux-nat.c: Update.
7031         * inf-ptrace.c: Update.
7032         * infrun.c: Update.
7033         * linux-fork.c: Update.
7034         * linux-nat.c: Update.
7035         * linux-tdep.c: Update.
7036         * linux-thread-db.c: Update.
7037         * mips-linux-nat.c: Update.
7038         * nat/aarch64-linux-hw-point.c: Update.
7039         * nat/aarch64-linux.c: Update.
7040         * nat/linux-btrace.c: Update.
7041         * nat/linux-osdata.c: Update.
7042         * nat/linux-procfs.c: Update.
7043         * nat/x86-linux-dregs.c: Update.
7044         * obsd-nat.c: Update.
7045         * ppc-fbsd-nat.c: Update.
7046         * ppc-linux-nat.c: Update.
7047         * procfs.c: Update.
7048         * python/py-infthread.c: Update.
7049         * ravenscar-thread.c: Update.
7050         * remote.c: Update.
7051         * s390-linux-nat.c: Update.
7052         * sol-thread.c: Update.
7053         * sol2-tdep.c: Update.
7054         * spu-linux-nat.c: Update.
7055         * x86-linux-nat.c: Update.
7056         * xtensa-linux-nat.c: Update.
7057
7058 2018-07-03  Tom Tromey  <tom@tromey.com>
7059
7060         * common/ptid.c (ptid_get_pid): Remove.
7061         * common/ptid.h (ptid_get_pid): Don't declare.
7062         * aarch64-linux-nat.c: Update.
7063         * ada-lang.c: Update.
7064         * aix-thread.c: Update.
7065         * alpha-bsd-nat.c: Update.
7066         * amd64-fbsd-nat.c: Update.
7067         * amd64-linux-nat.c: Update.
7068         * arm-linux-nat.c: Update.
7069         * arm-nbsd-nat.c: Update.
7070         * auxv.c: Update.
7071         * break-catch-syscall.c: Update.
7072         * breakpoint.c: Update.
7073         * bsd-uthread.c: Update.
7074         * corelow.c: Update.
7075         * ctf.c: Update.
7076         * darwin-nat.c: Update.
7077         * fbsd-nat.c: Update.
7078         * fbsd-tdep.c: Update.
7079         * gcore.c: Update.
7080         * gnu-nat.c: Update.
7081         * hppa-nbsd-nat.c: Update.
7082         * hppa-obsd-nat.c: Update.
7083         * i386-fbsd-nat.c: Update.
7084         * ia64-linux-nat.c: Update.
7085         * inf-ptrace.c: Update.
7086         * infcmd.c: Update.
7087         * inferior.c: Update.
7088         * inferior.h: Update.
7089         * inflow.c: Update.
7090         * infrun.c: Update.
7091         * linux-fork.c: Update.
7092         * linux-nat.c: Update.
7093         * linux-tdep.c: Update.
7094         * linux-thread-db.c: Update.
7095         * m68k-bsd-nat.c: Update.
7096         * mi/mi-interp.c: Update.
7097         * mi/mi-main.c: Update.
7098         * mips-linux-nat.c: Update.
7099         * mips-nbsd-nat.c: Update.
7100         * mips64-obsd-nat.c: Update.
7101         * nat/aarch64-linux-hw-point.c: Update.
7102         * nat/aarch64-linux.c: Update.
7103         * nat/linux-btrace.c: Update.
7104         * nat/linux-osdata.c: Update.
7105         * nat/linux-procfs.c: Update.
7106         * nat/x86-linux-dregs.c: Update.
7107         * nto-procfs.c: Update.
7108         * obsd-nat.c: Update.
7109         * ppc-linux-nat.c: Update.
7110         * ppc-nbsd-nat.c: Update.
7111         * ppc-obsd-nat.c: Update.
7112         * proc-service.c: Update.
7113         * procfs.c: Update.
7114         * python/py-inferior.c: Update.
7115         * python/py-infthread.c: Update.
7116         * ravenscar-thread.c: Update.
7117         * record.c: Update.
7118         * remote-sim.c: Update.
7119         * remote.c: Update.
7120         * rs6000-nat.c: Update.
7121         * s390-linux-nat.c: Update.
7122         * sh-nbsd-nat.c: Update.
7123         * sol-thread.c: Update.
7124         * sparc-nat.c: Update.
7125         * sparc64-tdep.c: Update.
7126         * spu-linux-nat.c: Update.
7127         * spu-tdep.c: Update.
7128         * target-debug.h: Update.
7129         * target.c: Update.
7130         * thread.c: Update.
7131         * tid-parse.c: Update.
7132         * tracefile-tfile.c: Update.
7133         * vax-bsd-nat.c: Update.
7134         * windows-nat.c: Update.
7135         * x86-linux-nat.c: Update.
7136         * x86-nat.c: Update.
7137
7138 2018-07-03  Tom Tromey  <tom@tromey.com>
7139
7140         * common/ptid.c (pid_to_ptid): Remove.
7141         * common/ptid.h (pid_to_ptid): Don't declare.
7142         * aix-thread.c: Update.
7143         * arm-linux-nat.c: Update.
7144         * common/ptid.c: Update.
7145         * common/ptid.h: Update.
7146         * corelow.c: Update.
7147         * ctf.c: Update.
7148         * darwin-nat.c: Update.
7149         * fbsd-nat.c: Update.
7150         * fork-child.c: Update.
7151         * gnu-nat.c: Update.
7152         * go32-nat.c: Update.
7153         * inf-ptrace.c: Update.
7154         * infcmd.c: Update.
7155         * inferior.c: Update.
7156         * infrun.c: Update.
7157         * linux-fork.c: Update.
7158         * linux-nat.c: Update.
7159         * nat/aarch64-linux-hw-point.c: Update.
7160         * nat/fork-inferior.c: Update.
7161         * nat/x86-linux-dregs.c: Update.
7162         * nto-procfs.c: Update.
7163         * obsd-nat.c: Update.
7164         * procfs.c: Update.
7165         * progspace.c: Update.
7166         * remote.c: Update.
7167         * rs6000-nat.c: Update.
7168         * s390-linux-nat.c: Update.
7169         * sol-thread.c: Update.
7170         * spu-linux-nat.c: Update.
7171         * target.c: Update.
7172         * top.c: Update.
7173         * tracefile-tfile.c: Update.
7174         * windows-nat.c: Update.
7175
7176 2018-07-03  Tom Tromey  <tom@tromey.com>
7177
7178         * common/ptid.h (ptid_build): Don't declare.
7179         * common/ptid.c (ptid_build): Remove.
7180         * aix-thread.c: Update.
7181         * bsd-kvm.c: Update.
7182         * bsd-uthread.c: Update.
7183         * common/agent.c: Update.
7184         * common/ptid.c: Update.
7185         * common/ptid.h: Update.
7186         * corelow.c: Update.
7187         * darwin-nat.c: Update.
7188         * fbsd-nat.c: Update.
7189         * gnu-nat.c: Update.
7190         * linux-fork.c: Update.
7191         * linux-nat.c: Update.
7192         * linux-thread-db.c: Update.
7193         * nat/linux-osdata.c: Update.
7194         * nat/linux-procfs.c: Update.
7195         * nto-procfs.c: Update.
7196         * obsd-nat.c: Update.
7197         * proc-service.c: Update.
7198         * procfs.c: Update.
7199         * ravenscar-thread.c: Update.
7200         * remote-sim.c: Update.
7201         * remote.c: Update.
7202         * sol-thread.c: Update.
7203         * target.c: Update.
7204         * windows-nat.c: Update.
7205
7206 2018-07-03  Tom Tromey  <tom@tromey.com>
7207
7208         * infrun.c (follow_exec): Use exit_inferior_silent.
7209         * inferior.c (exit_inferior_num_silent): Remove.
7210         * inferior.h (exit_inferior_num_silent): Don't declare.
7211
7212 2018-07-03  Tom Tromey  <tom@tromey.com>
7213
7214         PR cli/23340:
7215         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7216         inferior_ptid on error.
7217
7218 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7219             Simon Marchi  <simon.marchi@polymtl.ca>
7220
7221         PR tdep/8282
7222         * disasm.h (gdb_disassembler): Add
7223         `m_disassembler_options_holder'. member
7224         * disasm.c (get_all_disassembler_options): New function.
7225         (gdb_disassembler::gdb_disassembler): Use it.
7226         (gdb_buffered_insn_length_init_dis): Likewise.
7227         (gdb_buffered_insn_length): Adjust accordingly.
7228         (set_disassembler_options): Handle options with arguments.
7229         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7230         line if showing options with descriptions.
7231         (disassembler_options_completer): Adapt to using the
7232         `disasm_options_and_args_t' structure.
7233         * mips-tdep.c (mips_disassembler_options): New variable.
7234         (mips_disassembler_options_o32): Likewise.
7235         (mips_disassembler_options_n32): Likewise.
7236         (mips_disassembler_options_n64): Likewise.
7237         (gdb_print_insn_mips): Don't set `disassembler_options'.
7238         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7239         functions.
7240         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7241         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7242         `gdbarch_disassembler_options_implicit' and
7243         `gdbarch_valid_disassembler_options'.
7244         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7245         `disasm_options_and_args_t' structure.
7246         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7247         method.
7248         (valid_disassembler_options): Switch from `disasm_options_t' to
7249         the `disasm_options_and_args_t' structure.
7250         * NEWS: Document `set disassembler-options' support for the MIPS
7251         target.
7252         * gdbarch.h: Regenerate.
7253         * gdbarch.c: Regenerate.
7254
7255 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7256
7257         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7258
7259 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7260
7261         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7262         parameter in call to amd64_target_description.
7263         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7264         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7265         (amd64fbsd_init_abi): Likewise.
7266         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7267         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7268         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7269         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7270
7271 2018-06-29  Pedro Alves  <palves@redhat.com>
7272
7273         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7274         "segments" parameter.
7275         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7276         (_initialize_amd64_tdep): Update call to
7277         amd64_create_target_description.
7278         (amd64_target_description): Add "segments" parameter.  Adjust
7279         the implementation to use it.
7280         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7281         call to amd64_create_target_description.
7282         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7283         * gdb/arch/amd64.h (amd64_create_target_description): Add
7284         "segments" register.
7285         * gdb/arch/amd64.c (amd64_create_target_description): Add
7286         "segments" parameter.  Call create_feature_i386_64bit_segments
7287         only if SEGMENTS is true.
7288         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7289         call to amd64_create_target_description.
7290
7291 2018-06-29  Pedro Alves  <palves@redhat.com>
7292
7293         * thread.c (thread_target_id_str): New, factored out from ...
7294         (print_thread_info_1): ... here.  Use it to compute the max
7295         "Target Id" column width.
7296
7297 2018-06-29  Pedro Alves  <palves@redhat.com>
7298
7299         * remote.c (remote_target::extra_thread_info): Delete
7300         'display_buf' and 'n' locals.  from the cache, regardless of
7301         packet mechanims is in use.  Use cache for qThreadExtra and qP
7302         methods too.
7303
7304 2018-06-29  Pedro Alves  <palves@redhat.com>
7305
7306         * blockframe.c (find_pc_sect_containing_function): New function.
7307         * breakpoint.c (print_breakpoint_location): Don't call
7308         find_pc_sect_function.
7309         * linespec.c (create_sals_line_offset): Record the location's
7310         symbol in the sal.
7311         * linespec.c (convert_address_location_to_sals): Fill in sal's
7312         symbol with find_pc_sect_containing_function.
7313         * symtab.c (find_function_start_sal): Rename to ...
7314         (find_function_start_sal_1): ... this.
7315         (find_function_start_sal): Reimplement as wrapper around
7316         find_function_start_sal_1, and use
7317         find_pc_sect_containing_function to fill in the sal's symbol.
7318         (find_function_start_sal(symbol*, bool)): Adjust.
7319         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7320         comments.
7321         (find_pc_sect_containing_function): Declare.
7322
7323 2018-06-29  Pedro Alves  <palves@redhat.com>
7324
7325         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7326         true if the the location has no symbol.
7327
7328 2018-06-28  Tom Tromey  <tom@tromey.com>
7329
7330         * NEWS: Mention --enable-codesign.
7331         * silent-rules.mk (ECHO_SIGN): New variable.
7332         * configure.ac: Add --enable-codesign.
7333         * configure: Rebuild.
7334         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7335         (gdb$(EXEEXT)): Optionally invoke codesign.
7336
7337 2018-06-28  Pedro Alves  <palves@redhat.com>
7338
7339         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7340         comments.
7341         (switch_to_thread_no_regs): Adjust comment.
7342         * infcmd.c (stop_pc): Delete.
7343         (post_create_inferior, info_program_command): Replace references
7344         to stop_pc with references to thread_info->suspend.stop_pc.
7345         * inferior.h (stop_pc): Delete declaration.
7346         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7347         (handle_inferior_event_1, handle_signal_stop)
7348         (process_event_stop_test, keep_going_stepped_thread)
7349         (handle_step_into_function, handle_step_into_function_backward)
7350         (print_stop_location): Replace references to stop_pc with
7351         references to thread_info->suspend.stop_pc.
7352         (struct infcall_suspend_state) <stop_pc>: Delete field.
7353         (save_infcall_suspend_state, restore_infcall_suspend_state):
7354         Remove references to inf_stat->stop_pc.
7355         * linux-fork.c (fork_load_infrun_state): Likewise.
7356         * record-btrace.c (record_btrace_set_replay): Likewise.
7357         * record-full.c (record_full_goto_entry): Likewise.
7358         * remote.c (print_one_stopped_thread): Likewise.
7359         * target.c (target_resume): Extend comment.
7360         * thread.c (set_executing_thread): New.
7361         (set_executing): Use it.
7362         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7363         Remove references to stop_pc.
7364
7365 2018-06-28  Pedro Alves  <palves@redhat.com>
7366
7367         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7368         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7369
7370 2018-06-28  Tom Tromey  <tom@tromey.com>
7371
7372         * coffread.c (coff_symfile_finish): Update.
7373         * xcoffread.c (xcoff_symfile_finish): Update.
7374         * elfread.c (elf_symfile_finish): Update.
7375         * symfile.h (dwarf2_free_objfile): Don't declare.
7376         * dwarf2read.c (_initialize_dwarf2_read): Use
7377         register_objfile_data_with_cleanup.
7378         (dwarf2_free_objfile): Now static.  Change signature.
7379
7380 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7381
7382         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7383         option "-o" to add-symbol-file-load to add an offset to each
7384         section's load address.
7385         * symfile.c (set_objfile_default_section_offset): New function.
7386
7387 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7388
7389         * symfile.c (add_symbol_file_command): Make sure that sections
7390         with the same name are sorted in the same order.
7391
7392 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7393
7394         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7395         require the second argument.  If omitted, load sections at the
7396         addresses specified in the file.
7397
7398 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7399
7400         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7401         (_initialize_symfile): Add option "-o" to symbol-file to add an
7402         offset to each section of the symbol file.
7403
7404 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7405
7406         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7407
7408 2018-06-27  Tom Tromey  <tom@tromey.com>
7409
7410         * stack.c (_initialize_stack): Update "func" help text.
7411
7412 2018-06-27  Tom Tromey  <tom@tromey.com>
7413
7414         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7415         std::vector.
7416         (unwind_infopy_str, pyuw_create_unwind_info)
7417         (unwind_infopy_add_saved_register, pyuw_sniffer)
7418         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7419         Update.
7420         (struct saved_reg): Add constructor.
7421         <value>: Now a gdbpy_ref<>.
7422
7423 2018-06-27  Tom Tromey  <tom@tromey.com>
7424
7425         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7426
7427 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7428
7429         * gdb-gdb.py.in: Format using autopep8.
7430
7431 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7432
7433         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7434         (type_lookup_function): Recognize CORE_ADDR values.
7435
7436 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7437
7438         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7439         print tag_name.
7440
7441 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7442
7443         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7444         <__lt__>: Add.
7445
7446 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7447
7448         * gdb-gdb.py: Move to...
7449         * gdb-gdb.py.in: ... here.
7450         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7451         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7452         dependencies.
7453         (distclean): Remove gdb-gdb.py when cleaning.
7454         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7455         * configure: Re-generate.
7456
7457 2018-06-27  Pedro Alves  <palves@redhat.com>
7458
7459         * proc-service.c (get_ps_regcache): New.
7460         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7461         (ps_lsetfpregs): Use it.
7462
7463 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7464
7465         PR gdb/21695
7466         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7467         declaration.
7468         (dwarf_decode_lines_1): Adjust.
7469
7470 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7471
7472         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7473         override.
7474         <info_proc>: Likewise.
7475
7476 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7477
7478         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7479         to windows_fetch_one_register, and only handle the case of
7480         fetching one register.  Move the code that reloads the context
7481         and iterates over all registers if R is negative to...
7482         (windows_nat_target::fetch_registers): ... here.
7483         (do_windows_store_inferior_registers): Rename to
7484         windows_store_one_register, and only handle the case of storing
7485         one register.  Move the code that handles the case where r is
7486         negative to...
7487         (windows_nat_target::store_registers) ... here.
7488
7489 2018-06-26  Tom Tromey  <tom@tromey.com>
7490
7491         PR rust/22574:
7492         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7493         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7494         Update.
7495         (rust_internal_print_type): Add podata parameter.
7496         (rust_print_type): Update.
7497
7498 2018-06-26  Tom Tromey  <tom@tromey.com>
7499
7500         * typeprint.h (struct print_offset_data) <update, finish,
7501         maybe_print_hole>: New methods.
7502         <indentation>: New constant.
7503         * typeprint.c (print_offset_data::indentation): Define.
7504         (print_offset_data::maybe_print_hole, print_offset_data::update)
7505         (print_offset_data::finish): Move from c-typeprint.c and rename.
7506         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7507         (print_spaces_filtered_with_print_options): Update.
7508         (c_print_type_union_field_offset, maybe_print_hole)
7509         (c_print_type_struct_field_offset): Move to typeprint.c and
7510         rename.
7511         (c_type_print_base_struct_union): Update.
7512
7513 2018-06-25  Pedro Alves  <palves@redhat.com>
7514
7515         * gdbthread.h (thread_info_ref, delete_thread)
7516         (delete_thread_silent, first_thread_of_inferior)
7517         (any_thread_of_inferior, switch_to_thread)
7518         (enable_thread_stack_temporaries)
7519         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7520         (get_last_thread_stack_temporary)
7521         (value_in_thread_stack_temporaries, can_access_registers_thread):
7522         Spell out "struct thread_info" instead of just "thread_info".
7523         * inferior.h (notice_new_inferior): Likewise.
7524
7525 2018-06-25  Pedro Alves  <palves@redhat.com>
7526
7527         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7528         pass thread_info pointer to delete_thread.
7529         (windows_nat_target::detach): Pass inferior pointer to
7530         detach_inferior.
7531         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7532         delete_thread.
7533         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7534         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7535         and pass a thread_info pointer to delete_thread.
7536         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7537         pass thread_info pointer to delete_thread.
7538         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7539         delete_thread_silent call.
7540         * procfs.c (procfs_target::detach): Pass inferior pointer to
7541         detach_inferior.
7542         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7543         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7544         delete_thread_silent call.
7545         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7546         pass thread_info pointer to delete_thread.
7547         (windows_nat_target::detach): Pass inferior pointer to
7548         delete_inferior.
7549
7550 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7551
7552         * regcache.c (readable_regcache::read_part): Fix asserts.
7553         (reg_buffer::raw_collect_part): New function.
7554         (regcache::write_part): Fix asserts.
7555         (reg_buffer::raw_supply_part): New function.
7556         (regcache::transfer_regset_register): New helper function.
7557         (regcache::transfer_regset): Call new functions.
7558         (regcache_supply_regset): Use gdb_byte*.
7559         (regcache::supply_regset): Likewise.
7560         (regcache_collect_regset): Likewise.
7561         (regcache::collect_regset): Likewise.
7562         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7563         (reg_buffer::raw_supply_part): Likewise.
7564         (regcache::transfer_regset_register): Likewise.
7565         (regcache::transfer_regset): Use gdb_byte*.
7566
7567 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7568
7569         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7570
7571 2018-06-21  Pedro Alves  <palves@redhat.com>
7572
7573         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7574         instead of a ptid_t.  All callers adjusted.
7575         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7576         adjusted.
7577         (print_ada_task_info, display_current_task_id, task_command_1):
7578         Adjust.
7579         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7580         inferior_thread.
7581         (breakpoint_kind): Adjust.
7582         (remove_breakpoints_pid): Rename to ...
7583         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7584         pointer.  All callers adjusted.
7585         (bpstat_clear_actions): Use inferior_thread.
7586         (get_bpstat_thread): New.
7587         (bpstat_do_actions): Use it.
7588         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7589         to take a thread_info pointer.  All callers adjusted.
7590         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7591         (breakpoint_re_set_thread): Use inferior_thread.
7592         * breakpoint.h (struct inferior): Forward declare.
7593         (bpstat_stop_status): Update.
7594         (remove_breakpoints_pid): Delete.
7595         (remove_breakpoints_inf): New.
7596         * bsd-uthread.c (bsd_uthread_target::wait)
7597         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7598         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7599         (maint_btrace_packet_history_cmd)
7600         (maint_btrace_clear_packet_history_cmd): Adjust.
7601         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7602         inferior_thread.
7603         * cli/cli-interp.c: Include "inferior.h".
7604         * common/refcounted-object.h (struct
7605         refcounted_object_ref_policy): New.
7606         * compile/compile-object-load.c: Include gdbthread.h.
7607         (store_regs): Use inferior_thread.
7608         * corelow.c (core_target::close): Use current_inferior.
7609         (core_target_open): Adjust to use first_thread_of_inferior and use
7610         the current inferior.
7611         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7612         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7613         <thread>: ... this new field.  All references adjusted.
7614         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7615         Take a thread_info pointer instead of a ptid_t.
7616         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7617         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7618         thread_info pointer instead of a ptid_t.
7619         * elfread.c: Include "inferior.h".
7620         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7621         Use inferior_thread.
7622         * eval.c (evaluate_subexp): Likewise.
7623         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7624         inferior_thread.
7625         * gdb_proc_service.h (struct thread_info): Forward declare.
7626         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7627         <thread>: ... this new field.  All references adjusted.
7628         * gdbarch.h, gdbarch.c: Regenerate.
7629         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7630         'thread' parameter.  All implementations and callers adjusted.
7631         * gdbthread.h (thread_info) <set_running>: New method.
7632         (delete_thread, delete_thread_silent): Take a thread_info pointer
7633         instead of a ptid.
7634         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7635         (first_thread_of_process): Delete, replaced by ...
7636         (first_thread_of_inferior): ... this new function.  All callers
7637         adjusted.
7638         (any_live_thread_of_process): Delete, replaced by ...
7639         (any_live_thread_of_inferior): ... this new function.  All callers
7640         adjusted.
7641         (switch_to_thread, switch_to_no_thread): Declare.
7642         (is_executing): Delete.
7643         (enable_thread_stack_temporaries): Update comment.
7644         <enable_thread_stack_temporaries>: Take a thread_info pointer
7645         instead of a ptid_t.  Incref the thread.
7646         <~enable_thread_stack_temporaries>: Decref the thread.
7647         <m_ptid>: Delete
7648         <m_thr>: New.
7649         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7650         (get_last_thread_stack_temporary)
7651         (value_in_thread_stack_temporaries, can_access_registers_thread):
7652         Take a thread_info pointer instead of a ptid_t.  All callers
7653         adjusted.
7654         * infcall.c (get_call_return_value): Use inferior_thread.
7655         (run_inferior_call): Work with thread pointers instead of ptid_t.
7656         (call_function_by_hand_dummy): Work with thread pointers instead
7657         of ptid_t.  Use thread_info_ref.
7658         * infcmd.c (proceed_thread_callback): Access thread's state
7659         directly.
7660         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7661         access thread's state directly.
7662         (continue_command): Use inferior_thread.
7663         (info_program_command): Use find_thread_ptid and access thread
7664         state directly.
7665         (proceed_after_attach_callback): Use thread state directly.
7666         (notice_new_inferior): Take a thread_info pointer instead of a
7667         ptid_t.  All callers adjusted.
7668         (exit_inferior): Take an inferior pointer instead of a pid.  All
7669         callers adjusted.
7670         (exit_inferior_silent): New.
7671         (detach_inferior): Delete.
7672         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7673         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7674         (detach_inferior_command, kill_inferior_command): Use
7675         find_inferior_id instead of valid_gdb_inferior_id and
7676         gdb_inferior_id_to_pid.
7677         (inferior_command): Use inferior and thread pointers.
7678         * inferior.h (struct thread_info): Forward declare.
7679         (notice_new_inferior): Take a thread_info pointer instead of a
7680         ptid_t.  All callers adjusted.
7681         (detach_inferior): Delete declaration.
7682         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7683         instead of a pid.  All callers adjusted.
7684         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7685         (valid_gdb_inferior_id): Delete.
7686         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7687         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7688         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7689         ...
7690         <inf>: ... this new field.
7691         <step_ptid>: Delete, replaced by ...
7692         <step_thread>: ... this new field.
7693         (get_displaced_stepping_state): Take an inferior pointer instead
7694         of a pid.  All callers adjusted.
7695         (displaced_step_in_progress_any_inferior): Adjust.
7696         (displaced_step_in_progress_thread): Take a thread pointer instead
7697         of a ptid_t.  All callers adjusted.
7698         (displaced_step_in_progress, add_displaced_stepping_state): Take
7699         an inferior pointer instead of a pid.  All callers adjusted.
7700         (get_displaced_step_closure_by_addr): Adjust.
7701         (remove_displaced_stepping_state): Take an inferior pointer
7702         instead of a pid.  All callers adjusted.
7703         (displaced_step_prepare_throw, displaced_step_prepare)
7704         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7705         All callers adjusted.
7706         (start_step_over): Adjust.
7707         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7708         displaced step queue.
7709         (do_target_resume): Adjust.
7710         (fetch_inferior_event): Use inferior_thread.
7711         (context_switch, get_inferior_stop_soon): Take an
7712         execution_control_state pointer instead of a ptid_t.  All callers
7713         adjusted.
7714         (switch_to_thread_cleanup): Delete.
7715         (stop_all_threads): Use scoped_restore_current_thread.
7716         * inline-frame.c: Include "gdbthread.h".
7717         (inline_state) <inline_state>: Take a thread pointer instead of a
7718         ptid_t.  All callers adjusted.
7719         <ptid>: Delete, replaced by ...
7720         <thread>: ... this new field.
7721         (find_inline_frame_state): Take a thread pointer instead of a
7722         ptid_t.  All callers adjusted.
7723         (skip_inline_frames, step_into_inline_frame)
7724         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7725         pointer instead of a ptid_t.  All callers adjusted.
7726         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7727         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7728         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7729         pointers directly.
7730         * linux-nat.c (get_detach_signal): Likewise.
7731         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7732         (thread_db_notice_clone): Adjust.
7733         (thread_db_find_new_threads_silently)
7734         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7735         a thread pointer instead of a ptid_t.  All callers adjusted.
7736         * mi/mi-cmd-var.c: Include "inferior.h".
7737         (mi_cmd_var_update_iter): Update to use thread pointers.
7738         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7739         inferior directly.
7740         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7741         out to ...
7742         (mi_output_running): ... this new function.
7743         (mi_on_resume_1): Adjust to use it.
7744         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7745         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7746         directly.
7747         (interrupt_thread_callback): : Adjust to use thread and inferior
7748         pointers.
7749         * proc-service.c: Include "gdbthread.h".
7750         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7751         * progspace-and-thread.c: Include "inferior.h".
7752         * progspace.c: Include "inferior.h".
7753         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7754         hold a reference to an inferior_object.
7755         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7756         inferior_thread.
7757         * python/py-inferior.c (struct inferior_object): Give the type a
7758         tag name instead of a typedef.
7759         (python_on_normal_stop): No need to check if the current thread is
7760         listed.
7761         (inferior_to_inferior_object): Change return type to
7762         inferior_object.  All callers adjusted.
7763         (find_thread_object): Delete, bits factored out to ...
7764         (thread_to_thread_object): ... this new function.
7765         * python/py-infthread.c (create_thread_object): Use
7766         inferior_to_inferior_object.
7767         (thpy_is_stopped): Use thread pointer directly.
7768         (gdbpy_selected_thread): Use inferior_thread.
7769         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7770         field, replaced with ...
7771         <thread>: ... this new field.  All users adjusted.
7772         (btpy_insn_or_gap_new): Drop const.
7773         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7774         callers adjusted.
7775         * python/py-record.c: Include "gdbthread.h".
7776         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7777         a ptid_t.  All callers adjusted.
7778         (gdbpy_current_recording): Use inferior_thread.
7779         * python/py-record.h (recpy_record_object) <ptid>: Delete
7780         field, replaced with ...
7781         <thread>: ... this new field.  All users adjusted.
7782         (recpy_element_object) <ptid>: Delete
7783         field, replaced with ...
7784         <thread>: ... this new field.  All users adjusted.
7785         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7786         a ptid_t.  All callers adjusted.
7787         * python/py-threadevent.c: Include "gdbthread.h".
7788         (get_event_thread): Use thread_to_thread_object.
7789         * python/python-internal.h (struct inferior_object): Forward
7790         declare.
7791         (find_thread_object, find_inferior_object): Delete declarations.
7792         (thread_to_thread_object, inferior_to_inferior_object): New
7793         declarations.
7794         * record-btrace.c: Include "inferior.h".
7795         (require_btrace_thread): Use inferior_thread.
7796         (record_btrace_frame_sniffer)
7797         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7798         (get_thread_current_frame): Use scoped_restore_current_thread and
7799         switch_to_thread.
7800         (get_thread_current_frame): Use thread pointer directly.
7801         (record_btrace_replay_at_breakpoint): Use thread's inferior
7802         pointer directly.
7803         * record-full.c: Include "inferior.h".
7804         * regcache.c: Include "gdbthread.h".
7805         (get_thread_arch_regcache): Use the inferior's address space
7806         directly.
7807         (get_thread_regcache, registers_changed_thread): New.
7808         * regcache.h (get_thread_regcache(thread_info *thread)): New
7809         overload.
7810         (registers_changed_thread): New.
7811         (remote_target) <remote_detach_1>: Swap order of parameters.
7812         (remote_add_thread): <remote_add_thread>: Return the new thread.
7813         (get_remote_thread_info(ptid_t)): New overload.
7814         (remote_target::remote_notice_new_inferior): Use thread pointers
7815         directly.
7816         (remote_target::process_initial_stop_replies): Use
7817         thread_info::set_running.
7818         (remote_target::remote_detach_1, remote_target::detach)
7819         (extended_remote_target::detach): Adjust.
7820         * stack.c (frame_show_address): Use inferior_thread.
7821         * target-debug.h (target_debug_print_thread_info_pp): New.
7822         * target-delegates.c: Regenerate.
7823         * target.c (default_thread_address_space): Delete.
7824         (memory_xfer_partial_1): Use current_inferior.
7825         (target_detach): Use current_inferior.
7826         (target_thread_address_space): Delete.
7827         (generic_mourn_inferior): Use current_inferior.
7828         * target.h (struct target_ops) <thread_address_space>: Delete.
7829         (target_thread_address_space): Delete.
7830         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7831         pointers directly.
7832         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7833         thread pointer instead of a ptid_t.  Adjust all callers.
7834         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7835         (first_thread_of_process): Delete, replaced by ...
7836         (first_thread_of_inferior): ... this new function.  All callers
7837         adjusted.
7838         (any_thread_of_process): Rename to ...
7839         (any_thread_of_inferior): ... this, and take an inferior pointer.
7840         (any_live_thread_of_process): Rename to ...
7841         (any_live_thread_of_inferior): ... this, and take an inferior
7842         pointer.
7843         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7844         (value_in_thread_stack_temporaries)
7845         (get_last_thread_stack_temporary): Take a thread pointer instead
7846         of a ptid_t.  Adjust all callers.
7847         (thread_info::set_running): New.
7848         (validate_registers_access): Use inferior_thread.
7849         (can_access_registers_ptid): Rename to ...
7850         (can_access_registers_thread): ... this, and take a thread
7851         pointer.
7852         (print_thread_info_1): Adjust to compare thread pointers instead
7853         of ptids.
7854         (switch_to_no_thread, switch_to_thread): Make extern.
7855         (scoped_restore_current_thread::~scoped_restore_current_thread):
7856         Use m_thread pointer directly.
7857         (scoped_restore_current_thread::scoped_restore_current_thread):
7858         Use inferior_thread.
7859         (thread_command): Use thread pointer directly.
7860         (thread_num_make_value_helper): Use inferior_thread.
7861         * top.c (execute_command): Use inferior_thread.
7862         * tui/tui-interp.c: Include "inferior.h".
7863         * varobj.c (varobj_create): Use inferior_thread.
7864         (value_of_root_1): Use find_thread_global_id instead of
7865         global_thread_id_to_ptid.
7866
7867 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7868
7869         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7870         possible.
7871         (regcache::write_part): Likewise.
7872         (readable_regcache::cooked_read_part): Update comment.
7873         (readable_regcache::cooked_write_part): Likewise.
7874         * regcache.h: (readable_regcache::read_part): Likewise.
7875         (regcache::write_part): Likewise.
7876
7877 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7878             Dirk Schubert  <dirk.schubert@arm.com>
7879
7880         * aarch64-linux-nat.c (post_attach): New.
7881         (aarch64_linux_nat_target::post_attach): Override post_attach to
7882         record the number of hardware debug registers.
7883
7884 2018-06-20  Tom Tromey  <tom@tromey.com>
7885
7886         * python/py-param.c (add_setshow_generic): Make parameters const.
7887         (parmpy_init): Update.
7888
7889 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7890
7891         * regcache.h (regcache_cooked_read_ftype): Rename to...
7892         (register_read_ftype): ...this, change type to function_view.
7893         (class reg_buffer) <save>: Remove src parameter.
7894         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7895         parameter non-const in first overload.  Remove src parameter in
7896         second overload.
7897         * regcache.c (do_cooked_read): Remove.
7898         (readonly_detached_regcache::readonly_detached_regcache): Make
7899         parameter non-const, adjust call to other constructor.
7900         (reg_buffer::save): Remove src parameter.
7901         * frame.c (do_frame_register_read): Remove.
7902         (frame_save_as_regcache): Use lambda function.
7903         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7904         parameter to ppu2spu_data *.
7905         (ppu2spu_sniffer): Use lambda function.
7906
7907 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7908
7909         * record-full.c (record_full_target::insert_breakpoint): Remove
7910         "struct" keyword, add const.
7911
7912 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7913
7914         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7915         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7916         * configure.ac: Remove AC_PREREQ, add missing quoting.
7917         * gnulib/configure.ac: Modernize usage of
7918         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7919         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7920         (AUTOMAKE_VERSION): Bump to 1.15.1.
7921         * configure: Re-generate.
7922         * config.in: Re-generate.
7923         * aclocal.m4: Re-generate.
7924         * gnulib/aclocal.m4: Re-generate.
7925         * gnulib/config.in: Re-generate.
7926         * gnulib/configure: Re-generate.
7927         * gnulib/import/Makefile.in: Re-generate.
7928
7929 2018-06-19  Pedro Alves  <palves@redhat.com>
7930
7931         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7932         (lookup_minimal_symbol_by_pc_section): ... here with
7933         gdb_assert_not_reached added.
7934
7935 2018-06-19  Pedro Alves  <palves@redhat.com>
7936
7937         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7938         parameter with a block parameter.  Compare location's block symbol
7939         with the frame's block instead of addresses.
7940         (skip_inline_frames): Pass the current block instead of the
7941         frame's address.  Break out as soon as we determine the frame
7942         should not be skipped.
7943
7944 2018-06-18  Tom Tromey  <tom@tromey.com>
7945
7946         * solib-aix.c (solib_aix_get_section_offsets): Return
7947         unique_xmalloc_ptr.
7948         (solib_aix_solib_create_inferior_hook): Update.
7949
7950 2018-06-18  Tom Tromey  <tom@tromey.com>
7951
7952         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7953
7954 2018-06-18  Tom Tromey  <tom@tromey.com>
7955
7956         * solib-frv.c (frv_relocate_main_executable): Use
7957         unique_xmalloc_ptr.
7958         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7959         unique_xmalloc_ptr.
7960
7961 2018-06-18  Tom Tromey  <tom@tromey.com>
7962
7963         * objfiles.h (inhibit_section_map_updates): Update.
7964         (resume_section_map_updates, resume_section_map_updates_cleanup):
7965         Remove.
7966         * solib-svr4.c (svr4_handle_solib_event): Update.
7967         * objfiles.c (inhibit_section_map_updates): Return
7968         scoped_restore_tmpl<int>.
7969         (resume_section_map_updates, resume_section_map_updates_cleanup):
7970         Remove.
7971
7972 2018-06-18  Tom Tromey  <tom@tromey.com>
7973
7974         * valprint.h (read_string): Update.
7975         * valprint.c (read_string): Change type of "buffer".
7976         (val_print_string): Update.
7977         * python/py-value.c (valpy_string): Update.
7978         * language.h (struct language_defn) <la_get_string>: Change
7979         type of "buffer".
7980         (default_get_string, c_get_string): Update.
7981         * language.c (default_get_string): Change type of "buffer".
7982         * guile/scm-value.c (gdbscm_value_to_string): Update.
7983         * c-lang.c (c_get_string): Change type of "buffer".
7984
7985 2018-06-18  Tom Tromey  <tom@tromey.com>
7986
7987         * ser-mingw.c (struct pipe_state_destroyer): New.
7988         (pipe_state_up): New typedef.
7989         (cleanup_pipe_state): Remove.
7990         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7991
7992 2018-06-18  Tom Tromey  <tom@tromey.com>
7993
7994         * rust-lang.h (rust_yyerror): Don't declare.
7995         * rust-lang.c (rust_language_defn): Update.
7996         * rust-exp.y (yyerror): Now static.
7997         * parse.c (parse_exp_in_context_1): Update.
7998         * p-lang.h (p_yyerror): Don't declare.
7999         * p-lang.c (p_language_defn): Update.
8000         * p-exp.y (yyerror): Now static.
8001         * opencl-lang.c (opencl_language_defn): Update.
8002         * objc-lang.c (objc_language_defn): Update.
8003         * m2-lang.h (m2_yyerror): Don't declare.
8004         * m2-lang.c (m2_language_defn): Update.
8005         * m2-exp.y (yyerror): Now static.
8006         * language.h (struct language_defn) <la_error>: Remove.
8007         * language.c (unk_lang_error): Remove.
8008         (unknown_language_defn, auto_language_defn): Remove.
8009         * go-lang.h (go_yyerror): Don't declare.
8010         * go-lang.c (go_language_defn): Update.
8011         * go-exp.y (yyerror): Now static.
8012         * f-lang.h (f_yyerror): Don't declare.
8013         * f-lang.c (f_language_defn): Update.
8014         * f-exp.y (yyerror): Now static.
8015         * d-lang.h (d_yyerror): Don't declare.
8016         * d-lang.c (d_language_defn): Update.
8017         * d-exp.y (yyerror): Now static.
8018         * c-lang.h (c_yyerror): Don't declare.
8019         * c-lang.c (c_language_defn, cplus_language_defn)
8020         (asm_language_defn, minimal_language_defn): Update.
8021         * c-exp.y (yyerror): Now static.
8022         * ada-lang.h (ada_yyerror): Don't declare.
8023         * ada-lang.c (ada_language_defn): Update.
8024         * ada-exp.y (yyerror): Now static.
8025
8026 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8027
8028         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
8029         (store_sveregs_to_thread): Likewise.
8030         (aarch64_linux_fetch_inferior_registers): Check for SVE.
8031         (aarch64_linux_store_inferior_registers): Likewise.
8032         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
8033         function.
8034         (aarch64_sve_regs_copy_to_regcache): Likewise.
8035         (aarch64_sve_regs_copy_from_regcache): Likewise.
8036         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8037         declaration.
8038         (aarch64_sve_regs_copy_to_regcache): Likewise.
8039         (aarch64_sve_regs_copy_from_regcache): Likewise.
8040         (sve_context): Structure from Linux headers.
8041         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8042         (SVE_SIG_ZREG_SIZE): Likewise.
8043         (SVE_SIG_PREG_SIZE): Likewise.
8044         (SVE_SIG_FFR_SIZE): Likewise.
8045         (SVE_SIG_REGS_OFFSET): Likewise.
8046         (SVE_SIG_ZREGS_OFFSET): Likewise.
8047         (SVE_SIG_ZREG_OFFSET): Likewise.
8048         (SVE_SIG_ZREGS_SIZE): Likewise.
8049         (SVE_SIG_PREGS_OFFSET): Likewise.
8050         (SVE_SIG_PREG_OFFSET): Likewise.
8051         (SVE_SIG_PREGS_SIZE): Likewise.
8052         (SVE_SIG_FFR_OFFSET): Likewise.
8053         (SVE_SIG_REGS_SIZE): Likewise.
8054         (SVE_SIG_CONTEXT_SIZE): Likewise.
8055         (SVE_PT_REGS_MASK): Likewise.
8056         (SVE_PT_REGS_FPSIMD): Likewise.
8057         (SVE_PT_REGS_SVE): Likewise.
8058         (SVE_PT_VL_INHERIT): Likewise.
8059         (SVE_PT_VL_ONEXEC): Likewise.
8060         (SVE_PT_REGS_OFFSET): Likewise.
8061         (SVE_PT_FPSIMD_OFFSET): Likewise.
8062         (SVE_PT_FPSIMD_SIZE): Likewise.
8063         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8064         (SVE_PT_SVE_PREG_SIZE): Likewise.
8065         (SVE_PT_SVE_FFR_SIZE): Likewise.
8066         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8067         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8068         (__SVE_SIG_TO_PT): Likewise.
8069         (SVE_PT_SVE_OFFSET): Likewise.
8070         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8071         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8072         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8073         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8074         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8075         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8076         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8077         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8078         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8079         (SVE_PT_SVE_SIZE): Likewise.
8080         (SVE_PT_SIZE): Likewise.
8081         (HAS_SVE_STATE): New define.
8082
8083 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8084
8085         * nat/aarch64-sve-linux-sigcontext.h: New file.
8086         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8087         new files.
8088         (SVE_VQ_MIN): Likewise.
8089         (SVE_VQ_MAX): Likewise.
8090         (SVE_VL_MIN): Likewise.
8091         (SVE_VL_MAX): Likewise.
8092         (SVE_NUM_ZREGS): Likewise.
8093         (SVE_NUM_PREGS): Likewise.
8094         (sve_vl_valid): Likewise.
8095         (struct user_sve_header): Likewise.
8096
8097 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8098             Richard Bunt <Richard.Bunt@arm.com>
8099
8100         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8101         was requested by GDB.
8102
8103 2018-06-15  Tom de Vries  <tdevries@suse.de>
8104
8105         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8106
8107 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8108
8109         * gnulib/update-gnulib.sh: Print expected versions of
8110         autoconf/aclocal.
8111
8112 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8113
8114         * arch-utils.c (default_type_align): Use type_length_units.
8115         * gdbtypes.c (type_align): Use type_length_units.
8116
8117 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8118
8119         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8120         of 'define' command.
8121
8122 2018-06-14  Tom de Vries  <tdevries@suse.de>
8123
8124         PR cli/22573
8125         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8126         get_no_prettyformat_print_options.
8127
8128 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8129
8130         * sparc-nat.h: Include target.h.
8131         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8132         <fetch_registers>: Remove this argument in function call.
8133         <store_registers>: Remove this argument in function call, remove
8134         extra semicolon.
8135         <low_forget_process>: Call sparc64_forget_process instead of
8136         sparc_forget_process.
8137
8138 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8139
8140         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8141         (procfs_target::make_corefile_notes): Adjust to new
8142         target_read_alloc return type.
8143
8144 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8145             Stephen Roberts  <stephen.roberts@arm.com>
8146
8147         PR gdb/22882
8148         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8149         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8150         Move should_notify_stop local into more inner scope.
8151
8152 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8153             Stephen Roberts  <stephen.roberts@arm.com>
8154
8155         PR gdb/22882
8156         * infrun.c (resume_1): Add call to mark_async_event_handler.
8157
8158 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8159
8160         * infrun.c (do_target_wait): Change old version of $pc printed.
8161
8162 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8163
8164         * dwarf2read.c (read_index_from_section): Rename to...
8165         (read_gdb_index_from_section): ... this, update all callers.
8166         (dwarf2_read_index): Rename to...
8167         (dwarf2_read_gdb_index): ... this, update all callers.
8168
8169 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8170
8171         * hppa-linux-nat.c
8172         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8173         hppa_linux_nat_target::fetch_registers.
8174
8175 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8176
8177         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8178         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8179         (AARCH64_DWARF_SVE_FFR): Likewise.
8180         (AARCH64_DWARF_SVE_P0): Likewise.
8181         (AARCH64_DWARF_SVE_Z0): Likewise.
8182
8183 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8184
8185         * common/common-regcache.h (raw_compare): New function.
8186         * regcache.c (regcache::raw_compare): Likewise.
8187         * regcache.h (regcache::raw_compare): New declaration.
8188
8189 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8190
8191         * common/common-regcache.h (reg_buffer_common): New structure.
8192         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8193         (reg_buffer::raw_supply): Likewise.
8194         (reg_buffer::raw_supply_integer): Likewise.
8195         (reg_buffer::raw_supply_zeroed): Likewise.
8196         (reg_buffer::raw_collect): Likewise.
8197         (reg_buffer::raw_collect_integer): Likewise.
8198         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8199         (reg_buffer::raw_supply): Likewise.
8200         (reg_buffer::raw_supply_integer): Likewise.
8201         (reg_buffer::raw_supply_zeroed): Likewise.
8202         (reg_buffer::raw_collect): Likewise.
8203         (reg_buffer::raw_collect_integer): Likewise.
8204
8205 2018-06-10  Tom Tromey  <tom@tromey.com>
8206
8207         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8208         (class remote_state) <stop_reply_queue>: Now std::vector.
8209         (remote_state::~remote_state)
8210         (remote_target::stop_reply_queue_length): Update.
8211         (struct queue_iter_param, remove_child_of_pending_fork)
8212         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8213         (check_pending_event_prevents_wildcard_vcont_callback)
8214         (remove_stop_reply_for_inferior)
8215         (remove_stop_reply_of_remote_state)
8216         (remote_notif_remove_once_on_match)
8217         (stop_reply_match_ptid_and_ws)
8218         (remote_kill_child_of_pending_fork): Remove.
8219         (remote_target::remove_new_fork_children)
8220         (remote_target::check_pending_events_prevent_wildcard_vcont)
8221         (remote_target::discard_pending_stop_replies)
8222         (remote_target::discard_pending_stop_replies_in_queue)
8223         (remote_target::remote_notif_remove_queued_reply)
8224         (remote_target::queued_stop_reply)
8225         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8226         (remote_target::wait, remote_target::kill_new_fork_children)
8227         (remote_target::async): Update.
8228
8229 2018-06-10  Tom Tromey  <tom@tromey.com>
8230
8231         * record-full.c (record_full_arch_list_cleanups): Remove.
8232         (record_full_message): Use try/catch.
8233         (record_full_wait_cleanups): Remove.
8234         (record_full_wait_1): Use try/catch.
8235         (record_full_restore): Likewise.
8236
8237 2018-06-10  Tom Tromey  <tom@tromey.com>
8238
8239         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8240         declare VEC.  Add constructor.
8241         <in_target_beneath>: Now bool.
8242         (record_full_breakpoints): Now a std::vector, static.
8243         (record_full_sync_record_breakpoints)
8244         (record_full_init_record_breakpoints)
8245         (record_full_target::insert_breakpoint)
8246         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8247
8248 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8249
8250         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8251         * serial.c (serial_interface_lookup): Remove struct keyword.
8252
8253 2018-06-10  Tom Tromey  <tom@tromey.com>
8254
8255         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8256         method.
8257         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8258         a method.
8259         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8260         method.
8261         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8262         "beneath" as a method.
8263         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8264         Use "beneath" as a method.
8265
8266 2018-06-10  Tom Tromey  <tom@tromey.com>
8267
8268         * tracefile.c (struct trace_file_writer_deleter): New.
8269         <operator()>: Rename from trace_file_writer_xfree.
8270         (trace_file_writer_up): New typedef.
8271         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8272
8273 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8274
8275         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8276         <m_registers, m_register_status>: Change type to
8277         std::unique_ptr.
8278         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8279         XCNEWVEC.
8280
8281 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8282
8283         * common/common-regcache.h (enum register_status): Add
8284         underlying type "signed char".
8285         * regcache.h (reg_buffer) <m_register_status>: Change type to
8286         register_status *.
8287         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8288         register_status instead of signed char.
8289         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8290         (reg_buffer::get_register_status): Remove cast.
8291         (readable_regcache::raw_read): Remove cast.
8292         (readable_regcache::cooked_read): Remove cast.
8293
8294 2018-06-09  Tom Tromey  <tom@tromey.com>
8295
8296         * source.c (reverse_search_command, forward_search_command): Use
8297         scoped_fd.
8298
8299 2018-06-09  Tom Tromey  <tom@tromey.com>
8300
8301         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8302         (serial_ops_list): Now static, std::vector.
8303         (serial_interface_lookup, serial_add_interface): Update.
8304
8305 2018-06-09  Tom Tromey  <tom@tromey.com>
8306
8307         * dwarf2read.c (process_cu_includes): Update.
8308         (process_full_comp_unit): Update.
8309         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8310         std::vector.
8311
8312 2018-06-08  Paul Koning  <paul_koning@dell.com>
8313
8314         PR gdb/23252
8315
8316         * python/python.c (do_start_initialization):
8317         Avoid call to internal Python API.
8318         (init__gdb_module): New function.
8319
8320 2018-06-08  Gary Benson <gbenson@redhat.com>
8321
8322         * linux-thread-db.c (valprint.h): New include.
8323         (struct check_thread_db_info): New structure.
8324         (check_thread_db_on_load, tdb_testinfo): New static globals.
8325         (check_thread_db, check_thread_db_callback): New functions.
8326         (try_thread_db_load_1): Run integrity checks if requested.
8327         (maintenance_check_libthread_db): New function.
8328         (_initialize_thread_db): Register "maint check libthread-db"
8329         and "maint set/show check-libthread-db".
8330         * NEWS: Mention the above new commands.
8331
8332 2018-06-08  Tom Tromey  <tom@tromey.com>
8333
8334         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8335         now a method.
8336
8337 2018-06-08  Tom Tromey  <tom@tromey.com>
8338
8339         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8340
8341 2018-06-08  Tom Tromey  <tom@tromey.com>
8342
8343         * common/btrace-common.h (struct btrace_data): Add constructor,
8344         destructor, move assignment operator.
8345         <empty, clear, fini>: New methods.
8346         <format>: Initialize.
8347         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8348         (btrace_data_empty): Don't declare.
8349         * common/btrace-common.c (btrace_data_init): Remove.
8350         (btrace_data::fini): Rename from btrace_data_fini.
8351         (btrace_data::empty): Rename from btrace_data_empty.
8352         (btrace_data::clear): Rename from btrace_data_clear.  Return
8353         bool.
8354         * btrace.h (make_cleanup_btrace_data): Don't declare.
8355         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8356         (parse_xml_btrace): Update.
8357         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8358         (maint_btrace_clear_packet_history_cmd): Update.
8359
8360 2018-06-07  Pedro Alves  <palves@redhat.com>
8361
8362         * target.h (target_ops) <beneath>: Now a method.  All references
8363         updated.
8364         (class target_stack): New.
8365         * target.c (g_target_stack): New.
8366         (g_current_top_target): Delete.
8367         (current_top_target): Get the top target out of g_target_stack.
8368         (target_stack::push, target_stack::unpush): New.
8369         (push_target, unpush_target): Reimplement.
8370         (target_is_pushed): Reimplement in terms of g_target_stack.
8371         (target_ops::beneath, target_stack::find_beneath): New.
8372
8373 2018-06-07  Pedro Alves  <palves@redhat.com>
8374
8375         * target.h (find_target_beneath): Delete declaration.
8376         * target.c (find_target_beneath): Delete definition.
8377         * aix-thread.c: All callers of find_target_beneath adjusted to
8378         call target_ops::beneath instead.
8379         * bsd-uthread.c: Likewise.
8380         * linux-thread-db.c: Likewise.
8381         * ravenscar-thread.c: Likewise.
8382         * sol-thread.c: Likewise.
8383         * spu-multiarch.c: Likewise.
8384
8385 2018-06-07  Pedro Alves  <palves@redhat.com>
8386
8387         * target.h (target_ops) <beneath>: Now a method.  All references
8388         updated.
8389         (target_ops) <m_beneath>: New.
8390         * target.c (target_ops::beneath): New.
8391         * corelow.c: Adjust all references to target_ops::beneath.
8392         * linux-thread-db.c: Likewise.
8393         * make-target-delegates: Likewise.
8394         * record-btrace.c: Likewise.
8395         * record-full.c: Likewise.
8396         * remote.c: Likewise.
8397         * target.c: Likewise.
8398         * target-delegates.c: Regenerate.
8399
8400 2018-06-07  Pedro Alves  <palves@redhat.com>
8401
8402         * target.h (target_stack): Delete.
8403         (current_top_target): Declare function.
8404         * target.c (target_stack): Delete.
8405         (g_current_top_target): New.
8406         (current_top_target): New function.
8407         * auxv.c: Use current_top_target instead of target_stack
8408         throughout.
8409         * avr-tdep.c: Likewise.
8410         * breakpoint.c: Likewise.
8411         * corefile.c: Likewise.
8412         * elfread.c: Likewise.
8413         * eval.c: Likewise.
8414         * exceptions.c: Likewise.
8415         * frame.c: Likewise.
8416         * gdbarch-selftests.c: Likewise.
8417         * gnu-v3-abi.c: Likewise.
8418         * ia64-tdep.c: Likewise.
8419         * ia64-vms-tdep.c: Likewise.
8420         * infcall.c: Likewise.
8421         * infcmd.c: Likewise.
8422         * infrun.c: Likewise.
8423         * linespec.c: Likewise.
8424         * linux-tdep.c: Likewise.
8425         * minsyms.c: Likewise.
8426         * ppc-linux-nat.c: Likewise.
8427         * ppc-linux-tdep.c: Likewise.
8428         * procfs.c: Likewise.
8429         * regcache.c: Likewise.
8430         * remote.c: Likewise.
8431         * rs6000-tdep.c: Likewise.
8432         * s390-linux-nat.c: Likewise.
8433         * s390-tdep.c: Likewise.
8434         * solib-aix.c: Likewise.
8435         * solib-darwin.c: Likewise.
8436         * solib-dsbt.c: Likewise.
8437         * solib-spu.c: Likewise.
8438         * solib-svr4.c: Likewise.
8439         * solib-target.c: Likewise.
8440         * sparc-tdep.c: Likewise.
8441         * sparc64-tdep.c: Likewise.
8442         * spu-tdep.c: Likewise.
8443         * symfile.c: Likewise.
8444         * symtab.c: Likewise.
8445         * target-descriptions.c: Likewise.
8446         * target-memory.c: Likewise.
8447         * target.c: Likewise.
8448         * target.h: Likewise.
8449         * tracefile-tfile.c: Likewise.
8450         * tracepoint.c: Likewise.
8451         * valops.c: Likewise.
8452         * valprint.c: Likewise.
8453         * value.c: Likewise.
8454         * windows-tdep.c: Likewise.
8455         * mi/mi-main.c: Likewise.
8456
8457 2018-06-07  Tom Tromey  <tom@tromey.com>
8458
8459         * valprint.h (build_address_symbolic): Declare.
8460         * printcmd.c (print_address_symbolic): Update.
8461         (build_address_symbolic): Change "name" and "filename" to
8462         std::string.
8463         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8464         Update.
8465         * defs.h (build_address_symbolic): Remove declaration.
8466
8467 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8468
8469         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8470         (aarch64_vnv_type): Add function.
8471         (aarch64_pseudo_register_name): Add V regs for SVE.
8472         (aarch64_pseudo_register_type): Likewise.
8473         (aarch64_pseudo_register_reggroup_p): Likewise.
8474         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8475         (aarch64_pseudo_read_value): Add V regs for SVE.
8476         (aarch64_pseudo_write_2): Use V0 offset for SVE
8477         (aarch64_pseudo_write): Add V regs for SVE.
8478         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8479
8480 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8481
8482         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8483         (sve_vl_from_vq): Likewise.
8484
8485 2018-06-05  Tom Tromey  <tom@tromey.com>
8486
8487         * cli/cli-cmds.c (show_version): Update.
8488         * top.c (print_gdb_version): Add "interactive" parameter.
8489         Update.
8490         * main.c (captured_main_1): Update.
8491         * top.h (print_gdb_version): Add "interactive" parameter and a
8492         comment.
8493
8494 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8495
8496         * common/enum-flags.h: Add trailing semicolon to example in
8497         comment.
8498
8499 2018-06-05  Tom Tromey  <tom@tromey.com>
8500
8501         PR cli/12326:
8502         * NEWS: Add entry about pager.
8503         * utils.c (pagination_disabled_for_command): New global.
8504         (prompt_for_continue): Allow "c" response to prompt.
8505         (reinitialize_more_filter): Clear
8506         pagination_disabled_for_command.
8507         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8508
8509 2018-06-04  Tom Tromey  <tom@tromey.com>
8510
8511         * ada-lang.h (ada_lookup_symbol_list): Update.
8512         * ada-lang.c (resolve_subexp): Update.
8513         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8514         parameter.
8515         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8516         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8517         results parameter to std::vector.
8518         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8519         Update.
8520         * ada-exp.y (block_lookup): Update.
8521         (select_possible_type_sym): Change type of syms.  Remove nsyms
8522         parameter.
8523         (write_var_or_type, write_name_assoc): Update.
8524
8525 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8526
8527         * windows-nat.c (windows_nat_target::xfer_partial): Return
8528         TARGET_XFER_E_IO if we need to delegate to the target beneath
8529         but BENEATH is NULL.
8530
8531 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8532
8533         * Makefile.in (config.status): Add configure.nat as a
8534         dependency.
8535
8536 2018-06-04  Tom Tromey  <tom@tromey.com>
8537
8538         * cp-name-parser.y (cpname_state): Add method declarations.
8539         (HANDLE_QUAL): Update.
8540         (cpname_state::d_grab, cpname_state::fill_comp)
8541         (cpname_state::make_operator, cpname_state::make_dtor)
8542         (cpname_state::make_builtin_type, cpname_state::make_name)
8543         (cpname_state::d_qualify, cpname_state::d_int_type)
8544         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8545         (%union): Move earlier.
8546
8547 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8548
8549         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8550
8551 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8552
8553         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8554         (aarch64_pseudo_write_1): Likewise.
8555         (aarch64_pseudo_read_value): Use helper.
8556         (aarch64_pseudo_write): Likewise.
8557
8558 2018-06-04  Pedro Alves  <palves@redhat.com>
8559
8560         * darwin-nat.c (darwin_ops): Delete.
8561         (darwin_attach_pid): Use get_native_target.
8562
8563 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8564
8565         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8566         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8567
8568 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8569
8570         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8571         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8572         (aarch64_gdbarch_init): Check for SVE.
8573         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8574
8575 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8576
8577         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8578         * aarch64-tdep.h (aarch64_read_description): Likewise.
8579         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8580         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8581         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8582         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8583         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8584
8585 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8586
8587         * value.c (value_fetch_lazy_bitfield): New.
8588         (value_fetch_lazy_memory): New.
8589         (value_fetch_lazy_register): New.
8590         (value_fetch_lazy): Factor out to smaller functions.
8591
8592 2018-06-01  Tom Tromey  <tom@tromey.com>
8593
8594         * cp-name-parser.y (backslashable, represented): Now const.
8595
8596 2018-06-01  Tom Tromey  <tom@tromey.com>
8597
8598         * cp-name-parser.y: Include parser-defs.h.
8599         (parser_fprintf): Remove declaration.
8600
8601 2018-06-01  Tom Tromey  <tom@tromey.com>
8602
8603         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8604         %parse-param.
8605         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8606         (global_result): Remove globals.
8607         (struct cpname_state): New.
8608         (yyparse): Don't declare.
8609         (yylex, yyerror): Move declarations after %union.
8610         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8611         (make_name): Add state parameter.
8612         Update all callers.
8613         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8614         parameter.
8615         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8616         Update.
8617         (yylex): Add lvalp, state parameters.
8618         (yyerror): Add state parameter.
8619         (cp_demangled_name_to_comp): Update.
8620
8621 2018-06-01  Tom Tromey  <tom@tromey.com>
8622
8623         * cp-name-parser.y (parser_fprintf): Declare.
8624         (GDB_YY_REMAP_PREFIX): Define.
8625         Include yy-remap.h.  Don't redefine yy* identifiers.
8626
8627 2018-06-01  Tom Tromey  <tom@tromey.com>
8628
8629         * python/py-type.c (typy_legacy_template_argument): Update.
8630         * cp-support.h (cp_demangled_name_to_comp): Update.
8631         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8632         parameter to be a "std::string *".
8633         (main): Update.
8634
8635 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8636
8637         * ada-lex.l: Include "diagnostics.h" instead of
8638         "common/diagnostics.h".
8639         * unittests/environ-selftests.c: Likewise.
8640         * common/diagnostics.h: Moved to ../include.
8641
8642 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8643
8644         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8645         to language_mode_manual while calling breakpoint_re_set_one.
8646
8647 2018-06-01  Tom Tromey  <tom@tromey.com>
8648
8649         * valops.c (value_cast_structs, destructor_name_p): Update.
8650         * symtab.c (gdb_mangle_name): Update.
8651         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8652         Update.
8653         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8654         (pascal_object_print_value_fields, pascal_object_print_value):
8655         Update.
8656         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8657         * linespec.c (find_methods): Update.
8658         * gdbtypes.h (type_name_no_tag): Remove.
8659         (type_name_or_error): Rename from type_name_no_tag_or_error.
8660         * gdbtypes.c (type_name_no_tag): Remove.
8661         (type_name_or_error): Rename from type_name_no_tag_or_error.
8662         (lookup_struct_elt_type, check_typedef): Update.
8663         * expprint.c (print_subexp_standard): Update.
8664         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8665         * d-namespace.c (d_lookup_nested_symbol): Update.
8666         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8667         (cp_print_class_member): Update.
8668         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8669         * completer.c (add_struct_fields): Update.
8670         * c-typeprint.c (cp_type_print_derivation_info)
8671         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8672         Update.
8673         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8674         (ada_prefer_type, ada_is_exception_sym): Update.
8675
8676 2018-06-01  Tom Tromey  <tom@tromey.com>
8677
8678         * valops.c (enum_constant_from_type, value_namespace_elt)
8679         (value_maybe_namespace_elt): Update.
8680         * valarith.c (find_size_for_pointer_math): Update.
8681         * target-descriptions.c (make_gdb_type): Update.
8682         * symmisc.c (print_symbol): Update.
8683         * stabsread.c (define_symbol, read_type)
8684         (complain_about_struct_wipeout, add_undefined_type)
8685         (cleanup_undefined_types_1): Update.
8686         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8687         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8688         (rust_internal_print_type, rust_composite_type)
8689         (rust_evaluate_funcall, rust_evaluate_subexp)
8690         (rust_inclusive_range_type_p): Update.
8691         * python/py-type.c (typy_get_tag): Update.
8692         * p-typeprint.c (pascal_type_print_base): Update.
8693         * mdebugread.c (parse_symbol, parse_type): Update.
8694         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8695         Update.
8696         * guile/scm-type.c (gdbscm_type_tag): Update.
8697         * go-lang.c (sixg_string_p): Update.
8698         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8699         Update.
8700         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8701         (TYPE_TAG_NAME): Remove.
8702         * gdbtypes.c (type_name_no_tag): Simplify.
8703         (check_typedef, check_types_equal, recursive_dump_type)
8704         (copy_type_recursive, arch_composite_type): Update.
8705         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8706         in summary mode when needed.
8707         * eval.c (evaluate_funcall): Update.
8708         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8709         (process_structure_scope, read_enumeration_type)
8710         (read_namespace_type, read_module_type, determine_prefix): Update.
8711         * cp-support.c (inspect_type): Update.
8712         * coffread.c (process_coff_symbol, decode_base_type): Update.
8713         * c-varobj.c (c_is_path_expr_parent): Update.
8714         * c-typeprint.c (c_type_print_base_struct_union): Update.
8715         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8716         summary when using C language.
8717         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8718         (gen_maybe_namespace_elt): Update.
8719         * ada-lang.c (ada_type_name): Simplify.
8720         (empty_record, ada_template_to_fixed_record_type_1)
8721         (template_to_static_fixed_type)
8722         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8723
8724 2018-06-01  Tom Tromey  <tom@tromey.com>
8725
8726         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8727         c_print_type.
8728         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8729         (c_print_type): Update.
8730         (c_print_type): New overload.
8731         (c_type_print_varspec_prefix, c_type_print_args)
8732         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8733         (c_type_print_base_struct_union, c_type_print_base_1)
8734         (cp_type_print_method_args): Add "language" parameter.
8735         (c_type_print_base): Update.
8736         * c-lang.h (c_print_type): Add new overload.
8737
8738 2018-06-01  Tom Tromey  <tom@tromey.com>
8739
8740         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8741         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8742
8743 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8744
8745         * aarch64-tdep.c (aarch64_sve_register_names): New const
8746         var.
8747         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8748         (AARCH64_SVE_Z_REGS_NUM): New define.
8749         (AARCH64_SVE_P_REGS_NUM): Likewise.
8750         (AARCH64_SVE_NUM_REGS): Likewise.
8751
8752 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8753
8754         * nat/linux-ptrace.h [__alpha__]
8755         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8756         definitions.
8757
8758 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8759
8760         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8761         the endianness selected.
8762         * NEWS: Document `set endian auto' mode operation update.
8763
8764 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8765
8766         * Makefile.in: Add new header.
8767         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8768         (sve_vl_from_vg): Likewise.
8769         (sve_vq_from_vl): Likewise.
8770         (sve_vl_from_vq): Likewise.
8771         (sve_vq_from_vg): Likewise.
8772         (sve_vg_from_vq): Likewise.
8773         * configure.nat: Add new c file.
8774         * nat/aarch64-sve-linux-ptrace.c: New file.
8775         * nat/aarch64-sve-linux-ptrace.h: New file.
8776
8777 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8778
8779         * aarch64-linux-nat.c (aarch64_linux_read_description):
8780         Add parmeter zero.
8781         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8782         Likewise.
8783         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8784         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8785         (aarch64_gdbarch_init): Add parmeter zero.
8786         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8787         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8788         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8789         parmeter.
8790         * doc/gdb.texinfo: Describe SVE feature
8791         * features/aarch64-sve.c: New file.
8792
8793 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8794
8795         PR gdb/23210
8796         * gdbarch.sh (significant_addr_bit): Default to zero when
8797         not set by target architecture.
8798         * gdbarch.c: Re-generated.
8799         * utils.c (address_significant): Update.
8800
8801 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8802
8803         * stack.c (func_command): Remove trailing newline in call to error.
8804
8805 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8806
8807         * regcache.h (regcache_raw_collect): Remove, update callers to
8808         use regcache::raw_collect.
8809         * regcache.c (regcache_raw_collect): Remove.
8810
8811 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8812
8813         * regcache.h (regcache_raw_supply): Remove, update callers to
8814         use detached_regcache::raw_supply.
8815         * regcache.c (regcache_raw_supply): Remove.
8816
8817 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8818
8819         * regcache.h (regcache_cooked_write_part): Remove, update
8820         callers to use regcache::cooked_write_part.
8821         * regcache.c (regcache_cooked_write_part): Remove.
8822
8823 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8824
8825         * regcache.h (regcache_cooked_read_part): Remove, update callers
8826         to use readable_regcache::cooked_read_part.
8827         * regcache.c (regcache_cooked_read_part): Remove.
8828
8829 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8830
8831         * regcache.h (regcache_cooked_read_value): Remove, update
8832         callers to use readable_regcache::cooked_read_value.
8833         * regcache.c (regcache_cooked_read_value): Remove.
8834
8835 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8836
8837         * regcache.h (regcache_cooked_write): Remove, update callers to
8838         use regcache::cooked_write.
8839         * regcache.c (regcache_cooked_write): Remove.
8840
8841 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8842
8843         * regcache.h (regcache_invalidate): Remove, update callers to
8844         use detached_regcache::invalidate instead.
8845         * regcache.c (regcache_invalidate): Remove.
8846
8847 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8848
8849         * regcache.h (regcache_raw_write_part): Remove, update callers
8850         to use regcache::raw_write_part instead.
8851         * regcache.c (regcache_raw_write_part): Remove.
8852
8853 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8854
8855         * regcache.h (regcache_raw_read_part): Remove, update callers to
8856         use readable_regcache::raw_read_part instead.
8857         * regcache.c (regcache_raw_read_part): Remove.
8858
8859 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8860
8861         * regcache.h (regcache_cooked_read): Remove, update callers to
8862         use readable_regcache::cooked_read instead.
8863         * regcache.c (regcache_cooked_read): Remove.
8864
8865 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8866
8867         * regcache.h (regcache_raw_write): Remove, update callers to use
8868         regcache::raw_write instead.
8869         * regcache.c (regcache_raw_write): Remove.
8870
8871 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8872
8873         * regcache.h (regcache_raw_read): Remove, update callers to use
8874         readable_regcache::raw_read instead.
8875         * regcache.c (regcache_raw_read): Remove.
8876
8877 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8878
8879         * regcache.h (regcache_raw_update): Remove, update callers to
8880         use readable_regcache::raw_update instead.
8881         * regcache.c (regcache_raw_update): Remove.
8882
8883 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8884
8885         * regcache.h (regcache_register_status): Remove, update callers
8886         to use reg_buffer::get_register_status directly instead.
8887         * regcache.c (regcache_register_status): Remove.
8888
8889 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8890
8891         * regcache.h (regcache_get_ptid): Remove, update all callers to
8892         call regcache::ptid instead.
8893         * regcache.c (regcache_get_ptid): Remove.
8894
8895 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8896
8897         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8898
8899 2018-05-30  Pedro Alves  <palves@redhat.com>
8900
8901         * common/common-exceptions.h (exception_rethrow): Use
8902         ATTRIBUTE_NORETURN.
8903
8904 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8905
8906         * breakpoint.c (print_solib_event, check_status_catch_solib):
8907         Remove struct keyword in range-based for loops.
8908         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8909         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8910         Likewise.
8911         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8912         Likewise.
8913         * symfile.c (addr_info_make_relative): Likewise.
8914         * thread.c (value_in_thread_stack_temporaries): Likewise.
8915
8916 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8917
8918         PR gdb/16841
8919         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8920         aggregate type to get its real type before accessing it.
8921
8922 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8923
8924         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8925         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8926         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8927         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8928         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8929         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8930         * printcmd.c (info_address_command): Likewise.
8931
8932 2018-05-29  Tom Tromey  <tom@tromey.com>
8933
8934         * windows-nat.c (handle_exception): Update fall-through comment.
8935
8936 2018-05-29  Tom Tromey  <tom@tromey.com>
8937
8938         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8939         (struct program_space) <added_solibs>: Now a std::vector.
8940         * breakpoint.c (print_solib_event): Update.
8941         (check_status_catch_solib): Update.
8942         * progspace.c (clear_program_space_solib_cache): Update.
8943         * solib.c (update_solib_list): Update.
8944
8945 2018-05-29  Tom Tromey  <tom@tromey.com>
8946
8947         * python/py-type.c (typy_richcompare): Update.
8948         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8949         * gdbtypes.h (types_deeply_equal): Return bool.
8950         (types_equal): Likewise.
8951         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8952         declare VEC.
8953         (check_types_equal): Change worklist to std::vector.  Return
8954         bool.
8955         (struct type_equality_entry): Add constructor.
8956         (compare_maybe_null_strings): Return bool.
8957         (check_types_worklist): Return bool.  Change worklist to
8958         std::vector.
8959         (types_deeply_equal): Use std::vector.
8960         (types_equal): Return bool.
8961         (compare_maybe_null_strings): Simplify.
8962
8963 2018-05-29  Tom Tromey  <tom@tromey.com>
8964
8965         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8966
8967 2018-05-29  Tom Tromey  <tom@tromey.com>
8968
8969         * objc-lang.h: Don't include cp-support.h.
8970         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8971         declare VEC.
8972
8973 2018-05-27  Tom Tromey  <tom@tromey.com>
8974
8975         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8976
8977 2018-05-25  Tom Tromey  <tom@tromey.com>
8978
8979         * value.c (value::location): Initialize.
8980
8981 2018-05-25  Tom Tromey  <tom@tromey.com>
8982
8983         * dbxread.c (init_bincl_list): Remove.
8984         (bincl_list): Now a std::vector.
8985         (bincls_allocated, next_bincl): Remove.
8986         (free_bincl_list, do_free_bincl_list_cleanup)
8987         (make_cleanup_free_bincl_list): Remove.
8988         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8989         unique_xmalloc_ptr.
8990         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8991         (struct header_file_location): Add constructor.
8992         (add_bincl_to_list): Remove.
8993
8994 2018-05-25  Tom Tromey  <tom@tromey.com>
8995
8996         * tui/tui.c (tui_enable): Update.
8997         * mi/mi-interp.c (mi_interp::init): Update.
8998         * interps.h (class interp) <name>: New method.
8999         <m_name>: Rename from name.
9000         (~scoped_restore_interp): Update.
9001         * interps.c (interp::interp): Update.
9002         (interp_add, interp_set, interp_lookup_existing)
9003         (current_interp_named_p): Update.
9004
9005 2018-05-25  Tom Tromey  <tom@tromey.com>
9006
9007         * interps.c (interp_name): Remove.
9008         * mi/mi-interp.c (mi_interp::init): Update.
9009         * interps.h (interp_name): Remove.
9010         (~scoped_restore_interp): Update.
9011         * tui/tui.c (tui_enable): Update.
9012
9013 2018-05-25  Tom Tromey  <tom@tromey.com>
9014
9015         * utils.c (fputs_maybe_filtered): Update.
9016         * linespec.c (decode_line_full): Update.
9017         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
9018         (mi_print_breakpoint_for_event, mi_solib_loaded)
9019         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
9020         (mi_user_selected_context_changed): Update.
9021         * mi/mi-main.c (mi_execute_command): Update.
9022         * cli/cli-script.c (execute_control_command): Update.
9023         * python/python.c (execute_gdb_command): Update.
9024         * solib.c (info_sharedlibrary_command): Update.
9025         * interps.c (interp_ui_out): Remove.
9026         * interps.h (interp_ui_out): Remove.
9027
9028 2018-05-25  Tom Tromey  <tom@tromey.com>
9029
9030         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
9031         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
9032         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
9033
9034 2018-05-25  Tom Tromey  <tom@tromey.com>
9035
9036         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9037         * interps.c (interp_exec): Use scoped_restore.
9038
9039 2018-05-25  Tom Tromey  <tom@tromey.com>
9040
9041         * remote.c (remote_target::remote_file_get): Use
9042         gdb::byte_vector.
9043         (remote_target::remote_file_put): Likewise.
9044
9045 2018-05-25  Tom Tromey  <tom@tromey.com>
9046
9047         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9048         a std::string.
9049         (get_pe_section_index, add_pe_exported_sym): Update.
9050         (read_pe_exported_syms): Use gdb::def_vector.
9051
9052 2018-05-25  Tom Tromey  <tom@tromey.com>
9053
9054         * frame.c (remove_prev_frame): Remove.
9055         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9056
9057 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9058
9059         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9060         Remove prototypes.
9061         * mips-linux-nat.c (supply_fpregset): Always call
9062         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9063         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9064         `mips_fill_fpregset'.
9065         * mips-linux-tdep.c (mips_supply_fpregset)
9066         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9067         (mips_fill_fpregset_wrapper): Remove functions.
9068         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9069         (mips_linux_fpregset): Remove variable.
9070         (mips_linux_iterate_over_regset_sections): Use
9071         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9072         (mips_linux_o32_sigframe_init): Remove comment.
9073
9074 2018-05-25  Pedro Alves  <palves@redhat.com>
9075
9076         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9077         (struct readahead_cache, struct packet_reg, struct
9078         remote_arch_state, class remote_state): Move higher up in the
9079         file.
9080         (remote_target::m_remote_state): Now an object instead of a pointer.
9081         (remote_target::get_remote_state): Adjust.
9082
9083 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9084
9085         * stack.c (select_and_print_frame): Delete.
9086         (struct function_bounds): Move struct within function.
9087         (func_command): Most content moved into new function
9088         find_frame_for_function, use new function, print result, add
9089         function comment.
9090         (find_frame_for_function): New function, now returns a result.
9091
9092 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9093
9094         * stack.c (iterate_over_block_arg_vars): Fix comment.
9095         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9096
9097 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9098
9099         PR gdb/23203
9100         * frame.c
9101         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9102         Define.
9103         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9104         Define.
9105         * frame.h (class scoped_restore_selected_frame): New class.
9106         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9107         of any exception, use scoped_restore_selected_frame to restore the
9108         frame instead.
9109
9110 2018-05-24  Pedro Alves  <palves@redhat.com>
9111
9112         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9113         override.
9114
9115 2018-05-23  Tom Tromey  <tom@tromey.com>
9116
9117         * complaints.c (struct complaints): Remove.
9118         (symfile_complaint_book): Remove.
9119         (series): New global.
9120         (complaint_internal): Update.
9121         (clear_complaints): Update.
9122
9123 2018-05-23  Tom Tromey  <tom@tromey.com>
9124
9125         * complaints.c (counters): New global.
9126         (struct complain): Remove.
9127         (struct complaints) <root>: Remove.
9128         (complaint_sentinel): Remove.
9129         (symfile_complaint_book): Update.
9130         (find_complaint) Remove.
9131         (complaint_internal, clear_complaints): Update.
9132
9133 2018-05-23  Tom Tromey  <tom@tromey.com>
9134
9135         * complaints.c (struct complain) <file, line>: Remove.
9136         (find_complaint): Remove file, line parameters.
9137         (complaint_internal): Update.
9138
9139 2018-05-23  Tom Tromey  <tom@tromey.com>
9140
9141         * complaints.c (vcomplaint): Remove.
9142         (complaint_internal) Merge in contents of vcomplaint.
9143
9144 2018-05-23  Tom Tromey  <tom@tromey.com>
9145
9146         * complaints.c (struct complaints) <explanation>: Remove.
9147         (symfile_explanations): Remove.
9148         (symfile_complaint_book): Update.
9149         (vcomplaint): Update.
9150         (struct explanation): Remove.
9151
9152 2018-05-23  Tom Tromey  <tom@tromey.com>
9153
9154         * complaints.c (symfile_complaints): Remove.
9155         (complaint_internal): Remove "complaints" parameter.
9156         (clear_complaints, vcomplaint): Remove "c" parameter.
9157         (get_complaints): Remove.
9158         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9159         (dwarf2_debug_line_missing_file_complaint)
9160         (dwarf2_debug_line_missing_end_sequence_complaint)
9161         (dwarf2_complex_location_expr_complaint)
9162         (dwarf2_const_value_length_mismatch_complaint)
9163         (dwarf2_section_buffer_overflow_complaint)
9164         (dwarf2_macro_malformed_definition_complaint)
9165         (dwarf2_invalid_attrib_class_complaint)
9166         (create_addrmap_from_index, dw2_symtab_iter_next)
9167         (dw2_expand_marked_cus)
9168         (dw2_debug_names_iterator::find_vec_in_debug_names)
9169         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9170         (create_debug_type_hash_table, init_cutu_and_read_dies)
9171         (partial_die_parent_scope, add_partial_enumeration)
9172         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9173         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9174         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9175         (create_cus_hash_table, create_dwp_hash_table)
9176         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9177         (dwarf2_rnglists_process, dwarf2_ranges_process)
9178         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9179         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9180         (handle_struct_member_die, process_structure_scope)
9181         (read_array_type, read_common_block, read_module_type)
9182         (read_tag_pointer_type, read_typedef, read_base_type)
9183         (read_subrange_type, load_partial_dies, partial_die_info::read)
9184         (partial_die_info::read, partial_die_info::read)
9185         (partial_die_info::read, read_checked_initial_length_and_offset)
9186         (dwarf2_string_attr, read_formatted_entries)
9187         (dwarf_decode_line_header)
9188         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9189         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9190         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9191         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9192         (get_signatured_type, get_DW_AT_signature_type)
9193         (decode_locdesc, file_file_name, consume_improper_spaces)
9194         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9195         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9196         (dwarf2_symbol_mark_computed, set_die_type)
9197         (read_attribute_value): Update.
9198         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9199         Update.
9200         * dbxread.c (unknown_symtype_complaint)
9201         (lbrac_mismatch_complaint, repeated_header_complaint)
9202         (set_namestring, function_outside_compilation_unit_complaint)
9203         (read_dbx_symtab, process_one_symbol): Update.
9204         * gdbtypes.c (stub_noname_complaint): Update.
9205         * windows-nat.c (handle_unload_dll): Update.
9206         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9207         (decode_base_type): Update.
9208         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9209         (eb_complaint, record_include_begin, record_include_end)
9210         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9211         (process_xcoff_symbol, read_symbol)
9212         (function_outside_compilation_unit_complaint)
9213         (scan_xcoff_symtab): Update.
9214         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9215         * buildsym.c (finish_block_internal, make_blockvector)
9216         (end_symtab_get_static_block, augment_type_symtab): Update.
9217         * dtrace-probe.c (dtrace_process_dof)
9218         (dtrace_static_probe_ops::get_probes): Update.
9219         * complaints.h (struct complaint): Don't declare.
9220         (symfile_complaints): Remove.
9221         (complaint_internal): Remove "complaints" parameter.
9222         (complaint): Likewise.
9223         (clear_complaints): Likewise.
9224         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9225         (reread_symbols): Update.
9226         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9227         (dwarf2_frame_cache, decode_frame_entry): Update.
9228         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9229         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9230         (info_selectors_command): Update.
9231         * macrotab.c (macro_include, check_for_redefinition)
9232         (macro_undef): Update.
9233         * objfiles.c (filter_overlapping_sections): Update.
9234         * stabsread.c (invalid_cpp_abbrev_complaint)
9235         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9236         (define_symbol, error_type, read_type, rs6000_builtin_type)
9237         (stabs_method_name_from_physname, read_member_functions)
9238         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9239         (attach_fields_to_type, complain_about_struct_wipeout)
9240         (read_range_type, read_args, common_block_start)
9241         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9242         Update.
9243         * mdebugread.c (index_complaint, unknown_ext_complaint)
9244         (basic_type_complaint, bad_tag_guess_complaint)
9245         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9246         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9247         (parse_procedure, parse_lines)
9248         (function_outside_compilation_unit_complaint)
9249         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9250         (bad_tag_guess_complaint, reg_value_complaint): Update.
9251         * cp-support.c (demangled_name_complaint): Update.
9252         * macroscope.c (sal_macro_scope): Update.
9253         * dwarf-index-write.c (class debug_names): Update.
9254
9255 2018-05-23  Tom Tromey  <tom@tromey.com>
9256
9257         * complaints.c (clear_complaints): Remove "noisy" parameter.
9258         * complaints.h (clear_complaints): Update.
9259         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9260         (reread_symbols): Update.
9261
9262 2018-05-23  Tom Tromey  <tom@tromey.com>
9263
9264         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9265         SUBSEQUENT_MESSAGE.
9266         (vcomplaint, clear_complaints): Update.
9267         (symfile_explanations): Remove some messages.
9268
9269 2018-05-23  Tom Tromey  <tom@tromey.com>
9270
9271         * complaints.c (internal_complaint): Remove.
9272         * complaints.h (internal_complaint): Remove.
9273
9274 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9275
9276         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9277
9278 2018-05-22  Pedro Alves  <palves@redhat.com>
9279
9280         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9281         (remote_fileio_badfd, remote_fileio_return_errno)
9282         (remote_fileio_return_success, remote_fileio_func_open)
9283         (remote_fileio_func_open, remote_fileio_func_close)
9284         (remote_fileio_func_read, remote_fileio_func_write)
9285         (remote_fileio_func_lseek, remote_fileio_func_rename)
9286         (remote_fileio_func_unlink, remote_fileio_func_stat)
9287         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9288         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9289         remote_target parameter.
9290         (remote_fio_func_map) <func>: Add remote_target parameter.
9291         (do_remote_fileio_request, remote_fileio_request):
9292         * remote-fileio.h (remote_fileio_request):
9293         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9294         remote_target parameter.
9295         (remote_notif_process, handle_notification): Adjust to pass down
9296         the remote.
9297         (remote_notif_state_allocate): Add remote_target parameter.  Save
9298         it.
9299         * remote-notif.h (struct remote_target): Forward declare.
9300         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9301         remote_target parameter.
9302         (struct remote_notif_state) <remote>: New field.
9303         (remote_notif_ack, remote_notif_parse): Add remote_target
9304         parameter.
9305         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9306         remote_target parameter.
9307         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9308         (threads_listing_context, rmt_thread_action, protocol_feature)
9309         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9310         (packet_result, struct threads_listing_context, remote_state):
9311         Move definitions and declarations higher up.
9312         (remote_target) <~remote_target>: Declare.
9313         (remote_download_command_source, remote_file_put, remote_file_get)
9314         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9315         (remote_hostio_pread_vFile, remote_hostio_send_command)
9316         (remote_hostio_set_filesystem, remote_hostio_open)
9317         (remote_hostio_close, remote_hostio_unlink, remote_state)
9318         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9319         (get_memory_write_packet_size, get_memory_read_packet_size)
9320         (append_pending_thread_resumptions, remote_detach_1)
9321         (append_resumption, remote_resume_with_vcont)
9322         (add_current_inferior_and_thread, wait_ns, wait_as)
9323         (process_stop_reply, remote_notice_new_inferior)
9324         (process_initial_stop_replies, remote_add_thread)
9325         (btrace_sync_conf, remote_btrace_maybe_reopen)
9326         (remove_new_fork_children, kill_new_fork_children)
9327         (discard_pending_stop_replies, stop_reply_queue_length)
9328         (check_pending_events_prevent_wildcard_vcont)
9329         (discard_pending_stop_replies_in_queue, stop_reply)
9330         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9331         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9332         (remote_interrupt_as, remote_interrupt_ns)
9333         (remote_get_noisy_reply, remote_query_attached)
9334         (remote_add_inferior, remote_current_thread, get_current_thread)
9335         (set_thread, set_general_thread, set_continue_thread)
9336         (set_general_process, write_ptid)
9337         (remote_unpack_thread_info_response, remote_get_threadinfo)
9338         (parse_threadlist_response, remote_get_threadlist)
9339         (remote_threadlist_iterator, remote_get_threads_with_ql)
9340         (remote_get_threads_with_qxfer)
9341         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9342         (get_offsets, remote_check_symbols, remote_supported_packet)
9343         (remote_query_supported, remote_packet_size)
9344         (remote_serial_quit_handler, remote_detach_pid)
9345         (remote_vcont_probe, remote_resume_with_hc)
9346         (send_interrupt_sequence, interrupt_query)
9347         (remote_notif_get_pending_events, fetch_register_using_p)
9348         (send_g_packet, process_g_packet, fetch_registers_using_g)
9349         (store_register_using_P, store_registers_using_G)
9350         (set_remote_traceframe, check_binary_download)
9351         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9352         (remote_xfer_live_readonly_partial, remote_read_bytes)
9353         (remote_send_printf, remote_flash_write, readchar)
9354         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9355         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9356         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9357         (extended_remote_disable_randomization, extended_remote_run)
9358         (send_environment_packet, extended_remote_environment_support)
9359         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9360         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9361         (packet_command): Now methods of ...
9362         (remote_target): ... this class.
9363         (m_remote_state) <remote_target>: New field.
9364         (struct remote_state) <stop_reply_queue,
9365         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9366         fields.
9367         (remote_state::remote_state): Allocate stop_reply_queue.
9368         (remote_state): Delete global.
9369         (get_remote_state_raw): Delete.
9370         (remote_target::get_remote_state): Allocate m_remote_state on
9371         demand.
9372         (get_current_remote_target): New.
9373         (remote_ops, extended_remote_ops): Delete.
9374         (wait_forever_enabled_p, remote_async_inferior_event_token):
9375         Delete, moved to struct remote_state.
9376         (remote_target::close): Delete self.  Destruction bits split to
9377         ...
9378         (remote_target::~remote_target): ... this.
9379         (show_memory_packet_size): Adjust to use
9380         get_current_remote_target.
9381         (struct protocol_feature) <func>: Add remote_target parameter.
9382         All callers adjusted.
9383         (curr_quit_handler_target): New.
9384         (remote_serial_quit_handler): Reimplement.
9385         (remote_target::open_1): Adjust to use get_current_remote_target.
9386         Heap-allocate remote_target/extended_remote_target instances.
9387         (vcont_builder::vcont_builder): Add remote_target parameter, and
9388         save it in m_remote.  All callers adjusted.
9389         (vcont_builder::m_remote): New field.
9390         (vcont_builder::restart, vcont_builder::flush)
9391         (vcont_builder::push_action): Use it.
9392         (remote_target::commit_resume): Use it.
9393         (struct queue_iter_param) <remote>: New field.
9394         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9395         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9396         (check_pending_event_prevents_wildcard_vcont_callback)
9397         (remote_target::check_pending_events_prevent_wildcard_vcont)
9398         (remote_target::discard_pending_stop_replies)
9399         (remote_target::discard_pending_stop_replies_in_queue)
9400         (remote_target::remote_notif_remove_queued_reply): Fill in
9401         'remote' field.
9402         (remote_notif_get_pending_events): New.
9403         (remote_target::readchar, remote_target::remote_serial_write):
9404         Save/restore curr_quit_handler_target.
9405         (putpkt): New.
9406         (kill_new_fork_children): Fill in 'remote' field.
9407         (packet_command): Use get_current_remote_target, defer to
9408         remote_target method of same name.
9409         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9410         parameter, and save it in m_remote.  All callers adjusted.
9411         (scoped_remote_fd::release): Use m_remote.
9412         (scoped_remote_fd::m_remote): New field.
9413         (remote_file_put, remote_file_get, remote_file_delete): Use
9414         get_current_remote_target, defer to remote_target method of same
9415         name.
9416         (remote_btrace_reset): Add remote_state paremeter.  Update all
9417         callers.
9418         (remote_async_inferior_event_handler). Pass down 'data'.
9419         (remote_new_objfile): Use get_current_remote_target.
9420         (remote_target::vcont_r_supported): New.
9421         (set_range_stepping): Use get_current_remote_target and
9422         remote_target::vcont_r_supported.
9423         (_initialize_remote): Don't allocate 'remote_state' and
9424         'stop_reply_queue' globals.
9425         * remote.h (struct remote_target): Forward declare.
9426         (getpkt, putpkt, remote_notif_get_pending_events): Add
9427         'remote_target' parameter.
9428
9429 2018-05-22  Pedro Alves  <palves@redhat.com>
9430
9431         * remote.c (vcont_builder): Now a class.  Make all data members
9432         private.
9433         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9434         Declare methods.
9435         (vcont_builder_restart): Rename to ...
9436         (vcont_builder::restart): ... this.
9437         (vcont_builder_flush): Rename to ...
9438         (vcont_builder::flush): ... this.
9439         (vcont_builder_push_action): Rename to ...
9440         (vcont_builder::push_action): ... this.
9441         (remote_target::commit_resume): Adjust.
9442
9443 2018-05-22  Pedro Alves  <palves@redhat.com>
9444
9445         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9446         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9447         (get_fixed_memory_packet_size): New.
9448         (get_memory_packet_size): Use it.
9449         (set_memory_packet_size): Don't override the config size with
9450         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9451         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9452         Don't refer to get_memory_packet_size if not connected to a remote
9453         target.  Show "(default)" if configured size is 0.
9454
9455 2018-05-22  Pedro Alves  <palves@redhat.com>
9456
9457         * remote.c (remote_target::mourn_inferior): Move
9458         discard_pending_stop_replies call here from ...
9459         (_initialize_remote): ... here.
9460
9461 2018-05-22  Pedro Alves  <palves@redhat.com>
9462
9463         * remote.c (compare_section_command): Remove set_general_process
9464         call.
9465
9466 2018-05-22  Pedro Alves  <palves@redhat.com>
9467
9468         * remote.c (struct packet_reg, struct remote_arch_state):
9469         Move higher up in the file.
9470         (remote_state) <m_arch_states>: Store remote_arch_state values
9471         instead of remote_arch_state pointers.
9472         (remote_state::get_remote_arch_state): Adjust.
9473
9474 2018-05-22  Pedro Alves  <palves@redhat.com>
9475
9476         * remote.c: Include <unordered_map>.
9477         (remote_state): Now a class.
9478         (remote_state) <get_remote_arch_state>: Declare method.
9479         <get_remote_arch_state>: New field.
9480         (remote_arch_state) <remote_arch_state>: Declare ctor.
9481         <regs>: Now a unique_ptr.
9482         (remote_gdbarch_data_handle): Delete.
9483         (get_remote_arch_state): Delete.
9484         (remote_state::get_remote_arch_state): New.
9485         (get_remote_state): Adjust to call remote_state's
9486         get_remote_arch_state method.
9487         (init_remote_state): Delete, bits factored out to ...
9488         (remote_arch_state::remote_arch_state): ... this new method.
9489         (get_remote_packet_size, get_memory_packet_size)
9490         (process_g_packet, remote_target::fetch_registers)
9491         (remote_target::prepare_to_store, store_registers_using_G)
9492         (remote_target::store_registers, remote_target::get_trace_status):
9493         Adjust to call remote_state's method.
9494         (_initialize_remote): Remove reference to
9495         remote_gdbarch_data_handle.
9496
9497 2018-05-22  Pedro Alves  <palves@redhat.com>
9498
9499         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9500         pread>: New method declarations.
9501         (remote_target::open_1): Adjust.
9502         (readahead_cache_invalidate): Rename to ...
9503         (readahead_cache::invalidate): ... this, and adjust to be a class
9504         method.
9505         (readahead_cache_invalidate_fd): Rename to ...
9506         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9507         class method.
9508         (remote_hostio_pwrite): Adjust.
9509         (remote_hostio_pread_from_cache): Rename to ...
9510         (readahead_cache::pread): ... this, and adjust to be a class
9511         method.
9512         (remote_hostio_close): Adjust.
9513
9514 2018-05-22  Pedro Alves  <palves@redhat.com>
9515
9516         * remote.c (remote_hostio_close_cleanup): Delete.
9517         (class scoped_remote_fd): New.
9518         (remote_file_put, remote_file_get): Use it.
9519
9520 2018-05-22  Pedro Alves  <palves@redhat.com>
9521
9522         (struct vCont_action_support): Use bool and initialize all fields.
9523         (struct readahead_cache): Initialize all fields.
9524         (remote_state): Use bool and initialize all fields.
9525         (remote_state::remote_state, remote_state::~remote_state): New.
9526         (new_remote_state): Delete.
9527         (_initialize_remote): Use new to allocate remote_state.
9528
9529 2018-05-22  Pedro Alves  <palves@redhat.com>
9530             張俊芝  <zjz@zjz.name>
9531
9532         PR gdb/22973
9533         * c-exp.y: Include "c-support.h".
9534         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9535         of tolower.  Use c_ident_is_alpha to scan names.
9536         * c-lang.c: Include "c-support.h".
9537         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9538         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9539         * c-support.h: New file, with bits factored out from ...
9540         * cp-name-parser.y: ... this file.
9541         Include "c-support.h".
9542         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9543         c-support.h and renamed.
9544         (symbol_end, yylex): Adjust.
9545
9546 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9547
9548         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9549         parameter type to CORE_ADDR.
9550         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9551         parameter type in declaration to CORE_ADDR.
9552         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9553         target_auxv_search to get AT_HWCAP and use the result to get the
9554         target description.
9555         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9556         to CORE_ADDR. Remove the cast of the return value to unsigned
9557         long. Fix error predicate of target_auxv_search.
9558         (ppc_linux_nat_target::read_description): Change the type of the
9559         hwcap variable to CORE_ADDR.
9560
9561 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9562
9563         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9564         if the size of fpscr is larger than 32 bits.
9565
9566 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9567
9568         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9569         (ppc32_linux_vsxregmap): New global.
9570         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9571         regcache_supply_regset, and regcache_collect_regset.
9572         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9573         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9574         (fetch_vsx_register, store_vsx_register): Remove.
9575         (fetch_vsx_registers): Add regno parameter. Get regset using
9576         ppc_linux_vsxregset. Use regset to supply registers.
9577         (store_vsx_registers): Add regno parameter. Get regset using
9578         ppc_linux_vsxregset. Use regset to collect registers.
9579         (fetch_register): Call fetch_vsx_registers instead of
9580         fetch_vsx_register.
9581         (store_register): Call store_vsx_registers instead of
9582         store_vsx_register.
9583         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9584         new regno parameter.
9585         (store_ppc_registers): Call store_vsx_registers with -1 for the
9586         new regno parameter.
9587         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9588         (ppc_collect_vsxregset): Remove.
9589
9590 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9591
9592         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9593         offset fields.
9594         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9595         for vector register offset fields.
9596         (ppc64_fbsd_reg_offsets): Likewise.
9597         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9598         to vector register offset fields.
9599         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9600         to vector register offset fields.
9601         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9602         vector register offset fields.
9603         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9604         initializers for vector register offset fields.
9605         (rs6000_aix64_reg_offsets): Likewise.
9606         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9607         (ppc_supply_vrregset): Remove.
9608         (ppc_collect_vrregset): Remove.
9609         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9610         (ppc_linux_vrregset) : New function.
9611         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9612         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9613         (ppc32_linux_vrregset): Remove.
9614         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9615         and use result instead of ppc32_linux_vrregset.
9616         (ppc32_linux_reg_offsets): Remove initializers for vector register
9617         offset fields.
9618         (ppc64_linux_reg_offsets): Likewise.
9619         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9620         * ppc-linux-nat.c: Include regset.h.
9621         (gdb_vrregset_t): Adjust comment to account for little-endian
9622         mode.
9623         (supply_vrregset, fill_vrregset): Remove.
9624         (fetch_altivec_register, store_altivec_register): Remove.
9625         (fetch_altivec_registers): Add regno parameter. Get regset using
9626         ppc_linux_vrregset. Use regset to supply registers.
9627         (store_altivec_registers): Add regno parameter. Get regset using
9628         ppc_linux_vrregset. Use regset to collect registers.
9629         (fetch_register): Call fetch_altivec_registers instead of
9630         fetch_altivec_register.
9631         (store_register): Call store_altivec_registers instead of
9632         store_altivec_register.
9633         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9634         the new regno parameter.
9635         (store_ppc_registers): Call store_altivec_registers with -1 for
9636         the new regno parameter.
9637
9638 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9639
9640         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9641         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9642         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9643         (gdb_vrregset_t): Change array type size to
9644         PPC_LINUX_SIZEOF_VRREGSET.
9645         (gdb_vsxregset_t): Change array type size to
9646         PPC_LINUX_SIZEOF_VSXREGSET.
9647         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9648         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9649         PPC_LINUX_SIZEOF_VSXREGSET.
9650
9651 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9652
9653         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9654         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9655         nat/ppc-linux.c.
9656         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9657         ppc_linux_target_wordsize with tid.
9658         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9659         wordsize with tid.
9660         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9661         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9662         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9663         tid parameter. Remove static specifier.
9664         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9665         (ppc_linux_target_wordsize): New declaration.
9666
9667 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9668
9669         * arch/ppc-linux-common.c: New file.
9670         * arch/ppc-linux-common.h: New file.
9671         * arch/ppc-linux-tdesc.h: New file.
9672         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9673         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9674         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9675         arch/ppc-linux-tdesc.h.
9676         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9677         arch/ppc-linux-tdesc.h.
9678         (ppc_linux_nat_target::read_description): Remove target
9679         description matching code. Fill a ppc_linux_features struct and
9680         call ppc_linux_match_description with it. Move comment about ISA
9681         2.05 to ppc-linux-common.c.
9682         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9683         arch/ppc-linux-tdesc.h.
9684         (ppc_linux_core_read_description): Remove target description
9685         matching code. Fill a ppc_linux_features struct and call
9686         ppc_linux_match_description with it.
9687         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9688         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9689         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9690         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9691         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9692         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9693         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9694         (tdesc_powerpc_e500l): Remove.
9695
9696 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9697
9698         * ada-lang.c (catch_assert_command): Pass empty string instead
9699         of NULL for excep_string argument.
9700
9701 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9702
9703         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9704         the width of the requested register exceeds the width of the
9705         `ptrace' data type.
9706
9707 2018-05-21  Tom Tromey  <tom@tromey.com>
9708
9709         * printcmd.c (output_command): Remove.
9710         (output_command_const): Rename to output_command.
9711         * valprint.h (output_command): Rename from output_command_const.
9712         * tracepoint.c (trace_dump_actions): Call output_command.
9713
9714 2018-05-21  Tom Tromey  <tom@tromey.com>
9715
9716         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9717         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9718         * ada-lang.h (create_ada_exception_catchpoint): Update.
9719         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9720         std::string.
9721         (create_excep_cond_exprs, ~ada_catchpoint)
9722         (should_stop_exception, print_one_exception)
9723         (print_mention_exception, print_recreate_exception): Update.
9724         (ada_get_next_arg): Remove.
9725         (catch_ada_exception_command_split): Use std::string.  Change type
9726         of "excep_string", "cond_string".
9727         (catch_ada_exception_command): Update.
9728         (create_ada_exception_catchpoint): Change type of excep_string.
9729         (ada_exception_sal): Remove excep_string parameter.
9730         (~ada_catchpoint): Remove.
9731
9732 2018-05-21  Tom Tromey  <tom@tromey.com>
9733
9734         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9735         cleanup.
9736
9737 2018-05-21  Tom Tromey  <tom@tromey.com>
9738
9739         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9740         Return unique_xmalloc_ptr.
9741         (print_it_exception): Update.
9742
9743 2018-05-21  Tom Tromey  <tom@tromey.com>
9744
9745         * tracepoint.c (trace_dump_actions): Use std::string.
9746
9747 2018-05-21  Tom Tromey  <tom@tromey.com>
9748
9749         * symfile.c (reread_symbols): Use std::string for original_name.
9750
9751 2018-05-21  Tom Tromey  <tom@tromey.com>
9752
9753         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9754         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9755         constructor.
9756
9757 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9758
9759         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9760         instance to...
9761         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9762         * objfiles.c (get_objfile_bfd_data): Allocate
9763         objfile_per_bfd_storage with obstack_new when allocating on
9764         obstack.
9765
9766 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9767
9768         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9769         OBSTACK_ZALLOC.
9770         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9771         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9772         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9773         (add_pending): Likewise.
9774         (parse_symbol): Likewise.
9775         (parse_partial_symbols): Likewise.
9776         (psymtab_to_symtab_1): Likewise.
9777         (new_psymtab): Likewise.
9778         (elfmdebug_build_psymtabs): Likewise.
9779         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9780         * objfiles.c (get_objfile_bfd_data): Likewise.
9781         (objfile_register_static_link): Likewise.
9782         * psymtab.c (allocate_psymtab): Likewise.
9783         * stabsread.c (read_member_functions): Likewise.
9784         * xcoffread.c (xcoff_end_psymtab): Likewise.
9785
9786 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9787
9788         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9789         compiler supports std::is_trivially_constructible.
9790         * common/poison.h: Include obstack.h.
9791         (IsMallocable): Define to is_trivially_constructible if the
9792         compiler supports it, define to true_type otherwise.
9793         (xobnew): New.
9794         (XOBNEW): Redefine.
9795         (xobnewvec): New.
9796         (XOBNEWVEC): Redefine.
9797         * gdb_obstack.h (obstack_zalloc): New.
9798         (OBSTACK_ZALLOC): Redefine.
9799         (obstack_calloc): New.
9800         (OBSTACK_CALLOC): Redefine.
9801         (obstack_new): New.
9802         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9803         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9804         gdbarch.c.
9805         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9806         obstack_calloc/obstack_zalloc.
9807         (gdbarch_obstack_zalloc): Remove.
9808         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9809
9810 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9811
9812         * stack.c (backtrace_command_1): Remove useless variable int i.
9813
9814 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9815
9816         * stack.c (print_frame_info): Fix comment.
9817
9818 2018-05-18  Tom Tromey  <tom@tromey.com>
9819
9820         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9821         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9822         (~dwarf2_per_objfile): Update
9823         (dwarf2_get_dwz_file): Use new.
9824         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9825         unique_ptr.
9826
9827 2018-05-18  Tom Tromey  <tom@tromey.com>
9828
9829         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9830         unique_ptr.
9831         * dwarf2read.c (struct dwp_file): Add constructor and
9832         initializers.
9833         (open_and_init_dwp_file): Return a unique_ptr.
9834         (dwarf2_per_objfile, create_dwp_hash_table)
9835         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9836         (lookup_dwo_unit_in_dwp): Update.
9837         (open_and_init_dwp_file, get_dwp_file): Update.
9838
9839 2018-05-18  Tom Tromey  <tom@tromey.com>
9840
9841         * dwarf2read.c (dwarf2_per_objfile): Update.
9842         (struct mapped_index): Add initializers.
9843         (dwarf2_read_index): Use new.
9844         (dw2_symtab_iter_init): Update.
9845         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9846         unique_ptr.
9847
9848 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9849
9850         * dwarf2read.c (mapped_index) <total_size>: Remove.
9851
9852 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9853
9854         * unittests/format_pieces-selftests.c (test_format_specifier):
9855         Add ARI comments.
9856
9857 2018-05-18  Tom Tromey  <tom@tromey.com>
9858
9859         * c-typeprint.c (maybe_print_hole): New function.
9860         (c_print_type_struct_field_offset): Update.
9861         (c_type_print_base_struct_union): Call maybe_print_hole.
9862
9863 2018-05-17  Keith Seitz  <keiths@redhat.com>
9864
9865         * breakpoint.c (build_bpstat_chain): New function, moved from
9866         bpstat_stop_status.
9867         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9868         If no stop chain is passed, call build_bpstat_chain to build it.
9869         * breakpoint.h (build_bpstat_chain): Declare.
9870         (bpstat_stop_status): Move documentation here from breakpoint.c.
9871         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9872         build the stop chain and pass it to skip_inline_frames.
9873         Pass this stop chain to bpstat_stop_status.
9874         * inline-frame.c: Include breakpoint.h.
9875         (stopped_by_user_bp_inline_frame): New function.
9876         (skip_inline_frames): Add parameter `stop_chain'.
9877         Move documention to inline-frame.h.
9878         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9879         whether the frame should be elided.
9880         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9881         Add moved documentation and update for new parameter.
9882
9883 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9884
9885         PR cli/14975
9886         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9887         unittests/format_pieces-selftests.c.
9888         * common/format.h (format_piece) <operator==>: New.
9889         (format_pieces) <operator[]>: Remove.
9890         * common/format.c (format_pieces::format_pieces): Handle \e.
9891         * unittests/format_pieces-selftests.c: New.
9892
9893 2018-05-17  Tom Tromey  <tom@tromey.com>
9894
9895         PR symtab/23010:
9896         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9897         (dw2_instantiate_symtab): Add skip_partial parameter.
9898         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9899         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9900         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9901         (dw2_expand_symtabs_matching_one)
9902         (dw2_find_pc_sect_compunit_symtab)
9903         (dw2_debug_names_lookup_symbol)
9904         (dw2_debug_names_expand_symtabs_for_function): Update.
9905         (init_cutu_and_read_dies): Add skip_partial parameter.
9906         (process_psymtab_comp_unit, build_type_psymtabs_1)
9907         (process_skeletonless_type_unit, load_partial_comp_unit)
9908         (psymtab_to_symtab_1): Update.
9909         (load_full_comp_unit): Add skip_partial parameter.
9910         (process_imported_unit_die, dwarf2_read_addr_index)
9911         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9912         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9913         (read_signatured_type): Update.
9914
9915 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9916
9917         * value.c (release_value): Remove unused variable.
9918         (record_latest_value): Likewise.
9919         (access_value_history): Likewise.
9920         (preserve_values): Likewise.
9921
9922 2018-05-17  Tom Tromey  <tom@tromey.com>
9923
9924         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9925         Initialize.
9926
9927 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9928
9929         PR gdb/22286
9930         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9931         Also handle registers whose width is not a multiple of
9932         PTRACE_TYPE_RET.
9933         (linux_nat_trad_target::store_register): Likewise.
9934
9935 2018-05-16  Tom Tromey  <tom@tromey.com>
9936
9937         * gdbcore.h (core_bfd): Redefine.
9938         * corelow.c (core_target::close): Update.
9939         (core_target_open): Update.
9940         * progspace.h (struct program_space) <cbfd>: Now a
9941         gdb_bfd_ref_ptr.
9942
9943 2018-05-16  Tom Tromey  <tom@tromey.com>
9944
9945         PR cli/19551:
9946         * symfile-add-flags.h (enum symfile_add_flags)
9947         <SYMFILE_NOT_FILENAME>: New constant.
9948         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9949         objfile name from BFD.
9950         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9951         * minidebug.c (find_separate_debug_file_in_section): Put
9952         ".gnu_debugdata" into BFD's file name.
9953
9954 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9955
9956         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9957         Remove.
9958
9959 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9960
9961         PR binutils/21446
9962         * aarch64-tdep.c (aarch64_analyze_prologue,
9963         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9964         Indicate not interested in errors.
9965
9966 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9967
9968         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9969         Supply the MIPS_ZERO_REGNUM register.
9970
9971 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9972
9973         * mips-tdep.c (mask_address_var): Make variable static.
9974
9975 2018-05-14  Tom Tromey  <tom@tromey.com>
9976
9977         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9978
9979 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9980
9981         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9982         FXSAVE_ADDR for the mxcsr register.
9983
9984 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9985
9986         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9987
9988 2018-05-11  Pedro Alves  <palves@redhat.com>
9989
9990         * corelow.c (core_target) <core_target>: No longer inline.
9991         Initialize m_core_gdbarch, m_core_vec and build the section table
9992         here.
9993         <~core_target>: New.
9994         <core_gdbarch, get_core_register_section>: New methods.
9995         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9996         factored out from ...
9997         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9998         (core_ops): Delete.
9999         (sniff_core_bfd): Add gdbarch parameter.
10000         (core_close): Delete, merged into ...
10001         (core_target::close): ... here.  Delete self.
10002         (core_close_cleanup): Delete.
10003         (core_target_open): Allocate a core_target on the heap.  Use a
10004         unique_ptr instead of a cleanup.  Bits moved into the core_target
10005         ctor.  Adjust to use core_target methods instead of globals.
10006         (get_core_register_section): Rename to ...
10007         (core_target::get_core_register_section): ... this and adjust.
10008         (struct get_core_registers_cb_data): New.
10009         (get_core_registers_cb): Use it.  Use bool.
10010         (core_target::fetch_registers, core_target::files_info)
10011         (core_target::xfer_partial, core_target::read_description)
10012         (core_target::pid_to, core_target::thread_name): Adjust to
10013         reference class fields instead of globals.
10014         * target.h (struct target_ops_deleter, target_ops_up): New.
10015
10016 2018-05-11  Pedro Alves  <palves@redhat.com>
10017
10018         * corefile.c (core_file_command): Move to corelow.c.
10019         * corelow.c (the_core_target): Delete.
10020         (core_file_command): Moved from corefile.c.  Check exec_bfd
10021         instead of the_core_target.  Use target_detach instead of calling
10022         into the_core_target directly.
10023         (maybe_say_no_core_file_now): New.
10024         (core_target::detach): Use it.
10025         (_initialize_corelow): Remove references to the_core_target.
10026         * gdbcore.h (the_core_target): Delete.
10027
10028 2018-05-11  Tom Tromey  <tromey@redhat.com>
10029             Pedro Alves  <palves@redhat.com>
10030
10031         * corefile.c (core_bfd): Remove.
10032         * gdbcore.h (core_bfd): Now a macro.
10033         * progspace.h (struct program_space) <cbfd>: New field.
10034
10035 2018-05-11  Tom Tromey  <tom@tromey.com>
10036
10037         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10038         gdb::def_vector.
10039
10040 2018-05-10  Tom Tromey  <tom@tromey.com>
10041
10042         * configure: Rebuild.
10043         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10044
10045 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10046
10047         PR server/23158:
10048         * regformats/regdat.sh: Adjust script, following the addition
10049         of the new expedite_regs parameter to init_target_desc.
10050
10051 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10052     
10053         PR gdb/23127
10054         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10055         set_gdbarch_significant_addr_bit.
10056         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10057         set_gdbarch_significant_addr_bit.
10058         * utils.c (address_significant): Update to sign extend addr.
10059
10060 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10061
10062         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10063         (xtensa_linux_init_abi): Limit tdep->num_regs by
10064         tdep->num_nopriv_regs.
10065         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10066         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10067         not initialized.
10068
10069 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10070
10071         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10072
10073 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10074
10075         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10076         (I387_MXCSR_INIT_VAL): New constant.
10077         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10078         buffer if it was supplied by the inferior.
10079         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10080         (i387_xsave_get_clear_bv): New function.
10081         (i387_supply_xsave): Only read x87 control registers from the
10082         xsave buffer if the feature is enabled, and the state will have
10083         been written, otherwise, provide a suitable default.
10084         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10085         including x87 control registers.  Update control registers if they
10086         have changed from the default value, and mark features as enabled
10087         as required.
10088         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10089
10090 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10091
10092         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10093
10094 2018-05-07  Tom Tromey  <tom@tromey.com>
10095
10096         * configure: Rebuild.
10097         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10098
10099 2018-05-07  Tom Tromey  <tom@tromey.com>
10100
10101         PR tdep/20362:
10102         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10103         bit.  Use correct value for VDIV.
10104
10105 2018-05-04  Tom Tromey  <tom@tromey.com>
10106
10107         * configure: Rebuild.
10108         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10109
10110 2018-05-04  Tom Tromey  <tom@tromey.com>
10111
10112         * linux-record.c (record_linux_system_call) <case
10113         RECORD_SYS_RECVFROM>: Add "break".
10114
10115 2018-05-04  Tom Tromey  <tom@tromey.com>
10116
10117         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10118         Add missing "break".
10119         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10120         Add missing "break".
10121
10122 2018-05-04  Tom Tromey  <tom@tromey.com>
10123
10124         * rs6000-tdep.c (ppc_process_record_op4)
10125         (ppc_process_record_op63): Add fall-through comment.
10126
10127 2018-05-04  Tom Tromey  <tom@tromey.com>
10128
10129         * i386-tdep.c (i386_process_record): Add fall-through comment.
10130
10131 2018-05-04  Tom Tromey  <tom@tromey.com>
10132
10133         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10134         comment.
10135
10136 2018-05-04  Tom Tromey  <tom@tromey.com>
10137
10138         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10139         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10140         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10141         comment.
10142         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10143         comment.
10144         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10145         comment.
10146
10147 2018-05-04  Tom Tromey  <tom@tromey.com>
10148
10149         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10150
10151 2018-05-04  Tom Tromey  <tom@tromey.com>
10152
10153         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10154         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10155         * symfile.c (section_is_mapped): Fix fall-through comment.
10156         * stabsread.c (define_symbol, read_member_functions): Fix
10157         fall-through comment.
10158         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10159         comment.
10160         * remote.c (remote_wait_as): Fix fall-through comment.
10161         * p-exp.y (yylex): Fix fall-through comment.
10162         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10163         comment.
10164         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10165         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10166         * jv-exp.y (yylex): Fix fall-through comment.
10167         * go-exp.y (lex_one_token): Fix fall-through comment.
10168         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10169         fall-through comment.
10170         * f-exp.y (yylex): Fix fall-through comment.
10171         * dwarf2read.c (process_die): Fix fall-through comments.
10172         * dbxread.c (process_one_symbol): Fix fall-through comment.
10173         * d-exp.y (lex_one_token): Fix fall-through comment.
10174         * cp-name-parser.y (yylex): Fix fall-through comment.
10175         * coffread.c (coff_symtab_read): Fix fall-through comment.
10176         * c-exp.y (lex_one_token): Fix fall-through comment.
10177         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10178         comment.
10179         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10180         comment.
10181
10182 2018-05-04  Tom Tromey  <tom@tromey.com>
10183
10184         PR python/22730:
10185         * NEWS: Mention gdb.execute change.
10186         * gdbcmd.h (execute_control_command): Don't declare.
10187         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10188         execute_control_commands, execute_control_commands_to_string.
10189         * cli/cli-script.h (execute_control_commands)
10190         (execute_control_commands_to_string): Declare.
10191         (execute_control_command): Add from_tty parameter.
10192         * cli/cli-script.c (execute_control_commands)
10193         (execute_control_commands_to_string): New functions.
10194         (execute_user_command): Use execute_control_commands.
10195         (execute_control_command_1): Add "from_tty" parameter.  Update.
10196         (execute_control_command): Likewise.
10197
10198 2018-05-04  Tom Tromey  <tom@tromey.com>
10199
10200         PR python/22731:
10201         * NEWS: Mention that breakpoint commands are writable.
10202         * python/py-breakpoint.c (bppy_set_commands): New function.
10203         (breakpoint_object_getset) <"commands">: Use it.
10204
10205 2018-05-04  Tom Tromey  <tom@tromey.com>
10206
10207         * tracepoint.c (actions_command): Update.
10208         * mi/mi-cmd-break.c (mi_command_line_array)
10209         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10210         (mi_read_next_line): Remove.
10211         (mi_cmd_break_commands): Update.
10212         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10213         function_view.
10214         * cli/cli-script.c (get_command_line): Update.
10215         (process_next_line): Use function_view.  Constify.
10216         (recurse_read_control_structure, read_command_lines)
10217         (read_command_lines_1): Change argument types to function_view.
10218         (do_define_command, document_command): Update.
10219         * breakpoint.h (check_tracepoint_command): Don't declare.
10220         * breakpoint.c (check_tracepoint_command): Remove.
10221         (commands_command_1, create_tracepoint_from_upload): Update.
10222
10223 2018-05-04  Tom Tromey  <tom@tromey.com>
10224
10225         PR gdb/11750:
10226         * cli/cli-script.h (enum command_control_type) <define_control>:
10227         New constant.
10228         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10229         (build_command_line, execute_control_command_1)
10230         (process_next_line): Likewise.
10231         (do_define_command): New function, extracted from define_command.
10232         (define_command): Use it.
10233
10234 2018-05-04  Tom Tromey  <tom@tromey.com>
10235
10236         * tracepoint.c (actions_command): Update.
10237         * cli/cli-script.h (read_command_lines): Update.
10238         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10239         (MAX_TMPBUF): Remove define.
10240         (define_command): Use string_printf.
10241         (document_command): Likewise.
10242         * breakpoint.c (commands_command_1): Update.
10243
10244 2018-05-04  Tom Tromey  <tom@tromey.com>
10245
10246         * top.c (execute_command): Update.
10247         * cli/cli-script.h (print_command_lines): Now varargs.
10248         * cli/cli-script.c (print_command_lines): Now varargs.
10249         (execute_control_command_1) <case while_control, case if_control>:
10250         Update.
10251
10252 2018-05-04  Tom Tromey  <tom@tromey.com>
10253
10254         * tracepoint.c (all_tracepoint_actions): Rename from
10255         all_tracepoint_actions_and_cleanup.  Change return type.
10256         (actions_command, encode_actions_1, encode_actions)
10257         (trace_dump_actions, tdump_command): Update.
10258         * remote.c (remote_download_command_source): Update.
10259         * python/python.c (gdbpy_eval_from_control_command)
10260         (python_command, python_interactive_command): Update.
10261         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10262         * guile/guile.c (guile_command)
10263         (gdbscm_eval_from_control_command, guile_command): Update.
10264         * compile/compile.c (compile_code_command)
10265         (compile_print_command, compile_to_object): Update.
10266         * cli/cli-script.h (struct command_lines_deleter): New.
10267         (counted_command_line): New typedef.
10268         (struct command_line): Add constructor, destructor.
10269         <body_list>: Remove.
10270         <body_list_0, body_list_1>: New members.
10271         (command_line_up): Remove typedef.
10272         (read_command_lines, read_command_lines_1, get_command_line):
10273         Update.
10274         (copy_command_lines): Don't declare.
10275         * cli/cli-script.c (build_command_line): Use "new".
10276         (get_command_line): Return counted_command_line.
10277         (print_command_lines, execute_user_command)
10278         (execute_control_command_1, while_command, if_command): Update.
10279         (realloc_body_list): Remove.
10280         (process_next_line, recurse_read_control_structure): Update.
10281         (read_command_lines, read_command_lines_1): Return counted_command_line.
10282         (free_command_lines): Use "delete".
10283         (copy_command_lines): Remove.
10284         (define_command, document_command, show_user_1): Update.
10285         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10286         a counted_command_line.
10287         * breakpoint.h (counted_command_line): Remove typedef.
10288         (breakpoint_set_commands): Update.
10289         * breakpoint.c (check_no_tracepoint_commands)
10290         (validate_commands_for_breakpoint): Update.
10291         (breakpoint_set_commands): Change commands to be a
10292         counted_command_line.
10293         (commands_command_1, update_dprintf_command_list)
10294         (create_tracepoint_from_upload): Update.
10295
10296 2018-05-04  Tom Tromey  <tom@tromey.com>
10297
10298         * cli/cli-decode.h (cmd_list_element): New constructor.
10299         (~cmd_list_element): New destructor.
10300         (struct cmd_list_element): Add initializers.
10301         * cli/cli-decode.c (do_add_cmd): Use "new".
10302         (delete_cmd): Use "delete".
10303
10304 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10305             Pedro Alves <palves@redhat.com>
10306
10307         PR breakpoints/19806 and support for PR external/20207.
10308         * NEWS: Mention Aarch64 watchpoint improvements.
10309         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10310         watchpoints and PR external/20207 watchpoints.
10311         * nat/aarch64-linux-hw-point.c
10312         (kernel_supports_any_contiguous_range): New.
10313         (aarch64_watchpoint_offset): New.
10314         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10315         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10316         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10317         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10318         next_addr_orig_p.  Support PR external/20207 watchpoints.
10319         (aarch64_downgrade_regs): New.
10320         (aarch64_dr_state_insert_one_point): New parameters offset and
10321         addr_orig.
10322         (aarch64_dr_state_remove_one_point): Likewise.
10323         (aarch64_handle_breakpoint): Update caller.
10324         (aarch64_handle_aligned_watchpoint): Likewise.
10325         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10326         aligned_offset.
10327         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10328         aarch64_downgrade_regs.
10329         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10330         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10331         (DR_CONTROL_MASK): ... this.
10332         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10333         (unsigned int aarch64_watchpoint_offset): New prototype.
10334         (aarch64_linux_set_debug_regs): Remove const from state.
10335         * utils.c (align_up, align_down): Move to ...
10336         * common/common-utils.c (align_up, align_down): ... here.
10337         * utils.h (align_up, align_down): Move to ...
10338         * common/common-utils.h (align_up, align_down): ... here.
10339
10340 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10341
10342         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10343         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10344         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10345         Re-implement to match the ABI as summarized in GCC's
10346         gcc/config/sparc/sparc.c.  All callers updated.
10347         (sparc32_store_arguments): Remove assertion.
10348
10349 2018-05-04  Tom Tromey  <tom@tromey.com>
10350
10351         * printcmd.c: Don't include tui.h.
10352         (decode_format): Use skip_spaces.
10353
10354 2018-05-04  Tom Tromey  <tom@tromey.com>
10355
10356         PR gdb/22619:
10357         * printcmd.c (last_count): New global.
10358         (x_command): Use saved count when repeating.
10359
10360 2018-05-04  Tom Tromey  <tom@tromey.com>
10361
10362         * nto-procfs.c (do_closedir_cleanup): Remove.
10363         (procfs_pidlist): Use gdb_dir_up.
10364         * procfs.c (do_closedir_cleanup): Remove.
10365         (proc_update_threads): Use gdb_dir_up.
10366         * common/filestuff.h (struct gdb_dir_deleter): New.
10367         (gdb_dir_up): New typedef.
10368
10369 2018-05-04  Tom Tromey  <tom@tromey.com>
10370
10371         * ada-lang.c (print_mention_exception): Use std::string.
10372
10373 2018-05-04  Tom Tromey  <tom@tromey.com>
10374
10375         * ada-lang.c (create_excep_cond_exprs): Update.
10376         (ada_exception_catchpoint_cond_string): Use std::string.
10377
10378 2018-05-04  Tom Tromey  <tom@tromey.com>
10379
10380         * ada-lang.c (xget_renaming_scope): Return std::string.
10381         (old_renaming_is_invisible): Update.
10382
10383 2018-05-04  Tom Tromey  <tom@tromey.com>
10384
10385         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10386         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10387
10388 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10389
10390         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10391
10392 2018-05-04  Tom Tromey  <tom@tromey.com>
10393
10394         * remote.c (remote_query_supported_append): Change type.
10395         (remote_check_symbols): Update.
10396
10397 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10398
10399         PR gdb/11420
10400         * configure.ac: Prepend libpython.
10401         * python/python-config.py: Likewise.
10402         * configure: Regenerate.
10403
10404 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10405
10406         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10407
10408 2018-05-03  Pedro Alves  <palves@redhat.com>
10409
10410         * s390-linux-nat.c
10411         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10412         override.  Write 'true' instead of '1'.
10413         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10414         declaration.
10415
10416 2018-05-02  Pedro Alves  <palves@redhat.com>
10417
10418         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10419         add_inf_child_target.
10420         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10421         add_inf_child_target.
10422         * aix-thread.c (aix_thread_target_info): New.
10423         (aix_thread_target) <shortname, longname, doc>: Delete.
10424         <info>: New.
10425         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10426         add_inf_child_target.
10427         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10428         add_inf_child_target.
10429         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10430         add_inf_child_target.
10431         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10432         add_inf_child_target.
10433         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10434         add_inf_child_target.
10435         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10436         add_inf_child_target.
10437         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10438         add_inf_child_target.
10439         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10440         add_inf_child_target.
10441         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10442         add_inf_child_target.
10443         * bfd-target.c (target_bfd_target_info): New.
10444         (target_bfd) <shortname, longname, doc>: Delete.
10445         <info>: New.
10446         * bsd-kvm.c (bsd_kvm_target_info): New.
10447         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10448         <info>: New.
10449         (bsd_kvm_target::open): Rename to ...
10450         (bsd_kvm_target_open): ... this.  Adjust.
10451         * bsd-uthread.c (bsd_uthread_target_info): New.
10452         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10453         <info>: New.
10454         * corefile.c (core_file_command): Adjust.
10455         * corelow.c (core_target_info): New.
10456         (core_target) <shortname, longname, doc>: Delete.
10457         <info>: New.
10458         (core_target::open): Rename to ...
10459         (core_target_open): ... this.  Adjust.
10460         * ctf.c (ctf_target_info): New.
10461         (ctf_target) <shortname, longname, doc>: Delete.
10462         <info>: New.
10463         (ctf_target::open): Rename to ...
10464         (ctf_target_open): ... this.
10465         (_initialize_ctf): Adjust.
10466         * exec.c (exec_target_info): New.
10467         (exec_target) <shortname, longname, doc>: Delete.
10468         <info>: New.
10469         (exec_target::open): Rename to ...
10470         (exec_target_open): ... this.
10471         * gdbcore.h (core_target_open): Declare.
10472         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10473         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10474         add_inf_child_target.
10475         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10476         add_inf_child_target.
10477         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10478         add_inf_child_target.
10479         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10480         add_inf_child_target.
10481         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10482         add_inf_child_target.
10483         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10484         add_inf_child_target.
10485         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10486         add_inf_child_target.
10487         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10488         add_inf_child_target.
10489         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10490         add_inf_child_target.
10491         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10492         add_inf_child_target.
10493         * inf-child.c (inf_child_target_info): New.
10494         (inf_child_target::info): New.
10495         (inf_child_open_target): Remove 'target' parameter.  Use
10496         get_native_target instead.
10497         (inf_child_target::open): Delete.
10498         (add_inf_child_target): New.
10499         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10500         Delete.
10501         <info>: New.
10502         (add_inf_child_target): Declare.
10503         (inf_child_open_target): Declare.
10504         * linux-thread-db.c (thread_db_target_info): New.
10505         (thread_db_target) <shortname, longname, doc>: Delete.
10506         <info>: New.
10507         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10508         add_inf_child_target.
10509         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10510         add_inf_child_target.
10511         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10512         add_inf_child_target.
10513         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10514         add_inf_child_target.
10515         * make-target-delegates (print_class): Adjust.
10516         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10517         add_inf_child_target.
10518         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10519         add_inf_child_target.
10520         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10521         add_inf_child_target.
10522         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10523         add_inf_child_target.
10524         * nto-procfs.c (nto_native_target_info): New.
10525         (nto_procfs_target_native) <shortname, longname, doc>:
10526         Delete.
10527         <info>: New.
10528         (nto_procfs_target_info): New.
10529         (nto_procfs_target_procfs) <shortname, longname, doc>:
10530         Delete.
10531         <info>: New.
10532         (init_procfs_targets): Adjust.
10533         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10534         add_inf_child_target.
10535         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10536         add_inf_child_target.
10537         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10538         add_inf_child_target.
10539         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10540         add_inf_child_target.
10541         * ravenscar-thread.c (ravenscar_target_info): New.
10542         (ravenscar_thread_target) <shortname, longname, doc>:
10543         Delete.
10544         <info>: New.
10545         * record-btrace.c (record_btrace_target_info):
10546         (record_btrace_target) <shortname, longname, doc>: Delete.
10547         <info>: New.
10548         (record_btrace_target::open): Rename to ...
10549         (record_btrace_target_open): ... this.  Adjust.
10550         * record-full.c (record_longname, record_doc): New.
10551         (record_full_base_target) <shortname, longname, doc>: Delete.
10552         <info>: New.
10553         (record_full_target_info): New.
10554         (record_full_target): <shortname>: Delete.
10555         <info>: New.
10556         (record_full_core_open_1, record_full_open_1): Update comments.
10557         (record_full_base_target::open): Rename to ...
10558         (record_full_open): ... this.
10559         (cmd_record_full_restore): Update.
10560         (_initialize_record_full): Update.
10561         * remote-sim.c (remote_sim_target_info): New.
10562         (gdbsim_target) <shortname, longname, doc>: Delete.
10563         <info>: New.
10564         (gdbsim_target::open): Rename to ...
10565         (gdbsim_target_open): ... this.
10566         (_initialize_remote_sim): Adjust.
10567         * remote.c (remote_doc): New.
10568         (remote_target_info): New.
10569         (remote_target) <shortname, longname, doc>: Delete.
10570         <info>: New.
10571         (extended_remote_target_info): New.
10572         (extended_remote_target) <shortname, longname, doc>: Delete.
10573         <info>: New.
10574         (remote_target::open_1): Make static.  Adjust.
10575         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10576         * s390-linux-nat.c (_initialize_s390_nat): Use
10577         add_inf_child_target.
10578         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10579         add_inf_child_target.
10580         * sol-thread.c (thread_db_target_info): New.
10581         (sol_thread_target) <shortname, longname, doc>: Delete.
10582         <info>: New.
10583         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10584         add_inf_child_target.
10585         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10586         add_inf_child_target.
10587         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10588         add_inf_child_target.
10589         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10590         add_inf_child_target.
10591         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10592         add_inf_child_target.
10593         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10594         add_inf_child_target.
10595         * spu-linux-nat.c (_initialize_spu_nat): Use
10596         add_inf_child_target.
10597         * spu-multiarch.c (spu_multiarch_target_info): New.
10598         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10599         <info>: New.
10600         * target-delegates.c: Regenerate.
10601         * target.c: Include <unordered_map>.
10602         (target_ops_p): Delete.
10603         (DEF_VEC_P(target_ops_p)): Delete.
10604         (target_factories): New.
10605         (test_target_info): New.
10606         (test_target_ops::info): New.
10607         (open_target): Adjust to use target_factories.
10608         (add_target_with_completer): Rename to ...
10609         (add_target): ... this.  Change prototype.  Register target_info
10610         and open callback in target_factories.  Register target_info in
10611         command context instead of target_ops.
10612         (add_target): Delete old implementation.
10613         (add_deprecated_target_alias): Change prototype.  Adjust.
10614         (the_native_target): New.
10615         (set_native_target, get_native_target): New.
10616         (find_default_run_target): Use the_native_target.
10617         (find_attach_target, find_run_target): Simplify.
10618         (target_ops::open): Delete.
10619         (dummy_target_info): New.
10620         (dummy_target::shortname, dummy_target::longname)
10621         (dummy_target::doc): Delete.
10622         (dummy_target::info): New.
10623         (debug_target::shortname, debug_target::longname)
10624         (debug_target::doc): Delete.
10625         (debug_target::info): New.
10626         * target.h (struct target_info): New.
10627         (target_ops::~target_ops): Add comment.
10628         (target_ops::info): New.
10629         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10630         longer virtual.  Implement in terms of target_info.
10631         (set_native_target, get_native_target): Declare.
10632         (target_open_ftype): New.
10633         (add_target, add_target_with_completer)
10634         (add_deprecated_target_alias): Change prototype.
10635         (test_target) <shortname, longname, doc>: Delete.
10636         <info>: New.
10637         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10638         add_inf_child_target.
10639         * tracefile-tfile.c (tfile_target_info): New.
10640         (tfile_target) <shortname, longname, doc>: Delete.
10641         <info>: New.
10642         (tfile_target::open): Rename to ...
10643         (tfile_target_open): ... this.
10644         (_initialize_tracefile_tfile): Adjust.
10645         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10646         add_inf_child_target.
10647         * windows-nat.c (_initialize_windows_nat): Use
10648         add_inf_child_target.
10649         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10650         add_inf_child_target.
10651
10652 2018-05-02  Pedro Alves  <palves@redhat.com>
10653
10654         * linux-nat.h (linux_nat_target) <low_new_thread,
10655         low_delete_thread, low_new_fork, low_forget_process,
10656         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10657         New virtual methods.
10658         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10659         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10660         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10661         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10662         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10663         Delete.
10664         * linux-fork.c (delete_fork): Adjust to call low method.
10665         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10666         (linux_nat_new_fork, linux_nat_forget_process_hook)
10667         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10668         (linux_nat_status_is_event):
10669         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10670         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10671         to call low method.
10672         (sigtrap_is_event): Rename to ...
10673         (linux_nat_target::low_status_is_event): ... this.
10674         (linux_nat_set_status_is_event): Delete.
10675         (save_stop_reason, linux_nat_wait_1)
10676         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10677         low methods.
10678         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10679         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10680         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10681         (linux_nat_set_prepare_to_resume): Delete.
10682         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10683         low virtual methods.
10684         * amd64-linux-nat.c: Likewise.
10685         * arm-linux-nat.c: Likewise.
10686         * i386-linux-nat.c: Likewise.
10687         * ia64-linux-nat.c: Likewise.
10688         * mips-linux-nat.c: Likewise.
10689         * ppc-linux-nat.c: Likewise.
10690         * s390-linux-nat.c: Likewise.
10691         * sparc64-linux-nat.c: Likewise.
10692         * x86-linux-nat.c: Likewise.
10693         * x86-linux-nat.h: Include "nat/x86-linux.h".
10694         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10695         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10696         Override methods.
10697
10698 2018-05-02  Pedro Alves  <palves@redhat.com>
10699
10700         * target.h (target_ops)
10701         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10702         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10703         stopped_by_watchpoint, have_continuable_watchpoint,
10704         stopped_data_address, watchpoint_addr_within_range,
10705         can_accel_watchpoint_condition, can_run, thread_alive,
10706         has_all_memory, has_memory, has_stack, has_registers,
10707         has_execution, can_async_p, is_async_p, supports_non_stop,
10708         always_non_stop_p, can_execute_reverse, supports_multi_process,
10709         supports_enable_disable_tracepoint,
10710         supports_disable_randomization, supports_string_tracing,
10711         supports_evaluation_of_breakpoint_conditions,
10712         can_run_breakpoint_commands, filesystem_is_local,
10713         can_download_tracepoint, get_trace_state_variable_value,
10714         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10715         record_is_replaying, record_will_replay,
10716         augmented_libraries_svr4_read>: Adjust to return bool.
10717         * aarch64-linux-nat.c: All implementations adjusted.
10718         * aix-thread.c: All implementations adjusted.
10719         * arm-linux-nat.c: All implementations adjusted.
10720         * breakpoint.c: All implementations adjusted.
10721         * bsd-kvm.c: All implementations adjusted.
10722         * bsd-uthread.c: All implementations adjusted.
10723         * corelow.c: All implementations adjusted.
10724         * ctf.c: All implementations adjusted.
10725         * darwin-nat.c: All implementations adjusted.
10726         * darwin-nat.h: All implementations adjusted.
10727         * exec.c: All implementations adjusted.
10728         * fbsd-nat.c: All implementations adjusted.
10729         * fbsd-nat.h: All implementations adjusted.
10730         * gnu-nat.c: All implementations adjusted.
10731         * gnu-nat.h: All implementations adjusted.
10732         * go32-nat.c: All implementations adjusted.
10733         * ia64-linux-nat.c: All implementations adjusted.
10734         * inf-child.c: All implementations adjusted.
10735         * inf-child.h: All implementations adjusted.
10736         * inf-ptrace.c: All implementations adjusted.
10737         * inf-ptrace.h: All implementations adjusted.
10738         * linux-nat.c: All implementations adjusted.
10739         * linux-nat.h: All implementations adjusted.
10740         * mips-linux-nat.c: All implementations adjusted.
10741         * nto-procfs.c: All implementations adjusted.
10742         * ppc-linux-nat.c: All implementations adjusted.
10743         * procfs.c: All implementations adjusted.
10744         * ravenscar-thread.c: All implementations adjusted.
10745         * record-btrace.c: All implementations adjusted.
10746         * record-full.c: All implementations adjusted.
10747         * remote-sim.c: All implementations adjusted.
10748         * remote.c: All implementations adjusted.
10749         * s390-linux-nat.c: All implementations adjusted.
10750         * sol-thread.c: All implementations adjusted.
10751         * spu-multiarch.c: All implementations adjusted.
10752         * target-delegates.c: All implementations adjusted.
10753         * target.c: All implementations adjusted.
10754         * target.h: All implementations adjusted.
10755         * tracefile-tfile.c: All implementations adjusted.
10756         * tracefile.c: All implementations adjusted.
10757         * tracefile.h: All implementations adjusted.
10758         * windows-nat.c: All implementations adjusted.
10759         * x86-linux-nat.h: All implementations adjusted.
10760         * x86-nat.h: All implementations adjusted.
10761
10762 2018-05-02  Pedro Alves  <palves@redhat.com>
10763
10764         * make-target-delegates (scan_target_h): Don't trim lines here.
10765         Replace sequences of tabs and/or whitespace with a single
10766         whitespace.
10767         (top level, parsing methods): Trim each line before processing it
10768         here.
10769
10770 2018-05-02  Pedro Alves  <palves@redhat.com>
10771             John Baldwin  <jhb@freebsd.org>
10772
10773         * target.h (enum strata) <debug_stratum>: New.
10774         (struct target_ops) <all delegation methods>: Replace by C++
10775         virtual methods, and drop "to_" prefix.  All references updated
10776         throughout.
10777         <to_shortname, to_longname, to_doc, to_data,
10778         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10779         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10780         virtual methods.  All references updated throughout.
10781         <can_attach, supports_terminal_ours, can_create_inferior,
10782         get_thread_control_capabilities, attach_no_wait>: New
10783         virtual methods.
10784         <insert_breakpoint, remove_breakpoint>: Now
10785         TARGET_DEFAULT_NORETURN methods.
10786         <info_proc>: Now returns bool.
10787         <to_magic>: Delete.
10788         (OPS_MAGIC): Delete.
10789         (current_target): Delete.  All references replaced by references
10790         to ...
10791         (target_stack): ... this.  New.
10792         (target_shortname, target_longname): Adjust.
10793         (target_can_run): Now a function declaration.
10794         (default_child_has_all_memory, default_child_has_memory)
10795         (default_child_has_stack, default_child_has_registers)
10796         (default_child_has_execution): Remove target_ops parameter.
10797         (complete_target_initialization): Delete.
10798         (memory_breakpoint_target): New template class.
10799         (test_target_ops): Refactor as a C++ class with virtual methods.
10800         * make-target-delegates (NAME_PART): Tighten.
10801         (POINTER_PART, CP_SYMBOL): New.
10802         (SIMPLE_RETURN_PART): Reimplement.
10803         (VEC_RETURN_PART): Expect less.
10804         (RETURN_PART, VIRTUAL_PART): New.
10805         (METHOD): Adjust to C++ virtual methods.
10806         (scan_target_h): Remove reference to C99.
10807         (dname): Output "target_ops::" prefix.
10808         (write_function_header): Adjust to output a C++ class method.
10809         (write_declaration): New.
10810         (write_delegator): Adjust to output a C++ class method.
10811         (tdname): Output "dummy_target::" prefix.
10812         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10813         method.
10814         (tdefault_names, debug_names): Delete.
10815         (return_types, tdefaults, styles, argtypes_array): New.
10816         (top level): All methods are delegators.
10817         (print_class): New.
10818         (top level): Print dummy_target and debug_target classes.
10819         * target-delegates.c: Regenerate.
10820         * target-debug.h (target_debug_print_enum_info_proc_what)
10821         (target_debug_print_thread_control_capabilities)
10822         (target_debug_print_thread_info_p): New.
10823         * target.c (dummy_target): Delete.
10824         (the_dummy_target, the_debug_target): New.
10825         (target_stack): Now extern.
10826         (set_targetdebug): Push/unpush debug target.
10827         (default_child_has_all_memory, default_child_has_memory)
10828         (default_child_has_stack, default_child_has_registers)
10829         (default_child_has_execution): Remove target_ops parameter.
10830         (complete_target_initialization): Delete.
10831         (add_target_with_completer): No longer call
10832         complete_target_initialization.
10833         (target_supports_terminal_ours): Use regular delegation.
10834         (update_current_target): Delete.
10835         (push_target): No longer check magic number.  Don't call
10836         update_current_target.
10837         (unpush_target): Don't call update_current_target.
10838         (target_is_pushed): No longer check magic number.
10839         (target_require_runnable): Skip for all stratums over
10840         process_stratum.
10841         (target_ops::info_proc): New.
10842         (target_info_proc): Use find_target_at and
10843         find_default_run_target.
10844         (target_supports_disable_randomization): Use regular delegation.
10845         (target_get_osdata): Use find_target_at.
10846         (target_ops::open, target_ops::close, target_ops::can_attach)
10847         (target_ops::attach, target_ops::can_create_inferior)
10848         (target_ops::create_inferior, target_ops::can_run)
10849         (target_can_run): New.
10850         (default_fileio_target): Use regular delegation.
10851         (target_ops::fileio_open, target_ops::fileio_pwrite)
10852         (target_ops::fileio_pread, target_ops::fileio_fstat)
10853         (target_ops::fileio_close, target_ops::fileio_unlink)
10854         (target_ops::fileio_readlink): New.
10855         (target_fileio_open_1, target_fileio_unlink)
10856         (target_fileio_readlink): Always call the target method.  Handle
10857         FILEIO_ENOSYS.
10858         (return_zero, return_zero_has_execution): Delete.
10859         (init_dummy_target): Delete.
10860         (dummy_target::dummy_target, dummy_target::shortname)
10861         (dummy_target::longname, dummy_target::doc)
10862         (debug_target::debug_target, debug_target::shortname)
10863         (debug_target::longname, debug_target::doc): New.
10864         (target_supports_delete_record): Use regular delegation.
10865         (setup_target_debug): Delete.
10866         (maintenance_print_target_stack): Skip debug_stratum.
10867         (initialize_targets): Instantiate the_dummy_target and
10868         the_debug_target.
10869         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10870         use target_stack.
10871         (target_auxv_search, fprint_target_auxv): Adjust.
10872         (info_auxv_command): Adjust to use target_stack.
10873         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10874         * exceptions.c (print_flush): Handle a NULL target_stack.
10875         * regcache.c (target_ops_no_register): Refactor as class with
10876         virtual methods.
10877
10878         * exec.c (exec_target): New class.
10879         (exec_ops): Now an exec_target.
10880         (exec_open, exec_close_1, exec_get_section_table)
10881         (exec_xfer_partial, exec_files_info, exec_has_memory)
10882         (exec_make_note_section): Refactor as exec_target methods.
10883         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10884         Delete.
10885         (exec_target::find_memory_regions): New.
10886         (_initialize_exec): Don't call init_exec_ops.
10887         * gdbcore.h (exec_file_clear): Delete.
10888
10889         * corefile.c (core_target): Delete.
10890         (core_file_command): Adjust.
10891         * corelow.c (core_target): New class.
10892         (the_core_target): New.
10893         (core_close): Remove target_ops parameter.
10894         (core_close_cleanup): Adjust.
10895         (core_target::close): New.
10896         (core_open, core_detach, get_core_registers, core_files_info)
10897         (core_xfer_partial, core_thread_alive, core_read_description)
10898         (core_pid_to_str, core_thread_name, core_has_memory)
10899         (core_has_stack, core_has_registers, core_info_proc): Rework as
10900         core_target methods.
10901         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10902         (_initialize_corelow): Initialize the_core_target.
10903         * gdbcore.h (core_target): Delete.
10904         (the_core_target): New.
10905
10906         * ctf.c: (ctf_target): New class.
10907         (ctf_ops): Now a ctf_target.
10908         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10909         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10910         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10911         methods.
10912         (init_ctf_ops): Delete.
10913         (_initialize_ctf): Don't call it.
10914         * tracefile-tfile.c (tfile_target): New class.
10915         (tfile_ops): Now a tfile_target.
10916         (tfile_open, tfile_close, tfile_files_info)
10917         (tfile_get_tracepoint_status, tfile_trace_find)
10918         (tfile_fetch_registers, tfile_xfer_partial)
10919         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10920         Refactor as tfile_target methods.
10921         (tfile_xfer_partial_features): Remove target_ops parameter.
10922         (init_tfile_ops): Delete.
10923         (_initialize_tracefile_tfile): Don't call it.
10924         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10925         (tracefile_has_stack, tracefile_has_registers)
10926         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10927         tracefile_target methods.
10928         (init_tracefile_ops): Delete.
10929         (tracefile_target::tracefile_target): New.
10930         * tracefile.h: Include "target.h".
10931         (tracefile_target): New class.
10932         (init_tracefile_ops): Delete.
10933
10934         * spu-multiarch.c (spu_multiarch_target): New class.
10935         (spu_ops): Now a spu_multiarch_target.
10936         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10937         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10938         (spu_search_memory, spu_mourn_inferior): Refactor as
10939         spu_multiarch_target methods.
10940         (init_spu_ops): Delete.
10941         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10942         complete_target_initialization.
10943
10944         * ravenscar-thread.c (ravenscar_thread_target): New class.
10945         (ravenscar_ops): Now a ravenscar_thread_target.
10946         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10947         (ravenscar_thread_alive, ravenscar_pid_to_str)
10948         (ravenscar_fetch_registers, ravenscar_store_registers)
10949         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10950         (ravenscar_stopped_by_hw_breakpoint)
10951         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10952         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10953         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10954         methods.
10955         (init_ravenscar_thread_ops): Delete.
10956         (_initialize_ravenscar): Remove references to
10957         init_ravenscar_thread_ops and complete_target_initialization.
10958
10959         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10960         (bsd_uthread_target): New class.
10961         (bsd_uthread_ops): Now a bsd_uthread_target.
10962         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10963         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10964         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10965         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10966         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10967         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10968         (bsd_uthread_target): Delete function.
10969         (_initialize_bsd_uthread): Remove reference to
10970         complete_target_initialization.
10971
10972         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10973         (target_bfd): ... this new class.
10974         (target_bfd_xfer_partial, target_bfd_get_section_table)
10975         (target_bfd_close): Refactor as target_bfd methods.
10976         (target_bfd::~target_bfd): New.
10977         (target_bfd_reopen): Adjust.
10978         (target_bfd::close): New.
10979
10980         * record-btrace.c (record_btrace_target): New class.
10981         (record_btrace_ops): Now a record_btrace_target.
10982         (record_btrace_open, record_btrace_stop_recording)
10983         (record_btrace_disconnect, record_btrace_close)
10984         (record_btrace_async, record_btrace_info)
10985         (record_btrace_insn_history, record_btrace_insn_history_range)
10986         (record_btrace_insn_history_from, record_btrace_call_history)
10987         (record_btrace_call_history_range)
10988         (record_btrace_call_history_from, record_btrace_record_method)
10989         (record_btrace_is_replaying, record_btrace_will_replay)
10990         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10991         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10992         (record_btrace_store_registers, record_btrace_prepare_to_store)
10993         (record_btrace_to_get_unwinder)
10994         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10995         (record_btrace_commit_resume, record_btrace_wait)
10996         (record_btrace_stop, record_btrace_can_execute_reverse)
10997         (record_btrace_stopped_by_sw_breakpoint)
10998         (record_btrace_supports_stopped_by_sw_breakpoint)
10999         (record_btrace_stopped_by_hw_breakpoint)
11000         (record_btrace_supports_stopped_by_hw_breakpoint)
11001         (record_btrace_update_thread_list, record_btrace_thread_alive)
11002         (record_btrace_goto_begin, record_btrace_goto_end)
11003         (record_btrace_goto, record_btrace_stop_replaying_all)
11004         (record_btrace_execution_direction)
11005         (record_btrace_prepare_to_generate_core)
11006         (record_btrace_done_generating_core): Refactor as
11007         record_btrace_target methods.
11008         (init_record_btrace_ops): Delete.
11009         (_initialize_record_btrace): Remove reference to
11010         init_record_btrace_ops.
11011         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
11012         the execution_direction global.
11013         (record_full_base_target, record_full_target)
11014         (record_full_core_target): New classes.
11015         (record_full_ops): Now a record_full_target.
11016         (record_full_core_ops): Now a record_full_core_target.
11017         (record_full_target::detach, record_full_target::disconnect)
11018         (record_full_core_target::disconnect)
11019         (record_full_target::mourn_inferior, record_full_target::kill):
11020         New.
11021         (record_full_open, record_full_close, record_full_async): Refactor
11022         as methods of the record_full_base_target class.
11023         (record_full_resume, record_full_commit_resume): Refactor
11024         as methods of the record_full_target class.
11025         (record_full_wait, record_full_stopped_by_watchpoint)
11026         (record_full_stopped_data_address)
11027         (record_full_stopped_by_sw_breakpoint)
11028         (record_full_supports_stopped_by_sw_breakpoint)
11029         (record_full_stopped_by_hw_breakpoint)
11030         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
11031         methods of the record_full_base_target class.
11032         (record_full_store_registers, record_full_xfer_partial)
11033         (record_full_insert_breakpoint, record_full_remove_breakpoint):
11034         Refactor as methods of the record_full_target class.
11035         (record_full_can_execute_reverse, record_full_get_bookmark)
11036         (record_full_goto_bookmark, record_full_execution_direction)
11037         (record_full_record_method, record_full_info, record_full_delete)
11038         (record_full_is_replaying, record_full_will_replay)
11039         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11040         (record_full_stop_replaying): Refactor as methods of the
11041         record_full_base_target class.
11042         (record_full_core_resume, record_full_core_kill)
11043         (record_full_core_fetch_registers)
11044         (record_full_core_prepare_to_store)
11045         (record_full_core_store_registers, record_full_core_xfer_partial)
11046         (record_full_core_insert_breakpoint)
11047         (record_full_core_remove_breakpoint)
11048         (record_full_core_has_execution): Refactor
11049         as methods of the record_full_core_target class.
11050         (record_full_base_target::supports_delete_record): New.
11051         (init_record_full_ops): Delete.
11052         (init_record_full_core_ops): Delete.
11053         (record_full_save): Refactor as method of the
11054         record_full_base_target class.
11055         (_initialize_record_full): Remove references to
11056         init_record_full_ops and init_record_full_core_ops.
11057
11058         * remote.c (remote_target, extended_remote_target): New classes.
11059         (remote_ops): Now a remote_target.
11060         (extended_remote_ops): Now an extended_remote_target.
11061         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11062         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11063         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11064         (remote_pass_signals, remote_set_syscall_catchpoint)
11065         (remote_program_signals, )
11066         (remote_thread_always_alive): Remove target_ops parameter.
11067         (remote_thread_alive, remote_thread_name)
11068         (remote_update_thread_list, remote_threads_extra_info)
11069         (remote_static_tracepoint_marker_at)
11070         (remote_static_tracepoint_markers_by_strid)
11071         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11072         (remote_open): Refactor as methods of remote_target.
11073         (extended_remote_open, extended_remote_detach)
11074         (extended_remote_attach, extended_remote_post_attach):
11075         (extended_remote_supports_disable_randomization)
11076         (extended_remote_create_inferior): : Refactor as method of
11077         extended_remote_target.
11078         (remote_set_permissions, remote_open_1, remote_detach)
11079         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11080         (remote_resume, remote_commit_resume, remote_stop)
11081         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11082         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11083         (remote_prepare_to_store, remote_store_registers)
11084         (remote_flash_erase, remote_flash_done, remote_files_info)
11085         (remote_kill, remote_mourn, remote_insert_breakpoint)
11086         (remote_remove_breakpoint, remote_insert_watchpoint)
11087         (remote_watchpoint_addr_within_range)
11088         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11089         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11090         (remote_supports_stopped_by_sw_breakpoint)
11091         (remote_stopped_by_hw_breakpoint)
11092         (remote_supports_stopped_by_hw_breakpoint)
11093         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11094         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11095         (remote_verify_memory): Refactor as methods of remote_target.
11096         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11097         parameter.
11098         (remote_xfer_partial, remote_get_memory_xfer_limit)
11099         (remote_search_memory, remote_rcmd, remote_memory_map)
11100         (remote_pid_to_str, remote_get_thread_local_address)
11101         (remote_get_tib_address, remote_read_description): Refactor as
11102         methods of remote_target.
11103         (remote_target::fileio_open, remote_target::fileio_pwrite)
11104         (remote_target::fileio_pread, remote_target::fileio_close): New.
11105         (remote_hostio_readlink, remote_hostio_fstat)
11106         (remote_filesystem_is_local, remote_can_execute_reverse)
11107         (remote_supports_non_stop, remote_supports_disable_randomization)
11108         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11109         (remote_supports_enable_disable_tracepoint)
11110         (remote_supports_string_tracing)
11111         (remote_can_run_breakpoint_commands, remote_trace_init)
11112         (remote_download_tracepoint, remote_can_download_tracepoint)
11113         (remote_download_trace_state_variable, remote_enable_tracepoint)
11114         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11115         (remote_trace_start, remote_get_trace_status)
11116         (remote_get_tracepoint_status, remote_trace_stop)
11117         (remote_trace_find, remote_get_trace_state_variable_value)
11118         (remote_save_trace_data, remote_get_raw_trace_data)
11119         (remote_set_disconnected_tracing, remote_core_of_thread)
11120         (remote_set_circular_trace_buffer, remote_traceframe_info)
11121         (remote_get_min_fast_tracepoint_insn_len)
11122         (remote_set_trace_buffer_size, remote_set_trace_notes)
11123         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11124         (remote_disable_btrace, remote_teardown_btrace)
11125         (remote_read_btrace, remote_btrace_conf)
11126         (remote_augmented_libraries_svr4_read, remote_load)
11127         (remote_pid_to_exec_file, remote_can_do_single_step)
11128         (remote_execution_direction, remote_thread_handle_to_thread_info):
11129         Refactor as methods of remote_target.
11130         (init_remote_ops, init_extended_remote_ops): Delete.
11131         (remote_can_async_p, remote_is_async_p, remote_async)
11132         (remote_thread_events, remote_upload_tracepoints)
11133         (remote_upload_trace_state_variables): Refactor as methods of
11134         remote_target.
11135         (_initialize_remote): Remove references to init_remote_ops and
11136         init_extended_remote_ops.
11137
11138         * remote-sim.c (gdbsim_target): New class.
11139         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11140         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11141         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11142         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11143         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11144         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11145         Refactor as methods of gdbsim_target.
11146         (gdbsim_ops): Now a gdbsim_target.
11147         (init_gdbsim_ops): Delete.
11148         (gdbsim_cntrl_c): Adjust.
11149         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11150
11151         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11152         (the_amd64_linux_nat_target): New.
11153         (amd64_linux_fetch_inferior_registers)
11154         (amd64_linux_store_inferior_registers): Refactor as methods of
11155         amd64_linux_nat_target.
11156         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11157         * i386-linux-nat.c: Don't include "linux-nat.h".
11158         (i386_linux_nat_target): New class.
11159         (the_i386_linux_nat_target): New.
11160         (i386_linux_fetch_inferior_registers)
11161         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11162         as methods of i386_linux_nat_target.
11163         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11164         * inf-child.c (inf_child_ops): Delete.
11165         (inf_child_fetch_inferior_registers)
11166         (inf_child_store_inferior_registers): Delete.
11167         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11168         methods of inf_child_target.
11169         (inf_child_target::supports_terminal_ours)
11170         (inf_child_target::terminal_init)
11171         (inf_child_target::terminal_inferior)
11172         (inf_child_target::terminal_ours_for_output)
11173         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11174         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11175         New.
11176         (inf_child_open, inf_child_disconnect, inf_child_close)
11177         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11178         (inf_child_post_startup_inferior, inf_child_can_run)
11179         (inf_child_pid_to_exec_file): Refactor as methods of
11180         inf_child_target.
11181         (inf_child_follow_fork): Delete.
11182         (inf_child_target::can_create_inferior)
11183         (inf_child_target::can_attach): New.
11184         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11185         (inf_child_target::has_stack, inf_child_target::has_registers)
11186         (inf_child_target::has_execution): New.
11187         (inf_child_fileio_open, inf_child_fileio_pwrite)
11188         (inf_child_fileio_pread, inf_child_fileio_fstat)
11189         (inf_child_fileio_close, inf_child_fileio_unlink)
11190         (inf_child_fileio_readlink, inf_child_use_agent)
11191         (inf_child_can_use_agent): Refactor as methods of
11192         inf_child_target.
11193         (return_zero, inf_child_target): Delete.
11194         (inf_child_target::inf_child_target): New.
11195         * inf-child.h: Include "target.h".
11196         (inf_child_target): Delete function prototype.
11197         (inf_child_target): New class.
11198         (inf_child_open_target, inf_child_mourn_inferior)
11199         (inf_child_maybe_unpush_target): Delete.
11200         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11201         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11202         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11203         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11204         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11205         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11206         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11207         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11208         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11209         methods of inf_ptrace_target.
11210         (inf_ptrace_target): Delete function.
11211         * inf-ptrace.h: Include "inf-child.h".
11212         (inf_ptrace_target): Delete function declaration.
11213         (inf_ptrace_target): New class.
11214         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11215         * linux-nat.c (linux_target): New.
11216         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11217         (linux_nat_target::~linux_nat_target): New.
11218         (linux_child_post_attach, linux_child_post_startup_inferior)
11219         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11220         (linux_child_remove_fork_catchpoint)
11221         (linux_child_insert_vfork_catchpoint)
11222         (linux_child_remove_vfork_catchpoint)
11223         (linux_child_insert_exec_catchpoint)
11224         (linux_child_remove_exec_catchpoint)
11225         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11226         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11227         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11228         (linux_nat_stopped_data_address)
11229         (linux_nat_stopped_by_sw_breakpoint)
11230         (linux_nat_supports_stopped_by_sw_breakpoint)
11231         (linux_nat_stopped_by_hw_breakpoint)
11232         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11233         (linux_nat_kill, linux_nat_mourn_inferior)
11234         (linux_nat_xfer_partial, linux_nat_thread_alive)
11235         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11236         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11237         (linux_child_static_tracepoint_markers_by_strid)
11238         (linux_nat_is_async_p, linux_nat_can_async_p)
11239         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11240         (linux_nat_supports_multi_process)
11241         (linux_nat_supports_disable_randomization, linux_nat_async)
11242         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11243         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11244         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11245         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11246         methods of linux_nat_target.
11247         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11248         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11249         parameter.
11250         (check_stopped_by_watchpoint): Adjust.
11251         (linux_xfer_partial): Delete.
11252         (linux_target_install_ops, linux_target, linux_nat_add_target):
11253         Delete.
11254         (linux_nat_target::linux_nat_target): New.
11255         * linux-nat.h: Include "inf-ptrace.h".
11256         (linux_nat_target): New.
11257         (linux_target, linux_target_install_ops, linux_nat_add_target):
11258         Delete function declarations.
11259         (linux_target): Declare global.
11260         * linux-thread-db.c (thread_db_target): New.
11261         (thread_db_target::thread_db_target): New.
11262         (thread_db_ops): Delete.
11263         (the_thread_db_target): New.
11264         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11265         (thread_db_update_thread_list, thread_db_pid_to_str)
11266         (thread_db_extra_thread_info)
11267         (thread_db_thread_handle_to_thread_info)
11268         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11269         (thread_db_resume): Refactor as methods of thread_db_target.
11270         (init_thread_db_ops): Delete.
11271         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11272         * x86-linux-nat.c: Don't include "linux-nat.h".
11273         (super_post_startup_inferior): Delete.
11274         (x86_linux_nat_target::~x86_linux_nat_target): New.
11275         (x86_linux_child_post_startup_inferior)
11276         (x86_linux_read_description, x86_linux_enable_btrace)
11277         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11278         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11279         methods of x86_linux_nat_target.
11280         (x86_linux_create_target): Delete.  Bits folded ...
11281         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11282         pointer.
11283         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11284         (x86_linux_nat_target): New class.
11285         (x86_linux_create_target): Delete.
11286         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11287         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11288         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11289         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11290         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11291         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11292         make extern.
11293         (x86_use_watchpoints): Delete.
11294         * x86-nat.h: Include "breakpoint.h" and "target.h".
11295         (x86_use_watchpoints): Delete.
11296         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11297         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11298         (x86_insert_watchpoint, x86_remove_watchpoint)
11299         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11300         (x86_stopped_by_hw_breakpoint): New declarations.
11301         (x86_nat_target): New template class.
11302
11303         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11304         (the_ppc_linux_nat_target): New.
11305         (ppc_linux_fetch_inferior_registers)
11306         (ppc_linux_can_use_hw_breakpoint)
11307         (ppc_linux_region_ok_for_hw_watchpoint)
11308         (ppc_linux_ranged_break_num_registers)
11309         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11310         (ppc_linux_insert_mask_watchpoint)
11311         (ppc_linux_remove_mask_watchpoint)
11312         (ppc_linux_can_accel_watchpoint_condition)
11313         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11314         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11315         (ppc_linux_watchpoint_addr_within_range)
11316         (ppc_linux_masked_watch_num_registers)
11317         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11318         (ppc_linux_read_description): Refactor as methods of
11319         ppc_linux_nat_target.
11320         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11321
11322         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11323         (procfs_target): New class.
11324         (the_procfs_target): New.
11325         (procfs_target): Delete function.
11326         (procfs_auxv_parse, procfs_attach, procfs_detach)
11327         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11328         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11329         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11330         (procfs_create_inferior, procfs_update_thread_list)
11331         (procfs_thread_alive, procfs_pid_to_str)
11332         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11333         (procfs_stopped_data_address, procfs_insert_watchpoint)
11334         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11335         (proc_find_memory_regions, procfs_info_proc)
11336         (procfs_make_note_section): Refactor as methods of procfs_target.
11337         (_initialize_procfs): Adjust.
11338         * sol-thread.c (sol_thread_target): New class.
11339         (sol_thread_ops): Now a sol_thread_target.
11340         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11341         (sol_thread_fetch_registers, sol_thread_store_registers)
11342         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11343         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11344         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11345         (init_sol_thread_ops): Delete.
11346         (_initialize_sol_thread): Adjust.  Remove references to
11347         init_sol_thread_ops and complete_target_initialization.
11348
11349         * windows-nat.c (windows_nat_target): New class.
11350         (windows_fetch_inferior_registers)
11351         (windows_store_inferior_registers, windows_resume, windows_wait)
11352         (windows_attach, windows_detach, windows_pid_to_exec_file)
11353         (windows_files_info, windows_create_inferior)
11354         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11355         (windows_close, windows_pid_to_str, windows_xfer_partial)
11356         (windows_get_tib_address, windows_get_ada_task_ptid)
11357         (windows_thread_name, windows_thread_alive): Refactor as
11358         windows_nat_target methods.
11359         (do_initial_windows_stuff): Adjust.
11360         (windows_target): Delete function.
11361         (_initialize_windows_nat): Adjust.
11362
11363         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11364         (darwin_mourn_inferior, darwin_kill_inferior)
11365         (darwin_create_inferior, darwin_attach, darwin_detach)
11366         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11367         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11368         (darwin_supports_multi_process): Refactor as darwin_nat_target
11369         methods.
11370         (darwin_resume_to, darwin_files_info): Delete.
11371         (_initialize_darwin_inferior): Rename to ...
11372         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11373         * darwin-nat.h: Include "inf-child.h".
11374         (darwin_nat_target): New class.
11375         (darwin_complete_target): Delete.
11376         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11377         (darwin_target): New.
11378         (i386_darwin_fetch_inferior_registers)
11379         (i386_darwin_store_inferior_registers): Refactor as methods of
11380         darwin_nat_target.
11381         (darwin_complete_target): Delete, with ...
11382         (_initialize_i386_darwin_nat): ... bits factored out here.
11383
11384         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11385         (the_alpha_linux_nat_target): New.
11386         (alpha_linux_register_u_offset): Refactor as
11387         alpha_linux_nat_target method.
11388         (_initialize_alpha_linux_nat): Adjust.
11389         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11390         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11391         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11392         methods of linux_nat_trad_target.
11393         (linux_trad_target): Delete.
11394         * linux-nat-trad.h (linux_trad_target): Delete function.
11395         (linux_nat_trad_target): New class.
11396         * mips-linux-nat.c (mips_linux_nat_target): New class.
11397         (super_fetch_registers, super_store_registers, super_close):
11398         Delete.
11399         (the_mips_linux_nat_target): New.
11400         (mips64_linux_regsets_fetch_registers)
11401         (mips64_linux_regsets_store_registers)
11402         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11403         (mips_linux_register_u_offset, mips_linux_read_description)
11404         (mips_linux_can_use_hw_breakpoint)
11405         (mips_linux_stopped_by_watchpoint)
11406         (mips_linux_stopped_data_address)
11407         (mips_linux_region_ok_for_hw_watchpoint)
11408         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11409         (mips_linux_close): Refactor as methods of mips_linux_nat.
11410         (_initialize_mips_linux_nat): Adjust to C++ification.
11411
11412         * aix-thread.c (aix_thread_target): New class.
11413         (aix_thread_ops): Now an aix_thread_target.
11414         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11415         (aix_thread_fetch_registers, aix_thread_store_registers)
11416         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11417         (aix_thread_thread_alive, aix_thread_pid_to_str)
11418         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11419         Refactor as methods of aix_thread_target.
11420         (init_aix_thread_ops): Delete.
11421         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11422         and complete_target_initialization.
11423         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11424         (rs6000_nat_target): New class.
11425         (the_rs6000_nat_target): New.
11426         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11427         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11428         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11429         (super_create_inferior): Delete.
11430         (_initialize_rs6000_nat): Adjust to C++ification.
11431
11432         * arm-linux-nat.c (arm_linux_nat_target): New class.
11433         (the_arm_linux_nat_target): New.
11434         (arm_linux_fetch_inferior_registers)
11435         (arm_linux_store_inferior_registers, arm_linux_read_description)
11436         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11437         (arm_linux_remove_hw_breakpoint)
11438         (arm_linux_region_ok_for_hw_watchpoint)
11439         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11440         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11441         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11442         arm_linux_nat_target.
11443         (_initialize_arm_linux_nat): Adjust to C++ification.
11444
11445         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11446         (the_aarch64_linux_nat_target): New.
11447         (aarch64_linux_fetch_inferior_registers)
11448         (aarch64_linux_store_inferior_registers)
11449         (aarch64_linux_child_post_startup_inferior)
11450         (aarch64_linux_read_description)
11451         (aarch64_linux_can_use_hw_breakpoint)
11452         (aarch64_linux_insert_hw_breakpoint)
11453         (aarch64_linux_remove_hw_breakpoint)
11454         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11455         (aarch64_linux_region_ok_for_hw_watchpoint)
11456         (aarch64_linux_stopped_data_address)
11457         (aarch64_linux_stopped_by_watchpoint)
11458         (aarch64_linux_watchpoint_addr_within_range)
11459         (aarch64_linux_can_do_single_step): Refactor as methods of
11460         aarch64_linux_nat_target.
11461         (super_post_startup_inferior): Delete.
11462         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11463
11464         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11465         (the_hppa_linux_nat_target): New.
11466         (hppa_linux_fetch_inferior_registers)
11467         (hppa_linux_store_inferior_registers): Refactor as methods of
11468         hppa_linux_nat_target.
11469         (_initialize_hppa_linux_nat): Adjust to C++ification.
11470
11471         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11472         (the_ia64_linux_nat_target): New.
11473         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11474         (ia64_linux_stopped_data_address)
11475         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11476         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11477         ia64_linux_nat_target methods.
11478         (super_xfer_partial): Delete.
11479         (_initialize_ia64_linux_nat): Adjust to C++ification.
11480
11481         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11482         (the_m32r_linux_nat_target): New.
11483         (m32r_linux_fetch_inferior_registers)
11484         (m32r_linux_store_inferior_registers): Refactor as
11485         m32r_linux_nat_target methods.
11486         (_initialize_m32r_linux_nat): Adjust to C++ification.
11487
11488         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11489         (the_m68k_linux_nat_target): New.
11490         (m68k_linux_fetch_inferior_registers)
11491         (m68k_linux_store_inferior_registers): Refactor as
11492         m68k_linux_nat_target methods.
11493         (_initialize_m68k_linux_nat): Adjust to C++ification.
11494
11495         * s390-linux-nat.c (s390_linux_nat_target): New class.
11496         (the_s390_linux_nat_target): New.
11497         (s390_linux_fetch_inferior_registers)
11498         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11499         (s390_insert_watchpoint, s390_remove_watchpoint)
11500         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11501         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11502         (s390_auxv_parse, s390_read_description): Refactor as methods of
11503         s390_linux_nat_target.
11504         (_initialize_s390_nat): Adjust to C++ification.
11505
11506         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11507         (the_sparc_linux_nat_target): New.
11508         (_initialize_sparc_linux_nat): Adjust to C++ification.
11509         * sparc-nat.c (sparc_fetch_inferior_registers)
11510         (sparc_store_inferior_registers): Remove target_ops parameter.
11511         * sparc-nat.h (sparc_fetch_inferior_registers)
11512         (sparc_store_inferior_registers): Remove target_ops parameter.
11513         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11514         (the_sparc64_linux_nat_target): New.
11515         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11516
11517         * spu-linux-nat.c (spu_linux_nat_target): New class.
11518         (the_spu_linux_nat_target): New.
11519         (spu_child_post_startup_inferior, spu_child_post_attach)
11520         (spu_child_wait, spu_fetch_inferior_registers)
11521         (spu_store_inferior_registers, spu_xfer_partial)
11522         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11523         methods.
11524         (_initialize_spu_nat): Adjust to C++ification.
11525
11526         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11527         (the_tilegx_linux_nat_target): New.
11528         (fetch_inferior_registers, store_inferior_registers):
11529         Refactor as methods.
11530         (_initialize_tile_linux_nat): Adjust to C++ification.
11531
11532         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11533         (the_xtensa_linux_nat_target): New.
11534         (xtensa_linux_fetch_inferior_registers)
11535         (xtensa_linux_store_inferior_registers): Refactor as
11536         xtensa_linux_nat_target methods.
11537         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11538
11539         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11540         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11541         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11542         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11543         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11544         (fbsd_stopped_by_sw_breakpoint)
11545         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11546         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11547         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11548         (fbsd_post_startup_inferior, fbsd_post_attach)
11549         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11550         (fbsd_set_syscall_catchpoint)
11551         (super_xfer_partial, super_resume, super_wait)
11552         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11553         (fbsd_handle_debug_trap): Remove target_ops parameter.
11554         (fbsd_nat_add_target): Delete.
11555         * fbsd-nat.h: Include "inf-ptrace.h".
11556         (fbsd_nat_add_target): Delete.
11557         (USE_SIGTRAP_SIGINFO): Define.
11558         (fbsd_nat_target): New class.
11559
11560         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11561         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11562         (amd64bsd_target): Delete.
11563         * amd64-bsd-nat.h: New file.
11564         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11565         "x86-bsd-nat.h".
11566         (amd64_fbsd_nat_target): New class.
11567         (the_amd64_fbsd_nat_target): New.
11568         (amd64fbsd_read_description): Refactor as method of
11569         amd64_fbsd_nat_target.
11570         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11571         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11572         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11573         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11574         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11575         (i386bsd_target): Delete.
11576         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11577         (i386bsd_fetch_inferior_registers)
11578         (i386bsd_store_inferior_registers): Declare.
11579         (i386_bsd_nat_target): New class.
11580         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11581         (the_i386_fbsd_nat_target): New.
11582         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11583         i386_fbsd_nat_target methods.
11584         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11585         (_initialize_i386fbsd_nat): Adjust to C++ification.
11586         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11587         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11588         (_initialize_x86_bsd_nat): Adjust to C++ification.
11589         * x86-bsd-nat.h: Include "x86-nat.h".
11590         (x86bsd_target): Delete declaration.
11591         (x86bsd_nat_target): New class.
11592
11593         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11594         (the_aarch64_fbsd_nat_target): New.
11595         (aarch64_fbsd_fetch_inferior_registers)
11596         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11597         aarch64_fbsd_nat_target.
11598         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11599         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11600         (the_alpha_bsd_nat_target): New.
11601         (alphabsd_fetch_inferior_registers)
11602         (alphabsd_store_inferior_registers): Refactor as
11603         alpha_bsd_nat_target methods.
11604         (_initialize_alphabsd_nat): Refactor as methods of
11605         alpha_bsd_nat_target.
11606         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11607         (the_amd64_nbsd_nat_target): New.
11608         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11609         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11610         (the_amd64_obsd_nat_target): New.
11611         (_initialize_amd64obsd_nat): Adjust to C++ification.
11612         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11613         (the_arm_fbsd_nat_target): New.
11614         (arm_fbsd_fetch_inferior_registers)
11615         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11616         (_initialize_arm_fbsd_nat): Refactor as methods of
11617         arm_fbsd_nat_target.
11618         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11619         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11620         (the_arm_netbsd_nat_target): New.
11621         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11622         arm_netbsd_nat_target.
11623         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11624         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11625         (the_hppa_nbsd_nat_target): New.
11626         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11627         hppa_nbsd_nat_target methods.
11628         (_initialize_hppanbsd_nat): Adjust to C++ification.
11629         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11630         (the_hppa_obsd_nat_target): New.
11631         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11632         methods of hppa_obsd_nat_target.
11633         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11634         add_target.
11635         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11636         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11637         add_target.
11638         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11639         (_initialize_i386obsd_nat): Use add_target.
11640         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11641         (the_m68k_bsd_nat_target): New.
11642         (m68kbsd_fetch_inferior_registers)
11643         (m68kbsd_store_inferior_registers): Refactor as methods of
11644         m68k_bsd_nat_target.
11645         (_initialize_m68kbsd_nat): Adjust to C++ification.
11646         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11647         (the_mips_fbsd_nat_target): New.
11648         (mips_fbsd_fetch_inferior_registers)
11649         (mips_fbsd_store_inferior_registers): Refactor as methods of
11650         mips_fbsd_nat_target.
11651         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11652         add_target.
11653         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11654         (the_mips_nbsd_nat_target): New.
11655         (mipsnbsd_fetch_inferior_registers)
11656         (mipsnbsd_store_inferior_registers): Refactor as methods of
11657         mips_nbsd_nat_target.
11658         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11659         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11660         (the_mips64_obsd_nat_target): New.
11661         (mips64obsd_fetch_inferior_registers)
11662         (mips64obsd_store_inferior_registers): Refactor as methods of
11663         mips64_obsd_nat_target.
11664         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11665         add_target.
11666         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11667         nbsd_nat_target.
11668         * nbsd-nat.h: Include "inf-ptrace.h".
11669         (nbsd_nat_target): New class.
11670         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11671         (obsd_wait): Refactor as methods of obsd_nat_target.
11672         (obsd_add_target): Delete.
11673         * obsd-nat.h: Include "inf-ptrace.h".
11674         (obsd_nat_target): New class.
11675         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11676         (the_ppc_fbsd_nat_target): New.
11677         (ppcfbsd_fetch_inferior_registers)
11678         (ppcfbsd_store_inferior_registers): Refactor as methods of
11679         ppc_fbsd_nat_target.
11680         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11681         add_target.
11682         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11683         (the_ppc_nbsd_nat_target): New.
11684         (ppcnbsd_fetch_inferior_registers)
11685         (ppcnbsd_store_inferior_registers): Refactor as methods of
11686         ppc_nbsd_nat_target.
11687         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11688         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11689         (the_ppc_obsd_nat_target): New.
11690         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11691         methods of ppc_obsd_nat_target.
11692         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11693         add_target.
11694         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11695         (the_sh_nbsd_nat_target): New.
11696         (shnbsd_fetch_inferior_registers)
11697         (shnbsd_store_inferior_registers): Refactor as methods of
11698         sh_nbsd_nat_target.
11699         (_initialize_shnbsd_nat): Adjust to C++ification.
11700         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11701         (inf_ptrace_xfer_partial): Delete.
11702         (sparc_xfer_partial, sparc_target): Delete.
11703         * sparc-nat.h (sparc_fetch_inferior_registers)
11704         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11705         (sparc_target): Delete function declaration.
11706         (sparc_target): New template class.
11707         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11708         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11709         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11710         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11711         add_target.
11712         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11713         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11714         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11715         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11716         add_target.
11717         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11718         (the_vax_bsd_nat_target): New.
11719         (vaxbsd_fetch_inferior_registers)
11720         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11721         methods.
11722         (_initialize_vaxbsd_nat): Adjust to C++ification.
11723
11724         * bsd-kvm.c (bsd_kvm_target): New class.
11725         (bsd_kvm_ops): Now a bsd_kvm_target.
11726         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11727         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11728         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11729         bsd_kvm_target.
11730         (bsd_kvm_return_one): Delete.
11731         (bsd_kvm_add_target): Adjust to C++ification.
11732
11733         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11734         (nto_procfs_target_procfs): New classes.
11735         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11736         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11737         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11738         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11739         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11740         (procfs_remove_hw_breakpoint, procfs_resume)
11741         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11742         (procfs_kill_inferior, procfs_store_registers)
11743         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11744         as methods of nto_procfs_target.
11745         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11746         (nto_native_ops): Delete.
11747         (procfs_open, procfs_native_open): Delete.
11748         (nto_native_ops): Now an nto_procfs_target_native.
11749         (init_procfs_targets): Adjust to C++ification.
11750         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11751         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11752         Refactor as methods of nto_procfs_target.
11753
11754         * go32-nat.c (go32_nat_target): New class.
11755         (the_go32_nat_target): New.
11756         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11757         (go32_store_registers, go32_xfer_partial, go32_files_info)
11758         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11759         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11760         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11761         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11762         (go32_target): Delete.
11763         (_initialize_go32_nat): Adjust to C++ification.
11764
11765         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11766         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11767         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11768         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11769         gnu_nat_target.
11770         (gnu_target): Delete.
11771         * gnu-nat.h (gnu_target): Delete.
11772         (gnu_nat_target): New class.
11773         * i386-gnu-nat.c (gnu_base_target): New.
11774         (i386_gnu_nat_target): New class.
11775         (the_i386_gnu_nat_target): New.
11776         (_initialize_i386gnu_nat): Adjust to C++ification.
11777
11778 2018-05-02  Pedro Alves  <palves@redhat.com>
11779
11780         * bfd-target.c (target_bfd_xclose): Rename to ...
11781         (target_bfd_close): ... this.
11782         (target_bfd_reopen): Adjust.
11783         * target.c (target_close): Remove references to to_xclose.
11784         * target.h (target_ops::to_xclose): Delete.
11785         (target_ops::to_close): Update comments.
11786
11787 2018-05-02  Pedro Alves  <palves@redhat.com>
11788
11789         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11790         "linux-nat.h".
11791         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11792         * inf-ptrace.c (inf_ptrace_register_u_offset)
11793         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11794         (inf_ptrace_store_register, inf_ptrace_store_registers)
11795         (inf_ptrace_trad_target): Move to ...
11796         * linux-nat-trad.c: ... this new file.
11797         * linux-nat-trad.h: New file.
11798         * linux-nat.c (linux_target_install_ops): Make extern.
11799         (linux_trad_target): Delete.
11800         * linux-nat.h (linux_trad_target): Delete declaration.
11801         (linux_target_install_ops): Declare.
11802         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11803         "linux-nat.h".
11804
11805 2018-05-02  Pedro Alves  <palves@redhat.com>
11806
11807         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11808         procfs_target/add_target here.
11809         * procfs.c (procfs_target): Make static.
11810         (_initialize_procfs): Call add_target here.
11811         * procfs.h (struct target_ops): Remove forward declaration.
11812         (procfs_target): Remove declaration.
11813         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11814
11815 2018-05-02  Pedro Alves  <palves@redhat.com>
11816
11817         * procfs.c (procfs_stopped_by_watchpoint)
11818         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11819         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11820         Forward declare.
11821         (procfs_use_watchpoints): Delete, move contents...
11822         (procfs_target): ... here.
11823         * procfs.h (procfs_use_watchpoints): Delete declaration.
11824         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11825         procfs_use_watchpoints.
11826         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11827         procfs_use_watchpoints.
11828
11829 2018-05-02  Tom Tromey  <tom@tromey.com>
11830
11831         PR python/20084:
11832         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11833         and var_zuinteger_unlimited.
11834         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11835         and PARAM_ZUINTEGER_UNLIMITED.
11836         (set_parameter_value): Handle var_zuinteger and
11837         var_zuinteger_unlimited.
11838         (add_setshow_generic): Likewise.
11839         (parmpy_init): Likewise.
11840
11841 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11842
11843         PR rust/23124
11844         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11845         pointer is not null before dereferencing it.
11846
11847 2018-04-30  Tom Tromey  <tom@tromey.com>
11848
11849         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11850         is_mi_like_p.
11851
11852 2018-04-30  Tom Tromey  <tom@tromey.com>
11853
11854         * breakpoint.c (mention): Remove use of is_mi_like_p.
11855         (print_mention_ranged_breakpoint): Likewise.
11856         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11857         of is_mi_like_p.
11858
11859 2018-04-30  Tom Tromey  <tom@tromey.com>
11860
11861         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11862
11863 2018-04-30  Tom Tromey  <tom@tromey.com>
11864
11865         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11866         (info_spu_event_command): Remove some uses of is_mi_like_p.
11867
11868 2018-04-30  Tom Tromey  <tom@tromey.com>
11869
11870         * python/py-framefilter.c (py_print_single_arg)
11871         (enumerate_locals, py_print_args, py_print_frame): Remove some
11872         uses of is_mi_like_p.
11873
11874 2018-04-30  Tom Tromey  <tom@tromey.com>
11875
11876         * ui-out.c: Update.
11877         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11878         * ui-out.h (ui_out::is_mi_like_p): Now const.
11879         (ui_out::do_is_mi_like_p): Now const.
11880         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11881
11882 2018-04-30  Tom Tromey  <tom@tromey.com>
11883
11884         * varobj.c (varobj_set_visualizer): Use new_reference.
11885         * python/python.c (gdbpy_decode_line): Use new_reference.
11886         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11887         new_reference.
11888
11889 2018-04-30  Tom Tromey  <tom@tromey.com>
11890
11891         * varobj.c (install_new_value): Use new_reference.
11892         * value.h (value_incref): Return void.  Swap intro comment with
11893         value_decref.
11894         * value.c (set_value_parent): Use new_reference.
11895         (value_incref): Return void.  Update intro comment.
11896         (release_value): Use new_reference.
11897         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11898
11899 2018-04-30  Tom Tromey  <tom@tromey.com>
11900
11901         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11902         * gdb_bfd.h (new_bfd_ref): Remove.
11903         (gdb_bfd_open): Update comment.
11904         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11905         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11906         (gdb_bfd_fdopenr): Use new_reference.
11907         * exec.c (exec_file_attach): Use new_reference.
11908
11909 2018-04-30  Tom Tromey  <tom@tromey.com>
11910
11911         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11912         method.
11913
11914 2018-04-30  Tom Tromey  <tom@tromey.com>
11915
11916         * jit.c (jit_read_code_entry): Use type_align.
11917         * i386-tdep.c (i386_gdbarch_init): Don't call
11918         set_gdbarch_long_long_align_bit.
11919         * gdbarch.sh: Remove long_long_align_bit.
11920         * gdbarch.c, gdbarch.h: Rebuild.
11921         * arc-tdep.c (arc_type_align): New function.
11922         (arc_gdbarch_init): Use arc_type_align.  Don't call
11923         set_gdbarch_long_long_align_bit.
11924
11925 2018-04-30  Tom Tromey  <tom@tromey.com>
11926
11927         * rust-lang.c (rust_type_alignment): Remove.
11928         (rust_composite_type): Use type_align.
11929
11930 2018-04-30  Tom Tromey  <tom@tromey.com>
11931
11932         * NEWS: Mention Type.align.
11933         * python/py-type.c (typy_get_alignof): New function.
11934         (type_object_getset): Add "alignof".
11935
11936 2018-04-30  Tom Tromey  <tom@tromey.com>
11937
11938         PR exp/17095:
11939         * NEWS: Update.
11940         * std-operator.def (UNOP_ALIGNOF): New operator.
11941         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11942         New.
11943         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11944         * c-lang.c (c_op_print_tab): Add alignof.
11945         * c-exp.y (ALIGNOF): New token.
11946         (exp): Add "ALIGNOF" production.
11947         (ident_tokens): Add _Alignof and alignof.
11948
11949 2018-04-30  Tom Tromey  <tom@tromey.com>
11950
11951         * i386-tdep.c (i386_type_align): New function.
11952         (i386_gdbarch_init): Update.
11953         * gdbarch.sh (type_align): New method.
11954         * gdbarch.c, gdbarch.h: Rebuild.
11955         * arch-utils.h (default_type_align): Declare.
11956         * arch-utils.c (default_type_align): New function.
11957         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11958         (struct type) <align_log2>: New field.
11959         <instance_flags>: Now a bitfield.
11960         (TYPE_RAW_ALIGN): New macro.
11961         (type_align, type_raw_align, set_type_align): Declare.
11962         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11963         functions.
11964         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11965         (get_alignment, maybe_set_alignment): New functions.
11966         (read_structure_type, read_enumeration_type, read_array_type)
11967         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11968         (read_subrange_type, read_base_type): Set type alignment.
11969
11970 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11971
11972         * dwarf2read.c (read_index_from_section): Use bool.
11973
11974 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11975
11976         PR gdb/22950
11977         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11978         with #ifdef.
11979
11980 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11981
11982         PR build/22873
11983         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11984         last step, and do it atomically.
11985
11986 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11987
11988         * compile/compile-c-types.c (convert_int, convert_float):
11989         Update for C FE v1.
11990
11991 2018-04-27  Tom Tromey  <tom@tromey.com>
11992
11993         PR rust/22545:
11994         * rust-lang.c (rust_inclusive_range_type_p): New function.
11995         (rust_range): Handle inclusive ranges.
11996         (rust_compute_range): Likewise.
11997         * rust-exp.y (struct rust_op) <inclusive>: New field.
11998         (DOTDOTEQ): New constant.
11999         (range_expr): Add "..=" productions.
12000         (operator_tokens): Add "..=" token.
12001         (ast_range): Add "inclusive" parameter.
12002         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
12003         ranges.
12004         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
12005         bounds values.
12006         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
12007         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
12008         Update comments.
12009         * expprint.c (print_subexp_standard): Handle new bounds values.
12010         (dump_subexp_body_standard): Likewise.
12011
12012 2018-04-27  Tom Tromey  <tom@tromey.com>
12013
12014         * configure: Rebuild.
12015         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
12016         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
12017         "OVERRIDE".
12018         (class symbol_needs_eval_context): Likewise.
12019         * dwarf2read.c (mock_mapped_index::symbol_name_count)
12020         (mock_mapped_index::symbol_name_at): Use "override".  Remove
12021         "virtual".
12022         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
12023         "override".
12024         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
12025         * aarch64-tdep.c (instruction_reader::read): Use "override".
12026         (instruction_reader_test::read): Likewise.
12027         * arm-tdep.c (instruction_reader::read): Use "override".
12028         (instruction_reader_thumb::read): Likewise.
12029
12030 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
12031
12032         PR remote/9665
12033         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
12034         instead of remote_send.
12035         (remote_send): Remove.
12036
12037 2018-04-26  Pedro Alves  <palves@redhat.com>
12038
12039         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12040         find_function_start_sal instead of find_pc_line.
12041
12042 2018-04-26  Pedro Alves  <palves@redhat.com>
12043
12044         * breakpoint.c (set_breakpoint_location_function): Handle
12045         mst_data_gnu_ifunc.
12046         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12047         * elfread.c (elf_symtab_read): Give data symbols with
12048         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12049         (elf_rel_plt_read): Update comment.
12050         * linespec.c (convert_linespec_to_sals): Handle
12051         mst_data_gnu_ifunc.
12052         (minsym_found): Handle mst_data_gnu_ifunc.
12053         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12054         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12055         * parse.c (find_minsym_type_and_address): Handle
12056         mst_data_gnu_ifunc.
12057         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12058         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12059         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12060         comment.
12061         <mst_data_gnu_ifunc>: New enumerator.
12062
12063 2018-04-26  Pedro Alves  <palves@redhat.com>
12064
12065         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12066         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12067         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12068         Handle it.
12069         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12070         (lookup_minimal_symbol_by_pc): Adjust.
12071         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12072         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12073         * minsyms.h (lookup_msym_prefer): New enum.
12074         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12075         parameter by a lookup_msym_prefer parameter.
12076
12077 2018-04-26  Pedro Alves  <palves@redhat.com>
12078
12079         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12080         ends in "@plt" instead of looking at the symbol's section.
12081
12082 2018-04-26  Pedro Alves  <palves@redhat.com>
12083
12084         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12085         all references.
12086         (find_pc_partial_function_gnu_ifunc): Rename to ...
12087         (find_pc_partial_function): ... this, and remove references to
12088         'is_gnu_ifunc_p'.
12089         (find_pc_partial_function): Delete old implementation.
12090         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12091
12092 2018-04-26  Pedro Alves  <palves@redhat.com>
12093
12094         * linespec.c (struct bound_minimal_symbol_search_key): New.
12095         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12096         skip first line if we found a GNU ifunc minimal symbol by name.
12097         (compare_msymbols): Change parameters to work with a destructured
12098         lhs minsym.
12099         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12100         functions.
12101
12102 2018-04-26  Pedro Alves  <palves@redhat.com>
12103
12104         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12105         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12106         address/name.
12107         (add_location_to_breakpoint): Store the minsym and the objfile in
12108         the breakpoint location.
12109         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12110         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12111         Record the minsym in the sal.
12112         * symtab.h (symtab_and_line) <msymbol>: New field.
12113
12114 2018-04-26  Pedro Alves  <palves@redhat.com>
12115
12116         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12117         unless we actually resolved the ifunc.
12118
12119 2018-04-26  Pedro Alves  <palves@redhat.com>
12120
12121         * c-exp.y (variable production): Prefer ifunc minsyms over
12122         regular function symbols.
12123         * symtab.c (find_gnu_ifunc): New function.
12124         * minsyms.h (lookup_msym_prefer): New enum.
12125         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12126         parameter by a lookup_msym_prefer parameter.
12127         * symtab.h (find_gnu_ifunc): New declaration.
12128
12129 2018-04-26  Pedro Alves  <palves@redhat.com>
12130
12131         * blockframe.c (find_gnu_ifunc_target_type): New function.
12132         (find_function_type): New.
12133         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12134         return a value with a memory address.
12135         (eval_call): For calls to GNU ifunc functions, try to find the
12136         type of the target function from the type that the resolver
12137         returns.
12138         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12139         symbols.
12140         * infcall.c (find_function_return_type): Delete.
12141         (find_function_addr): Add 'function_type' parameter.  For calls to
12142         GNU ifunc functions, try to find the type of the target function
12143         from the type that the resolver returns, and return it via
12144         FUNCTION_TYPE.
12145         (call_function_by_hand_dummy): Adjust to use the function type
12146         returned by find_function_addr.
12147         (find_function_addr): Add 'function_type' parameter and move
12148         description here.
12149         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12150         declarations.
12151
12152 2018-04-26  Pedro Alves  <palves@redhat.com>
12153
12154         * c-exp.y (variable production): Skip finding an alias for ifunc
12155         symbols.
12156
12157 2018-04-26  Pedro Alves  <palves@redhat.com>
12158
12159         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12160
12161 2018-04-25  Pedro Alves  <palves@redhat.com>
12162
12163         * infcmd.c (kill_command): Print the pid as string, not the whole
12164         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12165         message.
12166         * remote.c (remote_detach_1): Print the pid as string, not the
12167         whole thread's ptid.
12168
12169 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12170             Sergio Durigan Junior  <sergiodj@redhat.com>
12171             Pedro Alves  <palves@redhat.com>
12172
12173         * infcmd.c (kill_command): Print message when inferior has
12174         been killed.
12175         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12176         '1'.
12177         (add_inferior): Improve message printed when
12178         'print_inferior_events' is on.
12179         (exit_inferior): Remove message printed when
12180         'print_inferior_events' is on.
12181         (detach_inferior): Improve message printed when
12182         'print_inferior_events' is on.
12183         (initialize_inferiors): Use 'add_inferior_silent' to set
12184         'current_inferior_'.
12185         * inferior.h (print_inferior_events): Declare here as
12186         'extern'.
12187         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12188         '[Detaching...]' messages when 'print_inferior_events' is on.
12189         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12190         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12191         'Detaching after fork from child...', replace it by '... from
12192         parent...'.
12193         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12194         prefix/suffix when printing 'Detaching...' messages.  Print
12195         them when 'print_inferior_events' is on.
12196         * remote.c (remote_detach_1): Print message when detaching
12197         from inferior and '!is_fork_parent'.
12198
12199 2018-04-24  Tom Tromey  <tom@tromey.com>
12200
12201         * cli-out.h: Reindent.
12202
12203 2018-04-24  Tom Tromey  <tom@tromey.com>
12204
12205         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12206         (cli_ui_out::do_field_string): Use fputs_filtered.
12207         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12208
12209 2018-04-23  Tom Tromey  <tom@tromey.com>
12210
12211         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12212         gdb::unique_xmalloc_ptr.
12213
12214 2018-04-23  Tom Tromey  <tom@tromey.com>
12215
12216         * configure: Rebuild.
12217
12218 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12219
12220         PR gdb/23095
12221         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12222         prepare_for_testing.  Set normal_bp to r_debug_state if target
12223         is bsd.
12224
12225 2018-04-21  Pedro Alves  <palves@redhat.com>
12226             Rajendra SY  <rajendra.sy@gmail.com>
12227
12228         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12229         * remote.c (extended_remote_attach): In all-stop mode, mark the
12230         thread as executing.
12231
12232 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12233
12234         * thread.c (thread_apply_all_command): Fix comment.
12235         (thread_command): Fix comment.
12236
12237 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12238
12239         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12240         parameter.
12241         * features/aarch64-core.c (create_feature_aarch64_core):
12242         Regenerate.
12243         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12244         Likewise.
12245         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12246         Likewise.
12247         * features/i386/32bit-avx512.c
12248         (create_feature_i386_32bit_avx512): Likewise.
12249         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12250         Likewise.
12251         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12252         Likewise.
12253         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12254         Likewise.
12255         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12256         Likewise.
12257         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12258         Likewise.
12259         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12260         Likewise.
12261         * features/i386/64bit-avx512.c
12262         (create_feature_i386_64bit_avx512): Likewise.
12263         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12264         Likewise.
12265         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12266         Likewise.
12267         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12268         Likewise.
12269         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12270         Likewise.
12271         * features/i386/64bit-segments.c
12272         (create_feature_i386_64bit_segments): Likewise.
12273         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12274         Likewise.
12275         * features/i386/x32-core.c
12276         (create_feature_i386_x32_core): Likewise.
12277         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12278         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12279         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12280         * target-descriptions.c: In generated code, don't pass xml
12281         filename.
12282
12283 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12284
12285         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12286         (print_xml_feature::visit_post): Likewise.
12287         (print_xml_feature::visit): Likewise.
12288         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12289         (print_xml_feature): Add new class.
12290         * regformats/regdat.sh: Null xmltarget on feature targets.
12291         * target-descriptions.c (struct target_desc): Add xmltarget.
12292         (maintenance_check_tdesc_xml_convert): Add unittest function.
12293         (tdesc_get_features_xml): Add function to get xml.
12294         (maintenance_check_xml_descriptions): Test xml generation.
12295         * xml-tdesc.c (string_read_description_xml): Add function.
12296         * xml-tdesc.h (string_read_description_xml): Add declaration.
12297
12298 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12299
12300         * features/Makefile: Add feature marker to targets with new style
12301         target descriptions.
12302         * regformats/aarch64.dat: Regenerate.
12303         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12304         * regformats/i386/amd64-avx-linux.dat: Likewise.
12305         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12306         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12307         * regformats/i386/amd64-linux.dat: Likewise.
12308         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12309         * regformats/i386/amd64.dat: Likewise.
12310         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12311         * regformats/i386/i386-avx-linux.dat: Likewise.
12312         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12313         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12314         * regformats/i386/i386-linux.dat: Likewise.
12315         * regformats/i386/i386-mmx-linux.dat: Likewise.
12316         * regformats/i386/i386-mpx-linux.dat: Likewise.
12317         * regformats/i386/i386.dat: Likewise.
12318         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12319         * regformats/i386/x32-avx-linux.dat: Likewise.
12320         * regformats/i386/x32-linux.dat: Likewise.
12321         * regformats/tic6x-c62x-linux.dat: Likewise.
12322         * regformats/tic6x-c64x-linux.dat: Likewise.
12323         * regformats/tic6x-c64xp-linux.dat: Likewise.
12324         * regformats/regdat.sh: Parse feature marker.
12325
12326 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12327
12328         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12329         (tdesc_osabi_name): Likewise.
12330         * target-descriptions.c (tdesc_architecture_name): Add new
12331         function.
12332         (tdesc_osabi_name): Likewise.
12333
12334 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12335
12336         * common/tdesc.c (tdesc_predefined_type): Move to here.
12337         (tdesc_named_type): Likewise.
12338         (tdesc_create_vector): Likewise.
12339         (tdesc_create_struct): Likewise.
12340         (tdesc_set_struct_size): Likewise.
12341         (tdesc_create_union): Likewise.
12342         (tdesc_create_flags): Likewise.
12343         (tdesc_create_enum): Likewise.
12344         (tdesc_add_field): Likewise.
12345         (tdesc_add_typed_bitfield): Likewise.
12346         (tdesc_add_bitfield): Likewise.
12347         (tdesc_add_flag): Likewise.
12348         (tdesc_add_enum_value): Likewise.
12349         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12350         (struct tdesc_type_vector): Likewise.
12351         (struct tdesc_type_field): Likewise.
12352         (struct tdesc_type_with_fields): Likewise.
12353         (tdesc_create_enum): Add declaration.
12354         (tdesc_add_typed_bitfield): Likewise.
12355         (tdesc_add_enum_value): Likewise.
12356         * target-descriptions.c (tdesc_type_field): Move from here.
12357         (tdesc_type_builtin): Likewise.
12358         (tdesc_type_vector): Likewise.
12359         (tdesc_type_with_fields): Likewise.
12360         (tdesc_predefined_types): Likewise.
12361         (tdesc_named_type): Likewise.
12362         (tdesc_create_vector): Likewise.
12363         (tdesc_create_struct): Likewise.
12364         (tdesc_set_struct_size): Likewise.
12365         (tdesc_create_union): Likewise.
12366         (tdesc_create_flags): Likewise.
12367         (tdesc_create_enum): Likewise.
12368         (tdesc_add_field): Likewise.
12369         (tdesc_add_typed_bitfield): Likewise.
12370         (tdesc_add_bitfield): Likewise.
12371         (tdesc_add_flag): Likewise.
12372         (tdesc_add_enum_value): Likewise.
12373         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12374         (tdesc_add_typed_bitfield): Likewise.
12375         (tdesc_add_enum_value): Likewise.
12376
12377 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12378
12379         * common/tdesc.c (tdesc_feature::accept): Move to here.
12380         (tdesc_feature::operator==): Likewise.
12381         (tdesc_create_reg): Likewise.
12382         * common/tdesc.h (tdesc_type_kind): Likewise.
12383         (struct tdesc_type): Likewise.
12384         (struct tdesc_feature): Likewise.
12385         * regformats/regdat.sh: Create a feature.
12386         * target-descriptions.c (tdesc_type_kind): Move from here.
12387         (tdesc_type): Likewise.
12388         (tdesc_type_up): Likewise.
12389         (tdesc_feature): Likewise.
12390         (tdesc_create_reg): Likewise.
12391
12392 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12393
12394         * Makefile.in: Add arch/tdesc.c
12395         * common/tdesc.c: New file.
12396         * common/tdesc.h (tdesc_element_visitor): Move to here.
12397         (tdesc_element): Likewise.
12398         (tdesc_reg): Likewise.
12399         (tdesc_reg_up): Likewise.
12400         * regformats/regdef.h (reg): Add offset to constructors.
12401         * target-descriptions.c (tdesc_element_visitor): Move from here.
12402         (tdesc_element): Likewise.
12403         (tdesc_reg): Likewise.
12404         (tdesc_reg_up): Likewise.
12405
12406 2018-04-17  Tom Tromey  <tom@tromey.com>
12407
12408         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12409         discriminant field.
12410
12411 2018-04-17  Tom Tromey  <tom@tromey.com>
12412
12413         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12414
12415 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12416
12417         * symtab.c (print_symbol_info): Skip printing filename and line
12418         number when `last' is NULL.
12419         (symtab_symbol_info): Use empty string instead of NULL for first
12420         invocation of print_symbol_info.
12421         (rbreak_command): Pass NULL to `last' parameter of
12422         print_symbol_info.
12423
12424 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12425
12426         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12427         instead of nullptr.
12428
12429 2018-04-16  Pedro Alves  <palves@redhat.com>
12430
12431         * MAINTAINERS (sh): Remove.
12432         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12433         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12434         (ALLDEPFILES): Remove sh64-tdep.c.
12435         * NEWS: Mentions that support for SH-5/SH64 is removed.
12436         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12437         (sh*-*-openbsd*): Ditto.
12438         (sh64-*-elf*): Remove.
12439         (sh*): Remove.
12440         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12441         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12442         * sh-tdep.c: No longer include "sh64-tdep.h".
12443         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12444         * sh64-tdep.c, sh64-tdep.h: Remove files.
12445
12446 2018-04-16  Pedro Alves  <palves@redhat.com>
12447
12448         * MAINTAINERS: Remove m88k.
12449         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12450         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12451         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12452         * NEWS: Mention that support for m88k was removed.
12453         * configure.host (m88*-*-*): Remove support.
12454         * configure.nat (m88k-*-*): Remove support.
12455         * configure.tgt (m88*-*-openbsd*): Remove.
12456         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12457
12458 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12459
12460         * configure.tgt (x86_tobjs): New variable.
12461         (amd64_tobjs, i386_tobjs): Use it.
12462
12463 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12464
12465         * symtab.c (print_symbol_info): Precede the symbol definition by
12466         the line number when available.
12467         * NEWS: Advertise this enhancement.
12468
12469 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12470
12471         * NEWS (New options): announce set/show record btrace cpu.
12472         * btrace.c: Include record-btrace.h.
12473         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12474         the vendor is unknown.
12475         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12476         Maybe overwrite the btrace configuration's cpu.
12477         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12478         (btrace_fetch): Add cpu parameter.  Update callers.
12479         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12480         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12481         errata workarounds if the vendor is unknown.
12482         * python/py-record-btrace.c: Include record-btrace.h.
12483         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12484         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12485         * record-btrace.c (record_btrace_cpu_state_kind): New.
12486         (record_btrace_cpu): New.
12487         (set_record_btrace_cpu_cmdlist): New.
12488         (record_btrace_get_cpu): New.
12489         (require_btrace_thread, record_btrace_info)
12490         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12491         (cmd_set_record_btrace_cpu_none): New.
12492         (cmd_set_record_btrace_cpu_auto): New.
12493         (cmd_set_record_btrace_cpu): New.
12494         (cmd_show_record_btrace_cpu): New.
12495         (_initialize_record_btrace): Initialize set/show record btrace cpu
12496         commands.
12497         * record-btrace.h (record_btrace_get_cpu): New.
12498
12499 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12500
12501         * record.c (set_record_command): Fix typo in message.
12502
12503 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12504
12505         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12506
12507 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12508
12509         * infrun.c (process_event_stop_test): Call
12510         gdbarch_in_indirect_branch_thunk.
12511         * gdbarch.sh (in_indirect_branch_thunk): New.
12512         * gdbarch.c: Regenerated.
12513         * gdbarch.h: Regenerated.
12514         * x86-tdep.h: New.
12515         * x86-tdep.c: New.
12516         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12517         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12518         (ALLDEPFILES): Add x86-tdep.c.
12519         * arch-utils.h (default_in_indirect_branch_thunk): New.
12520         * arch-utils.c (default_in_indirect_branch_thunk): New.
12521         * i386-tdep: Include x86-tdep.h.
12522         (i386_in_indirect_branch_thunk): New.
12523         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12524         function.
12525         * amd64-tdep: Include x86-tdep.h.
12526         (amd64_in_indirect_branch_thunk): New.
12527         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12528
12529 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12530
12531         PR gdb/23053
12532         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12533         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12534         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12535         regression.
12536
12537 2018-04-12  Tom Tromey  <tom@tromey.com>
12538
12539         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12540         (rust_evaluate_subexp): Likewise.
12541
12542 2018-04-12  Pedro Alves  <palves@redhat.com>
12543
12544         * procfs.c (procfs_detach): Make forward declaration's prototype
12545         match definition's protototype.
12546         (proc_get_LDT_entry): Remove stale do_cleanups call.
12547
12548 2018-04-12  Pedro Alves  <palves@redhat.com>
12549
12550         * target.h (target_ops::to_has_exited): Delete.
12551         (target_has_exited): Delete.
12552         * target-delegates.c: Regenerate.
12553
12554 2018-04-11  Pedro Alves  <palves@redhat.com>
12555
12556         * target.c (fileio_fh_t::t): Add comment.
12557         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12558         (target_fileio_close): Handle a NULL target.
12559         (invalidate_fileio_fh): New.
12560         (target_close): Call it.
12561         * remote.c (remote_hostio_send_command): No longer check whether
12562         remote_desc is open.
12563
12564 2018-04-11  Pedro Alves  <palves@redhat.com>
12565
12566         * target.c (fileio_fh_t): Make it a named struct instead of a
12567         typedef.
12568         (fileio_fh_t::is_closed): New method.
12569         (DEF_VEC_O (fileio_fh_t)): Remove.
12570         (fileio_fhandles): Now a std::vector.
12571         (is_closed_fileio_fh): Delete.
12572         (acquire_fileio_fd): Adjust.  Rename parameters.
12573         (release_fileio_fd): Adjust.
12574         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12575         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12576         (target_fileio_close): Adjust.
12577
12578 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12579
12580         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12581         index.
12582
12583 2018-04-10  Pedro Alves  <palves@redhat.com>
12584
12585         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12586         (scoped_finish_thread_state): New class.
12587         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12588         cleanup.
12589         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12590         (fetch_inferior_event, normal_stop): Likewise.
12591         * thread.c (finish_thread_state_cleanup): Delete.
12592
12593 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12594             Pedro Alves  <palves@redhat.com>
12595
12596         * value.c: Include "selftest.h" and "common/array-view.h".
12597         (struct range) <operator ==>: New.
12598         (test_ranges_contain): New.
12599         (check_ranges_vector): New.
12600         (test_insert_into_bit_range_vector): New.
12601         (_initialize_values): Register selftests.
12602         * common/array-view.h (operator==, operator!=): New.
12603
12604 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12605
12606         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12607         an iterator.
12608         * inline-frame.c: Include <algorithm>.
12609         (struct inline_state): Add constructor.
12610         (inline_state_s): Remove.
12611         (DEF_VEC_O(inline_state_s)): Remove.
12612         (inline_states): Change type to std::vector.
12613         (find_inline_frame_state): Adjust to std::vector.
12614         (allocate_inline_frame_state): Remove.
12615         (clear_inline_frame_state): Adjust to std::vector.
12616         (skip_inline_frames): Adjust to std::vector.
12617
12618 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12619
12620         * tracepoint.h (struct trace_state_variable): Add constructor.
12621         <name>: Change type to std::string.
12622         * tracepoint.c (tsv_s): Remove.
12623         (DEF_VEC_O(tsv_s)): Remove.
12624         (tvariables): Change to std::vector.
12625         (create_trace_state_variable): Adjust to std::vector.
12626         (find_trace_state_variable): Likewise.
12627         (find_trace_state_variable_by_number): Likewise.
12628         (delete_trace_state_variable): Likewise.
12629         (trace_variable_command): Adjust to std::string.
12630         (delete_trace_variable_command): Likewise.
12631         (tvariables_info_1): Adjust to std::vector.
12632         (save_trace_state_variables): Likewise.
12633         (start_tracing): Likewise.
12634         (merge_uploaded_trace_state_variables): Adjust to std::vector
12635         and std::string.
12636         * target.h (struct target_ops)
12637         <to_download_trace_state_variable>: Pass reference to
12638         trace_state_variable.
12639         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12640         * target-delegates.c: Re-generate.
12641         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12642         (mi_tsv_deleted): Likewise.
12643         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12644         * remote.c (remote_download_trace_state_variable): Change
12645         pointer to reference and adjust.
12646         * make-target-delegates (parse_argtypes): Handle references.
12647         (write_function_header): Likewise.
12648         (munge_type): Likewise.
12649
12650 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12651
12652         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12653         string_view-selftests.c.
12654         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12655         testsuite.
12656         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12657         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12658         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12659         * unittests/basic_string_view/element_access/char/1.cc:
12660         Likewise.
12661         * unittests/basic_string_view/element_access/char/empty.cc:
12662         Likewise.
12663         * unittests/basic_string_view/element_access/char/front_back.cc:
12664         Likewise.
12665         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12666         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12667         Likewise.
12668         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12669         Likewise.
12670         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12671         Likewise.
12672         * unittests/basic_string_view/operations/compare/char/1.cc:
12673         Likewise.
12674         * unittests/basic_string_view/operations/compare/char/13650.cc:
12675         Likewise.
12676         * unittests/basic_string_view/operations/copy/char/1.cc:
12677         Likewise.
12678         * unittests/basic_string_view/operations/data/char/1.cc:
12679         Likewise.
12680         * unittests/basic_string_view/operations/find/char/1.cc:
12681         Likewise.
12682         * unittests/basic_string_view/operations/find/char/2.cc:
12683         Likewise.
12684         * unittests/basic_string_view/operations/find/char/3.cc:
12685         Likewise.
12686         * unittests/basic_string_view/operations/find/char/4.cc:
12687         Likewise.
12688         * unittests/basic_string_view/operations/rfind/char/1.cc:
12689         Likewise.
12690         * unittests/basic_string_view/operations/rfind/char/2.cc:
12691         Likewise.
12692         * unittests/basic_string_view/operations/rfind/char/3.cc:
12693         Likewise.
12694         * unittests/basic_string_view/operations/substr/char/1.cc:
12695         Likewise.
12696         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12697         * unittests/string_view-selftests.c: New file.
12698
12699 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12700
12701         * unittests/basic_string_view/capacity/1.cc: New file.
12702         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12703         * unittests/basic_string_view/cons/char/1.cc: New file.
12704         * unittests/basic_string_view/cons/char/2.cc: New file.
12705         * unittests/basic_string_view/cons/char/3.cc: New file.
12706         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12707         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12708         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12709         * unittests/basic_string_view/element_access/char/1.cc: New file.
12710         * unittests/basic_string_view/element_access/char/2.cc: New file.
12711         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12712         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12713         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12714         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12715         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12716         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12717         * unittests/basic_string_view/include.cc: New file.
12718         * unittests/basic_string_view/inserters/char/1.cc: New file.
12719         * unittests/basic_string_view/inserters/char/2.cc: New file.
12720         * unittests/basic_string_view/inserters/char/3.cc: New file.
12721         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12722         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12723         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12724         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12725         * unittests/basic_string_view/literals/types.cc: New file.
12726         * unittests/basic_string_view/literals/values.cc: New file.
12727         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12728         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12729         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12730         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12731         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12732         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12733         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12734         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12735         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12736         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12737         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12738         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12739         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12740         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12741         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12742         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12743         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12744         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12745         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12746         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12747         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12748         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12749         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12750         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12751         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12752         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12753         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12754         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12755         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12756         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12757         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12758         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12759         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12760         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12761         * unittests/basic_string_view/operators/char/2.cc: New file.
12762         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12763         * unittests/basic_string_view/range_access/char/1.cc: New file.
12764         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12765         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12766         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12767         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12768         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12769         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12770         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12771         * unittests/basic_string_view/typedefs.cc: New file.
12772         * unittests/basic_string_view/types/1.cc: New file.
12773
12774 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12775
12776         * common/gdb_string_view.h: Remove libstdc++ implementation
12777         details, adjust to gdb reality.
12778         * common/gdb_string_view.tcc: Likewise.
12779         * cli/cli-script.c (struct string_view): Remove.
12780         (user_args) <m_args>: Change element type to gdb::string_view.
12781         (user_args::insert_args): Adjust.
12782
12783 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12784
12785         * common/gdb_string_view.h: New file.
12786         * common/gdb_string_view.tcc: New file.
12787
12788 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12789
12790         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12791         * configure: Re-generate.
12792
12793 2018-04-09  Pedro Alves  <palves@redhat.com>
12794
12795         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12796         (set_target_gdbarch): Call
12797         gdb::observers::architecture_changed.notify instead of
12798         observer_notify_architecture_changed.
12799
12800 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12801
12802         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12803         (do_restore_current_traceframe_cleanup): Remove.
12804         (restore_current_traceframe_cleanup_dtor): Remove.
12805         (make_cleanup_restore_current_traceframe): Remove.
12806         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12807         New.
12808         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12809         * infrun.c (fetch_inferior_event): Use
12810         scoped_restore_current_traceframe.
12811
12812 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12813
12814         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12815         Remove.
12816         <n_allocated_type_units>: Remove.
12817         <all_type_units>: Change to std::vector.
12818         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12819         to std::vector change.
12820         (dwarf2_per_objfile::get_cutu): Likewise.
12821         (dwarf2_per_objfile::get_tu): Likewise.
12822         (create_signatured_type_table_from_index): Likewise.
12823         (create_signatured_type_table_from_debug_names): Likewise.
12824         (dw2_symtab_iter_next): Likewise.
12825         (dw2_print_stats): Likewise.
12826         (dw2_expand_all_symtabs): Likewise.
12827         (dw2_expand_marked_cus): Likewise.
12828         (dw2_debug_names_iterator::next): Likewise.
12829         (dwarf2_initialize_objfile): Likewise.
12830         (add_signatured_type_cu_to_table): Likewise.
12831         (create_all_type_units): Likewise.
12832         (add_type_unit): Likewise.
12833         (struct tu_abbrev_offset): Add constructor.
12834         (build_type_psymtabs_1): Adjust to std::vector change.
12835         (print_tu_stats): Likewise.
12836         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12837         (write_debug_names): Likewise.
12838
12839 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12840
12841         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12842         Make an std::vector.
12843         <n_comp_units>: Remove.
12844         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12845         to std::vector change.
12846         (dwarf2_per_objfile::get_cutu): Likewise.
12847         (dwarf2_per_objfile::get_cu): Likewise.
12848         (create_cus_from_index): Likewise.
12849         (create_addrmap_from_index): Likewise.
12850         (create_addrmap_from_aranges): Likewise.
12851         (dwarf2_read_index): Likewise.
12852         (dw2_find_last_source_symtab): Likewise.
12853         (dw2_map_symtabs_matching_filename): Likewise.
12854         (dw2_symtab_iter_next): Likewise.
12855         (dw2_print_stats): Likewise.
12856         (dw2_expand_all_symtabs): Likewise.
12857         (dw2_expand_symtabs_with_fullname): Likewise.
12858         (dw2_expand_marked_cus): Likewise.
12859         (dw2_map_symbol_filenames): Likewise.
12860         (create_cus_from_debug_names): Likewise.
12861         (dwarf2_read_debug_names): Likewise.
12862         (dw2_debug_names_iterator::next): Likewise.
12863         (dwarf2_initialize_objfile): Likewise.
12864         (set_partial_user): Likewise.
12865         (dwarf2_build_psymtabs_hard): Likewise.
12866         (read_comp_units_from_section): Remove arguments, adjust to
12867         std::vector change.
12868         (create_all_comp_units): Adjust to std::vector and
12869         read_comp_units_from_section changes.
12870         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12871         change.
12872         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12873         (psyms_seen_size): Likewise.
12874         (write_gdbindex): Likewise.
12875         (write_debug_names): Likewise.
12876
12877 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12878
12879         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12880         with dwarf2_per_objfile.
12881         (create_cus_from_index): Likewise.
12882         (create_signatured_type_table_from_index): Likewise.
12883         (dwarf2_read_index): Likewise.
12884         (dwarf2_initialize_objfile): Likewise.
12885         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12886         per_cu rather than get_dwarf2_per_objfile.
12887
12888 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12889
12890         * dwarf2read.h (struct signatured_type): Forward declare.
12891         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12892         New methods.
12893         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12894         (dw2_get_cutu): ...this.
12895         (dwarf2_per_objfile::get_cu): Rename from...
12896         (dw2_get_cu): ...this.
12897         (dwarf2_per_objfile::get_tu): New.
12898         (create_addrmap_from_index): Adjust.
12899         (create_addrmap_from_aranges): Adjust.
12900         (dw2_find_last_source_symtab): Adjust.
12901         (dw2_map_symtabs_matching_filename): Adjust.
12902         (dw2_symtab_iter_next): Adjust.
12903         (dw2_print_stats): Adjust.
12904         (dw2_expand_all_symtabs): Adjust.
12905         (dw2_expand_symtabs_with_fullname): Adjust.
12906         (dw2_expand_marked_cus): Adjust.
12907         (dw_expand_symtabs_matching_file_matcher): Adjust.
12908         (dw2_map_symbol_filenames): Adjust.
12909         (dw2_debug_names_iterator::next): Adjust.
12910         (dwarf2_initialize_objfile): Adjust.
12911         (set_partial_user): Adjust.
12912         (dwarf2_build_psymtabs_hard): Adjust.
12913
12914 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12915
12916         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12917         Remove unused variables.
12918         (dw2_map_symtabs_matching_filename): Likewise.
12919         (dwarf2_record_block_ranges): Likewise.
12920         (dwarf2_read_addr_index): Likewise.
12921         (follow_die_offset): Likewise.
12922
12923 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12924
12925         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12926         to symbol_file_add_main.
12927
12928 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12929
12930         PR mi/22299
12931         * mi/mi-console.c (do_fputc_async_safe): New.
12932         (mi_console_file::write_async_safe): New.
12933         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12934         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12935         New.
12936         * ui-file.c (ui_file::putstrn): Adjust call to
12937         fputstrn_unfiltered.
12938         * utils.c (printchar): Replace do_fputs and do_fprintf
12939         parameters by do_fputc.
12940         (fputstr_filtered): Adjust call to printchar.
12941         (fputstr_unfiltered): Likewise.
12942         (fputstrn_filtered): Likewise.
12943         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12944         printchar.
12945         * utils.h (do_fputc_ftype): New typedef.
12946         (fputstrn_unfiltered): Add do_fputc parameter.
12947
12948 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12949
12950         * regformats/i386/i386-avx.dat: Remove.
12951
12952 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12953
12954         PR gdb/22979
12955         * amd64-tdep.c (amd64_none_init_abi): New function.
12956         (amd64_x32_none_init_abi): New function.
12957         (_initialize_amd64_tdep): Register handlers for x86-64 and
12958         x64_32 with GDB_OSABI_NONE.
12959         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12960         GDB_OSABI_NONE osabi.
12961
12962 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12963
12964         PR gdb/22980
12965         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12966         GDB_OSABI_NONE.
12967         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12968         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12969
12970 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12971
12972         * common/byte-vector.h (char_vector): New type.
12973         * target.h (target_read_alloc): Return
12974         gdb::optional<byte_vector>.
12975         (target_read_stralloc): Return gdb::optional<char_vector>.
12976         (target_get_osdata): Return gdb::optional<char_vector>.
12977         * target.c (target_read_alloc_1): Templatize.  Replacement
12978         manual memory management with vector.
12979         (target_read_alloc): Change return type, adjust.
12980         (target_read_stralloc): Change return type, adjust.
12981         (target_get_osdata): Change return type, adjust.
12982         * auxv.c (struct auxv_info) <length>: Remove.
12983         <data>: Change type to gdb::optional<byte_vector>.
12984         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12985         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12986         (target_auxv_search): Adjust.
12987         (fprint_target_auxv): Adjust.
12988         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12989         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12990         (linux_make_corefile_notes): Adjust.
12991         * osdata.c (get_osdata): Adjust.
12992         * remote.c (remote_get_threads_with_qxfer): Adjust.
12993         (remote_memory_map): Adjust.
12994         (remote_traceframe_info): Adjust.
12995         (btrace_read_config): Adjust.
12996         (remote_read_btrace): Adjust.
12997         (remote_pid_to_exec_file): Adjust.
12998         * solib-aix.c (solib_aix_get_library_list): Adjust.
12999         * solib-dsbt.c (decode_loadmap): Don't free buf.
13000         (dsbt_get_initial_loadmaps): Adjust.
13001         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
13002         * solib-target.c (solib_target_current_sos): Adjust.
13003         * tracepoint.c (sdata_make_value): Adjust.
13004         * xml-support.c (xinclude_start_include): Adjust.
13005         (xml_fetch_content_from_file): Adjust.
13006         * xml-support.h (xml_fetch_another): Change return type.
13007         (xml_fetch_content_from_file): Change return type.
13008         * xml-syscall.c (xml_init_syscalls_info): Adjust.
13009         * xml-tdesc.c (file_read_description_xml): Adjust.
13010         (fetch_available_features_from_target): Change return type.
13011         (target_fetch_description_xml): Adjust.
13012         (target_read_description_xml): Adjust.
13013
13014 2018-04-06  Tom Tromey  <tom@tromey.com>
13015
13016         * value.c (~value): Update.
13017         (struct value) <contents>: Now unique_xmalloc_ptr.
13018         (value_contents_bits_eq, allocate_value_contents)
13019         (value_contents_raw, value_contents_all_raw)
13020         (value_contents_for_printing, value_contents_for_printing_const)
13021         (set_value_enclosing_type): Update.
13022
13023 2018-04-06  Tom Tromey  <tom@tromey.com>
13024
13025         * value.c (range_s): Remove typedef, VEC.
13026         (struct range): Add operator<.
13027         (range_lessthan): Remove.
13028         (ranges_contain): Change type.
13029         (~value): Update.
13030         (struct value) <unavailable, optimized_out>: Now std::vector.
13031         (value_entirely_available)
13032         (value_entirely_covered_by_range_vector)
13033         (value_entirely_unavailable, value_entirely_optimized_out):
13034         Update.
13035         (insert_into_bit_range_vector): Change argument type.
13036         (find_first_range_overlap): Likewise.
13037         (struct ranges_and_idx, value_contents_bits_eq)
13038         (require_not_optimized_out, require_available): Update.
13039         (ranges_copy_adjusted): Change argument types.
13040         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13041
13042 2018-04-06  Tom Tromey  <tom@tromey.com>
13043
13044         * value.c (~value): Update.
13045         (struct value) <parent>: Now a value_ref_ptr.
13046         (value_parent, set_value_parent, value_address, value_copy):
13047         Update.
13048
13049 2018-04-06  Tom Tromey  <tom@tromey.com>
13050
13051         * value.c (struct value): Add constructor, destructor, and member
13052         initializers.
13053         (allocate_value_lazy, value_decref): Update.
13054
13055 2018-04-06  Tom Tromey  <tom@tromey.com>
13056
13057         * value.c (struct value) <released, next>: Remove.
13058         (all_values): Now a std::vector.
13059         (allocate_value_lazy): Update.
13060         (value_next): Remove.
13061         (value_mark, value_free_to_mark, release_value)
13062         (value_release_to_mark): Update.
13063
13064 2018-04-06  Tom Tromey  <tom@tromey.com>
13065
13066         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13067         (free_value_chain): Remove.
13068         * value.c (free_value_chain): Remove.
13069         (value_release_to_mark): Return a std::vector.
13070         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13071         std::vector.
13072         (check_condition): Update.
13073         * eval.c (fetch_subexp_value): Change "val_chain" to a
13074         std::vector.
13075         * breakpoint.c (update_watchpoint): Update.
13076         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13077
13078 2018-04-06  Tom Tromey  <tom@tromey.com>
13079
13080         * value.h (free_all_values): Remove.
13081         * value.c (free_all_values): Remove.
13082
13083 2018-04-06  Tom Tromey  <tom@tromey.com>
13084
13085         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13086         (value_history_chain, value_history_count): Remove.
13087         (value_history): New global.
13088         (record_latest_value, access_value_history, show_values)
13089         (preserve_values): Update.
13090
13091 2018-04-06  Tom Tromey  <tom@tromey.com>
13092
13093         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13094         * varobj.c (varobj_set_display_format, varobj_set_value)
13095         (install_default_visualizer, construct_visualizer)
13096         (install_new_value, ~varobj, varobj_get_value_type)
13097         (my_value_of_variable, varobj_editable_p): Update.
13098         * c-varobj.c (c_describe_child, c_value_of_variable)
13099         (cplus_number_of_children, cplus_describe_child): Update.
13100         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13101         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13102         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13103
13104 2018-04-06  Tom Tromey  <tom@tromey.com>
13105
13106         * printcmd.c (last_examine_address): Change type to
13107         value_ref_ptr.
13108         (do_examine, x_command): Update.
13109
13110 2018-04-06  Tom Tromey  <tom@tromey.com>
13111
13112         * value.c (release_value): Update.
13113         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13114         (struct bpstats) <val>: Now a value_ref_ptr.
13115         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13116         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13117         (~watchpoint, print_it_watchpoint, watch_command_1)
13118         (invalidate_bp_value_on_memory_change): Update.
13119
13120 2018-04-06  Tom Tromey  <tom@tromey.com>
13121
13122         * varobj.c (varobj_clear_saved_item)
13123         (update_dynamic_varobj_children, install_new_value, ~varobj):
13124         Update.
13125         * value.h (value_incref): Move declaration earlier.
13126         (value_decref): Rename from value_free.
13127         (struct value_ref_policy): New.
13128         (value_ref_ptr): New typedef.
13129         (struct value_deleter): Remove.
13130         (gdb_value_up): Remove typedef.
13131         (release_value): Change return type.
13132         (release_value_or_incref): Remove.
13133         * value.c (set_value_parent): Update.
13134         (value_incref): Change return type.
13135         (value_decref): Rename from value_free.
13136         (value_free_to_mark, free_all_values, free_value_chain): Update.
13137         (release_value): Return value_ref_ptr.
13138         (release_value_or_incref): Remove.
13139         (record_latest_value, set_internalvar, clear_internalvar):
13140         Update.
13141         * stack.c (info_frame_command): Don't call value_free.
13142         * python/py-value.c (valpy_dealloc, valpy_new)
13143         (value_to_value_object): Update.
13144         * printcmd.c (do_examine): Update.
13145         * opencl-lang.c (lval_func_free_closure): Update.
13146         * mi/mi-main.c (register_changed_p): Don't call value_free.
13147         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13148         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13149         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13150         value_free.
13151         * guile/scm-value.c (vlscm_free_value_smob)
13152         (vlscm_scm_from_value): Update.
13153         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13154         (frame_unwind_register_unsigned, get_frame_register_bytes)
13155         (put_frame_register_bytes): Don't call value_free.
13156         * findvar.c (address_from_register): Don't call value_free.
13157         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13158         * dwarf2loc.c (entry_data_value_free_closure)
13159         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13160         (dwarf2_evaluate_loc_desc_full): Update.
13161         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13162         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13163         (~watchpoint, watch_command_1)
13164         (invalidate_bp_value_on_memory_change): Update.
13165         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13166
13167 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13168
13169         PR gdb/23022
13170         * warning.m4: Add -Wno-error=deprecated-register.
13171         * configure: Re-generate.
13172
13173 2018-04-05  Tom Tromey  <tom@tromey.com>
13174
13175         * linespec.h: Remove include of "vec.h".
13176
13177 2018-04-05  Tom Tromey  <tom@tromey.com>
13178
13179         * linespec.c (typep): Remove typedef.
13180         (find_methods, find_superclass_methods): Take a std::vector.
13181         (find_method): Use std::vector.
13182
13183 2018-04-05  Tom Tromey  <tom@tromey.com>
13184
13185         * utils.c (compare_strings): Remove.
13186         * utils.h (compare_strings): Remove.
13187         * objc-lang.h (find_imps): Update.
13188         * objc-lang.c (find_methods): Take a std::vector.
13189         (uniquify_strings, find_imps): Likewise.
13190         * linespec.c (find_methods): Take a std::vector.
13191         (decode_objc): Use std::vector.
13192         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13193         a std::vector.
13194         (find_method, find_function_symbols): Use std::vector.
13195
13196 2018-04-05  Tom Tromey  <tom@tromey.com>
13197
13198         * completer.c (completion_tracker::completion_tracker): Remove
13199         cast.
13200         (completion_tracker::discard_completions): Likewise.
13201         * breakpoint.c (ambiguous_names_p): Remove cast.
13202         * ada-lang.c (_initialize_ada_language): Remove cast.
13203         * utils.h (streq): Update.
13204         (streq_hash): Add new declaration.
13205         * utils.c (streq): Return bool.
13206         (streq_hash): New function.
13207
13208 2018-04-05  Tom Tromey  <tom@tromey.com>
13209
13210         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13211         Remove a string copy.
13212
13213 2018-04-05  Tom Tromey  <tom@tromey.com>
13214
13215         * linespec.c (filter_results): Use std::vector.
13216         (decode_line_2, decode_line_full): Update.
13217
13218 2018-04-05  Tom Tromey  <tom@tromey.com>
13219
13220         * linespec.c (canonical_to_fullform): Return std::string.
13221         (filter_results): Update.
13222         (struct decode_line_2_item): Add constructor.
13223         <fullform, displayform>: Now std::string.
13224         (decode_line_2_compare_items): Now a std::sort comparator.
13225         (decode_line_2): Update.
13226
13227 2018-04-05  Tom Tromey  <tom@tromey.com>
13228
13229         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13230         (unexpected_linespec_error): Update.
13231         (linespec_parse_basic, parse_linespec): Update.
13232
13233 2018-04-05  Tom Tromey  <tom@tromey.com>
13234
13235         * linespec.c (linespec_parse_basic): Reindent.
13236
13237 2018-04-05  Tom Tromey  <tom@tromey.com>
13238
13239         * minsyms.h (iterate_over_minimal_symbols): Update.
13240         * minsyms.c (iterate_over_minimal_symbols): Take a
13241         gdb::function_view.
13242         * linespec.c (struct collect_minsyms): Remove.
13243         (compare_msyms): Now a std::sort comparator.
13244         (add_minsym): Add parameters.
13245         (search_minsyms_for_name): Update.  Use std::vector.
13246
13247 2018-04-03  Tom Tromey  <tom@tromey.com>
13248
13249         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13250         gdb::byte_vector.
13251
13252 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13253
13254         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13255
13256 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13257
13258         PR gdb/16959
13259         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13260         printing static type.
13261
13262 2018-04-01  Tom Tromey  <tom@tromey.com>
13263
13264         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13265         (rs6000_xfer_shared_libraries): Update.
13266
13267 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13268
13269         * common/gdb_vecs.h (char_ptr): Remove.
13270         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13271
13272 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13273
13274         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13275         with std::vector.
13276         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13277
13278 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13279
13280         * tracepoint.h (struct uploaded_tp): Initialize fields.
13281         <actions, step_actions, cmd_strings>: Change type to
13282         std::vector<char *>.
13283         * tracepoint.c (get_uploaded_tp): Allocate with new.
13284         (free_uploaded_tps): Free with delete.
13285         (parse_tracepoint_definition): Adjust to std::vector change.
13286         * breakpoint.c (read_uploaded_action): Likewise.
13287         (create_tracepoint_from_upload): Likewise.
13288         * ctf.c (ctf_write_uploaded_tp): Likewise.
13289         (SET_ARRAY_FIELD): Likewise.
13290         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13291
13292 2018-03-30  Tom Tromey  <tom@tromey.com>
13293
13294         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13295         std::unique_ptr.
13296         (svr4_keep_data_in_core): Update.
13297         (svr4_read_so_list): Update.
13298
13299 2018-03-30  Tom Tromey  <tom@tromey.com>
13300
13301         * windows-nat.c (handle_output_debug_string, handle_exception):
13302         Update.
13303         * target.h (target_read_string): Update.
13304         * target.c (target_read_string): Change "string" to
13305         unique_xmalloc_ptr.
13306         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13307         Update.
13308         * solib-frv.c (frv_current_sos): Update.
13309         * solib-dsbt.c (dsbt_current_sos): Update.
13310         * solib-darwin.c (darwin_current_sos): Update.
13311         * linux-thread-db.c (inferior_has_bug): Update.
13312         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13313         Update.  Remove alloca.
13314         * ada-lang.c (ada_main_name): Update.
13315
13316 2018-03-30  Tom Tromey  <tom@tromey.com>
13317
13318         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13319         (struct dwo_file_deleter): New.
13320         (dwo_file_up): New typedef.
13321         (open_and_init_dwo_file): Use dwo_file_up.
13322         (free_dwo_file_cleanup): Remove.
13323
13324 2018-03-30  Tom Tromey  <tom@tromey.com>
13325
13326         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13327         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13328
13329 2018-03-30  Tom Tromey  <tom@tromey.com>
13330
13331         * dwarf2read.c (class free_cached_comp_units): New class.
13332         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13333         (free_cached_comp_units): Remove function.
13334
13335 2018-03-30  Tom Tromey  <tom@tromey.com>
13336
13337         * utils.h (make_cleanup_unpush_target): Remove.
13338         * inf-ptrace.c (struct target_unpusher): New.
13339         (target_unpush_up) New typedef.
13340         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13341         target_unpush_up.
13342         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13343
13344 2018-03-27  Tom Tromey  <tom@tromey.com>
13345
13346         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13347
13348 2018-03-27  Pedro Alves  <palves@redhat.com>
13349             Tom Tromey  <tom@tromey.com>
13350
13351         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13352         destructor.  Now a class.
13353         (gdb_readline_wrapper_cleanup): Remove function.
13354         (gdb_readline_wrapper): Remove cleanups.
13355
13356 2018-03-27  Tom Tromey  <tom@tromey.com>
13357
13358         * typeprint.h (struct type_print_options) <local_typedefs,
13359         global_typedefs>: Remove "struct" keyword.
13360         (class typedef_hash_table): New class.
13361         (recursively_update_typedef_hash, add_template_parameters)
13362         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13363         (find_typedef_in_hash): Don't declare.
13364         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13365         (typedef_hash_table::recursively_update): Rename from
13366         recursively_update_typedef_hash.  Now a member.
13367         (typedef_hash_table::add_template_parameters): Rename from
13368         add_template_parameters.  Now a member.
13369         (typedef_hash_table::typedef_hash_table): Now a constructor;
13370         rename from create_typedef_hash.
13371         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13372         rename from free_typedef_hash.
13373         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13374         (do_free_global_table): Remove.
13375         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13376         from copy_type_recursive.
13377         (create_global_typedef_table): Remove.
13378         (typedef_hash_table::find_global_typedef): Now a member of
13379         typedef_hash_table.
13380         (typedef_hash_table::find_typedef): Rename from
13381         find_typedef_in_hash; now a member.
13382         (whatis_exp): Update.
13383         * extension.h (struct ext_lang_type_printers): Add constructor and
13384         destructor.
13385         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13386         declare.
13387         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13388         Now a constructor; rename from start_ext_lang_type_printers.
13389         (ext_lang_type_printers): Now a destructor; rename from
13390         free_ext_lang_type_printers.
13391         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13392         Update.
13393         (c_type_print_base_struct_union): Update.  Remove cleanups.
13394
13395 2018-03-27  Tom Tromey  <tom@tromey.com>
13396
13397         * dwarf-index-write.c: Include <cmath>.
13398
13399 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13400
13401         * NEWS: Add entry describing new "set|show varsize-limit" command.
13402         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13403         command.
13404         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13405         "set variable".
13406
13407 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13408
13409         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13410         dwarf-index-write.c
13411         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13412         * dwarf-index-common.c: New file.
13413         * dwarf-index-common.h: New file.
13414         * dwarf-index-write.c: New file.
13415         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13416         (struct dwarf2_section_info): Move from here.
13417         (dwarf2_section_info_def): Likewise.
13418         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13419         (offset_type): Likewise.
13420         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13421         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13422         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13423         (byte_swap): Likewise.
13424         (MAYBE_SWAP): Likewise.
13425         (dwarf2_per_cu_ptr): Likewise.
13426         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13427         (struct tu_stats): Likewise.
13428         (struct dwarf2_per_objfile): Likewise.
13429         (struct dwarf2_per_cu_data): Likewise.
13430         (struct signatured_type): Likewise.
13431         (sig_type_ptr): Likewise.
13432         (DEF_VEC_P (sig_type_ptr)): Likewise.
13433         (INDEX4_SUFFIX): Likewise.
13434         (INDEX5_SUFFIX): Likewise.
13435         (DEBUG_STR_SUFFIX): Likewise.
13436         (dwarf2_read_section): Make non-static.
13437         (mapped_index_string_hash): Move from here.
13438         (dwarf5_djb_hash): Likewise.
13439         (file_write): Likewise.
13440         (class data_buf): Likewise.
13441         (struct symtab_index_entry): Likewise.
13442         (struct mapped_symtab): Likewise.
13443         (find_slot): Likewise.
13444         (hash_expand): Likewise.
13445         (add_index_entry): Likewise.
13446         (uniquify_cu_indices): Likewise.
13447         (class c_str_view): Likewise.
13448         (class c_str_view_hasher): Likewise.
13449         (class vector_hasher): Likewise.
13450         (write_hash_table): Likewise.
13451         (psym_index_map): Likewise.
13452         (struct addrmap_index_data): Likewise.
13453         (add_address_entry): Likewise.
13454         (add_address_entry_worker): Likewise.
13455         (write_address_map): Likewise.
13456         (symbol_kind): Likewise.
13457         (write_psymbols): Likewise.
13458         (struct signatured_type_index_data): Likewise.
13459         (write_one_signatured_type): Likewise.
13460         (recursively_count_psymbols): Likewise.
13461         (recursively_write_psymbols): Likewise.
13462         (class debug_names): Likewise.
13463         (check_dwarf64_offsets): Likewise.
13464         (psyms_seen_size): Likewise.
13465         (write_gdbindex): Likewise.
13466         (write_debug_names): Likewise.
13467         (assert_file_size): Likewise.
13468         (write_psymtabs_to_index): Likewise.
13469         (save_gdb_index_command): Likewise.
13470         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13471         command.
13472         * dwarf2read.h: New file.
13473
13474 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13475
13476         PR gdb/22670
13477         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13478         symbol name if the CU's language stores symbol names in linkage
13479         format.
13480         * language.h (struct language_defn)
13481         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13482         all instances of this struct.
13483
13484 2018-03-26  Tom Tromey  <tom@tromey.com>
13485
13486         * stack.c (backtrace_command_1): Remove verbose code.
13487
13488 2018-03-26  Tom Tromey  <tom@tromey.com>
13489
13490         * python/py-framefilter.c (py_print_type): Don't catch
13491         exceptions.  Return void.
13492         (py_print_value): Likewise.
13493         (py_print_single_arg): Likewise.
13494         (enumerate_args): Don't catch exceptions.
13495         (py_print_args): Likewise.
13496         (py_print_frame): Likewise.
13497         (gdbpy_apply_frame_filter): Catch exceptions here.
13498
13499 2018-03-26  Tom Tromey  <tom@tromey.com>
13500
13501         * stack.c (_initialize_stack): Remove trailing newlines from help
13502         text.  Add "Usage" line to "backtrace" help.
13503
13504 2018-03-26  Tom Tromey  <tom@tromey.com>
13505
13506         PR python/16486:
13507         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13508
13509 2018-03-26  Tom Tromey  <tom@tromey.com>
13510
13511         * python/py-framefilter.c (py_print_single_arg): Return
13512         EXT_LANG_BT_ERROR from catch.
13513
13514 2018-03-26  Tom Tromey  <tom@tromey.com>
13515
13516         PR backtrace/15584:
13517         * stack.c (backtrace_command_1): Move some code into no-filters
13518         "if".
13519
13520 2018-03-26  Tom Tromey  <tom@tromey.com>
13521
13522         * python/py-framefilter.c (throw_quit_or_print_exception): New
13523         function.
13524         (gdbpy_apply_frame_filter): Use it.
13525
13526 2018-03-26  Tom Tromey  <tom@tromey.com>
13527
13528         PR cli/17716:
13529         * python/py-framefilter.c (py_print_type, py_print_value)
13530         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13531         RETURN_MASK_ERROR.
13532
13533 2018-03-26  Tom Tromey  <tom@tromey.com>
13534
13535         * python/py-framefilter.c (enumerate_args): Use
13536         gdb::unique_xmalloc_ptr.
13537
13538 2018-03-26  Tom Tromey  <tom@tromey.com>
13539
13540         * python/py-framefilter.c (py_print_frame): Return
13541         EXT_LANG_BT_OK.
13542         (gdbpy_apply_frame_filter): Update comment.
13543         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13544         Remove.
13545         <EXT_LANG_BT_NO_FILTERS>: Change value.
13546
13547 2018-03-26  Tom Tromey  <tom@tromey.com>
13548
13549         PR backtrace/15582:
13550         * stack.c (backtrace_command): Parse "hide" argument.
13551         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13552         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13553         constant.
13554
13555 2018-03-26  Tom Tromey  <tom@tromey.com>
13556
13557         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13558         add "flags".
13559         (backtrace_command): Remove "fulltrace", add "flags".
13560
13561 2018-03-26  Tom Tromey  <tom@tromey.com>
13562
13563         * stack.c (backtrace_command): Rewrite command line parsing.
13564
13565 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13566
13567         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13568
13569 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13570
13571         * filename-seen-cache.h: Add include guard.
13572
13573 2018-03-26  Keith Seitz  <keiths@redhat.com>
13574
13575         * symfile.c (place_section): Remove "struct" from section_addr_info
13576         in comment.
13577         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13578         "struct" keyword from section_addr_info.
13579
13580 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13581
13582         * regformats/regdef.h (reg): Add constructors.
13583
13584 2018-03-25  Pedro Alves  <palves@redhat.com>
13585
13586         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13587         if then/else bodies in var_func_name extraction.
13588
13589 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13590
13591         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13592         lookup_minimal_symbol() to find symbol entry.
13593         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13594
13595 2018-03-23  Keith Seitz  <keiths@redhat.com>
13596
13597         PR c++/22968
13598         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13599         nested type definitions for C++, too.
13600
13601 2018-03-23  Tom Tromey  <tom@tromey.com>
13602
13603         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13604         a typedef.
13605         (macho_register_oso): Remove.
13606         (macho_symtab_read): Take a std::vector.
13607         (oso_el_compare_name): Now a std::sort comparator.
13608         (macho_symfile_read_all_oso): Take a std::vector.
13609         (macho_symfile_read): Use std::vector.  Remove cleanups.
13610
13611 2018-03-22  Tom Tromey  <tom@tromey.com>
13612
13613         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13614         (record_full_goto_bookmark): Use std::string.
13615
13616 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13617
13618         PR tdep/18295
13619         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13620         a single mask.
13621
13622 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13623
13624         * rs6000-tdep.c (store_insn_p): New function.
13625         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13626         and cr_reg to their unshifted values. Use store_insn_p to
13627         match LR saves using either R1 or fdata->alloca_reg. Use
13628         store_insn_p to match CR saves. Set alloca_reg_offset
13629         when alloca_reg and framep are set. Remove lr_reg shift
13630         when assigning to fdata->lr_register.
13631
13632 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13633
13634         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13635         command line args instead of emitting a warning.
13636
13637 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13638
13639         * tracepoint.h (struct static_tracepoint_marker): Initialize
13640         fields, define default constructor, move constructor and move
13641         assignment, disable the rest.
13642         <str_id, extra>: Make std::string.
13643         (release_static_tracepoint_marker): Remove.
13644         (free_current_marker): Remove.
13645         * tracepoint.c (free_current_marker): Remove.
13646         (parse_static_tracepoint_marker_definition): Adjust to
13647         std::string, use new hex2str overload.
13648         (release_static_tracepoint_marker): Remove.
13649         (print_one_static_tracepoint_marker): Get marker by reference
13650         and adjust to std::string.
13651         (info_static_tracepoint_markers_command): Adjust to std::vector
13652         changes
13653         * target.h (static_tracepoint_marker_p): Remove typedef.
13654         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13655         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13656         bool.
13657         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13658         * target-debug.h
13659         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13660         (target_debug_print_std_vector_static_tracepoint_marker): New.
13661         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13662         to...
13663         (target_debug_print_static_tracepoint_marker_p): ... this.
13664         * target-delegates.c: Re-generate.
13665         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13666         Make std::string.
13667         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13668         (decode_static_tracepoint_spec): Adjust to std::vector.
13669         (tracepoint_print_one_detail): Adjust to std::string.
13670         (strace_marker_decode_location): Adjust to std::string.
13671         (update_static_tracepoint): Adjust to std::string, remove call
13672         to release_static_tracepoint_marker.
13673         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13674         Adjust to std::vector.
13675         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13676         (remote_static_tracepoint_markers_by_strid): Adjust to
13677         std::vector.
13678         * common/rsp-low.h (hex2str): New overload with explicit count
13679         of bytes.
13680         * common/rsp-low.c (hex2str): New overload with explicit count
13681         of bytes.
13682         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13683         (_initialize_rsp_low_selftests): Add test_hex2str test.
13684         * unittests/tracepoint-selftests.c
13685         (test_parse_static_tracepoint_marker_definition): Adjust to
13686         std::string.
13687
13688 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13689
13690         * tracepoint.c (parse_static_tracepoint_marker_definition):
13691         Consider case where the definition is followed by more
13692         definitions.
13693         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13694         tracepoint-selftests.c.
13695         * unittests/tracepoint-selftests.c: New.
13696
13697 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13698
13699         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13700         Carvalho.
13701
13702 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13703
13704         * symtab.c (find_pc_sect_line): fixed indentation.
13705
13706 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13707
13708         * symtab.c (find_pc_sect_line): now uses binary search.
13709
13710 2018-03-19  Tom Tromey  <tom@tromey.com>
13711
13712         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13713         "IDENT" production.
13714
13715 2018-03-19  Pedro Alves  <palves@redhat.com>
13716             Tom Tromey  <tom@tromey.com>
13717
13718         * unittests/observable-selftests.c: New file.
13719         * common/observable.h: New file.
13720         * observable.h: New file.
13721         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13722         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13723         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13724         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13725         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13726         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13727         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13728         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13729         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13730         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13731         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13732         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13733         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13734         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13735         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13736         tui/tui-interp.c, valops.c: Update all users.
13737         * tui/tui-hooks.c (tui_bp_created_observer)
13738         (tui_bp_deleted_observer, tui_bp_modified_observer)
13739         (tui_inferior_exit_observer, tui_before_prompt_observer)
13740         (tui_normal_stop_observer, tui_register_changed_observer):
13741         Remove.
13742         (tui_observers_token): New global.
13743         (attach_or_detach, tui_attach_detach_observers): New functions.
13744         (tui_install_hooks, tui_remove_hooks): Use
13745         tui_attach_detach_observers.
13746         * record-btrace.c (record_btrace_thread_observer): Remove.
13747         (record_btrace_thread_observer_token): New global.
13748         * observer.sh: Remove.
13749         * observer.c: Rename to observable.c.
13750         * observable.c (namespace gdb_observers): Define new objects.
13751         (observer_debug): Move into gdb_observers namespace.
13752         (struct observer, struct observer_list, xalloc_observer_list_node)
13753         (xfree_observer_list_node, generic_observer_attach)
13754         (generic_observer_detach, generic_observer_notify): Remove.
13755         (_initialize_observer): Update.
13756         Don't include observer.inc.
13757         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13758         (clean mostlyclean): Likewise.
13759         (observer.h, observer.inc): Remove targets.
13760         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13761         (COMMON_SFILES): Use observable.c, not observer.c.
13762         * .gitignore: Remove observer.h.
13763
13764 2018-03-18  Tom Tromey  <tom@tromey.com>
13765
13766         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13767         gdb::def_vector.
13768         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13769
13770 2018-03-17  Tom Tromey  <tom@tromey.com>
13771
13772         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13773
13774 2018-03-17  Tom Tromey  <tom@tromey.com>
13775
13776         * target.c (class scoped_target_fd): New.
13777         (target_fileio_close_cleanup): Remove.
13778         (target_fileio_read_alloc_1): Use scoped_target_fd.
13779
13780 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13781
13782         * silent-rules.mk: New.
13783         * Makefile.in: Include silent-rules.mk
13784         (srcdir, VPATH, top_srcdir): Move up.
13785         (COMPILE): Add ECHO_CXX.
13786         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13787         (init.c): Add ECHO_INIT_C.
13788         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13789         (version.c): Add ECHO_GEN.
13790         (printcmd.o): Add ECHO_CXX.
13791         (target-float.o): Add ECHO_CXX.
13792         (ada-exp.o): Add ECHO_CXX.
13793         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13794         (insight$(EXEEXT)): Add ECHO_CXXLD.
13795         * gnulib/configure.ac: Add AM_SILENT_RULES.
13796         * gnulib/aclocal.m4: Re-generate.
13797         * gnulib/configure: Re-generate.
13798         * gnulib/import/Makefile.in: Re-generate.
13799
13800 2018-03-16  Tom Tromey  <tom@tromey.com>
13801
13802         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13803         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13804         * utils.c (do_free_section_addr_info)
13805         (make_cleanup_free_section_addr_info): Remove.
13806         * symfile.h (struct other_sections): Add constructor.
13807         (struct section_addr_info): Remove.
13808         (section_addr_info): New typedef.
13809         (struct sym_fns) <sym_offsets>: Change type of parameter.
13810         (build_section_addr_info_from_objfile)
13811         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13812         (default_symfile_offsets, symbol_file_add)
13813         (symbol_file_add_from_bfd)
13814         (build_section_addr_info_from_section_table): Update.
13815         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13816         * symfile.c (alloc_section_addr_info): Remove.
13817         (build_section_addr_info_from_section_table): Change return type.
13818         Update.
13819         (build_section_addr_info_from_bfd)
13820         (build_section_addr_info_from_objfile): Likewise.
13821         (free_section_addr_info): Remove.
13822         (relative_addr_info_to_section_offsets): Change type of "addrs".
13823         (addrs_section_compar): Now a std::sort comparator.
13824         (addrs_section_sort): Change return type.
13825         (addr_info_make_relative): Change type of "addrs".  Update.
13826         (default_symfile_offsets, syms_from_objfile_1)
13827         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13828         (symbol_file_add_separate): Update.
13829         (symbol_file_add): Change type of "addrs".  Update.
13830         (add_symbol_file_command): Update.  Remove cleanups.
13831         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13832         cleanups.
13833         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13834         * solib.c (solib_read_symbols): Update.
13835         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13836         * machoread.c (macho_symfile_offsets): Update.
13837         * jit.c (jit_bfd_try_read_symtab): Update.
13838
13839 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13840
13841         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13842         unittests/utils-selftests.c.
13843         * unittests/utils-selftests.c: New file.
13844
13845 2018-03-14  Tom Tromey  <tom@tromey.com>
13846
13847         PR cli/14977:
13848         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13849         for NULL.
13850
13851 2018-03-14  Tom Tromey  <tom@tromey.com>
13852
13853         PR cli/19918:
13854         * printcmd.c (printf_pointer): Allow "-" in format.
13855
13856 2018-03-14  Tom Tromey  <tom@tromey.com>
13857
13858         * printcmd.c (_initialize_printcmd): Add usage to printf.
13859
13860 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13861
13862         * MAINTAINERS: Update my email address.
13863
13864 2018-03-13  Tom Tromey  <tom@tromey.com>
13865
13866         * machoread.c (macho_check_dsym): Change filenamep to a
13867         std::string*.
13868         (macho_symfile_read): Update.
13869         * symfile.c (load_command): Use std::string.
13870
13871 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13872
13873         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13874         to error message string.
13875         (riscv_register_name): Use xsnprintf instead of sprintf.
13876         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13877         internal_error.
13878         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13879         error.
13880         (riscv_push_dummy_call): Likewise.
13881
13882 2018-03-12  Tom Tromey  <tom@tromey.com>
13883
13884         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13885         Use gdb::byte_vector.
13886         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13887
13888 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13889
13890         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13891         parameter type to readable_regcache.
13892         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13893         the declaration.
13894
13895 2018-03-11  Tom Tromey  <tom@tromey.com>
13896
13897         * dwarf2read.c (struct nextfield): Add initializers.
13898         (struct nextfnfield): Remove.
13899         (struct fnfieldlist): Add initializers.  Remove "length" and
13900         "head", use std::vector.
13901         (struct decl_field_list): Remove.
13902         (struct field_info): Add initializers.
13903         <fields, baseclasses>: Now std::vector.
13904         <nbaseclasses, nfnfields, typedef_field_list_count,
13905         nested_types_list_count>: Remove.
13906         (dwarf2_add_field, dwarf2_add_type_defn)
13907         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13908         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13909         (process_structure_scope): Update.
13910
13911 2018-03-11  Tom Tromey  <tom@tromey.com>
13912
13913         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13914         for use by std::sort.
13915         (build_type_psymtabs_1): Use std::vector.
13916
13917 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13918
13919         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13920         and LIBMPFR in the printed configuration.
13921
13922 2018-03-08  Tom Tromey  <tom@tromey.com>
13923
13924         * source.c (get_filename_and_charpos): Use scoped_fd.
13925         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13926         (procfs_pidlist): Likewise.
13927         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13928         (iterate_over_mappings): Likewise.
13929
13930 2018-03-08  Tom Tromey  <tom@tromey.com>
13931
13932         * infcall.c (struct call_return_meta_info)
13933         <stack_temporaries_enabled>: Remove.
13934         (get_call_return_value, call_function_by_hand_dummy): Update.
13935         * thread.c (disable_thread_stack_temporaries): Remove.
13936         (enable_thread_stack_temporaries): Remove.
13937         (thread_stack_temporaries_enabled_p): Return bool.
13938         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13939         (get_last_thread_stack_temporary): Update.
13940         * eval.c (evaluate_subexp): Update.
13941         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13942         class, not a function.
13943         (value_ptr, value_vec): Remove typedefs.
13944         (class thread_info) <stack_temporaries_enabled>: Now bool.
13945         <stack_temporaries>: Now a std::vector.
13946         (thread_stack_temporaries_enabled_p)
13947         (value_in_thread_stack_temporaries): Return bool.
13948
13949 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13950
13951         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13952         (getpkt_or_notif_sane_1): Likewise.
13953
13954 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13955
13956         * build-id.c (build_id_to_debug_bfd): Use std::string.
13957
13958 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13959
13960         * build-id.c (find_separate_debug_file_by_buildid): Return
13961         std::string.
13962         * build-id.h (find_separate_debug_file_by_buildid): Return
13963         std::string.
13964         * coffread.c (coff_symfile_read): Adjust to std::string.
13965         * elfread.c (elf_symfile_read): Adjust to std::string.
13966         * symfile.c (separate_debug_file_exists): Change parameter to
13967         std::string.
13968         (find_separate_debug_file): Return std::string.
13969         (find_separate_debug_file_by_debuglink): Return std::string.
13970         * symfile.h (find_separate_debug_file_by_debuglink): Return
13971         std::string.
13972
13973 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13974
13975         * common/xml-utils.c (xml_escape_text): Move code to...
13976         (xml_escape_text_append): ... this new function.
13977         * common/xml-utils.h (xml_escape_text_append): New declaration.
13978         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13979         New function.
13980         (_initialize_xml_utils): register test_xml_escape_text_append as
13981         a selftest.
13982
13983 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13984
13985         * defs.h: Remove MAX_REGISTER_SIZE.
13986         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13987         asserts.
13988         * python/py-unwind.c (pyuw_sniffer): Likewise.
13989
13990 2018-03-07  Tom Tromey  <tom@tromey.com>
13991
13992         * linux-tdep.c (linux_info_proc): Update.
13993         * target.h (struct target_ops) <to_fileio_readlink>: Return
13994         optional<string>.
13995         (target_fileio_readlink): Return optional<string>.
13996         * remote.c (remote_hostio_readlink): Return optional<string>.
13997         * inf-child.c (inf_child_fileio_readlink): Return
13998         optional<string>.
13999         * target.c (target_fileio_readlink): Return optional<string>.
14000
14001 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
14002
14003         * regcache.c (cooked_read_test): Add riscv to the list of
14004         architectures that have a save_reggroup.
14005
14006 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
14007
14008         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
14009         value is not a dynamic class object.
14010
14011 2018-03-06  Tom Tromey  <tom@tromey.com>
14012
14013         * rust-exp.y: Formatting fixes.
14014
14015 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14016
14017         * riscv-tdep.c (riscv_register_name): Remove target description
14018         support.
14019         (riscv_gdbarch_init): Remove target description check.
14020
14021 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14022
14023         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
14024         comment.
14025         * riscv-tdep.h: Likewise.
14026
14027 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14028
14029         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
14030         (riscv_pseudo_register_write): Delete.
14031         (riscv_gdbarch_init): Remove all use of pseudo registers.
14032
14033 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14034
14035         * record-btrace.c (btrace_print_lines): Replace cleanup
14036         parameter with RAII equivalents.
14037         (btrace_insn_history): Replace cleanup with RAII equivalents.
14038         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14039         make_cleanup_ui_out_tuple_begin_end): Remove.
14040         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14041         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14042         make_cleanup_ui_out_list_begin_end): Remove.
14043
14044 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14045
14046         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14047         parameter types to std::vector.  Use bool.
14048         (record_btrace_wait): Replace VEC(tp_t) with
14049         std::vector<thread_info *>.
14050         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14051
14052 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14053
14054         * record-btrace.c (record_btrace_disable_callback): Remove.
14055         (struct scoped_btrace_disable): New.
14056         (record_btrace_open): Use scoped_btrace_disable.
14057
14058 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14059
14060         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14061         reading values from registers.
14062
14063 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14064
14065         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14066         where appropriate.
14067
14068 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14069
14070         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14071         change parameter type.  Use GDB's print functions, and use
14072         core_addr_to_string where appropriate.
14073         (riscv_push_dummy_call): Use core_addr_to_string where
14074         appropriate, update call to riscv_print_arg_location, and reindent
14075         a few lines.
14076         (riscv_return_value): Update call to riscv_print_arg_location.
14077
14078 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14079             Tim Newsome <tim@sifive.com>
14080             Albert Ou <a0u@eecs.berkeley.edu>
14081             Darius Rad <darius@bluespec.com>
14082
14083         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14084         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14085         (ALLDEPFILES): Add riscv-tdep.c
14086         * configure.tgt: Add riscv support.
14087         * riscv-tdep.c: New file.
14088         * riscv-tdep.h: New file.
14089         * NEWS: Mention new target.
14090         * MAINTAINERS: Add entry for riscv.
14091
14092 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14093
14094         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14095         fields within aggregates.
14096
14097 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14098
14099         * record-btrace.c (btrace_print_lines): Change type of flags to
14100         gdb_disassembly_flags.
14101
14102 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14103
14104         * fbsd-nat.c: Include "inf-ptrace.h".
14105         (USE_SIGTRAP_SIGINFO): Conditionally define.
14106         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14107         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14108         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14109         function.
14110         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14111         Likewise.
14112         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14113         Likewise.
14114         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14115         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14116         "supports_stopped_by_hw_breakpoint" target methods.
14117
14118 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14119
14120         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14121         * fbsd-nat.c (debug_fbsd_nat): New variable.
14122         (show_fbsd_nat_debug): New function.
14123         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14124         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14125
14126 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14127
14128         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14129         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14130         prototype.
14131         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14132         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14133         method.
14134
14135 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14136
14137         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14138         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14139
14140 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14141
14142         * charset.c (struct charset_vector): New.
14143         (charsets): Change type to charset_vector.
14144         (find_charset_names): Adjust.
14145         (add_one): Adjust.
14146         (_initialize_charset): Adjust.
14147
14148 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14149
14150         * progspace.h (struct program_space) <deleted_solibs>: Change
14151         type to std::vector<std::string>.
14152         * progspace.c (clear_program_space_solib_cache): Adjust.
14153         * breakpoint.c (print_solib_event): Adjust.
14154         (check_status_catch_solib): Adjust.
14155         * solib.c (update_solib_list): Adjust.
14156         * ui-out.h (class ui_out) <field_string>: New overload.
14157         * ui-out.c (ui_out::field_string): New overload.
14158
14159 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14160
14161         * progspace.h (struct program_space): Add constructor and
14162         destructor, initialize fields.
14163         (add_program_space): Remove.
14164         * progspace.c (add_program_space): Rename to...
14165         (program_space::program_space): ... this.
14166         (release_program_space): Rename to...
14167         (program_space::~program_space): ... this.
14168         (delete_program_space): Use delete to delete program_space.
14169         (initialize_progspace): Use new to allocate program_space.
14170         * inferior.c (add_inferior_with_spaces): Likewise.
14171         (clone_inferior_command): Likewise.
14172         * infrun.c (follow_fork_inferior): Likewise.
14173         (handle_vfork_child_exec_or_exit): Likewise.
14174
14175 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14176
14177         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14178         (delim_string_to_char_ptr_vec): Return std::vector of
14179         gdb::unique_xmalloc_ptr.
14180         (dirnames_to_char_ptr_vec_append): Take std::vector of
14181         gdb::unique_xmalloc_ptr.
14182         (dirnames_to_char_ptr_vec): Return std::vector of
14183         gdb::unique_xmalloc_ptr.
14184         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14185         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14186         (delim_string_to_char_ptr_vec): Return an std::vector of
14187         gdb::unique_xmalloc_ptr, adjust the code.
14188         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14189         gdb::unique_xmalloc_ptr, adjust the code.
14190         (dirnames_to_char_ptr_vec): Return an std::vector of
14191         gdb::unique_xmalloc_ptr, adjust the code.
14192         * auto-load.c (auto_load_safe_path_vec): Change type to
14193         std::vector of gdb::unique_xmalloc_ptr.
14194         (auto_load_expand_dir_vars): Return an std::vector of
14195         gdb::unique_xmalloc_ptr, adjust the code.
14196         (auto_load_safe_path_vec_update): Adjust.
14197         (filename_is_in_auto_load_safe_path_vec): Adjust.
14198         (auto_load_objfile_script_1): Adjust.
14199         * build-id.c (build_id_to_debug_bfd): Adjust.
14200         * linux-thread-db.c (thread_db_load_search): Adjust.
14201         * source.c (add_path): Adjust.
14202         (openp): Adjust.
14203         * symfile.c (find_separate_debug_file): Adjust.
14204         * utils.c (do_free_char_ptr_vec): Remove.
14205         (make_cleanup_free_char_ptr_vec): Remove.
14206
14207 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14208
14209         PR gdb/22907
14210         * common/pathstuff.c: Conditionally include "<windows.h>".
14211
14212 2018-03-01  Georg Sauthoff  <mail@georg.so>
14213
14214         PR gdb/22888
14215         * gcore.in: Quote variables and switch interpreter to bash.
14216
14217 2018-03-01  Tom Tromey  <tom@tromey.com>
14218
14219         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14220         assertion.  Add assertion for discriminant_index.
14221         (quirk_rust_enum): Use correct base type name in univariant case.
14222
14223 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14224
14225         * record.c (get_call_history_modifiers): Return a
14226         record_print_flags.
14227         (cmd_record_call_history): Adjust.
14228         * record-btrace.c (record_btrace_call_history): Adjust.
14229         (record_btrace_call_history_range): Adjust.
14230         (record_btrace_call_history_from): Adjust.
14231         * target-debug.h (target_debug_print_record_print_flags): New.
14232         * target-delegates.c: Re-generate.
14233         * target.c (target_call_history): Change flags type.
14234         (target_call_history_from): Likewise.
14235         (target_call_history_range): Likewise.
14236         * target.h (struct target_ops) <target_call_history>: Likewise.
14237         (target_call_history_from): Likewise.
14238         (target_call_history_range): Likewise.
14239
14240 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14241             Simon Marchi  <simon.marchi@polymtl.ca>
14242
14243         * common/common-utils.c: Include "sys/stat.h".
14244         (is_regular_file): Move here from "source.c"; change return
14245         type to "bool".
14246         * common/common-utils.h (is_regular_file): New prototype.
14247         * common/pathstuff.c (contains_dir_separator): New function.
14248         * common/pathstuff.h (contains_dir_separator): New prototype.
14249         * source.c: Don't include "sys/stat.h".
14250         (is_regular_file): Move to "common/common-utils.c".
14251
14252 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14253
14254         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14255         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14256         * auto-load.c: Include "common/pathstuff.h".
14257         * common/common-def.h (current_directory): Move here.
14258         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14259         function.
14260         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14261         prototype.
14262         * common/pathstuff.c: New file.
14263         * common/pathstuff.h: New file.
14264         * compile/compile.c: Include "common/pathstuff.h".
14265         * defs.h (current_directory): Move to "common/common-defs.h".
14266         * dwarf2read.c: Include "common/pathstuff.h".
14267         * exec.c: Likewise.
14268         * guile/scm-safe-call.c: Likewise.
14269         * linux-thread-db.c: Likewise.
14270         * main.c: Likewise.
14271         * nto-tdep.c: Likewise.
14272         * objfiles.c: Likewise.
14273         * source.c: Likewise.
14274         * symtab.c: Likewise.
14275         * utils.c: Include "common/pathstuff.h".
14276         (gdb_realpath): Move to "common/pathstuff.c".
14277         (gdb_realpath_keepfile): Likewise.
14278         (gdb_abspath): Likewise.
14279         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14280         (gdb_realpath_keepfile): Likewise.
14281         (gdb_abspath): Likewise.
14282
14283 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14284
14285         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14286         wildcard process pid for super_resume for kernels with a
14287         specific bug.
14288
14289 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14290
14291         * compile/compile.c (get_args): Add additional comments
14292         explaining function.
14293
14294 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14295             Tom Tromey  <tom@tromey.com>
14296
14297         * target.h (memory_write_request_s): Remove typedef.  Don't define
14298         VEC.
14299         (target_write_memory_blocks): Change argument to std::vector.
14300         (struct memory_write_request): Add constructor.
14301         * target-memory.c (compare_block_starting_address): Return bool.
14302         Change argument types.
14303         (claim_memory): Change arguments to use std::vector.
14304         (split_regular_and_flash_blocks, blocks_to_erase)
14305         (compute_garbled_blocks): Likewise.
14306         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14307         (target_write_memory_blocks): Change argument to std::vector.
14308         * symfile.c (struct load_section_data): Add constructor and
14309         destructor.  Use std::vector for "requests".
14310         (struct load_progress_data): Add initializers.
14311         (load_section_callback): Update.  Use "new".
14312         (clear_memory_write_data): Remove.
14313         (generic_load): Update.
14314
14315 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14316
14317         * arch/aarch64.h: Use common/tdesc.h.
14318
14319 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14320
14321         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14322         architecture with a 64-bit ABI.
14323
14324 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14325
14326         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14327         ahead of target description loading.
14328
14329 2018-02-26  Tom Tromey  <tom@tromey.com>
14330
14331         * stack.c (backtrace_command_1): Update.
14332         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14333         of "flags".
14334         * python/py-framefilter.c (py_print_frame)
14335         (gdbpy_apply_frame_filter): Change type of "flags".
14336         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14337         of "flags".
14338         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14339         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14340         * extension.h (enum frame_filter_flag): Rename from
14341         frame_filter_flags.
14342         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14343         (apply_ext_lang_frame_filter): Change type of "flags".
14344         * extension.c (apply_ext_lang_frame_filter): Change type of
14345         "flags".
14346         * extension-priv.h (struct extension_language_ops)
14347         <apply_frame_filter>: Change type of "flags".
14348
14349 2018-02-26  Tom Tromey  <tom@tromey.com>
14350
14351         PR python/16497:
14352         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14353         off-by-one in py_end computation.
14354         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14355         PRINT_MORE_FRAMES.
14356         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14357         constant.
14358
14359 2018-02-26  Tom Tromey  <tom@tromey.com>
14360
14361         * dwarf2read.c (struct variant_field): New.
14362         (struct nextfield) <variant>: New field.
14363         (dwarf2_add_field): Handle DW_TAG_variant_part.
14364         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14365         discriminated union.
14366         (read_structure_type): Handle DW_TAG_variant_part.
14367         (handle_struct_member_die): New function, extracted from
14368         process_structure_scope.  Handle DW_TAG_variant.
14369         (process_structure_scope): Handle discriminated unions.  Call
14370         handle_struct_member_die.
14371
14372 2018-02-26  Tom Tromey  <tom@tromey.com>
14373
14374         * rust-lang.h (rust_last_path_segment): Declare.
14375         * rust-lang.c (rust_last_path_segment): Now public.  Change
14376         contract.
14377         (struct disr_info): Remove.
14378         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14379         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14380         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14381         (rust_enum_p, rust_enum_variant): New function.
14382         (rust_underscore_fields): Remove "offset" parameter.
14383         (rust_print_enum): New function.
14384         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14385         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14386         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14387         enums.
14388         (rust_internal_print_type): New function, from rust_print_type.
14389         Remove enum code.
14390         (rust_print_type): Call rust_internal_print_type.
14391         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14392         Update enum handling.
14393         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14394         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14395         (rust_union_quirks): New functions.
14396         (process_full_comp_unit, process_full_type_unit): Call
14397         rust_union_quirks.
14398         (process_structure_scope): Update rust_unions if necessary.
14399
14400 2018-02-26  Tom Tromey  <tom@tromey.com>
14401
14402         * value.h (value_union_variant): Declare.
14403         * valops.c (value_union_variant): New function.
14404         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14405         (struct discriminant_info): New.
14406         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14407         enumerator.
14408         (struct main_type) <flag_discriminated_union>: New field.
14409
14410 2018-02-26  Tom Tromey  <tom@tromey.com>
14411
14412         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14413         unittests/unpack-selftests.c.
14414         * unittests/unpack-selftests.c: New file.
14415         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14416
14417 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14418
14419         * dwarf2read.c (struct partial_die_info) <read>: New method.
14420         (read_partial_die): Remove the declaration.
14421         (load_partial_dies): Update.
14422         (partial_die_info::partial_die_info):
14423         (read_partial_die): Change it to partial_die_info::read.
14424
14425 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14426
14427         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14428         (fixup_partial_die): Remove declaration.
14429         (scan_partial_symbols): Update.
14430         (partial_die_parent_scope): Likewise.
14431         (partial_die_full_name): Likewise.
14432         (fixup_partial_die): Change it to partial_die_info::fixup.
14433
14434 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14435
14436         * dwarf2read.c (read_partial_die): Update the declaration.
14437         (load_partial_dies): Caller update.
14438         (read_partial_die): Remove one argument abbrev_len.
14439
14440 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14441
14442         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14443         assignment operator.
14444         (load_partial_dies): Use ctor and copy ctor.
14445         (read_partial_die): Update.
14446         (dwarf2_cu::find_partial_die): Use ctor.
14447
14448 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14449
14450         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14451         (find_partial_die_in_comp_unit): Change it to
14452         dwarf2_cu::find_partial_die.
14453         (find_partial_die): Update.
14454
14455 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14456
14457         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14458         is NULL.
14459
14460 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14461
14462         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14463
14464 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14465
14466         * arch/amd64.h: Use common/tdesc.h.
14467         * arch/i386.c: Likewise.
14468         * arch/i386.h: Likewise.
14469         * arch/tic6x.c: Likewise.
14470         * arch/tdesc.h: Move file from here...
14471         * common/tdesc.h: ...to here.
14472         * features/aarch64-core.c: Regenerate.
14473         * features/aarch64-fpu.c: Regenerate.
14474         * features/i386/32bit-avx.c: Regenerate.
14475         * features/i386/32bit-avx512.c: Regenerate.
14476         * features/i386/32bit-core.c: Regenerate.
14477         * features/i386/32bit-linux.c: Regenerate.
14478         * features/i386/32bit-mpx.c: Regenerate.
14479         * features/i386/32bit-pkeys.c: Regenerate.
14480         * features/i386/32bit-sse.c: Regenerate.
14481         * features/i386/64bit-avx.c: Regenerate.
14482         * features/i386/64bit-avx512.c: Regenerate.
14483         * features/i386/64bit-core.c: Regenerate.
14484         * features/i386/64bit-linux.c: Regenerate.
14485         * features/i386/64bit-mpx.c: Regenerate.
14486         * features/i386/64bit-pkeys.c: Regenerate.
14487         * features/i386/64bit-segments.c: Regenerate.
14488         * features/i386/64bit-sse.c: Regenerate.
14489         * features/i386/x32-core.c: Regenerate.
14490         * features/tic6x-c6xp.c: Regenerate.
14491         * features/tic6x-core.c: Regenerate.
14492         * features/tic6x-gp.c: Regenerate.
14493         * target-descriptions.c: Use common/tdesc.h.
14494         * target-descriptions.h: Likewise.
14495
14496 2018-02-24  Tom Tromey  <tom@tromey.com>
14497
14498         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14499         (try_thread_db_load_from_dir, thread_db_load_search): Use
14500         std::string.
14501         (info_auto_load_libthread_db_compare): Return bool.  Change
14502         argument types.
14503         (info_auto_load_libthread_db): Use std::vector, std::string.
14504         Remove cleanups.
14505
14506 2018-02-24  Tom Tromey  <tom@tromey.com>
14507
14508         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14509         std::string.
14510         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14511         std::string*.
14512         * gdbarch.c: Rebuild.
14513         * gdbarch.h: Rebuild.
14514         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14515         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14516         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14517         std::string*.
14518
14519 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14520
14521         * gdbtypes.h (sect_offset): Change type to uint64_t.
14522         (sect_offset_str): New function.
14523         * dwarf2read.c (create_addrmap_from_aranges): Use
14524         sect_offset_str.
14525         (error_check_comp_unit_head): Likewise.
14526         (create_debug_type_hash_table): Likewise.
14527         (read_cutu_die_from_dwo): Likewise.
14528         (init_cutu_and_read_dies): Likewise.
14529         (init_cutu_and_read_dies_no_follow): Likewise.
14530         (process_psymtab_comp_unit_reader): Likewise.
14531         (partial_die_parent_scope): Likewise.
14532         (peek_die_abbrev): Likewise.
14533         (process_queue): Likewise.
14534         (dwarf2_physname): Likewise.
14535         (read_namespace_alias): Likewise.
14536         (read_import_statement): Likewise.
14537         (create_dwo_cu_reader): Likewise.
14538         (create_cus_hash_table): Likewise.
14539         (lookup_dwo_cutu): Likewise.
14540         (inherit_abstract_dies): Likewise.
14541         (read_func_scope): Likewise.
14542         (read_call_site_scope): Likewise.
14543         (dwarf2_add_member_fn): Likewise.
14544         (read_common_block): Likewise.
14545         (read_module_type): Likewise.
14546         (read_typedef): Likewise.
14547         (read_subrange_type): Likewise.
14548         (load_partial_dies): Likewise.
14549         (read_partial_die): Likewise.
14550         (find_partial_die): Likewise.
14551         (read_str_index): Likewise.
14552         (dwarf2_string_attr): Likewise.
14553         (build_error_marker_type): Likewise.
14554         (lookup_die_type): Likewise.
14555         (dump_die_shallow): Likewise.
14556         (follow_die_ref): Likewise.
14557         (dwarf2_fetch_die_loc_sect_off): Likewise.
14558         (dwarf2_fetch_constant_bytes): Likewise.
14559         (follow_die_sig): Likewise.
14560         (get_signatured_type): Likewise.
14561         (get_DW_AT_signature_type): Likewise.
14562         (dwarf2_find_containing_comp_unit): Likewise.
14563         (set_die_type): Likewise.
14564
14565 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14566
14567         * arch/aarch64.c: Include "common-defs.h".
14568         * arch/amd64.c: Likewise.
14569         * arch/i386.c: Likewise.
14570
14571 2018-02-21  Tom Tromey  <tom@tromey.com>
14572
14573         * value.h: (extract_field_op): Update.
14574         * eval.c (extract_field_op): Return a const char *.
14575         * expression.h (parse_expression_for_completion): Update.
14576         * completer.c (complete_expression): Update.
14577         (add_struct_fields): Make fieldname const.
14578         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14579         (mark_completion_tag, parse_exp_in_context_1): Update.
14580         (parse_expression_for_completion): Change "name" to
14581         unique_xmalloc_ptr*.
14582
14583 2018-02-21  Tom Tromey  <tom@tromey.com>
14584
14585         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14586
14587 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14588
14589         * avr-tdep.c (avr_read_pc): Change parameter type to
14590         readable_regcache.
14591         * gdbarch.sh (read_pc): Likewise.
14592         * gdbarch.c: Re-generated.
14593         * gdbarch.h: Re-generated.
14594         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14595         readable_regcache.
14596         * ia64-tdep.c (ia64_read_pc): Likewise.
14597         * mips-tdep.c (mips_read_pc): Likewise.
14598         * spu-tdep.c (spu_read_pc): Likewise.
14599
14600 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14601
14602         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14603         * regcache-dump.c: New file.
14604         * regcache.c: Move register_dump to regcache-dump.c.
14605         (maintenance_print_registers): Likewise.
14606         (maintenance_print_raw_registers): Likewise.
14607         (maintenance_print_cooked_registers): Likewise.
14608         (maintenance_print_register_groups): Likewise.
14609         (maintenance_print_remote_registers): Likewise.
14610         (_initialize_regcache): Likewise.
14611         * regcache.h (register_dump): Moved from regcache.c.
14612
14613 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14614
14615         * regcache.c (regcache::regcache): Update.
14616         (regcache::invalidate): Move it to detached_regcache::invalidate.
14617         (get_thread_arch_aspace_regcache): Update.
14618         (regcache::raw_update): Update.
14619         (regcache::cooked_read): Remove some code.
14620         (regcache::cooked_read_value): Likewise.
14621         (regcache::raw_write): Remove assert on m_readonly_p.
14622         (regcache::raw_supply_integer): Move it to
14623         detached_regcache::raw_supply_integer.
14624         (regcache::raw_supply_zeroed): Likewise.
14625         * regcache.h (detached_regcache) <raw_supply_integer>: New
14626         declaration.
14627         <raw_supply_zeroed, invalidate>: Likewise.
14628         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14629         <invalidate>: Likewise.
14630         <m_readonly_p>: Removed.
14631
14632 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14633
14634         * infcmd.c (get_return_value): Let stop_regs point to
14635         get_current_regcache.
14636         * regcache.c (regcache::regcache): Remove.
14637         (register_dump_reg_buffer): New class.
14638         (regcache_print): Adjust.
14639         * regcache.h (regcache): Remove constructors.
14640
14641 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14642
14643         * regcache.c (class register_dump): New class.
14644         (register_dump_regcache, register_dump_none): New class.
14645         (register_dump_remote, register_dump_groups): New class.
14646         (regcache_print): Update.
14647         * regcache.h (regcache_dump_what): Move it to regcache.c.
14648         (regcache) <dump>: Remove.
14649
14650 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14651
14652         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14653          reg_buffer_rw *.
14654         (jit_unwind_reg_set_impl): Call raw_supply.
14655         (jit_frame_sniffer): Use reg_buffer_rw.
14656         * record-full.c (record_full_core_regbuf): Change its type.
14657         (record_full_core_open_1): Use reg_buffer_rw.
14658         (record_full_close): Likewise.
14659         (record_full_core_fetch_registers): Use regcache->raw_supply.
14660         (record_full_core_store_registers): Likewise.
14661         * regcache.c (regcache::get_register_status): Move it to
14662         reg_buffer.
14663         (regcache_raw_set_cached_value): Remove.
14664         (regcache::raw_set_cached_value): Remove.
14665         (regcache::raw_write): Call raw_supply.
14666         (regcache::raw_supply): Move it to reg_buffer_rw.
14667         * regcache.h (regcache_raw_set_cached_value): Remove.
14668         (reg_buffer_rw): New class.
14669
14670 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14671
14672         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14673         readonly_detached_regcache.
14674         (dummy_frame_prev_register): Use regcache->cooked_read.
14675         * frame.c (frame_save_as_regcache): Change return type.
14676         (frame_pop): Update.
14677         * frame.h (frame_save_as_regcache): Update declaration.
14678         * inferior.h (get_infcall_suspend_state_regcache): Update
14679         declaration.
14680         * infrun.c (infcall_suspend_state) <registers>: use
14681         readonly_detached_regcache.
14682         (save_infcall_suspend_state): Don't use regcache_dup.
14683         (get_infcall_suspend_state_regcache): Change return type.
14684         * linux-fork.c (struct fork_info) <savedregs>: Change to
14685         readonly_detached_regcache.
14686         <pc>: New field.
14687         (fork_save_infrun_state): Don't use regcache_dup.
14688         (info_checkpoints_command): Adjust.
14689         * mi/mi-main.c (register_changed_p): Update declaration.
14690         (mi_cmd_data_list_changed_registers): Use
14691         readonly_detached_regcache.
14692         (register_changed_p): Change parameter type to
14693         readonly_detached_regcache.
14694         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14695         readonly_detached_regcache.
14696         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14697         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14698         New.
14699         (regcache::save): Move it to reg_buffer.
14700         (regcache::restore): Change parameter type.
14701         (regcache_dup): Remove.
14702         * regcache.h (reg_buffer) <save>: New method.
14703         (readonly_detached_regcache): New class.
14704         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14705         readonly_detached_regcache.
14706         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14707
14708 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14709
14710         * frame.c (frame_save_as_regcache): Use regcache method save.
14711         (frame_pop): Use regcache method restore.
14712         * infrun.c (restore_infcall_suspend_state): Likewise.
14713         * linux-fork.c (fork_load_infrun_state): Likewise.
14714         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14715         save.
14716         * regcache.c (regcache_save): Remove.
14717         (regcache::restore): More asserts.
14718         (regcache_cpy): Remove.
14719         * regcache.h (regcache_save): Remove the declaration.
14720         (regcache::restore): Move from private to public.
14721         Remove the friend declaration of regcache_cpy.
14722         (regcache_cpy): Remove declaration.
14723
14724 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14725
14726         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14727         parameter type to 'readable_regcache *'.
14728         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14729         * arm-tdep.c (arm_neon_quad_read): Likewise.
14730         (arm_pseudo_read): Likewise.
14731         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14732         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14733         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14734         * gdbarch.c: Re-generated.
14735         * gdbarch.h: Re-generated.
14736         * gdbarch.sh (pseudo_register_read): Change parameter type to
14737         'readable_regcache *'.
14738         (pseudo_register_read_value): Likewise.
14739         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14740         (h8300_pseudo_register_read): Likewise.
14741         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14742         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14743         (i386_pseudo_register_read_into_value): Likewise.
14744         (i386_pseudo_register_read_value): Likewise.
14745         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14746         declaration.
14747         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14748         * m32c-tdep.c (m32c_raw_read): Likewise.
14749         (m32c_read_flg): Likewise.
14750         (m32c_banked_register): Likewise.
14751         (m32c_banked_read): Likewise.
14752         (m32c_sb_read): Likewise.
14753         (m32c_part_read): Likewise.
14754         (m32c_cat_read): Likewise.
14755         (m32c_r3r2r1r0_read): Likewise.
14756         (m32c_pseudo_register_read): Likewise.
14757         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14758         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14759         (mep_pseudo_cr64_read): Likewise.
14760         (mep_pseudo_register_read): Likewise.
14761         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14762         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14763         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14764         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14765         (regcache::cooked_read): Likewise.
14766         (regcache::cooked_read_value): Likewise.
14767         (regcache_cooked_read_signed):
14768         (regcache::cooked_read): Likewise.
14769         * regcache.h (readable_regcache): New class.
14770         (regcache): Inherit readable_regcache.  Move some methods to
14771         readable_regcache.
14772         * rl78-tdep.c (rl78_pseudo_register_read): Change
14773         parameter type to 'readable_regcache *'.
14774         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14775         (e500_pseudo_register_read): Change parameter type to
14776         'readable_regcache *'.
14777         (dfp_pseudo_register_read): Likewise.
14778         (vsx_pseudo_register_read): Likewise.
14779         (efpr_pseudo_register_read): Likewise.
14780         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14781         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14782         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14783         (sh64_pseudo_register_read): Likewise.
14784         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14785         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14786         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14787         (spu_pseudo_register_read): Likewise.
14788         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14789         (xtensa_pseudo_register_read): Likewise.
14790
14791 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14792
14793         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14794         (regcache::arch): Move it to reg_buffer::arch.
14795         (regcache::register_buffer): Likewise.
14796         (regcache::assert_regnum): Likewise.
14797         (regcache::num_raw_registers): Likewise.
14798         * regcache.h (reg_buffer): New class.
14799         (regcache): Inherit reg_buffer.
14800
14801 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14802
14803         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14804         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14805
14806 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14807
14808         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14809
14810 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14811
14812         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14813         (SFILES): Remove common/*.c files.
14814         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14815         * common/common.host: Add common reference.
14816         * configure.ac: Likewise.
14817         * configure: Regenerate.
14818
14819 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14820
14821         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14822         (block_initialize_namespace): Use new.
14823         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14824         (dwarf2_free_objfile): Use delete.
14825         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14826         (copy_type_recursive): Use new.
14827         * gdb_obstack.h (allocate_on_obstack): New.
14828
14829 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14830
14831         PR gdb/22849
14832         * inferior.c (exit_inferior_1): Reset inf->control.
14833
14834 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14835
14836         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14837         declaration.
14838
14839 2018-02-14  Pedro Alves  <palves@redhat.com>
14840
14841         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14842         frame_cleanup_after_sniffer on exception.
14843
14844 2018-02-14  Tom Tromey  <tom@tromey.com>
14845
14846         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14847         const.
14848         (solib_bfd_open): Make pathname const.
14849         * solib.c (solib_bfd_open): Make pathname const.
14850         * solib-spu.c (spu_bfd_fopen): Make name const.
14851         (spu_bfd_open): Make pathname const.
14852         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14853         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14854
14855 2018-02-14  Tom Tromey  <tom@tromey.com>
14856
14857         * symfile.c (symfile_bfd_open): Update.
14858         * source.h (openp, source_full_path_of, find_and_open_source):
14859         Change argument type to unique_xmalloc_ptr.
14860         * source.c (openp): Take a unique_xmalloc_ptr.
14861         (source_full_path_of, find_and_open_source): Likewise.
14862         (open_source_file, symtab_to_fullname): Update.
14863         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14864         unique_xmalloc_ptr.
14865         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14866         (exec_file_find): Update.
14867         * psymtab.c (psymtab_to_fullname): Update.
14868         * nto-tdep.h (nto_find_and_open_solib): Update.
14869         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14870         unique_xmalloc_ptr.
14871         * exec.c (exec_file_attach): Update.
14872         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14873         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14874
14875 2018-02-14  Tom Tromey  <tom@tromey.com>
14876
14877         * solib.c: Include source.h.
14878         * nto-tdep.c: Include source.h.
14879         * mi/mi-cmd-env.c: Include source.h.
14880         * infcmd.c: Include source.h.
14881         * exec.c: Include source.h.
14882         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14883         (add_path, directory_switch, source_path, init_source_path): Move
14884         declarations...
14885         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14886         (add_path, directory_switch, source_path, init_source_path):
14887         ...here.
14888
14889 2018-02-14  Tom Tromey  <tom@tromey.com>
14890
14891         * solist.h (exec_file_find, solib_find): Return
14892         unique_xmalloc_ptr.
14893         (solib_bfd_fopen): Take a const char *.
14894         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14895         (exec_file_find, solib_find): Likewise.
14896         (solib_bfd_fopen): Do not take ownership of "pathname".
14897         (solib_bfd_open): Use unique_xmalloc_ptr.
14898         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14899         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14900         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14901         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14902
14903 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14904
14905         * ada-lang.c (name_match_type_from_name): Remove reference to
14906         ada_name_for_lookup in function's documentation.
14907         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14908
14909 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14910
14911         * defs.h (enum openp_flags): New enum.
14912         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14913         Move to enum openp_flags.
14914         (openp_flags): New enum flags.
14915         (openp): Change parameter type to openp_flags.
14916         * source.c (openp): Change parameter type to openp_flags.
14917         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14918         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14919
14920 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14921
14922         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14923         per-command.
14924
14925 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14926
14927         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14928         into...
14929         (class dwarf2_queue_guard): ...the destructor of this new class.
14930         (dw2_do_instantiate_symtab): Create instance of the new class
14931         dwarf2_queue_guard, remove cleanup.
14932
14933 2018-02-09  Tom Tromey  <tom@tromey.com>
14934
14935         * source.c (find_source_lines): Don't reference past the end of
14936         the vector.
14937
14938 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14939
14940         * remote.c (remote_btrace_maybe_reopen): Change error message.
14941         * btrace.c (btrace_enable): Likewise.
14942         (parse_xml_btrace): Likewise.
14943         (parse_xml_btrace_conf): Likewise.
14944
14945 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14946
14947         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14948         (linux_enable_pt, linux_enable_bts): Call
14949         diagnose_perf_event_open_fail.
14950
14951 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14952
14953         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14954         Remove parameter and change return type.  Update callers.  Move it.
14955         (linux_enable_bts, linux_enable_pt): Improve error message.
14956         (linux_enable_pt): Remove zero buffer size check.
14957         (linux_enable_btrace): Improve error messages.  Remove NULL return
14958         check.
14959
14960 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14961
14962         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14963         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14964         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14965         (linux_supports_pt, linux_supports_btrace): Remove.
14966         (linux_enable_bts): Call cpu_supports_bts.
14967         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14968         * remote.c (remote_supports_btrace): Remove.
14969         (init_remote_ops): Remove remote_supports_btrace.
14970         * target-delegates.c: Regenerated.
14971         * target.c (target_supports_btrace): Remove.
14972         * target.h (target_ops) <to_supports_btrace>: Remove
14973         (target_supports_btrace): Remove.
14974         * x86-linux-nat.c (x86_linux_create_target): Remove
14975         linux_supports_btrace.
14976
14977 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14978
14979         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14980         btrace failed.
14981         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14982         exception and use message in own exception.
14983
14984 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14985
14986         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14987         (perf_event_pt_event_type): Use gdb_file_up.
14988         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14989         scoped_fd, and scoped_mmap.
14990
14991 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14992
14993         * common/scoped_mmap.h: New.
14994         * unittests/scoped_mmap-selftest.c: New.
14995         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14996         unittests/scoped_mmap-selftest.c.
14997
14998 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14999
15000         * common/scoped_fd.h: New.
15001         * unittests/scoped_fd-selftest.c: New.
15002         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
15003         unittests/scoped_fd-selftest.c.
15004
15005 2018-02-09  Tom Tromey  <tom@tromey.com>
15006
15007         * auto-load.c (auto_load_section_scripts): Use
15008         gdb::unique_xmalloc_ptr.
15009
15010 2018-02-09  Tom Tromey  <tom@tromey.com>
15011
15012         * auto-load.c (execute_script_contents): Use std::string.
15013
15014 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
15015
15016         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
15017         Python function, rather than a new command.
15018
15019 2018-02-08  Tom Tromey  <tom@tromey.com>
15020
15021         * solib.c (solib_find_1): Use std::string.
15022         (solib_bfd_fopen): Use unique_xmalloc_ptr.
15023
15024 2018-02-08  Tom Tromey  <tom@tromey.com>
15025
15026         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
15027
15028 2018-02-08  Tom Tromey  <tom@tromey.com>
15029
15030         * source.c (find_source_lines): Use gdb::def_vector.
15031
15032 2018-02-08  Tom Tromey  <tom@tromey.com>
15033
15034         * macrocmd.c (struct temporary_macro_definition): New.
15035         (macro_define_command): Use temporary_macro_definition.  Remove
15036         cleanups.
15037         (free_macro_definition_ptr): Remove.
15038
15039 2018-02-08  Tom Tromey  <tom@tromey.com>
15040
15041         * macroexp.c (maybe_expand): Use std::string.
15042
15043 2018-02-08  Tom Tromey  <tom@tromey.com>
15044
15045         * macroexp.c (struct macro_buffer): Add initializers for some
15046         members.
15047         (init_buffer, init_shared_buffer, free_buffer)
15048         (free_buffer_return_text): Remove.
15049         (macro_buffer): New constructors.
15050         (~macro_buffer): New destructor.
15051         (macro_buffer::set_shared): New method.
15052         (macro_buffer::resize_buffer, macro_buffer::appendc)
15053         (macro_buffer::appendmem): Now methods, not free functions.
15054         (set_token, append_tokens_without_splicing, stringify)
15055         (macro_stringify): Update.
15056         (gather_arguments): Change return type.  Remove argc_p argument,
15057         add args_ptr argument.  Use std::vector.
15058         (substitute_args): Remove argc argument.  Accept std::vector.
15059         (expand): Update.  Use std::vector.
15060         (scan, macro_expand, macro_expand_next): Update.
15061
15062 2018-02-08  Tom Tromey  <tom@tromey.com>
15063
15064         * symtab.c (default_collect_symbol_completion_matches_break_on):
15065         Use unique_xmalloc_ptr.
15066         * macroscope.h: (sal_macro_scope, user_macro_scope)
15067         (default_macro_scope): Return unique_xmalloc_ptr.
15068         * macroscope.c (sal_macro_scope, user_macro_scope)
15069         (default_macro_scope): Return unique_xmalloc_ptr.
15070         * macroexp.h (macro_expand, macro_expand_once): Return
15071         unique_xmalloc_ptr.
15072         * macroexp.c (macro_expand, macro_expand_once): Return
15073         unique_xmalloc_ptr.
15074         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15075         (info_macro_command, info_macros_command): Use
15076         unique_xmalloc_ptr.
15077         * compile/compile-c-support.c (write_macro_definitions): Use
15078         unique_xmalloc_ptr.
15079         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15080
15081 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15082
15083         * value.c (value_static_field): Assign field type instead of
15084         containing type when returning an optimized out value.
15085
15086 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15087
15088         * ft32-tdep.c (ft32_read_pc): Remove.
15089         (ft32_write_pc): Remove.
15090         (ft32_gdbarch_init): Update.
15091         * m32r-tdep.c (m32r_read_pc): Remove.
15092         (m32r_gdbarch_init): Update.
15093         * mep-tdep.c (mep_read_pc): Remove.
15094         (mep_gdbarch_init): Update.
15095         * microblaze-tdep.c (microblaze_write_pc): Remove.
15096         (microblaze_gdbarch_init): Update.
15097         * mn10300-tdep.c (mn10300_read_pc): Remove.
15098         (mn10300_write_pc): Remove.
15099         (mn10300_gdbarch_init): Update.
15100         * moxie-tdep.c (moxie_read_pc): Remove.
15101         (moxie_write_pc): Remove.
15102         (moxie_gdbarch_init): Update.
15103
15104 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15105
15106         * expprint.c (print_subexp_standard): Handle
15107         OP_F77_UNDETERMINED_ARGLIST.
15108         (dump_subexp_body_standard): Likewise.
15109
15110 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15111
15112         * target-descriptions.c (tdesc_element_visitor) Add empty
15113         implementations.
15114         (tdesc_type): Move make_gdb_type from here.
15115         (tdesc_type_builtin): Likewise.
15116         (tdesc_type_vector): Likewise.
15117         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15118         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15119         (make_gdb_type_union): Likewise.
15120         (make_gdb_type_flags): Likewise.
15121         (make_gdb_type_enum): Likewise.
15122         (make_gdb_type): New function.
15123         (tdesc_register_type): Use static make_gdb_type.
15124
15125 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15126
15127         * infcmd.c (default_print_one_register_info): Align natural-format
15128         column values consistently one under another.
15129         (pad_to_column): New function.
15130
15131 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15132
15133         * dwarf2read.c (dwarf2_physname): Move commment.
15134
15135 2018-02-01  Leszek Swirski  <leszeks@google.com>
15136
15137         * varobj.c (varobj_formatted_print_options): Allow recursive
15138         pretty printing if pretty printing is enabled.
15139
15140 2018-02-01  Leszek Swirski  <leszeks@google.com>
15141
15142         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15143         names after a structop as a filename.
15144
15145 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15146
15147         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15148         (arm_record_coproc_data_proc): Likewise.
15149
15150 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15151
15152         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15153
15154 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15155
15156         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15157         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15158
15159 2018-01-31  Pedro Alves  <palves@redhat.com>
15160
15161         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15162         * inflow.c (child_terminal_save_inferior): Wrap reference to
15163         tcgetpgrp in HAVE_TERMIOS_H.
15164         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15165         _WIN32.
15166         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15167         always iterate over all inferiors.
15168         (gdbsim_cntrl_c): Adjust.
15169         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15170
15171 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15172
15173         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15174         index type is objfile-owned if the element type is as well.
15175
15176 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15177
15178         GDB 8.1 released.
15179
15180 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15181
15182         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15183         "features/s390x-linux64.c".
15184         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15185         s390_linux32 and s390x_linux64.
15186         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15187         default tdesc.
15188         * s390-tdep.c: Include "features/s390-linux32.c" and
15189         "features/s390x-linux64.c".
15190         (s390_tdesc_valid): Add check for tdesc_has_registers.
15191         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15192         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15193         tdesc_s390x_linux64.
15194         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15195         tdesc_s390x_linux64 to...
15196         * s390-tdep.h: ...here.
15197
15198 2018-01-30  Pedro Alves  <palves@redhat.com>
15199
15200         PR gdb/13211
15201         * config.in, configure: Regenerate.
15202         * configure.ac: Check for getpgid.
15203         * go32-nat.c (go32_pass_ctrlc): New.
15204         (go32_target): Install it.
15205         * inf-child.c (inf_child_target): Install
15206         child_terminal_save_inferior, child_pass_ctrlc and
15207         child_interrupt.
15208         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15209         (inf_ptrace_target): No longer install it.
15210         * infcmd.c (interrupt_target_1): Adjust.
15211         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15212         (child_interrupt): Declare.
15213         (inferior::terminal_state): New.
15214         * inflow.c (struct terminal_info): Update comments.
15215         (inferior_process_group): Delete.
15216         (terminal_is_ours): Delete.
15217         (gdb_tty_state): New.
15218         (child_terminal_init): Adjust.
15219         (is_gdb_terminal, sharing_input_terminal_1)
15220         (sharing_input_terminal): New functions.
15221         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15222         Set the process's actual process group in the foreground if
15223         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15224         mark terminal as the inferior's if not sharing GDB's terminal.
15225         Don't check attach_flag.
15226         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15227         pass down a target_terminal_state.
15228         (child_terminal_save_inferior): New, factored out from ...
15229         (child_terminal_ours_1): ... this.  Handle
15230         target_terminal_state::is_ours_for_output.
15231         (child_interrupt, child_pass_ctrlc): New.
15232         (inflow_inferior_exit): Clear the inferior's terminal_state.
15233         (copy_terminal_info): Copy the inferior's terminal state.
15234         (_initialize_inflow): Remove reference to terminal_is_ours.
15235         * inflow.h (inferior_process_group): Delete.
15236         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15237         * procfs.c (procfs_target): Don't install procfs_interrupt.
15238         (procfs_interrupt): Delete.
15239         * remote.c (remote_serial_quit_handler): Adjust.
15240         (remote_interrupt): Remove ptid parameter.  Adjust.
15241         * target-delegates.c: Regenerate.
15242         * target.c: Include "terminal.h".
15243         (target_terminal::terminal_state): Rename to ...
15244         (target_terminal::m_terminal_state): ... this.
15245         (target_terminal::init): Adjust.
15246         (target_terminal::inferior): Adjust to per-inferior
15247         terminal_state.
15248         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15249         (target_terminal::ours, target_terminal::ours_for_output): Use
15250         target_terminal_is_ours_kind.
15251         (target_interrupt): Remove ptid parameter.  Adjust.
15252         (default_target_pass_ctrlc): Adjust.
15253         * target.h (target_ops::to_terminal_save_inferior): New field.
15254         (target_ops::to_interrupt): Remove ptid_t parameter.
15255         (target_interrupt): Remove ptid_t parameter.  Update comment.
15256         (target_pass_ctrlc): Update comment.
15257         * target/target.h (target_terminal_state): New scoped enum,
15258         factored out of ...
15259         (target_terminal::terminal_state): ... here.
15260         (target_terminal::inferior): Update comments.
15261         (target_terminal::restore_inferior): New.
15262         (target_terminal::is_inferior, target_terminal::is_ours)
15263         (target_terminal::is_ours_for_output): Adjust.
15264         (target_terminal::scoped_restore_terminal_state): Adjust to
15265         rename, and call restore_inferior() instead of inferior().
15266         (target_terminal::scoped_restore_terminal_state::m_state): Change
15267         type.
15268         (target_terminal::terminal_state): Rename to ...
15269         (target_terminal::m_terminal_state): ... this and change type.
15270
15271 2018-01-30  Pedro Alves  <palves@redhat.com>
15272
15273         * linux-nat.c (wait_for_signal): New function.
15274         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15275         directly.
15276         (async_terminal_is_ours)
15277         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15278         (linux_nat_add_target): Don't override
15279         to_terminal_inferior/to_terminal_ours.
15280
15281 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15282
15283         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15284
15285 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15286
15287         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15288         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15289         dwarf2_per_objfile_free here.
15290         (dwarf2_per_objfile_free): Remove.
15291         (_initialize_dwarf2_read): Don't register
15292         dwarf2_per_objfile_free as a registry cleanup.
15293
15294 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15295
15296         Avoid compilation errors in MinGW native builds
15297
15298         The error is triggered by including python-internal.h, and the
15299         error message is:
15300
15301              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15302                       from build-gnulib/import/math.h:27,
15303                       from d:/usr/Python26/include/pyport.h:235,
15304                       from d:/usr/Python26/include/Python.h:58,
15305                       from python/python-internal.h:94,
15306                       from python/py-arch.c:24:
15307              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15308         using ::hypot;
15309                 ^~~~~
15310
15311         This happens because Python headers define 'hypot' to expand t
15312         '_hypot' in the Windows builds.
15313         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15314         'hypoth'.  This avoids a compilation error.
15315
15316 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15317
15318         * MAINTAINERS (Write After Approval): Fix ordering.
15319
15320 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15321
15322         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15323
15324 2018-01-26  Alan Modra  <amodra@gmail.com>
15325
15326         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15327         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15328         Remove nop.  Make const.  Comment.
15329         (powerpc32_plt_stub_so_2): New.
15330         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15331         Correct count.  Update uses.
15332         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15333         Move common code reading PLT entry word.  Correct
15334         powerpc32_plt_stub PLT address calculation.
15335         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15336         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15337         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15338         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15339         (ppc64_standard_linkage8): Likewise.
15340         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15341         Correct insns description.
15342         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15343
15344 2018-01-24  Pedro Alves  <palves@redhat.com>
15345
15346         GCC PR libstdc++/83906
15347         * gdbtypes.c (operator==(const dynamic_prop &,
15348         const dynamic_prop &)): New.
15349         (operator==(const range_bounds &, const range_bounds &)): New.
15350         (check_types_equal): Use them instead of memcmp.
15351         * gdbtypes.h (operator==(const dynamic_prop &,
15352         const dynamic_prop &)): Declare.
15353         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15354         (operator==(const range_bounds &, const range_bounds &)): Declare.
15355         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15356
15357 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15358
15359         * s390-linux-tdep.c (s390_record_address_mask)
15360         (s390_record_calc_disp_common, s390_record_calc_disp)
15361         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15362         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15363         (s390_process_record): Move to s390-tdep.c.
15364         (s390_linux_init_abi_any): Adjust.
15365         * s390-tdep.c (s390_record_address_mask)
15366         (s390_record_calc_disp_common, s390_record_calc_disp)
15367         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15368         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15369         (s390_process_record): Moved from s390-linux-tdep.c
15370         (s390_gdbarch_init): Adjust.
15371
15372 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15373
15374         * s390-linux-nat.c (s390-tdep.h): New include.
15375         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15376         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15377         (ALLDEPFILES): Add s390-tdep.c.
15378         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15379         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15380         * s390-tdep.h: ...this.  New file.
15381         * s390-linux-tdep.c (s390-tdep.h): New include.
15382         (_initialize_s390_tdep): Rename to...
15383         (_initialize_s390_linux_tdep): ...this and adjust.
15384         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15385         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15386         s390-tdep.h.
15387         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15388         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15389         (s390_is_partial_instruction, s390_software_single_step)
15390         (is_non_branch_ril, s390_displaced_step_copy_insn)
15391         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15392         (s390_prologue_data, s390_addr, s390_store, s390_load)
15393         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15394         (s390_register_call_saved, s390_guess_tracepoint_registers)
15395         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15396         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15397         (s390_pseudo_register_name, s390_pseudo_register_type)
15398         (s390_pseudo_register_read, s390_pseudo_register_write)
15399         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15400         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15401         (s390_addr_bits_remove, s390_address_class_type_flags)
15402         (s390_address_class_type_flags_to_name)
15403         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15404         (s390_function_arg_float, s390_function_arg_vector)
15405         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15406         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15407         (s390_frame_align, s390_register_return_value, s390_return_value)
15408         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15409         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15410         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15411         (s390_trad_frame_prev_register, s390_unwind_cache)
15412         (s390_prologue_frame_unwind_cache)
15413         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15414         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15415         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15416         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15417         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15418         (s390_frame_base_address, s390_local_base_address)
15419         (s390_frame_base, s390_gcc_target_options)
15420         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15421         (s390_validate_reg_range, s390_tdesc_valid)
15422         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15423         * s390-tdep.c: ...this.  New file.
15424
15425 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15426
15427         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15428         (s390_process_record, s390_gdbarch_tdep_alloc)
15429         (s390_linux_init_abi_any): Use/set new hook.
15430
15431 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15432
15433         * s390-linux-tdep.c (osabi.h): New include.
15434         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15435         (s390_linux_init_abi_any): New functions.
15436         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15437
15438 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15439
15440         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15441         tdesc_has_registers check
15442
15443 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15444
15445         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15446         (s390_validate_reg_range): New macro.
15447         (s390_gdbarch_init): Adjust.
15448
15449 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15450
15451         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15452         (s390_gdbarch_tdep_alloc): Adjust.
15453         (s390_gdbarch_init): Adjust.
15454
15455 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15456
15457         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15458         <have_tdb>: Change type to bool.
15459         (s390_gdbarch_tdep_alloc): Adjust.
15460         (s390_gdbarch_init): Adjust.
15461
15462 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15463
15464         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15465         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15466         (s390_gdbarch_tdep_alloc): New function.
15467         (s390_gdbarch_init): Allocate tdep at start and use its fields
15468         instead of separate variables.
15469
15470 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15471
15472         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15473         when looking for cached gdbarch and add comment for remaining.
15474
15475 2018-01-22  Pedro Alves  <palves@redhat.com>
15476             Sergio Durigan Junior  <sergiodj@redhat.com>
15477
15478         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15479         case.
15480
15481 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15482
15483         * MAINTAINERS: Update my company e-mail address.
15484
15485 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15486
15487         * regcache.c (cooked_write_test): New function.
15488         (_initialize_regcache): Register the test.
15489
15490 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15491
15492         * ia64-tdep.c (ia64_pseudo_register_read): Call
15493         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15494         * m32c-tdep.c (m32c_cat_read): Likewise.
15495         (m32c_r3r2r1r0_read): Likewise.
15496         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15497         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15498
15499 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15500
15501         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15502         method raw_read instead of regcache_raw_read.
15503         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15504         * arm-tdep.c (arm_neon_quad_read): Likewise.
15505         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15506         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15507         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15508         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15509         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15510         (i386_pseudo_register_read_into_value): Likewise.
15511         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15512         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15513         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15514         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15515         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15516         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15517         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15518         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15519         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15520
15521 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15522
15523         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15524         * configure.tgt: Remove target mt.
15525         * mt-tdep.c: Remove.
15526         * regcache.c (cooked_read_test): Remove the check for mt.
15527
15528 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15529
15530         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15531         instead of gdbarch_pseudo_register_read_value.
15532
15533 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15534
15535         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15536         language is Ada.
15537
15538 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15539
15540         * linespec.c (create_sals_line_offset): Remove code that preserved
15541         the symtab_and_line's line number.
15542
15543 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15544
15545         * varobj.c (varobj_create): Don't set valid_block when creating a
15546         floating varobj.
15547
15548 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15549
15550         * varobj.c (varobj_create): Remove out of date comment.
15551
15552 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15553
15554         PR mi/20395
15555         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15556         updating innermost block.
15557         * parse.c (innermost_block_tracker::update): Take extra type
15558         parameter, and check types match before updating innermost block.
15559         (write_dollar_variable): Update innermost block for registers.
15560         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15561         (innermost_block_tracker::innermost_block_tracker): Initialise
15562         m_types member.
15563         (innermost_block_tracker::reset): Take type parameter.
15564         (innermost_block_tracker::update): Take type parameter, and pass
15565         type through as needed.
15566         (innermost_block_tracker::m_types): New member.
15567         * varobj.c (varobj_create): Pass type when reseting innermost
15568         block.
15569
15570 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15571
15572         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15573         * ada-lang.c (resolve_subexp): Likewise.
15574         * breakpoint.c (set_breakpoint_condition) Likewise.
15575         (watch_command_1) Likewise.
15576         * c-exp.y (variable): Likewise.
15577         * d-exp.y (PrimaryExpression): Likewise.
15578         * f-exp.y (variable): Likewise.
15579         * go-exp.y (variable): Likewise.
15580         * m2-exp.y (variable): Likewise.
15581         * objfiles.c (objfile::~objfile): Likewise.
15582         * p-exp.y (variable): Likewise.
15583         * parse.c (innermost_block): Change type.
15584         * parser-defs.h (class innermost_block_tracker): New.
15585         (innermost_block): Change to innermost_block_tracker.
15586         * printcmd.c (display_command): Switch to innermost_block API.
15587         (do_one_display): Likewise.
15588         * rust-exp.y (do_one_display): Likewise.
15589         * symfile.c (clear_symtab_users): Likewise.
15590         * varobj.c (varobj_create): Switch to innermost_block API, replace
15591         use of innermost_block with block stored on varobj object.
15592
15593 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15594
15595         * expression.h (innermost_block): Remove declaration.
15596         * varobj.c: Add 'parser-defs.h' include.
15597
15598 2018-01-19  Tom Tromey  <tom@tromey.com>
15599
15600         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15601         symbols in the static and global blocks.
15602
15603 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15604
15605         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15606         gdb_ptrace.h, and move including gdb_wait.h ...
15607         * nat/linux-ptrace.h: ... to here.
15608
15609 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15610
15611         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15612         inf_ptrace_detach_success.
15613         (inf_ptrace_detach_success): Add inferior parameter, use it
15614         instead of inferior_ptid, pass it to detach_inferior.
15615         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15616         parameter.
15617         * inferior.c (detach_inferior): Add overload that takes an
15618         inferior object.
15619         * inferior.h (detach_inferior): Likewise.
15620         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15621         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15622         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15623
15624 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15625
15626         * target.h (struct target_ops) <to_detach>: Add inferior
15627         parameter.
15628         (target_detach): Likewise.
15629         * target.c (dispose_inferior): Pass inferior down.
15630         (target_detach): Pass inferior down.  Assert that it is equal to
15631         the current inferior.
15632         * aix-thread.c (aix_thread_detach): Pass inferior down.
15633         * corefile.c (core_file_command): Pass current_inferior() down.
15634         * corelow.c (core_detach): Add inferior parameter.
15635         * darwin-nat.c (darwin_detach): Likewise.
15636         * gnu-nat.c (gnu_detach): Likewise.
15637         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15638         * infcmd.c (detach_command): Pass current_inferior() down to
15639         target_detach.
15640         * infrun.c (follow_fork_inferior): Pass parent_inf to
15641         target_detach.
15642         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15643         target_detach.
15644         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15645         * linux-thread-db.c (thread_db_detach): Likewise.
15646         * nto-procfs.c (procfs_detach): Likewise.
15647         * procfs.c (procfs_detach): Likewise.
15648         * record.c (record_detach): Likewise.
15649         * record.h (struct inferior): Forward-declare.
15650         (record_detach): Add inferior parameter.
15651         * remote-sim.c (gdbsim_detach): Likewise.
15652         * remote.c (remote_detach_1): Likewise.
15653         (remote_detach): Likewise.
15654         (extended_remote_detach): Likewise.
15655         * sol-thread.c (sol_thread_detach): Likewise.
15656         * target-debug.h (target_debug_print_inferior_p): New macro.
15657         * target-delegates.c: Re-generate.
15658         * top.c (kill_or_detach): Pass inferior down to target_detach.
15659         * windows-nat.c (windows_detach): Add inferior parameter.
15660
15661 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15662
15663         * target.h (struct target_ops) <to_detach>: Remove args
15664         parameter.
15665         (target_detach): Likewise.
15666         * target.c (dispose_inferior): Adjust.
15667         (target_detach): Remove args parameter, adjust.
15668         * aix-thread.c (aix_thread_detach): Adjust.
15669         * corefile.c (core_file_command): Adjust.
15670         * corelow.c (core_detach): Adjust.
15671         * darwin-nat.c (darwin_detach): Adjust.
15672         * gnu-nat.c (gnu_detach): Adjust.
15673         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15674         * infcmd.c (detach_command): Adjust
15675         * infrun.c (follow_fork_inferior): Adjust.
15676         (handle_vfork_child_exec_or_exit): Adjust.
15677         * linux-fork.c (linux_fork_detach): Remove args parameter.
15678         * linux-fork.h (linux_fork_detach): Likewise.
15679         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15680         * linux-thread-db.c (thread_db_detach): Likewise.
15681         * nto-procfs.c (procfs_detach): Likewise.
15682         * procfs.c (procfs_detach): Likewise.
15683         (do_detach): Remove signo parameter.
15684         * record.c (record_detach): Remove args parameter.
15685         * record.h (record_detach): Likewise.
15686         * remote-sim.c (gdbsim_detach): Likewise.
15687         * remote.c (remote_detach_1): Likewise.
15688         (remote_detach): Likewise.
15689         (extended_remote_detach): Likewise.
15690         * sol-thread.c (sol_thread_detach): Likewise.
15691         * target-delegates.c: Re-generate.
15692         * top.c (struct qt_args) <args>: Remove field.
15693         (kill_or_detach): Don't pass args.
15694         (quit_force): Don't set args.
15695         * windows-nat.c (windows_detach): Remove args parameter.
15696
15697 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15698
15699         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15700         (arm_linux_init_abi): Install it.
15701
15702 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15703
15704         * osabi.c (gdb_osabi_names): Extend the regexp for
15705         arm-linux-gnueabihf.
15706
15707 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15708
15709         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15710         m_abbrevs.
15711         (abbrev_table::add_abbrev): Update.
15712         (abbrev_table::lookup_abbrev): Update.
15713
15714 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15715
15716         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15717
15718 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15719
15720         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15721         to "std::string".
15722
15723 2018-01-17  Tom Tromey  <tom@tromey.com>
15724
15725         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15726
15727 2018-01-17  Tom Tromey  <tom@tromey.com>
15728
15729         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15730         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15731         (create_array_type_with_stride): Update.
15732         * dwarf2read.c (set_die_type): Update.
15733
15734 2018-01-17  Tom Tromey  <tom@tromey.com>
15735
15736         * dwarf2read.c (delayed_method_info): Remove typedef.
15737         (dwarf2_cu::method_info): Now a std::vector.
15738         (add_to_method_list): Update.
15739         (free_delayed_list): Remove.
15740         (compute_delayed_physnames): Update.
15741         (process_full_comp_unit, process_full_type_unit): Clear the method
15742         list.  Remove cleanups.
15743         (psymtab_include_file_name): Add name_holder parameter.  Use
15744         unique_xmalloc_ptr.
15745         (dwarf_decode_lines): Update.
15746
15747 2018-01-17  Tom Tromey  <tom@tromey.com>
15748             Simon Marchi  <simon.marchi@ericsson.com>
15749
15750         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15751         (dwarf2_per_objfile::free_cached_comp_units)
15752         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15753         (init_cutu_and_read_dies_no_follow): Update.
15754         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15755         (dwarf2_cu::~dwarf2_cu): New.
15756         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15757         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15758
15759 2018-01-17  Tom Tromey  <tom@tromey.com>
15760             Simon Marchi  <simon.marchi@ericsson.com>
15761
15762         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15763         (struct die_reader_specs) <abbrev_table>: New member.
15764         (struct abbrev_table): Add constructor.
15765         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15766         <abbrev_obstack>: Now an auto_obstack.
15767         (abbrev_table_up): New typedef.
15768         (init_cu_die_reader): Add abbrev_table parameter.
15769         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15770         Add result_dwo_abbrev_table.
15771         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15772         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15773         Update.
15774         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15775         parameter.
15776         (skip_children): Update.
15777         (abbrev_table::alloc_abbrev): Rename from
15778         abbrev_table_alloc_abbrev.
15779         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15780         (abbrev_table::lookup_abbrev): Rename from
15781         abbrev_table_lookup_abbrev.
15782         (abbrev_table_read_table): Return abbrev_table_up.
15783         (abbrev_table_free, abbrev_table_free_cleanup)
15784         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15785         (load_partial_dies): Update.
15786
15787 2018-01-17  Tom Tromey  <tom@tromey.com>
15788
15789         * dwarf2read.c (dwarf2_compute_name): Update comment.
15790         (read_func_scope, read_variable): Update.
15791         (new_symbol): Remove.
15792         (new_symbol_full): Rename to new_symbol.
15793
15794 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15795
15796         PR gdb/16577
15797         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15798         a warning instead of throwing an error, set section size to 0 and return
15799         NULL.
15800         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15801
15802 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15803
15804         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15805         std::string.
15806         (linux_ptrace_attach_fail_reason_string): Likewise.
15807         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15808         Likewise.
15809         (linux_ptrace_attach_fail_reason_string): Likewise.
15810         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15811
15812 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15813
15814         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15815
15816 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15817
15818         PR gdb/21559
15819         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15820         checking for fs_base/gs_base fields in struct user_regs_struct.
15821         * configure: Regenerate.
15822
15823 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15824
15825         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15826         function.
15827         (aarch64_linux_init_abi): Install it to gdbarch hook
15828         gcc_target_options.
15829
15830 2018-01-15  Pedro Alves  <palves@redhat.com>
15831
15832         * common/signals-state-save-restore.c
15833         (save_original_signals_state): Fix typos.
15834
15835 2017-01-12  Tom Tromey  <tom@tromey.com>
15836             Sergio Durigan Junior  <sergiodj@redhat.com>
15837
15838         * Makefile.in (install-only): Install gdb-add-index.
15839
15840 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15841
15842         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15843
15844 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15845
15846         * infrun.c (keep_going_pass_signal): Clear step-over info when
15847         insert_breakpoints fails.
15848
15849 2018-01-11  Pedro Alves  <palves@redhat.com>
15850
15851         PR gdb/22583
15852         * infrun.c (resume): Rename to ...
15853         (resume_1): ... this.
15854         (resume): Reimplement as wrapper around resume_1.
15855
15856 2018-01-11  Pedro Alves  <palves@redhat.com>
15857
15858         PR remote/22597
15859         * remote.c (remote_parse_stop_reply): Default to the last-set
15860         general thread instead of to 'magic_null_ptid'.
15861
15862 2018-01-10  Pedro Alves  <palves@redhat.com>
15863
15864         * language.h (language_get_symbol_name_matcher): Rename ...
15865         (get_symbol_name_matcher): ... this.
15866         * language.c (language_get_symbol_name_matcher): Ditto.
15867         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15868         callers adjusted.
15869
15870 2018-01-10  Pedro Alves  <palves@redhat.com>
15871
15872         PR gdb/22670
15873         * dwarf2read.c
15874         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15875         Adjust to use language_get_symbol_name_matcher instead of
15876         language_defn::la_get_symbol_name_matcher.
15877         * language.c (language_get_symbol_name_matcher): If in Ada mode
15878         and the lookup name is a verbatim match, return Ada's matcher.
15879         * language.h (language_get_symbol_name_matcher): Adjust comment.
15880         (ada_lookup_name_info::verbatim_p):: New method.
15881
15882 2018-01-10  Pedro Alves  <palves@redhat.com>
15883
15884         PR gdb/22670
15885         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15886         minsym's language is language_auto or language_cplus, pass down
15887         language_ada instead.
15888         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15889
15890 2018-01-10  Pedro Alves  <palves@redhat.com>
15891
15892         PR gdb/22670
15893         * minsyms.c (linkage_name_str): New function.
15894         (iterate_over_minimal_symbols): Use it.
15895
15896 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15897
15898         * NEWS: Document that 'info proc' now works on FreeBSD.
15899
15900 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15901
15902         * configure.ac: Check for kinfo_getfile in libutil.
15903         * configure: Regenerate.
15904         * config.in: Regenerate.
15905         * fbsd-nat.c: Include "fbsd-tdep.h".
15906         (fbsd_fetch_cmdline): New.
15907         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15908         rather than calling error.
15909         (fbsd_info_proc): New.
15910         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15911         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15912         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15913
15914 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15915
15916         * fbsd-nat.c (struct free_deleter): Remove.
15917         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15918
15919 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15920
15921         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15922         NULL for an empty pathname.
15923
15924 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15925
15926         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15927         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15928         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15929         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15930         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15931         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15932         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15933         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15934         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15935         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15936         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15937         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15938         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15939         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15940         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15941
15942 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15943
15944         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15945         (gnu_xfer_auxv): New function.
15946         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15947         TARGET_OBJECT_AUXV.
15948
15949 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15950             Simon Marchi  <simon.marchi@ericsson.com>
15951
15952         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15953         common/selftest.c.
15954         (COMMON_OBS): Remove selftest.o.
15955         * configure.ac: Append selftest-arch.c and common/selftest.c to
15956         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15957         * configure: Re-generated.
15958         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15959         GDB_SELF_TEST.
15960         (maintenance_info_selftests): Likewise.
15961
15962 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15963
15964         * ada-valprint.c (val_print_packed_array_elements): Use
15965         proper number of elements when printing an array indexed
15966         by an enumeration type.
15967
15968 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15969
15970         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15971         (dw2_get_file_names_reader): Adjust.
15972         (lookup_dwo_signatured_type): Adjust.
15973         (lookup_dwp_signatured_type): Adjust.
15974         (lookup_signatured_type): Adjust.
15975         (create_type_unit_group): Adjust.
15976         (get_type_unit_group): Adjust.
15977         (process_psymtab_comp_unit_reader): Adjust.
15978         (build_type_psymtabs_reader): Adjust.
15979         (scan_partial_symbols): Adjust.
15980         (add_partial_symbol): Adjust.
15981         (add_partial_subprogram): Adjust.
15982         (peek_die_abbrev): Adjust.
15983         (fixup_go_packaging): Adjust.
15984         (process_imported_unit_die): Adjust.
15985         (dwarf2_compute_name): Adjust.
15986         (dwarf2_physname): Adjust.
15987         (read_import_statement): Adjust.
15988         (handle_DW_AT_stmt_list): Adjust.
15989         (read_file_scope): Adjust.
15990         (read_func_scope): Adjust.
15991         (read_lexical_block_scope): Adjust.
15992         (read_call_site_scope): Adjust.
15993         (read_variable): Adjust.
15994         (dwarf2_rnglists_process): Adjust.
15995         (dwarf2_ranges_process): Adjust.
15996         (dwarf2_ranges_read): Adjust.
15997         (dwarf2_get_pc_bounds): Adjust.
15998         (dwarf2_record_block_ranges): Adjust.
15999         (dwarf2_add_field): Adjust.
16000         (dwarf2_add_member_fn): Adjust.
16001         (read_structure_type): Adjust.
16002         (process_structure_scope): Adjust.
16003         (read_enumeration_type): Adjust.
16004         (read_array_type): Adjust.
16005         (mark_common_block_symbol_computed): Adjust.
16006         (read_common_block): Adjust.
16007         (read_namespace_type): Adjust.
16008         (read_namespace): Adjust.
16009         (read_module_type): Adjust.
16010         (read_tag_pointer_type): Adjust.
16011         (read_tag_ptr_to_member_type): Adjust.
16012         (read_tag_string_type): Adjust.
16013         (read_subroutine_type): Adjust.
16014         (read_typedef): Adjust.
16015         (read_base_type): Adjust.
16016         (attr_to_dynamic_prop): Adjust.
16017         (read_subrange_type): Adjust.
16018         (read_unspecified_type): Adjust.
16019         (dwarf2_read_abbrevs): Adjust.
16020         (load_partial_dies): Adjust.
16021         (read_partial_die): Adjust.
16022         (find_partial_die): Adjust.
16023         (guess_partial_die_structure_name): Adjust.
16024         (fixup_partial_die): Adjust.
16025         (read_attribute_value): Adjust.
16026         (read_addr_index): Adjust.
16027         (read_addr_index_from_leb128): Adjust.
16028         (read_str_index): Adjust.
16029         (dwarf2_string_attr): Adjust.
16030         (get_debug_line_section): Adjust.
16031         (dwarf_decode_line_header): Adjust.
16032         (lnp_state_machine::check_line_address): Adjust.
16033         (dwarf_decode_lines_1): Adjust.
16034         (dwarf_decode_lines): Adjust.
16035         (dwarf2_start_symtab): Adjust.
16036         (var_decode_location): Adjust.
16037         (new_symbol_full): Adjust.
16038         (dwarf2_const_value_data): Adjust.
16039         (dwarf2_const_value_attr): Adjust.
16040         (dwarf2_const_value): Adjust.
16041         (die_type): Adjust.
16042         (die_containing_type): Adjust.
16043         (build_error_marker_type): Adjust.
16044         (lookup_die_type): Adjust.
16045         (guess_full_die_structure_name): Adjust.
16046         (anonymous_struct_prefix): Adjust.
16047         (determine_prefix): Adjust.
16048         (dwarf2_name): Adjust.
16049         (follow_die_ref_or_sig): Adjust.
16050         (follow_die_offset): Adjust.
16051         (follow_die_ref): Adjust.
16052         (follow_die_sig_1): Adjust.
16053         (follow_die_sig): Adjust.
16054         (get_signatured_type): Adjust.
16055         (get_DW_AT_signature_type): Adjust.
16056         (decode_locdesc): Adjust.
16057         (dwarf_decode_macros): Adjust.
16058         (cu_debug_loc_section): Adjust.
16059         (fill_in_loclist_baton): Adjust.
16060         (dwarf2_symbol_mark_computed): Adjust.
16061         (init_one_comp_unit): Don't assign
16062         dwarf2_cu::dwarf2_per_objfile.
16063         (set_die_type): Adjust.
16064
16065 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16066
16067         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16068         <dwarf2_per_objfile>: New field.
16069         (dwarf2_per_objfile): Remove global.
16070         (get_dwarf2_per_objfile): New function.
16071         (set_dwarf2_per_objfile): New function.
16072         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16073         dwarf2_per_objfile.
16074         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16075         (read_abbrev_offset): Likewise.
16076         (read_indirect_string): Likewise.
16077         (read_indirect_line_string): Likewise.
16078         (read_indirect_string_at_offset): Likewise.
16079         (read_indirect_string_from_dwz): Likewise.
16080         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16081         dwarf2_per_objfile.
16082         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16083         (create_all_comp_units): Change objfile parameter to
16084         dwarf2_per_objfile.
16085         (create_all_type_units): Likewise.
16086         (process_queue): Add dwarf2_per_objfile parameter.
16087         (read_and_check_comp_unit_head): Likewise.
16088         (lookup_dwo_unit_in_dwp): Likewise.
16089         (get_dwp_file): Likewise.
16090         (process_cu_includes): Likewise.
16091         (struct free_dwo_file_cleanup_data): New struct.
16092         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16093         set_dwarf2_per_objfile.
16094         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16095         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16096         context, adjust calls.
16097         (dw2_instantiate_symtab): Likewise.
16098         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16099         (dw2_get_cu): Likewise.
16100         (create_cu_from_index_list): Change objfile parameter to
16101         dwarf2_per_objfile.
16102         (create_cus_from_index_list): Get dwarf2_per_objfile from
16103         context, adjust calls.
16104         (create_cus_from_index): Likewise.
16105         (create_signatured_type_table_from_index): Change objfile
16106         parameter to dwarf2_per_objfile.
16107         (create_signatured_type_table_from_debug_names): Change objfile
16108         parameter to dwarf2_per_objfile.
16109         (create_addrmap_from_index): Likewise.
16110         (create_addrmap_from_aranges): Likewise.
16111         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16112         (dw2_setup): Remove.
16113         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16114         context.
16115         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16116         get_dwarf2_per_objfile.
16117         (dw2_forget_cached_source_info): Likewise.
16118         (dw2_map_symtabs_matching_filename): Likewise.
16119         (struct dw2_symtab_iterator) <index>: Remove.
16120         <dwarf2_per_objfile>: New field.
16121         (dw2_symtab_iter_init): Replace index parameter with
16122         dwarf2_per_objfile.
16123         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16124         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16125         (dw2_print_stats): Likewise.
16126         (dw2_dump): Likewise.
16127         (dw2_expand_symtabs_for_function): Likewise.
16128         (dw2_expand_all_symtabs): Likewise.
16129         (dw2_expand_symtabs_with_fullname): Likewise.
16130         (dw2_expand_marked_cus): Replace index and objfile parameters
16131         with dwarf2_per_objfile.
16132         (dw_expand_symtabs_matching_file_matcher): Add
16133         dwarf2_per_objfile parameter and adjust calls.
16134         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16135         adjust calls.
16136         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16137         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16138         adjust calls.
16139         (create_cus_from_debug_names_list): Replace objfile parameter
16140         with dwarf2_per_objfile and adjust calls.
16141         (create_cus_from_debug_names): Likewise.
16142         (dwarf2_read_debug_names): Likewise.
16143         (mapped_debug_names::namei_to_name): Adjust call.
16144         (dw2_debug_names_iterator::next): Likewise.
16145         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16146         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16147         (dw2_debug_names_dump): Likewise.
16148         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16149         (dw2_debug_names_expand_symtabs_matching): Likewise.
16150         (dwarf2_initialize_objfile): Likewise.
16151         (dwarf2_build_psymtabs): Likewise.
16152         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16153         this_cu.
16154         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16155         (read_and_check_comp_unit_head): Likewise.
16156         (read_abbrev_offset): Likewise.
16157         (create_debug_type_hash_table): Likewise.
16158         (create_debug_types_hash_table): Likewise.
16159         (create_all_type_units): Replace objfile parameter with
16160         dwarf2_per_objfile.
16161         (add_type_unit): Add dwarf2_per_objfile parameter.
16162         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16163         with dwarf2_per_objfile.
16164         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16165         (lookup_dwp_signatured_type): Likewise.
16166         (lookup_signatured_type): Likewise.
16167         (read_cutu_die_from_dwo): Likewise.
16168         (init_tu_and_read_dwo_dies): Likewise.
16169         (init_cutu_and_read_dies): Likewise.
16170         (init_cutu_and_read_dies_no_follow): Likewise.
16171         (allocate_type_unit_groups_table): Add objfile parameter.
16172         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16173         (get_type_unit_group): Likewise.
16174         (process_psymtab_comp_unit): Update call.
16175         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16176         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16177         (print_tu_stats): Likewise.
16178         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16179         in void* parameter.
16180         (build_type_psymtabs): Change objfile parameter to
16181         dwarf2_per_objfile.
16182         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16183         passed in void* parameter.
16184         (process_skeletonless_type_units): Change objfile parameter to
16185         dwarf2_per_objfile.
16186         (set_partial_user): Likewise.
16187         (dwarf2_build_psymtabs_hard): Likewise.
16188         (read_comp_units_from_section): Likewise.
16189         (create_all_comp_units): Likewise.
16190         (scan_partial_symbols): Update calls.
16191         (add_partial_symbol): Likewise.
16192         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16193         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16194         (process_queue): Add dwarf2_per_objfile parameter.
16195         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16196         (compute_compunit_symtab_includes): Likewise.
16197         (process_cu_includes): Add dwarf2_per_objfile parameter.
16198         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16199         (process_full_type_unit): Likewise.
16200         (process_imported_unit_die): Update call.
16201         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16202         (read_file_scope): Likewise.
16203         (allocate_dwo_file_hash_table): Add objfile parameter.
16204         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16205         (create_cus_hash_table): Likewise.
16206         (create_dwp_hash_table): Likewise.
16207         (create_dwo_unit_in_dwp_v1): Likewise.
16208         (create_dwp_v2_section): Likewise.
16209         (create_dwo_unit_in_dwp_v2): Likewise.
16210         (lookup_dwo_unit_in_dwp): Likewise.
16211         (try_open_dwop_file): Likewise.
16212         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16213         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16214         cleanup to include a reference to dwarf2_per_objfile.
16215         (open_dwp_file): Add dwarf2_per_objfile parameter.
16216         (open_and_init_dwp_file): Likewise.
16217         (get_dwp_file): Likewise.
16218         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16219         (queue_and_load_all_dwo_tus): Update call.
16220         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16221         data.
16222         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16223         (dwarf2_ranges_process): Likewise.
16224         (dwarf2_get_pc_bounds): Likewise.
16225         (mark_common_block_symbol_computed): Likewise.
16226         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16227         (dwarf2_read_abbrevs): Update call.
16228         (read_partial_die): Use dwarf2_per_objfile from cu.
16229         (find_partial_die): Likewise.
16230         (fixup_partial_die): Likewise.
16231         (read_attribute_value): Likewise.
16232         (read_indirect_string_at_offset_from): Add objfile parameter.
16233         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16234         parameter.
16235         (read_indirect_string_from_dwz): Add objfile parameter.
16236         (read_indirect_string): Add objfile parameter.
16237         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16238         (read_addr_index): Use dwarf2_per_objfile from cu.
16239         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16240         call dw2_setup.
16241         (read_str_index): Use dwarf2_per_objfile from cu.
16242         (get_debug_line_section): Likewise.
16243         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16244         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16245         (new_symbol_full): Use dwarf2_per_objfile from cu.
16246         (build_error_marker_type): Likewise.
16247         (lookup_die_type): Likewise.
16248         (determine_prefix): Likewise.
16249         (follow_die_offset): Likewise.
16250         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16251         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16252         (dwarf2_fetch_die_type_sect_off): Likewise.
16253         (dwarf2_get_die_type): Likewise.
16254         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16255         (get_signatured_type): Likewise.
16256         (get_DW_AT_signature_type): Likewise.
16257         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16258         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16259         (cu_debug_loc_section): Likewise.
16260         (fill_in_loclist_baton): Likewise.
16261         (dwarf2_symbol_mark_computed): Likewise.
16262         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16263         dwarf2_per_objfile.
16264         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16265         parameter.
16266         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16267         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16268         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16269         (set_die_type): Use dwarf2_free_objfile from cu.
16270         (get_die_type_at_offset): Likewise.
16271         (dwarf2_per_objfile_free): Don't assign global variable.
16272         (debug_names) <constructor>: Add dwarf2_per_objfile
16273         parameter, update m_debugstrlookup construction.
16274         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16275         parameter.
16276         <m_dwarf2_per_objfile>: New field.
16277         <lookup>: Use m_dwarf2_per_objfile.
16278         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16279         (psyms_seen_size): Likewise.
16280         (write_gdbindex): Replace objfile parameter with
16281         dwarf2_per_objfile.
16282         (write_debug_names): Likewise.
16283         (write_psymtabs_to_index): Likewise.
16284         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16285         calls.
16286
16287 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16288
16289         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16290         <dwarf2_per_objfile>: New field.
16291         (struct dwarf2_per_cu_data) <objfile>: Remove.
16292         <dwarf2_per_objfile>: New field.
16293         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16294         of objfile.
16295         (create_signatured_type_table_from_index): Likewise.
16296         (create_debug_type_hash_table): Likewise.
16297         (fill_in_sig_entry_from_dwo_entry): Likewise.
16298         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16299         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16300         objfile.
16301         (create_partial_symtab): Access objfile through
16302         dwarf2_per_objfile.
16303         (process_psymtab_comp_unit_reader): Likewise.
16304         (read_comp_units_from_section): Likewise.
16305         (scan_partial_symbols): Likewise.
16306         (add_partial_symbol): Likewise.
16307         (add_partial_subprogram): Likewise.
16308         (peek_die_abbrev): Likewise.
16309         (fixup_go_packaging): Likewise.
16310         (process_full_comp_unit): Likewise.
16311         (process_full_type_unit): Likewise.
16312         (process_imported_unit_die): Likewise.
16313         (dwarf2_compute_name): Likewise.
16314         (dwarf2_physname): Likewise.
16315         (read_import_statement): Likewise.
16316         (create_cus_hash_table): Assign dwarf2_physname instead of
16317         objfile.
16318         (read_func_scope): Access objfile through dwarf2_per_objfile.
16319         (read_lexical_block_scope): Likewise.
16320         (read_call_site_scope): Likewise.
16321         (read_variable): Likewise.
16322         (dwarf2_rnglists_process): Likewise.
16323         (dwarf2_ranges_process): Likewise.
16324         (dwarf2_ranges_read): Likewise.
16325         (dwarf2_record_block_ranges): Likewise.
16326         (dwarf2_add_field): Likewise.
16327         (dwarf2_add_member_fn): Likewise.
16328         (read_structure_type): Likewise.
16329         (process_structure_scope): Likewise.
16330         (read_enumeration_type): Likewise.
16331         (read_array_type): Likewise.
16332         (read_common_block): Likewise.
16333         (read_namespace_type): Likewise.
16334         (read_namespace): Likewise.
16335         (read_module_type): Likewise.
16336         (read_tag_pointer_type): Likewise.
16337         (read_tag_ptr_to_member_type): Likewise.
16338         (read_tag_string_type): Likewise.
16339         (read_subroutine_type): Likewise.
16340         (read_typedef): Likewise.
16341         (read_base_type): Likewise.
16342         (attr_to_dynamic_prop): Likewise.
16343         (read_subrange_type): Likewise.
16344         (read_unspecified_type): Likewise.
16345         (load_partial_dies): Likewise.
16346         (read_partial_die): Likewise.
16347         (find_partial_die): Likewise.
16348         (guess_partial_die_structure_name): Likewise.
16349         (fixup_partial_die): Likewise.
16350         (read_attribute_value): Likewise.
16351         (read_addr_index_from_leb128): Likewise.
16352         (dwarf2_read_addr_index): Likewise.
16353         (dwarf2_string_attr): Likewise.
16354         (lnp_state_machine::check_line_address): Likewise.
16355         (dwarf_decode_lines_1): Likewise.
16356         (dwarf_decode_lines): Likewise.
16357         (dwarf2_start_symtab): Likewise.
16358         (var_decode_location): Likewise.
16359         (new_symbol_full): Likewise.
16360         (dwarf2_const_value_data): Likewise.
16361         (dwarf2_const_value_attr): Likewise.
16362         (dwarf2_const_value): Likewise.
16363         (die_type): Likewise.
16364         (die_containing_type): Likewise.
16365         (lookup_die_type): Likewise.
16366         (guess_full_die_structure_name): Likewise.
16367         (anonymous_struct_prefix): Likewise.
16368         (dwarf2_name): Likewise.
16369         (follow_die_ref_or_sig): Likewise.
16370         (follow_die_offset): Likewise.
16371         (follow_die_ref): Likewise.
16372         (dwarf2_fetch_die_loc_sect_off): Likewise.
16373         (dwarf2_fetch_constant_bytes): Likewise.
16374         (dwarf2_fetch_die_type_sect_off): Likewise.
16375         (dwarf2_get_die_type): Likewise.
16376         (follow_die_sig): Likewise.
16377         (decode_locdesc): Likewise.
16378         (dwarf2_per_cu_objfile): Likewise.
16379         (dwarf2_per_cu_text_offset): Likewise.
16380         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16381         objfile.
16382         (set_die_type): Access objfile through
16383         dwarf2_per_objfile.
16384
16385 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16386
16387         * valprint.c (converted_character_d): Remove typedef.
16388         (DEF_VEC_O (converted_character_d)): Remove.
16389         (count_next_character): Use std::vector.
16390         (print_converted_chars_to_obstack): Likewise.
16391         (generic_printstr): Likewise.
16392
16393 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16394
16395         * xml-support.h (struct gdb_xml_value): Add constructor.
16396         <value>: Change type to unique_xmalloc_ptr.
16397         (gdb_xml_value_s): Remove typedef.
16398         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16399         (gdb_xml_element_start_handler): Change parameter type to
16400         std::vector.
16401         (xml_find_attribute): Likewise.
16402         * xml-support.c (xml_find_attribute): Change parameter type to
16403         std::vector and adjust.
16404         (gdb_xml_values_cleanup): Remove.
16405         (gdb_xml_parser::start_element): Adjust to std::vector.
16406         (xinclude_start_include): Change paraeter type to std::vector
16407         and adjust.
16408         * btrace.c (check_xml_btrace_version): Likewise.
16409         (parse_xml_btrace_block): Likewise.
16410         (parse_xml_btrace_pt_config_cpu): Likewise.
16411         (parse_xml_btrace_pt): Likewise.
16412         (parse_xml_btrace_conf_bts): Likewise.
16413         (parse_xml_btrace_conf_pt): Likewise.
16414         * memory-map.c (memory_map_start_memory): Likewise.
16415         (memory_map_start_property): Likewise.
16416         * osdata.c (osdata_start_osdata): Likewise.
16417         (osdata_start_item): Likewise.
16418         (osdata_start_column): Likewise.
16419         * remote.c (start_thread): Likewise.
16420         * solib-aix.c (library_list_start_library): Likewise.
16421         (library_list_start_list): Likewise.
16422         * solib-svr4.c (library_list_start_library): Likewise.
16423         (svr4_library_list_start_list): Likewise.
16424         * solib-target.c (library_list_start_segment): Likewise.
16425         (library_list_start_section): Likewise.
16426         (library_list_start_library): Likewise.
16427         (library_list_start_list): Likewise.
16428         * tracepoint.c (traceframe_info_start_memory): Likewise.
16429         (traceframe_info_start_tvar): Likewise.
16430         * xml-syscall.c (syscall_start_syscall): Likewise.
16431         * xml-tdesc.c (tdesc_start_target): Likewise.
16432         (tdesc_start_feature): Likewise.
16433         (tdesc_start_reg): Likewise.
16434         (tdesc_start_union): Likewise.
16435         (tdesc_start_struct): Likewise.
16436         (tdesc_start_flags): Likewise.
16437         (tdesc_start_enum): Likewise.
16438         (tdesc_start_field): Likewise.
16439         (tdesc_start_enum_value): Likewise.
16440         (tdesc_start_vector): Likewise.
16441
16442 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16443
16444         * extension.h (struct xmethod_worker) <clone>: Remove.
16445         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16446         Remove.
16447         (python_xmethod_worker::clone): Remove.
16448         * valops.c (find_overload_match): Use std::move instead of
16449         clone.
16450
16451 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16452
16453         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16454         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16455         <free_xmethod_worker_data>: Remove.
16456         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16457         <get_xmethod_arg_types>: Remove.
16458         <get_xmethod_result_type>: Remove.
16459         <invoke_xmethod>: Remove.
16460         * extension.c (new_xmethod_worker): Remove.
16461         (clone_xmethod_worker): Remove.
16462         (get_matching_xmethod_workers): Return void, pass std::vector by
16463         pointer.
16464         (get_xmethod_arg_types): Rename to...
16465         (xmethod_worker::get_arg_types): ... this, and adjust.
16466         (get_xmethod_result_type): Rename to...
16467         (xmethod_worker::get_result_type): ... this, and adjust.
16468         (invoke_xmethod): Remove.
16469         (free_xmethod_worker): Remove.
16470         (free_xmethod_worker_vec): Remove.
16471         * extension.h (enum ext_lang_rc): Move here from
16472         extension-priv.h.
16473         (struct xmethod_worker): Add constructor and destructor.
16474         <data>: Remove.
16475         <value>: Remove.
16476         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16477         virtual pure methods.
16478         <get_arg_types, get_result_type>: New methods.
16479         (xmethod_worker_ptr): Remove typedef.
16480         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16481         (xmethod_worker_vec): Remove typedef.
16482         (xmethod_worker_up): New typedef.
16483         (invoke_xmethod): Remove.
16484         (clone_xmethod_worker): Remove.
16485         (free_xmethod_worker): Remove.
16486         (free_xmethod_worker_vec): Remove.
16487         (get_xmethod_arg_types): Remove.
16488         (get_xmethod_result_type): Remove.
16489         * valops.c (find_method_list): Use std::vector, don't use
16490         intermediate vector.
16491         (value_find_oload_method_list): Use std::vector.
16492         (find_overload_match): Use std::vector.
16493         (find_oload_champ): Use std::vector.
16494         * value.c (value_free): Use operator delete.
16495         (value_of_xmethod): Rename to...
16496         (value_from_xmethod): ... this.  Don't assign
16497         xmethod_worker::value, take rvalue-reference.
16498         (result_type_of_xmethod): Adjust.
16499         (call_xmethod): Adjust.
16500         * value.h: Include extension.h.
16501         (struct xmethod_worker): Don't forward-declare.
16502         (value_of_xmethod): Rename to...
16503         (value_from_xmethod): ... this, take rvalue-reference.
16504         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16505         (struct python_xmethod_worker): ... this, add constructor and
16506         destructor.
16507         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16508         (gdbpy_free_xmethod_worker_data): Rename to...
16509         (python_xmethod_worker::~python_xmethod_worker): ... this and
16510         adjust.
16511         (gdbpy_clone_xmethod_worker_data): Rename to...
16512         (python_xmethod_worker::clone): ... this and adjust.
16513         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16514         temporary vector.
16515         (gdbpy_get_xmethod_arg_types): Rename to...
16516         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16517         (gdbpy_get_xmethod_result_type): Rename to...
16518         (python_xmethod_worker::do_get_result_type): ... this and
16519         adjust.
16520         (gdbpy_invoke_xmethod): Rename to...
16521         (python_xmethod_worker::invoke): ... this and adjust.
16522         (new_python_xmethod_worker): Rename to...
16523         (python_xmethod_worker::python_xmethod_worker): ... this and
16524         adjust.
16525         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16526         Remove.
16527         (gdbpy_free_xmethod_worker_data): Remove.
16528         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16529         (gdbpy_get_xmethod_arg_types): Remove.
16530         (gdbpy_get_xmethod_result_type): Remove.
16531         (gdbpy_invoke_xmethod): Remove.
16532         * python/python.c (python_extension_ops): Remove obsolete
16533         callbacks.
16534
16535 2018-01-05  Pedro Alves  <palves@redhat.com>
16536
16537         PR gdb/18653
16538         * common/signals-state-save-restore.c
16539         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16540         find a custom handler preinstalled, instead of internal erroring.
16541         But only warn if !quiet.
16542         * common/signals-state-save-restore.h
16543         (save_original_signals_state): New parameter 'quiet'.
16544         * main.c (captured_main_1): Move save_original_signals_state call
16545         after option handling, and pass QUIET.
16546
16547 2018-01-05  Pedro Alves  <palves@redhat.com>
16548
16549         * spu-tdep.c (spu_catch_start): Pass
16550         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16551
16552 2018-01-05  Pedro Alves  <palves@redhat.com>
16553
16554         PR gdb/22670
16555         * ada-lang.c (literal_symbol_name_matcher): New function.
16556         (ada_get_symbol_name_matcher): Use it for
16557         symbol_name_match_type::SEARCH_NAME.
16558         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16559         it down instead of assuming symbol_name_match_type::FULL.
16560         * block.h (block_lookup_symbol): New parameter 'match_type'.
16561         * c-valprint.c (print_unpacked_pointer): Use
16562         lookup_symbol_search_name instead of lookup_symbol.
16563         * compile/compile-object-load.c (get_out_value_type): Pass down
16564         symbol_name_match_type::SEARCH_NAME.
16565         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16566         symbol_name_match_type::FULL.
16567         * cp-support.c (cp_get_symbol_name_matcher): Handle
16568         symbol_name_match_type::SEARCH_NAME.
16569         * infrun.c (insert_exception_resume_breakpoint): Use
16570         lookup_symbol_search_name.
16571         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16572         * psymtab.c (maintenance_check_psymtabs): Use
16573         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16574         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16575         SYMBOL_SEARCH_NAME.
16576         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16577         if symbol_name_match_type::SEARCH_NAME.
16578         (lookup_symbol_in_language): Pass down
16579         symbol_name_match_type::FULL.
16580         (lookup_symbol_search_name): New.
16581         (lookup_language_this): Pass down
16582         symbol_name_match_type::SEARCH_NAME.
16583         (lookup_symbol_aux, lookup_local_symbol): New parameter
16584         'match_type'.  Pass it down.
16585         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16586         (lookup_symbol_search_name): New declaration.
16587         (lookup_symbol_in_block): New 'match_type' parameter.
16588
16589 2018-01-05  Pedro Alves  <palves@redhat.com>
16590
16591         PR gdb/22670
16592         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16593         ada_lookup_symbol.
16594         (ada_lookup_symbol): Reimplement in terms of
16595         ada_lookup_symbol_list, bits factored out from
16596         ada_lookup_encoded_symbol.
16597
16598 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16599
16600         * ada-exp.y (write_object_renaming): When subscripting an array
16601         using a symbol as the index, pass the block in call to
16602         ada_lookup_encoded_symbol when looking that symbol up.
16603
16604 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16605
16606         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16607         TYPE_INDEX_TYPE.
16608
16609 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16610
16611         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16612         the case where VALUE_LVAL (val0) is not lval_memory.
16613
16614 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16615
16616         * ada-valprint.c (print_optional_low_bound): Handle
16617         character-indexed array printing like boolean-indexed array
16618         printing.
16619
16620 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16621
16622         * NEWS: Create a new section for the next release branch.
16623         Rename the section of the current branch, now that it has
16624         been cut.
16625
16626 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16627
16628         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16629         * version.in: Bump version to 8.1.50.DATE-git.
16630
16631 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16632
16633         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16634         Add field.
16635         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16636         Add field.
16637         (default_exception_support_info) <catch_handlers_sym>: Add field.
16638         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16639         (ada_exception_name_addr_1): Add "catch handlers" handling.
16640         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16641         Update all callers.
16642         (create_excep_cond_exprs) <ex>: Add parameter.
16643         (re_set_exception): Update create_excep_cond_exprs call.
16644         (print_it_exception, print_one_exception, print_mention_exception)
16645         (print_recreate_exception): Add "catch handler" handling.
16646         (allocate_location_catch_handlers, re_set_catch_handlers)
16647         (check_status_catch_handlers, print_it_catch_handlers)
16648         (print_one_catch_handlers, print_mention_catch_handlers)
16649         (print_recreate_catch_handlers): New function.
16650         (catch_handlers_breakpoint_ops): New variable.
16651         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16652         Add parameter.  Add "catch handler" handling.
16653         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16654         Add "catch handler" handling.
16655         (ada_exception_catchpoint_cond_string): Add "catch handler"
16656         handling.
16657         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16658         call.
16659         (catch_ada_handlers_command): New function.
16660         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16661         operations structure.
16662         (_initialize_ada_language): Add "catch handlers" command entry.
16663         * NEWS: Document "catch handlers" feature.
16664
16665 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16666
16667         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16668         account when creating the array type of the slice.
16669         (ada_value_slice): Likewise.
16670
16671 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16672
16673         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16674         New enum value.
16675         (create_array_type_with_stride): Add byte_stride_prop parameter.
16676         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16677         New parameter.  Update all callers in this file.
16678         (array_type_has_dynamic_stride): New function.
16679         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16680         of arrays with dynamic byte strides.
16681         * dwarf2read.c (read_array_type): Add support for dynamic
16682         DW_AT_byte_stride attributes.
16683
16684 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16685
16686         * dwarf2read.c (read_unspecified_type): Treat
16687         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16688
16689 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16690
16691         Update copyright year range in all GDB files.
16692
16693 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16694
16695         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16696         and gdb/testsuite/gdb.base/step-line.c.
16697
16698 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16699
16700         * copyright.py (main): Dump the contents of
16701         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16702         even if BY_HAND is empty.
16703
16704 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16705
16706         * top.c (print_gdb_version): Update Copyright year in version
16707         message.
16708
16709 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16710
16711         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16712
16713 For older changes see ChangeLog-2017.
16714 \f
16715 Local Variables:
16716 mode: change-log
16717 left-margin: 8
16718 fill-column: 74
16719 version-control: never
16720 coding: utf-8
16721 End: