gdb/riscv: Handle passing variadic floating point arguments
[external/binutils.git] / gdb / ChangeLog
1 2018-12-12  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * riscv-tdep.c (riscv_call_arg_scalar_float): Unnamed (variadic)
4         arguments are passed in integer registers.
5         (riscv_call_arg_complex_float): Likewise.
6
7 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8
9         * nat/linux-osdata.c (common_getter): New function.
10         (struct osdata_type): Change getter to take_snapshot.
11         Add LONGEST len_avail and struct buffer buffer.
12         Change all elements in the initializer.
13         Add an element for the list of types.
14         (linux_xfer_osdata_info_os_types): New function.
15         (linux_common_xfer_osdata): Use common_getter for the list of types.
16         Replace getter call by common_getter.
17         (linux_xfer_osdata_cpus): Remove args READBUF, OFFSET, LEN.
18         Add arg BUFFER.  Only keep the code that adds data in BUFFER.
19         (linux_xfer_osdata_fds): Likewise.
20         (linux_xfer_osdata_modules): Likewise.
21         (linux_xfer_osdata_msg): Likewise.
22         (linux_xfer_osdata_processes): Likewise.
23         (linux_xfer_osdata_processgroups): Likewise.
24         (linux_xfer_osdata_sem): Likewise.
25         (linux_xfer_osdata_shm): Likewise.
26         (linux_xfer_osdata_isockets): Likewise.
27         (linux_xfer_osdata_threads): Likewise.
28
29 2018-12-11  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
30
31         * nat/linux-osdata.c: Removed various trailing spaces.
32
33 2018-12-10  Andrew Burgess  <andrew.burgess@embecosm.com>
34
35         * riscv-tdep.c (riscv_register_name): Fix ARI warning by removing
36         leading whitespace before #include line.
37
38 2018-12-08  Simon Marchi  <simon.marchi@ericsson.com>
39             Дилян Палаузов  <dilyan.palauzov@aegee.org>
40
41         PR gdb/23950
42         * configure.ac: Search for tgetent in libtinfow.
43         * configure: Re-generate.
44
45 2018-12-08  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
46
47         * linux-thread-db.c (struct thread_db_info): Add td_ta_delete_p.
48         (thread_db_err_str): Forward declare.
49         (delete_thread_db_info): Call td_ta_delete_p if available.
50         (try_thread_db_load_1): Acquire td_ta_delete address.
51         * nat/gdb_thread_db.h (td_ta_delete_ftype): Declare.
52
53 2018-12-08  Pedro Alves  <palves@redhat.com>
54
55         * source.c (forward_search_command): Rename to ...
56         (search_command_helper): ... this.  Add 'forward' parameter.
57         Tweak to use a gdb::def_vector<char> instead of a xrealloc'ed
58         buffer.  Handle backward searches too.
59         (forward_search_command, reverse_search_command): Reimplement by
60         calling search_command_helper.
61
62 2018-12-07  Andrew Burgess  <andrew.burgess@embecosm.com>
63
64         * .dir-locals.el: Copy most of the settings from c-mode over to
65         c++-mode.
66
67 2018-12-08  Stafford Horne  <shorne@gmail.com>
68
69         * Makefile.in (ALL_TARGET_OBS): Add or1k-linux-tdep.o.
70         * configure.tgt: Add or1k*-*-linux*.
71         * or1k-linux-tdep.c: New file.
72         * or1k-tdep.c (or1k_gdbarch_init): Call gdbarch_init_osabi.
73
74 2018-12-07  Pedro Alves  <palves@redhat.com>
75
76         * dwarf2read.c (get_gdb_index_contents_from_section): Use
77         gdb::make_array_view.
78
79 2018-12-05  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
80
81         * language.c (_initialize_language): Fix leak by assigning
82         a static string to language.  Same for range and case_sensitive,
83         even if no leak is detected for these variables.
84
85 2018-12-05  John Baldwin  <jhb@FreeBSD.org>
86
87         * configure: Re-generate.
88         * configure.ac: Use separate sed expressions to escape variables
89         in auto-load directories.
90
91 2018-12-05  Andrew Burgess  <andrew.burgess@embecosm.com>
92
93         * riscv-tdep.c (riscv_features_from_gdbarch_info): New function.
94         (riscv_find_default_target_description): Use new function to
95         extract feature from gdbarch_info.
96         (riscv_gdbarch_init): Add error checks for xlen and flen between
97         target description and bfd headers.  Be smarter about when we
98         think the hardware floating point abi should be used.
99
100 2018-12-05  Alan Hayward  <alan.hayward@arm.com>
101
102         * nat/aarch64-linux-hw-point.c
103         (aarch64_linux_any_set_debug_regs_state): New function.
104         * nat/aarch64-linux-hw-point.h
105         (aarch64_linux_any_set_debug_regs_state): New declaration.
106         * nat/aarch64-linux.c (aarch64_linux_new_thread): Check if any
107         BPs or WPs are set.
108
109 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
110
111         * common/filestuff.c [HAVE_KINFO_GETFILE]: Include headers.
112         (fdwalk) [HAVE_KINFO_GETFILE]: Use kinfo_getfile.
113
114 2018-11-30  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
115             Simon Marchi  <simon.marchi@ericsson.com>
116
117         * linespec.c (symtab_vector_up): Remove.
118         (symtabs_from_filename): Change return type to std::vector.
119         (collect_symtabs_from_filename): Likewise.
120         (create_sals_line_offset): Assign return value of
121         collect_symtabs_from_filename to *ls->file_symtabs.
122         (convert_explicit_location_to_linespec): Remove call to release.
123         (parse_linespec): Likewise.
124         (symtab_collector) <symtab_collector>: Remove initialization of
125         m_symtabs.
126         <release_symtabs>: Change return type to std::vector<symtab *>.
127         <operator ()>: Adjust.
128
129 2018-11-30  John Baldwin  <jhb@FreeBSD.org>
130
131         * fbsd-nat.c [__FreeBSD_version >= 700009] (USE_SIGINFO): Macro
132         defined.
133         (union sigval32, struct siginfo32, fbsd_siginfo_size)
134         (fbsd_convert_siginfo): Make conditional on USE_SIGINFO instead
135         of KERN_PROC_AUXV and PT_LWPINFO.
136         (fbsd_nat_target::xfer_partial): Define method unconditionally.
137         Make TARGET_OBJECT_SIGNAL_INFO conditional on USE_SIGINFO.
138         Make TARGET_OBJECT_AUXV conditional on KERN_PROC_AUXV.
139         Make TARGET_OBJECT_FREEBSD_VMMAP and
140         TARGET_OBJECT_FREEBSD_PS_STRINGS conditional on KERN_PROC_VMMAP
141         and KERN_PROC_PS_STRINGS.
142         * fbsd-nat.h: Include <sys/proc.h>.
143         (fbsd_nat_target::xfer_partial): Declare method unconditionally.
144
145 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
146
147         * riscv-linux-nat.c: Add 'inferior.h' and 'target-descriptions.h'
148         header files.
149         (riscv_linux_nat_target::read_description): New method.
150
151 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
152
153         * arch/riscv.h (riscv_gdbarch_features::hash): New method.
154         * arch/riscv.c (struct riscv_gdbarch_features_hasher): New.
155         (riscv_tdesc_cache): New global.
156         (riscv_create_target_description): Look in the cache before
157         creating a new target description.
158
159 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
160
161         * arch/riscv.h (riscv_gdb_features::operator==): New.
162         (riscv_gdb_features::operator!=): New.
163         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
164         operator.
165
166 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
167
168         * arch/riscv.h (riscv_create_target_description): Make return type
169         const.
170         * arch/riscv.c (riscv_create_target_description): Likewise.
171         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
172
173 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
174             Keith Seitz  <keiths@redhat.com>
175             Tom Tromey  <tom@tromey.com>
176             Sergio Durigan Junior  <sergiodj@redhat.com>
177
178         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
179         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
180         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
181         inside the CU.
182
183 2018-11-30  Pedro Alves  <palves@redhat.com>
184
185         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
186         <stratum>: New override.
187         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
188         <stratum>: New override.
189         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
190         <stratum>: New override.
191         * exec.c (exec_target) <exec_target>: Delete.
192         <stratum>: New override.
193         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
194         stratum method instead of the to_stratum field.
195         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
196         <stratum>: New override.
197         (thread_db_target::thread_db_target): Delete.
198         * make-target-delegates (print_class): Don't print a ctor
199         declaration.  Print a stratum method override declaration.
200         * process-stratum-target.h (process_stratum_target)
201         <process_stratum_target>: Delete.
202         <stratum>: New override.
203         * ravenscar-thread.c (ravenscar_thread_target)
204         <ravenscar_thread_target>: Delete.
205         <stratum>: New override.
206         * record-btrace.c (record_btrace_target)
207         <record_btrace_target>: Delete.
208         <stratum>: New override.
209         * record-full.c (record_full_base_target)
210         <record_full_base_target>: Delete.
211         <stratum>: New override.
212         * record.c (record_disconnect, record_detach)
213         (record_mourn_inferior, record_kill): Adjust to use the stratum
214         method instead of the to_stratum field.
215         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
216         * sol-thread.c (sol_thread_target)
217         <sol_thread_target>: Delete.
218         <stratum>: New override.
219         * spu-multiarch.c (spu_multiarch_target)
220         <spu_multiarch_target>: Delete.
221         <stratum>: New override.
222         * target-delegates.c: Regenerate.
223         * target.c (target_stack::push, target_stack::unpush)
224         (pop_all_targets_above, pop_all_targets_at_and_above)
225         (info_target_command, target_require_runnable)
226         (target_stack::find_beneath): Adjust to use the stratum method
227         instead of the to_stratum field.
228         (dummy_target::dummy_target): Delete.
229         (dummy_target::stratum): New.
230         (debug_target::debug_target): Delete.
231         (debug_target::stratum): New.
232         (maintenance_print_target_stack): Adjust to use the stratum method
233         instead of the to_stratum field.
234         * target.h (struct target_ops) <stratum>: New method.
235         <to_stratum>: Delete.
236         <is_pushed>: Adjust to use the stratum method
237         instead of the to_stratum field.
238
239 2018-11-30  Pedro Alves  <palves@redhat.com>
240
241         * corelow.c (core_target) <has_all_memory, has_execution>: New
242         overrides.
243         * inf-child.c (inf_child_target::has_all_memory)
244         (inf_child_target::has_memory, inf_child_target::has_stack)
245         (inf_child_target::has_registers)
246         (inf_child_target::has_execution): Delete.
247         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
248         has_stack, has_registers, has_execution>: Delete.
249         * process-stratum-target.c
250         (process_stratum_target::has_all_memory)
251         (process_stratum_target::has_memory)
252         (process_stratum_target::has_stack)
253         (process_stratum_target::has_registers)
254         (process_stratum_target::has_execution): New.
255         * process-stratum-target.h (process_stratum_target)
256         <has_all_memory, has_memory, has_stack, has_registers,
257         has_execution>: New method overrides.
258         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
259         has_memory, has_stack, has_registers, has_execution>: Delete.
260         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
261         has_execution>: Delete.
262         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
263         has_registers, has_execution>: Delete.
264         * target.c (default_child_has_all_memory)
265         (default_child_has_memory, default_child_has_stack)
266         (default_child_has_registers, default_child_has_execution):
267         Delete.
268         * target.h (default_child_has_all_memory)
269         (default_child_has_memory, default_child_has_stack)
270         (default_child_has_registers, default_child_has_execution):
271         Delete.
272         * tracefile.h (tracefile_target) <has_execution>: New override.
273
274 2018-11-30  Pedro Alves  <palves@redhat.com>
275
276         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
277         * bsd-kvm.c: Include "process-stratum-target.h".
278         (bsd_kvm_target): Now inherits from process_stratum_target.
279         (bsd_kvm_target::bsd_kvm_target): Default it.
280         * corelow.c: Include "process-stratum-target.h".
281         (core_target): Now inherits from process_stratum_target.
282         (core_target::core_target): Don't set to_stratum here.
283         * inf-child.c (inf_child_target::inf_child_target): Delete.
284         * inf-child.h: Include "process-stratum-target.h".
285         (inf_child_target): Inherit from process_stratum_target.
286         (inf_child_target) <inf_child_target>: Default it.
287         <can_async_p, supports_non_stop, supports_disable_randomization>:
288         Delete overrides.
289         * process-stratum-target.c: New file.
290         * process-stratum-target.h: New file.
291         * remote-sim.c: Include "process-stratum-target.h".
292         (gdbsim_target): Inherit from process_stratum_target.
293         <gdbsim_target>: Default it.
294         * remote.c: Include "process-stratum-target.h".
295         (remote_target): Inherit from process_stratum_target.
296         <remote_target>: Default it.
297         * target.c (default_thread_address_space)
298         (default_thread_architecture): Delete.
299         * target.h (target_ops) <thread_architecture>: Now returns NULL by
300         default.
301         <thread_address_space>: Ditto.
302         * test-target.h: Include "process-stratum-target.h" instead of
303         "target.h".
304         (test_target_ops): Inherit from process_stratum_target.
305         <test_target_ops>: Default it.
306         * tracefile.c (tracefile_target::tracefile_target): Delete.
307         * tracefile.h: Include "process-stratum-target.h".
308         (tracefile_target): Inherit from process_stratum_target.
309         <tracefile_target>: Default it.
310         * target-delegates.c: Regenerate.
311
312 2018-11-30  Pedro Alves  <palves@redhat.com>
313
314         * Makefile.in (COMMON_SFILES): Add test-target.c.
315         * gdbarch-selftests.c: Include "test-target.h".
316         * regcache.c: Include "test-target.h".
317         * target.c (test_target_info, test_target_ops::info): Move to ...
318         * test-target.c: ... this new file.
319         * target.h (test_target_ops): Move to ...
320         * test-target.h: ... this new file.
321
322 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
323
324         * source.c (forward_search_command): Fix leak by using
325         xrealloc even for the first allocation in the loop, as buf
326         is static.
327
328 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
329
330         PR gdb/23093
331         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
332         (fbsd_gdb_signal_to_target): New.
333         (fbsd_init_abi): Install gdbarch "signal_from_target" and
334         "signal_to_target" methods.
335
336 2018-11-29  Tom Tromey  <tom@tromey.com>
337
338         * valarith.c (value_x_unop): Don't set argvec[3].
339
340 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
341
342         PR gdb/23917
343         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
344         semicolon.
345
346 2018-11-26  Pedro Alves  <palves@redhat.com>
347
348         * procfs.c (procfs_notice_thread): Replace uses of
349         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
350         * sol-thread.c (sol_thread_target::wait)
351         (sol_update_thread_list_callback): Likewise.
352
353 2018-11-25  Tom Tromey  <tom@tromey.com>
354
355         * ui-out.c (ui_out::field_fmt): Remove comment.
356         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
357         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
358
359 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
360
361         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
362         leak in open_source_file' has been partially undone by '2179fbc36d23
363         Return scoped_fd from open_source_file'. Re-add the transfer of
364         current s->fullname to the unique_xmalloc_ptr fullname given
365         to find_and_open_source.
366
367 2018-11-23  Pedro Alves  <palves@redhat.com>
368
369         * gdbthread.h (enum thread_state): Move comments here.
370         (is_running, is_stopped, is_exited): Remove declarations.
371
372 2018-11-22  Pedro Alves  <palves@redhat.com>
373
374         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
375         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
376         ALL_NON_EXITED_THREADS with all_non_exited_threads.
377         (print_one_breakpoint_location): Replace ALL_INFERIORS with
378         all_inferiors.
379         * bsd-kvm.c: Include inferior.h.
380         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
381         with all_non_exited_threads.
382         * common/filtered-iterator.h: New.
383         * common/safe-iterator.h: New.
384         * corelow.c (core_target_open): Don't call init_thread_list here.
385         * darwin-nat.c (thread_info_from_private_thread_info): Replace
386         ALL_THREADS with all_threads.
387         * fbsd-nat.c (fbsd_nat_target::resume): Replace
388         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
389         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
390         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
391         * fork-child.c (postfork_hook): Don't call init_thread_list here.
392         * gdbarch-selftests.c (register_to_value_test): Adjust.
393         * gdbthread.h: Don't include "inferior.h" here.
394         (struct inferior): Forward declare.
395         (enum step_over_calls_kind): Moved here from inferior.h.
396         (thread_info::deletable): Definition moved to thread.c.
397         (find_thread_ptid (inferior *, ptid_t)): Declare.
398         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
399         Include "thread-iter.h".
400         (all_threads, all_non_exited_threads, all_threads_safe): New.
401         (any_thread_p): Declare.
402         (thread_list): Delete.
403         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
404         all_non_exited_threads.
405         (proceed_after_attach_callback): Delete.
406         (proceed_after_attach): Take an inferior pointer instead of an
407         integer PID.  Adjust to use range-for.
408         (attach_post_wait): Pass down inferior pointer instead of pid.
409         Use range-for instead of ALL_NON_EXITED_THREADS.
410         (detach_command): Remove init_thread_list call.
411         * inferior-iter.h: New.
412         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
413         (delete_thread_of_inferior): Delete.
414         (delete_inferior, exit_inferior_1): Use range-for with
415         inf->threads_safe() instead of iterate_over_threads.
416         (inferior_appeared): Call init_thread_list here.
417         (discard_all_inferiors): Use all_non_exited_inferiors.
418         (find_inferior_id, find_inferior_pid): Use all_inferiors.
419         (iterate_over_inferiors): Use all_inferiors_safe.
420         (have_inferiors, number_of_live_inferiors): Use
421         all_non_exited_inferiors.
422         (number_of_inferiors): Use all_inferiors and std::distance.
423         (print_inferior): Use all_inferiors.
424         * inferior.h: Include gdbthread.h.
425         (enum step_over_calls_kind): Moved to gdbthread.h.
426         (struct inferior) <thread_list>: New field.
427         <threads, non_exited_threads, threads_safe>: New methods.
428         (ALL_INFERIORS): Delete.
429         Include "inferior-iter.h".
430         (ALL_NON_EXITED_INFERIORS): Delete.
431         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
432         functions.
433         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
434         ALL_NON_EXITED_THREADS with all_non_exited_threads.
435         * infrun.c (follow_exec): Use all_threads_safe.
436         (clear_proceed_status, proceed): Use all_non_exited_threads.
437         (init_wait_for_inferior): Don't clear inline frame state here.
438         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
439         all_threads instead of ALL_NON_EXITED_THREADS.
440         (random_pending_event_thread): Use all_non_exited_threads instead
441         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
442         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
443         instead of ALL_NON_EXITED_THREADS.
444         (handle_no_resumed): Use all_non_exited_threads instead of
445         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
446         ALL_INFERIORS.
447         (restart_threads, switch_back_to_stepped_thread): Use
448         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
449         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
450         all_inferiors.
451         (kill_unfollowed_fork_children): Use inf->non_exited_threads
452         instead of ALL_NON_EXITED_THREADS.
453         * linux-tdep.c (linux_make_corefile_notes): Use
454         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
455         * linux-thread-db.c (thread_db_target::update_thread_list):
456         Replace ALL_INFERIORS with all_inferiors.
457         (thread_db_target::thread_handle_to_thread_info): Use
458         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
459         * mi/mi-interp.c (multiple_inferiors_p): New.
460         (mi_on_resume_1): Simplify using all_non_exited_threads and
461         multiple_inferiors_p.
462         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
463         instead of ALL_NON_EXITED_THREADS.
464         * nto-procfs.c (nto_procfs_target::open): Don't call
465         init_thread_list here.
466         * record-btrace.c (record_btrace_target_open)
467         (record_btrace_target::stop_recording)
468         (record_btrace_target::close)
469         (record_btrace_target::record_is_replaying)
470         (record_btrace_target::resume, record_btrace_target::wait)
471         (record_btrace_target::record_stop_replaying): Use
472         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
473         * record-full.c (record_full_wait_1): Use all_non_exited_threads
474         instead of ALL_NON_EXITED_THREADS.
475         * regcache.c (cooked_read_test): Remove reference to global
476         thread_list.
477         * remote-sim.c (gdbsim_target::create_inferior): Don't call
478         init_thread_list here.
479         * remote.c (remote_target::update_thread_list): Use
480         all_threads_safe instead of ALL_NON_EXITED_THREADS.
481         (remote_target::process_initial_stop_replies): Replace
482         ALL_INFERIORS with all_non_exited_inferiors and use
483         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
484         (remote_target::open_1): Don't call init_thread_list here.
485         (remote_target::append_pending_thread_resumptions)
486         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
487         instead of ALL_NON_EXITED_THREADS.
488         (remote_target::commit_resume)
489         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
490         with all_non_exited_inferiors and use all_non_exited_threads
491         instead of ALL_NON_EXITED_THREADS.
492         (remote_target::kill_new_fork_children): Use
493         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
494         init_thread_list and init_wait_for_inferior calls.
495         (remote_target::remote_btrace_maybe_reopen)
496         (remote_target::thread_handle_to_thread_info): Use
497         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
498         * target.c (target_terminal::restore_inferior)
499         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
500         all_non_exited_inferiors.
501         * thread-iter.c: New file.
502         * thread-iter.h: New file.
503         * thread.c: Include "inline-frame.h".
504         (thread_list): Delete.
505         (clear_thread_inferior_resources): Call clear_inline_frame_state.
506         (init_thread_list): Use all_threads_safe instead of
507         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
508         (new_thread): Adjust to per-inferior thread lists.
509         (add_thread_silent): Pass inferior to find_thread_ptid.
510         (thread_info::deletable): New, moved from the header.
511         (delete_thread_1): Adjust to per-inferior thread lists.
512         (find_thread_global_id): Use inf->threads().
513         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
514         find_thread_ptid.
515         (find_thread_ptid(inferior*, ptid_t)): New overload.
516         (iterate_over_threads): Use all_threads_safe.
517         (any_thread_p): New.
518         (thread_count): Use all_threads and std::distance.
519         (live_threads_count): Use all_non_exited_threads and
520         std::distance.
521         (valid_global_thread_id): Use all_threads.
522         (in_thread_list): Use find_thread_ptid.
523         (first_thread_of_inferior): Adjust to per-inferior thread lists.
524         (any_thread_of_inferior, any_live_thread_of_inferior): Use
525         inf->non_exited_threads().
526         (prune_threads, delete_exited_threads): Use all_threads_safe.
527         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
528         (set_resumed, set_running): Use all_non_exited_threads.
529         (is_thread_state, is_stopped, is_exited, is_running)
530         (is_executing): Delete.
531         (set_executing, set_stop_requested, finish_thread_state): Use
532         all_non_exited_threads.
533         (print_thread_info_1): Use all_inferiors and all_threads.
534         (thread_apply_all_command): Use all_non_exited_threads.
535         (thread_find_command): Use all_threads.
536         (update_threads_executing): Use all_non_exited_threads.
537         * tid-parse.c (parse_thread_id): Use inf->threads.
538         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
539
540 2018-11-22  Pedro Alves  <palves@redhat.com>
541
542         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
543         switch to it before calling into try_open_exec_file.
544
545 2018-11-22  Pedro Alves  <palves@redhat.com>
546
547         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
548         inferior_thread instead of find_thread_ptid, and only when
549         inferior_ptid is not null_ptid.
550         * inferior.c (add_inferior): Don't include target_pid_to_str
551         output when the inferior is not started.
552         * python/py-inferior.c (python_on_normal_stop): Don't use
553         find_thread_ptid.
554         (tui_on_user_selected_context_changed): Use inferior_thread
555         instead of find_thread_ptid, and only when inferior_ptid is not
556         null_ptid.
557
558 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
559
560         PR python/23714
561         * gdb/python/python.c (execute_gdb_command): Call
562         prevent_dont_repeat earlier to avoid affecting dont_repeat.
563
564 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
565
566         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
567         (HFILES_NO_SRCDIR): Add arch/riscv.h.
568         * arch/riscv.c: New file.
569         * arch/riscv.h: New file.
570         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
571         this list, and add arch/riscv.o.
572         * features/Makefile: Add riscv features.
573         * features/riscv/32bit-cpu.c: New file.
574         * features/riscv/32bit-cpu.xml: New file.
575         * features/riscv/32bit-csr.c: New file.
576         * features/riscv/32bit-csr.xml: New file.
577         * features/riscv/32bit-fpu.c: New file.
578         * features/riscv/32bit-fpu.xml: New file.
579         * features/riscv/64bit-cpu.c: New file.
580         * features/riscv/64bit-cpu.xml: New file.
581         * features/riscv/64bit-csr.c: New file.
582         * features/riscv/64bit-csr.xml: New file.
583         * features/riscv/64bit-fpu.c: New file.
584         * features/riscv/64bit-fpu.xml: New file.
585         * features/riscv/rebuild-csr-xml.sh: New file.
586         * riscv-tdep.c: Add 'arch/riscv.h' include.
587         (riscv_gdb_reg_names): Delete.
588         (csr_reggroup): New global.
589         (struct riscv_register_alias): Delete.
590         (struct riscv_register_feature): New structure.
591         (riscv_register_aliases): Delete.
592         (riscv_xreg_feature): New global.
593         (riscv_freg_feature): New global.
594         (riscv_virtual_feature): New global.
595         (riscv_csr_feature): New global.
596         (riscv_create_csr_aliases): New function.
597         (riscv_read_misa_reg): Delete.
598         (riscv_has_feature): Delete.
599         (riscv_isa_xlen): Simplify, just return cached xlen.
600         (riscv_isa_flen): Simplify, just return cached flen.
601         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
602         (riscv_register_name): Update to make use of tdesc_register_name.
603         Look up xreg and freg names in the new globals riscv_xreg_feature
604         and riscv_freg_feature.  Don't supply csr aliases here.
605         (riscv_fpreg_q_type): Delete.
606         (riscv_register_type): Use tdesc_register_type in almost all
607         cases, override the returned type in a few specific cases only.
608         (riscv_print_one_register_info): Handle errors reading registers.
609         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
610         registers that are otherwise unknown to GDB.  Also check the
611         csr_reggroup.
612         (riscv_print_registers_info): Remove assert about upper register
613         number, and use gdbarch_register_reggroup_p instead of
614         short-cutting.
615         (riscv_find_default_target_description): New function.
616         (riscv_check_tdesc_feature): New function.
617         (riscv_add_reggroups): New function.
618         (riscv_setup_register_aliases): New function.
619         (riscv_init_reggroups): New function.
620         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
621         setup register groups.  Register new riscv debug variable.
622         * riscv-tdep.h: Add 'arch/riscv.h' include.
623         (struct gdbarch_tdep): Remove abi union, and add
624         riscv_gdbarch_features field.  Remove cached quad floating point
625         type, and provide initialisation for double type field.
626         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
627         the list of targets using the feature based target descriptions.
628         * NEWS: Mention target description support.
629
630 2018-11-21  Pedro Alves  <palves@redhat.com>
631
632         * valops.c (find_method_list, value_find_oload_method_list)
633         (find_overload_match, find_oload_champ): Rename parameters and
634         locals.
635
636 2018-11-21  Pedro Alves  <palves@redhat.com>
637
638         * valops.c (find_method_list): Replace pointer and length
639         parameters with an gdb::array_view.  Adjust.
640         (value_find_oload_method_list): Likewise.
641         (find_overload_match): Use gdb::array_view for methods list.
642         Adjust to find_oload_champ interface change.
643         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
644         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
645
646 2018-11-21  Pedro Alves  <palves@redhat.com>
647
648         * gdbtypes.c (compare_badness): Change type of parameters to const
649         reference.  Adjust to badness_vector being a std::vector now.
650         (rank_function): Adjust to badness_vector being a std::vector now.
651         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
652         (LENGTH_MATCH): Delete.
653         (compare_badness): Change type of parameters to const reference.
654         (rank_function): Return a badness_vector by value now.
655         (find_overload_match): Adjust to badness_vector being a
656         std::vector now.  Remove cleanups.
657         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
658         badness_vector pointer.
659         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
660         a badness_vector pointer.  Adjust to badness_vector being a
661         std::vector now.  Remove cleanups.
662         (find_oload_champ): 'oload_champ_bv' parameter now
663         a badness_vector pointer.  Adjust to badness_vector being a
664         std::vector now.  Remove cleanups.
665
666 2018-11-21  Pedro Alves  <palves@redhat.com>
667
668         * cp-support.c (sym_return_val_size, sym_return_val_index)
669         (sym_return_val): Delete.
670         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
671         add to the vector.
672         (make_symbol_overload_list): Adjust to return a std::vector
673         instead of maintaining a global open coded vector.
674         (make_symbol_overload_list_block): Add std::vector parameter.
675         (make_symbol_overload_list_block): Rename to ...
676         (add_symbol_overload_list_block): ... this and add std::vector
677         parameter.
678         (make_symbol_overload_list_namespace): Rename to ...
679         (add_symbol_overload_list_namespace): ... this and add std::vector
680         parameter.
681         (make_symbol_overload_list_adl_namespace): Rename to ...
682         (add_symbol_overload_list_adl_namespace): ... this and add
683         std::vector parameter.
684         (make_symbol_overload_list_adl): Delete.
685         (add_symbol_overload_list_adl): New.
686         (make_symbol_overload_list_using): Rename to ...
687         (add_symbol_overload_list_using): ... this and add std::vector
688         parameter.
689         (make_symbol_overload_list_qualified): Rename to ...
690         (add_symbol_overload_list_qualified): ... this and add std::vector
691         parameter.
692         * cp-support.h: Include "common/array-view.h" and <vector>.
693         (make_symbol_overload_list): Change return type to std::vector.
694         (make_symbol_overload_list_adl): Delete declaration.
695         (add_symbol_overload_list_adl): New declaration.
696         * valops.c (find_overload_match): Local 'oload_syms' now a
697         std::vector.
698         (find_oload_champ_namespace): 'oload_syms' parameter now a
699         std::vector pointer.
700         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
701         std::vector pointer.  Adjust to new make_symbol_overload_list
702         interface.
703
704 2018-11-21  Pedro Alves  <palves@redhat.com>
705
706         * common/array-view.h (array_view::splice(size_type, size_t)): New.
707         (array_view::splice(size_type)): New.
708         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
709         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
710         std::vector.
711         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
712         * extension.h: Include "common/array-view.h".
713         (xmethod_worker::invoke): Adjust to use gdb::array_view.
714         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
715         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
716         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
717         (xmethod_worker::do_get_result_type): Adjust to use
718         gdb::array_view.
719         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
720         * gdbtypes.h: Include "common/array-view.h".
721         (rank_function): Adjust to use gdb::array_view.
722         * python/py-xmethods.c (python_xmethod_worker::invoke)
723         (python_xmethod_worker::do_get_arg_types)
724         (python_xmethod_worker::do_get_result_type)
725         (python_xmethod_worker::invoke): Adjust to new interfaces.
726         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
727         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
728         * valops.c (find_overload_match, find_oload_champ_namespace)
729         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
730         gdb:array_view and the new xmethod_worker interfaces.
731         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
732         gdb::array_view.
733         * value.h (find_overload_match, result_type_of_xmethod)
734         (call_xmethod): Adjust to use gdb::array_view.
735         * unittests/array-view-selftests.c: Add slicing tests.
736
737 2018-11-21  Pedro Alves  <palves@redhat.com>
738
739         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
740         * common/array-view.h (make_array_view): New.
741         * compile/compile-object-run.c (compile_object_run): Adjust to
742         pass an array_view.
743         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
744         * eval.c (eval_call): Adjust to pass an array_view.
745         (evaluate_subexp_standard): Adjust to pass an array_view.
746         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
747         * guile/scm-value.c (gdbscm_value_call): Likewise.
748         * infcall.c (push_dummy_code): Replace pointer + size parameters
749         with an array_view parameter.
750         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
751         adjust.
752         * infcall.h: Include "common/array-view.h".
753         (call_function_by_hand, call_function_by_hand_dummy): Replace
754         pointer + size parameters with an array_view parameter.
755         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
756         * linux-tdep.c (linux_infcall_mmap): Likewise.
757         * objc-lang.c (lookup_objc_class, lookup_child_selector)
758         (value_nsstring, print_object_command): Likewise.
759         * python/py-value.c (valpy_call): Likewise.
760         * rust-lang.c (rust_evaluate_funcall): Likewise.
761         * spu-tdep.c (flush_ea_cache): Likewise.
762         * valarith.c (value_x_binop, value_x_unop): Likewise.
763         * valops.c (value_allocate_space_in_inferior): Likewise.
764         * unittests/array-view-selftests.c (run_tests): Add
765         gdb::make_array_view test.
766
767 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
768
769         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
770         than a fixed size buffer.
771
772 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
773
774         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
775         and remove insertion of extra spaces in GDB's output.
776         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
777         Layout field into a temporary buffer, and then output it as a
778         string field.
779
780 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
781
782         * NEWS: Document the language choice done by
783         'info [types|functions|variables]|rbreak'.
784
785 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
786
787         * symtab.c (treg_matches_sym_type_name): Use
788         scoped_switch_to_sym_language_if_auto instead of local logic.
789         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
790         to switch to SYM language when language mode is auto.
791
792 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
793
794         * language.h (scoped_switch_to_sym_language_if_auto): New class.
795
796 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
797
798         * symtab.c (search_symbols): Properly check absence of type regexp
799         before entering the loop scanning the minimal symbols.
800
801 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
802
803         * s12z-tdep.c (s12z_extract_return_value): New function.
804         (inv_reg_perm) New array.
805         (s12z_return_value): Populate readbuf if non-null.
806
807 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
808
809         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
810         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
811         to MinGW fixed by Gnulib.
812         (O_NOINHERIT): Define if not defined.
813
814 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
815
816         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
817
818 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
819
820         * infrun.c (displaced_step_inferior_state) <next>: Remove.
821
822 2018-11-19  Tom Tromey  <tom@tromey.com>
823
824         * source.c (get_filename_and_charpos): Return void.
825
826 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
827
828         * skip.c (_initialize_step_skip): Fix "info skip" help.
829
830 2018-11-16  Tom Tromey  <tom@tromey.com>
831
832         PR rust/23625:
833         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
834
835 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
836
837         * infrun.c (displaced_step_inferior_states): Change type to
838         std::forward_list.
839         (get_displaced_stepping_state): Adjust.
840         (displaced_step_in_progress_any_inferior): Adjust.
841         (add_displaced_stepping_state): Adjust.
842         (remove_displaced_stepping_state): Adjust.
843
844 2018-11-18  Tom Tromey  <tom@tromey.com>
845
846         PR build/23814:
847         * target-delegates.c: Rebuild.
848         * ia64-linux-nat.c (class ia64_linux_nat_target)
849         <have_steppable_watchpoint>: Use override.  Return true, not 1.
850         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
851         "self" argument.
852         (ia64_linux_nat_target::low_new_thread): Rename.
853         (class ia64_linux_nat_target) <read_description>: Don't declare.
854         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
855         bool.
856
857 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
858
859         PR gdb/22736:
860         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
861         lang_struct_return code.
862
863 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
864
865         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
866         return_method.
867         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
868         * amd64-tdep.c (amd64_push_arguments): Likewise.
869         (amd64_push_dummy_call): Likewise.
870         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
871         * arc-tdep.c (arc_push_dummy_call): Likewise.
872         * arm-tdep.c (arm_push_dummy_call): Likewise.
873         * avr-tdep.c (avr_push_dummy_call): Likewise.
874         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
875         * cris-tdep.c (cris_push_dummy_call): Likewise.
876         * csky-tdep.c (csky_push_dummy_call): Likewise.
877         * frv-tdep.c (frv_push_dummy_call): Likewise.
878         * gdbarch.c: Regenerate.
879         * gdbarch.h: Regenerate.
880         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
881         return_method.
882         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
883         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
884         (hppa64_push_dummy_call): Likewise.
885         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
886         * i386-tdep.c (i386_push_dummy_call): Likewise.
887         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
888         * infcall.c (call_function_by_hand_dummy): Likewise.
889         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
890         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
891         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
892         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
893         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
894         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
895         * mep-tdep.c (mep_push_dummy_call): Likewise.
896         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
897         (mips_n32n64_push_dummy_call): Likewise.
898         (mips_o32_push_dummy_call): Likewise.
899         (mips_o64_push_dummy_call): Likewise.
900         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
901         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
902         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
903         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
904         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
905         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
906         (ppc64_sysv_abi_push_dummy_call): Likewise.
907         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
908         (ppc64_sysv_abi_push_dummy_call): Likewise.
909         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
910         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
911         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
912         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
913         * rx-tdep.c (rx_push_dummy_call): Likewise.
914         * s390-tdep.c (s390_push_dummy_call): Likewise.
915         * score-tdep.c (score_push_dummy_call): Likewise.
916         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
917         (sh_push_dummy_call_nofpu): Likewise.
918         * sparc-tdep.c (sparc32_store_arguments): Likewise.
919         (sparc32_push_dummy_call): Likewise.
920         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
921         (sparc64_push_dummy_call): Likewise.
922         * spu-tdep.c (spu_push_dummy_call): Likewise.
923         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
924         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
925         * v850-tdep.c (v850_push_dummy_call): Likewise.
926         * vax-tdep.c (vax_push_dummy_call): Likewise.
927         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
928         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
929
930 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
931
932         * gdbarch.sh (enum function_call_return_method): Add enum.
933         * gdbarch.h: Regenerate.
934         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
935
936 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
937
938         * unittests/copy_bitwise-selftests.c: New file.
939         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
940         (selftests::copy_bitwise_tests): Delete, moving this code to
941         unittests/copy_bitwise-selftests.c instead.
942         (_initialize_utils): Do not register copy_bitwise tests.
943         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
944         unittests/copy_bitwise-selftests.c.
945
946 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
947
948         * ada-lang.c (move_bits): Delete. Update all callers to use
949         copy_bitwise instead.
950         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
951         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
952         Move from here to utils.c.
953         (_initialize_dwarf2loc): Remove call to register copy_bitwise
954         selftests.
955         * utils.h (copy_bitwise): Add declaration.
956         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
957         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
958         Moved here from dwarf2loc.c.
959         (_initialize_utils): Register copy_bitwise selftests.
960
961 2018-11-14  Jim Wilson  <jimw@sifive.com>
962
963         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
964         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
965         then increment next_regnum if odd.
966         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
967         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
968         function type.  Pass new arg to riscv_arg_location based on function
969         type.
970         (riscv_return_value): Pass new arg to riscv_arg_location.
971
972         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
973         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
974         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
975
976         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
977         setting len.  New local align, set to max of arg align and xlen,
978         and pass to first riscv_assign_stack_location call.
979
980 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
981
982         * skip.c (complete_skip_number): New function.
983         (_initialize_step_skip): Add completers to some skip commands.
984
985 2018-11-09  Tom Tromey  <tom@tromey.com>
986
987         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
988         (struct remote_g_packet_data): Derive from allocate_on_obstack.
989         <guesses>: Now a std::vector.
990         (remote_g_packet_data_init, register_remote_g_packet_guess):
991         Update.
992         (remote_read_description_p): Update.  Return bool.
993         (remote_target::read_description): Update.
994         (struct remote_g_packet_guess): Add constructor.
995
996 2018-11-09  Tom Tromey  <tom@tromey.com>
997
998         * common/scoped_fd.h (class scoped_fd): Add move constructor and
999         move assignment operator.
1000         * psymtab.c (psymtab_to_fullname): Update.
1001         * source.h (open_source_file): Return scoped_fd.
1002         (find_and_open_source): Likewise.
1003         * source.c (open_source_file): Return scoped_fd.
1004         (get_filename_and_charpos): Update.
1005         (print_source_lines_base): Update.  Use scoped_fd::to_file.
1006         (forward_search_command): Likewise.
1007         (reverse_search_command): Likewise.
1008         (find_and_open_source): Return scoped_fd.
1009         * tui/tui-source.c (tui_set_source_content): Update.  Use
1010         gdb_file_up.
1011
1012 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
1013
1014         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
1015         overflow.
1016
1017 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1018
1019         * configure: Regenerate.
1020
1021 2018-11-09  Tom de Vries  <tdevries@suse.de>
1022
1023         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
1024         unconditionally, to set the language of the symbol.  Manage freeing
1025         returned pointer using gdb::unique_xmalloc_ptr.
1026
1027 2018-11-08  Tom Tromey  <tom@tromey.com>
1028
1029         * record.c (require_record_target): Upper-case "<TAB>".
1030
1031 2018-11-08  Tom Tromey  <tom@tromey.com>
1032
1033         * python/lib/gdb/command/pretty_printers.py
1034         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
1035
1036 2018-11-08  Tom Tromey  <tom@tromey.com>
1037
1038         PR gdb/23555:
1039         PR gdb/23838:
1040         * target.h (target_supports_terminal_ours): Return bool.
1041         * target.c (target_supports_terminal_ours): Handle case where
1042         current_top_target returns nullptr.  Return bool.
1043
1044 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
1045
1046         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
1047         return the correct count for potential HFAs.
1048
1049 2018-11-08  Jan Beulich  <jbeulich@suse.com>
1050
1051         * i387-tdep.c (i387_supply_xsave): Split handling of
1052         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
1053         (i387_collect_xsave): Likewise.
1054
1055 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
1056
1057         * riscv-tdep.c (riscv_insn::decode): Update header comment.
1058         (riscv_frame_this_id): Catch errors thrown while building the
1059         frame cache, leave the frame id as the default, which is the outer
1060         frame id.
1061
1062 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1063
1064         * ada-lang.c (read_atcb): Only set task_info->called_task if
1065         task_info->state == Entry_Caller_Sleep.
1066         (print_ada_task_info): Do not check task_info->state before
1067         checking task_info->called_task.
1068         (info_task): Likewise.
1069
1070 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
1071
1072         * ada-tasks.c (read_atcb): Clear task_info before computing
1073         the value of each of its fields.
1074
1075 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
1076
1077         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
1078         NULL before dereferencing it.
1079
1080 2018-11-06  Tom de Vries  <tdevries@suse.de>
1081
1082         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
1083         program headers.
1084
1085 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
1086
1087         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
1088         so that it applies to uclinux as well.
1089
1090 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
1091
1092         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
1093         when on AAPCS.
1094
1095 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
1096
1097         * riscv-fbsd-nat.c (getregs_supplies): Return true for
1098         RISCV_CSR_SSTATUS_REGNUM.
1099
1100 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1101
1102         * source.c (open_source_file): Fix leak by transferring the
1103         current s->fullname to the unique_xmalloc_ptr fullname given
1104         to find_and_open_source.
1105
1106 2018-11-04  Tom Tromey  <tom@tromey.com>
1107
1108         * varobj.c (install_default_visualizer): Update.
1109         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
1110         Return gdbpy_ref.
1111         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
1112         (find_pretty_printer_from_progspace)
1113         (find_pretty_printer_from_gdb, find_pretty_printer)
1114         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
1115         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
1116         Update.
1117
1118 2018-11-04  Tom Tromey  <tom@tromey.com>
1119
1120         * python/python.c (gdbpy_parameter_value): Update.
1121         * python/python-internal.h (python_string_to_unicode)
1122         (python_string_to_target_python_string)
1123         (host_string_to_python_string): Return gdbpy_ref.
1124         * python/py-utils.c (python_string_to_unicode)
1125         (unicode_to_encoded_python_string)
1126         (unicode_to_target_python_string)
1127         (python_string_to_target_string)
1128         (python_string_to_target_python_string): Return gdbpy_ref.
1129         (python_string_to_host_string): Update.
1130         (host_string_to_python_string): Return gdbpy_ref.
1131         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
1132         (stpy_fullname): Update.
1133         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
1134         Update.
1135         * python/py-prettyprint.c (print_string_repr): Update.
1136         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
1137         (objfpy_get_build_id): Update.
1138         * python/py-breakpoint.c (bppy_get_location)
1139         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
1140         Update.
1141
1142 2018-11-04  Tom Tromey  <tom@tromey.com>
1143
1144         * python/python-internal.h (gdb_py_object_from_longest)
1145         (gdb_py_object_from_ulongest): Return gdbpy_ref.
1146         * python/py-value.c (valpy_int): Update.
1147         * python/py-utils.c (gdb_py_object_from_longest): Return
1148         gdbpy_ref.
1149         (gdb_py_object_from_ulongest): Likewise.
1150         * python/py-type.c (typy_get_alignof): Update.
1151         * python/py-linetable.c (ltpy_get_all_source_lines)
1152         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
1153         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
1154
1155 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1156
1157         * ada-lang.c (_initialize_ada_language): Fix typo.
1158
1159 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1160
1161         * language.c (type): Remove.
1162         (_initialize_language): Remove assignment to type.
1163
1164 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1165
1166         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1167         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1168         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1169         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1170         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1171         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1172         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1173         and aarch64-ravenscar-thread.o.
1174         * NEWS: Add entry documenting Ravenscar tasking support
1175         on AArch64 ELF.
1176
1177 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1178
1179         * symtab.c (info_functions_command): Initialize quiet flag.
1180         * stack.c (info_args_command): Likewise.
1181
1182 2018-11-01  Jim Wilson  <jimw@sifive.com>
1183
1184         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1185         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1186         debugging messages.
1187
1188 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1189
1190         * ada-lang.c (ada_watch_location_expression): New function.
1191         (ada_language_defn): Set la_watch_location_expression to
1192         ada_watch_location_expression.
1193
1194 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1195
1196         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1197
1198 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1199
1200         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1201         shifting.
1202
1203 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1204             Joel Brobecker  <brobecker@adacore.com>
1205
1206         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1207         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1208         * arm-pikeos-tdep.c: New file.
1209         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1210         embedded system.
1211         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1212
1213 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1214
1215         * common/pathstuff.c (get_standard_temp_dir): New.
1216         * common/pathstuff.h (get_standard_temp_dir): New.
1217         * config.in: Re-generate.
1218         * configure: Re-generate.
1219         * configure.ac: Don't check for mkdtemp.
1220         * gnulib/aclocal-m4-deps.mk: Re-generate.
1221         * gnulib/aclocal.m4: Re-generate.
1222         * gnulib/config.in: Re-generate.
1223         * gnulib/configure: Re-generate.
1224         * gnulib/import/Makefile.am: Re-generate.
1225         * gnulib/import/Makefile.in: Re-generate.
1226         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1227         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1228         * gnulib/import/m4/mkdtemp.m4: New file.
1229         * gnulib/import/mkdtemp.c: New file.
1230         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1231         Add mkdtemp module.
1232         * unittests/mkdir-recursive-selftests.c (test): Use
1233         get_standard_temp_dir.
1234         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1235         ifdef.
1236         * compile/compile.c (get_compile_file_tempdir): Likewise.
1237
1238 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1239
1240         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1241         (SIG_FRAME_LR_OFFSET64): New define.
1242         (SIG_FRAME_FP_OFFSET64): New define.
1243         (aix_sighandle_frame_cache): New Function.
1244         (aix_sighandle_frame_this_id): New Function.
1245         (aix_sighandle_frame_prev_register): New Function.
1246         (aix_sighandle_frame_sniffer): New Function.
1247         (aix_sighandle_frame_unwind): New global variable.
1248         (rs6000_aix_init_osabi): Install new frame unwinder.
1249
1250 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1251
1252         PR gdb/23835
1253         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1254         already defined.
1255
1256 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1257
1258         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1259
1260 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1261
1262         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1263         (producer_is_icc): New function.
1264         (check_producer): Set producer_is_icc field on dwarf2_cu.
1265         (dwarf2_init_integer_type): New function.
1266         (read_base_type): Call dwarf2_init_integer_type instead of
1267         init_integer_type in all cases.
1268         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1269         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1270         LEN is greater than 0.
1271
1272 2018-10-30  Tom Tromey  <tom@tromey.com>
1273
1274         * main.c (captured_main_1): Check return value of bfd_init.
1275
1276 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1277
1278         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1279         Adjust comments.
1280
1281 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1282
1283         * procfs.c: Include common/pathstuff.h.
1284
1285 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1286
1287         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1288         Add missing braces.  No functional change.
1289
1290 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1291
1292         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1293         to report a bad option and fix indentation.
1294         * demangle.c (demangle_command): Use report_unrecognized_option_error
1295         to report a bad option and correctly report the bad option.
1296
1297 2018-10-27  Tom Tromey  <tom@tromey.com>
1298
1299         PR cli/23364:
1300         * darwin-nat.c (copied_shell): New global.
1301         (may_have_sip): Rename from should_disable_startup_with_shell.
1302         (copy_shell_to_cache, maybe_cache_shell): New functions.
1303         (darwin_nat_target::create_inferior): Update.  Use
1304         copied_shell.
1305
1306 2018-10-27  Tom Tromey  <tom@tromey.com>
1307
1308         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1309         (run_tests): Call test_to_file.
1310         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1311         temporary files.
1312         * common/scoped_fd.h (scoped_fd::to_file): New method.
1313
1314 2018-10-27  Tom Tromey  <tom@tromey.com>
1315
1316         * unittests/scoped_mmap-selftests.c (test_normal): Use
1317         gdb_mkostemp_cloexec.
1318         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1319         Use gdb_mkostemp_cloexec.
1320         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1321         gnulib/config.in, gnulib/configure,
1322         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1323         gnulib/import/m4/gnulib-cache.m4,
1324         gnulib/import/m4/gnulib-comp.m4: Update.
1325         * gnulib/import/m4/mkostemp.m4: New file.
1326         * gnulib/import/m4/mkstemp.m4: Remove.
1327         * gnulib/import/mkostemp.c: New file.
1328         * gnulib/import/mkstemp.m4: Remove.
1329         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1330         mkstemp, add mkostemp.  Apply new patch.
1331         * gnulib/import/stdlib.in.h: Apply patch.
1332         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1333         New file.
1334         * dwarf-index-write.c (write_psymtabs_to_index): Use
1335         gdb_mkostemp_cloexec.
1336         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1337
1338 2018-10-27  Tom Tromey  <tom@tromey.com>
1339
1340         * unittests/mkdir-recursive-selftests.c: New file.
1341         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1342         unittests/mkdir-recursive-selftests.c.
1343         * dwarf-index-cache.c (mkdir_recursive): Move to
1344         common/filestuff.c.
1345         (index_cache::store): Check return value of mkdir_recursive.
1346         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1347         (_initialize_index_cache): Don't register test.
1348         * common/filestuff.h (mkdir_recursive): Declare.
1349         * common/filestuff.c (mkdir_recursive): Move from
1350         dwarf-index-cache.c.  Return bool.
1351
1352 2018-10-27  Tom Tromey  <tom@tromey.com>
1353
1354         * dwarf-index-write.c (write_psymtabs_to_index): Move
1355         make_temp_filename to common/pathstuff.c.
1356         * common/pathstuff.h (make_temp_filename): Declare.
1357         * common/pathstuff.c (make_temp_filename): New function, moved
1358         from dwarf-index-write.c.
1359
1360 2018-10-27  Tom Tromey  <tom@tromey.com>
1361
1362         * procfs.c (procfs_target::create_inferior): Use get_shell.
1363         * cli/cli-cmds.c (shell_escape): Use get_shell.
1364         * windows-nat.c (windows_nat_target::create_inferior): Use
1365         get_shell.
1366         * common/pathstuff.c (get_shell): New function.
1367         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1368         (fork_inferior): Use get_shell.
1369         * common/pathstuff.h (get_shell): Declare.
1370
1371 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1372
1373         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1374
1375 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1376
1377         * stack.c (print_variable_and_value_data): Add preg and treg.
1378         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1379         and update callers.
1380         (print_frame_arg_vars): Likewise.
1381         (prepare_reg): New function.
1382         (info_locals_command): Extract info print args and use them.
1383         (info_args_command): Likewise.
1384         (_initialize_stack): Modify on-line help.
1385         * symtab.c (treg_matches_sym_type_name): New function.
1386         (search_symbols): New arg t_regexp.
1387         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1388         (info_variables_command): Extract info print args and use them.
1389         (info_functions_command): Likewise.
1390         (info_types_command): Update call to symtab_symbol_info.
1391         (_initialize_symtab): Modify on-line help.
1392         * symtab.h (treg_matches_sym_type_name): New function.
1393         (search_symbols): New t_regexp arg.
1394
1395 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1396
1397         * cli-utils.c (extract_arg_maybe_quoted): New function.
1398         (extract_info_print_args): New function.
1399         (info_print_args_help): New function.
1400         (report_unrecognized_option_error): New function.
1401         * cli-utils.h (extract_arg_maybe_quoted): New function.
1402         (extract_info_print_args): New function.
1403         (info_print_args_help): New function.
1404         (report_unrecognized_option_error): New function.
1405
1406 2018-10-26  Tom Tromey  <tom@tromey.com>
1407
1408         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1409         (compute_compunit_symtab_includes): Update.
1410         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1411         (compunit_symtab_ptr): Likewise.
1412
1413 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1414
1415         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1416         default_print_auxv_entry for specific tag values.
1417
1418 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1419
1420         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1421
1422 2018-10-26  Jim Wilson  <jimw@sifive.com>
1423
1424         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1425         (riscv_linux_sigframe_init): Declare.
1426         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1427         (riscv_linux_sigframe): New.
1428         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1429         (riscv_linux_sigframe_init): Define.
1430         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1431
1432         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1433         (riscv_isa_flen): Likewise.  Drop static.
1434         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1435         (riscv_isa_flen): Likewise.  Declare.
1436
1437 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1438             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1439
1440         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1441         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1442         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1443         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1444         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1445         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1446         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1447         Define.
1448         (struct ppc_linux_features) <htm>: New field.
1449         (ppc_linux_no_features): Add initializer for htm field.
1450         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1451         new tdescs.
1452         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1453         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1454         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1455         Define if not already defined.
1456         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1457         and rs6000/powerpc-isa207-htm-vsx64l.
1458         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1459         rs6000/powerpc-isa207-htm-vsx64l.xml.
1460         * features/rs6000/power-htm-spr.xml: New file.
1461         * features/rs6000/power-htm-core.xml: New file.
1462         * features/rs6000/power64-htm-core.xml: New file.
1463         * features/rs6000/power-htm-fpu.xml: New file.
1464         * features/rs6000/power-htm-altivec.xml: New file.
1465         * features/rs6000/power-htm-vsx.xml: New file.
1466         * features/rs6000/power-htm-ppr.xml: New file.
1467         * features/rs6000/power-htm-dscr.xml: New file.
1468         * features/rs6000/power-htm-tar.xml: New file.
1469         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1470         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1471         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1472         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1473         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1474         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1475         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1476         fetch_regset with HTM regsets.
1477         (store_register, store_ppc_registers): Call store_regset with HTM
1478         regsets.
1479         (ppc_linux_nat_target::read_description): Set htm field in the
1480         features struct if needed.
1481         * ppc-linux-tdep.c: Include
1482         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1483         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1484         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1485         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1486         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1487         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1488         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1489         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1490         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1491         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1492         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1493         (ppc32_linux_ctarregset): New globals.
1494         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1495         (ppc_linux_collect_core_cpgrregset): New function.
1496         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1497         regsets.
1498         (ppc_linux_core_read_description): Check if the tm spr section is
1499         present and set htm in the features struct.
1500         (_initialize_ppc_linux_tdep): Call
1501         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1502         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1503         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1504         Declare.
1505         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1506         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1507         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1508         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1509         New fields.
1510         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1511         Likewise.
1512         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1513         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1514         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1515         New enum fields.
1516         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1517         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1518         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1519         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1520         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1521         <PPC_CTAR_REGNUM>: Likewise.
1522         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1523         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1524         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1525         (IS_CEFP_PSEUDOREG): Define.
1526         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1527         registers.  Return names for the checkpointed DFP, VSX, and EFP
1528         pseudo registers.
1529         (rs6000_pseudo_register_type): Remove initial assert and raise an
1530         internal error in the else clause instead.  Return types for the
1531         checkpointed DFP, VSX, and EFP pseudo registers.
1532         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1533         checkpointed DFP pseudo registers.
1534         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1535         checkpointed VSX pseudo registers.
1536         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1537         from efpr_pseudo_register_read and
1538         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1539         registers.
1540         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1541         Handle checkpointed DFP, VSX, and EFP registers.
1542         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1543         (efp_ax_pseudo_register_collect): New functions.
1544         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1545         register logic to new functions.  Handle checkpointed DFP, VSX,
1546         and EFP pseudo registers.
1547         (rs6000_gdbarch_init): Look for and validate the htm features.
1548         Include checkpointed DFP, VSX and EFP pseudo-registers.
1549         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1550         HTM registers.
1551
1552 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1553
1554         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1555         without altivec or fpu.
1556
1557 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1558             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1559
1560         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1561         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1562         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1563         Define if not already defined.
1564         * features/rs6000/power-ebb.xml: New file.
1565         * features/rs6000/power-linux-pmu.xml: New file.
1566         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1567         features.
1568         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1569         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1570         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1571         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1572         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1573         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1574         fetch_regset with ebb and pmu regsets.
1575         (store_register, store_ppc_registers): Call store_regset with ebb
1576         and pmu regsets.
1577         (ppc_linux_nat_target::read_description): Set isa207 field in the
1578         features struct if ebb and pmu are avaiable.
1579         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1580         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1581         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1582         and pmu regsets.
1583         (ppc_linux_core_read_description): Check if the pmu section is
1584         present and set isa207 in the features struct.
1585         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1586         (ppc32_linux_pmuregset): Declare.
1587         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1588         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1589         <ppc_sier_regnum>: New field.
1590         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1591         New enum values.
1592         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1593         values.
1594         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1595         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1596         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1597         ebb and pmu features.
1598
1599 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1600             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1601
1602         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1603         (tdesc_powerpc_isa207_vsx64l): Declare.
1604         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1605         (struct ppc_linux_features) <isa207>: New field.
1606         (ppc_linux_no_features): Add initializer for isa207 field.
1607         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1608         new tdescs.
1609         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1610         (NT_PPC_TAR): Define if not already defined.
1611         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1612         rs6000/powerpc-isa207-vsx64l.
1613         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1614         rs6000/powerpc-isa207-vsx64l.xml.
1615         * features/rs6000/power-tar.xml: New file.
1616         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1617         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1618         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1619         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1620         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1621         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1622         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1623         fetch_regset with the TAR regset.
1624         (store_register, store_ppc_registers): Call store_regset with the
1625         TAR regset.
1626         (ppc_linux_nat_target::read_description): Set isa207 field in the
1627         features struct if needed.
1628         * ppc-linux-tdep.c: Include
1629         features/rs6000/powerpc-isa207-vsx32l.c and
1630         features/rs6000/powerpc-isa207-vsx64l.c.
1631         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1632         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1633         regset.
1634         (ppc_linux_core_read_description): Check if the tar section is
1635         present and set isa207 in the features struct.
1636         (_initialize_ppc_linux_tdep): Call
1637         initialize_tdesc_powerpc_isa207_vsx32l and
1638         initialize_tdesc_powerpc_isa207_vsx64l.
1639         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1640         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1641         (enum) <PPC_TAR_REGNUM>: New enum value.
1642         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1643         feature.
1644         (ppc_process_record_op31): Record changes to TAR.
1645
1646 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1647             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1648
1649         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1650         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1651         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1652         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1653         (struct ppc_linux_features) <ppr_dscr>: New field.
1654         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1655         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1656         new tdescs.
1657         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1658         Define if not already defined.
1659         * features/Makefile (WHICH): Add
1660         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1661         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1662         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1663         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1664         * features/rs6000/power-dscr.xml: New file.
1665         * features/rs6000/power-ppr.xml: New file.
1666         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1667         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1668         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1669         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1670         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1671         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1672         * ppc-linux-nat.c: Include <sys/uio.h>.
1673         (fetch_regset, store_regset, check_regset): New functions.
1674         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1675         DSCR and PPR regsets.
1676         (store_register, store_ppc_registers): Call store_regset with
1677         DSCR and PPR regsets.
1678         (ppc_linux_get_hwcap2): New function.
1679         (ppc_linux_nat_target::read_description): Call
1680         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1681         features struct if needed.
1682         * ppc-linux-tdep.c: Include
1683         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1684         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1685         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1686         (ppc32_linux_dscrregset): New globals.
1687         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1688         and dscr regsets.
1689         (ppc_linux_core_read_description): Check if the ppr and dscr
1690         sections are present and set ppr_dscr in the features struct.
1691         (_initialize_ppc_linux_tdep): Call
1692         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1693         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1694         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1695         (ppc32_linux_dscrregset): Declare.
1696         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1697         <ppc_dscr_regnum>: New field.
1698         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1699         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1700         and dscr features.
1701         (ppc_process_record_op31): Record changes to PPR and DSCR.
1702
1703 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1704
1705         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1706         second initializer line for the have_* variables.  Initialize
1707         have_fpu to 0 instead of 1.
1708
1709 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1710
1711         * arch/ppc-linux-common.c (ppc_linux_match_description):
1712         Parenthesize tdesc assignements and indent them properly.
1713
1714 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1715
1716         * ppc-linux-nat.c (fetch_register): Change if statement to else
1717         if.
1718         (store_register): Likewise.
1719
1720 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1721
1722         * rs6000-tdep.c: Remove reggroups.h include.
1723         (rs6000_pseudo_register_reggroup_p): Remove.
1724         (rs6000_gdbarch_init): Remove call to
1725         set_tdesc_pseudo_register_reggroup_p.
1726
1727 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1728
1729         * reggroups.c (default_register_reggroup_p): Return true for
1730         decfloat registers and float_reggroup.
1731
1732 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1733
1734         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1735         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1736         ppc_linux_collect_vrregset by regcache_collect_regset.
1737
1738 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1739
1740         * linux-tdep.c (linux_collect_regset_section_cb): Use
1741         std::vector<gdb_byte> instead of char * and malloc for buf.
1742         Remove xfree.
1743
1744 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1745
1746         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1747         symtab_start instead of always using language_unknown.
1748
1749 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1750
1751         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1752         READ_P parameter, catch and ignore register access errors from
1753         either the old or new MISA location.
1754         (riscv_has_feature): Update call to riscv_read_misa_reg.
1755
1756 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1757
1758         * python/py-function.c (convert_values_to_python): Return
1759         gdbpy_ref<>.  Add header comment.
1760         (fnpy_call): Adjust.
1761
1762 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1763
1764         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1765         (cmdpy_completer_handle_brkchars): Adjust.
1766         (cmdpy_completer): Adjust.
1767
1768 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1769
1770         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1771         Pass correct regnum to raw_supply_zeroed.
1772
1773 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1774
1775         * regcache.c (cooked_read_test): Add CSKY to the list of
1776         architectures with a save_reggroup
1777
1778 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1779
1780         PR gdb/23368
1781         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1782         transfer terminal state from old new new inferior.
1783         * terminal.h (swap_terminal_info): New function.
1784         * inflow.c (swap_terminal_info): New function.
1785
1786 2018-10-23  Tom Tromey  <tom@tromey.com>
1787
1788         * record-btrace.c (get_thread_current_frame_id): Rename from
1789         get_thread_current_frame.  Return a frame_id.
1790         (record_btrace_start_replaying): Update.
1791
1792 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1793
1794         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1795         for CSRs.
1796
1797 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1798
1799         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1800         have_nonsteppable_watchpoint attribute to 1.
1801
1802 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1803
1804         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1805         register names.
1806         (struct register_alias): Rename to...
1807         (struct riscv_register_alias): ...this, and update comment.
1808         (riscv_register_aliases): Update type, and alias names.  Remove
1809         CSR names from this list.
1810         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1811         register names.  Add an extra assertion.
1812         (riscv_is_regnum_a_named_csr): New function.
1813         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1814
1815 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1816
1817         * configure.tgt: Add configuration for s12z.
1818         * s12z-tdep.c:  New file.
1819         * NEWS: Mention new target.
1820
1821 2018-10-22  Jim Wilson  <jimw@sifive.com>
1822
1823         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1824         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1825
1826         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1827         (riscv_register_type): Use them.
1828         (riscv_print_one_register_info): Handle union of floats same as float.
1829         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1830         riscv_fpreg_q_type fields.
1831
1832 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1833
1834         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1835         * gdbarch.h: Re-generate.
1836         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1837         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1838         * eval.c (evaluate_subexp_standard): Likewise.
1839         * findvar.c (value_of_register): Likewise.
1840         (value_of_register_lazy): Likewise.
1841         (address_from_register): Likewise.
1842         * frame.c (get_frame_register_bytes): Likewise.
1843         * gdbarch-selftests.c (register_to_value_test): Likewise.
1844         * h8300-tdep.c (h8300_register_type): Likewise.
1845         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1846         (i386_svr4_reg_to_regnum): Likewise.
1847         * infcmd.c (default_print_registers_info): Likewise.
1848         (registers_info): Likewise.
1849         (print_vector_info): Likewise.
1850         (default_print_float_info): Likewise.
1851         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1852         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1853         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1854         (mi_cmd_data_list_changed_registers): Likewise.
1855         (mi_cmd_data_list_register_values): Likewise.
1856         (mi_cmd_data_write_register_values): Likewise.
1857         (mi_cmd_trace_frame_collected): Likewise.
1858         * mips-tdep.c (print_gp_register_row): Likewise.
1859         (mips_print_registers_info): Likewise.
1860         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1861         * regcache.c (init_regcache_descr): Likewise.
1862         (register_size): Likewise.
1863         (register_dump::dump): Likewise.
1864         (cooked_read_test): Likewise.
1865         (cooked_write_test): Likewise.
1866         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1867         (rs6000_gdbarch_init): Likewise.
1868         * stabsread.c (stab_reg_to_regnum): Likewise.
1869         * stack.c (info_frame_command): Likewise.
1870         * target-descriptions.c (tdesc_register_name): Likewise.
1871         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1872         * tui/tui-regs.c (tui_show_register_group): Likewise.
1873         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1874         (user_reg_map_regnum_to_name): Likewise.
1875         (value_of_user_reg): Likewise.
1876         (maintenance_print_user_registers): Likewise.
1877         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1878         (xtensa_register_name): Likewise.
1879         (xtensa_register_type): Likewise.
1880         (xtensa_reg_to_regnum): Likewise.
1881         (xtensa_pseudo_register_read): Likewise.
1882         (xtensa_pseudo_register_write): Likewise.
1883
1884 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1885
1886         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1887         correctly-sized buffer with raw_read.
1888         (amd64_pseudo_register_write): Use correctly-sized buffer for
1889         raw_read/raw_write.
1890
1891 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1892
1893         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1894         in add_prefix_cmd of set print type.
1895
1896 2018-10-19  Tom Tromey  <tom@tromey.com>
1897
1898         PR tui/18388:
1899         * NEWS: Mention tabset deprecation.
1900         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1901         (update_tab_width): New function.
1902         (tui_set_tab_width, tui_show_tab_width): New functions.
1903         (tui_set_tab_width_command): Use update_tab_width.
1904         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1905         Add new "set tui tab-width" command.
1906         * tui/tui-source.c (tui_set_source_content): Update.
1907         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1908         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1909         Don't declare.
1910         (tui_tab_width): Declare.
1911         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1912         (tui_set_default_tab_len): Remove.
1913
1914 2018-10-19  Tom Tromey  <tom@tromey.com>
1915
1916         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1917         (key_is_backspace, tui_getc): Don't declare.
1918         * tui/tui-io.c (key_is_start_sequence): Now static.
1919         (key_is_end_sequence, key_is_backspace): Remove.
1920         (tui_getc): Now static.
1921
1922 2018-10-19  Tom Tromey  <tom@tromey.com>
1923
1924         * symfile.c (reread_symbols): Clear "static_links".
1925
1926 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1927
1928         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1929         define.
1930         (aarch64_linux_sigframe_init): Extra boundary checks.
1931
1932 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1933
1934         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1935         the possibly non-existent tdesc type 'vec128', but the type of raw
1936         register v16 instead.
1937
1938 2018-10-19  Gary Benson <gbenson@redhat.com>
1939
1940         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1941
1942 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1943
1944         PR cli/23785
1945         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1946         NULL.
1947
1948 2018-10-17  Paul Koning  <paul_koning@dell.com>
1949
1950         * charset.c (convert_between_encodings): Fix unsigned overflow.
1951
1952 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1953
1954         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1955         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1956         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1957         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1958         New functions.
1959         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1960         and fbsd_info_proc_mappings_header.
1961         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1962         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1963         New.
1964
1965 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1966
1967         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1968         Solaris Maintainer.
1969
1970 2018-10-15  Tom Tromey  <tom@tromey.com>
1971
1972         * tui/tui.c (strcat_to_buf): Remove casts.
1973         * tui/tui-winsource.c (tui_show_source_line)
1974         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1975         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1976         * tui/tui-windata.c (tui_first_data_item_displayed)
1977         (tui_delete_data_content_windows, tui_erase_data_content)
1978         (tui_display_all_data, tui_display_data_from)
1979         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1980         * tui/tui-win.c (tui_set_win_height)
1981         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1982         casts.
1983         * tui/tui-win.c (tui_resize_all): Remove casts.
1984         (tui_scroll_backward_command, tui_set_focus)
1985         (tui_set_tab_width_command): Likewise.
1986         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1987         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1988         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1989         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1990         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1991         Remove casts.
1992
1993 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1994
1995         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1996         AArch64/ARM maintainer.
1997
1998 2018-10-11  Gary Benson <gbenson@redhat.com>
1999
2000         * interps.h (interp::m_name): Make private and mutable.
2001         * interps.c (interp::~interp): Free m_name.
2002
2003 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
2004             Simon Marchi <simark@simark.ca>
2005
2006         * README (`configure' options): Add documentation for new
2007         "--enable-unit-tests" option.
2008         * acinclude.m4: Include "selftest.m4".
2009         * configure: Regenerate.
2010         * configure.ac: Use "GDB_AC_SELFTEST".
2011         * maint.c (maintenance_selftest): Update message informing
2012         that selftests have been disabled.
2013         (maintenance_info_selftests): Likewise.
2014         * selftest.m4: New file.
2015
2016 2018-10-10  Gary Benson <gbenson@redhat.com>
2017
2018         * remote.c (remote_target::remote_send_printf): Add
2019         missing va_end found by Coverity.
2020
2021 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
2022
2023         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
2024
2025 2018-10-09  Tom Tromey  <tom@tromey.com>
2026
2027         * configure: Rebuild.
2028         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
2029         * NEWS: Update --enable-ubsan documentation.
2030
2031 2018-10-09  Gary Benson <gbenson@redhat.com>
2032
2033         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
2034         found by Coverity.
2035
2036 2018-10-08  Tom Tromey  <tom@tromey.com>
2037
2038         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
2039         variable.
2040         (riscv_fbsd_init_abi): Likewise.
2041
2042 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2043         * valops.c (value_struct_elt_for_reference): Rename local variable
2044         to work around the shadowing a previous local warning.
2045
2046 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2047
2048         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
2049         * NEWS: Mention new FreeBSD/riscv native configuration.
2050         * configure.host: Add riscv*-*-freebsd*.
2051         * configure.nat: Likewise.
2052         * riscv-fbsd-nat.c: New file.
2053
2054 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2055
2056         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
2057         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
2058         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
2059         * NEWS: Mention new FreeBSD/riscv target.
2060         * configure.tgt: Add riscv*-*-freebsd*.
2061         * riscv-fbsd-tdep.c: New file.
2062         * riscv-fbsd-tdep.h: New file.
2063
2064 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
2065
2066         * regcache.h (struct regcache_map_entry): Note that this type can
2067         be used with traditional frame caches.
2068         * trad-frame.c (trad_frame_set_reg_regmap): New.
2069         * trad-frame.h (trad_frame_set_reg_regmap): New.
2070
2071 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
2072
2073         PR c++/16841
2074         * valops.c (get_virtual_base_offset): New function.
2075         (value_struct_elt_for_reference): Use it to get virtual base offset
2076         and add it in calculating class member address.
2077
2078 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
2079
2080         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
2081         (check_producer): Check if the producer is codewarrior.
2082         (producer_is_codewarrior): New function.
2083         (lnp_state_machine::record_line): Ignore is_stmt flag for records
2084         produced by codewarrior.
2085         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
2086
2087 2018-10-06  Tom Tromey  <tom@tromey.com>
2088
2089         PR python/19399:
2090         * python/py-inferior.c: Add "architecture" entry.
2091         (infpy_architecture): New function.
2092
2093 2018-10-06  Tom Tromey  <tom@tromey.com>
2094
2095         PR python/21765:
2096         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
2097         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
2098         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
2099         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
2100
2101 2018-10-06  Tom Tromey  <tom@tromey.com>
2102
2103         PR build/17077:
2104         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
2105         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
2106         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
2107         #include.
2108
2109 2018-10-06  Tom Tromey  <tom@tromey.com>
2110
2111         * python/py-breakpoint.c (bppy_get_location): Handle a
2112         bp_breakpoint without a location.
2113
2114 2018-10-06  Tom Tromey  <tom@tromey.com>
2115
2116         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
2117         (_RegEx): Reformat help text.
2118         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
2119         (AnyCallerIs, AnyCallerMatches): Reformat help text.
2120         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
2121         text.
2122         * python/lib/gdb/command/xmethods.py (InfoXMethod)
2123         (EnableXMethod, DisableXMethod): Remove help indentation.
2124         Capitalize meta-syntactic variables.
2125         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
2126         (EnableUnwinder, DisableUnwinder): Remove help indentation.
2127         Capitalize meta-syntactic variables.
2128         * python/lib/gdb/command/explore.py (ExploreCommand)
2129         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
2130         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
2131         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
2132         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
2133         Remove help indentation.
2134         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
2135         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
2136         (DisableFrameFilter, SetFrameFilterPriority)
2137         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
2138
2139 2018-10-06  Tom Tromey  <tom@tromey.com>
2140
2141         PR tui/28819:
2142         * tui/tui-io.c (gdb_wgetch): New function.
2143         (tui_mld_getc, tui_getc): Use it.
2144
2145 2018-10-05  Tom Tromey  <tom@tromey.com>
2146
2147         * sol-thread.c (sol_thread_target::wait): Rename inner
2148         "save_ptid".
2149
2150 2018-10-04  Tom Tromey  <tom@tromey.com>
2151
2152         * configure: Rebuild.
2153         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
2154
2155 2018-10-04  Tom Tromey  <tom@tromey.com>
2156
2157         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2158         declaration of "block".
2159
2160 2018-10-04  Tom Tromey  <tom@tromey.com>
2161
2162         * common/filestuff.c (fdwalk): Remove inner declaration of
2163         "result".
2164
2165 2018-10-04  Tom Tromey  <tom@tromey.com>
2166
2167         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2168         "structs_addr" and hoist declaration.
2169
2170 2018-10-04  Tom Tromey  <tom@tromey.com>
2171
2172         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2173         variable "size".
2174
2175 2018-10-04  Tom Tromey  <tom@tromey.com>
2176
2177         * mdebugread.c (parse_partial_symbols): Use std::string.
2178
2179 2018-10-04  Tom Tromey  <tom@tromey.com>
2180
2181         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2182         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2183         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2184         header.
2185         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2186         more inner scope.
2187         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2188         * varobj.c (varobj_update): Rename inner "newobj",
2189         "type_changed".
2190         * valprint.c (generic_emit_char): Rename inner "buf".
2191         * valops.c (find_overload_match): Rename inner "temp".
2192         (value_struct_elt_for_reference): Declare "v" in more inner
2193         scope.
2194         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2195         * unittests/array-view-selftests.c (run_tests): Rename inner
2196         "vec".
2197         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2198         header.
2199         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2200         "tsv" in more inner scope.
2201         (print_one_static_tracepoint_marker): Rename inner
2202         "tuple_emitter".
2203         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2204         (tic6x_push_dummy_call): Don't redeclare "addr".
2205         * target-float.c: Declare "dto" lower.
2206         * symtab.c (lookup_local_symbol): Rename inner "sym".
2207         (find_pc_sect_line): Rename inner "pc".
2208         * stack.c (print_frame): Don't redeclare "gdbarch".
2209         (return_command): Rename inner "gdbarch".
2210         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2211         "sp".
2212         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2213         header.
2214         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2215         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2216         scope.
2217         * remote.c (remote_target::update_thread_list): Don't redeclare
2218         "tp".
2219         (remote_target::process_initial_stop_replies): Rename inner
2220         "thread".
2221         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2222         (remote_target::wait_as): Don't redeclare "stop_reply".
2223         (remote_target::get_thread_local_address): Rename inner
2224         "result".
2225         (remote_target::get_tib_address): Likewise.
2226
2227         * regcache.c (cooked_read_test): Rename "regnum".
2228         * record-btrace.c (cmd_record_btrace_start): Rename inner
2229         "exception".
2230         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2231         loop header.
2232         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2233         header.
2234         (ppu2spu_sniffer): Rename inner "buf".
2235         * parse.c (operator_check_standard): Rename inner "type",
2236         "objfile".
2237         * p-valprint.c (pascal_val_print): Introduce new scope for
2238         "low_bound", "high_bound".
2239         * p-exp.y (yylex): Declare "i" in loop header.
2240         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2241         Lower declaration of "s".
2242         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2243         header.
2244         (nios2_push_dummy_call): Rename "len".
2245         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2246         "buf".
2247         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2248         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2249         (linux_xfer_osdata_modules): Likewise.
2250         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2251         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2252         (mips_o64_push_dummy_call): Likewise.
2253         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2254         "op".
2255         * mi/mi-main.c (list_available_thread_groups): Rename inner
2256         "tuple_emitter".
2257         (mi_cmd_data_read_memory): Rename inner "opts".
2258         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2259         "tuple_emitter".
2260         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2261         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2262         more inner scope.
2263         (parse_partial_symbols): Rename inner "pst", "p", "name"
2264         * main.c (captured_main_1): Rename inner "i"s.
2265         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2266         "oso2".
2267         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2268         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2269         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2270         (handle_signal_stop): Rename inner "gdbarch".
2271         (handle_command): Declare "signum" in loop header.
2272         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2273         "status".
2274         (examine_prologue): Rename inner "sol" and "sof".
2275         (ia64_extract_return_value): Rename inner "val".  Declare another
2276         "val" in a more inner scope.
2277         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2278         inner scope.
2279         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2280         "except".
2281         * findvar.c (default_read_var_value): Don't redeclare "addr".
2282         * f-exp.y (yylex): Declare "i" in loop header.
2283         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2284         Rename inner "type", "expect_type".
2285         (evaluate_subexp_for_sizeof): Rename inner "pc".
2286         * elfread.c (elf_symfile_read): Rename inner "abfd".
2287         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2288         "bytes_read".
2289         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2290         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2291         (dwarf_decode_line_header): Rename inner "lh".
2292         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2293         "offset".  Declare "i" in loop header.
2294         (disassemble_dwarf_expression): Rename inner "addr_size".
2295         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2296         inner "result".
2297         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2298         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2299         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2300         "inner_list_emitter".
2301         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2302         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2303         declaration in a block.
2304         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2305         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2306         "obstack_final_size".
2307         * cp-support.c (inspect_type): Declare "i" in loop header.
2308         * compile/compile.c (compile_instance::insert_symbol_error):
2309         Rename inner "e".
2310         * common/agent.c (agent_run_command): Remove inner "ret"
2311         declaration.
2312         * coffread.c (coff_symfile_read): Rename inner "name".
2313         (coff_symfile_read): Rename inner "abfd".
2314         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2315         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2316         "high".
2317         * c-exp.y (lex_one_token): Move "len" declaration lower.
2318         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2319         "gdbarch".
2320         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2321         "b".
2322         (watch_command_1): Declare "mark" later.
2323         (clear_command): Don't shadow "a" or "b".
2324         (delete_command): Rename inner "b".
2325         (delete_trace_command): Likewise.
2326         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2327         "op".
2328         (arm_gdbarch_init): Remove inner "e_flags".
2329         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2330         "offset" in inner blocks.
2331
2332 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2333
2334         * dwarf-index-write.c (file_write): Don't write if the vector is
2335         empty.
2336
2337 2018-10-05  Tom de Vries  <tdevries@suse.de>
2338
2339         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2340         PyArg_ParseTuple call.
2341
2342 2018-10-05  Tom de Vries  <tdevries@suse.de>
2343
2344         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2345         PyArg_ParseTuple call.
2346
2347 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2348
2349         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2350         to avoid exceeding 80 characters per line limit.
2351
2352 2018-10-04  Tom Tromey  <tom@tromey.com>
2353
2354         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2355         (reread_symbols): Update.
2356         * complaints.h (clear_complaints): Remove argument.
2357         * complaints.c (enum complaint_series): Remove.
2358         (series): Remove global.
2359         (complaint_internal): Update.
2360         (clear_complaints): Remove argument.
2361
2362 2018-10-04  Tom Tromey  <tom@tromey.com>
2363
2364         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2365         debugging symbols" message if there is a separate debug objfile.
2366
2367 2018-10-04  Tom Tromey  <tom@tromey.com>
2368
2369         PR cli/19551:
2370         * symfile.c (symbol_file_add_with_addrs): Update output.
2371         * psymtab.c (require_partial_symbols): Update output.
2372
2373 2018-10-04  Tom Tromey  <tom@tromey.com>
2374
2375         PR cli/22234:
2376         * complaints.c: Emit \n.
2377
2378 2018-10-04  Tom Tromey  <tom@tromey.com>
2379
2380         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2381         (separate_debug_file_exists, find_separate_debug_file)
2382         (add_symbol_file_command, reread_symbols, allocate_symtab)
2383         (allocate_compunit_symtab): Use filtered printing, not
2384         unfiltered.
2385         * psymtab.c (require_partial_symbols, dump_psymtab)
2386         (allocate_psymtab): Use filtered printing, not unfiltered.
2387
2388 2018-10-04  Tom Tromey  <tom@tromey.com>
2389
2390         * complaints.c (complaint_internal): Correctly check complaint
2391         count.
2392
2393 2018-10-04  Tom Tromey  <tom@tromey.com>
2394
2395         * complaints.h (struct complaints): Remove declaration.
2396         * complaints.c (clear_complaints): Remove an unused variable.
2397
2398 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2399
2400         * MAINTAINERS (Write After Approval): Add self.
2401
2402 2018-10-03  Tom Tromey  <tom@tromey.com>
2403
2404         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2405         "buffer_contents".
2406         * coffread.c (coff_symtab_read): Initialize "newobj".
2407
2408 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2409
2410         * dwarf2read.c (read_func_scope): Remove struct keyword in
2411         range-based for.
2412
2413 2018-10-03  Tom Tromey  <tom@tromey.com>
2414
2415         * README: Mention --enable-ubsan.
2416         * NEWS: Mention --enable-ubsan.
2417         * acinclude.m4: Include sanitize.m4.
2418         * configure: Rebuild.
2419         * configure.ac: Call AM_GDB_UBSAN.
2420         * sanitize.m4: New file.
2421
2422 2018-10-03  Tom Tromey  <tom@tromey.com>
2423
2424         * expression.h (enum exp_opcode): Use uint8_t as base type.
2425         * expprint.c (op_name): Handle invalid opcodes.
2426
2427 2018-10-03  Tom Tromey  <tom@tromey.com>
2428
2429         * parse.c (prefixify_expression): Add assert.
2430         (parse_exp_in_context_1): Throw exception if the expression is
2431         empty.
2432
2433 2018-10-03  Tom Tromey  <tom@tromey.com>
2434
2435         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2436
2437 2018-10-03  Tom Tromey  <tom@tromey.com>
2438
2439         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2440
2441 2018-10-03  Tom Tromey  <tom@tromey.com>
2442
2443         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2444         unsigned.
2445
2446 2018-10-03  Tom Tromey  <tom@tromey.com>
2447
2448         * findvar.c (extract_integer): Do work in an unsigned type.
2449
2450 2018-10-03  Tom Tromey  <tom@tromey.com>
2451
2452         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2453         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2454         base type.
2455         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2456         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2457         type.
2458         * c-lang.h (enum c_string_type_values): Use unsigned as base
2459         type.
2460         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2461
2462 2018-10-03  Tom Tromey  <tom@tromey.com>
2463
2464         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2465         <~dwarf2_frame_state_reg_info>: Update.
2466         <dwarf2_frame_state_reg_info>: Update.
2467         <alloc_regs>: Add assertion.  Update.
2468         <reg>: Now a std::vector.
2469         <num_regs>: Remove.
2470         <swap>: Update.
2471         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2472         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2473
2474 2018-10-03  Tom Tromey  <tom@tromey.com>
2475
2476         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2477
2478 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2479
2480         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2481
2482 2018-10-02  Tom Tromey  <tom@tromey.com>
2483
2484         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2485
2486 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2487
2488         * NEWS: Mention changed commands.
2489         * ser-uds.c: New file.
2490         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2491         * configure: Regenerate.
2492         * Makefile.in: Add new file.
2493         * serial.c (serial_open): Check if filename is a socket
2494         and lookup the appropriate interface accordingly.
2495
2496 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2497
2498         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2499         define.
2500         (AARCH64_EXTRA_MAGIC): Likewise.
2501         (AARCH64_FPSIMD_MAGIC): Likewise.
2502         (AARCH64_SVE_MAGIC): Likewise.
2503         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2504         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2505         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2506         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2507         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2508         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2509         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2510         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2511         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2512         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2513         (read_aarch64_ctx): Add function.
2514         (aarch64_linux_sigframe_init): Detect FP registers.
2515
2516 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2517
2518         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2519         (AARCH64_D0_REGNUM): Likewise.
2520         (AARCH64_S0_REGNUM): Likewise.
2521         (AARCH64_H0_REGNUM): Likewise.
2522         (AARCH64_B0_REGNUM): Likewise.
2523         (AARCH64_SVE_V0_REGNUM): Likewise.
2524         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2525         (AARCH64_D0_REGNUM): Likewise.
2526         (AARCH64_S0_REGNUM): Likewise.
2527         (AARCH64_H0_REGNUM): Likewise.
2528         (AARCH64_B0_REGNUM): Likewise.
2529         (AARCH64_SVE_V0_REGNUM): Likewise.
2530
2531 2018-10-01  Gary Benson <gbenson@redhat.com>
2532
2533         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2534         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2535         prfpregset_t instead of gdb_prfpregset_t.
2536         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2537         * configure, config.in: Rebuild.
2538
2539 2018-10-01  Gary Benson <gbenson@redhat.com>
2540
2541         * common/gdb_proc_service.h: New file, factored out from...
2542         * gdb_proc_service.h: Moved common code to the above file.
2543         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2544
2545 2018-10-01  Gary Benson <gbenson@redhat.com>
2546
2547         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2548         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2549
2550 2018-10-01  Gary Benson <gbenson@redhat.com>
2551
2552         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2553         (AC_CHECK_HEADERS): Check for linux/elf.h.
2554         * configure, config.in: Rebuild.
2555         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2556         doesn't define elf_fpregset_t.
2557
2558 2018-10-01  Gary Benson <gbenson@redhat.com>
2559
2560         * gdb_proc_service.h: Whitespace change.
2561
2562 2018-10-01  Tom Tromey  <tom@tromey.com>
2563
2564         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2565         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2566         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2567
2568 2018-10-01  Tom Tromey  <tom@tromey.com>
2569
2570         * README: Minor change.
2571
2572 2018-09-30  Pedro Alves  <palves@redhat.com>
2573
2574         * darwin-nat-info.c (darwin_debug_regions_recurse)
2575         (info_mach_exceptions_command): Remove unused local variables.
2576         * darwin-nat.c (darwin_decode_notify_message)
2577         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2578         (darwin_stop_inferior, darwin_setup_exceptions)
2579         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2580         (darwin_nat_target::attach, darwin_nat_target::detach)
2581         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2582         local variables.
2583         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2584         variables.
2585
2586 2018-09-29  Tom Tromey  <tom@tromey.com>
2587
2588         * README: Remove some leftover text.
2589
2590 2018-09-29  Tom Tromey  <tom@tromey.com>
2591
2592         * PROBLEMS: Rewrite.
2593         * README: Update.
2594
2595 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2596
2597         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2598         case with explicit breakpoint kind.
2599         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2600         'additional_info' and related logic.
2601         (riscv_debug_breakpoints): New variable.
2602         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2603         instruction to determine the breakpoint kind.
2604         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2605         flag.  Update description of 'set/show riscv
2606         use-compressed-breakpoints' flag.
2607
2608 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2609
2610         (NEWS): Mention changes to frame related commands.
2611         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2612         (add_prefix_cmd_suppress_notification): New function.
2613         (add_com_suppress_notification): Call
2614         add_cmd_suppress_notification.
2615         * command.h (add_cmd_suppress_notification): Declare.
2616         (add_prefix_cmd_suppress_notification): Declare.
2617         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2618         (parse_frame_specification): Moved from stack.c, with
2619         simplification to handle a single argument.
2620         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2621         switch to the selected frame.  Add a header comment.
2622         * stack.c: Remove 'safe-ctype.h' include.
2623         (find_frame_for_function): Add declaration.
2624         (find_frame_for_address): New function.
2625         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2626         (frame_selection_by_function_completer): New function.
2627         (info_frame_command): Rename to...
2628         (info_frame_command_core): ...this, and update parameter types.
2629         (select_frame_command): Rename to...
2630         (select_frame_command_core): ...this, and update parameter types.
2631         (frame_command): Rename to...
2632         (frame_command_core): ...this, and update parameter types.
2633         (class frame_command_helper): New class to wrap implementations of
2634         frame related sub-commands.
2635         (frame_apply_cmd_list): New static global.
2636         (frame_cmd_list): Make static.
2637         (select_frame_cmd_list): New global for sub-commands.
2638         (info_frame_cmd_list): New global for sub-commands.
2639         (_initialize_stack): Register sub-commands for 'frame',
2640         'select-frame', and 'info frame'.  Update 'frame apply' commands
2641         to use frame_apply_cmd_list.  Move function local static
2642         frame_apply_list to file static frame_apply_cmd_list for
2643         consistency.
2644         * stack.h (select_frame_command): Delete declarationn.
2645         (select_frame_for_mi): Declare new function.
2646
2647 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2648
2649         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2650         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2651         and NOP.
2652
2653 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2654
2655         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2656
2657 2018-09-26  Tom Tromey  <tom@tromey.com>
2658
2659         * valops.c (auto_abandon): Remove dead code.
2660
2661 2018-09-26  Tom Tromey  <tom@tromey.com>
2662
2663         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2664
2665 2018-09-24  Tom Tromey  <tom@tromey.com>
2666
2667         * common/pathstuff.c (get_standard_cache_dir): Make
2668         "xdg_cache_home" and "home" const.
2669         * top.c (init_history): Make "tmpenv" const.
2670         * main.c (get_init_files): Make "homedir" const.
2671
2672 2018-09-23  Tom Tromey  <tom@tromey.com>
2673
2674         PR python/18852:
2675         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2676
2677 2018-09-23  Tom Tromey  <tom@tromey.com>
2678
2679         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2680         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2681         * python/python-internal.h (gdbpy_handle_exception): Declare.
2682         * python/py-utils.c (gdbpy_handle_exception): New function.
2683
2684 2018-09-23  Tom Tromey  <tom@tromey.com>
2685
2686         PR python/17284:
2687         * python/py-type.c (typy_template_argument): Check for negative
2688         argument number.
2689
2690 2018-09-23  Tom Tromey  <tom@tromey.com>
2691
2692         PR python/14062:
2693         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2694
2695 2018-09-23  Tom Tromey  <tom@tromey.com>
2696
2697         PR python/18170:
2698         * python/py-value.c (valpy_int): Allow conversion from pointer
2699         type.
2700
2701 2018-09-23  Tom Tromey  <tom@tromey.com>
2702
2703         PR python/20126:
2704         * python/py-value.c (valpy_int): Respect type sign.
2705
2706 2018-09-23  Tom Tromey  <tom@tromey.com>
2707
2708         PR python/18352;
2709         * python/py-value.c (valpy_float): Allow conversions from int or
2710         char.
2711         (valpy_int, valpy_long): Allow conversions from float.
2712
2713 2018-09-23  Tom Tromey  <tom@tromey.com>
2714
2715         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2716         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2717
2718 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2719
2720         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2721         __sighndlr.
2722         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2723
2724 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2725
2726         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2727         target_terminal::ours().
2728
2729 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2730
2731         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2732         of vl to ULONGEST.
2733
2734 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2735
2736         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2737         redundant condition.
2738
2739 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2740
2741         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2742
2743         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2744         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2745         * sol-thread.c (ps_pdmodel): Don't guard definition.
2746
2747         * procfs.c: Fix formatting.
2748
2749         * procfs.c (sysset_t_alloc): Remove.
2750         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2751         (procfs_debug_inferior): Likewise.
2752         (procfs_set_exec_trap): Likewise.
2753         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2754         (proc_set_traced_sysexit): Likewise.
2755
2756         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2757         (dead_procinfo): Likewise.
2758         (proc_warn): Likewise.
2759         (proc_error): Likewise.
2760         (proc_get_LDT_entry): Likewise.
2761         (do_attach): Likewise.
2762         (procfs_target::pid_to_str): Likewise.
2763         (iterate_over_mappings): Likewise.
2764
2765         * procfs.c (create_procinfo): Fix ARI warning.
2766         (proc_get_status): Likewise.
2767         (proc_stop_process): Likewise.
2768         (proc_run_process): Likewise.
2769         (proc_kill): Likewise.
2770         (proc_get_LDT_entry): Likewise.
2771         (procfs_find_LDT_entry): Likewise.
2772         (proc_update_threads): Likewise.
2773         (proc_iterate_over_threads): Likewise.
2774         (do_attach): Likewise.
2775         (procfs_xfer_memory): Likewise.
2776         (invalidate_cache): Likewise.
2777         (procfs_target::resume): Likewise.
2778         (procfs_init_inferior): Likewise.
2779         (procfs_set_exec_trap): Likewise.
2780         (procfs_target::thread_alive): Likewise.
2781         (procfs_target::pid_to_exec_file): Likewise.
2782         (iterate_over_mappings): Likewise.
2783         (procfs_target::make_corefile_notes): Likewise.
2784         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2785
2786         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2787         (procfs_find_LDT_entry): Likewise.
2788         * sol-thread.c (ps_lgetLDT): Likewise.
2789
2790 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2791
2792         PR tdep/17903
2793         * procfs.c (procfs_target): Declare pid_to_exec_file.
2794         (procfs_target::pid_to_exec_file): New.
2795
2796 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2797
2798         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2799         renaming.
2800         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2801         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2802
2803 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2804
2805         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2806         (supply_fpregset, fill_fpregset): Move ...
2807         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2808         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2809         Remove references to ioctl-based procfs.
2810         Include <sys/reg.h>.
2811         Remove PR_MODEL_NATIVE guards.
2812         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2813         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2814
2815 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2816
2817         PR gdb/20981:
2818         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2819         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2820         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2821
2822 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2823
2824         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2825         (fbsd_print_sockaddr_in6): Likewise.
2826
2827 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2828             Chris January  <chris.january@arm.com>
2829
2830         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2831         (evaluate_subexp_standard): Return a dummy type when
2832         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2833         OP_F77_UNDETERMINED_ARGLIST case.
2834         * expression.h (enum noside): Update comment.
2835
2836 2018-09-19  George Vasick <george.vasick@oracle.com>
2837
2838         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2839
2840 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2841             April Chin <april.chin@oracle.com>
2842             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2843
2844         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2845         uint_t lwpid_t.
2846         (create_procinfo): Print pids in /proc without leading zeros.
2847
2848 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2849
2850         * nios2-tdep.c (nios2_gcc_target_options): New.
2851         (nios2_gdb_arch_init): Install new hook.
2852
2853 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2854
2855         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2856         New file.
2857         * update-gnulib.sh: Apply patch.
2858         * configure: Re-generate.
2859
2860 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2861
2862         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2863         description.  Make "info proc" command descriptions more
2864         consistent.
2865
2866 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2867
2868         * NEWS: Mention 'info proc files' command.
2869
2870 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2871
2872         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2873         descriptors for IP_FILES and IP_ALL.
2874
2875 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2876
2877         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2878         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2879         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2880         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2881         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2882         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2883         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2884         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2885         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2886         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2887         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2888         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2889         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2890         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2891         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2892         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2893         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2894         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2895         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2896         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2897         (struct fbsd_sockaddr_un): New types.
2898         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2899         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2900         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2901         (fbsd_core_info_proc_files): New functions.
2902         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2903         IP_ALL.
2904         * fbsd-tdep.h (fbsd_info_proc_files_header)
2905         (fbsd_info_proc_files_entry): New.
2906
2907 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2908
2909         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2910         * infcmd.c (info_proc_cmd_files): New function.
2911         (_initialize_infcmd): Register 'info proc files' command.
2912
2913 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2914
2915         * gnulib/aclocal-m4-deps.mk: Re-generate.
2916         * gnulib/aclocal.m4: Re-generate.
2917         * gnulib/config.in: Re-generate.
2918         * gnulib/configure: Re-generate.
2919         * gnulib/import/Makefile.am: Re-generate.
2920         * gnulib/import/Makefile.in: Re-generate.
2921         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2922         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2923         * gnulib/import/arpa_inet.in.h: New file.
2924         * gnulib/import/inet_ntop.c: New file.
2925         * gnulib/import/m4/arpa_inet_h.m4: New file.
2926         * gnulib/import/m4/inet_ntop.m4: New file.
2927         * gnulib/import/m4/netinet_in_h.m4: New file.
2928         * gnulib/import/m4/socklen.m4: New file.
2929         * gnulib/import/m4/sockpfaf.m4: New file.
2930         * gnulib/import/m4/stdalign.m4: New file.
2931         * gnulib/import/m4/sys_uio_h.m4: New file.
2932         * gnulib/import/netinet_in.in.h: New file.
2933         * gnulib/import/stdalign.in.h: New file.
2934         * gnulib/import/sys_socket.c: New file.
2935         * gnulib/import/sys_socket.in.h: New file.
2936         * gnulib/import/sys_uio.in.h: New file.
2937         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2938         module.
2939
2940 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2941
2942         * gnulib/aclocal-m4-deps.mk: New file.
2943         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2944         deterministically.
2945
2946 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2947
2948         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2949         KVE_PATH.
2950
2951 2018-09-18  Tom Tromey  <tom@tromey.com>
2952
2953         * compile/compile-object-load.c (struct
2954         link_hash_table_cleanup_data): Add constructor and destructor.
2955         Use DISABLE_COPY_AND_ASSIGN.
2956         (~link_hash_table_cleanup_data): Rename from
2957         link_hash_table_free.  Now a destructor.
2958         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2959
2960 2018-09-18  Tom Tromey  <tom@tromey.com>
2961
2962         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2963         * compile/compile-object-load.c (struct munmap_list): Move to
2964         header file.
2965         (munmap_list::add): Rename from munmap_list_add; rewrite.
2966         (munmap_list::~munmap_list): Rename from munmap_list_free.
2967         (munmap_listp_free_cleanup): Remove.
2968         (compile_object_load): Update.
2969         * compile/compile-object-load.h (struct munmap_list): Move from
2970         compile-object-load.c.  Rewrite.
2971
2972 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2973
2974         * aarch64-tdep.c (pass_in_v): Use register size.
2975         (aarch64_extract_return_value): Likewise.
2976         (aarch64_store_return_value): Likewise.
2977
2978 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2979
2980         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2981         rlim_t.
2982
2983 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2984
2985         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2986         Fix short help line.
2987
2988 2018-09-17  Tom Tromey  <tom@tromey.com>
2989
2990         PR python/20445:
2991         * configure: Rebuild.
2992         * configure.ac: Conditionally use -DNDEBUG for Python.
2993
2994 2018-09-17  Tom Tromey  <tom@tromey.com>
2995
2996         * configure: Rebuild.
2997         * configure.ac: Use gmp as a library dependency when checking for
2998         mpfr.
2999
3000 2018-09-17  Pedro Alves  <palves@redhat.com>
3001
3002         * python/py-inferior.c (find_inferior_object): Delete.
3003
3004 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
3005
3006         * compile/compile-cplus-types.c
3007         (compile_cplus_instance::enter_scope): Don't use new_scope after
3008         std::move.
3009
3010 2018-09-17  Tom Tromey  <tom@tromey.com>
3011
3012         * common/pathstuff.c (get_standard_cache_dir): Use
3013         ~/Library/Caches on macOS.
3014         * common/pathstuff.h (get_standard_cache_dir): Update comment.
3015
3016 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
3017
3018         PR python/23669
3019         * breakpoint.c (commands_cmd_element): New.
3020         (_initialize_breakpoint): Assign commands_cmd_element.
3021         * breakpoint.h (commands_cmd_element): New.
3022         * cli/cli-script.c (while_cmd_element, if_command,
3023         define_cmd_element): New.
3024         (command_name_equals): Remove.
3025         (process_next_line): Compare commands by pointer, not by name.
3026         (_initialize_cli_script): Assign the various cmd_list_element
3027         variables.
3028         * compile/compile.c (compile_cmd_element): New.
3029         (_initialize_compile): Assign compile_cmd_element.
3030         * compile/compile.h (compile_cmd_element): New.
3031         * guile/guile.c (guile_cmd_element): New.
3032         (install_gdb_commands): Assign guile_cmd_element.
3033         * guile/guile.h (guile_cmd_element): New.
3034         * python/python.c (python_cmd_element): New.
3035         (_initialize_python): Assign python_cmd_element.
3036         * python/python.h (python_cmd_element): New.
3037         * tracepoint.c (while_stepping_cmd_element): New.
3038         (_initialize_tracepoint): Assign while_stepping_cmd_element.
3039         * tracepoint.h (while_stepping_cmd_element): New.
3040
3041 2018-09-17  Tom Tromey  <tom@tromey.com>
3042
3043         * infrun.c (save_infcall_suspend_state): Return
3044         infcall_suspend_state_up.
3045         (save_infcall_control_state): Return infcall_control_state_up.
3046         * inferior.h (save_infcall_suspend_state)
3047         (save_infcall_control_state): Declare later.  Return unique
3048         pointers.
3049
3050 2018-09-17  Tom Tromey  <tom@tromey.com>
3051
3052         * infrun.c (struct stop_context): Declare constructor,
3053         destructor, "changed" method.
3054         (stop_context::stop_context): Rename from save_stop_context.
3055         (stop_context::~stop_context): Rename from
3056         release_stop_context_cleanup.
3057         (normal_stop): Update.
3058         (stop_context::changed): Rename from stop_context_changed.  Return
3059         bool.
3060
3061 2018-09-17  Tom Tromey  <tom@tromey.com>
3062
3063         * inferior.h (struct infcall_suspend_state_deleter): New.
3064         (infcall_suspend_state_up): New typedef.
3065         (struct infcall_control_state_deleter): New.
3066         (infcall_control_state_up): New typedef.
3067         (make_cleanup_restore_infcall_suspend_state)
3068         (make_cleanup_restore_infcall_control_state): Don't declare.
3069         * infcall.c (call_function_by_hand_dummy): Update.
3070         * infrun.c (do_restore_infcall_suspend_state_cleanup)
3071         (make_cleanup_restore_infcall_suspend_state): Remove.
3072         (do_restore_infcall_control_state_cleanup)
3073         (make_cleanup_restore_infcall_control_state): Remove.
3074
3075 2018-09-17  Tom Tromey  <tom@tromey.com>
3076
3077         * gdbthread.h (struct thread_control_state): Add initializer.
3078         (class thread_info) <control>: Remove initializer.
3079         * inferior.h (struct inferior_control_state): Add initializer.
3080         (class inferior) <control>: Remove initializer.
3081         (exit_inferior_1): Update.
3082         * infrun.c (struct infcall_control_state): Add constructors.
3083         (save_infcall_control_state): Use new.
3084         (restore_infcall_control_state, discard_infcall_control_state):
3085         Use delete.
3086
3087 2018-09-17  Tom Tromey  <tom@tromey.com>
3088
3089         * infrun.c (struct infcall_suspend_state) <registers>: Now a
3090         unique_ptr.
3091         <siginfo_data>: Now a unique_xmalloc_ptr.
3092         (save_infcall_suspend_state, restore_infcall_suspend_state)
3093         (discard_infcall_suspend_state)
3094         (get_infcall_suspend_state_regcache): Update.
3095
3096 2018-09-17  Tom Tromey  <tom@tromey.com>
3097
3098         * gdbthread.h (struct thread_suspend_state): Add initializers.
3099         (class thread_info) <suspend>: Remove initializer.
3100         * infrun.c (struct infcall_suspend_state): Add initializers.
3101         (save_infcall_suspend_state): Use new.
3102         (discard_infcall_suspend_state): Use delete.
3103
3104 2018-09-16  Tom Tromey  <tom@tromey.com>
3105
3106         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
3107         Remove.
3108         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
3109         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
3110         (py_varobj_iter_new): Likewise.
3111         (py_varobj_get_iterator): Use gdbpy_ref.
3112
3113 2018-09-16  Tom Tromey  <tom@tromey.com>
3114
3115         * python/py-threadevent.c (py_get_event_thread): Simplify.
3116         * python/py-inferior.c (infpy_thread_from_thread_handle):
3117         Return immediately after calling thread_to_thread_object.  Use
3118         Py_RETURN_NONE.
3119         (thread_to_thread_object): Set the exception on a NULL return.
3120
3121 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
3122
3123         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
3124
3125 2018-09-16  Tom Tromey  <tom@tromey.com>
3126
3127         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
3128         Remove.
3129
3130 2018-09-16  Tom Tromey  <tom@tromey.com>
3131
3132         * python/python-internal.h (thread_to_thread_object): Change
3133         return type.
3134         * python/py-inferior.c (thread_to_thread_object): Return a new
3135         reference.
3136         (infpy_thread_from_thread_handle): Update.
3137         * python/py-infthread.c (gdbpy_selected_thread): Update.
3138         * python/py-stopevent.c (create_stop_event_object): Update.
3139         * python/py-threadevent.c (py_get_event_thread): Return a new
3140         reference.
3141         (py_get_event_thread): Update.
3142         * python/py-event.h (py_get_event_thread): Change return type.
3143         * python/py-continueevent.c (create_continue_event_object):
3144         Update.
3145
3146 2018-09-16  Tom Tromey  <tom@tromey.com>
3147
3148         * python/py-progspace.c (pspy_get_objfiles): Update.
3149         * python/python-internal.h (objfile_to_objfile_object): Change
3150         return type.
3151         * python/py-newobjfileevent.c (create_new_objfile_event_object):
3152         Update.
3153         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3154         Update.
3155         * python/python.c (gdbpy_get_current_objfile): Update.
3156         (gdbpy_objfiles): Update.
3157         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3158         Update.
3159         (objfile_to_objfile_object): Return a new reference.
3160         * python/py-symtab.c (stpy_get_objfile): Update.
3161         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3162         Update.
3163
3164 2018-09-16  Tom Tromey  <tom@tromey.com>
3165
3166         * python/py-inferior.c (infpy_get_progspace): Update.
3167         * python/python-internal.h (pspace_to_pspace_object): Change
3168         return type.
3169         * python/py-newobjfileevent.c
3170         (create_clear_objfiles_event_object): Update.
3171         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3172         Update.
3173         * python/python.c (gdbpy_get_current_progspace): Update.
3174         (gdbpy_progspaces): Update.
3175         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3176         reference.
3177         * python/py-objfile.c (objfpy_get_progspace): Update.
3178         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3179         Update.
3180
3181 2018-09-16  Tom Tromey  <tom@tromey.com>
3182
3183         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3184         (solib_name, block_for_pc, find_pc_line): New functions.
3185         (execute_unwinders): Update.
3186         * python/py-block.c (gdbpy_block_for_pc): Remove.
3187         * python/py-inferior.c (infpy_get_progspace): New function.
3188         (inferior_object_getset) <progspace>: Add.
3189         * python/py-progspace.c (pspy_objfiles): Rewrite.
3190         (pspy_solib_name, pspy_block_for_pc)
3191         (pspy_find_pc_line, pspy_is_valid): New functions.
3192         (progspace_object_methods): Add entries for solib_name,
3193         block_for_pc, find_pc_line, is_valid.
3194         * python/python-internal.h (gdbpy_block_for_pc)
3195         (build_objfiles_list): Don't declare.
3196         * python/python.c: Don't include solib.h.
3197         (gdbpy_solib_name, gdbpy_find_pc_line)
3198         (gdbpy_get_current_progspace, build_objfiles_list)
3199         (gdbpy_objfiles): Remove.
3200         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3201         solib_name, find_pc_line>: Remove entries.
3202
3203 2018-09-16  Tom Tromey  <tom@tromey.com>
3204
3205         * top.c (new_ui_command): Use GNU style for metasyntactic
3206         variables.
3207         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3208         variables.
3209         * maint.c (maintenance_translate_address): Remove "<>" around
3210         text.
3211         * interps.c (interpreter_exec_cmd): Use GNU style for
3212         metasyntactic variables.
3213         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3214         metasyntactic variables.
3215         * tracepoint.c (tfind_range_command): Use GNU style for
3216         metasyntactic variables.
3217         (tfind_outside_command): Likewise.
3218         (_initialize_tracepoint): Likewise.
3219         * remote.c (extended_remote_target::create_inferior): Use GNU
3220         style for metasyntactic variables.
3221         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3222         metasyntactic variables.
3223         (adi_assign_command): Likewise.
3224
3225 2018-09-16  Tom Tromey  <tom@tromey.com>
3226
3227         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3228         metasyntactic variables.  Print message if no disassembler options
3229         are available.
3230
3231 2018-09-15  Tom Tromey  <tom@tromey.com>
3232
3233         * infcmd.c (get_inferior_args): Return const char *.
3234         * inferior.h (get_inferior_args): Return type now const.
3235         * linux-tdep.c (linux_fill_prpsinfo): Update.
3236         * procfs.c (procfs_target::make_corefile_notes): Update.
3237
3238 2018-09-07  Tom Tromey  <tom@tromey.com>
3239
3240         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3241         inside the TRY.
3242
3243 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3244
3245         * nios2-tdep.c (nios2_type_align): New.
3246         (nios2_gdb_arch_init): Install type_align hook.
3247
3248 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3249
3250         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3251         type that is neither object file owned, nor gdbarch owned.
3252         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3253         gdbarch is non-NULL.
3254         (alloc_type_instance): Allocate non-objfile owned types on the
3255         gdbarch obstack.
3256         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3257         using TYPE_ALLOC to ensure memory is allocated on the correct
3258         obstack.
3259         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3260         obstack, or the gdbarch obstack.
3261         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3262
3263 2018-09-14  Tom Tromey  <tom@tromey.com>
3264
3265         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3266         block.
3267
3268 2018-09-14  Tom Tromey  <tom@tromey.com>
3269
3270         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3271
3272 2018-09-13  Tom Tromey  <tom@tromey.com>
3273
3274         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3275         static.
3276
3277 2018-09-13  Tom Tromey  <tom@tromey.com>
3278
3279         * exec.c (try_open_exec_file): Use std::string.
3280
3281 2018-09-13  Tom Tromey  <tom@tromey.com>
3282
3283         * utils.h (gdb_bfd_errmsg): Return std::string.
3284         * exec.c (exec_file_attach): Update.
3285         * compile/compile-object-load.c (compile_object_load): Update.
3286         * utils.c (gdb_bfd_errmsg): Return std::string.
3287
3288 2018-09-13  Tom Tromey  <tom@tromey.com>
3289
3290         * procfs.c (struct procinfo_deleter): New.
3291         (procinfo_up): New typedef.
3292         (do_destroy_procinfo_cleanup): Remove.
3293         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3294
3295 2018-09-13  Tom Tromey  <tom@tromey.com>
3296
3297         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3298
3299 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3300 2018-09-13  Tom Tromey  <tom@tromey.com>
3301
3302         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3303         (pspy_get_objfiles): New function.
3304         (progspace_object_methods): New.
3305         (pspace_object_type): Add tp_methods callback.
3306         * python/python-internal.h (build_objfiles_list): New
3307         declaration.
3308         * python/python.c (build_objfiles_list): New function.
3309         (gdbpy_objfiles): Implement using build_objfiles_list.
3310         * NEWS: Mention the Progspace.objfiles method.
3311
3312 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3313
3314         * python/py-inferior.c (infpy_get_progspace): New function.
3315         (inferior_object_getset): Add progspace property.
3316         * NEWS: Mention the new property.
3317
3318 2018-09-13  Tom Tromey  <tom@tromey.com>
3319
3320         PR rust/23650:
3321         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3322
3323 2018-09-13  Tom Tromey  <tom@tromey.com>
3324
3325         PR rust/23626:
3326         * rust-lang.c (rust_enum_variant): Now static.
3327         (rust_empty_enum_p): New function.
3328         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3329         Handle empty enum.
3330
3331 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3332
3333         * python/py-inferior.c (infpy_repr): New.
3334         (inferior_object_type): Register infpy_repr.
3335         * python/py-objfile.c (objfpy_repr): New.
3336         (objfile_object_type): Register objfpy_repr.
3337
3338 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3339
3340         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3341
3342 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3343
3344         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3345         typo.
3346
3347 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3348
3349         * common/common-utils.c: Don't include '<sys/stat.h>'.
3350         (is_regular_file): Move to...
3351         * common/filestuff.c (is_regular_file): ... here.
3352         * common/common-utils.h (is_regular_file): Move to...
3353         * common/filestuff.h (is_regular_file): ... here.
3354
3355 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3356
3357         * skip.c (debug_skip): New variable.
3358         (skiplist_entry::do_skip_file_p): Add debug output.
3359         (skiplist_entry::do_skip_gfile_p): Likewise.
3360         (skiplist_entry::skip_function_p): Likewise.
3361         (_initialize_step_skip): Create debug command.
3362         * NEWS: Mention set/show debug skip.
3363
3364 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3365
3366         * darwin-nat.c (should_disable_startup_with_shell):
3367         New function.
3368         (darwin_nat_target::create_inferior): Add call.
3369
3370 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3371
3372         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3373         inf_port, msg_state>: Initialize.
3374         (struct darwin_thread_info) <signaled, single_step>: Change
3375         type and initialize.
3376         (struct darwin_thread_info) <event>: Initialize.
3377
3378 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3379
3380         PR gdb/23555
3381         PR gdb/23558
3382         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3383         guesses.
3384
3385 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3386
3387         Revert:
3388         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3389
3390         PR gdb/23555
3391         PR gdb/23558
3392         * gnulib/aclocal.m4: Regenerate.
3393         * gnulib/config.in: Regenerate.
3394         * gnulib/configure: Regenerate.
3395         * gnulib/import/Makefile.am: Update.
3396         * gnulib/import/Makefile.in: Update.
3397         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3398         * gnulib/import/_Noreturn.h: ... this.
3399         * gnulib/import/alloca.in.h: Update.
3400         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3401         * gnulib/import/arg-nonnull.h: ... this.
3402         * gnulib/import/assure.h: Update.
3403         * gnulib/import/at-func.c: Update.
3404         * gnulib/import/basename-lgpl.c: Update.
3405         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3406         * gnulib/import/c++defs.h: ... this.
3407         * gnulib/import/canonicalize-lgpl.c: Update.
3408         * gnulib/import/cdefs.h: Update.
3409         * gnulib/import/chdir-long.c: Update.
3410         * gnulib/import/chdir-long.h: Update.
3411         * gnulib/import/cloexec.c: Update.
3412         * gnulib/import/cloexec.h: Update.
3413         * gnulib/import/close.c: Update.
3414         * gnulib/import/closedir.c: Update.
3415         * gnulib/import/config.charset: Update.
3416         * gnulib/import/dirent-private.h: Update.
3417         * gnulib/import/dirent.in.h: Update.
3418         * gnulib/import/dirfd.c: Update.
3419         * gnulib/import/dirname-lgpl.c: Update.
3420         * gnulib/import/dirname.h: Update.
3421         * gnulib/import/dosname.h: Update.
3422         * gnulib/import/dup-safer-flag.c: Update.
3423         * gnulib/import/dup-safer.c: Update.
3424         * gnulib/import/dup.c: Update.
3425         * gnulib/import/dup2.c: Update.
3426         * gnulib/import/errno.in.h: Update.
3427         * gnulib/import/error.c: Update.
3428         * gnulib/import/error.h: Update.
3429         * gnulib/import/exitfail.c: Update.
3430         * gnulib/import/exitfail.h: Update.
3431         * gnulib/import/extra/update-copyright: Update.
3432         * gnulib/import/fchdir.c: Update.
3433         * gnulib/import/fcntl.c: Update.
3434         * gnulib/import/fcntl.in.h: Update.
3435         * gnulib/import/fd-hook.c: Update.
3436         * gnulib/import/fd-hook.h: Update.
3437         * gnulib/import/fd-safer-flag.c: Update.
3438         * gnulib/import/fd-safer.c: Update.
3439         * gnulib/import/fdopendir.c: Update.
3440         * gnulib/import/filename.h: Update.
3441         * gnulib/import/filenamecat-lgpl.c: Update.
3442         * gnulib/import/filenamecat.h: Update.
3443         * gnulib/import/flexmember.h: Update.
3444         * gnulib/import/float+.h: Update.
3445         * gnulib/import/float.c: Update.
3446         * gnulib/import/float.in.h: Update.
3447         * gnulib/import/fnmatch.c: Update.
3448         * gnulib/import/fnmatch.in.h: Update.
3449         * gnulib/import/fnmatch_loop.c: Update.
3450         * gnulib/import/fpucw.h: Update.
3451         * gnulib/import/frexp.c: Update.
3452         * gnulib/import/frexpl.c: Update.
3453         * gnulib/import/fstat.c: Update.
3454         * gnulib/import/fstatat.c: Update.
3455         * gnulib/import/getcwd-lgpl.c: Update.
3456         * gnulib/import/getcwd.c: Update.
3457         * gnulib/import/getdtablesize.c: Update.
3458         * gnulib/import/getlogin_r.c: Update.
3459         * gnulib/import/getprogname.c: Update.
3460         * gnulib/import/getprogname.h: Update.
3461         * gnulib/import/gettext.h: Update.
3462         * gnulib/import/gettimeofday.c: Update.
3463         * gnulib/import/glob-libc.h: Update.
3464         * gnulib/import/glob.c: Update.
3465         * gnulib/import/glob.in.h: Update.
3466         * gnulib/import/glob_internal.h: Update.
3467         * gnulib/import/glob_pattern_p.c: Update.
3468         * gnulib/import/globfree.c: Update.
3469         * gnulib/import/hard-locale.c: Update.
3470         * gnulib/import/hard-locale.h: Update.
3471         * gnulib/import/intprops.h: Update.
3472         * gnulib/import/inttypes.in.h: Update.
3473         * gnulib/import/isnan.c: Update.
3474         * gnulib/import/isnand-nolibm.h: Update.
3475         * gnulib/import/isnand.c: Update.
3476         * gnulib/import/isnanl-nolibm.h: Update.
3477         * gnulib/import/isnanl.c: Update.
3478         * gnulib/import/itold.c: Update.
3479         * gnulib/import/libc-config.h: Update.
3480         * gnulib/import/limits.in.h: Update.
3481         * gnulib/import/localcharset.c: Update.
3482         * gnulib/import/localcharset.h: Update.
3483         * gnulib/import/localtime-buffer.c: Update.
3484         * gnulib/import/localtime-buffer.h: Update.
3485         * gnulib/import/lstat.c: Update.
3486         * gnulib/import/m4/00gnulib.m4: Update.
3487         * gnulib/import/m4/__inline.m4: Update.
3488         * gnulib/import/m4/absolute-header.m4: Update.
3489         * gnulib/import/m4/alloca.m4: Update.
3490         * gnulib/import/m4/builtin-expect.m4: Update.
3491         * gnulib/import/m4/canonicalize.m4: Update.
3492         * gnulib/import/m4/chdir-long.m4: Update.
3493         * gnulib/import/m4/close.m4: Update.
3494         * gnulib/import/m4/closedir.m4: Update.
3495         * gnulib/import/m4/configmake.m4: Update.
3496         * gnulib/import/m4/d-ino.m4: Update.
3497         * gnulib/import/m4/d-type.m4: Update.
3498         * gnulib/import/m4/dirent_h.m4: Update.
3499         * gnulib/import/m4/dirfd.m4: Update.
3500         * gnulib/import/m4/dirname.m4: Update.
3501         * gnulib/import/m4/double-slash-root.m4: Update.
3502         * gnulib/import/m4/dup.m4: Update.
3503         * gnulib/import/m4/dup2.m4: Update.
3504         * gnulib/import/m4/eealloc.m4: Update.
3505         * gnulib/import/m4/environ.m4: Update.
3506         * gnulib/import/m4/errno_h.m4: Update.
3507         * gnulib/import/m4/error.m4: Update.
3508         * gnulib/import/m4/exponentd.m4: Update.
3509         * gnulib/import/m4/exponentl.m4: Update.
3510         * gnulib/import/m4/extensions.m4: Update.
3511         * gnulib/import/m4/extern-inline.m4: Update.
3512         * gnulib/import/m4/fchdir.m4: Update.
3513         * gnulib/import/m4/fcntl-o.m4: Update.
3514         * gnulib/import/m4/fcntl.m4: Update.
3515         * gnulib/import/m4/fcntl_h.m4: Update.
3516         * gnulib/import/m4/fdopendir.m4: Update.
3517         * gnulib/import/m4/filenamecat.m4: Update.
3518         * gnulib/import/m4/flexmember.m4: Update.
3519         * gnulib/import/m4/float_h.m4: Update.
3520         * gnulib/import/m4/fnmatch.m4: Update.
3521         * gnulib/import/m4/fnmatch_h.m4: Update.
3522         * gnulib/import/m4/fpieee.m4: Update.
3523         * gnulib/import/m4/frexp.m4: Update.
3524         * gnulib/import/m4/frexpl.m4: Update.
3525         * gnulib/import/m4/fstat.m4: Update.
3526         * gnulib/import/m4/fstatat.m4: Update.
3527         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3528         * gnulib/import/m4/getcwd-path-max.m4: Update.
3529         * gnulib/import/m4/getcwd.m4: Update.
3530         * gnulib/import/m4/getdtablesize.m4: Update.
3531         * gnulib/import/m4/getlogin.m4: Update.
3532         * gnulib/import/m4/getlogin_r.m4: Update.
3533         * gnulib/import/m4/getpagesize.m4: Update.
3534         * gnulib/import/m4/getprogname.m4: Update.
3535         * gnulib/import/m4/gettimeofday.m4: Update.
3536         * gnulib/import/m4/glibc21.m4: Update.
3537         * gnulib/import/m4/glob.m4: Update.
3538         * gnulib/import/m4/glob_h.m4: Update.
3539         * gnulib/import/m4/gnulib-cache.m4: Update.
3540         * gnulib/import/m4/gnulib-common.m4: Update.
3541         * gnulib/import/m4/gnulib-comp.m4: Update.
3542         * gnulib/import/m4/gnulib-tool.m4: Update.
3543         * gnulib/import/m4/hard-locale.m4: Update.
3544         * gnulib/import/m4/include_next.m4: Update.
3545         * gnulib/import/m4/inttypes-pri.m4: Update.
3546         * gnulib/import/m4/inttypes.m4: Update.
3547         * gnulib/import/m4/isnand.m4: Update.
3548         * gnulib/import/m4/isnanl.m4: Update.
3549         * gnulib/import/m4/largefile.m4: Update.
3550         * gnulib/import/m4/limits-h.m4: Update.
3551         * gnulib/import/m4/localcharset.m4: Update.
3552         * gnulib/import/m4/locale-fr.m4: Update.
3553         * gnulib/import/m4/locale-ja.m4: Update.
3554         * gnulib/import/m4/locale-zh.m4: Update.
3555         * gnulib/import/m4/localtime-buffer.m4: Update.
3556         * gnulib/import/m4/longlong.m4: Update.
3557         * gnulib/import/m4/lstat.m4: Update.
3558         * gnulib/import/m4/malloc.m4: Update.
3559         * gnulib/import/m4/malloca.m4: Update.
3560         * gnulib/import/m4/math_h.m4: Update.
3561         * gnulib/import/m4/mbrtowc.m4: Update.
3562         * gnulib/import/m4/mbsinit.m4: Update.
3563         * gnulib/import/m4/mbsrtowcs.m4: Update.
3564         * gnulib/import/m4/mbstate_t.m4: Update.
3565         * gnulib/import/m4/memchr.m4: Update.
3566         * gnulib/import/m4/memmem.m4: Update.
3567         * gnulib/import/m4/mempcpy.m4: Update.
3568         * gnulib/import/m4/memrchr.m4: Update.
3569         * gnulib/import/m4/mkdir.m4: Update.
3570         * gnulib/import/m4/mkstemp.m4: Update.
3571         * gnulib/import/m4/mmap-anon.m4: Update.
3572         * gnulib/import/m4/mode_t.m4: Update.
3573         * gnulib/import/m4/msvc-inval.m4: Update.
3574         * gnulib/import/m4/msvc-nothrow.m4: Update.
3575         * gnulib/import/m4/multiarch.m4: Update.
3576         * gnulib/import/m4/nocrash.m4: Update.
3577         * gnulib/import/m4/off_t.m4: Update.
3578         * gnulib/import/m4/onceonly.m4: Update.
3579         * gnulib/import/m4/open-cloexec.m4: Update.
3580         * gnulib/import/m4/open.m4: Update.
3581         * gnulib/import/m4/openat.m4: Update.
3582         * gnulib/import/m4/opendir.m4: Update.
3583         * gnulib/import/m4/pathmax.m4: Update.
3584         * gnulib/import/m4/rawmemchr.m4: Update.
3585         * gnulib/import/m4/readdir.m4: Update.
3586         * gnulib/import/m4/readlink.m4: Update.
3587         * gnulib/import/m4/realloc.m4: Update.
3588         * gnulib/import/m4/rename.m4: Update.
3589         * gnulib/import/m4/rewinddir.m4: Update.
3590         * gnulib/import/m4/rmdir.m4: Update.
3591         * gnulib/import/m4/save-cwd.m4: Update.
3592         * gnulib/import/m4/secure_getenv.m4: Update.
3593         * gnulib/import/m4/setenv.m4: Update.
3594         * gnulib/import/m4/signal_h.m4: Update.
3595         * gnulib/import/m4/ssize_t.m4: Update.
3596         * gnulib/import/m4/stat-time.m4: Update.
3597         * gnulib/import/m4/stat.m4: Update.
3598         * gnulib/import/m4/std-gnu11.m4: Update.
3599         * gnulib/import/m4/stdbool.m4: Update.
3600         * gnulib/import/m4/stddef_h.m4: Update.
3601         * gnulib/import/m4/stdint.m4: Update.
3602         * gnulib/import/m4/stdio_h.m4: Update.
3603         * gnulib/import/m4/stdlib_h.m4: Update.
3604         * gnulib/import/m4/strchrnul.m4: Update.
3605         * gnulib/import/m4/strdup.m4: Update.
3606         * gnulib/import/m4/strerror.m4: Update.
3607         * gnulib/import/m4/string_h.m4: Update.
3608         * gnulib/import/m4/strstr.m4: Update.
3609         * gnulib/import/m4/strtok_r.m4: Update.
3610         * gnulib/import/m4/sys_socket_h.m4: Update.
3611         * gnulib/import/m4/sys_stat_h.m4: Update.
3612         * gnulib/import/m4/sys_time_h.m4: Update.
3613         * gnulib/import/m4/sys_types_h.m4: Update.
3614         * gnulib/import/m4/tempname.m4: Update.
3615         * gnulib/import/m4/time_h.m4: Update.
3616         * gnulib/import/m4/unistd-safer.m4: Update.
3617         * gnulib/import/m4/unistd_h.m4: Update.
3618         * gnulib/import/m4/warn-on-use.m4: Update.
3619         * gnulib/import/m4/wchar_h.m4: Update.
3620         * gnulib/import/m4/wchar_t.m4: Update.
3621         * gnulib/import/m4/wctype_h.m4: Update.
3622         * gnulib/import/m4/wint_t.m4: Update.
3623         * gnulib/import/malloc.c: Update.
3624         * gnulib/import/malloc/scratch_buffer.h: Update.
3625         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3626         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3627         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3628         * gnulib/import/malloca.c: Update.
3629         * gnulib/import/malloca.h: Update.
3630         * gnulib/import/malloca.valgrind: Update.
3631         * gnulib/import/math.in.h: Update.
3632         * gnulib/import/mbrtowc.c: Update.
3633         * gnulib/import/mbsinit.c: Update.
3634         * gnulib/import/mbsrtowcs-impl.h: Update.
3635         * gnulib/import/mbsrtowcs-state.c: Update.
3636         * gnulib/import/mbsrtowcs.c: Update.
3637         * gnulib/import/memchr.c: Update.
3638         * gnulib/import/memmem.c: Update.
3639         * gnulib/import/mempcpy.c: Update.
3640         * gnulib/import/memrchr.c: Update.
3641         * gnulib/import/mkdir.c: Update.
3642         * gnulib/import/mkstemp.c: Update.
3643         * gnulib/import/msvc-inval.c: Update.
3644         * gnulib/import/msvc-inval.h: Update.
3645         * gnulib/import/msvc-nothrow.c: Update.
3646         * gnulib/import/msvc-nothrow.h: Update.
3647         * gnulib/import/open.c: Update.
3648         * gnulib/import/openat-die.c: Update.
3649         * gnulib/import/openat-priv.h: Update.
3650         * gnulib/import/openat-proc.c: Update.
3651         * gnulib/import/openat.c: Update.
3652         * gnulib/import/openat.h: Update.
3653         * gnulib/import/opendir.c: Update.
3654         * gnulib/import/pathmax.h: Update.
3655         * gnulib/import/pipe-safer.c: Update.
3656         * gnulib/import/rawmemchr.c: Update.
3657         * gnulib/import/readdir.c: Update.
3658         * gnulib/import/readlink.c: Update.
3659         * gnulib/import/realloc.c: Update.
3660         * gnulib/import/ref-add.sin: Update.
3661         * gnulib/import/ref-del.sin: Update.
3662         * gnulib/import/rename.c: Update.
3663         * gnulib/import/rewinddir.c: Update.
3664         * gnulib/import/rmdir.c: Update.
3665         * gnulib/import/same-inode.h: Update.
3666         * gnulib/import/save-cwd.c: Update.
3667         * gnulib/import/save-cwd.h: Update.
3668         * gnulib/import/scratch_buffer.h: Update.
3669         * gnulib/import/secure_getenv.c: Update.
3670         * gnulib/import/setenv.c: Update.
3671         * gnulib/import/signal.in.h: Update.
3672         * gnulib/import/stat-time.c: Update.
3673         * gnulib/import/stat-time.h: Update.
3674         * gnulib/import/stat-w32.c: Update.
3675         * gnulib/import/stat-w32.h: Update.
3676         * gnulib/import/stat.c: Update.
3677         * gnulib/import/stdbool.in.h: Update.
3678         * gnulib/import/stddef.in.h: Update.
3679         * gnulib/import/stdint.in.h: Update.
3680         * gnulib/import/stdio.in.h: Update.
3681         * gnulib/import/stdlib.in.h: Update.
3682         * gnulib/import/str-two-way.h: Update.
3683         * gnulib/import/strchrnul.c: Update.
3684         * gnulib/import/strdup.c: Update.
3685         * gnulib/import/streq.h: Update.
3686         * gnulib/import/strerror-override.c: Update.
3687         * gnulib/import/strerror-override.h: Update.
3688         * gnulib/import/strerror.c: Update.
3689         * gnulib/import/string.in.h: Update.
3690         * gnulib/import/stripslash.c: Update.
3691         * gnulib/import/strnlen1.c: Update.
3692         * gnulib/import/strnlen1.h: Update.
3693         * gnulib/import/strstr.c: Update.
3694         * gnulib/import/strtok_r.c: Update.
3695         * gnulib/import/sys_stat.in.h: Update.
3696         * gnulib/import/sys_time.in.h: Update.
3697         * gnulib/import/sys_types.in.h: Update.
3698         * gnulib/import/tempname.c: Update.
3699         * gnulib/import/tempname.h: Update.
3700         * gnulib/import/time.in.h: Update.
3701         * gnulib/import/unistd--.h: Update.
3702         * gnulib/import/unistd-safer.h: Update.
3703         * gnulib/import/unistd.in.h: Update.
3704         * gnulib/import/unsetenv.c: Update.
3705         * gnulib/import/verify.h: Update.
3706         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3707         * gnulib/import/wchar.in.h: Update.
3708         * gnulib/import/wctype.in.h: Update.
3709         * gnulib/import/xalloc-oversized.h: Update.
3710         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3711         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3712
3713 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3714
3715         * record-btrace.c (get_thread_current_frame): Remove
3716         old_inferior_ptid.
3717
3718 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3719
3720         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3721         with check_tag to 1 if and only if the type is tagged and the
3722         component being searched cannot been found in the current
3723         view. Otherwise, always call ada_to_fixed_type with
3724         check_tag to 0.
3725
3726 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3727
3728         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3729         declaration.
3730         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3731         * ada-varobj.c (ada_varobj_get_number_of_children,
3732         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3733
3734 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3735
3736         * ada-valprint.c (ada_value_print): Use type instead of
3737         enclosing type.
3738
3739 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3740
3741         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3742         an array of access to unconstrained array.
3743
3744 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3745
3746         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3747         (ada_check_typedef): Use it.
3748
3749 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3750
3751         * ada-varobj.c (ada_varobj_describe_struct_child)
3752         (ada_varobj_describe_child): Handle union case like struct one.
3753
3754 2018-09-10  Tom Tromey  <tom@tromey.com>
3755
3756         PR python/18380:
3757         * python/python.c (_initialize_python): Make example in "python"
3758         help work in Python 3.
3759
3760 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3761
3762         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3763         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3764         $(EXEEXT) to the script, as it is not a program.
3765
3766 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3767
3768         * python/py-prettyprint.c (pretty_print_one_value): Return
3769         gdbpy_ref<>.
3770         (print_string_repr): Adjust.
3771         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3772         * python/python-internal.h (apply_varobj_pretty_printer): Return
3773         gdbpy_ref<>.
3774         * varobj.c (varobj_value_get_print_value): Adjust.
3775
3776 2018-09-08  Tom Tromey  <tom@tromey.com>
3777
3778         PR python/16047:
3779         * python/py-prettyprint.c (pretty_print_one_value): Check for
3780         to_string method.
3781
3782 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3783
3784         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3785         replace_operator_with_call.
3786
3787 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3788
3789         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3790
3791 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3792
3793         * ada-typeprint.c (print_range): Print the bounds using TYPE
3794         rather than its TYPE_TARGET_TYPE.
3795
3796 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3797
3798         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3799         call to ada_to_fixed_value_create.
3800
3801 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3802
3803         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3804
3805 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3806
3807         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3808         by calls to error.
3809
3810 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3811
3812         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3813         Move update of loop variable "fi".
3814
3815 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3816
3817         * ada-lang.c (value_assign_to_component): In the case of
3818         big-endian targets, extract the bits of the given VAL
3819         using an src_offset of zero if container is not a scalar.
3820
3821 2018-09-06  Simon Ser  <contact@emersion.fr>
3822
3823         PR gdb/23105
3824         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3825         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3826         * fbsd-tdep.c (fbsd_make_note_desc): New.
3827         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3828         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3829         * target.h (enum target_object) Add FreeBSD-specific
3830         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3831
3832 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3833
3834         * compile/compile-c.h (generate_c_for_variable_locations):
3835         Change reference to pointer.
3836         * compile/compile-c-support.c (compile_program) <compute>:
3837         Likewise.
3838         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3839         (generate_c_for_for_one_variable): Likewise
3840         (generate_c_for_variable_locations): Likewise
3841         * compile/compile-c-types.c (compile_c_instance::convert_type):
3842         Likewise
3843         * compile/compile-cplus-symbols.c (convert_one_symbol):
3844         std::move the scope passed to enter_scope.
3845         * compile/compile-cplus-types.c
3846         (compile_cplus_instance::enter_scope): Make parameter
3847         rvalue-reference.
3848         (compile_cplus_instance::new_scope): Change reference to
3849         pointer.
3850         (compile_cplus_instance::convert_type): Likewise
3851         (compile_cplus_convert_typedef): std::move the scope passed to
3852         enter_scope.
3853         (compile_cplus_convert_struct_or_union): Likewise.
3854         (compile_cplus_convert_enum): Likewise.
3855         (compile_cplus_convert_namespace): Likewise.
3856         * compile/compile-cplus.h (compile_cplus_instance)
3857         <enter_scope>: Make parameter rvalue-reference.
3858         * compile/compile-internal.h (compile_instance)
3859         <get_cached_type>: Likewise
3860         * compile/compile-loc2c.c (push): Likewise
3861         (pushf): Likewise
3862         (unary): Likewise
3863         (binary): Likewise
3864         (print_label): Likewise
3865         (pushf_register_address): Likewise
3866         (pushf_register): Likewise
3867         (do_compile_dwarf_expr_to_c): Likewise
3868         (compile_dwarf_expr_to_c): Likewise
3869         (compile_dwarf_bounds_to_c): Likewise
3870         * compile/compile.c (compile_instance::get_cached_type):
3871         Likewise
3872         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3873         (compile_dwarf_bounds_to_c): Likewise
3874         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3875         (dwarf2_compile_property_to_c): Likewise
3876         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3877         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3878         Likewise
3879
3880 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3881
3882         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3883         * tui/tui-data.c (init_content_element): Don't initialize it.
3884
3885 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3886
3887         * tui/tui-data.h (struct tui_win_info)
3888         <detail::opaque>: Remove.
3889         * tui/tui-data.c (init_win_info): Remove assignment.
3890
3891 2018-09-05  Tom Tromey  <tom@tromey.com>
3892
3893         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3894         -Wformat-nonliteral.
3895         * target-float.c (host_float_ops<T>::to_string)
3896         (host_float_ops<T>::from_string): Use
3897         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3898         * configure: Rebuild.
3899
3900 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3901
3902         * printcmd.c (printf_c_string): Use
3903         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3904         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3905
3906 2018-09-05  Tom Tromey  <tom@tromey.com>
3907
3908         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3909
3910 2018-09-05  Tom de Vries  <tdevries@suse.de>
3911
3912         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3913         with resolve_abstract_p == true.
3914         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3915         defaulting to false. Propagate resolve_abstract_p to
3916         dwarf2_fetch_die_loc_sect_off.
3917         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3918         parameter, defaulting to false.
3919         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3920         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3921         parameter.
3922         * dwarf2read.h (struct die_info): Forward-declare.
3923         (die_info_ptr): New typedef.
3924         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3925
3926 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3927
3928         GDB 8.2 released.
3929
3930 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3931             Pedro Alves  <palves@redhat.com>
3932
3933         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3934         "aclocal-m4-deps.mk".  Include file here.
3935         $(srcdir)/aclocal.m4: Add "configure.ac".
3936         * gnulib/aclocal-m4-deps.mk: New file.
3937         * gnulib/update-gnulib.sh: Automatically update
3938         "aclocal-m4-deps.mk".
3939
3940 2018-09-04  Tom Tromey  <tom@tromey.com>
3941
3942         * configure: Rebuild.
3943         * configure.ac: Remove multi-ice code.
3944
3945 2018-09-04  Tom Tromey  <tom@tromey.com>
3946
3947         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3948         (ada-exp.o): Update.
3949
3950 2018-09-04  Tom Tromey  <tom@tromey.com>
3951
3952         * Makefile.in (printcmd.o, target-float.o): Remove.
3953         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3954
3955 2018-09-04  Tom Tromey  <tom@tromey.com>
3956
3957         * gnulib/Makefile.in: Remove obsolete comment.
3958         * Makefile.in: Remove obsolete comment.
3959
3960 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3961
3962         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3963         line with '+'.
3964
3965 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3966
3967         * riscv-tdep.c: Add 'prologue-value.h' include.
3968         (struct riscv_unwind_cache): New struct.
3969         (riscv_debug_unwinder): New global.
3970         (riscv_scan_prologue): Update arguments, capture register details
3971         from prologue scan.
3972         (riscv_skip_prologue): Reformat arguments line, move end of
3973         prologue calculation into riscv_scan_prologue.
3974         (riscv_frame_cache): Update return type, create
3975         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3976         details.
3977         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3978         (riscv_frame_prev_register): Use the trad_frame within the
3979         riscv_unwind_cache.
3980         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3981         flag.
3982
3983 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3984
3985         * trad-frame.h (trad_frame_set_realreg): Declare.
3986         (trad_frame_set_addr): Declare.
3987         * trad-frame.c (trad_frame_set_realreg): Define new function.
3988         (trad_frame_set_addr): Define new function.
3989         (trad_frame_set_reg_realreg): Use new function.
3990         (trad_frame_set_reg_addr): Use new function.
3991
3992 2018-09-01  Keith Seitz  <keiths@redhat.com>
3993
3994         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3995         pulongest instead of "%lld".
3996         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3997         ATTRIBUTE_UNUSED.
3998
3999 2018-08-31  Tom Tromey  <tom@tromey.com>
4000
4001         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
4002         variant part type.
4003
4004 2018-08-31  Pedro Alves  <palves@redhat.com>
4005
4006         * gdbarch.h: Regenerate.
4007
4008 2018-08-31  Pedro Alves  <palves@redhat.com>
4009
4010         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
4011         * target.h (Hardware watchpoint interfaces): Describe
4012         continuable/steppable/non-steppable watchpoints.
4013         * gdbarch.h, gdbarch.c: Regenerate.
4014
4015 2018-08-31  Pedro Alves  <palves@redhat.com>
4016
4017         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
4018         Delete.
4019         * s390-linux-nat.c
4020         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
4021         * target.h (target_ops::have_continuable_watchpoint): Delete.
4022         (target_have_continuable_watchpoint): Delete.
4023         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
4024         * target-delegates.c: Regenerate.
4025
4026 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
4027
4028         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
4029         the files present in "gnulib/import/m4/".
4030
4031 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4032
4033         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
4034         c.sw, c.swsp, and c.sdsp.
4035
4036 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
4037
4038         * riscv-tdep.c (struct riscv_inferior_data): Delete.
4039         (riscv_read_misa_reg): Don't cache value read into inferior data.
4040         (riscv_new_inferior_data): Delete.
4041         (riscv_inferior_data_cleanup): Delete.
4042         (riscv_inferior_data): Delete.
4043         (riscv_invalidate_inferior_data): Delete.
4044         (_initialize_riscv_tdep): Remove initialisation of inferior data.
4045
4046 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
4047
4048         * compile/compile-cplus-types.c
4049         (compile_cplus_instance::leave_scope): Take the address of scope
4050         object.
4051         (compile_cplus_instance::convert_qualified_base): Compare quals
4052         to 0.
4053
4054 2018-08-30  Keith Seitz  <keiths@redhat.com>
4055
4056         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
4057         Use "%s" and host_address_to_string instead of "%p" in printf.
4058
4059 2018-08-29  Keith Seitz  <keiths@redhat.com>
4060
4061         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
4062         and compile-cplus-types.c.
4063         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
4064         * c-lang.c (cplus_language_defn): Set C++ compile functions.
4065         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
4066         Declare.
4067         * compile/compile-c-support.c: Include compile-cplus.h.
4068         (load_libcompile): Templatize.
4069         (get_compile_context): "New" function.
4070         (c_get_compile_context): Use get_compile_context.
4071         (cplus_get_compile_context): New function.
4072         (cplus_push_user_expression, cplus_pop_user_expression)
4073         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
4074         (cplus_compute_program): Define new structs/functions.
4075         * compile/compile-cplus-symmbols.c: New file.
4076         * compile/compile-cplus-types.c: New file.
4077         * compile/compile-cplus.h: New file.
4078         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
4079         Declare.
4080         * compile/compile-object-load.c (get_out_value_type): Use
4081         strncmp_iw when comparing symbol names.
4082         (compile_object_load): Add mst_bss and mst_data.
4083         * compile/compile.c (_initialize_compile): Remove
4084         -Wno-implicit-function-declaration from `compile_args'.
4085         * compile/gcc-cp-plugin.h: New file.
4086         * NEWS: Mention C++ compile support and new debug options.
4087
4088 2018-08-29  Keith Seitz  <keiths@redhat.com>
4089
4090         * linespec.c (collect_info::add_symbol): Make virtual.
4091         (struct symbol_searcher_collect_info): New struct.
4092         (symbol_searcher::find_all_symbols): New method.
4093         * symtab.h (class symbol_searcher): New class.
4094
4095 2018-08-29  Keith Seitz  <keiths@redhat.com>
4096
4097         * linespec.c (struct linespec) <function_symbols, label_symbols>:
4098         Change to vector of block_symbol.  Update all users.
4099         (struct collect_info) <symbols>: Likewise.
4100         (collect_info::add_symbol): Take block_symbol as argument.
4101         Update all callers.
4102         (decode_compound_collector) <m_symbols>: Change type to vector
4103         of block_symbol.  Update all users.
4104         (decode_compound_collector::operator ()): Change parameter type
4105         to block_symbol.
4106         (find_method, find_function_symbols, find_linespec_symbols)
4107         (find_label_symbols_in_block, find_label_symbols): Change symbol
4108         vectors to block_symbol vectors.
4109         * symtab.h (symbol_found_callback_ftype): Change parameter type to
4110         block_symbol.
4111
4112 2018-08-29  Keith Seitz  <keiths@redhat.com>
4113
4114         * linespec.c (symbolp): Remove typedef and VEC definitions.
4115         (bound_minimal_symbol_d): Likewise.
4116
4117 2018-08-29  Keith Seitz  <keiths@redhat.com>
4118
4119         * linespec.c (decode_compound_collector::decode_compound_collector):
4120         Remove initialization for `m_symtabs'.
4121         (decode_compound_collector::release_symbols): Change return type
4122         to std::vector.  Update all callers.
4123         (class decode_compound_collector) <m_symbols>: Change type to
4124         std::vector.
4125         (lookup_prefix_sym): Change return type to std::vector.  Update all
4126         callers.
4127         (compare_symbols): Remove.
4128         (std_compare_symbols): Rename to `compare_symbols'.
4129         (find_method): Change `sym_classes' parameter to std::vector.
4130         Update all callers.  Use std::sort to sort sym_classes.
4131         (find_linespec_symbols): Remove cleanup.
4132
4133 2018-08-29  Keith Seitz  <keiths@redhat.com>
4134
4135         * linespec.c (struct linespec) <minimal_symbols>: Change type to
4136         std::vector.  Update all users.
4137         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
4138         (struct collect_info) <minimal_symbols>: Likewise.
4139         (compare_msymbols): Return bool.  Change parameters to const
4140         bound_minimal_symbol references.
4141         (find_method, find_function_symbols, find_linespec_symbols): Change
4142         `minsyms' parameter to std::vector.  Update all callers.
4143
4144 2018-08-29  Keith Seitz  <keiths@redhat.com>
4145
4146         * linespec.c (struct linespec) <label_symbols>: Change type to
4147         std::vector.  Update all users.
4148         (find_label_symbols_in_block): Change `result' parameter to
4149         std::vector.  Update all callers.
4150         (find_label_symbols): Return std::vector.  Update all callers.
4151
4152 2018-08-29  Keith Seitz  <keiths@redhat.com>
4153
4154         * linespec.c (struct linespec) <function_symbols>: Change type to
4155         std::vector.  Update all users.
4156         (struct collect_info) <function_symbols>: Likewise.
4157         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4158         (std_compare_symbols): New function.
4159         (find_method, find_function_symbols, find_linespec_symbols)
4160         (find_label_symbols_in_block): Change `symbols' parameter to
4161         std::vector.  Update all callers.
4162         (find_label_symbols): Likewise for `function_symbols' and
4163         `label_funcs_ret'.
4164
4165 2018-08-29  Keith Seitz  <keiths@redhat.com>
4166
4167         * linespec.c (symtab_vector_up): Define.
4168         (struct linespec) <file_symtabs>: Change type to std::vector *.
4169         Update all uses.
4170         (struct collect_info) <file_symtabs>: Likewise.
4171         (collect_symtabs_from_filename): Return symtab_vector_up.
4172         Update all callers.
4173         (decode_objc): Remove cleanup.
4174         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4175         (symtab_collector::release_symtabs): Return symtab_vector_up.
4176         Update all callers.
4177         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4178         Update all users.
4179         (collect_symtabs_from_filename, symtabs_from_filename): Return
4180         symtab_vector_up.  Update all callers.
4181
4182 2018-08-29  Tom Tromey  <tom@tromey.com>
4183
4184         * csky-tdep.c (csky_analyze_prologue): Use
4185         core_addr_to_string_nz.
4186
4187 2018-08-29  Tom Tromey  <tom@tromey.com>
4188
4189         * windows-nat.c (struct xlate_exception) <them>: Change type to
4190         DWORD.
4191         (xlate): Fix formatting.  Remove last entry.
4192         (struct xlate_exception, xlate): Comment out.
4193         (windows_nat_target::resume): Use ranged for.
4194
4195 2018-08-29  Jim Wilson  <jimw@sifive.com>
4196
4197         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4198         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4199         of NT_PRFPREG.
4200         (riscv_linux_nat_target::store_registers): Likewise.
4201
4202 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4203
4204         PR gdb/23555
4205         PR gdb/23558
4206         * gnulib/aclocal.m4: Regenerate.
4207         * gnulib/config.in: Regenerate.
4208         * gnulib/configure: Regenerate.
4209         * gnulib/import/Makefile.am: Update.
4210         * gnulib/import/Makefile.in: Update.
4211         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4212         * gnulib/import/_Noreturn.h: ... this.
4213         * gnulib/import/alloca.in.h: Update.
4214         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4215         * gnulib/import/arg-nonnull.h: ... this.
4216         * gnulib/import/assure.h: Update.
4217         * gnulib/import/at-func.c: Update.
4218         * gnulib/import/basename-lgpl.c: Update.
4219         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4220         * gnulib/import/c++defs.h: ... this.
4221         * gnulib/import/canonicalize-lgpl.c: Update.
4222         * gnulib/import/cdefs.h: Update.
4223         * gnulib/import/chdir-long.c: Update.
4224         * gnulib/import/chdir-long.h: Update.
4225         * gnulib/import/cloexec.c: Update.
4226         * gnulib/import/cloexec.h: Update.
4227         * gnulib/import/close.c: Update.
4228         * gnulib/import/closedir.c: Update.
4229         * gnulib/import/config.charset: Update.
4230         * gnulib/import/dirent-private.h: Update.
4231         * gnulib/import/dirent.in.h: Update.
4232         * gnulib/import/dirfd.c: Update.
4233         * gnulib/import/dirname-lgpl.c: Update.
4234         * gnulib/import/dirname.h: Update.
4235         * gnulib/import/dosname.h: Update.
4236         * gnulib/import/dup-safer-flag.c: Update.
4237         * gnulib/import/dup-safer.c: Update.
4238         * gnulib/import/dup.c: Update.
4239         * gnulib/import/dup2.c: Update.
4240         * gnulib/import/errno.in.h: Update.
4241         * gnulib/import/error.c: Update.
4242         * gnulib/import/error.h: Update.
4243         * gnulib/import/exitfail.c: Update.
4244         * gnulib/import/exitfail.h: Update.
4245         * gnulib/import/extra/update-copyright: Update.
4246         * gnulib/import/fchdir.c: Update.
4247         * gnulib/import/fcntl.c: Update.
4248         * gnulib/import/fcntl.in.h: Update.
4249         * gnulib/import/fd-hook.c: Update.
4250         * gnulib/import/fd-hook.h: Update.
4251         * gnulib/import/fd-safer-flag.c: Update.
4252         * gnulib/import/fd-safer.c: Update.
4253         * gnulib/import/fdopendir.c: Update.
4254         * gnulib/import/filename.h: Update.
4255         * gnulib/import/filenamecat-lgpl.c: Update.
4256         * gnulib/import/filenamecat.h: Update.
4257         * gnulib/import/flexmember.h: Update.
4258         * gnulib/import/float+.h: Update.
4259         * gnulib/import/float.c: Update.
4260         * gnulib/import/float.in.h: Update.
4261         * gnulib/import/fnmatch.c: Update.
4262         * gnulib/import/fnmatch.in.h: Update.
4263         * gnulib/import/fnmatch_loop.c: Update.
4264         * gnulib/import/fpucw.h: Update.
4265         * gnulib/import/frexp.c: Update.
4266         * gnulib/import/frexpl.c: Update.
4267         * gnulib/import/fstat.c: Update.
4268         * gnulib/import/fstatat.c: Update.
4269         * gnulib/import/getcwd-lgpl.c: Update.
4270         * gnulib/import/getcwd.c: Update.
4271         * gnulib/import/getdtablesize.c: Update.
4272         * gnulib/import/getlogin_r.c: Update.
4273         * gnulib/import/getprogname.c: Update.
4274         * gnulib/import/getprogname.h: Update.
4275         * gnulib/import/gettext.h: Update.
4276         * gnulib/import/gettimeofday.c: Update.
4277         * gnulib/import/glob-libc.h: Update.
4278         * gnulib/import/glob.c: Update.
4279         * gnulib/import/glob.in.h: Update.
4280         * gnulib/import/glob_internal.h: Update.
4281         * gnulib/import/glob_pattern_p.c: Update.
4282         * gnulib/import/globfree.c: Update.
4283         * gnulib/import/hard-locale.c: Update.
4284         * gnulib/import/hard-locale.h: Update.
4285         * gnulib/import/intprops.h: Update.
4286         * gnulib/import/inttypes.in.h: Update.
4287         * gnulib/import/isnan.c: Update.
4288         * gnulib/import/isnand-nolibm.h: Update.
4289         * gnulib/import/isnand.c: Update.
4290         * gnulib/import/isnanl-nolibm.h: Update.
4291         * gnulib/import/isnanl.c: Update.
4292         * gnulib/import/itold.c: Update.
4293         * gnulib/import/libc-config.h: Update.
4294         * gnulib/import/limits.in.h: Update.
4295         * gnulib/import/localcharset.c: Update.
4296         * gnulib/import/localcharset.h: Update.
4297         * gnulib/import/localtime-buffer.c: Update.
4298         * gnulib/import/localtime-buffer.h: Update.
4299         * gnulib/import/lstat.c: Update.
4300         * gnulib/import/m4/00gnulib.m4: Update.
4301         * gnulib/import/m4/__inline.m4: Update.
4302         * gnulib/import/m4/absolute-header.m4: Update.
4303         * gnulib/import/m4/alloca.m4: Update.
4304         * gnulib/import/m4/builtin-expect.m4: Update.
4305         * gnulib/import/m4/canonicalize.m4: Update.
4306         * gnulib/import/m4/chdir-long.m4: Update.
4307         * gnulib/import/m4/close.m4: Update.
4308         * gnulib/import/m4/closedir.m4: Update.
4309         * gnulib/import/m4/configmake.m4: Update.
4310         * gnulib/import/m4/d-ino.m4: Update.
4311         * gnulib/import/m4/d-type.m4: Update.
4312         * gnulib/import/m4/dirent_h.m4: Update.
4313         * gnulib/import/m4/dirfd.m4: Update.
4314         * gnulib/import/m4/dirname.m4: Update.
4315         * gnulib/import/m4/double-slash-root.m4: Update.
4316         * gnulib/import/m4/dup.m4: Update.
4317         * gnulib/import/m4/dup2.m4: Update.
4318         * gnulib/import/m4/eealloc.m4: Update.
4319         * gnulib/import/m4/environ.m4: Update.
4320         * gnulib/import/m4/errno_h.m4: Update.
4321         * gnulib/import/m4/error.m4: Update.
4322         * gnulib/import/m4/exponentd.m4: Update.
4323         * gnulib/import/m4/exponentl.m4: Update.
4324         * gnulib/import/m4/extensions.m4: Update.
4325         * gnulib/import/m4/extern-inline.m4: Update.
4326         * gnulib/import/m4/fchdir.m4: Update.
4327         * gnulib/import/m4/fcntl-o.m4: Update.
4328         * gnulib/import/m4/fcntl.m4: Update.
4329         * gnulib/import/m4/fcntl_h.m4: Update.
4330         * gnulib/import/m4/fdopendir.m4: Update.
4331         * gnulib/import/m4/filenamecat.m4: Update.
4332         * gnulib/import/m4/flexmember.m4: Update.
4333         * gnulib/import/m4/float_h.m4: Update.
4334         * gnulib/import/m4/fnmatch.m4: Update.
4335         * gnulib/import/m4/fnmatch_h.m4: Update.
4336         * gnulib/import/m4/fpieee.m4: Update.
4337         * gnulib/import/m4/frexp.m4: Update.
4338         * gnulib/import/m4/frexpl.m4: Update.
4339         * gnulib/import/m4/fstat.m4: Update.
4340         * gnulib/import/m4/fstatat.m4: Update.
4341         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4342         * gnulib/import/m4/getcwd-path-max.m4: Update.
4343         * gnulib/import/m4/getcwd.m4: Update.
4344         * gnulib/import/m4/getdtablesize.m4: Update.
4345         * gnulib/import/m4/getlogin.m4: Update.
4346         * gnulib/import/m4/getlogin_r.m4: Update.
4347         * gnulib/import/m4/getpagesize.m4: Update.
4348         * gnulib/import/m4/getprogname.m4: Update.
4349         * gnulib/import/m4/gettimeofday.m4: Update.
4350         * gnulib/import/m4/glibc21.m4: Update.
4351         * gnulib/import/m4/glob.m4: Update.
4352         * gnulib/import/m4/glob_h.m4: Update.
4353         * gnulib/import/m4/gnulib-cache.m4: Update.
4354         * gnulib/import/m4/gnulib-common.m4: Update.
4355         * gnulib/import/m4/gnulib-comp.m4: Update.
4356         * gnulib/import/m4/gnulib-tool.m4: Update.
4357         * gnulib/import/m4/hard-locale.m4: Update.
4358         * gnulib/import/m4/include_next.m4: Update.
4359         * gnulib/import/m4/inttypes-pri.m4: Update.
4360         * gnulib/import/m4/inttypes.m4: Update.
4361         * gnulib/import/m4/isnand.m4: Update.
4362         * gnulib/import/m4/isnanl.m4: Update.
4363         * gnulib/import/m4/largefile.m4: Update.
4364         * gnulib/import/m4/limits-h.m4: Update.
4365         * gnulib/import/m4/localcharset.m4: Update.
4366         * gnulib/import/m4/locale-fr.m4: Update.
4367         * gnulib/import/m4/locale-ja.m4: Update.
4368         * gnulib/import/m4/locale-zh.m4: Update.
4369         * gnulib/import/m4/localtime-buffer.m4: Update.
4370         * gnulib/import/m4/longlong.m4: Update.
4371         * gnulib/import/m4/lstat.m4: Update.
4372         * gnulib/import/m4/malloc.m4: Update.
4373         * gnulib/import/m4/malloca.m4: Update.
4374         * gnulib/import/m4/math_h.m4: Update.
4375         * gnulib/import/m4/mbrtowc.m4: Update.
4376         * gnulib/import/m4/mbsinit.m4: Update.
4377         * gnulib/import/m4/mbsrtowcs.m4: Update.
4378         * gnulib/import/m4/mbstate_t.m4: Update.
4379         * gnulib/import/m4/memchr.m4: Update.
4380         * gnulib/import/m4/memmem.m4: Update.
4381         * gnulib/import/m4/mempcpy.m4: Update.
4382         * gnulib/import/m4/memrchr.m4: Update.
4383         * gnulib/import/m4/mkdir.m4: Update.
4384         * gnulib/import/m4/mkstemp.m4: Update.
4385         * gnulib/import/m4/mmap-anon.m4: Update.
4386         * gnulib/import/m4/mode_t.m4: Update.
4387         * gnulib/import/m4/msvc-inval.m4: Update.
4388         * gnulib/import/m4/msvc-nothrow.m4: Update.
4389         * gnulib/import/m4/multiarch.m4: Update.
4390         * gnulib/import/m4/nocrash.m4: Update.
4391         * gnulib/import/m4/off_t.m4: Update.
4392         * gnulib/import/m4/onceonly.m4: Update.
4393         * gnulib/import/m4/open-cloexec.m4: Update.
4394         * gnulib/import/m4/open.m4: Update.
4395         * gnulib/import/m4/openat.m4: Update.
4396         * gnulib/import/m4/opendir.m4: Update.
4397         * gnulib/import/m4/pathmax.m4: Update.
4398         * gnulib/import/m4/rawmemchr.m4: Update.
4399         * gnulib/import/m4/readdir.m4: Update.
4400         * gnulib/import/m4/readlink.m4: Update.
4401         * gnulib/import/m4/realloc.m4: Update.
4402         * gnulib/import/m4/rename.m4: Update.
4403         * gnulib/import/m4/rewinddir.m4: Update.
4404         * gnulib/import/m4/rmdir.m4: Update.
4405         * gnulib/import/m4/save-cwd.m4: Update.
4406         * gnulib/import/m4/secure_getenv.m4: Update.
4407         * gnulib/import/m4/setenv.m4: Update.
4408         * gnulib/import/m4/signal_h.m4: Update.
4409         * gnulib/import/m4/ssize_t.m4: Update.
4410         * gnulib/import/m4/stat-time.m4: Update.
4411         * gnulib/import/m4/stat.m4: Update.
4412         * gnulib/import/m4/std-gnu11.m4: Update.
4413         * gnulib/import/m4/stdbool.m4: Update.
4414         * gnulib/import/m4/stddef_h.m4: Update.
4415         * gnulib/import/m4/stdint.m4: Update.
4416         * gnulib/import/m4/stdio_h.m4: Update.
4417         * gnulib/import/m4/stdlib_h.m4: Update.
4418         * gnulib/import/m4/strchrnul.m4: Update.
4419         * gnulib/import/m4/strdup.m4: Update.
4420         * gnulib/import/m4/strerror.m4: Update.
4421         * gnulib/import/m4/string_h.m4: Update.
4422         * gnulib/import/m4/strstr.m4: Update.
4423         * gnulib/import/m4/strtok_r.m4: Update.
4424         * gnulib/import/m4/sys_socket_h.m4: Update.
4425         * gnulib/import/m4/sys_stat_h.m4: Update.
4426         * gnulib/import/m4/sys_time_h.m4: Update.
4427         * gnulib/import/m4/sys_types_h.m4: Update.
4428         * gnulib/import/m4/tempname.m4: Update.
4429         * gnulib/import/m4/time_h.m4: Update.
4430         * gnulib/import/m4/unistd-safer.m4: Update.
4431         * gnulib/import/m4/unistd_h.m4: Update.
4432         * gnulib/import/m4/warn-on-use.m4: Update.
4433         * gnulib/import/m4/wchar_h.m4: Update.
4434         * gnulib/import/m4/wchar_t.m4: Update.
4435         * gnulib/import/m4/wctype_h.m4: Update.
4436         * gnulib/import/m4/wint_t.m4: Update.
4437         * gnulib/import/malloc.c: Update.
4438         * gnulib/import/malloc/scratch_buffer.h: Update.
4439         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4440         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4441         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4442         * gnulib/import/malloca.c: Update.
4443         * gnulib/import/malloca.h: Update.
4444         * gnulib/import/malloca.valgrind: Update.
4445         * gnulib/import/math.in.h: Update.
4446         * gnulib/import/mbrtowc.c: Update.
4447         * gnulib/import/mbsinit.c: Update.
4448         * gnulib/import/mbsrtowcs-impl.h: Update.
4449         * gnulib/import/mbsrtowcs-state.c: Update.
4450         * gnulib/import/mbsrtowcs.c: Update.
4451         * gnulib/import/memchr.c: Update.
4452         * gnulib/import/memmem.c: Update.
4453         * gnulib/import/mempcpy.c: Update.
4454         * gnulib/import/memrchr.c: Update.
4455         * gnulib/import/mkdir.c: Update.
4456         * gnulib/import/mkstemp.c: Update.
4457         * gnulib/import/msvc-inval.c: Update.
4458         * gnulib/import/msvc-inval.h: Update.
4459         * gnulib/import/msvc-nothrow.c: Update.
4460         * gnulib/import/msvc-nothrow.h: Update.
4461         * gnulib/import/open.c: Update.
4462         * gnulib/import/openat-die.c: Update.
4463         * gnulib/import/openat-priv.h: Update.
4464         * gnulib/import/openat-proc.c: Update.
4465         * gnulib/import/openat.c: Update.
4466         * gnulib/import/openat.h: Update.
4467         * gnulib/import/opendir.c: Update.
4468         * gnulib/import/pathmax.h: Update.
4469         * gnulib/import/pipe-safer.c: Update.
4470         * gnulib/import/rawmemchr.c: Update.
4471         * gnulib/import/readdir.c: Update.
4472         * gnulib/import/readlink.c: Update.
4473         * gnulib/import/realloc.c: Update.
4474         * gnulib/import/ref-add.sin: Update.
4475         * gnulib/import/ref-del.sin: Update.
4476         * gnulib/import/rename.c: Update.
4477         * gnulib/import/rewinddir.c: Update.
4478         * gnulib/import/rmdir.c: Update.
4479         * gnulib/import/same-inode.h: Update.
4480         * gnulib/import/save-cwd.c: Update.
4481         * gnulib/import/save-cwd.h: Update.
4482         * gnulib/import/scratch_buffer.h: Update.
4483         * gnulib/import/secure_getenv.c: Update.
4484         * gnulib/import/setenv.c: Update.
4485         * gnulib/import/signal.in.h: Update.
4486         * gnulib/import/stat-time.c: Update.
4487         * gnulib/import/stat-time.h: Update.
4488         * gnulib/import/stat-w32.c: Update.
4489         * gnulib/import/stat-w32.h: Update.
4490         * gnulib/import/stat.c: Update.
4491         * gnulib/import/stdbool.in.h: Update.
4492         * gnulib/import/stddef.in.h: Update.
4493         * gnulib/import/stdint.in.h: Update.
4494         * gnulib/import/stdio.in.h: Update.
4495         * gnulib/import/stdlib.in.h: Update.
4496         * gnulib/import/str-two-way.h: Update.
4497         * gnulib/import/strchrnul.c: Update.
4498         * gnulib/import/strdup.c: Update.
4499         * gnulib/import/streq.h: Update.
4500         * gnulib/import/strerror-override.c: Update.
4501         * gnulib/import/strerror-override.h: Update.
4502         * gnulib/import/strerror.c: Update.
4503         * gnulib/import/string.in.h: Update.
4504         * gnulib/import/stripslash.c: Update.
4505         * gnulib/import/strnlen1.c: Update.
4506         * gnulib/import/strnlen1.h: Update.
4507         * gnulib/import/strstr.c: Update.
4508         * gnulib/import/strtok_r.c: Update.
4509         * gnulib/import/sys_stat.in.h: Update.
4510         * gnulib/import/sys_time.in.h: Update.
4511         * gnulib/import/sys_types.in.h: Update.
4512         * gnulib/import/tempname.c: Update.
4513         * gnulib/import/tempname.h: Update.
4514         * gnulib/import/time.in.h: Update.
4515         * gnulib/import/unistd--.h: Update.
4516         * gnulib/import/unistd-safer.h: Update.
4517         * gnulib/import/unistd.in.h: Update.
4518         * gnulib/import/unsetenv.c: Update.
4519         * gnulib/import/verify.h: Update.
4520         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4521         * gnulib/import/wchar.in.h: Update.
4522         * gnulib/import/wctype.in.h: Update.
4523         * gnulib/import/xalloc-oversized.h: Update.
4524         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4525         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4526
4527 2018-08-16  Gary Benson <gbenson@redhat.com>
4528
4529         PR gdb/13000:
4530         * gdb/main.c (captured_main_1): Exit with nonzero status
4531         in batch mode if the last command to be executed failed.
4532         * NEWS: Mention the above.
4533
4534 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4535
4536         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4537         end of warning message.
4538
4539 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4540
4541         PR gdb/22943:
4542         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4543         (aarch64_extract_return_value): Use
4544         aapcs_is_vfp_call_or_return_candidate.
4545         (aarch64_return_in_memory): Likewise.
4546         (aarch64_store_return_value): Likewise.
4547
4548 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4549
4550         * aarch64-tdep.c
4551         (aapcs_is_vfp_call_or_return_candidate): Make static
4552         (pass_in_v_or_stack): Remove function.
4553         (pass_in_v_vfp_candidate): New function.
4554         (aarch64_push_dummy_call): Check for float register candidates.
4555
4556 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4557
4558         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4559         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4560         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4561
4562 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4563
4564         PR build/23399
4565         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4566         (struct ipa_sym_addresses): Rename to...
4567         (struct ipa_sym_addresses_common): ... this.
4568         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4569
4570 2018-08-28  Tom Tromey  <tom@tromey.com>
4571
4572         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4573         (token_fifo): Now a std::vector.
4574         (yylex, c_parse): Update.
4575         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4576         (token_fifo): Now a std::vector.
4577         (yylex, d_parse): Update.
4578         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4579         (token_fifo): Now a std::vector.
4580         (yylex, go_parse): Update.
4581
4582 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4583
4584         * parser-defs.h (struct type_stack) <elements>: Change type to
4585         std::vector<union type_stack_elt>.
4586         <depth, size>: Remove.
4587         * parse.c (parse_exp_in_context_1): Adjust.
4588         (type_stack_reserve): Remove.
4589         (check_type_stack_depth): Remove.
4590         (insert_into_type_stack): Adjust to std::vector.
4591         (insert_type): Likewise.
4592         (push_type): Likewise.
4593         (push_type_int): Likewise.
4594         (insert_type_address_space): Likewise.
4595         (pop_type): Likewise.
4596         (pop_type_int): Likewise.
4597         (pop_typelist): Likewise.
4598         (pop_type_stack): Likewise.
4599         (append_type_stack): Likewise.
4600         (push_type_stack): Likewise.
4601         (get_type_stack): Likewise.
4602         (type_stack_cleanup): Likewise.
4603         (push_typelist): Likewise.
4604         (follow_types): Likewise.
4605         (_initialize_parse): Likewise.
4606
4607 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4608
4609         * NEWS: Mention csky target.
4610
4611 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4612             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4613             Don Breazeal  <donb@codesourcery.com>
4614
4615         * csky-linux-tdep.c: New file.
4616         * csky-tdep.c: Likewise.
4617         * csky-tdep.h: Likewise.
4618         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4619         csky-tdep.o.
4620         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4621         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4622         * configure.tgt: Add csky support.
4623
4624 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4625
4626         * python/py-framefilter.c (py_print_frame): Print frame architecture
4627         when printing on an MI output.
4628
4629 2018-08-27  Tom Tromey  <tom@tromey.com>
4630
4631         PR build/23087:
4632         * configure: Rebuild.
4633         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4634
4635 2018-08-27  Tom Tromey  <tom@tromey.com>
4636
4637         * aarch64-linux-tdep.c
4638         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4639         casts to int.
4640
4641 2018-08-27  Tom Tromey  <tom@tromey.com>
4642
4643         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4644         unsigned.
4645         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4646         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4647         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4648         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4649         unsigned.
4650
4651 2018-08-27  Tom Tromey  <tom@tromey.com>
4652
4653         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4654         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4655
4656 2018-08-27  Tom Tromey  <tom@tromey.com>
4657
4658         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4659         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4660         ULONGEST_MAX.
4661         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4662         ULONGEST_MAX.
4663         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4664         ULONGEST_MAX.
4665         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4666         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4667         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4668         ULONGEST_MAX.
4669         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4670         (ppc64_linux_sigaction_tramp_frame)
4671         (ppc32_linux_sighandler_tramp_frame)
4672         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4673         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4674         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4675         * mn10300-linux-tdep.c (am33_linux_sigframe)
4676         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4677         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4678         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4679         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4680         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4681         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4682         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4683         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4684         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4685         * microblaze-linux-tdep.c
4686         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4687         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4688         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4689         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4690         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4691         * common/common-types.h (ULONGEST_MAX): New define.
4692         (CORE_ADDR_MAX): Fix formatting.
4693         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4694         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4695         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4696         (arm_linux_rt_sigreturn_tramp_frame)
4697         (arm_eabi_linux_sigreturn_tramp_frame)
4698         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4699         (thumb2_eabi_linux_sigreturn_tramp_frame)
4700         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4701         (arm_linux_restart_syscall_tramp_frame)
4702         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4703         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4704         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4705         ULONGEST_MAX.
4706         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4707
4708 2018-08-27  Tom Tromey  <tom@tromey.com>
4709
4710         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4711         CORE_ADDR_MAX.
4712         * mips-tdep.c (mips_deal_with_atomic_sequence)
4713         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4714         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4715         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4716         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4717         CORE_ADDR_MAX.
4718         * aarch64-tdep.c (aarch64_software_single_step): Use
4719         CORE_ADDR_MAX.
4720
4721 2018-08-27  Tom Tromey  <tom@tromey.com>
4722
4723         * linespec.c (complete_linespec_component): Add cast to "char".
4724         * completer.c (completion_tracker::build_completion_result): Add
4725         cast to "char".
4726
4727 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4728
4729         * solist.h (struct solist, struct target_so_ops): Fix
4730         indentation.
4731
4732 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4733
4734         * ada-tasks.c (ada_task_info_s): Remove typedef.
4735         (DEF_VEC_O(ada_task_info_s)): Remove.
4736         (struct ada_tasks_inferior_data): Initialize fields.
4737         <task_list>: Make an std::vector.
4738         (get_ada_tasks_inferior_data): Allocate with new.
4739         (ada_get_task_number): Adjust.
4740         (get_task_number_from_id): Likewise.
4741         (valid_task_id): Likewise.
4742         (ada_get_task_info_from_ptid): Likewise.
4743         (iterate_over_live_ada_tasks): Likewise.
4744         (add_ada_task): Likewise.
4745         (read_known_tasks): Likewise.
4746         (ada_build_task_list): Likewise.
4747         (print_ada_task_info): Likewise.
4748         (info_task): Likewise.
4749         (task_command_1): Likewise.
4750
4751 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4752
4753         * ada-lang.c (add_angle_brackets): Return std::string.
4754
4755 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4756
4757         * python/py-threadevent.c (py_get_event_thread): Initialize
4758         pythread.
4759
4760 2018-08-24  Pedro Alves  <palves@redhat.com>
4761
4762         * python/py-bpevent.c (create_breakpoint_event_object): Use
4763         copy-initialization.
4764         * python/py-continueevent.c (emit_continue_event): Use
4765         copy-initialization.
4766         * python/py-exitedevent.c (create_exited_event_object): Return a
4767         gdbpy_ref<>.
4768         (emit_exited_event): Use copy-initialization.
4769         * python/py-inferior.c (python_new_inferior)
4770         (python_inferior_deleted, add_thread_object): Use
4771         copy-initialization.
4772         * python/py-infevents.c (create_inferior_call_event_object)
4773         (create_register_changed_event_object)
4774         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4775         (emit_inferior_call_event, emit_memory_changed_event)
4776         (emit_register_changed_event): Use copy-initialization.
4777         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4778         Return a gdbpy_ref<>.
4779         (emit_new_objfile_event): Use copy-initialization.
4780         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4781         (emit_clear_objfiles_event): Use copy-initialization.
4782         * python/py-signalevent.c (create_signal_event_object): Use
4783         copy-initialization.
4784         * python/py-threadevent.c (create_thread_event_object): Use
4785         copy-initialization.
4786
4787 2018-08-24  Pedro Alves  <palves@redhat.com>
4788             Simon Marchi  <simon.marchi@ericsson.com>
4789
4790         PR gdb/23379
4791         * python/py-continueevent.c: Include "gdbthread.h".
4792         (create_continue_event_object): Add intro comment.  Add 'ptid'
4793         parameter.  Use it to find thread to pass to
4794         create_thread_event_object.
4795         (emit_continue_event): Pass PTID down to
4796         create_continue_event_object.
4797         * python/py-event.h (py_get_event_thread): Declare.
4798         (create_thread_event_object): Remove default from 'thread'
4799         parameter.
4800         * python/py-stopevent.c (create_stop_event_object): Use
4801         py_get_event_thread.
4802         * python/py-threadevent.c (get_event_thread): Rename to ...
4803         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4804         and use it to find the thread.
4805         (create_thread_event_object): Assert that THREAD isn't null.
4806         Don't find the event thread here.
4807
4808 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4809
4810         * block.h (blockrange, blockranges): New struct declarations.
4811         (struct block): Add new field named `ranges'.
4812         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4813         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4814         macros for accessing ranges in struct block.
4815         (make_blockranges): New declaration.
4816         block.c (make_blockranges): New function.
4817         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4818         for block.
4819         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4820         * blockframe.c (cache_pc_function_block): New static global.
4821         (clear_pc_function_cache): Clear cache_pc_function_block.
4822         (find_pc_partial_function): Move comment to symtab.h.  Add
4823         support for non-contiguous blocks.
4824         * cli/cli-cmds.c (block.h): Include.
4825         (print_disassembly): Handle printing of non-contiguous blocks.
4826         (disassemble_current_function): Likewise.
4827         (disassemble_command): Likewise.
4828
4829         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4830         BLOCK_START.
4831         * blockframe.c (get_pc_function_start): Likewise.
4832         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4833         (gcc_symbol_address): Likewise.
4834         * compile/compile-object-run.c (compile_object_run): Likewise.
4835         * compile/compile.c (get_expr_block_and_pc): Likewise.
4836         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4837         (func_addr_to_tail_call_list): Likewise.
4838         * findvar.c (default_read_var_value): Likewise.
4839         * inline-frame.c (inline_frame_this_id): Likewise.
4840         (skip-inline_frames): Likewise.
4841         * infcmd.c (until_next_command): Likewise.
4842         * linespec.c (convert_linespec_to_sals): Likewise.
4843         * parse.c (parse_exp_in_context_1): Likewise.
4844         * printcmd.c (build_address_symbolic): likewise.
4845         (info_address_command): Likewise.
4846         symtab.c (find_function_start_sal): Likewise.
4847         (skip_prologue_sal): Likewise.
4848         (find_function_alias_target): Likewise.
4849         (find_gnu_ifunc): Likewise.
4850         * stack.c (find_frame_funname): Likewise.
4851         * symtab.c (fixup_symbol_section): Likewise.
4852         (find_function_start_sal): Likewise.
4853         (skip_prologue_sal): Likewsie.
4854         (find_function_alias_target): Likewise.
4855         (find_gnu_ifunc): Likewise.
4856         * tracepoint.c (info_scope_command): Likewise.
4857         * value.c (value_fn_field): Likewise.
4858
4859         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4860         in place of find_pc_partial_function.
4861         * blockframe.c (find_function_entry_range_from_pc): New function.
4862         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4863         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4864         for each range in a block.
4865
4866
4867 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4868
4869         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4870         incrementation.
4871
4872 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4873
4874         * solib-svr4.c (read_program_headers_from_bfd): Return
4875         gdb::optional<gdb::byte_vector>.
4876         (svr4_exec_displacement): Adjust.
4877
4878 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4879
4880         * solib-svr4.c (read_program_header): Return
4881         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4882         (find_program_interpreter): Return
4883         gdb::optional<gdb::byte_vector>.
4884         (scan_dyntag_auxv): Adjust.
4885         (enable_break): Adjust.
4886         (svr4_exec_displacement): Adjust.
4887
4888 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4889
4890         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4891         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4892
4893 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4894
4895         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4896         string_vprintf.
4897         * guile/scm-utils.c (gdbscm_printf): Likewise.
4898         * serial.c (serial_printf): Likewise.
4899         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4900
4901 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4902
4903         * stack.c (print_frame): Print frame architecture when printing on
4904         an MI output.
4905         * NEWS: Mention new "arch" attribute in frame output.
4906
4907 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4908
4909         * arch/aarch64.h (aarch64_regnum): Update comment.
4910
4911 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4912
4913         * NEWS: Add SVE to 8.2 section.
4914
4915 2018-08-21  Pedro Alves  <palves@redhat.com>
4916
4917         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4918         out from gdbscm_parse_function_args.
4919         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4920         gdbscm_parse_function_args_1.
4921
4922 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4923
4924         PR gdb/17816
4925         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4926         operator.
4927
4928 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4929
4930         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4931
4932 2018-08-19  Michael Spang  <spang@google.com>
4933
4934         PR gdb/11786
4935         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4936         for PT_TLS segments.
4937
4938 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4939
4940         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4941         dwarf_variable_value.
4942         * dwarf2-frame.c (class dwarf_expr_executor):
4943         Add override for dwarf_variable_value.
4944         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4945         (class symbol_needs_eval_context): Likewise.
4946         (indirect_synthetic_pointer): Add forward declaration.
4947         (sect_variable_value): New function.
4948         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4949         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4950         for DW_OP_GNU_variable_value.
4951
4952 2018-08-16  Tom Tromey  <tom@tromey.com>
4953
4954         * top.c (read_command_file): Update.
4955         (command_line_input): Remove "repeat" argument.
4956         * ada-lang.c (get_selections): Update.
4957         * linespec.c (decode_line_2): Update.
4958         * defs.h (command_line_input): Remove argument.
4959         * cli/cli-script.c (read_next_line): Update.
4960         * python/py-gdb-readline.c: Update.
4961
4962 2018-08-17  Tom Tromey  <tom@tromey.com>
4963
4964         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4965         command_line_input.
4966
4967 2018-08-15  Tom Tromey  <tom@tromey.com>
4968
4969         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4970
4971 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4972
4973         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4974         If used, use find_pc_partial_function to find address range
4975         to disassemble.
4976         * mi/mi-main.c (mi_cmd_list_features): Report
4977         "data-disassemble-a-option" feature.
4978         * NEWS: Mention new -data-disassemble option -a.
4979
4980 2018-08-13  Tom Tromey  <tom@tromey.com>
4981
4982         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4983
4984 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4985
4986         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4987         (aarch64_linux_collect_sve_regset): Likewise.
4988         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4989         * regcache.h (regcache_map_entry_size): New function.
4990
4991 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4992
4993         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4994         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4995         (SVE_HEADER_VL_LENGTH): Likewise.
4996         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4997         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4998         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4999         (SVE_HEADER_SIZE_OFFSET): Likewise.
5000         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
5001         (SVE_HEADER_VL_OFFSET): Likewise.
5002         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
5003         (SVE_HEADER_FLAGS_OFFSET): Likewise.
5004         (SVE_HEADER_RESERVED_OFFSET): Likewise.
5005         (SVE_HEADER_SIZE): Likewise.
5006         (aarch64_linux_core_read_vq): Add function.
5007         (aarch64_linux_core_read_description): Check for SVE section.
5008
5009 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
5010
5011         * aarch64-fbsd-tdep.c
5012         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
5013         collect_size.
5014         * aarch64-linux-tdep.c
5015         (aarch64_linux_iterate_over_regset_sections): Likewise.
5016         * alpha-linux-tdep.c
5017         (alpha_linux_iterate_over_regset_sections):
5018         * alpha-nbsd-tdep.c
5019         (alphanbsd_iterate_over_regset_sections): Likewise.
5020         * amd64-fbsd-tdep.c
5021         (amd64fbsd_iterate_over_regset_sections): Likewise.
5022         * amd64-linux-tdep.c
5023         (amd64_linux_iterate_over_regset_sections): Likewise.
5024         * arm-bsd-tdep.c
5025         (armbsd_iterate_over_regset_sections): Likewise.
5026         * arm-fbsd-tdep.c
5027         (arm_fbsd_iterate_over_regset_sections): Likewise.
5028         * arm-linux-tdep.c
5029         (arm_linux_iterate_over_regset_sections): Likewise.
5030         * corelow.c (get_core_registers_cb): Likewise.
5031         (core_target::fetch_registers): Likewise.
5032         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
5033         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
5034         * gdbarch.h (void): Regenerate.
5035         * gdbarch.sh: Add supply_size and collect_size.
5036         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
5037         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
5038         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
5039         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
5040         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
5041         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
5042         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
5043         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
5044         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
5045         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
5046         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
5047         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
5048         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
5049         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
5050         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
5051         Likewise.
5052         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
5053         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
5054         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
5055         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
5056         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
5057         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
5058         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
5059         Likewise.
5060         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
5061         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
5062         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
5063         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
5064         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
5065         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
5066         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
5067         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
5068
5069 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
5070
5071         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
5072         with string_printf.
5073
5074 2018-08-10  Keith Seitz  <keiths@redhat.com>
5075
5076         * compile/compile-c-support.c (add_code_header, add_code_footer):
5077         Move into policy class.
5078         (c_push_user_expression, pop_user_expression_nop)
5079         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
5080         (compile_program): New host class.
5081         (c_compile_program): New typedef.
5082         (c_compute_porgram): Use c_compile_program.
5083
5084 2018-08-10  Keith Seitz  <keiths@redhat.com>
5085
5086         * compile/compile-internal.h (compile_instance::~compile_instance):
5087         Remove calls to htab_delete.
5088         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
5089         * compile.c (compile_instance::compile_instance): Initialize
5090         htab unique pointers.
5091         (compile_instance::get_cached_type, compile_instance::insert_type)
5092         (compile_instance::error_symbol_once): Update for unique_ptr.
5093
5094 2018-08-10  Keith Seitz  <keiths@redhat.com>
5095
5096         * compile/compile-c-symbols.c (struct symbol_error)
5097         (hash_symbol_error, eq_symbol_error, del_symbol_error)
5098         (compile_instance::insert_symbol_error)
5099         (compile_instance::error_symbol_once): Move to ...
5100         * compile/compile.c: ... here.
5101
5102 2018-08-10  Keith Seitz  <keiths@redhat.com>
5103
5104         * compile/compile-c-support.c (c_get_compile_context): Use `new'
5105         instead of `new_compile_instance'.
5106         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
5107         Update description.
5108         If the symbol error map is not initialized, create it.
5109         (generate_c_for_for_one_symbol): Do not check/initialize
5110         the symbol error map.
5111         * compile/compile-c-types.c (compile_c_instance): Make a class.
5112         Update all callers.
5113         (compile_instance::compile_instance): Initialize the type cache.
5114         (get_cached_type): New function.
5115         (insert_type): Update description.
5116         (compile_c_instance::m_default_cflags): Define.
5117         (convert_type): Update description.  Use get_cached_type.
5118         (delete_instance): Moved to destructor.
5119         (new_compile_instance): Moved to constructor.
5120         * compile/compile-c.h (compile_c_instance): Make class inheriting
5121         from compile_instance.
5122         <base>: Remove field.
5123         <type_map, symbol_err_map>: Move to base class.
5124         <c_plugin>: Rename to `m_plugin' and remove pointer type.
5125         * compile/compile-internal.h (compile_instance): Make class.
5126         <type_map_t, symbol_err_map_t>: Define.
5127         <fe>: Rename to `m_gcc_fe'.
5128         <scope, block, gcc_target_options>: Add `m_' prefix.
5129         <m_type_map, m_symbol_err_map>: New fields, moved from
5130         compile_c_instance.
5131         <destroy>: Remove.
5132         (convert_type, new_compile_instance): Remove.
5133         * compile/compile.c (cleanup_compile_instance): Remove.
5134         (compile_to_object): Use unique_ptr to eliminate cleanups.
5135         (compile_instance::set_print_callback, compile_instance::version)
5136         (compile_instance::set_verbose)
5137         (compile_instance::set_driver_filename)
5138         (compile_instance::set_triplet_regexp)
5139         (compile_instance::set_arguments)
5140         (compile_instance::set_source_file)
5141         (compile_instance::compile): Define.
5142
5143 2018-08-10  Keith Seitz  <keiths@redhat.com>
5144
5145         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
5146         * compile/compile-c-types.c: Define GCC_METHODN macros and include
5147         gcc-c-fe.def to define C plugin.
5148         (delete_instance): Delete `c_plugin'.
5149         (new_compile_instance): Initialize `c_plugin'.
5150         * compile/compile-c.h: Include gcc_c_plugin.h.
5151         (struct compile_c_instance) <c_plugin>: New member.
5152         * gcc-c-plugin.h: New file.
5153         Update all callers with API change.
5154
5155 2018-08-10  Keith Seitz  <keiths@redhat.com>
5156
5157         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5158         (HFILES_NO_SRCDIR): ... to here.
5159         Add compile-internal.h and compile-c.h.
5160         * compile/compile-c-support.c: Include compile-c.h.
5161         * compile/compile-c-symbols.c: Include compile-c.h.
5162         (generate_c_for_variable_locations): Update comment.
5163         * compile/compile-c-types.c: Include compile-c.h.
5164         * compile/compile-c.h: New file -- moved C language declarations
5165         from other files here.
5166         * compile/compile-internal.h: Do not include hashtab.h or
5167         common/enum-flags.h.
5168         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5169         (gcc_convert_symbol, gcc_symbol_address)
5170         (generate_c_for_variable_locations, c_get_mode_for_size)
5171         (c_get_range_decl_name): Definitions moved to compile-c.h.
5172         * compile/compile-loc2c.c: Include compile-c.h.
5173
5174 2018-08-10  Keith Seitz  <keiths@redhat.com>
5175
5176         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5177         (c_symbol_substitution_name): ... this.
5178         Update all callers.
5179
5180 2018-08-10  Keith Seitz  <keiths@redhat.com>
5181
5182         * compile/compile-c-support.c (c_compute_program): Use
5183         unique_xmalloc_ptr to eliminate cleanup.
5184         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5185         Return a unique_xmalloc_ptr and eliminate cleanup.
5186         * compile/compile-internal.h (generate_c_for_variable_locations):
5187         Return unique_xmalloc_ptr and update description.
5188
5189 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5190
5191         * corelow.c (core_target::get_core_register_section): Rename
5192         min_size to section_min_size.
5193
5194 2018-08-09  Jim Wilson  <jimw@sifive.com>
5195
5196         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5197         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5198         * NEWS: Mention new GNU/Linux RISC-V target.
5199         * configure.host: Add riscv*-*-linux*.
5200         * configure.nat: Add riscv*.
5201         * configure.tgt: Add riscv*-*-linux*.
5202         * riscv-linux-nat.c: New file.
5203         * riscv-linux-tdep.c: New file.
5204
5205 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5206
5207         * infrun.c (resume): Make static, add forward declaration.
5208         (proceed): Update header comment.
5209         * infrun.h (resume): Delete declaration.
5210
5211 2018-08-09  Tom Tromey  <tom@tromey.com>
5212
5213         * riscv-tdep.h: Minor formatting fixes.
5214
5215 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5216
5217         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5218         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5219         (test_mkdir_recursive): Likewise.
5220         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5221
5222 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5223
5224         * valarith.c (value_subscripted_rvalue): If an array is not in
5225         memory, and we don't know the upper bound, then we can't know that
5226         the requested element exists or not.
5227
5228 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5229
5230         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5231         (target_options_to_string): Add comment.
5232
5233 2018-08-08  Tom Tromey  <tom@tromey.com>
5234
5235         * unittests/scoped_mmap-selftests.c: Check result of "write".
5236
5237 2018-08-08  Jim Wilson  <jimw@sifive.com>
5238
5239         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5240         (decode_register_index_short): New.
5241         (decode_j_type_insn, decode_cj_type_insn): New.
5242         (decode_b_type_insn, decode_cb_type_insn): New.
5243         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5244         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5245         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5246         is_c_sw_insn instead of is_sw_insn.
5247         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5248         (riscv_software_single_step): New.
5249         * riscv-tdep.h (riscv_software_single_step): Declare.
5250
5251         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5252         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5253
5254 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5255
5256         PR gdb/18050:
5257         * target.c (dispose_inferior): Don't dispose of inferiors that are
5258         already killed.
5259
5260 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5261
5262         * remote.c (remote_target::download_tracepoint): Change char* to
5263         const char*.
5264
5265 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5266
5267         * target.h (target_options_to_string): Return an std::string.
5268         * target.c (str_comma_list_concat_elem): Return void, use
5269         std::string.
5270         (do_option): Likewise.
5271         (target_options_to_string): Return an std::string.
5272         * linux-nat.c (linux_nat_target::wait): Adjust.
5273         * target-debug.h (target_debug_print_options): Adjust.
5274
5275 2018-08-07  Tom Tromey  <tom@tromey.com>
5276
5277         * Makefile.in (CPPFLAGS): New variable.
5278         (INTERNAL_CPPFLAGS): Use it.
5279
5280 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5281
5282         * NEWS: Mention the index cache.
5283
5284 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5285
5286         * common/pathstuff.h (get_standard_cache_dir): New.
5287         * common/pathstuff.c (get_standard_cache_dir): New.
5288         * build-id.h (build_id_to_string): New.
5289         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5290         DEBUG_STR_SUFFIX): Move to here.
5291         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5292         DEBUG_STR_SUFFIX): Move from there.
5293         (write_psymtabs_to_index): Make non-static, add basename
5294         parameter.  Write to temporary files, rename when done.
5295         (save_gdb_index_command): Adjust call to
5296         write_psymtabs_to_index.
5297         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5298         field.
5299         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5300         (get_gdb_index_contents_from_cache): New.
5301         (get_gdb_index_contents_from_cache_dwz): New.
5302         (dwarf2_initialize_objfile): Read index from cache.
5303         (dwarf2_build_psymtabs): Save to index.
5304         * dwarf-index-cache.h: New file.
5305         * dwarf-index-cache.c: New file.
5306         * dwarf-index-write.h: New file.
5307
5308 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5309
5310         * gnulib/aclocal.m4: Re-generate.
5311         * gnulib/config.in: Re-generate.
5312         * gnulib/configure: Re-generate.
5313         * gnulib/import/Makefile.am: Re-generate.
5314         * gnulib/import/Makefile.in: Re-generate.
5315         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5316         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5317         * gnulib/import/m4/mkdir.m4: New file.
5318         * gnulib/import/mkdir.c: New file.
5319         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5320         module.
5321
5322 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5323
5324         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5325         * common/scoped_mmap.c: New file.
5326         * common/scoped_mmap.h (destroy): New method.
5327         (~scoped_mmap, reset): Use destroy.
5328         (scoped_mmap): New move constructor.
5329         (mmap_file): New declaration.
5330         * unittests/scoped_mmap-selftests.c (test_normal,
5331         test_invalid_filename, run_tests): New functions.
5332         (_initialize_scoped_mmap_selftests): Register selftest.
5333
5334 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5335
5336         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5337         (read_gdb_index_from_buffer): ... this.  Remove section
5338         parameter, add buffer parameter.
5339         (get_gdb_index_contents_ftype,
5340         get_gdb_index_contents_dwz_ftype): New typedefs.
5341         (dwarf2_read_gdb_index): Add callback parameters to get the
5342         index contents.
5343         (get_gdb_index_contents_from_section): New.
5344         (dwarf2_initialize_objfile): Update call to
5345         dwarf2_read_gdb_index.
5346
5347 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5348
5349         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5350         (gdb_open_cloexec): Likewise.
5351         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5352         (commandline_from_pid): Likewise.
5353         (linux_xfer_osdata_threads): Likewise.
5354         (linux_xfer_osdata_fds): Likewise.
5355         * ada-lang.c (is_package_name): Likewise.
5356         * auxv.c (procfs_xfer_auxv): Likewise.
5357         * breakpoint.c (print_one_breakpoint_location): Use
5358         uiout::field_fmt.
5359         (print_one_catch_solib): Use string_printf.
5360         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5361         (add_pe_forwarded_sym): Likewise.
5362         * dwarf2read.c (create_type_unit_group): Likewise.
5363         (build_error_marker_type): Likewise.
5364         * infcall.c (get_function_name): Likewise.
5365         * valprint.c (print_converted_chars_to_obstack): Likewise.
5366         * xtensa-tdep.c (xtensa_register_type): Likewise.
5367
5368 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5369
5370         * remote.c (remote_target::download_tracepoint): Fix format
5371         string errors.
5372
5373 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5374
5375         * tracefile.c: Include common/byte-vector.h.
5376         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5377         with trace_regblock_size if needed.  Update uses of buf.
5378
5379 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5380
5381         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5382         std::vector<unsigned char>.
5383         * tracepoint.c (collection_list::collection_list): Remove
5384         m_regs_mask initializer from initializer list.  Resize
5385         m_regs_mask using the largest remote register number.
5386         (collection_list::add_remote_register): Remove size check on
5387         m_regs_mask.  Use at to access element.
5388         (collection_list::stringify): Change type of temp_buf to
5389         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5390         stringify the register mask.  Use pack_hex_byte for the register
5391         mask.
5392
5393 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5394
5395         * tracepoint.h (class collection_list) <add_register>: Remove.
5396         <add_remote_register, add_ax_registers, add_local_register>:
5397         Declare.
5398         <add_memrange>: Add scope parameter.
5399         * tracepoint.c (encode_actions_1): Likewise.
5400         (collection_list::add_register): Rename to ...
5401         (collection_list::add_remote_register): ... this.  Update
5402         comment.
5403         (collection_list::add_ax_registers, add_local_register): New
5404         methods.
5405         (collection_list::add_memrange): Add scope parameter.  Call
5406         add_local_register instead of add_register.
5407         (finalize_tracepoint_aexpr): New function.
5408         (collection_list::collect_symbol): Update calls to add_memrange.
5409         Call add_local_register instead of add_register.  Call
5410         add_ax_registers.  Call finalize_tracepoint_aexpr.
5411         (encode_actions_1): Get remote regnos for $reg action.  Call
5412         add_remote_register, add_ax_registers, and add_local_register.
5413         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5414         (validate_actionline): Call finalize_tracepoint_aexpr.
5415
5416 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5417
5418         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5419         Replace array buf with gdb::char_vector buf, of size
5420         get_remote_packet_size ().  Replace references to buf and
5421         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5422         and xsnprintf with snprintf.  Raise errors if the buffer is too
5423         small.
5424
5425 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5426
5427         * remote.c (remote_target::download_tracepoint): Fix the has_more
5428         predicate in the QTDP action list iteration.
5429
5430 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5431
5432         * remote.c (remote_target::download_tracepoint): Fix indentation
5433         in for block.
5434
5435 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5436
5437         * proc-api.c (_initialize_proc_api): Remove c, unused.
5438         * procfs.c (procfs_init_inferior): Remove signals, unused.
5439         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5440         unused.
5441
5442 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5443             Andrew Burgess  <andrew.burgess@embecosm.com>
5444
5445         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5446         'W_STOPCODE (0)' as this could be ambiguous.
5447
5448 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5449
5450         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5451         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5452         "ai_socktype").
5453
5454 2018-08-02  Tom Tromey  <tom@tromey.com>
5455
5456         PR symtab/16842.
5457         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5458         symbols.
5459         (process_structure_scope): Likewise.
5460
5461 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5462
5463         PR gdb/22629:
5464         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5465         kill inferior.
5466
5467 2018-08-02  Tom Tromey  <tom@tromey.com>
5468
5469         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5470         (darwin_suspend_inferior, darwin_resume_inferior)
5471         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5472         (darwin_check_new_threads): Check result of get_darwin_inferior.
5473
5474 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5475
5476         GDB 8.1.1 released.
5477
5478 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5479
5480         * varobj.c (varobj_get_path_expr_parent): Report an error if
5481         parent is a dynamic varobj.
5482
5483 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5484
5485         * gnulib/aclocal.m4: Re-generate.
5486         * gnulib/config.in: Re-generate.
5487         * gnulib/configure: Re-generate.
5488         * gnulib/import/Makefile.in: Re-generate.
5489         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5490         * gnulib/import/m4/onceonly.m4: Re-generate.
5491
5492 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5493
5494         * target-descriptions.c (struct xml_test_tdesc): New.
5495         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5496         (record_xml_tdesc): Update.
5497         (maintenance_check_xml_descriptions): Update.
5498         * target-descriptions.h (record_xml_tdesc): Update comment.
5499
5500 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5501
5502         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5503         checking array bounds are defined.
5504
5505 2018-07-30  Tom Tromey  <tom@tromey.com>
5506
5507         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5508         irreflexivity violation.
5509
5510 2018-07-30  Tom Tromey  <tom@tromey.com>
5511
5512         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5513         * value.c (unpack_long): Remove lint code.
5514         * valops.c (value_ind): Remove lint code.
5515         * valarith.c (value_x_binop, value_x_unop, value_equal)
5516         (value_pos): Remove lint code.
5517
5518 2018-07-28  Tom de Vries  <tdevries@suse.de>
5519
5520         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5521         with undefined upper bound as <optimized out>.
5522
5523 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5524
5525         * gcore.in: Rename variable "name" to "prefix".  Expand
5526         "usage" text.
5527
5528 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5529
5530         * windows-nat.c (windows_nat_target::create_inferior): Update to
5531         call close() in global namespace.
5532
5533 2018-07-26  Tom Tromey  <tom@tromey.com>
5534
5535         * dwarf-index-write.c (add_address_entry): Don't add objfile
5536         offsets.
5537         * dbxread.c (find_stab_function): Rename from
5538         find_stab_function_addr.  Return a bound_minimal_symbol.
5539         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5540         Don't add objfile offsets.
5541         (end_psymtab): Use raw_text_low, raw_text_high,
5542         MSYMBOL_VALUE_RAW_ADDRESS.
5543         (read_ofile_symtab): Update.
5544         (process_one_symbol): Update.
5545         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5546         offsets.
5547         (dw2_relocate): Remove.
5548         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5549         searching addrmap.
5550         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5551         Update.
5552         (process_psymtab_comp_unit_reader, add_partial_symbol)
5553         (add_partial_subprogram, dwarf2_ranges_read): Update.
5554         (load_partial_dies): Update.
5555         (add_address_entry): Don't add objfile offsets.
5556         (dwarf2_build_include_psymtabs): Update.
5557         (create_addrmap_from_aranges): Don't add objfile offsets.
5558         (dw2_find_pc_sect_compunit_symtab): Update.
5559         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5560         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5561         Update.
5562         (parse_partial_symbols): Don't add objfile offsets.  Use
5563         raw_text_low, raw_text_high.  Update.
5564         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5565         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5566         or call 'relocate' quick function.  Clear psymbol_map.
5567         * psympriv.h (struct partial_symbol) <address>: Add section
5568         offset.
5569         <set_unrelocated_address>: Rename from set_address.
5570         <raw_text_low, raw_text_high>: New methods.
5571         <text_low, text_high>: Add objfile parameter.
5572         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5573         set_unrelocated_address.
5574         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5575         (find_pc_psymbol): Update.
5576         (fixup_psymbol_section, relocate_psymtabs): Remove.
5577         (dump_psymtab, psym_functions): Update.
5578         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5579         parameter.
5580         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5581         (start_psymtab_common): Update.
5582         * symfile-debug.c (debug_qf_relocate): Remove.
5583         (debug_sym_quick_functions): Update.
5584         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5585         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5586         Update.
5587
5588 2018-07-26  Tom Tromey  <tromey@redhat.com>
5589
5590         * dbxread.c (end_psymtab): Use text_high_valid and
5591         text_low_valid.
5592         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5593         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5594         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5595         Update comment.
5596         <text_low_valid, text_high_valid>: New fields.
5597         <set_text_low, set_text_high>: Update.
5598         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5599
5600 2018-07-26  Tom Tromey  <tom@tromey.com>
5601
5602         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5603         Update.
5604         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5605         textlow and texthigh fields.
5606         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5607         Update.
5608         * mdebugread.c (parse_lines, parse_partial_symbols)
5609         (psymtab_to_symtab_1): Update.
5610         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5611         Rename fields.  Update comment.  Now private.
5612         <text_low, text_high, set_text_low, set_text_high>: New methods.
5613         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5614         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5615         (start_psymtab_common, maintenance_info_psymtabs)
5616         (maintenance_check_psymtabs): Update.
5617         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5618         texthigh fields.
5619         (scan_xcoff_symtab): Update.
5620
5621 2018-07-26  Tom Tromey  <tromey@redhat.com>
5622
5623         * psympriv.h (struct partial_symbol) <unrelocated_address,
5624         address, set_address>: New methods.
5625         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5626         (fixup_psymbol_section, relocate_psymtabs): Update.
5627         (print_partial_symbols): Add 'objfile' parameter.  Update.
5628         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5629         Update.
5630
5631 2018-07-26  Tom Tromey  <tom@tromey.com>
5632
5633         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5634         (debug_names::write_psymbols): Update.
5635         * psympriv.h (struct partial_symbol): Derive from
5636         general_symbol_info.
5637         <obj_section>: New method.
5638         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5639         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5640         (find_pc_sect_psymbol, fixup_psymbol_section)
5641         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5642         (print_partial_symbols, recursively_search_psymtabs)
5643         (compare_psymbols, psymbol_hash, psymbol_compare)
5644         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5645         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5646
5647 2018-07-26  Tom Tromey  <tromey@redhat.com>
5648
5649         * dbxread.c (end_psymtab): Remove dead code.
5650
5651 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5652
5653         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5654         DWARF unwinders are disabled.
5655         * dwarf2-frame.c: Add dwarf2read.h include.
5656         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5657         disabled.
5658         (dwarf2_frame_unwinders_enabled_p): Define.
5659         (show_dwarf_unwinders_enabled_p): New function.
5660         (_initialize_dwarf2_frame): Register switch to control DWARF
5661         unwinder use.
5662         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5663         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5664         (show_dwarf_cmdlist): Remove static keyword.
5665         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5666         (show_dwarf_cmdlist): Declare.
5667         * NEWS: Document new feature.
5668
5669 2018-07-26  Tom de Vries  <tdevries@suse.de>
5670
5671         PR breakpoints/23366
5672         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5673
5674 2018-07-26  Tom de Vries  <tdevries@suse.de>
5675
5676         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5677         DW_AT_count can't be translated to a dynamic prop.
5678
5679 2018-07-25  Tom de Vries  <tdevries@suse.de>
5680
5681         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5682         try/catch.
5683
5684 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5685
5686         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5687
5688 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5689
5690         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5691
5692 2018-07-24  Keith Seitz  <keiths@redhat.comt
5693
5694         PR symtab/23010
5695         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5696         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5697         instead of add_symbol_to_list.
5698         (read_file_scope): Call prepare_one_comp_unit before reading
5699         any other DIEs.
5700
5701 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5702
5703         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5704
5705 2018-07-24  Tom Tromey  <tom@tromey.com>
5706
5707         * utils.c (malloc, realloc, free): Don't declare.
5708         * configure, config.in: Rebuild.
5709         * configure.ac: Don't check for declarations of free, malloc, or
5710         realloc.
5711
5712 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5713
5714         * aarch64-linux-nat.c
5715         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5716         variable.
5717         * arm-linux-nat.c (fetch_regs): Likewise.
5718         (store_regs): Likewise.
5719         (fetch_vfp_regs): Likewise.
5720         (store_vfp_regs): Likewise.
5721         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5722         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5723         (arm_linux_nat_target::insert_watchpoint): Likewise.
5724         (arm_linux_nat_target::remove_watchpoint): Likewise.
5725         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5726         Likewise.
5727         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5728         Likewise.
5729         * ppc-linux-nat.c (fetch_register): Likewise.
5730         (fetch_all_gp_regs): Likewise.
5731         (fetch_ppc_registers): Likewise.
5732         (store_all_gp_regs): Likewise.
5733         (store_ppc_registers): Likewise.
5734         (hwdebug_insert_point): Likewise.
5735         (can_use_watchpoint_cond_accel): Likewise.
5736         * remote-sim.c (gdb_os_write_stdout): Likewise.
5737
5738 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5739             Tom Tromey  <tom@tromey.com>
5740
5741         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5742         test for it.
5743         * configure: Rebuild.
5744
5745 2018-07-22  Tom Tromey  <tom@tromey.com>
5746
5747         * regformats/regdat.sh: Define xmltarget_${name} inside
5748         #ifndef IN_PROCESS_AGENT.
5749
5750 2018-07-22  Tom Tromey  <tom@tromey.com>
5751
5752         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5753
5754 2018-07-22  Tom Tromey  <tom@tromey.com>
5755
5756         * symfile.c (reread_symbols): Notify iter, not objfile.
5757
5758 2018-07-22  Tom Tromey  <tom@tromey.com>
5759
5760         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5761         Use arch_ops.
5762         (ravenscar_thread_target::prepare_to_store): Likewise.
5763
5764 2018-07-22  Tom Tromey  <tom@tromey.com>
5765
5766         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5767         unused variable.  Call value_fetch_lazy when needed.
5768         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5769         Remove unused variable.  Call value_fetch_lazy when needed.
5770
5771 2018-07-22  Tom Tromey  <tom@tromey.com>
5772
5773         * m32c-tdep.c (mark_dma): Return void.
5774         (make_regs): Remove unused declarations.
5775
5776 2018-07-22  Tom Tromey  <tom@tromey.com>
5777
5778         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5779         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5780         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5781         bkscm_get_valid_block_smob_arg_unsafe for effect.
5782
5783 2018-07-22  Tom Tromey  <tom@tromey.com>
5784
5785         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5786         value_type.
5787
5788 2018-07-22  Tom Tromey  <tom@tromey.com>
5789
5790         * windows-nat.c (saved_context): Conditionally define.
5791         * remote.c (remote_target::remote_btrace_maybe_reopen):
5792         Conditionally declare "warned".
5793         * inflow.c (sigquit_ours): Conditionally define.
5794         (new_tty): Move "tty" declaration inside #if.
5795         * guile/guile.c (guile_datadir): Conditionally define.
5796         * charset.c (set_be_le_names): Move some declarations inside #if.
5797         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5798         #if.
5799         (parse_xml_btrace_conf): Likewise.
5800
5801 2018-07-22  Tom Tromey  <tom@tromey.com>
5802
5803         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5804
5805 2018-07-22  Tom Tromey  <tom@tromey.com>
5806
5807         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5808         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5809         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5810         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5811         * stack.c (frame_apply_level_command): Remove unused variable.
5812         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5813         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5814         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5815         unused variable.
5816         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5817         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5818         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5819         variable.
5820         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5821         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5822         variable.
5823         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5824         Remove unused variable.
5825         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5826         variable.
5827         * common/tdesc.c (print_xml_feature::visit): Remove unused
5828         variable.
5829         * compile/compile-object-load.c (store_regs): Remove unused
5830         variables.
5831         * complaints.c (clear_complaints): Remove unused variable.
5832         * corelow.c (core_target_open): Remove unused variable.
5833         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5834         variable.
5835         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5836         variable.
5837         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5838         variable.
5839         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5840         variable.
5841         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5842         variable.
5843         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5844         variable.
5845         * ia64-tdep.c (examine_prologue): Remove unused variable.
5846         * infcall.c (run_inferior_call): Remove unused variable.
5847         * inferior.c (exit_inferior): Remove unused variable.
5848         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5849         * linespec.c (decode_line_2): Remove unused variable.
5850         * linux-nat.c (super_close): Remove.
5851         * linux-tdep.c (linux_info_proc): Remove unused variable.
5852         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5853         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5854         Remove unused variable.
5855         * parse.c (find_minsym_type_and_address): Remove unused variable.
5856         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5857         variable.
5858         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5859         variable.
5860         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5861         variables.
5862         * record-btrace.c (record_btrace_target::store_registers): Remove
5863         unused variable.
5864         (cmd_show_record_btrace_cpu): Remove unused variable.
5865         * riscv-tdep.c (riscv_register_reggroup_p)
5866         (riscv_push_dummy_call, riscv_return_value): Remove unused
5867         variable.
5868         * rust-exp.y (literal): Remove unused variable.
5869         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5870         unused variable.
5871         <STRUCTOP_ANONYMOUS>: Likewise.
5872         * s390-linux-tdep.c (s390_linux_init_abi_31)
5873         (s390_linux_init_abi_64): Remove unused variable.
5874         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5875         (file_select_thread, net_windows_open, _initialize_ser_windows):
5876         Remove unused variables.
5877         * symtab.c (find_pc_sect_line): Remove unused variable.
5878         * target-memory.c (compute_garbled_blocks): Remove unused
5879         variable.
5880         (target_write_memory_blocks): Remove unused variable.
5881         * target.c (target_stack::unpush): Remove unused variables.
5882         * tracepoint.c (start_tracing, all_tracepoint_actions)
5883         (merge_uploaded_trace_state_variables)
5884         (print_one_static_tracepoint_marker): Remove unused variable.
5885         * unittests/basic_string_view/element_access/char/1.cc (test01):
5886         Remove unused variable.
5887         * windows-nat.c (windows_continue, windows_add_all_dlls)
5888         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5889         Remove unused variables.
5890
5891 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5892
5893         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5894         attr_profile in HAVE_ELF.
5895         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5896         HAVE_ELF.
5897
5898 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5899
5900         * frame.c (frame_register_unwind): Change parameter name.
5901         (frame_unwind_register): Likewise.
5902         (frame_unwind_register_value): Likewise.
5903         (frame_unwind_register_signed): Likewise.
5904         (frame_unwind_register_unsigned): Likewise.
5905         * frame.h (frame_register_unwind): Likewise.
5906         (frame_unwind_register): Likewise.
5907         (frame_unwind_register_value): Likewise.
5908         (frame_unwind_register_signed): Likewise.
5909         (frame_unwind_register_unsigned): Likewise.
5910         (frame_unwind_arch): Likewise.
5911
5912 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5913
5914         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5915         ISA maintenance.
5916
5917 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5918
5919         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5920         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5921         hand.
5922
5923 2018-07-20  Keith Seitz  <keiths@redhat.com>
5924
5925         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5926         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5927         m_compunit_symtab, m_language>: Add "m_" prefix.
5928         Update all uses.
5929         * buildsym.c: Update all uses.
5930
5931 2018-07-20  Tom Tromey  <tom@tromey.com>
5932
5933         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5934         * buildsym.h (record_line_ftype): Remove typedef.
5935
5936 2018-07-20  Tom Tromey  <tom@tromey.com>
5937
5938         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5939         (end_expandable_symtab): Likewise.
5940         (end_symtab_get_static_block): Likewise.
5941         (end_symtab_from_static_block): Likewise.
5942         * buildsym-legacy.c (augment_type_symtab): Remove.
5943         (end_expandable_symtab): Remove.
5944         (end_symtab_get_static_block): Remove.
5945         (end_symtab_from_static_block): Remove.
5946
5947 2018-07-20  Tom Tromey  <tom@tromey.com>
5948
5949         * dwarf2read.c: Include buildsym.h.
5950         (struct dwarf2_cu) <builder>: New method.
5951         (fixup_go_packaging): Update.
5952         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5953         use scoped_free_pendings.
5954         (using_directives): Add "cu" parameter, remove "language".
5955         (read_import_statement, setup_type_unit_groups, )
5956         (read_func_scope, read_lexical_block_scope)
5957         (dwarf2_record_block_ranges, read_namespace): Update.
5958         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5959         (lnp_state_machine::handle_end_sequence): Update.
5960         (class lnp_state_machine) <m_cu>: New member.
5961         <m_record_line_callback>: Remove.
5962         <m_currently_recording_lines>: New member.
5963         (lnp_state_machine::handle_set_file): Update.
5964         (noop_record_line): Remove.
5965         (dwarf_record_line_p): Add cu parameter.
5966         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5967         (lnp_state_machine::record_line)
5968         (lnp_state_machine::lnp_state_machine)
5969         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5970         (dwarf_decode_lines): Update.
5971         (dwarf2_start_subfile): Add cu parameter.
5972         (dwarf2_start_symtab, new_symbol): Update.
5973         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5974         Remove dwarf2_per_objfile parameter.
5975         (dwarf_decode_macros): Update.
5976
5977 2018-07-20  Tom Tromey  <tom@tromey.com>
5978
5979         * stabsread.c (define_symbol): Update.
5980         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5981         * dwarf2read.c (new_symbol): Update.
5982         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5983         * cp-namespace.c: Include buildsym.h.
5984         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5985         * buildsym-legacy.c (get_buildsym_compunit): New function.
5986
5987 2018-07-20  Tom Tromey  <tom@tromey.com>
5988
5989         * xcoffread.c: Include buildsym-legacy.h.
5990         * windows-nat.c: Include buildsym-legacy.h.
5991         * stabsread.c: Include buildsym-legacy.h.
5992         * mdebugread.c: Include buildsym-legacy.h.
5993         * buildsym-legacy.h: New file.
5994         * buildsym-legacy.c: New file, from buildsym.c.
5995         * go32-nat.c: Include buildsym-legacy.h.
5996         * dwarf2read.c: Include buildsym-legacy.h.
5997         * dbxread.c: Include buildsym-legacy.h.
5998         * cp-namespace.c: Include buildsym-legacy.h.
5999         * coffread.c: Include buildsym-legacy.h.
6000         * buildsym.h: Move some contents to buildsym-legacy.h.
6001         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
6002         buildsym-legacy.c.
6003         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
6004
6005 2018-07-20  Tom Tromey  <tom@tromey.com>
6006
6007         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
6008         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
6009         (buildsym_compunit::buildsym_compunit)
6010         (buildsym_compunit::~buildsym_compunit)
6011         (buildsym_compunit::get_macro_table): Define.
6012
6013 2018-07-20  Tom Tromey  <tom@tromey.com>
6014
6015         * buildsym.c (reset_symtab_globals): Remove.
6016         (buildsym_compunit::end_symtab_from_static_block): Update.
6017         (buildsym_compunit::augment_type_symtab): Update.
6018         (end_symtab_from_static_block): Call free_buildsym_compunit.
6019         (augment_type_symtab, end_symtab, end_expandable_symtab):
6020         Likewise.
6021
6022 2018-07-20  Tom Tromey  <tom@tromey.com>
6023
6024         * arch-utils.c: Do not include buildsym.h.
6025         * mipsread.c: Do not include buildsym.h.
6026         * machoread.c: Do not include buildsym.h.
6027         * elfread.c: Do not include buildsym.h.
6028
6029 2018-07-20  Tom Tromey  <tom@tromey.com>
6030
6031         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
6032         initialization.
6033         (buildsym_compunit): Add new constructor.
6034         (struct buildsym_compunit) <get_last_source_file, finish_block,
6035         record_block_range, start_subfile, patch_subfile_names,
6036         push_subfile, pop_subfile, record_line, get_compunit_symtab,
6037         set_last_source_start_addr, get_last_source_start_addr,
6038         get_local_using_directives, set_local_using_directives,
6039         get_global_using_directives, outermost_context_p,
6040         get_current_context_stack, get_context_stack_depth,
6041         get_current_subfile, get_local_symbols, get_file_symbols,
6042         get_global_symbols, record_debugformat, record_producer,
6043         push_context, pop_context, end_symtab_get_static_block,
6044         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
6045         New public methods.
6046         <record_pending_block, finish_block_internal, make_blockvector,
6047         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
6048         private methods.
6049         Update all users.
6050
6051 2018-05-22  Tom Tromey  <tom@tromey.com>
6052
6053         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6054         parameter.
6055         (finish_block_internal): Update.
6056
6057 2018-07-20  Tom Tromey  <tom@tromey.com>
6058
6059         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
6060         parameter.
6061         (finish_block_internal): Update.
6062
6063 2018-07-20  Tom Tromey  <tom@tromey.com>
6064
6065         * buildsym.h (EXTERN): Don't define or undef.
6066         * buildsym.c (EXTERN): Don't define.
6067
6068 2018-07-20  Tom Tromey  <tom@tromey.com>
6069
6070         * buildsym.c: Remove TODO comment.
6071
6072 2018-07-20  Tom Tromey  <tom@tromey.com>
6073
6074         * coffread.c (coff_symtab_read): Update.
6075         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
6076         (xcoff_new_init): Update.
6077         * mipsread.c (mipscoff_new_init): Update.
6078         * mdebugread.c (mdebug_build_psymtabs): Update.
6079         * elfread.c (elf_new_init): Update.
6080         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
6081         Update.
6082         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
6083         (coffstab_build_psymtabs, elfstab_build_psymtabs)
6084         (stabsect_build_psymtabs): Update.
6085         * buildsym.h (buildsym_init): Don't declare.
6086         * buildsym.c: Update comment.
6087         (prepare_for_building): Remove.
6088         (start_symtab, restart_symtab): Update.
6089         (reset_symtab_globals): Update comment.
6090         (buildsym_init): Remove.
6091
6092 2018-07-20  Tom Tromey  <tom@tromey.com>
6093
6094         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
6095         * stabsread.c (patch_block_stabs, define_symbol, read_type)
6096         (read_enum_type, common_block_start, common_block_end)
6097         (cleanup_undefined_types_1, finish_global_stabs): Update.
6098         * mdebugread.c (psymtab_to_symtab_1): Update.
6099         * dwarf2read.c (fixup_go_packaging, read_func_scope)
6100         (read_lexical_block_scope, new_symbol): Update.
6101         * dbxread.c (process_one_symbol): Update.
6102         * coffread.c (coff_symtab_read, process_coff_symbol)
6103         (coff_read_enum_type): Update.
6104         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
6105         declare.
6106         (get_local_symbols, get_file_symbols, get_global_symbols): New
6107         functions.
6108         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
6109         m_global_symbols.
6110         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
6111         (~scoped_free_pendings): Update.
6112         (finish_block, prepare_for_building, reset_symtab_globals)
6113         (end_symtab_get_static_block, end_symtab_with_blockvector)
6114         (augment_type_symtab, push_context): Update.
6115         (get_local_symbols, get_file_symbols, get_global_symbols): New
6116         functions.
6117         (buildsym_init): Update.
6118
6119 2018-07-20  Tom Tromey  <tom@tromey.com>
6120
6121         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
6122         (process_full_type_unit): Likewise.
6123         (dwarf2_start_symtab): Set list_in_scope.
6124
6125 2018-07-20  Tom Tromey  <tom@tromey.com>
6126
6127         * dwarf2read.c (process_psymtab_comp_unit_reader)
6128         (build_type_psymtabs_reader): Do not set list_in_scope.
6129
6130 2018-07-20  Tom Tromey  <tom@tromey.com>
6131
6132         * buildsym.c (free_pendings): Remove.
6133         (add_symbol_to_list, scoped_free_pendings)
6134         (finish_block_internal, buildsym_init): Update.
6135
6136 2018-07-20  Tom Tromey  <tom@tromey.com>
6137
6138         * xcoffread.c (read_xcoff_symtab): Update.
6139         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
6140         Update.
6141         * dbxread.c (process_one_symbol): Update.
6142         * coffread.c (coff_symtab_read): Update.
6143         * buildsym.h (finish_block): Update.
6144         * buildsym.c (finish_block): Remove "listhead" argument.
6145         (end_symtab_get_static_block): Update.
6146
6147 2018-07-20  Tom Tromey  <tom@tromey.com>
6148
6149         * buildsym.h (class scoped_free_pendings): Remove constructor.
6150         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
6151         method.
6152         <m_pending_block_obstack, m_pending_blocks>: New members.
6153         (pending_block_obstack, pending_blocks): Remove.
6154         (scoped_free_pendings::scoped_free_pendings): Default.
6155         (~scoped_free_pendings): Update.
6156         (free_pending_blocks): Remove.
6157         (finish_block_internal, record_pending_block, make_blockvector)
6158         (end_symtab_get_static_block, augment_type_symtab, push_context)
6159         (buildsym_init): Update.
6160
6161 2018-07-20  Tom Tromey  <tom@tromey.com>
6162
6163         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6164         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6165         members.
6166         (pending_addrmap, pending_addrmap_obstack)
6167         (pending_addrmap_interesting): Remove.
6168         (scoped_free_pendings, record_block_range, make_blockvector)
6169         (prepare_for_building, reset_symtab_globals, buildsym_init):
6170         Update.
6171
6172 2018-07-20  Tom Tromey  <tom@tromey.com>
6173
6174         * xcoffread.c (process_linenos): Update.
6175         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6176         * mdebugread.c (psymtab_to_symtab_1): Update.
6177         * dwarf2read.c (setup_type_unit_groups)
6178         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6179         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6180         * dbxread.c (process_one_symbol): Update.
6181         * coffread.c (coff_symtab_read, enter_linenos)
6182         (process_coff_symbol): Update.
6183         * buildsym.h (current_subfile): Don't declare.
6184         (get_current_subfile): Declare.
6185         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6186         member.
6187         (start_subfile, free_buildsym_compunit, push_subfile)
6188         (prepare_for_building, start_symtab): Update.
6189         (get_current_subfile): New function.
6190
6191 2018-07-20  Tom Tromey  <tom@tromey.com>
6192
6193         * coffread.c (coff_symtab_read): Update.
6194         * xcoffread.c (read_xcoff_symtab): Update.
6195         * dwarf2read.c (new_symbol): Update.
6196         (read_func_scope, read_lexical_block_scope): Update.
6197         * dbxread.c (process_one_symbol): Update.
6198         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6199         (outermost_context_p): Remove macro.
6200         (outermost_context_p, get_current_context_stack)
6201         (get_context_stack_depth): Declare.
6202         (pop_context): Return struct context_stack.
6203         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6204         member.
6205         (context_stack_size): Remove.
6206         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6207         (prepare_for_building, end_symtab_get_static_block)
6208         (augment_type_symtab, push_context): Update.
6209         (pop_context): Return struct context_stack.
6210         (outermost_context_p, get_current_context_stack)
6211         (get_context_stack_depth): New functions.
6212         (buildsym_init): Update.
6213
6214 2018-07-20  Tom Tromey  <tom@tromey.com>
6215
6216         * rust-exp.y: Now a pure parser.  Update all rules.
6217         (%union): Move earlier.
6218         (current_parser, work_obstack): Remove globals.
6219         (rust_parser, ~rust_parser): Update.
6220         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6221         lex_character, lex_number, lex_string, lex_identifier,
6222         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6223         convert_name, convert_params_to_expression,
6224         convert_ast_to_expression, ast_basic_type, ast_operation,
6225         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6226         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6227         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6228         ast_array_type, ast_slice_type, ast_reference_type,
6229         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6230         (rust_parse): Update.
6231         (rustyyerror, rustyylex): Add parser parameter.
6232         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6233         (rust_lex_stringish_test, rust_lex_test_sequence)
6234         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6235         (rust_lex_test_push_back, rust_lex_tests): Update.
6236
6237 2018-07-19  Pedro Alves  <palves@redhat.com>
6238
6239         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6240         gdb::unique_xmalloc_ptr.
6241         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6242         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6243         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6244         copy-initialization.
6245         * guile/scm-pretty-print.c (ppscm_print_children): Use
6246         gdb::unique_xmalloc_ptr instead of cleanups.
6247         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6248         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6249         gdb::unique_xmalloc_ptr.
6250         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6251         Adjust to use gdb::unique_xmalloc_ptr.
6252         * guile/scm-utils.c (extract_arg): Adjust.
6253         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6254         gdb::unique_xmalloc_ptr instead of a cleanup.
6255
6256 2018-07-19  Tom Tromey  <tom@tromey.com>
6257
6258         * utils.c (do_value_free_to_mark)
6259         (make_cleanup_value_free_to_mark): Remove.
6260         * utils.h (make_cleanup_value_free_to_mark): Remove.
6261
6262 2018-07-19  Pedro Alves  <palves@redhat.com>
6263
6264         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6265         forwarding reference.
6266
6267 2018-07-18  Pedro Alves  <palves@redhat.com>
6268
6269         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6270         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6271         cleanup.
6272
6273 2018-07-18  Pedro Alves  <palves@redhat.com>
6274
6275         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6276         exceptions.
6277         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6278         (gdbscm_wrap): New.
6279         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6280         directly instead of a cleanup.
6281         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6282         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6283         (vlscm_binop_gdbthrow): New, factored out from ...
6284         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6285         (vlscm_rich_compare): Use gdbscm_wrap.
6286         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6287         instead of a cleanup.
6288         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6289         cleanup.
6290         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6291         Use xfree directly instead of a cleanup.
6292         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6293         Adjust to use gdbscm_wrap and scoped_value_mark.
6294         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6295         (gdbscm_value_address, gdbscm_value_dereference)
6296         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6297         scoped_value_mark.
6298         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6299         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6300         scoped_value_mark.
6301         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6302         gdbscm_wrap and scoped_value_mark.
6303         (gdbscm_value_to_string): Use xfree directly instead of a
6304         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6305         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6306         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6307         scoped_value_mark.
6308         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6309         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6310         scoped_value_mark.
6311         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6312         gdbscm_wrap.
6313
6314 2018-07-18  Tom de Vries  <tdevries@suse.de>
6315
6316         * findvar.c (default_read_var_value): Also resolve dynamic type for
6317         LOC_OPTIMIZED_OUT vars.
6318
6319 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6320
6321         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6322         decoding.
6323
6324 2018-07-17  Tom Tromey  <tom@tromey.com>
6325
6326         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6327         (compute_enum_list, pascm_set_param_value_x)
6328         (gdbscm_parameter_value): Update.
6329         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6330         (gdbscm_scm_to_host_string): Update.
6331         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6332         Update.
6333         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6334         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6335         * guile/scm-string.c (gdbscm_scm_to_string): Return
6336         unique_xmalloc_ptr.
6337         (gdbscm_scm_to_host_string): Likewise.
6338
6339 2018-07-17  Tom Tromey  <tom@tromey.com>
6340
6341         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6342         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6343         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6344         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6345         unique_xmalloc_ptr.
6346
6347 2018-07-17  Tom Tromey  <tom@tromey.com>
6348
6349         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6350         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6351         Update.
6352         * guile/scm-cmd.c (cmdscm_function): Update.
6353         * guile/scm-pretty-print.c
6354         (ppscm_print_exception_unless_memory_error): Update.
6355         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6356         Return unique_xmalloc_ptr.
6357
6358 2018-07-17  Tom Tromey  <tom@tromey.com>
6359
6360         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6361         Use string_printf.
6362
6363 2018-07-17  Jim Wilson  <jimw@sifive.com>
6364
6365         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6366         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6367         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6368         unecessary braces after EF_RISCV_RVC test.  Delete call to
6369         set_gdbarch_decr_pc_after_break.
6370
6371         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6372         RISCV_LAST_FP_REGNUM + 1.
6373         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6374
6375 2018-07-17  Tom Tromey  <tom@tromey.com>
6376
6377         * configure.ac: Remove --disable-gdbcli.
6378         * configure: Rebuild.
6379         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6380         (SUBDIR_CLI_CFLAGS): Remove.
6381         (SFILES): Use SUBDIR_CLI_SRCS.
6382         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6383
6384 2018-07-17  Tom Tromey  <tom@tromey.com>
6385
6386         PR gdb/18624:
6387         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6388
6389 2018-07-16  Jim Wilson  <jimw@sifive.com>
6390
6391         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6392
6393 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6394
6395         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6396         variable.
6397         (libunwind_frame_sniffer): Likewise.
6398         (libunwind_frame_prev_register): Likewise.
6399         (libunwind_sigtramp_frame_sniffer): Likewise.
6400         * ia64-tdep.c (ia64_access_reg): Likewise.
6401         (ia64_access_rse_reg): Likewise.
6402         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6403         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6404
6405 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6406
6407         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6408
6409 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6410
6411         * remote-sim.c (gdbsim_target::close,
6412         gdbsim_target::mourn_inferior): Remove unused variables.
6413
6414 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6415
6416         * ia64-tdep.c (ktab_buf): New global.
6417         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6418         (get_kernel_table): Adjust.
6419
6420 2018-07-16  Tom Tromey  <tom@tromey.com>
6421
6422         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6423         * dwarf2read.c (using_directives, new_symbol): Use
6424         outermost_context_p.
6425         * dbxread.c (process_one_symbol): Use outermost_context_p.
6426         * coffread.c (coff_symtab_read): Use outermost_context_p.
6427
6428 2018-07-16  Tom Tromey  <tom@tromey.com>
6429
6430         * dwarf2read.c (using_directives, read_func_scope)
6431         (read_lexical_block_scope): Update.
6432         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6433         * buildsym.h (local_using_directives, global_using_directives):
6434         Don't declare.
6435         (get_local_using_directives, set_local_using_directives)
6436         (get_global_using_directives): Declare.
6437         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6438         m_global_using_directives>: New members.
6439         (finish_block_internal, prepare_for_building)
6440         (reset_symtab_globals, end_symtab_get_static_block)
6441         (push_context): Update.
6442         (get_local_using_directives, set_local_using_directives)
6443         (get_global_using_directives): New functions.
6444         (buildsym_init): Update.
6445
6446 2018-07-16  Tom Tromey  <tom@tromey.com>
6447
6448         * xcoffread.c (xcoff_initial_scan): Don't call
6449         free_pending_blocks.
6450         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6451         * buildsym.h (class scoped_free_pendings): Add constructor.
6452         (free_pending_blocks): Don't declare.
6453         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6454         (free_pending_blocks): Now static.
6455
6456 2018-07-16  Tom Tromey  <tom@tromey.com>
6457
6458         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6459         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6460         member.
6461         (struct subfile_stack): Remove.
6462         (subfile_stack): Remove.
6463         (push_subfile, pop_subfile, buildsym_init): Update.
6464
6465 2018-07-16  Tom Tromey  <tom@tromey.com>
6466
6467         * buildsym.c (push_subfile): Use gdb_assert.
6468         (pop_subfile): Use gdb_assert.
6469
6470 2018-07-16  Tom Tromey  <tom@tromey.com>
6471
6472         * buildsym.h (merge_symbol_lists): Remove.
6473         * buildsym.c (merge_symbol_lists): Remove.
6474
6475 2018-07-16  Tom Tromey  <tom@tromey.com>
6476
6477         * stabsread.c (scan_file_globals): Update comment.
6478         * stabsread.h (scan_file_globals): Move from buildsym.h.
6479         * buildsym.h (scan_file_globals): Move to stabsread.h.
6480
6481 2018-07-16  Tom Tromey  <tom@tromey.com>
6482
6483         * xcoffread.c (xcoff_new_init): Update.
6484         * mipsread.c (mipscoff_new_init): Update.
6485         * mdebugread.c (mdebug_build_psymtabs): Update.
6486         * elfread.c (elf_new_init): Update.
6487         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6488         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6489         * buildsym.h (buildsym_new_init): Don't declare.
6490         * buildsym.c (buildsym_new_init): Remove.
6491
6492 2018-07-16  Tom Tromey  <tom@tromey.com>
6493
6494         * stabsread.h (within_function): Move from buildsym.h.
6495         * stabsread.c (start_stabs): Clear within_function.
6496         * coffread.c (coff_start_symtab): Clear within_function.
6497         * buildsym.h (within_function): Move to stabsread.h.
6498         * buildsym.c (prepare_for_building): Update.
6499
6500 2018-07-16  Tom Tromey  <tom@tromey.com>
6501
6502         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6503         * dwarf2read.c (dwarf2_start_symtab): Don't set
6504         processing_gcc_compilation.
6505         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6506
6507 2018-07-16  Tom Tromey  <tom@tromey.com>
6508
6509         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6510         (next_symbol_text_func): Move from buildsym.h.
6511         * stabsread.c (hashname): Move from buildsym.c.
6512         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6513         (next_symbol_text_func, hashname): Move to stabsread.h.
6514         * buildsym.c: Don't include bcache.h
6515         (hashname): Move to stasbread.c.
6516
6517 2018-07-16  Tom Tromey  <tom@tromey.com>
6518
6519         * buildsym.h (context_stack_size): Don't declare.
6520         * buildsym.c (context_stack_size): New global.
6521
6522 2018-07-16  Tom Tromey  <tom@tromey.com>
6523
6524         * dbxread.c (processing_acc_compilation): New global.
6525         * buildsym.h (processing_acc_compilation): Don't declare.
6526
6527 2018-07-16  Tom Tromey  <tom@tromey.com>
6528
6529         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6530         * dbxread.c (read_ofile_symtab): Update.
6531         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6532         * buildsym.h (last_source_start_addr): Remove.
6533         (set_last_source_start_addr, get_last_source_start_addr):
6534         Declare.
6535         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6536         parameter.
6537         (struct buildsym_compunit) <m_last_source_start_addr>: New
6538         member.
6539         (prepare_for_building): Remove start_addr parameter.
6540         (start_symtab, restart_symtab, end_symtab_get_static_block)
6541         (end_symtab_with_blockvector): Update.
6542         (set_last_source_start_addr, get_last_source_start_addr): New
6543         functions.
6544
6545 2018-07-16  Tom Tromey  <tom@tromey.com>
6546
6547         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6548         member.
6549         (have_line_numbers): Remove.
6550         (record_line, prepare_for_building, end_symtab_get_static_block)
6551         (augment_type_symtab): Update.
6552
6553 2018-07-16  Tom Tromey  <tom@tromey.com>
6554
6555         * buildsym.c (~buildsym_compunit): Free the macro table.
6556         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6557         methods.
6558         <m_pending_macros>: New member.
6559         (pending_macros): Remove.
6560         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6561         (reset_symtab_globals, end_symtab_get_static_block)
6562         (end_symtab_with_blockvector, augment_type_symtab)
6563         (buildsym_init): Update.
6564
6565 2018-07-16  Tom Tromey  <tom@tromey.com>
6566
6567         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6568         parameter.
6569         (buildsym_compunit::set_last_source_file): New method.
6570         <m_last_source_file>: New member.
6571         (prepare_for_building): Remove "name" parameter.
6572         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6573         (last_source_file): Remove.
6574         (set_last_source_file, get_last_source_file): Update.
6575
6576 2018-07-16  Tom Tromey  <tom@tromey.com>
6577
6578         * buildsym.c (prepare_for_building): Add assert.
6579
6580 2018-07-16  Tom Tromey  <tom@tromey.com>
6581
6582         * buildsym.c (~buildsym_compunit): Update.
6583         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6584         (start_subfile, patch_subfile_names)
6585         (end_symtab_with_blockvector): Update.
6586
6587 2018-07-16  Tom Tromey  <tom@tromey.com>
6588
6589         * buildsym.c (struct buildsym_compunit): Add constructor,
6590         destructor, initializers.
6591         (start_buildsym_compunit): Remove.
6592         (free_buildsym_compunit): Use "delete".
6593         (start_symtab, restart_symtab): Use "new".
6594
6595 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6596
6597         * symfile.c (set_objfile_default_section_offset): Remove struct
6598         keyword.
6599
6600 2018-07-14  Stafford Horne  <shorne@gmail.com>
6601
6602         * (Responsible Maintainers): Add myself as or1k maintainer.
6603
6604 2018-07-13  Tom Tromey  <tom@tromey.com>
6605
6606         * symfile.c (set_objfile_default_section_offset): Use extra braces
6607         around initializer.
6608
6609 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6610
6611         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6612         non-branching basr.
6613
6614 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6615
6616         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6617         unittests/cli-utils-selftests.c
6618         * unittests/cli-utils-selftests.c: New file.
6619
6620 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6621
6622         * NEWS: Mention new commands. Mention change to 'thread apply'.
6623
6624 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6625
6626         * thread.c (thr_try_catch_cmd): New function.
6627         (thread_apply_all_command): Handle qcs flags.
6628         (thread_apply_command): Handle qcs flags.
6629         (taas_command): New function.
6630         (tfaas_command): New function.
6631         (_initialize_thread): Update to setup the new commands 'taas
6632         and 'tfaas'. Change doc string for 'thread apply'.
6633
6634 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6635
6636         * stack.c: (trailing_outermost_frame): New function, mostly
6637         extracted from backtrace_command_1.
6638         (leading_innermost_frame): New function.
6639         (backtrace_command_1): Update to call trailing_outermost_frame.
6640         (frame_apply_command_count): New function.
6641         (frame_apply_level_command): New function.
6642         (frame_apply_all_command): New function.
6643         (frame_apply_command): New function.
6644         (faas_command): New function.
6645         (frame_cmd_list): New variable.
6646         (_initialize_stack): Update to setup the new commands 'frame apply'
6647         and 'faas'.
6648
6649 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6650
6651         * cli-utils.c (number_or_range_parser::get_number): Only handle
6652         numbers or convenience var as numbers.
6653         (parse_flags): New function.
6654         (parse_flags_qcs): New function.
6655         (number_or_range_parser::finished): Ensure parsing end is detected
6656         before end of string.
6657         * cli-utils.h (parse_flags): New function.
6658         (parse_flags_qcs): New function.
6659         (number_or_range_parser): Remove m_finished bool.
6660         (number_or_range_parser::skip_range): Set m_in_range to false.
6661
6662 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6663
6664         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6665         on Windows.
6666
6667 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6668             Jan Kratochvil  <jan.kratochvil@redhat.com>
6669             Paul Fertser  <fercerpav@gmail.com>
6670             Tsutomu Seki  <sekiriki@gmail.com>
6671             Pedro Alves  <palves@redhat.com>
6672
6673         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6674         'unittests/parse-connection-spec-selftests.c'.
6675         (COMMON_SFILES): Add 'common/netstuff.c'.
6676         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6677         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6678         * common/netstuff.c: New file.
6679         * common/netstuff.h: New file.
6680         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6681         (wait_for_connect): Update comment.  New parameter
6682         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6683         Use 'sock' directly instead of 'scb->fd'.
6684         (try_connect): New function, with code from 'net_open'.
6685         (net_open): Rewrite main loop to deal with multiple
6686         sockets/addresses.  Handle IPv6-style hostnames; implement
6687         support for IPv6 connections.
6688         * unittests/parse-connection-spec-selftests.c: New file.
6689
6690 2018-07-11  Pedro Alves  <palves@redhat.com>
6691
6692         PR gdb/23377
6693         * remote.c (remote_target::remote_detach_pid): Call
6694         set_current_process.
6695
6696 2018-07-11  Pedro Alves  <palves@redhat.com>
6697
6698         * h8300-tdep.c (h8300_gdbarch_init): Remove
6699         set_gdbarch_ecoff_reg_to_regnum calls.
6700
6701 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6702
6703         PR c++/23373
6704         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6705         offsets/sizes for static members of a class/struct.
6706
6707 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6708
6709         * target-descriptions.c (tdesc_register_bitsize): Rename.
6710         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6711         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6712         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6713
6714 2018-07-10  Tom Tromey  <tom@tromey.com>
6715
6716         * breakpoint.c (moribund_locations): Now static and a
6717         std::vector.
6718         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6719         (build_bpstat_chain, update_global_location_list)
6720         (breakpoint_retire_moribund): Update.
6721         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6722         VEC.
6723
6724 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6725
6726         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6727         (riscv_register_reggroup_p): Use new function, remove unneeded
6728         parenthesis.
6729         (riscv_push_dummy_call): Extend assert to compare against xlen or
6730         flen based on register type.
6731
6732 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6733
6734         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6735
6736 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6737
6738         * remote.c (show_hardware_watchpoint_limit): New function.
6739         (show_hardware_watchpoint_length_limit): New function.
6740         (show_hardware_breakpoint_limit): New function.
6741         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6742         where appropriate, update help text.
6743
6744 2018-07-09  Tom Tromey  <tom@tromey.com>
6745
6746         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6747         (CLIBS): Don't mention NAT_CLIBS.
6748
6749 2018-07-09  Tom Tromey  <tom@tromey.com>
6750
6751         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6752         (LIBGDB_OBS, clean mostlyclean): Update.
6753         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6754
6755 2018-07-09  Tom Tromey  <tom@tromey.com>
6756
6757         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6758         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6759         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6760
6761 2018-07-09  Tom Tromey  <tom@tromey.com>
6762
6763         * Makefile.in (ALLDEPFILES): Remove exec.c.
6764         (COMMON_OBS): Remove exec.o.
6765         (COMMON_SFILES): Add exec.c.
6766
6767 2018-07-09  Tom Tromey  <tom@tromey.com>
6768
6769         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6770
6771 2018-07-09  Tom Tromey  <tom@tromey.com>
6772
6773         * Makefile.in (clean mostlyclean): Remove stamp-version.
6774         (version.c): Depend on stamp-version.
6775         (stamp-version): New rule, from version.c rule.
6776
6777 2018-07-09  Tom Tromey  <tom@tromey.com>
6778
6779         * Makefile.in (init.c): Depend on stamp-init.
6780         (stamp-init): New rule, from init.c rule.
6781         (clean mostlyclean): Remove stamp-init.
6782
6783 2018-07-09  Tom Tromey  <tom@tromey.com>
6784
6785         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6786         SUBDIR_GCC_COMPILE_SRCS.
6787
6788 2018-07-09  Tom Tromey  <tom@tromey.com>
6789
6790         * Makefile.in (init.c): Remove some unused sed rules.
6791
6792 2018-07-09  Tom Tromey  <tom@tromey.com>
6793
6794         * Makefile.in (TSOBS): Remove.
6795         (INIT_FILES): Update.
6796         (LIBGDB_OBS): Update.
6797         (COMMON_SFILES): Add inflow.c.
6798         (SFILES): Remove inflow.c.
6799
6800 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6801
6802         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6803
6804 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6805
6806         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6807         get_saveloc_name, is_signal_frame_name, step_name,
6808         init_remote_name, create_addr_space_name,
6809         destroy_addr_space_name, search_unwind_table_name,
6810         find_dyn_list_name): Constify.
6811
6812 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6813
6814         * darwin-nat.c (darwin_pthread_kill): New function.
6815         (darwin_resume_thread): Use darwin_pthread_kill.
6816
6817 2018-07-05  Tom de Vries  <tdevries@suse.de>
6818
6819         * macroexp.c (macro_buffer) <operator=>: New member function.
6820
6821 2018-07-04  Tom Tromey  <tom@tromey.com>
6822
6823         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6824
6825 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6826
6827         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6828         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6829         * maint.c: Likewise.
6830         * top.c: Likewise.
6831
6832 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6833
6834         * NEWS: Create a new section for the next release branch.
6835         Rename the section of the current branch, now that it has
6836         been cut.
6837
6838 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6839
6840         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6841         * version.in: Bump version to 8.2.50.DATE-git.
6842
6843 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6844             Pedro Alves  <palves@redhat.com>
6845
6846         * linux-nat.c (linux_init_ptrace): Rename to ...
6847         (linux_init_ptrace_procfs): ... this.  Call
6848         linux_proc_init_warnings.
6849         (linux_nat_target::post_attach)
6850         (linux_nat_target::post_startup_inferior): Adjust.
6851         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6852         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6853
6854 2018-07-04  Tom de Vries  <tdevries@suse.de>
6855
6856         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6857         check ...
6858         (read_comp_unit_head): ... here.
6859
6860 2018-07-03  Tom Tromey  <tom@tromey.com>
6861
6862         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6863         (stop_tracing, tstatus_command)
6864         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6865         (print_one_static_tracepoint_marker): Update.
6866         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6867         std::vector.
6868         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6869         VEC.
6870         (all_tracepoints, static_tracepoints_here): Return std::vector.
6871
6872 2018-07-03  Tom Tromey  <tom@tromey.com>
6873
6874         * common/ptid.c (ptid_equal): Remove.
6875         * common/ptid.h (ptid_equal): Don't declare.
6876         * ada-tasks.c: Update.
6877         * breakpoint.c: Update.
6878         * common/agent.c: Update.
6879         * corelow.c: Update.
6880         * darwin-nat-info.c: Update.
6881         * darwin-nat.c: Update.
6882         * dcache.c: Update.
6883         * dtrace-probe.c: Update.
6884         * dummy-frame.c: Update.
6885         * fbsd-nat.c: Update.
6886         * frame.c: Update.
6887         * gdbthread.h: Update.
6888         * gnu-nat.c: Update.
6889         * go32-nat.c: Update.
6890         * inf-loop.c: Update.
6891         * inf-ptrace.c: Update.
6892         * infcall.c: Update.
6893         * infcmd.c: Update.
6894         * inflow.c: Update.
6895         * infrun.c: Update.
6896         * linux-fork.c: Update.
6897         * linux-nat.c: Update.
6898         * linux-thread-db.c: Update.
6899         * mi/mi-cmd-var.c: Update.
6900         * mi/mi-interp.c: Update.
6901         * mi/mi-main.c: Update.
6902         * nto-procfs.c: Update.
6903         * ppc-linux-tdep.c: Update.
6904         * procfs.c: Update.
6905         * python/py-inferior.c: Update.
6906         * python/py-record-btrace.c: Update.
6907         * python/py-record.c: Update.
6908         * ravenscar-thread.c: Update.
6909         * regcache.c: Update.
6910         * remote-sim.c: Update.
6911         * remote.c: Update.
6912         * sol-thread.c: Update.
6913         * solib.c: Update.
6914         * target.c: Update.
6915         * tui/tui-stack.c: Update.
6916         * varobj.c: Update.
6917         * windows-nat.c: Update.
6918         * windows-tdep.c: Update.
6919
6920 2018-07-03  Tom Tromey  <tom@tromey.com>
6921
6922         * common/ptid.c (ptid_match): Remove.
6923         * common/ptid.h (ptid_match): Don't declare.
6924         * fbsd-nat.c: Update.
6925         * infcmd.c: Update.
6926         * infrun.c: Update.
6927         * linux-nat.c: Update.
6928         * record-btrace.c: Update.
6929         * regcache.c: Update.
6930         * remote.c: Update.
6931
6932 2018-07-03  Tom Tromey  <tom@tromey.com>
6933
6934         * common/ptid.c (ptid_tid_p): Remove.
6935         * common/ptid.h (ptid_tid_p): Don't declare.
6936         * sol-thread.c: Update.
6937
6938 2018-07-03  Tom Tromey  <tom@tromey.com>
6939
6940         * common/ptid.c (ptid_lwp_p): Remove.
6941         * common/ptid.h (ptid_lwp_p): Don't declare.
6942         * fbsd-nat.c: Update.
6943         * linux-nat.c: Update.
6944         * nat/linux-procfs.c: Update.
6945         * nat/x86-linux-dregs.c: Update.
6946         * sol-thread.c: Update.
6947
6948 2018-07-03  Tom Tromey  <tom@tromey.com>
6949
6950         * common/ptid.c (ptid_is_pid): Remove.
6951         * common/ptid.h (ptid_is_pid): Don't declare.
6952         * infrun.c: Update.
6953         * linux-nat.c: Update.
6954         * mi/mi-interp.c: Update.
6955         * remote.c: Update.
6956         * thread.c: Update.
6957
6958 2018-07-03  Tom Tromey  <tom@tromey.com>
6959
6960         * common/ptid.c (ptid_get_tid): Remove.
6961         * common/ptid.h (ptid_get_tid): Don't declare.
6962         * ada-tasks.c: Update.
6963         * aix-thread.c: Update.
6964         * bsd-uthread.c: Update.
6965         * darwin-nat.c: Update.
6966         * fbsd-nat.c: Update.
6967         * i386-darwin-nat.c: Update.
6968         * infrun.c: Update.
6969         * linux-tdep.c: Update.
6970         * nto-procfs.c: Update.
6971         * ppc-ravenscar-thread.c: Update.
6972         * python/py-infthread.c: Update.
6973         * ravenscar-thread.c: Update.
6974         * sol-thread.c: Update.
6975         * sparc-ravenscar-thread.c: Update.
6976         * windows-nat.c: Update.
6977
6978 2018-07-03  Tom Tromey  <tom@tromey.com>
6979
6980         * common/ptid.c (ptid_get_lwp): Remove.
6981         * common/ptid.h (ptid_get_lwp): Don't declare.
6982         * aarch64-linux-nat.c: Update.
6983         * ada-tasks.c: Update.
6984         * aix-thread.c: Update.
6985         * amd64-linux-nat.c: Update.
6986         * arm-linux-nat.c: Update.
6987         * corelow.c: Update.
6988         * fbsd-nat.c: Update.
6989         * fbsd-tdep.c: Update.
6990         * gnu-nat.c: Update.
6991         * i386-cygwin-tdep.c: Update.
6992         * i386-gnu-nat.c: Update.
6993         * i386-linux-nat.c: Update.
6994         * ia64-linux-nat.c: Update.
6995         * inf-ptrace.c: Update.
6996         * infrun.c: Update.
6997         * linux-fork.c: Update.
6998         * linux-nat.c: Update.
6999         * linux-tdep.c: Update.
7000         * linux-thread-db.c: Update.
7001         * mips-linux-nat.c: Update.
7002         * nat/aarch64-linux-hw-point.c: Update.
7003         * nat/aarch64-linux.c: Update.
7004         * nat/linux-btrace.c: Update.
7005         * nat/linux-osdata.c: Update.
7006         * nat/linux-procfs.c: Update.
7007         * nat/x86-linux-dregs.c: Update.
7008         * obsd-nat.c: Update.
7009         * ppc-fbsd-nat.c: Update.
7010         * ppc-linux-nat.c: Update.
7011         * procfs.c: Update.
7012         * python/py-infthread.c: Update.
7013         * ravenscar-thread.c: Update.
7014         * remote.c: Update.
7015         * s390-linux-nat.c: Update.
7016         * sol-thread.c: Update.
7017         * sol2-tdep.c: Update.
7018         * spu-linux-nat.c: Update.
7019         * x86-linux-nat.c: Update.
7020         * xtensa-linux-nat.c: Update.
7021
7022 2018-07-03  Tom Tromey  <tom@tromey.com>
7023
7024         * common/ptid.c (ptid_get_pid): Remove.
7025         * common/ptid.h (ptid_get_pid): Don't declare.
7026         * aarch64-linux-nat.c: Update.
7027         * ada-lang.c: Update.
7028         * aix-thread.c: Update.
7029         * alpha-bsd-nat.c: Update.
7030         * amd64-fbsd-nat.c: Update.
7031         * amd64-linux-nat.c: Update.
7032         * arm-linux-nat.c: Update.
7033         * arm-nbsd-nat.c: Update.
7034         * auxv.c: Update.
7035         * break-catch-syscall.c: Update.
7036         * breakpoint.c: Update.
7037         * bsd-uthread.c: Update.
7038         * corelow.c: Update.
7039         * ctf.c: Update.
7040         * darwin-nat.c: Update.
7041         * fbsd-nat.c: Update.
7042         * fbsd-tdep.c: Update.
7043         * gcore.c: Update.
7044         * gnu-nat.c: Update.
7045         * hppa-nbsd-nat.c: Update.
7046         * hppa-obsd-nat.c: Update.
7047         * i386-fbsd-nat.c: Update.
7048         * ia64-linux-nat.c: Update.
7049         * inf-ptrace.c: Update.
7050         * infcmd.c: Update.
7051         * inferior.c: Update.
7052         * inferior.h: Update.
7053         * inflow.c: Update.
7054         * infrun.c: Update.
7055         * linux-fork.c: Update.
7056         * linux-nat.c: Update.
7057         * linux-tdep.c: Update.
7058         * linux-thread-db.c: Update.
7059         * m68k-bsd-nat.c: Update.
7060         * mi/mi-interp.c: Update.
7061         * mi/mi-main.c: Update.
7062         * mips-linux-nat.c: Update.
7063         * mips-nbsd-nat.c: Update.
7064         * mips64-obsd-nat.c: Update.
7065         * nat/aarch64-linux-hw-point.c: Update.
7066         * nat/aarch64-linux.c: Update.
7067         * nat/linux-btrace.c: Update.
7068         * nat/linux-osdata.c: Update.
7069         * nat/linux-procfs.c: Update.
7070         * nat/x86-linux-dregs.c: Update.
7071         * nto-procfs.c: Update.
7072         * obsd-nat.c: Update.
7073         * ppc-linux-nat.c: Update.
7074         * ppc-nbsd-nat.c: Update.
7075         * ppc-obsd-nat.c: Update.
7076         * proc-service.c: Update.
7077         * procfs.c: Update.
7078         * python/py-inferior.c: Update.
7079         * python/py-infthread.c: Update.
7080         * ravenscar-thread.c: Update.
7081         * record.c: Update.
7082         * remote-sim.c: Update.
7083         * remote.c: Update.
7084         * rs6000-nat.c: Update.
7085         * s390-linux-nat.c: Update.
7086         * sh-nbsd-nat.c: Update.
7087         * sol-thread.c: Update.
7088         * sparc-nat.c: Update.
7089         * sparc64-tdep.c: Update.
7090         * spu-linux-nat.c: Update.
7091         * spu-tdep.c: Update.
7092         * target-debug.h: Update.
7093         * target.c: Update.
7094         * thread.c: Update.
7095         * tid-parse.c: Update.
7096         * tracefile-tfile.c: Update.
7097         * vax-bsd-nat.c: Update.
7098         * windows-nat.c: Update.
7099         * x86-linux-nat.c: Update.
7100         * x86-nat.c: Update.
7101
7102 2018-07-03  Tom Tromey  <tom@tromey.com>
7103
7104         * common/ptid.c (pid_to_ptid): Remove.
7105         * common/ptid.h (pid_to_ptid): Don't declare.
7106         * aix-thread.c: Update.
7107         * arm-linux-nat.c: Update.
7108         * common/ptid.c: Update.
7109         * common/ptid.h: Update.
7110         * corelow.c: Update.
7111         * ctf.c: Update.
7112         * darwin-nat.c: Update.
7113         * fbsd-nat.c: Update.
7114         * fork-child.c: Update.
7115         * gnu-nat.c: Update.
7116         * go32-nat.c: Update.
7117         * inf-ptrace.c: Update.
7118         * infcmd.c: Update.
7119         * inferior.c: Update.
7120         * infrun.c: Update.
7121         * linux-fork.c: Update.
7122         * linux-nat.c: Update.
7123         * nat/aarch64-linux-hw-point.c: Update.
7124         * nat/fork-inferior.c: Update.
7125         * nat/x86-linux-dregs.c: Update.
7126         * nto-procfs.c: Update.
7127         * obsd-nat.c: Update.
7128         * procfs.c: Update.
7129         * progspace.c: Update.
7130         * remote.c: Update.
7131         * rs6000-nat.c: Update.
7132         * s390-linux-nat.c: Update.
7133         * sol-thread.c: Update.
7134         * spu-linux-nat.c: Update.
7135         * target.c: Update.
7136         * top.c: Update.
7137         * tracefile-tfile.c: Update.
7138         * windows-nat.c: Update.
7139
7140 2018-07-03  Tom Tromey  <tom@tromey.com>
7141
7142         * common/ptid.h (ptid_build): Don't declare.
7143         * common/ptid.c (ptid_build): Remove.
7144         * aix-thread.c: Update.
7145         * bsd-kvm.c: Update.
7146         * bsd-uthread.c: Update.
7147         * common/agent.c: Update.
7148         * common/ptid.c: Update.
7149         * common/ptid.h: Update.
7150         * corelow.c: Update.
7151         * darwin-nat.c: Update.
7152         * fbsd-nat.c: Update.
7153         * gnu-nat.c: Update.
7154         * linux-fork.c: Update.
7155         * linux-nat.c: Update.
7156         * linux-thread-db.c: Update.
7157         * nat/linux-osdata.c: Update.
7158         * nat/linux-procfs.c: Update.
7159         * nto-procfs.c: Update.
7160         * obsd-nat.c: Update.
7161         * proc-service.c: Update.
7162         * procfs.c: Update.
7163         * ravenscar-thread.c: Update.
7164         * remote-sim.c: Update.
7165         * remote.c: Update.
7166         * sol-thread.c: Update.
7167         * target.c: Update.
7168         * windows-nat.c: Update.
7169
7170 2018-07-03  Tom Tromey  <tom@tromey.com>
7171
7172         * infrun.c (follow_exec): Use exit_inferior_silent.
7173         * inferior.c (exit_inferior_num_silent): Remove.
7174         * inferior.h (exit_inferior_num_silent): Don't declare.
7175
7176 2018-07-03  Tom Tromey  <tom@tromey.com>
7177
7178         PR cli/23340:
7179         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7180         inferior_ptid on error.
7181
7182 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7183             Simon Marchi  <simon.marchi@polymtl.ca>
7184
7185         PR tdep/8282
7186         * disasm.h (gdb_disassembler): Add
7187         `m_disassembler_options_holder'. member
7188         * disasm.c (get_all_disassembler_options): New function.
7189         (gdb_disassembler::gdb_disassembler): Use it.
7190         (gdb_buffered_insn_length_init_dis): Likewise.
7191         (gdb_buffered_insn_length): Adjust accordingly.
7192         (set_disassembler_options): Handle options with arguments.
7193         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7194         line if showing options with descriptions.
7195         (disassembler_options_completer): Adapt to using the
7196         `disasm_options_and_args_t' structure.
7197         * mips-tdep.c (mips_disassembler_options): New variable.
7198         (mips_disassembler_options_o32): Likewise.
7199         (mips_disassembler_options_n32): Likewise.
7200         (mips_disassembler_options_n64): Likewise.
7201         (gdb_print_insn_mips): Don't set `disassembler_options'.
7202         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7203         functions.
7204         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7205         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7206         `gdbarch_disassembler_options_implicit' and
7207         `gdbarch_valid_disassembler_options'.
7208         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7209         `disasm_options_and_args_t' structure.
7210         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7211         method.
7212         (valid_disassembler_options): Switch from `disasm_options_t' to
7213         the `disasm_options_and_args_t' structure.
7214         * NEWS: Document `set disassembler-options' support for the MIPS
7215         target.
7216         * gdbarch.h: Regenerate.
7217         * gdbarch.c: Regenerate.
7218
7219 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7220
7221         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7222
7223 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7224
7225         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7226         parameter in call to amd64_target_description.
7227         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7228         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7229         (amd64fbsd_init_abi): Likewise.
7230         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7231         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7232         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7233         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7234
7235 2018-06-29  Pedro Alves  <palves@redhat.com>
7236
7237         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7238         "segments" parameter.
7239         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7240         (_initialize_amd64_tdep): Update call to
7241         amd64_create_target_description.
7242         (amd64_target_description): Add "segments" parameter.  Adjust
7243         the implementation to use it.
7244         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7245         call to amd64_create_target_description.
7246         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7247         * gdb/arch/amd64.h (amd64_create_target_description): Add
7248         "segments" register.
7249         * gdb/arch/amd64.c (amd64_create_target_description): Add
7250         "segments" parameter.  Call create_feature_i386_64bit_segments
7251         only if SEGMENTS is true.
7252         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7253         call to amd64_create_target_description.
7254
7255 2018-06-29  Pedro Alves  <palves@redhat.com>
7256
7257         * thread.c (thread_target_id_str): New, factored out from ...
7258         (print_thread_info_1): ... here.  Use it to compute the max
7259         "Target Id" column width.
7260
7261 2018-06-29  Pedro Alves  <palves@redhat.com>
7262
7263         * remote.c (remote_target::extra_thread_info): Delete
7264         'display_buf' and 'n' locals.  from the cache, regardless of
7265         packet mechanims is in use.  Use cache for qThreadExtra and qP
7266         methods too.
7267
7268 2018-06-29  Pedro Alves  <palves@redhat.com>
7269
7270         * blockframe.c (find_pc_sect_containing_function): New function.
7271         * breakpoint.c (print_breakpoint_location): Don't call
7272         find_pc_sect_function.
7273         * linespec.c (create_sals_line_offset): Record the location's
7274         symbol in the sal.
7275         * linespec.c (convert_address_location_to_sals): Fill in sal's
7276         symbol with find_pc_sect_containing_function.
7277         * symtab.c (find_function_start_sal): Rename to ...
7278         (find_function_start_sal_1): ... this.
7279         (find_function_start_sal): Reimplement as wrapper around
7280         find_function_start_sal_1, and use
7281         find_pc_sect_containing_function to fill in the sal's symbol.
7282         (find_function_start_sal(symbol*, bool)): Adjust.
7283         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7284         comments.
7285         (find_pc_sect_containing_function): Declare.
7286
7287 2018-06-29  Pedro Alves  <palves@redhat.com>
7288
7289         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7290         true if the the location has no symbol.
7291
7292 2018-06-28  Tom Tromey  <tom@tromey.com>
7293
7294         * NEWS: Mention --enable-codesign.
7295         * silent-rules.mk (ECHO_SIGN): New variable.
7296         * configure.ac: Add --enable-codesign.
7297         * configure: Rebuild.
7298         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7299         (gdb$(EXEEXT)): Optionally invoke codesign.
7300
7301 2018-06-28  Pedro Alves  <palves@redhat.com>
7302
7303         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7304         comments.
7305         (switch_to_thread_no_regs): Adjust comment.
7306         * infcmd.c (stop_pc): Delete.
7307         (post_create_inferior, info_program_command): Replace references
7308         to stop_pc with references to thread_info->suspend.stop_pc.
7309         * inferior.h (stop_pc): Delete declaration.
7310         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7311         (handle_inferior_event_1, handle_signal_stop)
7312         (process_event_stop_test, keep_going_stepped_thread)
7313         (handle_step_into_function, handle_step_into_function_backward)
7314         (print_stop_location): Replace references to stop_pc with
7315         references to thread_info->suspend.stop_pc.
7316         (struct infcall_suspend_state) <stop_pc>: Delete field.
7317         (save_infcall_suspend_state, restore_infcall_suspend_state):
7318         Remove references to inf_stat->stop_pc.
7319         * linux-fork.c (fork_load_infrun_state): Likewise.
7320         * record-btrace.c (record_btrace_set_replay): Likewise.
7321         * record-full.c (record_full_goto_entry): Likewise.
7322         * remote.c (print_one_stopped_thread): Likewise.
7323         * target.c (target_resume): Extend comment.
7324         * thread.c (set_executing_thread): New.
7325         (set_executing): Use it.
7326         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7327         Remove references to stop_pc.
7328
7329 2018-06-28  Pedro Alves  <palves@redhat.com>
7330
7331         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7332         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7333
7334 2018-06-28  Tom Tromey  <tom@tromey.com>
7335
7336         * coffread.c (coff_symfile_finish): Update.
7337         * xcoffread.c (xcoff_symfile_finish): Update.
7338         * elfread.c (elf_symfile_finish): Update.
7339         * symfile.h (dwarf2_free_objfile): Don't declare.
7340         * dwarf2read.c (_initialize_dwarf2_read): Use
7341         register_objfile_data_with_cleanup.
7342         (dwarf2_free_objfile): Now static.  Change signature.
7343
7344 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7345
7346         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7347         option "-o" to add-symbol-file-load to add an offset to each
7348         section's load address.
7349         * symfile.c (set_objfile_default_section_offset): New function.
7350
7351 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7352
7353         * symfile.c (add_symbol_file_command): Make sure that sections
7354         with the same name are sorted in the same order.
7355
7356 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7357
7358         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7359         require the second argument.  If omitted, load sections at the
7360         addresses specified in the file.
7361
7362 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7363
7364         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7365         (_initialize_symfile): Add option "-o" to symbol-file to add an
7366         offset to each section of the symbol file.
7367
7368 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7369
7370         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7371
7372 2018-06-27  Tom Tromey  <tom@tromey.com>
7373
7374         * stack.c (_initialize_stack): Update "func" help text.
7375
7376 2018-06-27  Tom Tromey  <tom@tromey.com>
7377
7378         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7379         std::vector.
7380         (unwind_infopy_str, pyuw_create_unwind_info)
7381         (unwind_infopy_add_saved_register, pyuw_sniffer)
7382         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7383         Update.
7384         (struct saved_reg): Add constructor.
7385         <value>: Now a gdbpy_ref<>.
7386
7387 2018-06-27  Tom Tromey  <tom@tromey.com>
7388
7389         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7390
7391 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7392
7393         * gdb-gdb.py.in: Format using autopep8.
7394
7395 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7396
7397         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7398         (type_lookup_function): Recognize CORE_ADDR values.
7399
7400 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7401
7402         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7403         print tag_name.
7404
7405 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7406
7407         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7408         <__lt__>: Add.
7409
7410 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7411
7412         * gdb-gdb.py: Move to...
7413         * gdb-gdb.py.in: ... here.
7414         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7415         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7416         dependencies.
7417         (distclean): Remove gdb-gdb.py when cleaning.
7418         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7419         * configure: Re-generate.
7420
7421 2018-06-27  Pedro Alves  <palves@redhat.com>
7422
7423         * proc-service.c (get_ps_regcache): New.
7424         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7425         (ps_lsetfpregs): Use it.
7426
7427 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7428
7429         PR gdb/21695
7430         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7431         declaration.
7432         (dwarf_decode_lines_1): Adjust.
7433
7434 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7435
7436         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7437         override.
7438         <info_proc>: Likewise.
7439
7440 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7441
7442         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7443         to windows_fetch_one_register, and only handle the case of
7444         fetching one register.  Move the code that reloads the context
7445         and iterates over all registers if R is negative to...
7446         (windows_nat_target::fetch_registers): ... here.
7447         (do_windows_store_inferior_registers): Rename to
7448         windows_store_one_register, and only handle the case of storing
7449         one register.  Move the code that handles the case where r is
7450         negative to...
7451         (windows_nat_target::store_registers) ... here.
7452
7453 2018-06-26  Tom Tromey  <tom@tromey.com>
7454
7455         PR rust/22574:
7456         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7457         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7458         Update.
7459         (rust_internal_print_type): Add podata parameter.
7460         (rust_print_type): Update.
7461
7462 2018-06-26  Tom Tromey  <tom@tromey.com>
7463
7464         * typeprint.h (struct print_offset_data) <update, finish,
7465         maybe_print_hole>: New methods.
7466         <indentation>: New constant.
7467         * typeprint.c (print_offset_data::indentation): Define.
7468         (print_offset_data::maybe_print_hole, print_offset_data::update)
7469         (print_offset_data::finish): Move from c-typeprint.c and rename.
7470         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7471         (print_spaces_filtered_with_print_options): Update.
7472         (c_print_type_union_field_offset, maybe_print_hole)
7473         (c_print_type_struct_field_offset): Move to typeprint.c and
7474         rename.
7475         (c_type_print_base_struct_union): Update.
7476
7477 2018-06-25  Pedro Alves  <palves@redhat.com>
7478
7479         * gdbthread.h (thread_info_ref, delete_thread)
7480         (delete_thread_silent, first_thread_of_inferior)
7481         (any_thread_of_inferior, switch_to_thread)
7482         (enable_thread_stack_temporaries)
7483         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7484         (get_last_thread_stack_temporary)
7485         (value_in_thread_stack_temporaries, can_access_registers_thread):
7486         Spell out "struct thread_info" instead of just "thread_info".
7487         * inferior.h (notice_new_inferior): Likewise.
7488
7489 2018-06-25  Pedro Alves  <palves@redhat.com>
7490
7491         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7492         pass thread_info pointer to delete_thread.
7493         (windows_nat_target::detach): Pass inferior pointer to
7494         detach_inferior.
7495         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7496         delete_thread.
7497         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7498         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7499         and pass a thread_info pointer to delete_thread.
7500         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7501         pass thread_info pointer to delete_thread.
7502         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7503         delete_thread_silent call.
7504         * procfs.c (procfs_target::detach): Pass inferior pointer to
7505         detach_inferior.
7506         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7507         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7508         delete_thread_silent call.
7509         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7510         pass thread_info pointer to delete_thread.
7511         (windows_nat_target::detach): Pass inferior pointer to
7512         delete_inferior.
7513
7514 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7515
7516         * regcache.c (readable_regcache::read_part): Fix asserts.
7517         (reg_buffer::raw_collect_part): New function.
7518         (regcache::write_part): Fix asserts.
7519         (reg_buffer::raw_supply_part): New function.
7520         (regcache::transfer_regset_register): New helper function.
7521         (regcache::transfer_regset): Call new functions.
7522         (regcache_supply_regset): Use gdb_byte*.
7523         (regcache::supply_regset): Likewise.
7524         (regcache_collect_regset): Likewise.
7525         (regcache::collect_regset): Likewise.
7526         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7527         (reg_buffer::raw_supply_part): Likewise.
7528         (regcache::transfer_regset_register): Likewise.
7529         (regcache::transfer_regset): Use gdb_byte*.
7530
7531 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7532
7533         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7534
7535 2018-06-21  Pedro Alves  <palves@redhat.com>
7536
7537         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7538         instead of a ptid_t.  All callers adjusted.
7539         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7540         adjusted.
7541         (print_ada_task_info, display_current_task_id, task_command_1):
7542         Adjust.
7543         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7544         inferior_thread.
7545         (breakpoint_kind): Adjust.
7546         (remove_breakpoints_pid): Rename to ...
7547         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7548         pointer.  All callers adjusted.
7549         (bpstat_clear_actions): Use inferior_thread.
7550         (get_bpstat_thread): New.
7551         (bpstat_do_actions): Use it.
7552         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7553         to take a thread_info pointer.  All callers adjusted.
7554         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7555         (breakpoint_re_set_thread): Use inferior_thread.
7556         * breakpoint.h (struct inferior): Forward declare.
7557         (bpstat_stop_status): Update.
7558         (remove_breakpoints_pid): Delete.
7559         (remove_breakpoints_inf): New.
7560         * bsd-uthread.c (bsd_uthread_target::wait)
7561         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7562         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7563         (maint_btrace_packet_history_cmd)
7564         (maint_btrace_clear_packet_history_cmd): Adjust.
7565         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7566         inferior_thread.
7567         * cli/cli-interp.c: Include "inferior.h".
7568         * common/refcounted-object.h (struct
7569         refcounted_object_ref_policy): New.
7570         * compile/compile-object-load.c: Include gdbthread.h.
7571         (store_regs): Use inferior_thread.
7572         * corelow.c (core_target::close): Use current_inferior.
7573         (core_target_open): Adjust to use first_thread_of_inferior and use
7574         the current inferior.
7575         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7576         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7577         <thread>: ... this new field.  All references adjusted.
7578         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7579         Take a thread_info pointer instead of a ptid_t.
7580         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7581         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7582         thread_info pointer instead of a ptid_t.
7583         * elfread.c: Include "inferior.h".
7584         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7585         Use inferior_thread.
7586         * eval.c (evaluate_subexp): Likewise.
7587         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7588         inferior_thread.
7589         * gdb_proc_service.h (struct thread_info): Forward declare.
7590         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7591         <thread>: ... this new field.  All references adjusted.
7592         * gdbarch.h, gdbarch.c: Regenerate.
7593         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7594         'thread' parameter.  All implementations and callers adjusted.
7595         * gdbthread.h (thread_info) <set_running>: New method.
7596         (delete_thread, delete_thread_silent): Take a thread_info pointer
7597         instead of a ptid.
7598         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7599         (first_thread_of_process): Delete, replaced by ...
7600         (first_thread_of_inferior): ... this new function.  All callers
7601         adjusted.
7602         (any_live_thread_of_process): Delete, replaced by ...
7603         (any_live_thread_of_inferior): ... this new function.  All callers
7604         adjusted.
7605         (switch_to_thread, switch_to_no_thread): Declare.
7606         (is_executing): Delete.
7607         (enable_thread_stack_temporaries): Update comment.
7608         <enable_thread_stack_temporaries>: Take a thread_info pointer
7609         instead of a ptid_t.  Incref the thread.
7610         <~enable_thread_stack_temporaries>: Decref the thread.
7611         <m_ptid>: Delete
7612         <m_thr>: New.
7613         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7614         (get_last_thread_stack_temporary)
7615         (value_in_thread_stack_temporaries, can_access_registers_thread):
7616         Take a thread_info pointer instead of a ptid_t.  All callers
7617         adjusted.
7618         * infcall.c (get_call_return_value): Use inferior_thread.
7619         (run_inferior_call): Work with thread pointers instead of ptid_t.
7620         (call_function_by_hand_dummy): Work with thread pointers instead
7621         of ptid_t.  Use thread_info_ref.
7622         * infcmd.c (proceed_thread_callback): Access thread's state
7623         directly.
7624         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7625         access thread's state directly.
7626         (continue_command): Use inferior_thread.
7627         (info_program_command): Use find_thread_ptid and access thread
7628         state directly.
7629         (proceed_after_attach_callback): Use thread state directly.
7630         (notice_new_inferior): Take a thread_info pointer instead of a
7631         ptid_t.  All callers adjusted.
7632         (exit_inferior): Take an inferior pointer instead of a pid.  All
7633         callers adjusted.
7634         (exit_inferior_silent): New.
7635         (detach_inferior): Delete.
7636         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7637         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7638         (detach_inferior_command, kill_inferior_command): Use
7639         find_inferior_id instead of valid_gdb_inferior_id and
7640         gdb_inferior_id_to_pid.
7641         (inferior_command): Use inferior and thread pointers.
7642         * inferior.h (struct thread_info): Forward declare.
7643         (notice_new_inferior): Take a thread_info pointer instead of a
7644         ptid_t.  All callers adjusted.
7645         (detach_inferior): Delete declaration.
7646         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7647         instead of a pid.  All callers adjusted.
7648         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7649         (valid_gdb_inferior_id): Delete.
7650         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7651         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7652         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7653         ...
7654         <inf>: ... this new field.
7655         <step_ptid>: Delete, replaced by ...
7656         <step_thread>: ... this new field.
7657         (get_displaced_stepping_state): Take an inferior pointer instead
7658         of a pid.  All callers adjusted.
7659         (displaced_step_in_progress_any_inferior): Adjust.
7660         (displaced_step_in_progress_thread): Take a thread pointer instead
7661         of a ptid_t.  All callers adjusted.
7662         (displaced_step_in_progress, add_displaced_stepping_state): Take
7663         an inferior pointer instead of a pid.  All callers adjusted.
7664         (get_displaced_step_closure_by_addr): Adjust.
7665         (remove_displaced_stepping_state): Take an inferior pointer
7666         instead of a pid.  All callers adjusted.
7667         (displaced_step_prepare_throw, displaced_step_prepare)
7668         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7669         All callers adjusted.
7670         (start_step_over): Adjust.
7671         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7672         displaced step queue.
7673         (do_target_resume): Adjust.
7674         (fetch_inferior_event): Use inferior_thread.
7675         (context_switch, get_inferior_stop_soon): Take an
7676         execution_control_state pointer instead of a ptid_t.  All callers
7677         adjusted.
7678         (switch_to_thread_cleanup): Delete.
7679         (stop_all_threads): Use scoped_restore_current_thread.
7680         * inline-frame.c: Include "gdbthread.h".
7681         (inline_state) <inline_state>: Take a thread pointer instead of a
7682         ptid_t.  All callers adjusted.
7683         <ptid>: Delete, replaced by ...
7684         <thread>: ... this new field.
7685         (find_inline_frame_state): Take a thread pointer instead of a
7686         ptid_t.  All callers adjusted.
7687         (skip_inline_frames, step_into_inline_frame)
7688         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7689         pointer instead of a ptid_t.  All callers adjusted.
7690         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7691         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7692         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7693         pointers directly.
7694         * linux-nat.c (get_detach_signal): Likewise.
7695         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7696         (thread_db_notice_clone): Adjust.
7697         (thread_db_find_new_threads_silently)
7698         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7699         a thread pointer instead of a ptid_t.  All callers adjusted.
7700         * mi/mi-cmd-var.c: Include "inferior.h".
7701         (mi_cmd_var_update_iter): Update to use thread pointers.
7702         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7703         inferior directly.
7704         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7705         out to ...
7706         (mi_output_running): ... this new function.
7707         (mi_on_resume_1): Adjust to use it.
7708         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7709         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7710         directly.
7711         (interrupt_thread_callback): : Adjust to use thread and inferior
7712         pointers.
7713         * proc-service.c: Include "gdbthread.h".
7714         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7715         * progspace-and-thread.c: Include "inferior.h".
7716         * progspace.c: Include "inferior.h".
7717         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7718         hold a reference to an inferior_object.
7719         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7720         inferior_thread.
7721         * python/py-inferior.c (struct inferior_object): Give the type a
7722         tag name instead of a typedef.
7723         (python_on_normal_stop): No need to check if the current thread is
7724         listed.
7725         (inferior_to_inferior_object): Change return type to
7726         inferior_object.  All callers adjusted.
7727         (find_thread_object): Delete, bits factored out to ...
7728         (thread_to_thread_object): ... this new function.
7729         * python/py-infthread.c (create_thread_object): Use
7730         inferior_to_inferior_object.
7731         (thpy_is_stopped): Use thread pointer directly.
7732         (gdbpy_selected_thread): Use inferior_thread.
7733         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7734         field, replaced with ...
7735         <thread>: ... this new field.  All users adjusted.
7736         (btpy_insn_or_gap_new): Drop const.
7737         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7738         callers adjusted.
7739         * python/py-record.c: Include "gdbthread.h".
7740         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7741         a ptid_t.  All callers adjusted.
7742         (gdbpy_current_recording): Use inferior_thread.
7743         * python/py-record.h (recpy_record_object) <ptid>: Delete
7744         field, replaced with ...
7745         <thread>: ... this new field.  All users adjusted.
7746         (recpy_element_object) <ptid>: Delete
7747         field, replaced with ...
7748         <thread>: ... this new field.  All users adjusted.
7749         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7750         a ptid_t.  All callers adjusted.
7751         * python/py-threadevent.c: Include "gdbthread.h".
7752         (get_event_thread): Use thread_to_thread_object.
7753         * python/python-internal.h (struct inferior_object): Forward
7754         declare.
7755         (find_thread_object, find_inferior_object): Delete declarations.
7756         (thread_to_thread_object, inferior_to_inferior_object): New
7757         declarations.
7758         * record-btrace.c: Include "inferior.h".
7759         (require_btrace_thread): Use inferior_thread.
7760         (record_btrace_frame_sniffer)
7761         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7762         (get_thread_current_frame): Use scoped_restore_current_thread and
7763         switch_to_thread.
7764         (get_thread_current_frame): Use thread pointer directly.
7765         (record_btrace_replay_at_breakpoint): Use thread's inferior
7766         pointer directly.
7767         * record-full.c: Include "inferior.h".
7768         * regcache.c: Include "gdbthread.h".
7769         (get_thread_arch_regcache): Use the inferior's address space
7770         directly.
7771         (get_thread_regcache, registers_changed_thread): New.
7772         * regcache.h (get_thread_regcache(thread_info *thread)): New
7773         overload.
7774         (registers_changed_thread): New.
7775         (remote_target) <remote_detach_1>: Swap order of parameters.
7776         (remote_add_thread): <remote_add_thread>: Return the new thread.
7777         (get_remote_thread_info(ptid_t)): New overload.
7778         (remote_target::remote_notice_new_inferior): Use thread pointers
7779         directly.
7780         (remote_target::process_initial_stop_replies): Use
7781         thread_info::set_running.
7782         (remote_target::remote_detach_1, remote_target::detach)
7783         (extended_remote_target::detach): Adjust.
7784         * stack.c (frame_show_address): Use inferior_thread.
7785         * target-debug.h (target_debug_print_thread_info_pp): New.
7786         * target-delegates.c: Regenerate.
7787         * target.c (default_thread_address_space): Delete.
7788         (memory_xfer_partial_1): Use current_inferior.
7789         (target_detach): Use current_inferior.
7790         (target_thread_address_space): Delete.
7791         (generic_mourn_inferior): Use current_inferior.
7792         * target.h (struct target_ops) <thread_address_space>: Delete.
7793         (target_thread_address_space): Delete.
7794         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7795         pointers directly.
7796         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7797         thread pointer instead of a ptid_t.  Adjust all callers.
7798         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7799         (first_thread_of_process): Delete, replaced by ...
7800         (first_thread_of_inferior): ... this new function.  All callers
7801         adjusted.
7802         (any_thread_of_process): Rename to ...
7803         (any_thread_of_inferior): ... this, and take an inferior pointer.
7804         (any_live_thread_of_process): Rename to ...
7805         (any_live_thread_of_inferior): ... this, and take an inferior
7806         pointer.
7807         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7808         (value_in_thread_stack_temporaries)
7809         (get_last_thread_stack_temporary): Take a thread pointer instead
7810         of a ptid_t.  Adjust all callers.
7811         (thread_info::set_running): New.
7812         (validate_registers_access): Use inferior_thread.
7813         (can_access_registers_ptid): Rename to ...
7814         (can_access_registers_thread): ... this, and take a thread
7815         pointer.
7816         (print_thread_info_1): Adjust to compare thread pointers instead
7817         of ptids.
7818         (switch_to_no_thread, switch_to_thread): Make extern.
7819         (scoped_restore_current_thread::~scoped_restore_current_thread):
7820         Use m_thread pointer directly.
7821         (scoped_restore_current_thread::scoped_restore_current_thread):
7822         Use inferior_thread.
7823         (thread_command): Use thread pointer directly.
7824         (thread_num_make_value_helper): Use inferior_thread.
7825         * top.c (execute_command): Use inferior_thread.
7826         * tui/tui-interp.c: Include "inferior.h".
7827         * varobj.c (varobj_create): Use inferior_thread.
7828         (value_of_root_1): Use find_thread_global_id instead of
7829         global_thread_id_to_ptid.
7830
7831 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7832
7833         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7834         possible.
7835         (regcache::write_part): Likewise.
7836         (readable_regcache::cooked_read_part): Update comment.
7837         (readable_regcache::cooked_write_part): Likewise.
7838         * regcache.h: (readable_regcache::read_part): Likewise.
7839         (regcache::write_part): Likewise.
7840
7841 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7842             Dirk Schubert  <dirk.schubert@arm.com>
7843
7844         * aarch64-linux-nat.c (post_attach): New.
7845         (aarch64_linux_nat_target::post_attach): Override post_attach to
7846         record the number of hardware debug registers.
7847
7848 2018-06-20  Tom Tromey  <tom@tromey.com>
7849
7850         * python/py-param.c (add_setshow_generic): Make parameters const.
7851         (parmpy_init): Update.
7852
7853 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7854
7855         * regcache.h (regcache_cooked_read_ftype): Rename to...
7856         (register_read_ftype): ...this, change type to function_view.
7857         (class reg_buffer) <save>: Remove src parameter.
7858         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7859         parameter non-const in first overload.  Remove src parameter in
7860         second overload.
7861         * regcache.c (do_cooked_read): Remove.
7862         (readonly_detached_regcache::readonly_detached_regcache): Make
7863         parameter non-const, adjust call to other constructor.
7864         (reg_buffer::save): Remove src parameter.
7865         * frame.c (do_frame_register_read): Remove.
7866         (frame_save_as_regcache): Use lambda function.
7867         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7868         parameter to ppu2spu_data *.
7869         (ppu2spu_sniffer): Use lambda function.
7870
7871 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7872
7873         * record-full.c (record_full_target::insert_breakpoint): Remove
7874         "struct" keyword, add const.
7875
7876 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7877
7878         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7879         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7880         * configure.ac: Remove AC_PREREQ, add missing quoting.
7881         * gnulib/configure.ac: Modernize usage of
7882         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7883         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7884         (AUTOMAKE_VERSION): Bump to 1.15.1.
7885         * configure: Re-generate.
7886         * config.in: Re-generate.
7887         * aclocal.m4: Re-generate.
7888         * gnulib/aclocal.m4: Re-generate.
7889         * gnulib/config.in: Re-generate.
7890         * gnulib/configure: Re-generate.
7891         * gnulib/import/Makefile.in: Re-generate.
7892
7893 2018-06-19  Pedro Alves  <palves@redhat.com>
7894
7895         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7896         (lookup_minimal_symbol_by_pc_section): ... here with
7897         gdb_assert_not_reached added.
7898
7899 2018-06-19  Pedro Alves  <palves@redhat.com>
7900
7901         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7902         parameter with a block parameter.  Compare location's block symbol
7903         with the frame's block instead of addresses.
7904         (skip_inline_frames): Pass the current block instead of the
7905         frame's address.  Break out as soon as we determine the frame
7906         should not be skipped.
7907
7908 2018-06-18  Tom Tromey  <tom@tromey.com>
7909
7910         * solib-aix.c (solib_aix_get_section_offsets): Return
7911         unique_xmalloc_ptr.
7912         (solib_aix_solib_create_inferior_hook): Update.
7913
7914 2018-06-18  Tom Tromey  <tom@tromey.com>
7915
7916         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7917
7918 2018-06-18  Tom Tromey  <tom@tromey.com>
7919
7920         * solib-frv.c (frv_relocate_main_executable): Use
7921         unique_xmalloc_ptr.
7922         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7923         unique_xmalloc_ptr.
7924
7925 2018-06-18  Tom Tromey  <tom@tromey.com>
7926
7927         * objfiles.h (inhibit_section_map_updates): Update.
7928         (resume_section_map_updates, resume_section_map_updates_cleanup):
7929         Remove.
7930         * solib-svr4.c (svr4_handle_solib_event): Update.
7931         * objfiles.c (inhibit_section_map_updates): Return
7932         scoped_restore_tmpl<int>.
7933         (resume_section_map_updates, resume_section_map_updates_cleanup):
7934         Remove.
7935
7936 2018-06-18  Tom Tromey  <tom@tromey.com>
7937
7938         * valprint.h (read_string): Update.
7939         * valprint.c (read_string): Change type of "buffer".
7940         (val_print_string): Update.
7941         * python/py-value.c (valpy_string): Update.
7942         * language.h (struct language_defn) <la_get_string>: Change
7943         type of "buffer".
7944         (default_get_string, c_get_string): Update.
7945         * language.c (default_get_string): Change type of "buffer".
7946         * guile/scm-value.c (gdbscm_value_to_string): Update.
7947         * c-lang.c (c_get_string): Change type of "buffer".
7948
7949 2018-06-18  Tom Tromey  <tom@tromey.com>
7950
7951         * ser-mingw.c (struct pipe_state_destroyer): New.
7952         (pipe_state_up): New typedef.
7953         (cleanup_pipe_state): Remove.
7954         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7955
7956 2018-06-18  Tom Tromey  <tom@tromey.com>
7957
7958         * rust-lang.h (rust_yyerror): Don't declare.
7959         * rust-lang.c (rust_language_defn): Update.
7960         * rust-exp.y (yyerror): Now static.
7961         * parse.c (parse_exp_in_context_1): Update.
7962         * p-lang.h (p_yyerror): Don't declare.
7963         * p-lang.c (p_language_defn): Update.
7964         * p-exp.y (yyerror): Now static.
7965         * opencl-lang.c (opencl_language_defn): Update.
7966         * objc-lang.c (objc_language_defn): Update.
7967         * m2-lang.h (m2_yyerror): Don't declare.
7968         * m2-lang.c (m2_language_defn): Update.
7969         * m2-exp.y (yyerror): Now static.
7970         * language.h (struct language_defn) <la_error>: Remove.
7971         * language.c (unk_lang_error): Remove.
7972         (unknown_language_defn, auto_language_defn): Remove.
7973         * go-lang.h (go_yyerror): Don't declare.
7974         * go-lang.c (go_language_defn): Update.
7975         * go-exp.y (yyerror): Now static.
7976         * f-lang.h (f_yyerror): Don't declare.
7977         * f-lang.c (f_language_defn): Update.
7978         * f-exp.y (yyerror): Now static.
7979         * d-lang.h (d_yyerror): Don't declare.
7980         * d-lang.c (d_language_defn): Update.
7981         * d-exp.y (yyerror): Now static.
7982         * c-lang.h (c_yyerror): Don't declare.
7983         * c-lang.c (c_language_defn, cplus_language_defn)
7984         (asm_language_defn, minimal_language_defn): Update.
7985         * c-exp.y (yyerror): Now static.
7986         * ada-lang.h (ada_yyerror): Don't declare.
7987         * ada-lang.c (ada_language_defn): Update.
7988         * ada-exp.y (yyerror): Now static.
7989
7990 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7991
7992         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7993         (store_sveregs_to_thread): Likewise.
7994         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7995         (aarch64_linux_store_inferior_registers): Likewise.
7996         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7997         function.
7998         (aarch64_sve_regs_copy_to_regcache): Likewise.
7999         (aarch64_sve_regs_copy_from_regcache): Likewise.
8000         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
8001         declaration.
8002         (aarch64_sve_regs_copy_to_regcache): Likewise.
8003         (aarch64_sve_regs_copy_from_regcache): Likewise.
8004         (sve_context): Structure from Linux headers.
8005         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
8006         (SVE_SIG_ZREG_SIZE): Likewise.
8007         (SVE_SIG_PREG_SIZE): Likewise.
8008         (SVE_SIG_FFR_SIZE): Likewise.
8009         (SVE_SIG_REGS_OFFSET): Likewise.
8010         (SVE_SIG_ZREGS_OFFSET): Likewise.
8011         (SVE_SIG_ZREG_OFFSET): Likewise.
8012         (SVE_SIG_ZREGS_SIZE): Likewise.
8013         (SVE_SIG_PREGS_OFFSET): Likewise.
8014         (SVE_SIG_PREG_OFFSET): Likewise.
8015         (SVE_SIG_PREGS_SIZE): Likewise.
8016         (SVE_SIG_FFR_OFFSET): Likewise.
8017         (SVE_SIG_REGS_SIZE): Likewise.
8018         (SVE_SIG_CONTEXT_SIZE): Likewise.
8019         (SVE_PT_REGS_MASK): Likewise.
8020         (SVE_PT_REGS_FPSIMD): Likewise.
8021         (SVE_PT_REGS_SVE): Likewise.
8022         (SVE_PT_VL_INHERIT): Likewise.
8023         (SVE_PT_VL_ONEXEC): Likewise.
8024         (SVE_PT_REGS_OFFSET): Likewise.
8025         (SVE_PT_FPSIMD_OFFSET): Likewise.
8026         (SVE_PT_FPSIMD_SIZE): Likewise.
8027         (SVE_PT_SVE_ZREG_SIZE): Likewise.
8028         (SVE_PT_SVE_PREG_SIZE): Likewise.
8029         (SVE_PT_SVE_FFR_SIZE): Likewise.
8030         (SVE_PT_SVE_FPSR_SIZE): Likewise.
8031         (SVE_PT_SVE_FPCR_SIZE): Likewise.
8032         (__SVE_SIG_TO_PT): Likewise.
8033         (SVE_PT_SVE_OFFSET): Likewise.
8034         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
8035         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
8036         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
8037         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
8038         (SVE_PT_SVE_PREG_OFFSET): Likewise.
8039         (SVE_PT_SVE_PREGS_SIZE): Likewise.
8040         (SVE_PT_SVE_FFR_OFFSET): Likewise.
8041         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
8042         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
8043         (SVE_PT_SVE_SIZE): Likewise.
8044         (SVE_PT_SIZE): Likewise.
8045         (HAS_SVE_STATE): New define.
8046
8047 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
8048
8049         * nat/aarch64-sve-linux-sigcontext.h: New file.
8050         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
8051         new files.
8052         (SVE_VQ_MIN): Likewise.
8053         (SVE_VQ_MAX): Likewise.
8054         (SVE_VL_MIN): Likewise.
8055         (SVE_VL_MAX): Likewise.
8056         (SVE_NUM_ZREGS): Likewise.
8057         (SVE_NUM_PREGS): Likewise.
8058         (sve_vl_valid): Likewise.
8059         (struct user_sve_header): Likewise.
8060
8061 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
8062             Richard Bunt <Richard.Bunt@arm.com>
8063
8064         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
8065         was requested by GDB.
8066
8067 2018-06-15  Tom de Vries  <tdevries@suse.de>
8068
8069         * MAINTAINERS (Write After Approval): Add Tom de Vries.
8070
8071 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
8072
8073         * gnulib/update-gnulib.sh: Print expected versions of
8074         autoconf/aclocal.
8075
8076 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
8077
8078         * arch-utils.c (default_type_align): Use type_length_units.
8079         * gdbtypes.c (type_align): Use type_length_units.
8080
8081 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8082
8083         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
8084         of 'define' command.
8085
8086 2018-06-14  Tom de Vries  <tdevries@suse.de>
8087
8088         PR cli/22573
8089         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
8090         get_no_prettyformat_print_options.
8091
8092 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
8093
8094         * sparc-nat.h: Include target.h.
8095         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
8096         <fetch_registers>: Remove this argument in function call.
8097         <store_registers>: Remove this argument in function call, remove
8098         extra semicolon.
8099         <low_forget_process>: Call sparc64_forget_process instead of
8100         sparc_forget_process.
8101
8102 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
8103
8104         * procfs.c (_initialize_procfs): Use add_inf_child_target.
8105         (procfs_target::make_corefile_notes): Adjust to new
8106         target_read_alloc return type.
8107
8108 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8109             Stephen Roberts  <stephen.roberts@arm.com>
8110
8111         PR gdb/22882
8112         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
8113         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
8114         Move should_notify_stop local into more inner scope.
8115
8116 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8117             Stephen Roberts  <stephen.roberts@arm.com>
8118
8119         PR gdb/22882
8120         * infrun.c (resume_1): Add call to mark_async_event_handler.
8121
8122 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
8123
8124         * infrun.c (do_target_wait): Change old version of $pc printed.
8125
8126 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
8127
8128         * dwarf2read.c (read_index_from_section): Rename to...
8129         (read_gdb_index_from_section): ... this, update all callers.
8130         (dwarf2_read_index): Rename to...
8131         (dwarf2_read_gdb_index): ... this, update all callers.
8132
8133 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
8134
8135         * hppa-linux-nat.c
8136         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
8137         hppa_linux_nat_target::fetch_registers.
8138
8139 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8140
8141         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
8142         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
8143         (AARCH64_DWARF_SVE_FFR): Likewise.
8144         (AARCH64_DWARF_SVE_P0): Likewise.
8145         (AARCH64_DWARF_SVE_Z0): Likewise.
8146
8147 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8148
8149         * common/common-regcache.h (raw_compare): New function.
8150         * regcache.c (regcache::raw_compare): Likewise.
8151         * regcache.h (regcache::raw_compare): New declaration.
8152
8153 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
8154
8155         * common/common-regcache.h (reg_buffer_common): New structure.
8156         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
8157         (reg_buffer::raw_supply): Likewise.
8158         (reg_buffer::raw_supply_integer): Likewise.
8159         (reg_buffer::raw_supply_zeroed): Likewise.
8160         (reg_buffer::raw_collect): Likewise.
8161         (reg_buffer::raw_collect_integer): Likewise.
8162         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8163         (reg_buffer::raw_supply): Likewise.
8164         (reg_buffer::raw_supply_integer): Likewise.
8165         (reg_buffer::raw_supply_zeroed): Likewise.
8166         (reg_buffer::raw_collect): Likewise.
8167         (reg_buffer::raw_collect_integer): Likewise.
8168
8169 2018-06-10  Tom Tromey  <tom@tromey.com>
8170
8171         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8172         (class remote_state) <stop_reply_queue>: Now std::vector.
8173         (remote_state::~remote_state)
8174         (remote_target::stop_reply_queue_length): Update.
8175         (struct queue_iter_param, remove_child_of_pending_fork)
8176         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8177         (check_pending_event_prevents_wildcard_vcont_callback)
8178         (remove_stop_reply_for_inferior)
8179         (remove_stop_reply_of_remote_state)
8180         (remote_notif_remove_once_on_match)
8181         (stop_reply_match_ptid_and_ws)
8182         (remote_kill_child_of_pending_fork): Remove.
8183         (remote_target::remove_new_fork_children)
8184         (remote_target::check_pending_events_prevent_wildcard_vcont)
8185         (remote_target::discard_pending_stop_replies)
8186         (remote_target::discard_pending_stop_replies_in_queue)
8187         (remote_target::remote_notif_remove_queued_reply)
8188         (remote_target::queued_stop_reply)
8189         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8190         (remote_target::wait, remote_target::kill_new_fork_children)
8191         (remote_target::async): Update.
8192
8193 2018-06-10  Tom Tromey  <tom@tromey.com>
8194
8195         * record-full.c (record_full_arch_list_cleanups): Remove.
8196         (record_full_message): Use try/catch.
8197         (record_full_wait_cleanups): Remove.
8198         (record_full_wait_1): Use try/catch.
8199         (record_full_restore): Likewise.
8200
8201 2018-06-10  Tom Tromey  <tom@tromey.com>
8202
8203         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8204         declare VEC.  Add constructor.
8205         <in_target_beneath>: Now bool.
8206         (record_full_breakpoints): Now a std::vector, static.
8207         (record_full_sync_record_breakpoints)
8208         (record_full_init_record_breakpoints)
8209         (record_full_target::insert_breakpoint)
8210         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8211
8212 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8213
8214         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8215         * serial.c (serial_interface_lookup): Remove struct keyword.
8216
8217 2018-06-10  Tom Tromey  <tom@tromey.com>
8218
8219         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8220         method.
8221         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8222         a method.
8223         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8224         method.
8225         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8226         "beneath" as a method.
8227         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8228         Use "beneath" as a method.
8229
8230 2018-06-10  Tom Tromey  <tom@tromey.com>
8231
8232         * tracefile.c (struct trace_file_writer_deleter): New.
8233         <operator()>: Rename from trace_file_writer_xfree.
8234         (trace_file_writer_up): New typedef.
8235         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8236
8237 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8238
8239         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8240         <m_registers, m_register_status>: Change type to
8241         std::unique_ptr.
8242         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8243         XCNEWVEC.
8244
8245 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8246
8247         * common/common-regcache.h (enum register_status): Add
8248         underlying type "signed char".
8249         * regcache.h (reg_buffer) <m_register_status>: Change type to
8250         register_status *.
8251         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8252         register_status instead of signed char.
8253         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8254         (reg_buffer::get_register_status): Remove cast.
8255         (readable_regcache::raw_read): Remove cast.
8256         (readable_regcache::cooked_read): Remove cast.
8257
8258 2018-06-09  Tom Tromey  <tom@tromey.com>
8259
8260         * source.c (reverse_search_command, forward_search_command): Use
8261         scoped_fd.
8262
8263 2018-06-09  Tom Tromey  <tom@tromey.com>
8264
8265         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8266         (serial_ops_list): Now static, std::vector.
8267         (serial_interface_lookup, serial_add_interface): Update.
8268
8269 2018-06-09  Tom Tromey  <tom@tromey.com>
8270
8271         * dwarf2read.c (process_cu_includes): Update.
8272         (process_full_comp_unit): Update.
8273         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8274         std::vector.
8275
8276 2018-06-08  Paul Koning  <paul_koning@dell.com>
8277
8278         PR gdb/23252
8279
8280         * python/python.c (do_start_initialization):
8281         Avoid call to internal Python API.
8282         (init__gdb_module): New function.
8283
8284 2018-06-08  Gary Benson <gbenson@redhat.com>
8285
8286         * linux-thread-db.c (valprint.h): New include.
8287         (struct check_thread_db_info): New structure.
8288         (check_thread_db_on_load, tdb_testinfo): New static globals.
8289         (check_thread_db, check_thread_db_callback): New functions.
8290         (try_thread_db_load_1): Run integrity checks if requested.
8291         (maintenance_check_libthread_db): New function.
8292         (_initialize_thread_db): Register "maint check libthread-db"
8293         and "maint set/show check-libthread-db".
8294         * NEWS: Mention the above new commands.
8295
8296 2018-06-08  Tom Tromey  <tom@tromey.com>
8297
8298         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8299         now a method.
8300
8301 2018-06-08  Tom Tromey  <tom@tromey.com>
8302
8303         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8304
8305 2018-06-08  Tom Tromey  <tom@tromey.com>
8306
8307         * common/btrace-common.h (struct btrace_data): Add constructor,
8308         destructor, move assignment operator.
8309         <empty, clear, fini>: New methods.
8310         <format>: Initialize.
8311         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8312         (btrace_data_empty): Don't declare.
8313         * common/btrace-common.c (btrace_data_init): Remove.
8314         (btrace_data::fini): Rename from btrace_data_fini.
8315         (btrace_data::empty): Rename from btrace_data_empty.
8316         (btrace_data::clear): Rename from btrace_data_clear.  Return
8317         bool.
8318         * btrace.h (make_cleanup_btrace_data): Don't declare.
8319         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8320         (parse_xml_btrace): Update.
8321         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8322         (maint_btrace_clear_packet_history_cmd): Update.
8323
8324 2018-06-07  Pedro Alves  <palves@redhat.com>
8325
8326         * target.h (target_ops) <beneath>: Now a method.  All references
8327         updated.
8328         (class target_stack): New.
8329         * target.c (g_target_stack): New.
8330         (g_current_top_target): Delete.
8331         (current_top_target): Get the top target out of g_target_stack.
8332         (target_stack::push, target_stack::unpush): New.
8333         (push_target, unpush_target): Reimplement.
8334         (target_is_pushed): Reimplement in terms of g_target_stack.
8335         (target_ops::beneath, target_stack::find_beneath): New.
8336
8337 2018-06-07  Pedro Alves  <palves@redhat.com>
8338
8339         * target.h (find_target_beneath): Delete declaration.
8340         * target.c (find_target_beneath): Delete definition.
8341         * aix-thread.c: All callers of find_target_beneath adjusted to
8342         call target_ops::beneath instead.
8343         * bsd-uthread.c: Likewise.
8344         * linux-thread-db.c: Likewise.
8345         * ravenscar-thread.c: Likewise.
8346         * sol-thread.c: Likewise.
8347         * spu-multiarch.c: Likewise.
8348
8349 2018-06-07  Pedro Alves  <palves@redhat.com>
8350
8351         * target.h (target_ops) <beneath>: Now a method.  All references
8352         updated.
8353         (target_ops) <m_beneath>: New.
8354         * target.c (target_ops::beneath): New.
8355         * corelow.c: Adjust all references to target_ops::beneath.
8356         * linux-thread-db.c: Likewise.
8357         * make-target-delegates: Likewise.
8358         * record-btrace.c: Likewise.
8359         * record-full.c: Likewise.
8360         * remote.c: Likewise.
8361         * target.c: Likewise.
8362         * target-delegates.c: Regenerate.
8363
8364 2018-06-07  Pedro Alves  <palves@redhat.com>
8365
8366         * target.h (target_stack): Delete.
8367         (current_top_target): Declare function.
8368         * target.c (target_stack): Delete.
8369         (g_current_top_target): New.
8370         (current_top_target): New function.
8371         * auxv.c: Use current_top_target instead of target_stack
8372         throughout.
8373         * avr-tdep.c: Likewise.
8374         * breakpoint.c: Likewise.
8375         * corefile.c: Likewise.
8376         * elfread.c: Likewise.
8377         * eval.c: Likewise.
8378         * exceptions.c: Likewise.
8379         * frame.c: Likewise.
8380         * gdbarch-selftests.c: Likewise.
8381         * gnu-v3-abi.c: Likewise.
8382         * ia64-tdep.c: Likewise.
8383         * ia64-vms-tdep.c: Likewise.
8384         * infcall.c: Likewise.
8385         * infcmd.c: Likewise.
8386         * infrun.c: Likewise.
8387         * linespec.c: Likewise.
8388         * linux-tdep.c: Likewise.
8389         * minsyms.c: Likewise.
8390         * ppc-linux-nat.c: Likewise.
8391         * ppc-linux-tdep.c: Likewise.
8392         * procfs.c: Likewise.
8393         * regcache.c: Likewise.
8394         * remote.c: Likewise.
8395         * rs6000-tdep.c: Likewise.
8396         * s390-linux-nat.c: Likewise.
8397         * s390-tdep.c: Likewise.
8398         * solib-aix.c: Likewise.
8399         * solib-darwin.c: Likewise.
8400         * solib-dsbt.c: Likewise.
8401         * solib-spu.c: Likewise.
8402         * solib-svr4.c: Likewise.
8403         * solib-target.c: Likewise.
8404         * sparc-tdep.c: Likewise.
8405         * sparc64-tdep.c: Likewise.
8406         * spu-tdep.c: Likewise.
8407         * symfile.c: Likewise.
8408         * symtab.c: Likewise.
8409         * target-descriptions.c: Likewise.
8410         * target-memory.c: Likewise.
8411         * target.c: Likewise.
8412         * target.h: Likewise.
8413         * tracefile-tfile.c: Likewise.
8414         * tracepoint.c: Likewise.
8415         * valops.c: Likewise.
8416         * valprint.c: Likewise.
8417         * value.c: Likewise.
8418         * windows-tdep.c: Likewise.
8419         * mi/mi-main.c: Likewise.
8420
8421 2018-06-07  Tom Tromey  <tom@tromey.com>
8422
8423         * valprint.h (build_address_symbolic): Declare.
8424         * printcmd.c (print_address_symbolic): Update.
8425         (build_address_symbolic): Change "name" and "filename" to
8426         std::string.
8427         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8428         Update.
8429         * defs.h (build_address_symbolic): Remove declaration.
8430
8431 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8432
8433         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8434         (aarch64_vnv_type): Add function.
8435         (aarch64_pseudo_register_name): Add V regs for SVE.
8436         (aarch64_pseudo_register_type): Likewise.
8437         (aarch64_pseudo_register_reggroup_p): Likewise.
8438         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8439         (aarch64_pseudo_read_value): Add V regs for SVE.
8440         (aarch64_pseudo_write_2): Use V0 offset for SVE
8441         (aarch64_pseudo_write): Add V regs for SVE.
8442         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8443
8444 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8445
8446         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8447         (sve_vl_from_vq): Likewise.
8448
8449 2018-06-05  Tom Tromey  <tom@tromey.com>
8450
8451         * cli/cli-cmds.c (show_version): Update.
8452         * top.c (print_gdb_version): Add "interactive" parameter.
8453         Update.
8454         * main.c (captured_main_1): Update.
8455         * top.h (print_gdb_version): Add "interactive" parameter and a
8456         comment.
8457
8458 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8459
8460         * common/enum-flags.h: Add trailing semicolon to example in
8461         comment.
8462
8463 2018-06-05  Tom Tromey  <tom@tromey.com>
8464
8465         PR cli/12326:
8466         * NEWS: Add entry about pager.
8467         * utils.c (pagination_disabled_for_command): New global.
8468         (prompt_for_continue): Allow "c" response to prompt.
8469         (reinitialize_more_filter): Clear
8470         pagination_disabled_for_command.
8471         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8472
8473 2018-06-04  Tom Tromey  <tom@tromey.com>
8474
8475         * ada-lang.h (ada_lookup_symbol_list): Update.
8476         * ada-lang.c (resolve_subexp): Update.
8477         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8478         parameter.
8479         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8480         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8481         results parameter to std::vector.
8482         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8483         Update.
8484         * ada-exp.y (block_lookup): Update.
8485         (select_possible_type_sym): Change type of syms.  Remove nsyms
8486         parameter.
8487         (write_var_or_type, write_name_assoc): Update.
8488
8489 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8490
8491         * windows-nat.c (windows_nat_target::xfer_partial): Return
8492         TARGET_XFER_E_IO if we need to delegate to the target beneath
8493         but BENEATH is NULL.
8494
8495 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8496
8497         * Makefile.in (config.status): Add configure.nat as a
8498         dependency.
8499
8500 2018-06-04  Tom Tromey  <tom@tromey.com>
8501
8502         * cp-name-parser.y (cpname_state): Add method declarations.
8503         (HANDLE_QUAL): Update.
8504         (cpname_state::d_grab, cpname_state::fill_comp)
8505         (cpname_state::make_operator, cpname_state::make_dtor)
8506         (cpname_state::make_builtin_type, cpname_state::make_name)
8507         (cpname_state::d_qualify, cpname_state::d_int_type)
8508         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8509         (%union): Move earlier.
8510
8511 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8512
8513         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8514
8515 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8516
8517         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8518         (aarch64_pseudo_write_1): Likewise.
8519         (aarch64_pseudo_read_value): Use helper.
8520         (aarch64_pseudo_write): Likewise.
8521
8522 2018-06-04  Pedro Alves  <palves@redhat.com>
8523
8524         * darwin-nat.c (darwin_ops): Delete.
8525         (darwin_attach_pid): Use get_native_target.
8526
8527 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8528
8529         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8530         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8531
8532 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8533
8534         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8535         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8536         (aarch64_gdbarch_init): Check for SVE.
8537         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8538
8539 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8540
8541         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8542         * aarch64-tdep.h (aarch64_read_description): Likewise.
8543         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8544         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8545         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8546         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8547         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8548
8549 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8550
8551         * value.c (value_fetch_lazy_bitfield): New.
8552         (value_fetch_lazy_memory): New.
8553         (value_fetch_lazy_register): New.
8554         (value_fetch_lazy): Factor out to smaller functions.
8555
8556 2018-06-01  Tom Tromey  <tom@tromey.com>
8557
8558         * cp-name-parser.y (backslashable, represented): Now const.
8559
8560 2018-06-01  Tom Tromey  <tom@tromey.com>
8561
8562         * cp-name-parser.y: Include parser-defs.h.
8563         (parser_fprintf): Remove declaration.
8564
8565 2018-06-01  Tom Tromey  <tom@tromey.com>
8566
8567         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8568         %parse-param.
8569         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8570         (global_result): Remove globals.
8571         (struct cpname_state): New.
8572         (yyparse): Don't declare.
8573         (yylex, yyerror): Move declarations after %union.
8574         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8575         (make_name): Add state parameter.
8576         Update all callers.
8577         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8578         parameter.
8579         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8580         Update.
8581         (yylex): Add lvalp, state parameters.
8582         (yyerror): Add state parameter.
8583         (cp_demangled_name_to_comp): Update.
8584
8585 2018-06-01  Tom Tromey  <tom@tromey.com>
8586
8587         * cp-name-parser.y (parser_fprintf): Declare.
8588         (GDB_YY_REMAP_PREFIX): Define.
8589         Include yy-remap.h.  Don't redefine yy* identifiers.
8590
8591 2018-06-01  Tom Tromey  <tom@tromey.com>
8592
8593         * python/py-type.c (typy_legacy_template_argument): Update.
8594         * cp-support.h (cp_demangled_name_to_comp): Update.
8595         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8596         parameter to be a "std::string *".
8597         (main): Update.
8598
8599 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8600
8601         * ada-lex.l: Include "diagnostics.h" instead of
8602         "common/diagnostics.h".
8603         * unittests/environ-selftests.c: Likewise.
8604         * common/diagnostics.h: Moved to ../include.
8605
8606 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8607
8608         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8609         to language_mode_manual while calling breakpoint_re_set_one.
8610
8611 2018-06-01  Tom Tromey  <tom@tromey.com>
8612
8613         * valops.c (value_cast_structs, destructor_name_p): Update.
8614         * symtab.c (gdb_mangle_name): Update.
8615         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8616         Update.
8617         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8618         (pascal_object_print_value_fields, pascal_object_print_value):
8619         Update.
8620         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8621         * linespec.c (find_methods): Update.
8622         * gdbtypes.h (type_name_no_tag): Remove.
8623         (type_name_or_error): Rename from type_name_no_tag_or_error.
8624         * gdbtypes.c (type_name_no_tag): Remove.
8625         (type_name_or_error): Rename from type_name_no_tag_or_error.
8626         (lookup_struct_elt_type, check_typedef): Update.
8627         * expprint.c (print_subexp_standard): Update.
8628         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8629         * d-namespace.c (d_lookup_nested_symbol): Update.
8630         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8631         (cp_print_class_member): Update.
8632         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8633         * completer.c (add_struct_fields): Update.
8634         * c-typeprint.c (cp_type_print_derivation_info)
8635         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8636         Update.
8637         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8638         (ada_prefer_type, ada_is_exception_sym): Update.
8639
8640 2018-06-01  Tom Tromey  <tom@tromey.com>
8641
8642         * valops.c (enum_constant_from_type, value_namespace_elt)
8643         (value_maybe_namespace_elt): Update.
8644         * valarith.c (find_size_for_pointer_math): Update.
8645         * target-descriptions.c (make_gdb_type): Update.
8646         * symmisc.c (print_symbol): Update.
8647         * stabsread.c (define_symbol, read_type)
8648         (complain_about_struct_wipeout, add_undefined_type)
8649         (cleanup_undefined_types_1): Update.
8650         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8651         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8652         (rust_internal_print_type, rust_composite_type)
8653         (rust_evaluate_funcall, rust_evaluate_subexp)
8654         (rust_inclusive_range_type_p): Update.
8655         * python/py-type.c (typy_get_tag): Update.
8656         * p-typeprint.c (pascal_type_print_base): Update.
8657         * mdebugread.c (parse_symbol, parse_type): Update.
8658         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8659         Update.
8660         * guile/scm-type.c (gdbscm_type_tag): Update.
8661         * go-lang.c (sixg_string_p): Update.
8662         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8663         Update.
8664         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8665         (TYPE_TAG_NAME): Remove.
8666         * gdbtypes.c (type_name_no_tag): Simplify.
8667         (check_typedef, check_types_equal, recursive_dump_type)
8668         (copy_type_recursive, arch_composite_type): Update.
8669         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8670         in summary mode when needed.
8671         * eval.c (evaluate_funcall): Update.
8672         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8673         (process_structure_scope, read_enumeration_type)
8674         (read_namespace_type, read_module_type, determine_prefix): Update.
8675         * cp-support.c (inspect_type): Update.
8676         * coffread.c (process_coff_symbol, decode_base_type): Update.
8677         * c-varobj.c (c_is_path_expr_parent): Update.
8678         * c-typeprint.c (c_type_print_base_struct_union): Update.
8679         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8680         summary when using C language.
8681         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8682         (gen_maybe_namespace_elt): Update.
8683         * ada-lang.c (ada_type_name): Simplify.
8684         (empty_record, ada_template_to_fixed_record_type_1)
8685         (template_to_static_fixed_type)
8686         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8687
8688 2018-06-01  Tom Tromey  <tom@tromey.com>
8689
8690         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8691         c_print_type.
8692         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8693         (c_print_type): Update.
8694         (c_print_type): New overload.
8695         (c_type_print_varspec_prefix, c_type_print_args)
8696         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8697         (c_type_print_base_struct_union, c_type_print_base_1)
8698         (cp_type_print_method_args): Add "language" parameter.
8699         (c_type_print_base): Update.
8700         * c-lang.h (c_print_type): Add new overload.
8701
8702 2018-06-01  Tom Tromey  <tom@tromey.com>
8703
8704         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8705         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8706
8707 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8708
8709         * aarch64-tdep.c (aarch64_sve_register_names): New const
8710         var.
8711         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8712         (AARCH64_SVE_Z_REGS_NUM): New define.
8713         (AARCH64_SVE_P_REGS_NUM): Likewise.
8714         (AARCH64_SVE_NUM_REGS): Likewise.
8715
8716 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8717
8718         * nat/linux-ptrace.h [__alpha__]
8719         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8720         definitions.
8721
8722 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8723
8724         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8725         the endianness selected.
8726         * NEWS: Document `set endian auto' mode operation update.
8727
8728 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8729
8730         * Makefile.in: Add new header.
8731         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8732         (sve_vl_from_vg): Likewise.
8733         (sve_vq_from_vl): Likewise.
8734         (sve_vl_from_vq): Likewise.
8735         (sve_vq_from_vg): Likewise.
8736         (sve_vg_from_vq): Likewise.
8737         * configure.nat: Add new c file.
8738         * nat/aarch64-sve-linux-ptrace.c: New file.
8739         * nat/aarch64-sve-linux-ptrace.h: New file.
8740
8741 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8742
8743         * aarch64-linux-nat.c (aarch64_linux_read_description):
8744         Add parmeter zero.
8745         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8746         Likewise.
8747         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8748         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8749         (aarch64_gdbarch_init): Add parmeter zero.
8750         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8751         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8752         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8753         parmeter.
8754         * doc/gdb.texinfo: Describe SVE feature
8755         * features/aarch64-sve.c: New file.
8756
8757 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8758
8759         PR gdb/23210
8760         * gdbarch.sh (significant_addr_bit): Default to zero when
8761         not set by target architecture.
8762         * gdbarch.c: Re-generated.
8763         * utils.c (address_significant): Update.
8764
8765 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8766
8767         * stack.c (func_command): Remove trailing newline in call to error.
8768
8769 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8770
8771         * regcache.h (regcache_raw_collect): Remove, update callers to
8772         use regcache::raw_collect.
8773         * regcache.c (regcache_raw_collect): Remove.
8774
8775 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8776
8777         * regcache.h (regcache_raw_supply): Remove, update callers to
8778         use detached_regcache::raw_supply.
8779         * regcache.c (regcache_raw_supply): Remove.
8780
8781 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8782
8783         * regcache.h (regcache_cooked_write_part): Remove, update
8784         callers to use regcache::cooked_write_part.
8785         * regcache.c (regcache_cooked_write_part): Remove.
8786
8787 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8788
8789         * regcache.h (regcache_cooked_read_part): Remove, update callers
8790         to use readable_regcache::cooked_read_part.
8791         * regcache.c (regcache_cooked_read_part): Remove.
8792
8793 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8794
8795         * regcache.h (regcache_cooked_read_value): Remove, update
8796         callers to use readable_regcache::cooked_read_value.
8797         * regcache.c (regcache_cooked_read_value): Remove.
8798
8799 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8800
8801         * regcache.h (regcache_cooked_write): Remove, update callers to
8802         use regcache::cooked_write.
8803         * regcache.c (regcache_cooked_write): Remove.
8804
8805 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8806
8807         * regcache.h (regcache_invalidate): Remove, update callers to
8808         use detached_regcache::invalidate instead.
8809         * regcache.c (regcache_invalidate): Remove.
8810
8811 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8812
8813         * regcache.h (regcache_raw_write_part): Remove, update callers
8814         to use regcache::raw_write_part instead.
8815         * regcache.c (regcache_raw_write_part): Remove.
8816
8817 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8818
8819         * regcache.h (regcache_raw_read_part): Remove, update callers to
8820         use readable_regcache::raw_read_part instead.
8821         * regcache.c (regcache_raw_read_part): Remove.
8822
8823 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8824
8825         * regcache.h (regcache_cooked_read): Remove, update callers to
8826         use readable_regcache::cooked_read instead.
8827         * regcache.c (regcache_cooked_read): Remove.
8828
8829 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8830
8831         * regcache.h (regcache_raw_write): Remove, update callers to use
8832         regcache::raw_write instead.
8833         * regcache.c (regcache_raw_write): Remove.
8834
8835 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8836
8837         * regcache.h (regcache_raw_read): Remove, update callers to use
8838         readable_regcache::raw_read instead.
8839         * regcache.c (regcache_raw_read): Remove.
8840
8841 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8842
8843         * regcache.h (regcache_raw_update): Remove, update callers to
8844         use readable_regcache::raw_update instead.
8845         * regcache.c (regcache_raw_update): Remove.
8846
8847 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8848
8849         * regcache.h (regcache_register_status): Remove, update callers
8850         to use reg_buffer::get_register_status directly instead.
8851         * regcache.c (regcache_register_status): Remove.
8852
8853 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8854
8855         * regcache.h (regcache_get_ptid): Remove, update all callers to
8856         call regcache::ptid instead.
8857         * regcache.c (regcache_get_ptid): Remove.
8858
8859 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8860
8861         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8862
8863 2018-05-30  Pedro Alves  <palves@redhat.com>
8864
8865         * common/common-exceptions.h (exception_rethrow): Use
8866         ATTRIBUTE_NORETURN.
8867
8868 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8869
8870         * breakpoint.c (print_solib_event, check_status_catch_solib):
8871         Remove struct keyword in range-based for loops.
8872         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8873         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8874         Likewise.
8875         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8876         Likewise.
8877         * symfile.c (addr_info_make_relative): Likewise.
8878         * thread.c (value_in_thread_stack_temporaries): Likewise.
8879
8880 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8881
8882         PR gdb/16841
8883         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8884         aggregate type to get its real type before accessing it.
8885
8886 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8887
8888         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8889         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8890         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8891         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8892         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8893         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8894         * printcmd.c (info_address_command): Likewise.
8895
8896 2018-05-29  Tom Tromey  <tom@tromey.com>
8897
8898         * windows-nat.c (handle_exception): Update fall-through comment.
8899
8900 2018-05-29  Tom Tromey  <tom@tromey.com>
8901
8902         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8903         (struct program_space) <added_solibs>: Now a std::vector.
8904         * breakpoint.c (print_solib_event): Update.
8905         (check_status_catch_solib): Update.
8906         * progspace.c (clear_program_space_solib_cache): Update.
8907         * solib.c (update_solib_list): Update.
8908
8909 2018-05-29  Tom Tromey  <tom@tromey.com>
8910
8911         * python/py-type.c (typy_richcompare): Update.
8912         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8913         * gdbtypes.h (types_deeply_equal): Return bool.
8914         (types_equal): Likewise.
8915         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8916         declare VEC.
8917         (check_types_equal): Change worklist to std::vector.  Return
8918         bool.
8919         (struct type_equality_entry): Add constructor.
8920         (compare_maybe_null_strings): Return bool.
8921         (check_types_worklist): Return bool.  Change worklist to
8922         std::vector.
8923         (types_deeply_equal): Use std::vector.
8924         (types_equal): Return bool.
8925         (compare_maybe_null_strings): Simplify.
8926
8927 2018-05-29  Tom Tromey  <tom@tromey.com>
8928
8929         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8930
8931 2018-05-29  Tom Tromey  <tom@tromey.com>
8932
8933         * objc-lang.h: Don't include cp-support.h.
8934         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8935         declare VEC.
8936
8937 2018-05-27  Tom Tromey  <tom@tromey.com>
8938
8939         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8940
8941 2018-05-25  Tom Tromey  <tom@tromey.com>
8942
8943         * value.c (value::location): Initialize.
8944
8945 2018-05-25  Tom Tromey  <tom@tromey.com>
8946
8947         * dbxread.c (init_bincl_list): Remove.
8948         (bincl_list): Now a std::vector.
8949         (bincls_allocated, next_bincl): Remove.
8950         (free_bincl_list, do_free_bincl_list_cleanup)
8951         (make_cleanup_free_bincl_list): Remove.
8952         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8953         unique_xmalloc_ptr.
8954         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8955         (struct header_file_location): Add constructor.
8956         (add_bincl_to_list): Remove.
8957
8958 2018-05-25  Tom Tromey  <tom@tromey.com>
8959
8960         * tui/tui.c (tui_enable): Update.
8961         * mi/mi-interp.c (mi_interp::init): Update.
8962         * interps.h (class interp) <name>: New method.
8963         <m_name>: Rename from name.
8964         (~scoped_restore_interp): Update.
8965         * interps.c (interp::interp): Update.
8966         (interp_add, interp_set, interp_lookup_existing)
8967         (current_interp_named_p): Update.
8968
8969 2018-05-25  Tom Tromey  <tom@tromey.com>
8970
8971         * interps.c (interp_name): Remove.
8972         * mi/mi-interp.c (mi_interp::init): Update.
8973         * interps.h (interp_name): Remove.
8974         (~scoped_restore_interp): Update.
8975         * tui/tui.c (tui_enable): Update.
8976
8977 2018-05-25  Tom Tromey  <tom@tromey.com>
8978
8979         * utils.c (fputs_maybe_filtered): Update.
8980         * linespec.c (decode_line_full): Update.
8981         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8982         (mi_print_breakpoint_for_event, mi_solib_loaded)
8983         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8984         (mi_user_selected_context_changed): Update.
8985         * mi/mi-main.c (mi_execute_command): Update.
8986         * cli/cli-script.c (execute_control_command): Update.
8987         * python/python.c (execute_gdb_command): Update.
8988         * solib.c (info_sharedlibrary_command): Update.
8989         * interps.c (interp_ui_out): Remove.
8990         * interps.h (interp_ui_out): Remove.
8991
8992 2018-05-25  Tom Tromey  <tom@tromey.com>
8993
8994         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8995         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8996         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8997
8998 2018-05-25  Tom Tromey  <tom@tromey.com>
8999
9000         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
9001         * interps.c (interp_exec): Use scoped_restore.
9002
9003 2018-05-25  Tom Tromey  <tom@tromey.com>
9004
9005         * remote.c (remote_target::remote_file_get): Use
9006         gdb::byte_vector.
9007         (remote_target::remote_file_put): Likewise.
9008
9009 2018-05-25  Tom Tromey  <tom@tromey.com>
9010
9011         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
9012         a std::string.
9013         (get_pe_section_index, add_pe_exported_sym): Update.
9014         (read_pe_exported_syms): Use gdb::def_vector.
9015
9016 2018-05-25  Tom Tromey  <tom@tromey.com>
9017
9018         * frame.c (remove_prev_frame): Remove.
9019         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
9020
9021 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
9022
9023         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
9024         Remove prototypes.
9025         * mips-linux-nat.c (supply_fpregset): Always call
9026         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
9027         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
9028         `mips_fill_fpregset'.
9029         * mips-linux-tdep.c (mips_supply_fpregset)
9030         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
9031         (mips_fill_fpregset_wrapper): Remove functions.
9032         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
9033         (mips_linux_fpregset): Remove variable.
9034         (mips_linux_iterate_over_regset_sections): Use
9035         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
9036         (mips_linux_o32_sigframe_init): Remove comment.
9037
9038 2018-05-25  Pedro Alves  <palves@redhat.com>
9039
9040         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
9041         (struct readahead_cache, struct packet_reg, struct
9042         remote_arch_state, class remote_state): Move higher up in the
9043         file.
9044         (remote_target::m_remote_state): Now an object instead of a pointer.
9045         (remote_target::get_remote_state): Adjust.
9046
9047 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9048
9049         * stack.c (select_and_print_frame): Delete.
9050         (struct function_bounds): Move struct within function.
9051         (func_command): Most content moved into new function
9052         find_frame_for_function, use new function, print result, add
9053         function comment.
9054         (find_frame_for_function): New function, now returns a result.
9055
9056 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9057
9058         * stack.c (iterate_over_block_arg_vars): Fix comment.
9059         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
9060
9061 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
9062
9063         PR gdb/23203
9064         * frame.c
9065         (scoped_restore_selected_frame::scoped_restore_selected_frame):
9066         Define.
9067         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
9068         Define.
9069         * frame.h (class scoped_restore_selected_frame): New class.
9070         * stack.c (print_frame_local_vars): Remove catching and rethrowing
9071         of any exception, use scoped_restore_selected_frame to restore the
9072         frame instead.
9073
9074 2018-05-24  Pedro Alves  <palves@redhat.com>
9075
9076         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
9077         override.
9078
9079 2018-05-23  Tom Tromey  <tom@tromey.com>
9080
9081         * complaints.c (struct complaints): Remove.
9082         (symfile_complaint_book): Remove.
9083         (series): New global.
9084         (complaint_internal): Update.
9085         (clear_complaints): Update.
9086
9087 2018-05-23  Tom Tromey  <tom@tromey.com>
9088
9089         * complaints.c (counters): New global.
9090         (struct complain): Remove.
9091         (struct complaints) <root>: Remove.
9092         (complaint_sentinel): Remove.
9093         (symfile_complaint_book): Update.
9094         (find_complaint) Remove.
9095         (complaint_internal, clear_complaints): Update.
9096
9097 2018-05-23  Tom Tromey  <tom@tromey.com>
9098
9099         * complaints.c (struct complain) <file, line>: Remove.
9100         (find_complaint): Remove file, line parameters.
9101         (complaint_internal): Update.
9102
9103 2018-05-23  Tom Tromey  <tom@tromey.com>
9104
9105         * complaints.c (vcomplaint): Remove.
9106         (complaint_internal) Merge in contents of vcomplaint.
9107
9108 2018-05-23  Tom Tromey  <tom@tromey.com>
9109
9110         * complaints.c (struct complaints) <explanation>: Remove.
9111         (symfile_explanations): Remove.
9112         (symfile_complaint_book): Update.
9113         (vcomplaint): Update.
9114         (struct explanation): Remove.
9115
9116 2018-05-23  Tom Tromey  <tom@tromey.com>
9117
9118         * complaints.c (symfile_complaints): Remove.
9119         (complaint_internal): Remove "complaints" parameter.
9120         (clear_complaints, vcomplaint): Remove "c" parameter.
9121         (get_complaints): Remove.
9122         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
9123         (dwarf2_debug_line_missing_file_complaint)
9124         (dwarf2_debug_line_missing_end_sequence_complaint)
9125         (dwarf2_complex_location_expr_complaint)
9126         (dwarf2_const_value_length_mismatch_complaint)
9127         (dwarf2_section_buffer_overflow_complaint)
9128         (dwarf2_macro_malformed_definition_complaint)
9129         (dwarf2_invalid_attrib_class_complaint)
9130         (create_addrmap_from_index, dw2_symtab_iter_next)
9131         (dw2_expand_marked_cus)
9132         (dw2_debug_names_iterator::find_vec_in_debug_names)
9133         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
9134         (create_debug_type_hash_table, init_cutu_and_read_dies)
9135         (partial_die_parent_scope, add_partial_enumeration)
9136         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
9137         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
9138         (read_import_statement, read_file_scope, create_dwo_cu_reader)
9139         (create_cus_hash_table, create_dwp_hash_table)
9140         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
9141         (dwarf2_rnglists_process, dwarf2_ranges_process)
9142         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
9143         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
9144         (handle_struct_member_die, process_structure_scope)
9145         (read_array_type, read_common_block, read_module_type)
9146         (read_tag_pointer_type, read_typedef, read_base_type)
9147         (read_subrange_type, load_partial_dies, partial_die_info::read)
9148         (partial_die_info::read, partial_die_info::read)
9149         (partial_die_info::read, read_checked_initial_length_and_offset)
9150         (dwarf2_string_attr, read_formatted_entries)
9151         (dwarf_decode_line_header)
9152         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
9153         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
9154         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
9155         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
9156         (get_signatured_type, get_DW_AT_signature_type)
9157         (decode_locdesc, file_file_name, consume_improper_spaces)
9158         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9159         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9160         (dwarf2_symbol_mark_computed, set_die_type)
9161         (read_attribute_value): Update.
9162         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9163         Update.
9164         * dbxread.c (unknown_symtype_complaint)
9165         (lbrac_mismatch_complaint, repeated_header_complaint)
9166         (set_namestring, function_outside_compilation_unit_complaint)
9167         (read_dbx_symtab, process_one_symbol): Update.
9168         * gdbtypes.c (stub_noname_complaint): Update.
9169         * windows-nat.c (handle_unload_dll): Update.
9170         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9171         (decode_base_type): Update.
9172         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9173         (eb_complaint, record_include_begin, record_include_end)
9174         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9175         (process_xcoff_symbol, read_symbol)
9176         (function_outside_compilation_unit_complaint)
9177         (scan_xcoff_symtab): Update.
9178         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9179         * buildsym.c (finish_block_internal, make_blockvector)
9180         (end_symtab_get_static_block, augment_type_symtab): Update.
9181         * dtrace-probe.c (dtrace_process_dof)
9182         (dtrace_static_probe_ops::get_probes): Update.
9183         * complaints.h (struct complaint): Don't declare.
9184         (symfile_complaints): Remove.
9185         (complaint_internal): Remove "complaints" parameter.
9186         (complaint): Likewise.
9187         (clear_complaints): Likewise.
9188         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9189         (reread_symbols): Update.
9190         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9191         (dwarf2_frame_cache, decode_frame_entry): Update.
9192         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9193         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9194         (info_selectors_command): Update.
9195         * macrotab.c (macro_include, check_for_redefinition)
9196         (macro_undef): Update.
9197         * objfiles.c (filter_overlapping_sections): Update.
9198         * stabsread.c (invalid_cpp_abbrev_complaint)
9199         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9200         (define_symbol, error_type, read_type, rs6000_builtin_type)
9201         (stabs_method_name_from_physname, read_member_functions)
9202         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9203         (attach_fields_to_type, complain_about_struct_wipeout)
9204         (read_range_type, read_args, common_block_start)
9205         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9206         Update.
9207         * mdebugread.c (index_complaint, unknown_ext_complaint)
9208         (basic_type_complaint, bad_tag_guess_complaint)
9209         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9210         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9211         (parse_procedure, parse_lines)
9212         (function_outside_compilation_unit_complaint)
9213         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9214         (bad_tag_guess_complaint, reg_value_complaint): Update.
9215         * cp-support.c (demangled_name_complaint): Update.
9216         * macroscope.c (sal_macro_scope): Update.
9217         * dwarf-index-write.c (class debug_names): Update.
9218
9219 2018-05-23  Tom Tromey  <tom@tromey.com>
9220
9221         * complaints.c (clear_complaints): Remove "noisy" parameter.
9222         * complaints.h (clear_complaints): Update.
9223         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9224         (reread_symbols): Update.
9225
9226 2018-05-23  Tom Tromey  <tom@tromey.com>
9227
9228         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9229         SUBSEQUENT_MESSAGE.
9230         (vcomplaint, clear_complaints): Update.
9231         (symfile_explanations): Remove some messages.
9232
9233 2018-05-23  Tom Tromey  <tom@tromey.com>
9234
9235         * complaints.c (internal_complaint): Remove.
9236         * complaints.h (internal_complaint): Remove.
9237
9238 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9239
9240         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9241
9242 2018-05-22  Pedro Alves  <palves@redhat.com>
9243
9244         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9245         (remote_fileio_badfd, remote_fileio_return_errno)
9246         (remote_fileio_return_success, remote_fileio_func_open)
9247         (remote_fileio_func_open, remote_fileio_func_close)
9248         (remote_fileio_func_read, remote_fileio_func_write)
9249         (remote_fileio_func_lseek, remote_fileio_func_rename)
9250         (remote_fileio_func_unlink, remote_fileio_func_stat)
9251         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9252         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9253         remote_target parameter.
9254         (remote_fio_func_map) <func>: Add remote_target parameter.
9255         (do_remote_fileio_request, remote_fileio_request):
9256         * remote-fileio.h (remote_fileio_request):
9257         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9258         remote_target parameter.
9259         (remote_notif_process, handle_notification): Adjust to pass down
9260         the remote.
9261         (remote_notif_state_allocate): Add remote_target parameter.  Save
9262         it.
9263         * remote-notif.h (struct remote_target): Forward declare.
9264         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9265         remote_target parameter.
9266         (struct remote_notif_state) <remote>: New field.
9267         (remote_notif_ack, remote_notif_parse): Add remote_target
9268         parameter.
9269         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9270         remote_target parameter.
9271         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9272         (threads_listing_context, rmt_thread_action, protocol_feature)
9273         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9274         (packet_result, struct threads_listing_context, remote_state):
9275         Move definitions and declarations higher up.
9276         (remote_target) <~remote_target>: Declare.
9277         (remote_download_command_source, remote_file_put, remote_file_get)
9278         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9279         (remote_hostio_pread_vFile, remote_hostio_send_command)
9280         (remote_hostio_set_filesystem, remote_hostio_open)
9281         (remote_hostio_close, remote_hostio_unlink, remote_state)
9282         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9283         (get_memory_write_packet_size, get_memory_read_packet_size)
9284         (append_pending_thread_resumptions, remote_detach_1)
9285         (append_resumption, remote_resume_with_vcont)
9286         (add_current_inferior_and_thread, wait_ns, wait_as)
9287         (process_stop_reply, remote_notice_new_inferior)
9288         (process_initial_stop_replies, remote_add_thread)
9289         (btrace_sync_conf, remote_btrace_maybe_reopen)
9290         (remove_new_fork_children, kill_new_fork_children)
9291         (discard_pending_stop_replies, stop_reply_queue_length)
9292         (check_pending_events_prevent_wildcard_vcont)
9293         (discard_pending_stop_replies_in_queue, stop_reply)
9294         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9295         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9296         (remote_interrupt_as, remote_interrupt_ns)
9297         (remote_get_noisy_reply, remote_query_attached)
9298         (remote_add_inferior, remote_current_thread, get_current_thread)
9299         (set_thread, set_general_thread, set_continue_thread)
9300         (set_general_process, write_ptid)
9301         (remote_unpack_thread_info_response, remote_get_threadinfo)
9302         (parse_threadlist_response, remote_get_threadlist)
9303         (remote_threadlist_iterator, remote_get_threads_with_ql)
9304         (remote_get_threads_with_qxfer)
9305         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9306         (get_offsets, remote_check_symbols, remote_supported_packet)
9307         (remote_query_supported, remote_packet_size)
9308         (remote_serial_quit_handler, remote_detach_pid)
9309         (remote_vcont_probe, remote_resume_with_hc)
9310         (send_interrupt_sequence, interrupt_query)
9311         (remote_notif_get_pending_events, fetch_register_using_p)
9312         (send_g_packet, process_g_packet, fetch_registers_using_g)
9313         (store_register_using_P, store_registers_using_G)
9314         (set_remote_traceframe, check_binary_download)
9315         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9316         (remote_xfer_live_readonly_partial, remote_read_bytes)
9317         (remote_send_printf, remote_flash_write, readchar)
9318         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9319         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9320         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9321         (extended_remote_disable_randomization, extended_remote_run)
9322         (send_environment_packet, extended_remote_environment_support)
9323         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9324         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9325         (packet_command): Now methods of ...
9326         (remote_target): ... this class.
9327         (m_remote_state) <remote_target>: New field.
9328         (struct remote_state) <stop_reply_queue,
9329         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9330         fields.
9331         (remote_state::remote_state): Allocate stop_reply_queue.
9332         (remote_state): Delete global.
9333         (get_remote_state_raw): Delete.
9334         (remote_target::get_remote_state): Allocate m_remote_state on
9335         demand.
9336         (get_current_remote_target): New.
9337         (remote_ops, extended_remote_ops): Delete.
9338         (wait_forever_enabled_p, remote_async_inferior_event_token):
9339         Delete, moved to struct remote_state.
9340         (remote_target::close): Delete self.  Destruction bits split to
9341         ...
9342         (remote_target::~remote_target): ... this.
9343         (show_memory_packet_size): Adjust to use
9344         get_current_remote_target.
9345         (struct protocol_feature) <func>: Add remote_target parameter.
9346         All callers adjusted.
9347         (curr_quit_handler_target): New.
9348         (remote_serial_quit_handler): Reimplement.
9349         (remote_target::open_1): Adjust to use get_current_remote_target.
9350         Heap-allocate remote_target/extended_remote_target instances.
9351         (vcont_builder::vcont_builder): Add remote_target parameter, and
9352         save it in m_remote.  All callers adjusted.
9353         (vcont_builder::m_remote): New field.
9354         (vcont_builder::restart, vcont_builder::flush)
9355         (vcont_builder::push_action): Use it.
9356         (remote_target::commit_resume): Use it.
9357         (struct queue_iter_param) <remote>: New field.
9358         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9359         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9360         (check_pending_event_prevents_wildcard_vcont_callback)
9361         (remote_target::check_pending_events_prevent_wildcard_vcont)
9362         (remote_target::discard_pending_stop_replies)
9363         (remote_target::discard_pending_stop_replies_in_queue)
9364         (remote_target::remote_notif_remove_queued_reply): Fill in
9365         'remote' field.
9366         (remote_notif_get_pending_events): New.
9367         (remote_target::readchar, remote_target::remote_serial_write):
9368         Save/restore curr_quit_handler_target.
9369         (putpkt): New.
9370         (kill_new_fork_children): Fill in 'remote' field.
9371         (packet_command): Use get_current_remote_target, defer to
9372         remote_target method of same name.
9373         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9374         parameter, and save it in m_remote.  All callers adjusted.
9375         (scoped_remote_fd::release): Use m_remote.
9376         (scoped_remote_fd::m_remote): New field.
9377         (remote_file_put, remote_file_get, remote_file_delete): Use
9378         get_current_remote_target, defer to remote_target method of same
9379         name.
9380         (remote_btrace_reset): Add remote_state paremeter.  Update all
9381         callers.
9382         (remote_async_inferior_event_handler). Pass down 'data'.
9383         (remote_new_objfile): Use get_current_remote_target.
9384         (remote_target::vcont_r_supported): New.
9385         (set_range_stepping): Use get_current_remote_target and
9386         remote_target::vcont_r_supported.
9387         (_initialize_remote): Don't allocate 'remote_state' and
9388         'stop_reply_queue' globals.
9389         * remote.h (struct remote_target): Forward declare.
9390         (getpkt, putpkt, remote_notif_get_pending_events): Add
9391         'remote_target' parameter.
9392
9393 2018-05-22  Pedro Alves  <palves@redhat.com>
9394
9395         * remote.c (vcont_builder): Now a class.  Make all data members
9396         private.
9397         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9398         Declare methods.
9399         (vcont_builder_restart): Rename to ...
9400         (vcont_builder::restart): ... this.
9401         (vcont_builder_flush): Rename to ...
9402         (vcont_builder::flush): ... this.
9403         (vcont_builder_push_action): Rename to ...
9404         (vcont_builder::push_action): ... this.
9405         (remote_target::commit_resume): Adjust.
9406
9407 2018-05-22  Pedro Alves  <palves@redhat.com>
9408
9409         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9410         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9411         (get_fixed_memory_packet_size): New.
9412         (get_memory_packet_size): Use it.
9413         (set_memory_packet_size): Don't override the config size with
9414         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9415         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9416         Don't refer to get_memory_packet_size if not connected to a remote
9417         target.  Show "(default)" if configured size is 0.
9418
9419 2018-05-22  Pedro Alves  <palves@redhat.com>
9420
9421         * remote.c (remote_target::mourn_inferior): Move
9422         discard_pending_stop_replies call here from ...
9423         (_initialize_remote): ... here.
9424
9425 2018-05-22  Pedro Alves  <palves@redhat.com>
9426
9427         * remote.c (compare_section_command): Remove set_general_process
9428         call.
9429
9430 2018-05-22  Pedro Alves  <palves@redhat.com>
9431
9432         * remote.c (struct packet_reg, struct remote_arch_state):
9433         Move higher up in the file.
9434         (remote_state) <m_arch_states>: Store remote_arch_state values
9435         instead of remote_arch_state pointers.
9436         (remote_state::get_remote_arch_state): Adjust.
9437
9438 2018-05-22  Pedro Alves  <palves@redhat.com>
9439
9440         * remote.c: Include <unordered_map>.
9441         (remote_state): Now a class.
9442         (remote_state) <get_remote_arch_state>: Declare method.
9443         <get_remote_arch_state>: New field.
9444         (remote_arch_state) <remote_arch_state>: Declare ctor.
9445         <regs>: Now a unique_ptr.
9446         (remote_gdbarch_data_handle): Delete.
9447         (get_remote_arch_state): Delete.
9448         (remote_state::get_remote_arch_state): New.
9449         (get_remote_state): Adjust to call remote_state's
9450         get_remote_arch_state method.
9451         (init_remote_state): Delete, bits factored out to ...
9452         (remote_arch_state::remote_arch_state): ... this new method.
9453         (get_remote_packet_size, get_memory_packet_size)
9454         (process_g_packet, remote_target::fetch_registers)
9455         (remote_target::prepare_to_store, store_registers_using_G)
9456         (remote_target::store_registers, remote_target::get_trace_status):
9457         Adjust to call remote_state's method.
9458         (_initialize_remote): Remove reference to
9459         remote_gdbarch_data_handle.
9460
9461 2018-05-22  Pedro Alves  <palves@redhat.com>
9462
9463         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9464         pread>: New method declarations.
9465         (remote_target::open_1): Adjust.
9466         (readahead_cache_invalidate): Rename to ...
9467         (readahead_cache::invalidate): ... this, and adjust to be a class
9468         method.
9469         (readahead_cache_invalidate_fd): Rename to ...
9470         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9471         class method.
9472         (remote_hostio_pwrite): Adjust.
9473         (remote_hostio_pread_from_cache): Rename to ...
9474         (readahead_cache::pread): ... this, and adjust to be a class
9475         method.
9476         (remote_hostio_close): Adjust.
9477
9478 2018-05-22  Pedro Alves  <palves@redhat.com>
9479
9480         * remote.c (remote_hostio_close_cleanup): Delete.
9481         (class scoped_remote_fd): New.
9482         (remote_file_put, remote_file_get): Use it.
9483
9484 2018-05-22  Pedro Alves  <palves@redhat.com>
9485
9486         (struct vCont_action_support): Use bool and initialize all fields.
9487         (struct readahead_cache): Initialize all fields.
9488         (remote_state): Use bool and initialize all fields.
9489         (remote_state::remote_state, remote_state::~remote_state): New.
9490         (new_remote_state): Delete.
9491         (_initialize_remote): Use new to allocate remote_state.
9492
9493 2018-05-22  Pedro Alves  <palves@redhat.com>
9494             張俊芝  <zjz@zjz.name>
9495
9496         PR gdb/22973
9497         * c-exp.y: Include "c-support.h".
9498         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9499         of tolower.  Use c_ident_is_alpha to scan names.
9500         * c-lang.c: Include "c-support.h".
9501         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9502         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9503         * c-support.h: New file, with bits factored out from ...
9504         * cp-name-parser.y: ... this file.
9505         Include "c-support.h".
9506         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9507         c-support.h and renamed.
9508         (symbol_end, yylex): Adjust.
9509
9510 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9511
9512         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9513         parameter type to CORE_ADDR.
9514         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9515         parameter type in declaration to CORE_ADDR.
9516         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9517         target_auxv_search to get AT_HWCAP and use the result to get the
9518         target description.
9519         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9520         to CORE_ADDR. Remove the cast of the return value to unsigned
9521         long. Fix error predicate of target_auxv_search.
9522         (ppc_linux_nat_target::read_description): Change the type of the
9523         hwcap variable to CORE_ADDR.
9524
9525 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9526
9527         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9528         if the size of fpscr is larger than 32 bits.
9529
9530 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9531
9532         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9533         (ppc32_linux_vsxregmap): New global.
9534         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9535         regcache_supply_regset, and regcache_collect_regset.
9536         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9537         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9538         (fetch_vsx_register, store_vsx_register): Remove.
9539         (fetch_vsx_registers): Add regno parameter. Get regset using
9540         ppc_linux_vsxregset. Use regset to supply registers.
9541         (store_vsx_registers): Add regno parameter. Get regset using
9542         ppc_linux_vsxregset. Use regset to collect registers.
9543         (fetch_register): Call fetch_vsx_registers instead of
9544         fetch_vsx_register.
9545         (store_register): Call store_vsx_registers instead of
9546         store_vsx_register.
9547         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9548         new regno parameter.
9549         (store_ppc_registers): Call store_vsx_registers with -1 for the
9550         new regno parameter.
9551         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9552         (ppc_collect_vsxregset): Remove.
9553
9554 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9555
9556         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9557         offset fields.
9558         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9559         for vector register offset fields.
9560         (ppc64_fbsd_reg_offsets): Likewise.
9561         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9562         to vector register offset fields.
9563         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9564         to vector register offset fields.
9565         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9566         vector register offset fields.
9567         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9568         initializers for vector register offset fields.
9569         (rs6000_aix64_reg_offsets): Likewise.
9570         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9571         (ppc_supply_vrregset): Remove.
9572         (ppc_collect_vrregset): Remove.
9573         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9574         (ppc_linux_vrregset) : New function.
9575         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9576         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9577         (ppc32_linux_vrregset): Remove.
9578         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9579         and use result instead of ppc32_linux_vrregset.
9580         (ppc32_linux_reg_offsets): Remove initializers for vector register
9581         offset fields.
9582         (ppc64_linux_reg_offsets): Likewise.
9583         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9584         * ppc-linux-nat.c: Include regset.h.
9585         (gdb_vrregset_t): Adjust comment to account for little-endian
9586         mode.
9587         (supply_vrregset, fill_vrregset): Remove.
9588         (fetch_altivec_register, store_altivec_register): Remove.
9589         (fetch_altivec_registers): Add regno parameter. Get regset using
9590         ppc_linux_vrregset. Use regset to supply registers.
9591         (store_altivec_registers): Add regno parameter. Get regset using
9592         ppc_linux_vrregset. Use regset to collect registers.
9593         (fetch_register): Call fetch_altivec_registers instead of
9594         fetch_altivec_register.
9595         (store_register): Call store_altivec_registers instead of
9596         store_altivec_register.
9597         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9598         the new regno parameter.
9599         (store_ppc_registers): Call store_altivec_registers with -1 for
9600         the new regno parameter.
9601
9602 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9603
9604         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9605         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9606         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9607         (gdb_vrregset_t): Change array type size to
9608         PPC_LINUX_SIZEOF_VRREGSET.
9609         (gdb_vsxregset_t): Change array type size to
9610         PPC_LINUX_SIZEOF_VSXREGSET.
9611         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9612         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9613         PPC_LINUX_SIZEOF_VSXREGSET.
9614
9615 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9616
9617         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9618         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9619         nat/ppc-linux.c.
9620         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9621         ppc_linux_target_wordsize with tid.
9622         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9623         wordsize with tid.
9624         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9625         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9626         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9627         tid parameter. Remove static specifier.
9628         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9629         (ppc_linux_target_wordsize): New declaration.
9630
9631 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9632
9633         * arch/ppc-linux-common.c: New file.
9634         * arch/ppc-linux-common.h: New file.
9635         * arch/ppc-linux-tdesc.h: New file.
9636         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9637         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9638         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9639         arch/ppc-linux-tdesc.h.
9640         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9641         arch/ppc-linux-tdesc.h.
9642         (ppc_linux_nat_target::read_description): Remove target
9643         description matching code. Fill a ppc_linux_features struct and
9644         call ppc_linux_match_description with it. Move comment about ISA
9645         2.05 to ppc-linux-common.c.
9646         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9647         arch/ppc-linux-tdesc.h.
9648         (ppc_linux_core_read_description): Remove target description
9649         matching code. Fill a ppc_linux_features struct and call
9650         ppc_linux_match_description with it.
9651         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9652         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9653         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9654         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9655         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9656         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9657         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9658         (tdesc_powerpc_e500l): Remove.
9659
9660 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9661
9662         * ada-lang.c (catch_assert_command): Pass empty string instead
9663         of NULL for excep_string argument.
9664
9665 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9666
9667         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9668         the width of the requested register exceeds the width of the
9669         `ptrace' data type.
9670
9671 2018-05-21  Tom Tromey  <tom@tromey.com>
9672
9673         * printcmd.c (output_command): Remove.
9674         (output_command_const): Rename to output_command.
9675         * valprint.h (output_command): Rename from output_command_const.
9676         * tracepoint.c (trace_dump_actions): Call output_command.
9677
9678 2018-05-21  Tom Tromey  <tom@tromey.com>
9679
9680         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9681         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9682         * ada-lang.h (create_ada_exception_catchpoint): Update.
9683         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9684         std::string.
9685         (create_excep_cond_exprs, ~ada_catchpoint)
9686         (should_stop_exception, print_one_exception)
9687         (print_mention_exception, print_recreate_exception): Update.
9688         (ada_get_next_arg): Remove.
9689         (catch_ada_exception_command_split): Use std::string.  Change type
9690         of "excep_string", "cond_string".
9691         (catch_ada_exception_command): Update.
9692         (create_ada_exception_catchpoint): Change type of excep_string.
9693         (ada_exception_sal): Remove excep_string parameter.
9694         (~ada_catchpoint): Remove.
9695
9696 2018-05-21  Tom Tromey  <tom@tromey.com>
9697
9698         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9699         cleanup.
9700
9701 2018-05-21  Tom Tromey  <tom@tromey.com>
9702
9703         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9704         Return unique_xmalloc_ptr.
9705         (print_it_exception): Update.
9706
9707 2018-05-21  Tom Tromey  <tom@tromey.com>
9708
9709         * tracepoint.c (trace_dump_actions): Use std::string.
9710
9711 2018-05-21  Tom Tromey  <tom@tromey.com>
9712
9713         * symfile.c (reread_symbols): Use std::string for original_name.
9714
9715 2018-05-21  Tom Tromey  <tom@tromey.com>
9716
9717         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9718         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9719         constructor.
9720
9721 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9722
9723         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9724         instance to...
9725         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9726         * objfiles.c (get_objfile_bfd_data): Allocate
9727         objfile_per_bfd_storage with obstack_new when allocating on
9728         obstack.
9729
9730 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9731
9732         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9733         OBSTACK_ZALLOC.
9734         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9735         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9736         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9737         (add_pending): Likewise.
9738         (parse_symbol): Likewise.
9739         (parse_partial_symbols): Likewise.
9740         (psymtab_to_symtab_1): Likewise.
9741         (new_psymtab): Likewise.
9742         (elfmdebug_build_psymtabs): Likewise.
9743         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9744         * objfiles.c (get_objfile_bfd_data): Likewise.
9745         (objfile_register_static_link): Likewise.
9746         * psymtab.c (allocate_psymtab): Likewise.
9747         * stabsread.c (read_member_functions): Likewise.
9748         * xcoffread.c (xcoff_end_psymtab): Likewise.
9749
9750 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9751
9752         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9753         compiler supports std::is_trivially_constructible.
9754         * common/poison.h: Include obstack.h.
9755         (IsMallocable): Define to is_trivially_constructible if the
9756         compiler supports it, define to true_type otherwise.
9757         (xobnew): New.
9758         (XOBNEW): Redefine.
9759         (xobnewvec): New.
9760         (XOBNEWVEC): Redefine.
9761         * gdb_obstack.h (obstack_zalloc): New.
9762         (OBSTACK_ZALLOC): Redefine.
9763         (obstack_calloc): New.
9764         (OBSTACK_CALLOC): Redefine.
9765         (obstack_new): New.
9766         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9767         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9768         gdbarch.c.
9769         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9770         obstack_calloc/obstack_zalloc.
9771         (gdbarch_obstack_zalloc): Remove.
9772         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9773
9774 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9775
9776         * stack.c (backtrace_command_1): Remove useless variable int i.
9777
9778 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9779
9780         * stack.c (print_frame_info): Fix comment.
9781
9782 2018-05-18  Tom Tromey  <tom@tromey.com>
9783
9784         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9785         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9786         (~dwarf2_per_objfile): Update
9787         (dwarf2_get_dwz_file): Use new.
9788         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9789         unique_ptr.
9790
9791 2018-05-18  Tom Tromey  <tom@tromey.com>
9792
9793         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9794         unique_ptr.
9795         * dwarf2read.c (struct dwp_file): Add constructor and
9796         initializers.
9797         (open_and_init_dwp_file): Return a unique_ptr.
9798         (dwarf2_per_objfile, create_dwp_hash_table)
9799         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9800         (lookup_dwo_unit_in_dwp): Update.
9801         (open_and_init_dwp_file, get_dwp_file): Update.
9802
9803 2018-05-18  Tom Tromey  <tom@tromey.com>
9804
9805         * dwarf2read.c (dwarf2_per_objfile): Update.
9806         (struct mapped_index): Add initializers.
9807         (dwarf2_read_index): Use new.
9808         (dw2_symtab_iter_init): Update.
9809         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9810         unique_ptr.
9811
9812 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9813
9814         * dwarf2read.c (mapped_index) <total_size>: Remove.
9815
9816 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9817
9818         * unittests/format_pieces-selftests.c (test_format_specifier):
9819         Add ARI comments.
9820
9821 2018-05-18  Tom Tromey  <tom@tromey.com>
9822
9823         * c-typeprint.c (maybe_print_hole): New function.
9824         (c_print_type_struct_field_offset): Update.
9825         (c_type_print_base_struct_union): Call maybe_print_hole.
9826
9827 2018-05-17  Keith Seitz  <keiths@redhat.com>
9828
9829         * breakpoint.c (build_bpstat_chain): New function, moved from
9830         bpstat_stop_status.
9831         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9832         If no stop chain is passed, call build_bpstat_chain to build it.
9833         * breakpoint.h (build_bpstat_chain): Declare.
9834         (bpstat_stop_status): Move documentation here from breakpoint.c.
9835         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9836         build the stop chain and pass it to skip_inline_frames.
9837         Pass this stop chain to bpstat_stop_status.
9838         * inline-frame.c: Include breakpoint.h.
9839         (stopped_by_user_bp_inline_frame): New function.
9840         (skip_inline_frames): Add parameter `stop_chain'.
9841         Move documention to inline-frame.h.
9842         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9843         whether the frame should be elided.
9844         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9845         Add moved documentation and update for new parameter.
9846
9847 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9848
9849         PR cli/14975
9850         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9851         unittests/format_pieces-selftests.c.
9852         * common/format.h (format_piece) <operator==>: New.
9853         (format_pieces) <operator[]>: Remove.
9854         * common/format.c (format_pieces::format_pieces): Handle \e.
9855         * unittests/format_pieces-selftests.c: New.
9856
9857 2018-05-17  Tom Tromey  <tom@tromey.com>
9858
9859         PR symtab/23010:
9860         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9861         (dw2_instantiate_symtab): Add skip_partial parameter.
9862         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9863         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9864         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9865         (dw2_expand_symtabs_matching_one)
9866         (dw2_find_pc_sect_compunit_symtab)
9867         (dw2_debug_names_lookup_symbol)
9868         (dw2_debug_names_expand_symtabs_for_function): Update.
9869         (init_cutu_and_read_dies): Add skip_partial parameter.
9870         (process_psymtab_comp_unit, build_type_psymtabs_1)
9871         (process_skeletonless_type_unit, load_partial_comp_unit)
9872         (psymtab_to_symtab_1): Update.
9873         (load_full_comp_unit): Add skip_partial parameter.
9874         (process_imported_unit_die, dwarf2_read_addr_index)
9875         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9876         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9877         (read_signatured_type): Update.
9878
9879 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9880
9881         * value.c (release_value): Remove unused variable.
9882         (record_latest_value): Likewise.
9883         (access_value_history): Likewise.
9884         (preserve_values): Likewise.
9885
9886 2018-05-17  Tom Tromey  <tom@tromey.com>
9887
9888         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9889         Initialize.
9890
9891 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9892
9893         PR gdb/22286
9894         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9895         Also handle registers whose width is not a multiple of
9896         PTRACE_TYPE_RET.
9897         (linux_nat_trad_target::store_register): Likewise.
9898
9899 2018-05-16  Tom Tromey  <tom@tromey.com>
9900
9901         * gdbcore.h (core_bfd): Redefine.
9902         * corelow.c (core_target::close): Update.
9903         (core_target_open): Update.
9904         * progspace.h (struct program_space) <cbfd>: Now a
9905         gdb_bfd_ref_ptr.
9906
9907 2018-05-16  Tom Tromey  <tom@tromey.com>
9908
9909         PR cli/19551:
9910         * symfile-add-flags.h (enum symfile_add_flags)
9911         <SYMFILE_NOT_FILENAME>: New constant.
9912         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9913         objfile name from BFD.
9914         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9915         * minidebug.c (find_separate_debug_file_in_section): Put
9916         ".gnu_debugdata" into BFD's file name.
9917
9918 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9919
9920         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9921         Remove.
9922
9923 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9924
9925         PR binutils/21446
9926         * aarch64-tdep.c (aarch64_analyze_prologue,
9927         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9928         Indicate not interested in errors.
9929
9930 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9931
9932         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9933         Supply the MIPS_ZERO_REGNUM register.
9934
9935 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9936
9937         * mips-tdep.c (mask_address_var): Make variable static.
9938
9939 2018-05-14  Tom Tromey  <tom@tromey.com>
9940
9941         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9942
9943 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9944
9945         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9946         FXSAVE_ADDR for the mxcsr register.
9947
9948 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9949
9950         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9951
9952 2018-05-11  Pedro Alves  <palves@redhat.com>
9953
9954         * corelow.c (core_target) <core_target>: No longer inline.
9955         Initialize m_core_gdbarch, m_core_vec and build the section table
9956         here.
9957         <~core_target>: New.
9958         <core_gdbarch, get_core_register_section>: New methods.
9959         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9960         factored out from ...
9961         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9962         (core_ops): Delete.
9963         (sniff_core_bfd): Add gdbarch parameter.
9964         (core_close): Delete, merged into ...
9965         (core_target::close): ... here.  Delete self.
9966         (core_close_cleanup): Delete.
9967         (core_target_open): Allocate a core_target on the heap.  Use a
9968         unique_ptr instead of a cleanup.  Bits moved into the core_target
9969         ctor.  Adjust to use core_target methods instead of globals.
9970         (get_core_register_section): Rename to ...
9971         (core_target::get_core_register_section): ... this and adjust.
9972         (struct get_core_registers_cb_data): New.
9973         (get_core_registers_cb): Use it.  Use bool.
9974         (core_target::fetch_registers, core_target::files_info)
9975         (core_target::xfer_partial, core_target::read_description)
9976         (core_target::pid_to, core_target::thread_name): Adjust to
9977         reference class fields instead of globals.
9978         * target.h (struct target_ops_deleter, target_ops_up): New.
9979
9980 2018-05-11  Pedro Alves  <palves@redhat.com>
9981
9982         * corefile.c (core_file_command): Move to corelow.c.
9983         * corelow.c (the_core_target): Delete.
9984         (core_file_command): Moved from corefile.c.  Check exec_bfd
9985         instead of the_core_target.  Use target_detach instead of calling
9986         into the_core_target directly.
9987         (maybe_say_no_core_file_now): New.
9988         (core_target::detach): Use it.
9989         (_initialize_corelow): Remove references to the_core_target.
9990         * gdbcore.h (the_core_target): Delete.
9991
9992 2018-05-11  Tom Tromey  <tromey@redhat.com>
9993             Pedro Alves  <palves@redhat.com>
9994
9995         * corefile.c (core_bfd): Remove.
9996         * gdbcore.h (core_bfd): Now a macro.
9997         * progspace.h (struct program_space) <cbfd>: New field.
9998
9999 2018-05-11  Tom Tromey  <tom@tromey.com>
10000
10001         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
10002         gdb::def_vector.
10003
10004 2018-05-10  Tom Tromey  <tom@tromey.com>
10005
10006         * configure: Rebuild.
10007         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
10008
10009 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
10010
10011         PR server/23158:
10012         * regformats/regdat.sh: Adjust script, following the addition
10013         of the new expedite_regs parameter to init_target_desc.
10014
10015 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
10016     
10017         PR gdb/23127
10018         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
10019         set_gdbarch_significant_addr_bit.
10020         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
10021         set_gdbarch_significant_addr_bit.
10022         * utils.c (address_significant): Update to sign extend addr.
10023
10024 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
10025
10026         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
10027         (xtensa_linux_init_abi): Limit tdep->num_regs by
10028         tdep->num_nopriv_regs.
10029         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
10030         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
10031         not initialized.
10032
10033 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
10034
10035         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
10036
10037 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
10038
10039         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
10040         (I387_MXCSR_INIT_VAL): New constant.
10041         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
10042         buffer if it was supplied by the inferior.
10043         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
10044         (i387_xsave_get_clear_bv): New function.
10045         (i387_supply_xsave): Only read x87 control registers from the
10046         xsave buffer if the feature is enabled, and the state will have
10047         been written, otherwise, provide a suitable default.
10048         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
10049         including x87 control registers.  Update control registers if they
10050         have changed from the default value, and mark features as enabled
10051         as required.
10052         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
10053
10054 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
10055
10056         * spu-tdep.c (info_spu_event_command): Fix output formatting.
10057
10058 2018-05-07  Tom Tromey  <tom@tromey.com>
10059
10060         * configure: Rebuild.
10061         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
10062
10063 2018-05-07  Tom Tromey  <tom@tromey.com>
10064
10065         PR tdep/20362:
10066         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
10067         bit.  Use correct value for VDIV.
10068
10069 2018-05-04  Tom Tromey  <tom@tromey.com>
10070
10071         * configure: Rebuild.
10072         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
10073
10074 2018-05-04  Tom Tromey  <tom@tromey.com>
10075
10076         * linux-record.c (record_linux_system_call) <case
10077         RECORD_SYS_RECVFROM>: Add "break".
10078
10079 2018-05-04  Tom Tromey  <tom@tromey.com>
10080
10081         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
10082         Add missing "break".
10083         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
10084         Add missing "break".
10085
10086 2018-05-04  Tom Tromey  <tom@tromey.com>
10087
10088         * rs6000-tdep.c (ppc_process_record_op4)
10089         (ppc_process_record_op63): Add fall-through comment.
10090
10091 2018-05-04  Tom Tromey  <tom@tromey.com>
10092
10093         * i386-tdep.c (i386_process_record): Add fall-through comment.
10094
10095 2018-05-04  Tom Tromey  <tom@tromey.com>
10096
10097         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
10098         comment.
10099
10100 2018-05-04  Tom Tromey  <tom@tromey.com>
10101
10102         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
10103         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
10104         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
10105         comment.
10106         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
10107         comment.
10108         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
10109         comment.
10110
10111 2018-05-04  Tom Tromey  <tom@tromey.com>
10112
10113         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
10114
10115 2018-05-04  Tom Tromey  <tom@tromey.com>
10116
10117         * s390-tdep.c (s390_process_record): Fix fall-through comments.
10118         * xcoffread.c (scan_xcoff_symtab): Move comment later.
10119         * symfile.c (section_is_mapped): Fix fall-through comment.
10120         * stabsread.c (define_symbol, read_member_functions): Fix
10121         fall-through comment.
10122         * s390-linux-tdep.c (s390_process_record): Fix fall-through
10123         comment.
10124         * remote.c (remote_wait_as): Fix fall-through comment.
10125         * p-exp.y (yylex): Fix fall-through comment.
10126         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
10127         comment.
10128         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
10129         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
10130         * jv-exp.y (yylex): Fix fall-through comment.
10131         * go-exp.y (lex_one_token): Fix fall-through comment.
10132         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
10133         fall-through comment.
10134         * f-exp.y (yylex): Fix fall-through comment.
10135         * dwarf2read.c (process_die): Fix fall-through comments.
10136         * dbxread.c (process_one_symbol): Fix fall-through comment.
10137         * d-exp.y (lex_one_token): Fix fall-through comment.
10138         * cp-name-parser.y (yylex): Fix fall-through comment.
10139         * coffread.c (coff_symtab_read): Fix fall-through comment.
10140         * c-exp.y (lex_one_token): Fix fall-through comment.
10141         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
10142         comment.
10143         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
10144         comment.
10145
10146 2018-05-04  Tom Tromey  <tom@tromey.com>
10147
10148         PR python/22730:
10149         * NEWS: Mention gdb.execute change.
10150         * gdbcmd.h (execute_control_command): Don't declare.
10151         * python/python.c (execute_gdb_command): Use read_command_lines_1,
10152         execute_control_commands, execute_control_commands_to_string.
10153         * cli/cli-script.h (execute_control_commands)
10154         (execute_control_commands_to_string): Declare.
10155         (execute_control_command): Add from_tty parameter.
10156         * cli/cli-script.c (execute_control_commands)
10157         (execute_control_commands_to_string): New functions.
10158         (execute_user_command): Use execute_control_commands.
10159         (execute_control_command_1): Add "from_tty" parameter.  Update.
10160         (execute_control_command): Likewise.
10161
10162 2018-05-04  Tom Tromey  <tom@tromey.com>
10163
10164         PR python/22731:
10165         * NEWS: Mention that breakpoint commands are writable.
10166         * python/py-breakpoint.c (bppy_set_commands): New function.
10167         (breakpoint_object_getset) <"commands">: Use it.
10168
10169 2018-05-04  Tom Tromey  <tom@tromey.com>
10170
10171         * tracepoint.c (actions_command): Update.
10172         * mi/mi-cmd-break.c (mi_command_line_array)
10173         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10174         (mi_read_next_line): Remove.
10175         (mi_cmd_break_commands): Update.
10176         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10177         function_view.
10178         * cli/cli-script.c (get_command_line): Update.
10179         (process_next_line): Use function_view.  Constify.
10180         (recurse_read_control_structure, read_command_lines)
10181         (read_command_lines_1): Change argument types to function_view.
10182         (do_define_command, document_command): Update.
10183         * breakpoint.h (check_tracepoint_command): Don't declare.
10184         * breakpoint.c (check_tracepoint_command): Remove.
10185         (commands_command_1, create_tracepoint_from_upload): Update.
10186
10187 2018-05-04  Tom Tromey  <tom@tromey.com>
10188
10189         PR gdb/11750:
10190         * cli/cli-script.h (enum command_control_type) <define_control>:
10191         New constant.
10192         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10193         (build_command_line, execute_control_command_1)
10194         (process_next_line): Likewise.
10195         (do_define_command): New function, extracted from define_command.
10196         (define_command): Use it.
10197
10198 2018-05-04  Tom Tromey  <tom@tromey.com>
10199
10200         * tracepoint.c (actions_command): Update.
10201         * cli/cli-script.h (read_command_lines): Update.
10202         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10203         (MAX_TMPBUF): Remove define.
10204         (define_command): Use string_printf.
10205         (document_command): Likewise.
10206         * breakpoint.c (commands_command_1): Update.
10207
10208 2018-05-04  Tom Tromey  <tom@tromey.com>
10209
10210         * top.c (execute_command): Update.
10211         * cli/cli-script.h (print_command_lines): Now varargs.
10212         * cli/cli-script.c (print_command_lines): Now varargs.
10213         (execute_control_command_1) <case while_control, case if_control>:
10214         Update.
10215
10216 2018-05-04  Tom Tromey  <tom@tromey.com>
10217
10218         * tracepoint.c (all_tracepoint_actions): Rename from
10219         all_tracepoint_actions_and_cleanup.  Change return type.
10220         (actions_command, encode_actions_1, encode_actions)
10221         (trace_dump_actions, tdump_command): Update.
10222         * remote.c (remote_download_command_source): Update.
10223         * python/python.c (gdbpy_eval_from_control_command)
10224         (python_command, python_interactive_command): Update.
10225         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10226         * guile/guile.c (guile_command)
10227         (gdbscm_eval_from_control_command, guile_command): Update.
10228         * compile/compile.c (compile_code_command)
10229         (compile_print_command, compile_to_object): Update.
10230         * cli/cli-script.h (struct command_lines_deleter): New.
10231         (counted_command_line): New typedef.
10232         (struct command_line): Add constructor, destructor.
10233         <body_list>: Remove.
10234         <body_list_0, body_list_1>: New members.
10235         (command_line_up): Remove typedef.
10236         (read_command_lines, read_command_lines_1, get_command_line):
10237         Update.
10238         (copy_command_lines): Don't declare.
10239         * cli/cli-script.c (build_command_line): Use "new".
10240         (get_command_line): Return counted_command_line.
10241         (print_command_lines, execute_user_command)
10242         (execute_control_command_1, while_command, if_command): Update.
10243         (realloc_body_list): Remove.
10244         (process_next_line, recurse_read_control_structure): Update.
10245         (read_command_lines, read_command_lines_1): Return counted_command_line.
10246         (free_command_lines): Use "delete".
10247         (copy_command_lines): Remove.
10248         (define_command, document_command, show_user_1): Update.
10249         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10250         a counted_command_line.
10251         * breakpoint.h (counted_command_line): Remove typedef.
10252         (breakpoint_set_commands): Update.
10253         * breakpoint.c (check_no_tracepoint_commands)
10254         (validate_commands_for_breakpoint): Update.
10255         (breakpoint_set_commands): Change commands to be a
10256         counted_command_line.
10257         (commands_command_1, update_dprintf_command_list)
10258         (create_tracepoint_from_upload): Update.
10259
10260 2018-05-04  Tom Tromey  <tom@tromey.com>
10261
10262         * cli/cli-decode.h (cmd_list_element): New constructor.
10263         (~cmd_list_element): New destructor.
10264         (struct cmd_list_element): Add initializers.
10265         * cli/cli-decode.c (do_add_cmd): Use "new".
10266         (delete_cmd): Use "delete".
10267
10268 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10269             Pedro Alves <palves@redhat.com>
10270
10271         PR breakpoints/19806 and support for PR external/20207.
10272         * NEWS: Mention Aarch64 watchpoint improvements.
10273         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10274         watchpoints and PR external/20207 watchpoints.
10275         * nat/aarch64-linux-hw-point.c
10276         (kernel_supports_any_contiguous_range): New.
10277         (aarch64_watchpoint_offset): New.
10278         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10279         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10280         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10281         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10282         next_addr_orig_p.  Support PR external/20207 watchpoints.
10283         (aarch64_downgrade_regs): New.
10284         (aarch64_dr_state_insert_one_point): New parameters offset and
10285         addr_orig.
10286         (aarch64_dr_state_remove_one_point): Likewise.
10287         (aarch64_handle_breakpoint): Update caller.
10288         (aarch64_handle_aligned_watchpoint): Likewise.
10289         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10290         aligned_offset.
10291         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10292         aarch64_downgrade_regs.
10293         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10294         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10295         (DR_CONTROL_MASK): ... this.
10296         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10297         (unsigned int aarch64_watchpoint_offset): New prototype.
10298         (aarch64_linux_set_debug_regs): Remove const from state.
10299         * utils.c (align_up, align_down): Move to ...
10300         * common/common-utils.c (align_up, align_down): ... here.
10301         * utils.h (align_up, align_down): Move to ...
10302         * common/common-utils.h (align_up, align_down): ... here.
10303
10304 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10305
10306         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10307         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10308         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10309         Re-implement to match the ABI as summarized in GCC's
10310         gcc/config/sparc/sparc.c.  All callers updated.
10311         (sparc32_store_arguments): Remove assertion.
10312
10313 2018-05-04  Tom Tromey  <tom@tromey.com>
10314
10315         * printcmd.c: Don't include tui.h.
10316         (decode_format): Use skip_spaces.
10317
10318 2018-05-04  Tom Tromey  <tom@tromey.com>
10319
10320         PR gdb/22619:
10321         * printcmd.c (last_count): New global.
10322         (x_command): Use saved count when repeating.
10323
10324 2018-05-04  Tom Tromey  <tom@tromey.com>
10325
10326         * nto-procfs.c (do_closedir_cleanup): Remove.
10327         (procfs_pidlist): Use gdb_dir_up.
10328         * procfs.c (do_closedir_cleanup): Remove.
10329         (proc_update_threads): Use gdb_dir_up.
10330         * common/filestuff.h (struct gdb_dir_deleter): New.
10331         (gdb_dir_up): New typedef.
10332
10333 2018-05-04  Tom Tromey  <tom@tromey.com>
10334
10335         * ada-lang.c (print_mention_exception): Use std::string.
10336
10337 2018-05-04  Tom Tromey  <tom@tromey.com>
10338
10339         * ada-lang.c (create_excep_cond_exprs): Update.
10340         (ada_exception_catchpoint_cond_string): Use std::string.
10341
10342 2018-05-04  Tom Tromey  <tom@tromey.com>
10343
10344         * ada-lang.c (xget_renaming_scope): Return std::string.
10345         (old_renaming_is_invisible): Update.
10346
10347 2018-05-04  Tom Tromey  <tom@tromey.com>
10348
10349         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10350         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10351
10352 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10353
10354         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10355
10356 2018-05-04  Tom Tromey  <tom@tromey.com>
10357
10358         * remote.c (remote_query_supported_append): Change type.
10359         (remote_check_symbols): Update.
10360
10361 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10362
10363         PR gdb/11420
10364         * configure.ac: Prepend libpython.
10365         * python/python-config.py: Likewise.
10366         * configure: Regenerate.
10367
10368 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10369
10370         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10371
10372 2018-05-03  Pedro Alves  <palves@redhat.com>
10373
10374         * s390-linux-nat.c
10375         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10376         override.  Write 'true' instead of '1'.
10377         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10378         declaration.
10379
10380 2018-05-02  Pedro Alves  <palves@redhat.com>
10381
10382         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10383         add_inf_child_target.
10384         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10385         add_inf_child_target.
10386         * aix-thread.c (aix_thread_target_info): New.
10387         (aix_thread_target) <shortname, longname, doc>: Delete.
10388         <info>: New.
10389         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10390         add_inf_child_target.
10391         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10392         add_inf_child_target.
10393         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10394         add_inf_child_target.
10395         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10396         add_inf_child_target.
10397         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10398         add_inf_child_target.
10399         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10400         add_inf_child_target.
10401         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10402         add_inf_child_target.
10403         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10404         add_inf_child_target.
10405         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10406         add_inf_child_target.
10407         * bfd-target.c (target_bfd_target_info): New.
10408         (target_bfd) <shortname, longname, doc>: Delete.
10409         <info>: New.
10410         * bsd-kvm.c (bsd_kvm_target_info): New.
10411         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10412         <info>: New.
10413         (bsd_kvm_target::open): Rename to ...
10414         (bsd_kvm_target_open): ... this.  Adjust.
10415         * bsd-uthread.c (bsd_uthread_target_info): New.
10416         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10417         <info>: New.
10418         * corefile.c (core_file_command): Adjust.
10419         * corelow.c (core_target_info): New.
10420         (core_target) <shortname, longname, doc>: Delete.
10421         <info>: New.
10422         (core_target::open): Rename to ...
10423         (core_target_open): ... this.  Adjust.
10424         * ctf.c (ctf_target_info): New.
10425         (ctf_target) <shortname, longname, doc>: Delete.
10426         <info>: New.
10427         (ctf_target::open): Rename to ...
10428         (ctf_target_open): ... this.
10429         (_initialize_ctf): Adjust.
10430         * exec.c (exec_target_info): New.
10431         (exec_target) <shortname, longname, doc>: Delete.
10432         <info>: New.
10433         (exec_target::open): Rename to ...
10434         (exec_target_open): ... this.
10435         * gdbcore.h (core_target_open): Declare.
10436         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10437         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10438         add_inf_child_target.
10439         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10440         add_inf_child_target.
10441         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10442         add_inf_child_target.
10443         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10444         add_inf_child_target.
10445         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10446         add_inf_child_target.
10447         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10448         add_inf_child_target.
10449         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10450         add_inf_child_target.
10451         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10452         add_inf_child_target.
10453         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10454         add_inf_child_target.
10455         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10456         add_inf_child_target.
10457         * inf-child.c (inf_child_target_info): New.
10458         (inf_child_target::info): New.
10459         (inf_child_open_target): Remove 'target' parameter.  Use
10460         get_native_target instead.
10461         (inf_child_target::open): Delete.
10462         (add_inf_child_target): New.
10463         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10464         Delete.
10465         <info>: New.
10466         (add_inf_child_target): Declare.
10467         (inf_child_open_target): Declare.
10468         * linux-thread-db.c (thread_db_target_info): New.
10469         (thread_db_target) <shortname, longname, doc>: Delete.
10470         <info>: New.
10471         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10472         add_inf_child_target.
10473         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10474         add_inf_child_target.
10475         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10476         add_inf_child_target.
10477         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10478         add_inf_child_target.
10479         * make-target-delegates (print_class): Adjust.
10480         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10481         add_inf_child_target.
10482         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10483         add_inf_child_target.
10484         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10485         add_inf_child_target.
10486         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10487         add_inf_child_target.
10488         * nto-procfs.c (nto_native_target_info): New.
10489         (nto_procfs_target_native) <shortname, longname, doc>:
10490         Delete.
10491         <info>: New.
10492         (nto_procfs_target_info): New.
10493         (nto_procfs_target_procfs) <shortname, longname, doc>:
10494         Delete.
10495         <info>: New.
10496         (init_procfs_targets): Adjust.
10497         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10498         add_inf_child_target.
10499         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10500         add_inf_child_target.
10501         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10502         add_inf_child_target.
10503         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10504         add_inf_child_target.
10505         * ravenscar-thread.c (ravenscar_target_info): New.
10506         (ravenscar_thread_target) <shortname, longname, doc>:
10507         Delete.
10508         <info>: New.
10509         * record-btrace.c (record_btrace_target_info):
10510         (record_btrace_target) <shortname, longname, doc>: Delete.
10511         <info>: New.
10512         (record_btrace_target::open): Rename to ...
10513         (record_btrace_target_open): ... this.  Adjust.
10514         * record-full.c (record_longname, record_doc): New.
10515         (record_full_base_target) <shortname, longname, doc>: Delete.
10516         <info>: New.
10517         (record_full_target_info): New.
10518         (record_full_target): <shortname>: Delete.
10519         <info>: New.
10520         (record_full_core_open_1, record_full_open_1): Update comments.
10521         (record_full_base_target::open): Rename to ...
10522         (record_full_open): ... this.
10523         (cmd_record_full_restore): Update.
10524         (_initialize_record_full): Update.
10525         * remote-sim.c (remote_sim_target_info): New.
10526         (gdbsim_target) <shortname, longname, doc>: Delete.
10527         <info>: New.
10528         (gdbsim_target::open): Rename to ...
10529         (gdbsim_target_open): ... this.
10530         (_initialize_remote_sim): Adjust.
10531         * remote.c (remote_doc): New.
10532         (remote_target_info): New.
10533         (remote_target) <shortname, longname, doc>: Delete.
10534         <info>: New.
10535         (extended_remote_target_info): New.
10536         (extended_remote_target) <shortname, longname, doc>: Delete.
10537         <info>: New.
10538         (remote_target::open_1): Make static.  Adjust.
10539         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10540         * s390-linux-nat.c (_initialize_s390_nat): Use
10541         add_inf_child_target.
10542         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10543         add_inf_child_target.
10544         * sol-thread.c (thread_db_target_info): New.
10545         (sol_thread_target) <shortname, longname, doc>: Delete.
10546         <info>: New.
10547         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10548         add_inf_child_target.
10549         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10550         add_inf_child_target.
10551         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10552         add_inf_child_target.
10553         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10554         add_inf_child_target.
10555         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10556         add_inf_child_target.
10557         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10558         add_inf_child_target.
10559         * spu-linux-nat.c (_initialize_spu_nat): Use
10560         add_inf_child_target.
10561         * spu-multiarch.c (spu_multiarch_target_info): New.
10562         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10563         <info>: New.
10564         * target-delegates.c: Regenerate.
10565         * target.c: Include <unordered_map>.
10566         (target_ops_p): Delete.
10567         (DEF_VEC_P(target_ops_p)): Delete.
10568         (target_factories): New.
10569         (test_target_info): New.
10570         (test_target_ops::info): New.
10571         (open_target): Adjust to use target_factories.
10572         (add_target_with_completer): Rename to ...
10573         (add_target): ... this.  Change prototype.  Register target_info
10574         and open callback in target_factories.  Register target_info in
10575         command context instead of target_ops.
10576         (add_target): Delete old implementation.
10577         (add_deprecated_target_alias): Change prototype.  Adjust.
10578         (the_native_target): New.
10579         (set_native_target, get_native_target): New.
10580         (find_default_run_target): Use the_native_target.
10581         (find_attach_target, find_run_target): Simplify.
10582         (target_ops::open): Delete.
10583         (dummy_target_info): New.
10584         (dummy_target::shortname, dummy_target::longname)
10585         (dummy_target::doc): Delete.
10586         (dummy_target::info): New.
10587         (debug_target::shortname, debug_target::longname)
10588         (debug_target::doc): Delete.
10589         (debug_target::info): New.
10590         * target.h (struct target_info): New.
10591         (target_ops::~target_ops): Add comment.
10592         (target_ops::info): New.
10593         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10594         longer virtual.  Implement in terms of target_info.
10595         (set_native_target, get_native_target): Declare.
10596         (target_open_ftype): New.
10597         (add_target, add_target_with_completer)
10598         (add_deprecated_target_alias): Change prototype.
10599         (test_target) <shortname, longname, doc>: Delete.
10600         <info>: New.
10601         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10602         add_inf_child_target.
10603         * tracefile-tfile.c (tfile_target_info): New.
10604         (tfile_target) <shortname, longname, doc>: Delete.
10605         <info>: New.
10606         (tfile_target::open): Rename to ...
10607         (tfile_target_open): ... this.
10608         (_initialize_tracefile_tfile): Adjust.
10609         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10610         add_inf_child_target.
10611         * windows-nat.c (_initialize_windows_nat): Use
10612         add_inf_child_target.
10613         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10614         add_inf_child_target.
10615
10616 2018-05-02  Pedro Alves  <palves@redhat.com>
10617
10618         * linux-nat.h (linux_nat_target) <low_new_thread,
10619         low_delete_thread, low_new_fork, low_forget_process,
10620         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10621         New virtual methods.
10622         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10623         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10624         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10625         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10626         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10627         Delete.
10628         * linux-fork.c (delete_fork): Adjust to call low method.
10629         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10630         (linux_nat_new_fork, linux_nat_forget_process_hook)
10631         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10632         (linux_nat_status_is_event):
10633         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10634         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10635         to call low method.
10636         (sigtrap_is_event): Rename to ...
10637         (linux_nat_target::low_status_is_event): ... this.
10638         (linux_nat_set_status_is_event): Delete.
10639         (save_stop_reason, linux_nat_wait_1)
10640         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10641         low methods.
10642         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10643         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10644         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10645         (linux_nat_set_prepare_to_resume): Delete.
10646         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10647         low virtual methods.
10648         * amd64-linux-nat.c: Likewise.
10649         * arm-linux-nat.c: Likewise.
10650         * i386-linux-nat.c: Likewise.
10651         * ia64-linux-nat.c: Likewise.
10652         * mips-linux-nat.c: Likewise.
10653         * ppc-linux-nat.c: Likewise.
10654         * s390-linux-nat.c: Likewise.
10655         * sparc64-linux-nat.c: Likewise.
10656         * x86-linux-nat.c: Likewise.
10657         * x86-linux-nat.h: Include "nat/x86-linux.h".
10658         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10659         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10660         Override methods.
10661
10662 2018-05-02  Pedro Alves  <palves@redhat.com>
10663
10664         * target.h (target_ops)
10665         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10666         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10667         stopped_by_watchpoint, have_continuable_watchpoint,
10668         stopped_data_address, watchpoint_addr_within_range,
10669         can_accel_watchpoint_condition, can_run, thread_alive,
10670         has_all_memory, has_memory, has_stack, has_registers,
10671         has_execution, can_async_p, is_async_p, supports_non_stop,
10672         always_non_stop_p, can_execute_reverse, supports_multi_process,
10673         supports_enable_disable_tracepoint,
10674         supports_disable_randomization, supports_string_tracing,
10675         supports_evaluation_of_breakpoint_conditions,
10676         can_run_breakpoint_commands, filesystem_is_local,
10677         can_download_tracepoint, get_trace_state_variable_value,
10678         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10679         record_is_replaying, record_will_replay,
10680         augmented_libraries_svr4_read>: Adjust to return bool.
10681         * aarch64-linux-nat.c: All implementations adjusted.
10682         * aix-thread.c: All implementations adjusted.
10683         * arm-linux-nat.c: All implementations adjusted.
10684         * breakpoint.c: All implementations adjusted.
10685         * bsd-kvm.c: All implementations adjusted.
10686         * bsd-uthread.c: All implementations adjusted.
10687         * corelow.c: All implementations adjusted.
10688         * ctf.c: All implementations adjusted.
10689         * darwin-nat.c: All implementations adjusted.
10690         * darwin-nat.h: All implementations adjusted.
10691         * exec.c: All implementations adjusted.
10692         * fbsd-nat.c: All implementations adjusted.
10693         * fbsd-nat.h: All implementations adjusted.
10694         * gnu-nat.c: All implementations adjusted.
10695         * gnu-nat.h: All implementations adjusted.
10696         * go32-nat.c: All implementations adjusted.
10697         * ia64-linux-nat.c: All implementations adjusted.
10698         * inf-child.c: All implementations adjusted.
10699         * inf-child.h: All implementations adjusted.
10700         * inf-ptrace.c: All implementations adjusted.
10701         * inf-ptrace.h: All implementations adjusted.
10702         * linux-nat.c: All implementations adjusted.
10703         * linux-nat.h: All implementations adjusted.
10704         * mips-linux-nat.c: All implementations adjusted.
10705         * nto-procfs.c: All implementations adjusted.
10706         * ppc-linux-nat.c: All implementations adjusted.
10707         * procfs.c: All implementations adjusted.
10708         * ravenscar-thread.c: All implementations adjusted.
10709         * record-btrace.c: All implementations adjusted.
10710         * record-full.c: All implementations adjusted.
10711         * remote-sim.c: All implementations adjusted.
10712         * remote.c: All implementations adjusted.
10713         * s390-linux-nat.c: All implementations adjusted.
10714         * sol-thread.c: All implementations adjusted.
10715         * spu-multiarch.c: All implementations adjusted.
10716         * target-delegates.c: All implementations adjusted.
10717         * target.c: All implementations adjusted.
10718         * target.h: All implementations adjusted.
10719         * tracefile-tfile.c: All implementations adjusted.
10720         * tracefile.c: All implementations adjusted.
10721         * tracefile.h: All implementations adjusted.
10722         * windows-nat.c: All implementations adjusted.
10723         * x86-linux-nat.h: All implementations adjusted.
10724         * x86-nat.h: All implementations adjusted.
10725
10726 2018-05-02  Pedro Alves  <palves@redhat.com>
10727
10728         * make-target-delegates (scan_target_h): Don't trim lines here.
10729         Replace sequences of tabs and/or whitespace with a single
10730         whitespace.
10731         (top level, parsing methods): Trim each line before processing it
10732         here.
10733
10734 2018-05-02  Pedro Alves  <palves@redhat.com>
10735             John Baldwin  <jhb@freebsd.org>
10736
10737         * target.h (enum strata) <debug_stratum>: New.
10738         (struct target_ops) <all delegation methods>: Replace by C++
10739         virtual methods, and drop "to_" prefix.  All references updated
10740         throughout.
10741         <to_shortname, to_longname, to_doc, to_data,
10742         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10743         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10744         virtual methods.  All references updated throughout.
10745         <can_attach, supports_terminal_ours, can_create_inferior,
10746         get_thread_control_capabilities, attach_no_wait>: New
10747         virtual methods.
10748         <insert_breakpoint, remove_breakpoint>: Now
10749         TARGET_DEFAULT_NORETURN methods.
10750         <info_proc>: Now returns bool.
10751         <to_magic>: Delete.
10752         (OPS_MAGIC): Delete.
10753         (current_target): Delete.  All references replaced by references
10754         to ...
10755         (target_stack): ... this.  New.
10756         (target_shortname, target_longname): Adjust.
10757         (target_can_run): Now a function declaration.
10758         (default_child_has_all_memory, default_child_has_memory)
10759         (default_child_has_stack, default_child_has_registers)
10760         (default_child_has_execution): Remove target_ops parameter.
10761         (complete_target_initialization): Delete.
10762         (memory_breakpoint_target): New template class.
10763         (test_target_ops): Refactor as a C++ class with virtual methods.
10764         * make-target-delegates (NAME_PART): Tighten.
10765         (POINTER_PART, CP_SYMBOL): New.
10766         (SIMPLE_RETURN_PART): Reimplement.
10767         (VEC_RETURN_PART): Expect less.
10768         (RETURN_PART, VIRTUAL_PART): New.
10769         (METHOD): Adjust to C++ virtual methods.
10770         (scan_target_h): Remove reference to C99.
10771         (dname): Output "target_ops::" prefix.
10772         (write_function_header): Adjust to output a C++ class method.
10773         (write_declaration): New.
10774         (write_delegator): Adjust to output a C++ class method.
10775         (tdname): Output "dummy_target::" prefix.
10776         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10777         method.
10778         (tdefault_names, debug_names): Delete.
10779         (return_types, tdefaults, styles, argtypes_array): New.
10780         (top level): All methods are delegators.
10781         (print_class): New.
10782         (top level): Print dummy_target and debug_target classes.
10783         * target-delegates.c: Regenerate.
10784         * target-debug.h (target_debug_print_enum_info_proc_what)
10785         (target_debug_print_thread_control_capabilities)
10786         (target_debug_print_thread_info_p): New.
10787         * target.c (dummy_target): Delete.
10788         (the_dummy_target, the_debug_target): New.
10789         (target_stack): Now extern.
10790         (set_targetdebug): Push/unpush debug target.
10791         (default_child_has_all_memory, default_child_has_memory)
10792         (default_child_has_stack, default_child_has_registers)
10793         (default_child_has_execution): Remove target_ops parameter.
10794         (complete_target_initialization): Delete.
10795         (add_target_with_completer): No longer call
10796         complete_target_initialization.
10797         (target_supports_terminal_ours): Use regular delegation.
10798         (update_current_target): Delete.
10799         (push_target): No longer check magic number.  Don't call
10800         update_current_target.
10801         (unpush_target): Don't call update_current_target.
10802         (target_is_pushed): No longer check magic number.
10803         (target_require_runnable): Skip for all stratums over
10804         process_stratum.
10805         (target_ops::info_proc): New.
10806         (target_info_proc): Use find_target_at and
10807         find_default_run_target.
10808         (target_supports_disable_randomization): Use regular delegation.
10809         (target_get_osdata): Use find_target_at.
10810         (target_ops::open, target_ops::close, target_ops::can_attach)
10811         (target_ops::attach, target_ops::can_create_inferior)
10812         (target_ops::create_inferior, target_ops::can_run)
10813         (target_can_run): New.
10814         (default_fileio_target): Use regular delegation.
10815         (target_ops::fileio_open, target_ops::fileio_pwrite)
10816         (target_ops::fileio_pread, target_ops::fileio_fstat)
10817         (target_ops::fileio_close, target_ops::fileio_unlink)
10818         (target_ops::fileio_readlink): New.
10819         (target_fileio_open_1, target_fileio_unlink)
10820         (target_fileio_readlink): Always call the target method.  Handle
10821         FILEIO_ENOSYS.
10822         (return_zero, return_zero_has_execution): Delete.
10823         (init_dummy_target): Delete.
10824         (dummy_target::dummy_target, dummy_target::shortname)
10825         (dummy_target::longname, dummy_target::doc)
10826         (debug_target::debug_target, debug_target::shortname)
10827         (debug_target::longname, debug_target::doc): New.
10828         (target_supports_delete_record): Use regular delegation.
10829         (setup_target_debug): Delete.
10830         (maintenance_print_target_stack): Skip debug_stratum.
10831         (initialize_targets): Instantiate the_dummy_target and
10832         the_debug_target.
10833         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10834         use target_stack.
10835         (target_auxv_search, fprint_target_auxv): Adjust.
10836         (info_auxv_command): Adjust to use target_stack.
10837         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10838         * exceptions.c (print_flush): Handle a NULL target_stack.
10839         * regcache.c (target_ops_no_register): Refactor as class with
10840         virtual methods.
10841
10842         * exec.c (exec_target): New class.
10843         (exec_ops): Now an exec_target.
10844         (exec_open, exec_close_1, exec_get_section_table)
10845         (exec_xfer_partial, exec_files_info, exec_has_memory)
10846         (exec_make_note_section): Refactor as exec_target methods.
10847         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10848         Delete.
10849         (exec_target::find_memory_regions): New.
10850         (_initialize_exec): Don't call init_exec_ops.
10851         * gdbcore.h (exec_file_clear): Delete.
10852
10853         * corefile.c (core_target): Delete.
10854         (core_file_command): Adjust.
10855         * corelow.c (core_target): New class.
10856         (the_core_target): New.
10857         (core_close): Remove target_ops parameter.
10858         (core_close_cleanup): Adjust.
10859         (core_target::close): New.
10860         (core_open, core_detach, get_core_registers, core_files_info)
10861         (core_xfer_partial, core_thread_alive, core_read_description)
10862         (core_pid_to_str, core_thread_name, core_has_memory)
10863         (core_has_stack, core_has_registers, core_info_proc): Rework as
10864         core_target methods.
10865         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10866         (_initialize_corelow): Initialize the_core_target.
10867         * gdbcore.h (core_target): Delete.
10868         (the_core_target): New.
10869
10870         * ctf.c: (ctf_target): New class.
10871         (ctf_ops): Now a ctf_target.
10872         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10873         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10874         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10875         methods.
10876         (init_ctf_ops): Delete.
10877         (_initialize_ctf): Don't call it.
10878         * tracefile-tfile.c (tfile_target): New class.
10879         (tfile_ops): Now a tfile_target.
10880         (tfile_open, tfile_close, tfile_files_info)
10881         (tfile_get_tracepoint_status, tfile_trace_find)
10882         (tfile_fetch_registers, tfile_xfer_partial)
10883         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10884         Refactor as tfile_target methods.
10885         (tfile_xfer_partial_features): Remove target_ops parameter.
10886         (init_tfile_ops): Delete.
10887         (_initialize_tracefile_tfile): Don't call it.
10888         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10889         (tracefile_has_stack, tracefile_has_registers)
10890         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10891         tracefile_target methods.
10892         (init_tracefile_ops): Delete.
10893         (tracefile_target::tracefile_target): New.
10894         * tracefile.h: Include "target.h".
10895         (tracefile_target): New class.
10896         (init_tracefile_ops): Delete.
10897
10898         * spu-multiarch.c (spu_multiarch_target): New class.
10899         (spu_ops): Now a spu_multiarch_target.
10900         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10901         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10902         (spu_search_memory, spu_mourn_inferior): Refactor as
10903         spu_multiarch_target methods.
10904         (init_spu_ops): Delete.
10905         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10906         complete_target_initialization.
10907
10908         * ravenscar-thread.c (ravenscar_thread_target): New class.
10909         (ravenscar_ops): Now a ravenscar_thread_target.
10910         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10911         (ravenscar_thread_alive, ravenscar_pid_to_str)
10912         (ravenscar_fetch_registers, ravenscar_store_registers)
10913         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10914         (ravenscar_stopped_by_hw_breakpoint)
10915         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10916         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10917         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10918         methods.
10919         (init_ravenscar_thread_ops): Delete.
10920         (_initialize_ravenscar): Remove references to
10921         init_ravenscar_thread_ops and complete_target_initialization.
10922
10923         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10924         (bsd_uthread_target): New class.
10925         (bsd_uthread_ops): Now a bsd_uthread_target.
10926         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10927         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10928         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10929         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10930         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10931         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10932         (bsd_uthread_target): Delete function.
10933         (_initialize_bsd_uthread): Remove reference to
10934         complete_target_initialization.
10935
10936         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10937         (target_bfd): ... this new class.
10938         (target_bfd_xfer_partial, target_bfd_get_section_table)
10939         (target_bfd_close): Refactor as target_bfd methods.
10940         (target_bfd::~target_bfd): New.
10941         (target_bfd_reopen): Adjust.
10942         (target_bfd::close): New.
10943
10944         * record-btrace.c (record_btrace_target): New class.
10945         (record_btrace_ops): Now a record_btrace_target.
10946         (record_btrace_open, record_btrace_stop_recording)
10947         (record_btrace_disconnect, record_btrace_close)
10948         (record_btrace_async, record_btrace_info)
10949         (record_btrace_insn_history, record_btrace_insn_history_range)
10950         (record_btrace_insn_history_from, record_btrace_call_history)
10951         (record_btrace_call_history_range)
10952         (record_btrace_call_history_from, record_btrace_record_method)
10953         (record_btrace_is_replaying, record_btrace_will_replay)
10954         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10955         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10956         (record_btrace_store_registers, record_btrace_prepare_to_store)
10957         (record_btrace_to_get_unwinder)
10958         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10959         (record_btrace_commit_resume, record_btrace_wait)
10960         (record_btrace_stop, record_btrace_can_execute_reverse)
10961         (record_btrace_stopped_by_sw_breakpoint)
10962         (record_btrace_supports_stopped_by_sw_breakpoint)
10963         (record_btrace_stopped_by_hw_breakpoint)
10964         (record_btrace_supports_stopped_by_hw_breakpoint)
10965         (record_btrace_update_thread_list, record_btrace_thread_alive)
10966         (record_btrace_goto_begin, record_btrace_goto_end)
10967         (record_btrace_goto, record_btrace_stop_replaying_all)
10968         (record_btrace_execution_direction)
10969         (record_btrace_prepare_to_generate_core)
10970         (record_btrace_done_generating_core): Refactor as
10971         record_btrace_target methods.
10972         (init_record_btrace_ops): Delete.
10973         (_initialize_record_btrace): Remove reference to
10974         init_record_btrace_ops.
10975         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10976         the execution_direction global.
10977         (record_full_base_target, record_full_target)
10978         (record_full_core_target): New classes.
10979         (record_full_ops): Now a record_full_target.
10980         (record_full_core_ops): Now a record_full_core_target.
10981         (record_full_target::detach, record_full_target::disconnect)
10982         (record_full_core_target::disconnect)
10983         (record_full_target::mourn_inferior, record_full_target::kill):
10984         New.
10985         (record_full_open, record_full_close, record_full_async): Refactor
10986         as methods of the record_full_base_target class.
10987         (record_full_resume, record_full_commit_resume): Refactor
10988         as methods of the record_full_target class.
10989         (record_full_wait, record_full_stopped_by_watchpoint)
10990         (record_full_stopped_data_address)
10991         (record_full_stopped_by_sw_breakpoint)
10992         (record_full_supports_stopped_by_sw_breakpoint)
10993         (record_full_stopped_by_hw_breakpoint)
10994         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10995         methods of the record_full_base_target class.
10996         (record_full_store_registers, record_full_xfer_partial)
10997         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10998         Refactor as methods of the record_full_target class.
10999         (record_full_can_execute_reverse, record_full_get_bookmark)
11000         (record_full_goto_bookmark, record_full_execution_direction)
11001         (record_full_record_method, record_full_info, record_full_delete)
11002         (record_full_is_replaying, record_full_will_replay)
11003         (record_full_goto_begin, record_full_goto_end, record_full_goto)
11004         (record_full_stop_replaying): Refactor as methods of the
11005         record_full_base_target class.
11006         (record_full_core_resume, record_full_core_kill)
11007         (record_full_core_fetch_registers)
11008         (record_full_core_prepare_to_store)
11009         (record_full_core_store_registers, record_full_core_xfer_partial)
11010         (record_full_core_insert_breakpoint)
11011         (record_full_core_remove_breakpoint)
11012         (record_full_core_has_execution): Refactor
11013         as methods of the record_full_core_target class.
11014         (record_full_base_target::supports_delete_record): New.
11015         (init_record_full_ops): Delete.
11016         (init_record_full_core_ops): Delete.
11017         (record_full_save): Refactor as method of the
11018         record_full_base_target class.
11019         (_initialize_record_full): Remove references to
11020         init_record_full_ops and init_record_full_core_ops.
11021
11022         * remote.c (remote_target, extended_remote_target): New classes.
11023         (remote_ops): Now a remote_target.
11024         (extended_remote_ops): Now an extended_remote_target.
11025         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
11026         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
11027         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
11028         (remote_pass_signals, remote_set_syscall_catchpoint)
11029         (remote_program_signals, )
11030         (remote_thread_always_alive): Remove target_ops parameter.
11031         (remote_thread_alive, remote_thread_name)
11032         (remote_update_thread_list, remote_threads_extra_info)
11033         (remote_static_tracepoint_marker_at)
11034         (remote_static_tracepoint_markers_by_strid)
11035         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
11036         (remote_open): Refactor as methods of remote_target.
11037         (extended_remote_open, extended_remote_detach)
11038         (extended_remote_attach, extended_remote_post_attach):
11039         (extended_remote_supports_disable_randomization)
11040         (extended_remote_create_inferior): : Refactor as method of
11041         extended_remote_target.
11042         (remote_set_permissions, remote_open_1, remote_detach)
11043         (remote_follow_fork, remote_follow_exec, remote_disconnect)
11044         (remote_resume, remote_commit_resume, remote_stop)
11045         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
11046         (remote_terminal_ours, remote_wait, remote_fetch_registers)
11047         (remote_prepare_to_store, remote_store_registers)
11048         (remote_flash_erase, remote_flash_done, remote_files_info)
11049         (remote_kill, remote_mourn, remote_insert_breakpoint)
11050         (remote_remove_breakpoint, remote_insert_watchpoint)
11051         (remote_watchpoint_addr_within_range)
11052         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
11053         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
11054         (remote_supports_stopped_by_sw_breakpoint)
11055         (remote_stopped_by_hw_breakpoint)
11056         (remote_supports_stopped_by_hw_breakpoint)
11057         (remote_stopped_by_watchpoint, remote_stopped_data_address)
11058         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
11059         (remote_verify_memory): Refactor as methods of remote_target.
11060         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
11061         parameter.
11062         (remote_xfer_partial, remote_get_memory_xfer_limit)
11063         (remote_search_memory, remote_rcmd, remote_memory_map)
11064         (remote_pid_to_str, remote_get_thread_local_address)
11065         (remote_get_tib_address, remote_read_description): Refactor as
11066         methods of remote_target.
11067         (remote_target::fileio_open, remote_target::fileio_pwrite)
11068         (remote_target::fileio_pread, remote_target::fileio_close): New.
11069         (remote_hostio_readlink, remote_hostio_fstat)
11070         (remote_filesystem_is_local, remote_can_execute_reverse)
11071         (remote_supports_non_stop, remote_supports_disable_randomization)
11072         (remote_supports_multi_process, remote_supports_cond_breakpoints)
11073         (remote_supports_enable_disable_tracepoint)
11074         (remote_supports_string_tracing)
11075         (remote_can_run_breakpoint_commands, remote_trace_init)
11076         (remote_download_tracepoint, remote_can_download_tracepoint)
11077         (remote_download_trace_state_variable, remote_enable_tracepoint)
11078         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
11079         (remote_trace_start, remote_get_trace_status)
11080         (remote_get_tracepoint_status, remote_trace_stop)
11081         (remote_trace_find, remote_get_trace_state_variable_value)
11082         (remote_save_trace_data, remote_get_raw_trace_data)
11083         (remote_set_disconnected_tracing, remote_core_of_thread)
11084         (remote_set_circular_trace_buffer, remote_traceframe_info)
11085         (remote_get_min_fast_tracepoint_insn_len)
11086         (remote_set_trace_buffer_size, remote_set_trace_notes)
11087         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
11088         (remote_disable_btrace, remote_teardown_btrace)
11089         (remote_read_btrace, remote_btrace_conf)
11090         (remote_augmented_libraries_svr4_read, remote_load)
11091         (remote_pid_to_exec_file, remote_can_do_single_step)
11092         (remote_execution_direction, remote_thread_handle_to_thread_info):
11093         Refactor as methods of remote_target.
11094         (init_remote_ops, init_extended_remote_ops): Delete.
11095         (remote_can_async_p, remote_is_async_p, remote_async)
11096         (remote_thread_events, remote_upload_tracepoints)
11097         (remote_upload_trace_state_variables): Refactor as methods of
11098         remote_target.
11099         (_initialize_remote): Remove references to init_remote_ops and
11100         init_extended_remote_ops.
11101
11102         * remote-sim.c (gdbsim_target): New class.
11103         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
11104         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
11105         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
11106         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
11107         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
11108         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
11109         Refactor as methods of gdbsim_target.
11110         (gdbsim_ops): Now a gdbsim_target.
11111         (init_gdbsim_ops): Delete.
11112         (gdbsim_cntrl_c): Adjust.
11113         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
11114
11115         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
11116         (the_amd64_linux_nat_target): New.
11117         (amd64_linux_fetch_inferior_registers)
11118         (amd64_linux_store_inferior_registers): Refactor as methods of
11119         amd64_linux_nat_target.
11120         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
11121         * i386-linux-nat.c: Don't include "linux-nat.h".
11122         (i386_linux_nat_target): New class.
11123         (the_i386_linux_nat_target): New.
11124         (i386_linux_fetch_inferior_registers)
11125         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
11126         as methods of i386_linux_nat_target.
11127         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
11128         * inf-child.c (inf_child_ops): Delete.
11129         (inf_child_fetch_inferior_registers)
11130         (inf_child_store_inferior_registers): Delete.
11131         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
11132         methods of inf_child_target.
11133         (inf_child_target::supports_terminal_ours)
11134         (inf_child_target::terminal_init)
11135         (inf_child_target::terminal_inferior)
11136         (inf_child_target::terminal_ours_for_output)
11137         (inf_child_target::terminal_ours, inf_child_target::interrupt)
11138         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
11139         New.
11140         (inf_child_open, inf_child_disconnect, inf_child_close)
11141         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
11142         (inf_child_post_startup_inferior, inf_child_can_run)
11143         (inf_child_pid_to_exec_file): Refactor as methods of
11144         inf_child_target.
11145         (inf_child_follow_fork): Delete.
11146         (inf_child_target::can_create_inferior)
11147         (inf_child_target::can_attach): New.
11148         (inf_child_target::has_all_memory, inf_child_target::has_memory)
11149         (inf_child_target::has_stack, inf_child_target::has_registers)
11150         (inf_child_target::has_execution): New.
11151         (inf_child_fileio_open, inf_child_fileio_pwrite)
11152         (inf_child_fileio_pread, inf_child_fileio_fstat)
11153         (inf_child_fileio_close, inf_child_fileio_unlink)
11154         (inf_child_fileio_readlink, inf_child_use_agent)
11155         (inf_child_can_use_agent): Refactor as methods of
11156         inf_child_target.
11157         (return_zero, inf_child_target): Delete.
11158         (inf_child_target::inf_child_target): New.
11159         * inf-child.h: Include "target.h".
11160         (inf_child_target): Delete function prototype.
11161         (inf_child_target): New class.
11162         (inf_child_open_target, inf_child_mourn_inferior)
11163         (inf_child_maybe_unpush_target): Delete.
11164         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11165         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11166         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11167         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11168         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11169         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11170         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11171         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11172         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11173         methods of inf_ptrace_target.
11174         (inf_ptrace_target): Delete function.
11175         * inf-ptrace.h: Include "inf-child.h".
11176         (inf_ptrace_target): Delete function declaration.
11177         (inf_ptrace_target): New class.
11178         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11179         * linux-nat.c (linux_target): New.
11180         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11181         (linux_nat_target::~linux_nat_target): New.
11182         (linux_child_post_attach, linux_child_post_startup_inferior)
11183         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11184         (linux_child_remove_fork_catchpoint)
11185         (linux_child_insert_vfork_catchpoint)
11186         (linux_child_remove_vfork_catchpoint)
11187         (linux_child_insert_exec_catchpoint)
11188         (linux_child_remove_exec_catchpoint)
11189         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11190         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11191         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11192         (linux_nat_stopped_data_address)
11193         (linux_nat_stopped_by_sw_breakpoint)
11194         (linux_nat_supports_stopped_by_sw_breakpoint)
11195         (linux_nat_stopped_by_hw_breakpoint)
11196         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11197         (linux_nat_kill, linux_nat_mourn_inferior)
11198         (linux_nat_xfer_partial, linux_nat_thread_alive)
11199         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11200         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11201         (linux_child_static_tracepoint_markers_by_strid)
11202         (linux_nat_is_async_p, linux_nat_can_async_p)
11203         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11204         (linux_nat_supports_multi_process)
11205         (linux_nat_supports_disable_randomization, linux_nat_async)
11206         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11207         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11208         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11209         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11210         methods of linux_nat_target.
11211         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11212         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11213         parameter.
11214         (check_stopped_by_watchpoint): Adjust.
11215         (linux_xfer_partial): Delete.
11216         (linux_target_install_ops, linux_target, linux_nat_add_target):
11217         Delete.
11218         (linux_nat_target::linux_nat_target): New.
11219         * linux-nat.h: Include "inf-ptrace.h".
11220         (linux_nat_target): New.
11221         (linux_target, linux_target_install_ops, linux_nat_add_target):
11222         Delete function declarations.
11223         (linux_target): Declare global.
11224         * linux-thread-db.c (thread_db_target): New.
11225         (thread_db_target::thread_db_target): New.
11226         (thread_db_ops): Delete.
11227         (the_thread_db_target): New.
11228         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11229         (thread_db_update_thread_list, thread_db_pid_to_str)
11230         (thread_db_extra_thread_info)
11231         (thread_db_thread_handle_to_thread_info)
11232         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11233         (thread_db_resume): Refactor as methods of thread_db_target.
11234         (init_thread_db_ops): Delete.
11235         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11236         * x86-linux-nat.c: Don't include "linux-nat.h".
11237         (super_post_startup_inferior): Delete.
11238         (x86_linux_nat_target::~x86_linux_nat_target): New.
11239         (x86_linux_child_post_startup_inferior)
11240         (x86_linux_read_description, x86_linux_enable_btrace)
11241         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11242         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11243         methods of x86_linux_nat_target.
11244         (x86_linux_create_target): Delete.  Bits folded ...
11245         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11246         pointer.
11247         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11248         (x86_linux_nat_target): New class.
11249         (x86_linux_create_target): Delete.
11250         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11251         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11252         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11253         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11254         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11255         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11256         make extern.
11257         (x86_use_watchpoints): Delete.
11258         * x86-nat.h: Include "breakpoint.h" and "target.h".
11259         (x86_use_watchpoints): Delete.
11260         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11261         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11262         (x86_insert_watchpoint, x86_remove_watchpoint)
11263         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11264         (x86_stopped_by_hw_breakpoint): New declarations.
11265         (x86_nat_target): New template class.
11266
11267         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11268         (the_ppc_linux_nat_target): New.
11269         (ppc_linux_fetch_inferior_registers)
11270         (ppc_linux_can_use_hw_breakpoint)
11271         (ppc_linux_region_ok_for_hw_watchpoint)
11272         (ppc_linux_ranged_break_num_registers)
11273         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11274         (ppc_linux_insert_mask_watchpoint)
11275         (ppc_linux_remove_mask_watchpoint)
11276         (ppc_linux_can_accel_watchpoint_condition)
11277         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11278         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11279         (ppc_linux_watchpoint_addr_within_range)
11280         (ppc_linux_masked_watch_num_registers)
11281         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11282         (ppc_linux_read_description): Refactor as methods of
11283         ppc_linux_nat_target.
11284         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11285
11286         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11287         (procfs_target): New class.
11288         (the_procfs_target): New.
11289         (procfs_target): Delete function.
11290         (procfs_auxv_parse, procfs_attach, procfs_detach)
11291         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11292         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11293         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11294         (procfs_create_inferior, procfs_update_thread_list)
11295         (procfs_thread_alive, procfs_pid_to_str)
11296         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11297         (procfs_stopped_data_address, procfs_insert_watchpoint)
11298         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11299         (proc_find_memory_regions, procfs_info_proc)
11300         (procfs_make_note_section): Refactor as methods of procfs_target.
11301         (_initialize_procfs): Adjust.
11302         * sol-thread.c (sol_thread_target): New class.
11303         (sol_thread_ops): Now a sol_thread_target.
11304         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11305         (sol_thread_fetch_registers, sol_thread_store_registers)
11306         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11307         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11308         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11309         (init_sol_thread_ops): Delete.
11310         (_initialize_sol_thread): Adjust.  Remove references to
11311         init_sol_thread_ops and complete_target_initialization.
11312
11313         * windows-nat.c (windows_nat_target): New class.
11314         (windows_fetch_inferior_registers)
11315         (windows_store_inferior_registers, windows_resume, windows_wait)
11316         (windows_attach, windows_detach, windows_pid_to_exec_file)
11317         (windows_files_info, windows_create_inferior)
11318         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11319         (windows_close, windows_pid_to_str, windows_xfer_partial)
11320         (windows_get_tib_address, windows_get_ada_task_ptid)
11321         (windows_thread_name, windows_thread_alive): Refactor as
11322         windows_nat_target methods.
11323         (do_initial_windows_stuff): Adjust.
11324         (windows_target): Delete function.
11325         (_initialize_windows_nat): Adjust.
11326
11327         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11328         (darwin_mourn_inferior, darwin_kill_inferior)
11329         (darwin_create_inferior, darwin_attach, darwin_detach)
11330         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11331         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11332         (darwin_supports_multi_process): Refactor as darwin_nat_target
11333         methods.
11334         (darwin_resume_to, darwin_files_info): Delete.
11335         (_initialize_darwin_inferior): Rename to ...
11336         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11337         * darwin-nat.h: Include "inf-child.h".
11338         (darwin_nat_target): New class.
11339         (darwin_complete_target): Delete.
11340         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11341         (darwin_target): New.
11342         (i386_darwin_fetch_inferior_registers)
11343         (i386_darwin_store_inferior_registers): Refactor as methods of
11344         darwin_nat_target.
11345         (darwin_complete_target): Delete, with ...
11346         (_initialize_i386_darwin_nat): ... bits factored out here.
11347
11348         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11349         (the_alpha_linux_nat_target): New.
11350         (alpha_linux_register_u_offset): Refactor as
11351         alpha_linux_nat_target method.
11352         (_initialize_alpha_linux_nat): Adjust.
11353         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11354         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11355         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11356         methods of linux_nat_trad_target.
11357         (linux_trad_target): Delete.
11358         * linux-nat-trad.h (linux_trad_target): Delete function.
11359         (linux_nat_trad_target): New class.
11360         * mips-linux-nat.c (mips_linux_nat_target): New class.
11361         (super_fetch_registers, super_store_registers, super_close):
11362         Delete.
11363         (the_mips_linux_nat_target): New.
11364         (mips64_linux_regsets_fetch_registers)
11365         (mips64_linux_regsets_store_registers)
11366         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11367         (mips_linux_register_u_offset, mips_linux_read_description)
11368         (mips_linux_can_use_hw_breakpoint)
11369         (mips_linux_stopped_by_watchpoint)
11370         (mips_linux_stopped_data_address)
11371         (mips_linux_region_ok_for_hw_watchpoint)
11372         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11373         (mips_linux_close): Refactor as methods of mips_linux_nat.
11374         (_initialize_mips_linux_nat): Adjust to C++ification.
11375
11376         * aix-thread.c (aix_thread_target): New class.
11377         (aix_thread_ops): Now an aix_thread_target.
11378         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11379         (aix_thread_fetch_registers, aix_thread_store_registers)
11380         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11381         (aix_thread_thread_alive, aix_thread_pid_to_str)
11382         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11383         Refactor as methods of aix_thread_target.
11384         (init_aix_thread_ops): Delete.
11385         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11386         and complete_target_initialization.
11387         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11388         (rs6000_nat_target): New class.
11389         (the_rs6000_nat_target): New.
11390         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11391         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11392         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11393         (super_create_inferior): Delete.
11394         (_initialize_rs6000_nat): Adjust to C++ification.
11395
11396         * arm-linux-nat.c (arm_linux_nat_target): New class.
11397         (the_arm_linux_nat_target): New.
11398         (arm_linux_fetch_inferior_registers)
11399         (arm_linux_store_inferior_registers, arm_linux_read_description)
11400         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11401         (arm_linux_remove_hw_breakpoint)
11402         (arm_linux_region_ok_for_hw_watchpoint)
11403         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11404         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11405         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11406         arm_linux_nat_target.
11407         (_initialize_arm_linux_nat): Adjust to C++ification.
11408
11409         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11410         (the_aarch64_linux_nat_target): New.
11411         (aarch64_linux_fetch_inferior_registers)
11412         (aarch64_linux_store_inferior_registers)
11413         (aarch64_linux_child_post_startup_inferior)
11414         (aarch64_linux_read_description)
11415         (aarch64_linux_can_use_hw_breakpoint)
11416         (aarch64_linux_insert_hw_breakpoint)
11417         (aarch64_linux_remove_hw_breakpoint)
11418         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11419         (aarch64_linux_region_ok_for_hw_watchpoint)
11420         (aarch64_linux_stopped_data_address)
11421         (aarch64_linux_stopped_by_watchpoint)
11422         (aarch64_linux_watchpoint_addr_within_range)
11423         (aarch64_linux_can_do_single_step): Refactor as methods of
11424         aarch64_linux_nat_target.
11425         (super_post_startup_inferior): Delete.
11426         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11427
11428         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11429         (the_hppa_linux_nat_target): New.
11430         (hppa_linux_fetch_inferior_registers)
11431         (hppa_linux_store_inferior_registers): Refactor as methods of
11432         hppa_linux_nat_target.
11433         (_initialize_hppa_linux_nat): Adjust to C++ification.
11434
11435         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11436         (the_ia64_linux_nat_target): New.
11437         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11438         (ia64_linux_stopped_data_address)
11439         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11440         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11441         ia64_linux_nat_target methods.
11442         (super_xfer_partial): Delete.
11443         (_initialize_ia64_linux_nat): Adjust to C++ification.
11444
11445         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11446         (the_m32r_linux_nat_target): New.
11447         (m32r_linux_fetch_inferior_registers)
11448         (m32r_linux_store_inferior_registers): Refactor as
11449         m32r_linux_nat_target methods.
11450         (_initialize_m32r_linux_nat): Adjust to C++ification.
11451
11452         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11453         (the_m68k_linux_nat_target): New.
11454         (m68k_linux_fetch_inferior_registers)
11455         (m68k_linux_store_inferior_registers): Refactor as
11456         m68k_linux_nat_target methods.
11457         (_initialize_m68k_linux_nat): Adjust to C++ification.
11458
11459         * s390-linux-nat.c (s390_linux_nat_target): New class.
11460         (the_s390_linux_nat_target): New.
11461         (s390_linux_fetch_inferior_registers)
11462         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11463         (s390_insert_watchpoint, s390_remove_watchpoint)
11464         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11465         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11466         (s390_auxv_parse, s390_read_description): Refactor as methods of
11467         s390_linux_nat_target.
11468         (_initialize_s390_nat): Adjust to C++ification.
11469
11470         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11471         (the_sparc_linux_nat_target): New.
11472         (_initialize_sparc_linux_nat): Adjust to C++ification.
11473         * sparc-nat.c (sparc_fetch_inferior_registers)
11474         (sparc_store_inferior_registers): Remove target_ops parameter.
11475         * sparc-nat.h (sparc_fetch_inferior_registers)
11476         (sparc_store_inferior_registers): Remove target_ops parameter.
11477         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11478         (the_sparc64_linux_nat_target): New.
11479         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11480
11481         * spu-linux-nat.c (spu_linux_nat_target): New class.
11482         (the_spu_linux_nat_target): New.
11483         (spu_child_post_startup_inferior, spu_child_post_attach)
11484         (spu_child_wait, spu_fetch_inferior_registers)
11485         (spu_store_inferior_registers, spu_xfer_partial)
11486         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11487         methods.
11488         (_initialize_spu_nat): Adjust to C++ification.
11489
11490         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11491         (the_tilegx_linux_nat_target): New.
11492         (fetch_inferior_registers, store_inferior_registers):
11493         Refactor as methods.
11494         (_initialize_tile_linux_nat): Adjust to C++ification.
11495
11496         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11497         (the_xtensa_linux_nat_target): New.
11498         (xtensa_linux_fetch_inferior_registers)
11499         (xtensa_linux_store_inferior_registers): Refactor as
11500         xtensa_linux_nat_target methods.
11501         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11502
11503         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11504         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11505         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11506         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11507         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11508         (fbsd_stopped_by_sw_breakpoint)
11509         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11510         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11511         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11512         (fbsd_post_startup_inferior, fbsd_post_attach)
11513         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11514         (fbsd_set_syscall_catchpoint)
11515         (super_xfer_partial, super_resume, super_wait)
11516         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11517         (fbsd_handle_debug_trap): Remove target_ops parameter.
11518         (fbsd_nat_add_target): Delete.
11519         * fbsd-nat.h: Include "inf-ptrace.h".
11520         (fbsd_nat_add_target): Delete.
11521         (USE_SIGTRAP_SIGINFO): Define.
11522         (fbsd_nat_target): New class.
11523
11524         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11525         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11526         (amd64bsd_target): Delete.
11527         * amd64-bsd-nat.h: New file.
11528         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11529         "x86-bsd-nat.h".
11530         (amd64_fbsd_nat_target): New class.
11531         (the_amd64_fbsd_nat_target): New.
11532         (amd64fbsd_read_description): Refactor as method of
11533         amd64_fbsd_nat_target.
11534         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11535         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11536         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11537         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11538         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11539         (i386bsd_target): Delete.
11540         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11541         (i386bsd_fetch_inferior_registers)
11542         (i386bsd_store_inferior_registers): Declare.
11543         (i386_bsd_nat_target): New class.
11544         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11545         (the_i386_fbsd_nat_target): New.
11546         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11547         i386_fbsd_nat_target methods.
11548         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11549         (_initialize_i386fbsd_nat): Adjust to C++ification.
11550         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11551         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11552         (_initialize_x86_bsd_nat): Adjust to C++ification.
11553         * x86-bsd-nat.h: Include "x86-nat.h".
11554         (x86bsd_target): Delete declaration.
11555         (x86bsd_nat_target): New class.
11556
11557         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11558         (the_aarch64_fbsd_nat_target): New.
11559         (aarch64_fbsd_fetch_inferior_registers)
11560         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11561         aarch64_fbsd_nat_target.
11562         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11563         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11564         (the_alpha_bsd_nat_target): New.
11565         (alphabsd_fetch_inferior_registers)
11566         (alphabsd_store_inferior_registers): Refactor as
11567         alpha_bsd_nat_target methods.
11568         (_initialize_alphabsd_nat): Refactor as methods of
11569         alpha_bsd_nat_target.
11570         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11571         (the_amd64_nbsd_nat_target): New.
11572         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11573         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11574         (the_amd64_obsd_nat_target): New.
11575         (_initialize_amd64obsd_nat): Adjust to C++ification.
11576         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11577         (the_arm_fbsd_nat_target): New.
11578         (arm_fbsd_fetch_inferior_registers)
11579         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11580         (_initialize_arm_fbsd_nat): Refactor as methods of
11581         arm_fbsd_nat_target.
11582         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11583         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11584         (the_arm_netbsd_nat_target): New.
11585         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11586         arm_netbsd_nat_target.
11587         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11588         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11589         (the_hppa_nbsd_nat_target): New.
11590         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11591         hppa_nbsd_nat_target methods.
11592         (_initialize_hppanbsd_nat): Adjust to C++ification.
11593         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11594         (the_hppa_obsd_nat_target): New.
11595         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11596         methods of hppa_obsd_nat_target.
11597         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11598         add_target.
11599         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11600         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11601         add_target.
11602         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11603         (_initialize_i386obsd_nat): Use add_target.
11604         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11605         (the_m68k_bsd_nat_target): New.
11606         (m68kbsd_fetch_inferior_registers)
11607         (m68kbsd_store_inferior_registers): Refactor as methods of
11608         m68k_bsd_nat_target.
11609         (_initialize_m68kbsd_nat): Adjust to C++ification.
11610         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11611         (the_mips_fbsd_nat_target): New.
11612         (mips_fbsd_fetch_inferior_registers)
11613         (mips_fbsd_store_inferior_registers): Refactor as methods of
11614         mips_fbsd_nat_target.
11615         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11616         add_target.
11617         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11618         (the_mips_nbsd_nat_target): New.
11619         (mipsnbsd_fetch_inferior_registers)
11620         (mipsnbsd_store_inferior_registers): Refactor as methods of
11621         mips_nbsd_nat_target.
11622         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11623         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11624         (the_mips64_obsd_nat_target): New.
11625         (mips64obsd_fetch_inferior_registers)
11626         (mips64obsd_store_inferior_registers): Refactor as methods of
11627         mips64_obsd_nat_target.
11628         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11629         add_target.
11630         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11631         nbsd_nat_target.
11632         * nbsd-nat.h: Include "inf-ptrace.h".
11633         (nbsd_nat_target): New class.
11634         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11635         (obsd_wait): Refactor as methods of obsd_nat_target.
11636         (obsd_add_target): Delete.
11637         * obsd-nat.h: Include "inf-ptrace.h".
11638         (obsd_nat_target): New class.
11639         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11640         (the_ppc_fbsd_nat_target): New.
11641         (ppcfbsd_fetch_inferior_registers)
11642         (ppcfbsd_store_inferior_registers): Refactor as methods of
11643         ppc_fbsd_nat_target.
11644         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11645         add_target.
11646         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11647         (the_ppc_nbsd_nat_target): New.
11648         (ppcnbsd_fetch_inferior_registers)
11649         (ppcnbsd_store_inferior_registers): Refactor as methods of
11650         ppc_nbsd_nat_target.
11651         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11652         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11653         (the_ppc_obsd_nat_target): New.
11654         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11655         methods of ppc_obsd_nat_target.
11656         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11657         add_target.
11658         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11659         (the_sh_nbsd_nat_target): New.
11660         (shnbsd_fetch_inferior_registers)
11661         (shnbsd_store_inferior_registers): Refactor as methods of
11662         sh_nbsd_nat_target.
11663         (_initialize_shnbsd_nat): Adjust to C++ification.
11664         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11665         (inf_ptrace_xfer_partial): Delete.
11666         (sparc_xfer_partial, sparc_target): Delete.
11667         * sparc-nat.h (sparc_fetch_inferior_registers)
11668         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11669         (sparc_target): Delete function declaration.
11670         (sparc_target): New template class.
11671         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11672         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11673         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11674         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11675         add_target.
11676         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11677         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11678         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11679         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11680         add_target.
11681         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11682         (the_vax_bsd_nat_target): New.
11683         (vaxbsd_fetch_inferior_registers)
11684         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11685         methods.
11686         (_initialize_vaxbsd_nat): Adjust to C++ification.
11687
11688         * bsd-kvm.c (bsd_kvm_target): New class.
11689         (bsd_kvm_ops): Now a bsd_kvm_target.
11690         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11691         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11692         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11693         bsd_kvm_target.
11694         (bsd_kvm_return_one): Delete.
11695         (bsd_kvm_add_target): Adjust to C++ification.
11696
11697         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11698         (nto_procfs_target_procfs): New classes.
11699         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11700         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11701         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11702         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11703         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11704         (procfs_remove_hw_breakpoint, procfs_resume)
11705         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11706         (procfs_kill_inferior, procfs_store_registers)
11707         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11708         as methods of nto_procfs_target.
11709         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11710         (nto_native_ops): Delete.
11711         (procfs_open, procfs_native_open): Delete.
11712         (nto_native_ops): Now an nto_procfs_target_native.
11713         (init_procfs_targets): Adjust to C++ification.
11714         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11715         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11716         Refactor as methods of nto_procfs_target.
11717
11718         * go32-nat.c (go32_nat_target): New class.
11719         (the_go32_nat_target): New.
11720         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11721         (go32_store_registers, go32_xfer_partial, go32_files_info)
11722         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11723         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11724         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11725         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11726         (go32_target): Delete.
11727         (_initialize_go32_nat): Adjust to C++ification.
11728
11729         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11730         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11731         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11732         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11733         gnu_nat_target.
11734         (gnu_target): Delete.
11735         * gnu-nat.h (gnu_target): Delete.
11736         (gnu_nat_target): New class.
11737         * i386-gnu-nat.c (gnu_base_target): New.
11738         (i386_gnu_nat_target): New class.
11739         (the_i386_gnu_nat_target): New.
11740         (_initialize_i386gnu_nat): Adjust to C++ification.
11741
11742 2018-05-02  Pedro Alves  <palves@redhat.com>
11743
11744         * bfd-target.c (target_bfd_xclose): Rename to ...
11745         (target_bfd_close): ... this.
11746         (target_bfd_reopen): Adjust.
11747         * target.c (target_close): Remove references to to_xclose.
11748         * target.h (target_ops::to_xclose): Delete.
11749         (target_ops::to_close): Update comments.
11750
11751 2018-05-02  Pedro Alves  <palves@redhat.com>
11752
11753         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11754         "linux-nat.h".
11755         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11756         * inf-ptrace.c (inf_ptrace_register_u_offset)
11757         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11758         (inf_ptrace_store_register, inf_ptrace_store_registers)
11759         (inf_ptrace_trad_target): Move to ...
11760         * linux-nat-trad.c: ... this new file.
11761         * linux-nat-trad.h: New file.
11762         * linux-nat.c (linux_target_install_ops): Make extern.
11763         (linux_trad_target): Delete.
11764         * linux-nat.h (linux_trad_target): Delete declaration.
11765         (linux_target_install_ops): Declare.
11766         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11767         "linux-nat.h".
11768
11769 2018-05-02  Pedro Alves  <palves@redhat.com>
11770
11771         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11772         procfs_target/add_target here.
11773         * procfs.c (procfs_target): Make static.
11774         (_initialize_procfs): Call add_target here.
11775         * procfs.h (struct target_ops): Remove forward declaration.
11776         (procfs_target): Remove declaration.
11777         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11778
11779 2018-05-02  Pedro Alves  <palves@redhat.com>
11780
11781         * procfs.c (procfs_stopped_by_watchpoint)
11782         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11783         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11784         Forward declare.
11785         (procfs_use_watchpoints): Delete, move contents...
11786         (procfs_target): ... here.
11787         * procfs.h (procfs_use_watchpoints): Delete declaration.
11788         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11789         procfs_use_watchpoints.
11790         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11791         procfs_use_watchpoints.
11792
11793 2018-05-02  Tom Tromey  <tom@tromey.com>
11794
11795         PR python/20084:
11796         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11797         and var_zuinteger_unlimited.
11798         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11799         and PARAM_ZUINTEGER_UNLIMITED.
11800         (set_parameter_value): Handle var_zuinteger and
11801         var_zuinteger_unlimited.
11802         (add_setshow_generic): Likewise.
11803         (parmpy_init): Likewise.
11804
11805 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11806
11807         PR rust/23124
11808         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11809         pointer is not null before dereferencing it.
11810
11811 2018-04-30  Tom Tromey  <tom@tromey.com>
11812
11813         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11814         is_mi_like_p.
11815
11816 2018-04-30  Tom Tromey  <tom@tromey.com>
11817
11818         * breakpoint.c (mention): Remove use of is_mi_like_p.
11819         (print_mention_ranged_breakpoint): Likewise.
11820         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11821         of is_mi_like_p.
11822
11823 2018-04-30  Tom Tromey  <tom@tromey.com>
11824
11825         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11826
11827 2018-04-30  Tom Tromey  <tom@tromey.com>
11828
11829         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11830         (info_spu_event_command): Remove some uses of is_mi_like_p.
11831
11832 2018-04-30  Tom Tromey  <tom@tromey.com>
11833
11834         * python/py-framefilter.c (py_print_single_arg)
11835         (enumerate_locals, py_print_args, py_print_frame): Remove some
11836         uses of is_mi_like_p.
11837
11838 2018-04-30  Tom Tromey  <tom@tromey.com>
11839
11840         * ui-out.c: Update.
11841         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11842         * ui-out.h (ui_out::is_mi_like_p): Now const.
11843         (ui_out::do_is_mi_like_p): Now const.
11844         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11845
11846 2018-04-30  Tom Tromey  <tom@tromey.com>
11847
11848         * varobj.c (varobj_set_visualizer): Use new_reference.
11849         * python/python.c (gdbpy_decode_line): Use new_reference.
11850         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11851         new_reference.
11852
11853 2018-04-30  Tom Tromey  <tom@tromey.com>
11854
11855         * varobj.c (install_new_value): Use new_reference.
11856         * value.h (value_incref): Return void.  Swap intro comment with
11857         value_decref.
11858         * value.c (set_value_parent): Use new_reference.
11859         (value_incref): Return void.  Update intro comment.
11860         (release_value): Use new_reference.
11861         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11862
11863 2018-04-30  Tom Tromey  <tom@tromey.com>
11864
11865         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11866         * gdb_bfd.h (new_bfd_ref): Remove.
11867         (gdb_bfd_open): Update comment.
11868         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11869         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11870         (gdb_bfd_fdopenr): Use new_reference.
11871         * exec.c (exec_file_attach): Use new_reference.
11872
11873 2018-04-30  Tom Tromey  <tom@tromey.com>
11874
11875         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11876         method.
11877
11878 2018-04-30  Tom Tromey  <tom@tromey.com>
11879
11880         * jit.c (jit_read_code_entry): Use type_align.
11881         * i386-tdep.c (i386_gdbarch_init): Don't call
11882         set_gdbarch_long_long_align_bit.
11883         * gdbarch.sh: Remove long_long_align_bit.
11884         * gdbarch.c, gdbarch.h: Rebuild.
11885         * arc-tdep.c (arc_type_align): New function.
11886         (arc_gdbarch_init): Use arc_type_align.  Don't call
11887         set_gdbarch_long_long_align_bit.
11888
11889 2018-04-30  Tom Tromey  <tom@tromey.com>
11890
11891         * rust-lang.c (rust_type_alignment): Remove.
11892         (rust_composite_type): Use type_align.
11893
11894 2018-04-30  Tom Tromey  <tom@tromey.com>
11895
11896         * NEWS: Mention Type.align.
11897         * python/py-type.c (typy_get_alignof): New function.
11898         (type_object_getset): Add "alignof".
11899
11900 2018-04-30  Tom Tromey  <tom@tromey.com>
11901
11902         PR exp/17095:
11903         * NEWS: Update.
11904         * std-operator.def (UNOP_ALIGNOF): New operator.
11905         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11906         New.
11907         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11908         * c-lang.c (c_op_print_tab): Add alignof.
11909         * c-exp.y (ALIGNOF): New token.
11910         (exp): Add "ALIGNOF" production.
11911         (ident_tokens): Add _Alignof and alignof.
11912
11913 2018-04-30  Tom Tromey  <tom@tromey.com>
11914
11915         * i386-tdep.c (i386_type_align): New function.
11916         (i386_gdbarch_init): Update.
11917         * gdbarch.sh (type_align): New method.
11918         * gdbarch.c, gdbarch.h: Rebuild.
11919         * arch-utils.h (default_type_align): Declare.
11920         * arch-utils.c (default_type_align): New function.
11921         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11922         (struct type) <align_log2>: New field.
11923         <instance_flags>: Now a bitfield.
11924         (TYPE_RAW_ALIGN): New macro.
11925         (type_align, type_raw_align, set_type_align): Declare.
11926         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11927         functions.
11928         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11929         (get_alignment, maybe_set_alignment): New functions.
11930         (read_structure_type, read_enumeration_type, read_array_type)
11931         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11932         (read_subrange_type, read_base_type): Set type alignment.
11933
11934 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11935
11936         * dwarf2read.c (read_index_from_section): Use bool.
11937
11938 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11939
11940         PR gdb/22950
11941         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11942         with #ifdef.
11943
11944 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11945
11946         PR build/22873
11947         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11948         last step, and do it atomically.
11949
11950 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11951
11952         * compile/compile-c-types.c (convert_int, convert_float):
11953         Update for C FE v1.
11954
11955 2018-04-27  Tom Tromey  <tom@tromey.com>
11956
11957         PR rust/22545:
11958         * rust-lang.c (rust_inclusive_range_type_p): New function.
11959         (rust_range): Handle inclusive ranges.
11960         (rust_compute_range): Likewise.
11961         * rust-exp.y (struct rust_op) <inclusive>: New field.
11962         (DOTDOTEQ): New constant.
11963         (range_expr): Add "..=" productions.
11964         (operator_tokens): Add "..=" token.
11965         (ast_range): Add "inclusive" parameter.
11966         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11967         ranges.
11968         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11969         bounds values.
11970         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11971         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11972         Update comments.
11973         * expprint.c (print_subexp_standard): Handle new bounds values.
11974         (dump_subexp_body_standard): Likewise.
11975
11976 2018-04-27  Tom Tromey  <tom@tromey.com>
11977
11978         * configure: Rebuild.
11979         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11980         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11981         "OVERRIDE".
11982         (class symbol_needs_eval_context): Likewise.
11983         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11984         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11985         "virtual".
11986         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11987         "override".
11988         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11989         * aarch64-tdep.c (instruction_reader::read): Use "override".
11990         (instruction_reader_test::read): Likewise.
11991         * arm-tdep.c (instruction_reader::read): Use "override".
11992         (instruction_reader_thumb::read): Likewise.
11993
11994 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11995
11996         PR remote/9665
11997         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11998         instead of remote_send.
11999         (remote_send): Remove.
12000
12001 2018-04-26  Pedro Alves  <palves@redhat.com>
12002
12003         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
12004         find_function_start_sal instead of find_pc_line.
12005
12006 2018-04-26  Pedro Alves  <palves@redhat.com>
12007
12008         * breakpoint.c (set_breakpoint_location_function): Handle
12009         mst_data_gnu_ifunc.
12010         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
12011         * elfread.c (elf_symtab_read): Give data symbols with
12012         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
12013         (elf_rel_plt_read): Update comment.
12014         * linespec.c (convert_linespec_to_sals): Handle
12015         mst_data_gnu_ifunc.
12016         (minsym_found): Handle mst_data_gnu_ifunc.
12017         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
12018         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
12019         * parse.c (find_minsym_type_and_address): Handle
12020         mst_data_gnu_ifunc.
12021         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
12022         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
12023         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
12024         comment.
12025         <mst_data_gnu_ifunc>: New enumerator.
12026
12027 2018-04-26  Pedro Alves  <palves@redhat.com>
12028
12029         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
12030         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
12031         'want_trampoline' parameter by a lookup_msym_prefer parameter.
12032         Handle it.
12033         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
12034         (lookup_minimal_symbol_by_pc): Adjust.
12035         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
12036         (lookup_solib_trampoline_symbol_by_pc): Adjust.
12037         * minsyms.h (lookup_msym_prefer): New enum.
12038         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12039         parameter by a lookup_msym_prefer parameter.
12040
12041 2018-04-26  Pedro Alves  <palves@redhat.com>
12042
12043         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
12044         ends in "@plt" instead of looking at the symbol's section.
12045
12046 2018-04-26  Pedro Alves  <palves@redhat.com>
12047
12048         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
12049         all references.
12050         (find_pc_partial_function_gnu_ifunc): Rename to ...
12051         (find_pc_partial_function): ... this, and remove references to
12052         'is_gnu_ifunc_p'.
12053         (find_pc_partial_function): Delete old implementation.
12054         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
12055
12056 2018-04-26  Pedro Alves  <palves@redhat.com>
12057
12058         * linespec.c (struct bound_minimal_symbol_search_key): New.
12059         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
12060         skip first line if we found a GNU ifunc minimal symbol by name.
12061         (compare_msymbols): Change parameters to work with a destructured
12062         lhs minsym.
12063         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
12064         functions.
12065
12066 2018-04-26  Pedro Alves  <palves@redhat.com>
12067
12068         * breakpoint.c (set_breakpoint_location_function): Don't resolve
12069         ifunc targets here.  Instead, if we have an ifunc minsym, use its
12070         address/name.
12071         (add_location_to_breakpoint): Store the minsym and the objfile in
12072         the breakpoint location.
12073         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
12074         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
12075         Record the minsym in the sal.
12076         * symtab.h (symtab_and_line) <msymbol>: New field.
12077
12078 2018-04-26  Pedro Alves  <palves@redhat.com>
12079
12080         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
12081         unless we actually resolved the ifunc.
12082
12083 2018-04-26  Pedro Alves  <palves@redhat.com>
12084
12085         * c-exp.y (variable production): Prefer ifunc minsyms over
12086         regular function symbols.
12087         * symtab.c (find_gnu_ifunc): New function.
12088         * minsyms.h (lookup_msym_prefer): New enum.
12089         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
12090         parameter by a lookup_msym_prefer parameter.
12091         * symtab.h (find_gnu_ifunc): New declaration.
12092
12093 2018-04-26  Pedro Alves  <palves@redhat.com>
12094
12095         * blockframe.c (find_gnu_ifunc_target_type): New function.
12096         (find_function_type): New.
12097         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
12098         return a value with a memory address.
12099         (eval_call): For calls to GNU ifunc functions, try to find the
12100         type of the target function from the type that the resolver
12101         returns.
12102         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
12103         symbols.
12104         * infcall.c (find_function_return_type): Delete.
12105         (find_function_addr): Add 'function_type' parameter.  For calls to
12106         GNU ifunc functions, try to find the type of the target function
12107         from the type that the resolver returns, and return it via
12108         FUNCTION_TYPE.
12109         (call_function_by_hand_dummy): Adjust to use the function type
12110         returned by find_function_addr.
12111         (find_function_addr): Add 'function_type' parameter and move
12112         description here.
12113         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
12114         declarations.
12115
12116 2018-04-26  Pedro Alves  <palves@redhat.com>
12117
12118         * c-exp.y (variable production): Skip finding an alias for ifunc
12119         symbols.
12120
12121 2018-04-26  Pedro Alves  <palves@redhat.com>
12122
12123         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
12124
12125 2018-04-25  Pedro Alves  <palves@redhat.com>
12126
12127         * infcmd.c (kill_command): Print the pid as string, not the whole
12128         thread's ptid.  Add comment.  s/has been killed/killed/ in output
12129         message.
12130         * remote.c (remote_detach_1): Print the pid as string, not the
12131         whole thread's ptid.
12132
12133 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
12134             Sergio Durigan Junior  <sergiodj@redhat.com>
12135             Pedro Alves  <palves@redhat.com>
12136
12137         * infcmd.c (kill_command): Print message when inferior has
12138         been killed.
12139         * inferior.c (print_inferior_events): Remove 'static'.  Set as
12140         '1'.
12141         (add_inferior): Improve message printed when
12142         'print_inferior_events' is on.
12143         (exit_inferior): Remove message printed when
12144         'print_inferior_events' is on.
12145         (detach_inferior): Improve message printed when
12146         'print_inferior_events' is on.
12147         (initialize_inferiors): Use 'add_inferior_silent' to set
12148         'current_inferior_'.
12149         * inferior.h (print_inferior_events): Declare here as
12150         'extern'.
12151         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
12152         '[Detaching...]' messages when 'print_inferior_events' is on.
12153         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
12154         as prefix/suffix for messages.  Remove periods.  Fix erroneous
12155         'Detaching after fork from child...', replace it by '... from
12156         parent...'.
12157         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12158         prefix/suffix when printing 'Detaching...' messages.  Print
12159         them when 'print_inferior_events' is on.
12160         * remote.c (remote_detach_1): Print message when detaching
12161         from inferior and '!is_fork_parent'.
12162
12163 2018-04-24  Tom Tromey  <tom@tromey.com>
12164
12165         * cli-out.h: Reindent.
12166
12167 2018-04-24  Tom Tromey  <tom@tromey.com>
12168
12169         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12170         (cli_ui_out::do_field_string): Use fputs_filtered.
12171         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12172
12173 2018-04-23  Tom Tromey  <tom@tromey.com>
12174
12175         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12176         gdb::unique_xmalloc_ptr.
12177
12178 2018-04-23  Tom Tromey  <tom@tromey.com>
12179
12180         * configure: Rebuild.
12181
12182 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12183
12184         PR gdb/23095
12185         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12186         prepare_for_testing.  Set normal_bp to r_debug_state if target
12187         is bsd.
12188
12189 2018-04-21  Pedro Alves  <palves@redhat.com>
12190             Rajendra SY  <rajendra.sy@gmail.com>
12191
12192         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12193         * remote.c (extended_remote_attach): In all-stop mode, mark the
12194         thread as executing.
12195
12196 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12197
12198         * thread.c (thread_apply_all_command): Fix comment.
12199         (thread_command): Fix comment.
12200
12201 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12202
12203         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12204         parameter.
12205         * features/aarch64-core.c (create_feature_aarch64_core):
12206         Regenerate.
12207         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12208         Likewise.
12209         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12210         Likewise.
12211         * features/i386/32bit-avx512.c
12212         (create_feature_i386_32bit_avx512): Likewise.
12213         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12214         Likewise.
12215         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12216         Likewise.
12217         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12218         Likewise.
12219         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12220         Likewise.
12221         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12222         Likewise.
12223         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12224         Likewise.
12225         * features/i386/64bit-avx512.c
12226         (create_feature_i386_64bit_avx512): Likewise.
12227         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12228         Likewise.
12229         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12230         Likewise.
12231         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12232         Likewise.
12233         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12234         Likewise.
12235         * features/i386/64bit-segments.c
12236         (create_feature_i386_64bit_segments): Likewise.
12237         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12238         Likewise.
12239         * features/i386/x32-core.c
12240         (create_feature_i386_x32_core): Likewise.
12241         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12242         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12243         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12244         * target-descriptions.c: In generated code, don't pass xml
12245         filename.
12246
12247 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12248
12249         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12250         (print_xml_feature::visit_post): Likewise.
12251         (print_xml_feature::visit): Likewise.
12252         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12253         (print_xml_feature): Add new class.
12254         * regformats/regdat.sh: Null xmltarget on feature targets.
12255         * target-descriptions.c (struct target_desc): Add xmltarget.
12256         (maintenance_check_tdesc_xml_convert): Add unittest function.
12257         (tdesc_get_features_xml): Add function to get xml.
12258         (maintenance_check_xml_descriptions): Test xml generation.
12259         * xml-tdesc.c (string_read_description_xml): Add function.
12260         * xml-tdesc.h (string_read_description_xml): Add declaration.
12261
12262 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12263
12264         * features/Makefile: Add feature marker to targets with new style
12265         target descriptions.
12266         * regformats/aarch64.dat: Regenerate.
12267         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12268         * regformats/i386/amd64-avx-linux.dat: Likewise.
12269         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12270         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12271         * regformats/i386/amd64-linux.dat: Likewise.
12272         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12273         * regformats/i386/amd64.dat: Likewise.
12274         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12275         * regformats/i386/i386-avx-linux.dat: Likewise.
12276         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12277         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12278         * regformats/i386/i386-linux.dat: Likewise.
12279         * regformats/i386/i386-mmx-linux.dat: Likewise.
12280         * regformats/i386/i386-mpx-linux.dat: Likewise.
12281         * regformats/i386/i386.dat: Likewise.
12282         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12283         * regformats/i386/x32-avx-linux.dat: Likewise.
12284         * regformats/i386/x32-linux.dat: Likewise.
12285         * regformats/tic6x-c62x-linux.dat: Likewise.
12286         * regformats/tic6x-c64x-linux.dat: Likewise.
12287         * regformats/tic6x-c64xp-linux.dat: Likewise.
12288         * regformats/regdat.sh: Parse feature marker.
12289
12290 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12291
12292         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12293         (tdesc_osabi_name): Likewise.
12294         * target-descriptions.c (tdesc_architecture_name): Add new
12295         function.
12296         (tdesc_osabi_name): Likewise.
12297
12298 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12299
12300         * common/tdesc.c (tdesc_predefined_type): Move to here.
12301         (tdesc_named_type): Likewise.
12302         (tdesc_create_vector): Likewise.
12303         (tdesc_create_struct): Likewise.
12304         (tdesc_set_struct_size): Likewise.
12305         (tdesc_create_union): Likewise.
12306         (tdesc_create_flags): Likewise.
12307         (tdesc_create_enum): Likewise.
12308         (tdesc_add_field): Likewise.
12309         (tdesc_add_typed_bitfield): Likewise.
12310         (tdesc_add_bitfield): Likewise.
12311         (tdesc_add_flag): Likewise.
12312         (tdesc_add_enum_value): Likewise.
12313         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12314         (struct tdesc_type_vector): Likewise.
12315         (struct tdesc_type_field): Likewise.
12316         (struct tdesc_type_with_fields): Likewise.
12317         (tdesc_create_enum): Add declaration.
12318         (tdesc_add_typed_bitfield): Likewise.
12319         (tdesc_add_enum_value): Likewise.
12320         * target-descriptions.c (tdesc_type_field): Move from here.
12321         (tdesc_type_builtin): Likewise.
12322         (tdesc_type_vector): Likewise.
12323         (tdesc_type_with_fields): Likewise.
12324         (tdesc_predefined_types): Likewise.
12325         (tdesc_named_type): Likewise.
12326         (tdesc_create_vector): Likewise.
12327         (tdesc_create_struct): Likewise.
12328         (tdesc_set_struct_size): Likewise.
12329         (tdesc_create_union): Likewise.
12330         (tdesc_create_flags): Likewise.
12331         (tdesc_create_enum): Likewise.
12332         (tdesc_add_field): Likewise.
12333         (tdesc_add_typed_bitfield): Likewise.
12334         (tdesc_add_bitfield): Likewise.
12335         (tdesc_add_flag): Likewise.
12336         (tdesc_add_enum_value): Likewise.
12337         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12338         (tdesc_add_typed_bitfield): Likewise.
12339         (tdesc_add_enum_value): Likewise.
12340
12341 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12342
12343         * common/tdesc.c (tdesc_feature::accept): Move to here.
12344         (tdesc_feature::operator==): Likewise.
12345         (tdesc_create_reg): Likewise.
12346         * common/tdesc.h (tdesc_type_kind): Likewise.
12347         (struct tdesc_type): Likewise.
12348         (struct tdesc_feature): Likewise.
12349         * regformats/regdat.sh: Create a feature.
12350         * target-descriptions.c (tdesc_type_kind): Move from here.
12351         (tdesc_type): Likewise.
12352         (tdesc_type_up): Likewise.
12353         (tdesc_feature): Likewise.
12354         (tdesc_create_reg): Likewise.
12355
12356 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12357
12358         * Makefile.in: Add arch/tdesc.c
12359         * common/tdesc.c: New file.
12360         * common/tdesc.h (tdesc_element_visitor): Move to here.
12361         (tdesc_element): Likewise.
12362         (tdesc_reg): Likewise.
12363         (tdesc_reg_up): Likewise.
12364         * regformats/regdef.h (reg): Add offset to constructors.
12365         * target-descriptions.c (tdesc_element_visitor): Move from here.
12366         (tdesc_element): Likewise.
12367         (tdesc_reg): Likewise.
12368         (tdesc_reg_up): Likewise.
12369
12370 2018-04-17  Tom Tromey  <tom@tromey.com>
12371
12372         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12373         discriminant field.
12374
12375 2018-04-17  Tom Tromey  <tom@tromey.com>
12376
12377         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12378
12379 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12380
12381         * symtab.c (print_symbol_info): Skip printing filename and line
12382         number when `last' is NULL.
12383         (symtab_symbol_info): Use empty string instead of NULL for first
12384         invocation of print_symbol_info.
12385         (rbreak_command): Pass NULL to `last' parameter of
12386         print_symbol_info.
12387
12388 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12389
12390         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12391         instead of nullptr.
12392
12393 2018-04-16  Pedro Alves  <palves@redhat.com>
12394
12395         * MAINTAINERS (sh): Remove.
12396         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12397         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12398         (ALLDEPFILES): Remove sh64-tdep.c.
12399         * NEWS: Mentions that support for SH-5/SH64 is removed.
12400         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12401         (sh*-*-openbsd*): Ditto.
12402         (sh64-*-elf*): Remove.
12403         (sh*): Remove.
12404         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12405         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12406         * sh-tdep.c: No longer include "sh64-tdep.h".
12407         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12408         * sh64-tdep.c, sh64-tdep.h: Remove files.
12409
12410 2018-04-16  Pedro Alves  <palves@redhat.com>
12411
12412         * MAINTAINERS: Remove m88k.
12413         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12414         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12415         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12416         * NEWS: Mention that support for m88k was removed.
12417         * configure.host (m88*-*-*): Remove support.
12418         * configure.nat (m88k-*-*): Remove support.
12419         * configure.tgt (m88*-*-openbsd*): Remove.
12420         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12421
12422 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12423
12424         * configure.tgt (x86_tobjs): New variable.
12425         (amd64_tobjs, i386_tobjs): Use it.
12426
12427 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12428
12429         * symtab.c (print_symbol_info): Precede the symbol definition by
12430         the line number when available.
12431         * NEWS: Advertise this enhancement.
12432
12433 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12434
12435         * NEWS (New options): announce set/show record btrace cpu.
12436         * btrace.c: Include record-btrace.h.
12437         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12438         the vendor is unknown.
12439         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12440         Maybe overwrite the btrace configuration's cpu.
12441         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12442         (btrace_fetch): Add cpu parameter.  Update callers.
12443         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12444         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12445         errata workarounds if the vendor is unknown.
12446         * python/py-record-btrace.c: Include record-btrace.h.
12447         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12448         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12449         * record-btrace.c (record_btrace_cpu_state_kind): New.
12450         (record_btrace_cpu): New.
12451         (set_record_btrace_cpu_cmdlist): New.
12452         (record_btrace_get_cpu): New.
12453         (require_btrace_thread, record_btrace_info)
12454         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12455         (cmd_set_record_btrace_cpu_none): New.
12456         (cmd_set_record_btrace_cpu_auto): New.
12457         (cmd_set_record_btrace_cpu): New.
12458         (cmd_show_record_btrace_cpu): New.
12459         (_initialize_record_btrace): Initialize set/show record btrace cpu
12460         commands.
12461         * record-btrace.h (record_btrace_get_cpu): New.
12462
12463 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12464
12465         * record.c (set_record_command): Fix typo in message.
12466
12467 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12468
12469         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12470
12471 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12472
12473         * infrun.c (process_event_stop_test): Call
12474         gdbarch_in_indirect_branch_thunk.
12475         * gdbarch.sh (in_indirect_branch_thunk): New.
12476         * gdbarch.c: Regenerated.
12477         * gdbarch.h: Regenerated.
12478         * x86-tdep.h: New.
12479         * x86-tdep.c: New.
12480         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12481         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12482         (ALLDEPFILES): Add x86-tdep.c.
12483         * arch-utils.h (default_in_indirect_branch_thunk): New.
12484         * arch-utils.c (default_in_indirect_branch_thunk): New.
12485         * i386-tdep: Include x86-tdep.h.
12486         (i386_in_indirect_branch_thunk): New.
12487         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12488         function.
12489         * amd64-tdep: Include x86-tdep.h.
12490         (amd64_in_indirect_branch_thunk): New.
12491         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12492
12493 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12494
12495         PR gdb/23053
12496         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12497         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12498         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12499         regression.
12500
12501 2018-04-12  Tom Tromey  <tom@tromey.com>
12502
12503         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12504         (rust_evaluate_subexp): Likewise.
12505
12506 2018-04-12  Pedro Alves  <palves@redhat.com>
12507
12508         * procfs.c (procfs_detach): Make forward declaration's prototype
12509         match definition's protototype.
12510         (proc_get_LDT_entry): Remove stale do_cleanups call.
12511
12512 2018-04-12  Pedro Alves  <palves@redhat.com>
12513
12514         * target.h (target_ops::to_has_exited): Delete.
12515         (target_has_exited): Delete.
12516         * target-delegates.c: Regenerate.
12517
12518 2018-04-11  Pedro Alves  <palves@redhat.com>
12519
12520         * target.c (fileio_fh_t::t): Add comment.
12521         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12522         (target_fileio_close): Handle a NULL target.
12523         (invalidate_fileio_fh): New.
12524         (target_close): Call it.
12525         * remote.c (remote_hostio_send_command): No longer check whether
12526         remote_desc is open.
12527
12528 2018-04-11  Pedro Alves  <palves@redhat.com>
12529
12530         * target.c (fileio_fh_t): Make it a named struct instead of a
12531         typedef.
12532         (fileio_fh_t::is_closed): New method.
12533         (DEF_VEC_O (fileio_fh_t)): Remove.
12534         (fileio_fhandles): Now a std::vector.
12535         (is_closed_fileio_fh): Delete.
12536         (acquire_fileio_fd): Adjust.  Rename parameters.
12537         (release_fileio_fd): Adjust.
12538         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12539         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12540         (target_fileio_close): Adjust.
12541
12542 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12543
12544         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12545         index.
12546
12547 2018-04-10  Pedro Alves  <palves@redhat.com>
12548
12549         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12550         (scoped_finish_thread_state): New class.
12551         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12552         cleanup.
12553         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12554         (fetch_inferior_event, normal_stop): Likewise.
12555         * thread.c (finish_thread_state_cleanup): Delete.
12556
12557 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12558             Pedro Alves  <palves@redhat.com>
12559
12560         * value.c: Include "selftest.h" and "common/array-view.h".
12561         (struct range) <operator ==>: New.
12562         (test_ranges_contain): New.
12563         (check_ranges_vector): New.
12564         (test_insert_into_bit_range_vector): New.
12565         (_initialize_values): Register selftests.
12566         * common/array-view.h (operator==, operator!=): New.
12567
12568 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12569
12570         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12571         an iterator.
12572         * inline-frame.c: Include <algorithm>.
12573         (struct inline_state): Add constructor.
12574         (inline_state_s): Remove.
12575         (DEF_VEC_O(inline_state_s)): Remove.
12576         (inline_states): Change type to std::vector.
12577         (find_inline_frame_state): Adjust to std::vector.
12578         (allocate_inline_frame_state): Remove.
12579         (clear_inline_frame_state): Adjust to std::vector.
12580         (skip_inline_frames): Adjust to std::vector.
12581
12582 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12583
12584         * tracepoint.h (struct trace_state_variable): Add constructor.
12585         <name>: Change type to std::string.
12586         * tracepoint.c (tsv_s): Remove.
12587         (DEF_VEC_O(tsv_s)): Remove.
12588         (tvariables): Change to std::vector.
12589         (create_trace_state_variable): Adjust to std::vector.
12590         (find_trace_state_variable): Likewise.
12591         (find_trace_state_variable_by_number): Likewise.
12592         (delete_trace_state_variable): Likewise.
12593         (trace_variable_command): Adjust to std::string.
12594         (delete_trace_variable_command): Likewise.
12595         (tvariables_info_1): Adjust to std::vector.
12596         (save_trace_state_variables): Likewise.
12597         (start_tracing): Likewise.
12598         (merge_uploaded_trace_state_variables): Adjust to std::vector
12599         and std::string.
12600         * target.h (struct target_ops)
12601         <to_download_trace_state_variable>: Pass reference to
12602         trace_state_variable.
12603         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12604         * target-delegates.c: Re-generate.
12605         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12606         (mi_tsv_deleted): Likewise.
12607         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12608         * remote.c (remote_download_trace_state_variable): Change
12609         pointer to reference and adjust.
12610         * make-target-delegates (parse_argtypes): Handle references.
12611         (write_function_header): Likewise.
12612         (munge_type): Likewise.
12613
12614 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12615
12616         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12617         string_view-selftests.c.
12618         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12619         testsuite.
12620         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12621         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12622         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12623         * unittests/basic_string_view/element_access/char/1.cc:
12624         Likewise.
12625         * unittests/basic_string_view/element_access/char/empty.cc:
12626         Likewise.
12627         * unittests/basic_string_view/element_access/char/front_back.cc:
12628         Likewise.
12629         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12630         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12631         Likewise.
12632         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12633         Likewise.
12634         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12635         Likewise.
12636         * unittests/basic_string_view/operations/compare/char/1.cc:
12637         Likewise.
12638         * unittests/basic_string_view/operations/compare/char/13650.cc:
12639         Likewise.
12640         * unittests/basic_string_view/operations/copy/char/1.cc:
12641         Likewise.
12642         * unittests/basic_string_view/operations/data/char/1.cc:
12643         Likewise.
12644         * unittests/basic_string_view/operations/find/char/1.cc:
12645         Likewise.
12646         * unittests/basic_string_view/operations/find/char/2.cc:
12647         Likewise.
12648         * unittests/basic_string_view/operations/find/char/3.cc:
12649         Likewise.
12650         * unittests/basic_string_view/operations/find/char/4.cc:
12651         Likewise.
12652         * unittests/basic_string_view/operations/rfind/char/1.cc:
12653         Likewise.
12654         * unittests/basic_string_view/operations/rfind/char/2.cc:
12655         Likewise.
12656         * unittests/basic_string_view/operations/rfind/char/3.cc:
12657         Likewise.
12658         * unittests/basic_string_view/operations/substr/char/1.cc:
12659         Likewise.
12660         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12661         * unittests/string_view-selftests.c: New file.
12662
12663 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12664
12665         * unittests/basic_string_view/capacity/1.cc: New file.
12666         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12667         * unittests/basic_string_view/cons/char/1.cc: New file.
12668         * unittests/basic_string_view/cons/char/2.cc: New file.
12669         * unittests/basic_string_view/cons/char/3.cc: New file.
12670         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12671         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12672         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12673         * unittests/basic_string_view/element_access/char/1.cc: New file.
12674         * unittests/basic_string_view/element_access/char/2.cc: New file.
12675         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12676         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12677         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12678         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12679         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12680         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12681         * unittests/basic_string_view/include.cc: New file.
12682         * unittests/basic_string_view/inserters/char/1.cc: New file.
12683         * unittests/basic_string_view/inserters/char/2.cc: New file.
12684         * unittests/basic_string_view/inserters/char/3.cc: New file.
12685         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12686         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12687         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12688         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12689         * unittests/basic_string_view/literals/types.cc: New file.
12690         * unittests/basic_string_view/literals/values.cc: New file.
12691         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12692         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12693         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12694         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12695         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12696         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12697         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12698         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12699         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12700         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12701         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12702         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12703         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12704         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12705         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12706         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12707         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12708         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12709         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12710         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12711         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12712         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12713         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12714         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12715         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12716         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12717         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12718         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12719         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12720         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12721         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12722         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12723         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12724         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12725         * unittests/basic_string_view/operators/char/2.cc: New file.
12726         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12727         * unittests/basic_string_view/range_access/char/1.cc: New file.
12728         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12729         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12730         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12731         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12732         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12733         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12734         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12735         * unittests/basic_string_view/typedefs.cc: New file.
12736         * unittests/basic_string_view/types/1.cc: New file.
12737
12738 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12739
12740         * common/gdb_string_view.h: Remove libstdc++ implementation
12741         details, adjust to gdb reality.
12742         * common/gdb_string_view.tcc: Likewise.
12743         * cli/cli-script.c (struct string_view): Remove.
12744         (user_args) <m_args>: Change element type to gdb::string_view.
12745         (user_args::insert_args): Adjust.
12746
12747 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12748
12749         * common/gdb_string_view.h: New file.
12750         * common/gdb_string_view.tcc: New file.
12751
12752 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12753
12754         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12755         * configure: Re-generate.
12756
12757 2018-04-09  Pedro Alves  <palves@redhat.com>
12758
12759         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12760         (set_target_gdbarch): Call
12761         gdb::observers::architecture_changed.notify instead of
12762         observer_notify_architecture_changed.
12763
12764 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12765
12766         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12767         (do_restore_current_traceframe_cleanup): Remove.
12768         (restore_current_traceframe_cleanup_dtor): Remove.
12769         (make_cleanup_restore_current_traceframe): Remove.
12770         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12771         New.
12772         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12773         * infrun.c (fetch_inferior_event): Use
12774         scoped_restore_current_traceframe.
12775
12776 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12777
12778         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12779         Remove.
12780         <n_allocated_type_units>: Remove.
12781         <all_type_units>: Change to std::vector.
12782         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12783         to std::vector change.
12784         (dwarf2_per_objfile::get_cutu): Likewise.
12785         (dwarf2_per_objfile::get_tu): Likewise.
12786         (create_signatured_type_table_from_index): Likewise.
12787         (create_signatured_type_table_from_debug_names): Likewise.
12788         (dw2_symtab_iter_next): Likewise.
12789         (dw2_print_stats): Likewise.
12790         (dw2_expand_all_symtabs): Likewise.
12791         (dw2_expand_marked_cus): Likewise.
12792         (dw2_debug_names_iterator::next): Likewise.
12793         (dwarf2_initialize_objfile): Likewise.
12794         (add_signatured_type_cu_to_table): Likewise.
12795         (create_all_type_units): Likewise.
12796         (add_type_unit): Likewise.
12797         (struct tu_abbrev_offset): Add constructor.
12798         (build_type_psymtabs_1): Adjust to std::vector change.
12799         (print_tu_stats): Likewise.
12800         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12801         (write_debug_names): Likewise.
12802
12803 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12804
12805         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12806         Make an std::vector.
12807         <n_comp_units>: Remove.
12808         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12809         to std::vector change.
12810         (dwarf2_per_objfile::get_cutu): Likewise.
12811         (dwarf2_per_objfile::get_cu): Likewise.
12812         (create_cus_from_index): Likewise.
12813         (create_addrmap_from_index): Likewise.
12814         (create_addrmap_from_aranges): Likewise.
12815         (dwarf2_read_index): Likewise.
12816         (dw2_find_last_source_symtab): Likewise.
12817         (dw2_map_symtabs_matching_filename): Likewise.
12818         (dw2_symtab_iter_next): Likewise.
12819         (dw2_print_stats): Likewise.
12820         (dw2_expand_all_symtabs): Likewise.
12821         (dw2_expand_symtabs_with_fullname): Likewise.
12822         (dw2_expand_marked_cus): Likewise.
12823         (dw2_map_symbol_filenames): Likewise.
12824         (create_cus_from_debug_names): Likewise.
12825         (dwarf2_read_debug_names): Likewise.
12826         (dw2_debug_names_iterator::next): Likewise.
12827         (dwarf2_initialize_objfile): Likewise.
12828         (set_partial_user): Likewise.
12829         (dwarf2_build_psymtabs_hard): Likewise.
12830         (read_comp_units_from_section): Remove arguments, adjust to
12831         std::vector change.
12832         (create_all_comp_units): Adjust to std::vector and
12833         read_comp_units_from_section changes.
12834         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12835         change.
12836         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12837         (psyms_seen_size): Likewise.
12838         (write_gdbindex): Likewise.
12839         (write_debug_names): Likewise.
12840
12841 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12842
12843         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12844         with dwarf2_per_objfile.
12845         (create_cus_from_index): Likewise.
12846         (create_signatured_type_table_from_index): Likewise.
12847         (dwarf2_read_index): Likewise.
12848         (dwarf2_initialize_objfile): Likewise.
12849         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12850         per_cu rather than get_dwarf2_per_objfile.
12851
12852 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12853
12854         * dwarf2read.h (struct signatured_type): Forward declare.
12855         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12856         New methods.
12857         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12858         (dw2_get_cutu): ...this.
12859         (dwarf2_per_objfile::get_cu): Rename from...
12860         (dw2_get_cu): ...this.
12861         (dwarf2_per_objfile::get_tu): New.
12862         (create_addrmap_from_index): Adjust.
12863         (create_addrmap_from_aranges): Adjust.
12864         (dw2_find_last_source_symtab): Adjust.
12865         (dw2_map_symtabs_matching_filename): Adjust.
12866         (dw2_symtab_iter_next): Adjust.
12867         (dw2_print_stats): Adjust.
12868         (dw2_expand_all_symtabs): Adjust.
12869         (dw2_expand_symtabs_with_fullname): Adjust.
12870         (dw2_expand_marked_cus): Adjust.
12871         (dw_expand_symtabs_matching_file_matcher): Adjust.
12872         (dw2_map_symbol_filenames): Adjust.
12873         (dw2_debug_names_iterator::next): Adjust.
12874         (dwarf2_initialize_objfile): Adjust.
12875         (set_partial_user): Adjust.
12876         (dwarf2_build_psymtabs_hard): Adjust.
12877
12878 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12879
12880         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12881         Remove unused variables.
12882         (dw2_map_symtabs_matching_filename): Likewise.
12883         (dwarf2_record_block_ranges): Likewise.
12884         (dwarf2_read_addr_index): Likewise.
12885         (follow_die_offset): Likewise.
12886
12887 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12888
12889         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12890         to symbol_file_add_main.
12891
12892 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12893
12894         PR mi/22299
12895         * mi/mi-console.c (do_fputc_async_safe): New.
12896         (mi_console_file::write_async_safe): New.
12897         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12898         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12899         New.
12900         * ui-file.c (ui_file::putstrn): Adjust call to
12901         fputstrn_unfiltered.
12902         * utils.c (printchar): Replace do_fputs and do_fprintf
12903         parameters by do_fputc.
12904         (fputstr_filtered): Adjust call to printchar.
12905         (fputstr_unfiltered): Likewise.
12906         (fputstrn_filtered): Likewise.
12907         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12908         printchar.
12909         * utils.h (do_fputc_ftype): New typedef.
12910         (fputstrn_unfiltered): Add do_fputc parameter.
12911
12912 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12913
12914         * regformats/i386/i386-avx.dat: Remove.
12915
12916 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12917
12918         PR gdb/22979
12919         * amd64-tdep.c (amd64_none_init_abi): New function.
12920         (amd64_x32_none_init_abi): New function.
12921         (_initialize_amd64_tdep): Register handlers for x86-64 and
12922         x64_32 with GDB_OSABI_NONE.
12923         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12924         GDB_OSABI_NONE osabi.
12925
12926 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12927
12928         PR gdb/22980
12929         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12930         GDB_OSABI_NONE.
12931         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12932         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12933
12934 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12935
12936         * common/byte-vector.h (char_vector): New type.
12937         * target.h (target_read_alloc): Return
12938         gdb::optional<byte_vector>.
12939         (target_read_stralloc): Return gdb::optional<char_vector>.
12940         (target_get_osdata): Return gdb::optional<char_vector>.
12941         * target.c (target_read_alloc_1): Templatize.  Replacement
12942         manual memory management with vector.
12943         (target_read_alloc): Change return type, adjust.
12944         (target_read_stralloc): Change return type, adjust.
12945         (target_get_osdata): Change return type, adjust.
12946         * auxv.c (struct auxv_info) <length>: Remove.
12947         <data>: Change type to gdb::optional<byte_vector>.
12948         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12949         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12950         (target_auxv_search): Adjust.
12951         (fprint_target_auxv): Adjust.
12952         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12953         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12954         (linux_make_corefile_notes): Adjust.
12955         * osdata.c (get_osdata): Adjust.
12956         * remote.c (remote_get_threads_with_qxfer): Adjust.
12957         (remote_memory_map): Adjust.
12958         (remote_traceframe_info): Adjust.
12959         (btrace_read_config): Adjust.
12960         (remote_read_btrace): Adjust.
12961         (remote_pid_to_exec_file): Adjust.
12962         * solib-aix.c (solib_aix_get_library_list): Adjust.
12963         * solib-dsbt.c (decode_loadmap): Don't free buf.
12964         (dsbt_get_initial_loadmaps): Adjust.
12965         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12966         * solib-target.c (solib_target_current_sos): Adjust.
12967         * tracepoint.c (sdata_make_value): Adjust.
12968         * xml-support.c (xinclude_start_include): Adjust.
12969         (xml_fetch_content_from_file): Adjust.
12970         * xml-support.h (xml_fetch_another): Change return type.
12971         (xml_fetch_content_from_file): Change return type.
12972         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12973         * xml-tdesc.c (file_read_description_xml): Adjust.
12974         (fetch_available_features_from_target): Change return type.
12975         (target_fetch_description_xml): Adjust.
12976         (target_read_description_xml): Adjust.
12977
12978 2018-04-06  Tom Tromey  <tom@tromey.com>
12979
12980         * value.c (~value): Update.
12981         (struct value) <contents>: Now unique_xmalloc_ptr.
12982         (value_contents_bits_eq, allocate_value_contents)
12983         (value_contents_raw, value_contents_all_raw)
12984         (value_contents_for_printing, value_contents_for_printing_const)
12985         (set_value_enclosing_type): Update.
12986
12987 2018-04-06  Tom Tromey  <tom@tromey.com>
12988
12989         * value.c (range_s): Remove typedef, VEC.
12990         (struct range): Add operator<.
12991         (range_lessthan): Remove.
12992         (ranges_contain): Change type.
12993         (~value): Update.
12994         (struct value) <unavailable, optimized_out>: Now std::vector.
12995         (value_entirely_available)
12996         (value_entirely_covered_by_range_vector)
12997         (value_entirely_unavailable, value_entirely_optimized_out):
12998         Update.
12999         (insert_into_bit_range_vector): Change argument type.
13000         (find_first_range_overlap): Likewise.
13001         (struct ranges_and_idx, value_contents_bits_eq)
13002         (require_not_optimized_out, require_available): Update.
13003         (ranges_copy_adjusted): Change argument types.
13004         (value_optimized_out, value_copy, value_fetch_lazy): Update.
13005
13006 2018-04-06  Tom Tromey  <tom@tromey.com>
13007
13008         * value.c (~value): Update.
13009         (struct value) <parent>: Now a value_ref_ptr.
13010         (value_parent, set_value_parent, value_address, value_copy):
13011         Update.
13012
13013 2018-04-06  Tom Tromey  <tom@tromey.com>
13014
13015         * value.c (struct value): Add constructor, destructor, and member
13016         initializers.
13017         (allocate_value_lazy, value_decref): Update.
13018
13019 2018-04-06  Tom Tromey  <tom@tromey.com>
13020
13021         * value.c (struct value) <released, next>: Remove.
13022         (all_values): Now a std::vector.
13023         (allocate_value_lazy): Update.
13024         (value_next): Remove.
13025         (value_mark, value_free_to_mark, release_value)
13026         (value_release_to_mark): Update.
13027
13028 2018-04-06  Tom Tromey  <tom@tromey.com>
13029
13030         * value.h (fetch_subexp_value, value_release_to_mark): Update.
13031         (free_value_chain): Remove.
13032         * value.c (free_value_chain): Remove.
13033         (value_release_to_mark): Return a std::vector.
13034         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
13035         std::vector.
13036         (check_condition): Update.
13037         * eval.c (fetch_subexp_value): Change "val_chain" to a
13038         std::vector.
13039         * breakpoint.c (update_watchpoint): Update.
13040         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
13041
13042 2018-04-06  Tom Tromey  <tom@tromey.com>
13043
13044         * value.h (free_all_values): Remove.
13045         * value.c (free_all_values): Remove.
13046
13047 2018-04-06  Tom Tromey  <tom@tromey.com>
13048
13049         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
13050         (value_history_chain, value_history_count): Remove.
13051         (value_history): New global.
13052         (record_latest_value, access_value_history, show_values)
13053         (preserve_values): Update.
13054
13055 2018-04-06  Tom Tromey  <tom@tromey.com>
13056
13057         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
13058         * varobj.c (varobj_set_display_format, varobj_set_value)
13059         (install_default_visualizer, construct_visualizer)
13060         (install_new_value, ~varobj, varobj_get_value_type)
13061         (my_value_of_variable, varobj_editable_p): Update.
13062         * c-varobj.c (c_describe_child, c_value_of_variable)
13063         (cplus_number_of_children, cplus_describe_child): Update.
13064         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
13065         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
13066         (ada_value_of_variable, ada_value_is_changeable_p): Update.
13067
13068 2018-04-06  Tom Tromey  <tom@tromey.com>
13069
13070         * printcmd.c (last_examine_address): Change type to
13071         value_ref_ptr.
13072         (do_examine, x_command): Update.
13073
13074 2018-04-06  Tom Tromey  <tom@tromey.com>
13075
13076         * value.c (release_value): Update.
13077         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
13078         (struct bpstats) <val>: Now a value_ref_ptr.
13079         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13080         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13081         (~watchpoint, print_it_watchpoint, watch_command_1)
13082         (invalidate_bp_value_on_memory_change): Update.
13083
13084 2018-04-06  Tom Tromey  <tom@tromey.com>
13085
13086         * varobj.c (varobj_clear_saved_item)
13087         (update_dynamic_varobj_children, install_new_value, ~varobj):
13088         Update.
13089         * value.h (value_incref): Move declaration earlier.
13090         (value_decref): Rename from value_free.
13091         (struct value_ref_policy): New.
13092         (value_ref_ptr): New typedef.
13093         (struct value_deleter): Remove.
13094         (gdb_value_up): Remove typedef.
13095         (release_value): Change return type.
13096         (release_value_or_incref): Remove.
13097         * value.c (set_value_parent): Update.
13098         (value_incref): Change return type.
13099         (value_decref): Rename from value_free.
13100         (value_free_to_mark, free_all_values, free_value_chain): Update.
13101         (release_value): Return value_ref_ptr.
13102         (release_value_or_incref): Remove.
13103         (record_latest_value, set_internalvar, clear_internalvar):
13104         Update.
13105         * stack.c (info_frame_command): Don't call value_free.
13106         * python/py-value.c (valpy_dealloc, valpy_new)
13107         (value_to_value_object): Update.
13108         * printcmd.c (do_examine): Update.
13109         * opencl-lang.c (lval_func_free_closure): Update.
13110         * mi/mi-main.c (register_changed_p): Don't call value_free.
13111         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
13112         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
13113         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
13114         value_free.
13115         * guile/scm-value.c (vlscm_free_value_smob)
13116         (vlscm_scm_from_value): Update.
13117         * frame.c (frame_register_unwind, frame_unwind_register_signed)
13118         (frame_unwind_register_unsigned, get_frame_register_bytes)
13119         (put_frame_register_bytes): Don't call value_free.
13120         * findvar.c (address_from_register): Don't call value_free.
13121         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
13122         * dwarf2loc.c (entry_data_value_free_closure)
13123         (value_of_dwarf_reg_entry, free_pieced_value_closure)
13124         (dwarf2_evaluate_loc_desc_full): Update.
13125         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
13126         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
13127         (~watchpoint, watch_command_1)
13128         (invalidate_bp_value_on_memory_change): Update.
13129         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
13130
13131 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
13132
13133         PR gdb/23022
13134         * warning.m4: Add -Wno-error=deprecated-register.
13135         * configure: Re-generate.
13136
13137 2018-04-05  Tom Tromey  <tom@tromey.com>
13138
13139         * linespec.h: Remove include of "vec.h".
13140
13141 2018-04-05  Tom Tromey  <tom@tromey.com>
13142
13143         * linespec.c (typep): Remove typedef.
13144         (find_methods, find_superclass_methods): Take a std::vector.
13145         (find_method): Use std::vector.
13146
13147 2018-04-05  Tom Tromey  <tom@tromey.com>
13148
13149         * utils.c (compare_strings): Remove.
13150         * utils.h (compare_strings): Remove.
13151         * objc-lang.h (find_imps): Update.
13152         * objc-lang.c (find_methods): Take a std::vector.
13153         (uniquify_strings, find_imps): Likewise.
13154         * linespec.c (find_methods): Take a std::vector.
13155         (decode_objc): Use std::vector.
13156         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
13157         a std::vector.
13158         (find_method, find_function_symbols): Use std::vector.
13159
13160 2018-04-05  Tom Tromey  <tom@tromey.com>
13161
13162         * completer.c (completion_tracker::completion_tracker): Remove
13163         cast.
13164         (completion_tracker::discard_completions): Likewise.
13165         * breakpoint.c (ambiguous_names_p): Remove cast.
13166         * ada-lang.c (_initialize_ada_language): Remove cast.
13167         * utils.h (streq): Update.
13168         (streq_hash): Add new declaration.
13169         * utils.c (streq): Return bool.
13170         (streq_hash): New function.
13171
13172 2018-04-05  Tom Tromey  <tom@tromey.com>
13173
13174         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13175         Remove a string copy.
13176
13177 2018-04-05  Tom Tromey  <tom@tromey.com>
13178
13179         * linespec.c (filter_results): Use std::vector.
13180         (decode_line_2, decode_line_full): Update.
13181
13182 2018-04-05  Tom Tromey  <tom@tromey.com>
13183
13184         * linespec.c (canonical_to_fullform): Return std::string.
13185         (filter_results): Update.
13186         (struct decode_line_2_item): Add constructor.
13187         <fullform, displayform>: Now std::string.
13188         (decode_line_2_compare_items): Now a std::sort comparator.
13189         (decode_line_2): Update.
13190
13191 2018-04-05  Tom Tromey  <tom@tromey.com>
13192
13193         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13194         (unexpected_linespec_error): Update.
13195         (linespec_parse_basic, parse_linespec): Update.
13196
13197 2018-04-05  Tom Tromey  <tom@tromey.com>
13198
13199         * linespec.c (linespec_parse_basic): Reindent.
13200
13201 2018-04-05  Tom Tromey  <tom@tromey.com>
13202
13203         * minsyms.h (iterate_over_minimal_symbols): Update.
13204         * minsyms.c (iterate_over_minimal_symbols): Take a
13205         gdb::function_view.
13206         * linespec.c (struct collect_minsyms): Remove.
13207         (compare_msyms): Now a std::sort comparator.
13208         (add_minsym): Add parameters.
13209         (search_minsyms_for_name): Update.  Use std::vector.
13210
13211 2018-04-03  Tom Tromey  <tom@tromey.com>
13212
13213         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13214         gdb::byte_vector.
13215
13216 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13217
13218         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13219
13220 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13221
13222         PR gdb/16959
13223         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13224         printing static type.
13225
13226 2018-04-01  Tom Tromey  <tom@tromey.com>
13227
13228         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13229         (rs6000_xfer_shared_libraries): Update.
13230
13231 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13232
13233         * common/gdb_vecs.h (char_ptr): Remove.
13234         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13235
13236 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13237
13238         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13239         with std::vector.
13240         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13241
13242 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13243
13244         * tracepoint.h (struct uploaded_tp): Initialize fields.
13245         <actions, step_actions, cmd_strings>: Change type to
13246         std::vector<char *>.
13247         * tracepoint.c (get_uploaded_tp): Allocate with new.
13248         (free_uploaded_tps): Free with delete.
13249         (parse_tracepoint_definition): Adjust to std::vector change.
13250         * breakpoint.c (read_uploaded_action): Likewise.
13251         (create_tracepoint_from_upload): Likewise.
13252         * ctf.c (ctf_write_uploaded_tp): Likewise.
13253         (SET_ARRAY_FIELD): Likewise.
13254         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13255
13256 2018-03-30  Tom Tromey  <tom@tromey.com>
13257
13258         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13259         std::unique_ptr.
13260         (svr4_keep_data_in_core): Update.
13261         (svr4_read_so_list): Update.
13262
13263 2018-03-30  Tom Tromey  <tom@tromey.com>
13264
13265         * windows-nat.c (handle_output_debug_string, handle_exception):
13266         Update.
13267         * target.h (target_read_string): Update.
13268         * target.c (target_read_string): Change "string" to
13269         unique_xmalloc_ptr.
13270         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13271         Update.
13272         * solib-frv.c (frv_current_sos): Update.
13273         * solib-dsbt.c (dsbt_current_sos): Update.
13274         * solib-darwin.c (darwin_current_sos): Update.
13275         * linux-thread-db.c (inferior_has_bug): Update.
13276         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13277         Update.  Remove alloca.
13278         * ada-lang.c (ada_main_name): Update.
13279
13280 2018-03-30  Tom Tromey  <tom@tromey.com>
13281
13282         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13283         (struct dwo_file_deleter): New.
13284         (dwo_file_up): New typedef.
13285         (open_and_init_dwo_file): Use dwo_file_up.
13286         (free_dwo_file_cleanup): Remove.
13287
13288 2018-03-30  Tom Tromey  <tom@tromey.com>
13289
13290         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13291         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13292
13293 2018-03-30  Tom Tromey  <tom@tromey.com>
13294
13295         * dwarf2read.c (class free_cached_comp_units): New class.
13296         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13297         (free_cached_comp_units): Remove function.
13298
13299 2018-03-30  Tom Tromey  <tom@tromey.com>
13300
13301         * utils.h (make_cleanup_unpush_target): Remove.
13302         * inf-ptrace.c (struct target_unpusher): New.
13303         (target_unpush_up) New typedef.
13304         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13305         target_unpush_up.
13306         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13307
13308 2018-03-27  Tom Tromey  <tom@tromey.com>
13309
13310         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13311
13312 2018-03-27  Pedro Alves  <palves@redhat.com>
13313             Tom Tromey  <tom@tromey.com>
13314
13315         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13316         destructor.  Now a class.
13317         (gdb_readline_wrapper_cleanup): Remove function.
13318         (gdb_readline_wrapper): Remove cleanups.
13319
13320 2018-03-27  Tom Tromey  <tom@tromey.com>
13321
13322         * typeprint.h (struct type_print_options) <local_typedefs,
13323         global_typedefs>: Remove "struct" keyword.
13324         (class typedef_hash_table): New class.
13325         (recursively_update_typedef_hash, add_template_parameters)
13326         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13327         (find_typedef_in_hash): Don't declare.
13328         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13329         (typedef_hash_table::recursively_update): Rename from
13330         recursively_update_typedef_hash.  Now a member.
13331         (typedef_hash_table::add_template_parameters): Rename from
13332         add_template_parameters.  Now a member.
13333         (typedef_hash_table::typedef_hash_table): Now a constructor;
13334         rename from create_typedef_hash.
13335         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13336         rename from free_typedef_hash.
13337         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13338         (do_free_global_table): Remove.
13339         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13340         from copy_type_recursive.
13341         (create_global_typedef_table): Remove.
13342         (typedef_hash_table::find_global_typedef): Now a member of
13343         typedef_hash_table.
13344         (typedef_hash_table::find_typedef): Rename from
13345         find_typedef_in_hash; now a member.
13346         (whatis_exp): Update.
13347         * extension.h (struct ext_lang_type_printers): Add constructor and
13348         destructor.
13349         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13350         declare.
13351         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13352         Now a constructor; rename from start_ext_lang_type_printers.
13353         (ext_lang_type_printers): Now a destructor; rename from
13354         free_ext_lang_type_printers.
13355         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13356         Update.
13357         (c_type_print_base_struct_union): Update.  Remove cleanups.
13358
13359 2018-03-27  Tom Tromey  <tom@tromey.com>
13360
13361         * dwarf-index-write.c: Include <cmath>.
13362
13363 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13364
13365         * NEWS: Add entry describing new "set|show varsize-limit" command.
13366         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13367         command.
13368         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13369         "set variable".
13370
13371 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13372
13373         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13374         dwarf-index-write.c
13375         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13376         * dwarf-index-common.c: New file.
13377         * dwarf-index-common.h: New file.
13378         * dwarf-index-write.c: New file.
13379         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13380         (struct dwarf2_section_info): Move from here.
13381         (dwarf2_section_info_def): Likewise.
13382         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13383         (offset_type): Likewise.
13384         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13385         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13386         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13387         (byte_swap): Likewise.
13388         (MAYBE_SWAP): Likewise.
13389         (dwarf2_per_cu_ptr): Likewise.
13390         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13391         (struct tu_stats): Likewise.
13392         (struct dwarf2_per_objfile): Likewise.
13393         (struct dwarf2_per_cu_data): Likewise.
13394         (struct signatured_type): Likewise.
13395         (sig_type_ptr): Likewise.
13396         (DEF_VEC_P (sig_type_ptr)): Likewise.
13397         (INDEX4_SUFFIX): Likewise.
13398         (INDEX5_SUFFIX): Likewise.
13399         (DEBUG_STR_SUFFIX): Likewise.
13400         (dwarf2_read_section): Make non-static.
13401         (mapped_index_string_hash): Move from here.
13402         (dwarf5_djb_hash): Likewise.
13403         (file_write): Likewise.
13404         (class data_buf): Likewise.
13405         (struct symtab_index_entry): Likewise.
13406         (struct mapped_symtab): Likewise.
13407         (find_slot): Likewise.
13408         (hash_expand): Likewise.
13409         (add_index_entry): Likewise.
13410         (uniquify_cu_indices): Likewise.
13411         (class c_str_view): Likewise.
13412         (class c_str_view_hasher): Likewise.
13413         (class vector_hasher): Likewise.
13414         (write_hash_table): Likewise.
13415         (psym_index_map): Likewise.
13416         (struct addrmap_index_data): Likewise.
13417         (add_address_entry): Likewise.
13418         (add_address_entry_worker): Likewise.
13419         (write_address_map): Likewise.
13420         (symbol_kind): Likewise.
13421         (write_psymbols): Likewise.
13422         (struct signatured_type_index_data): Likewise.
13423         (write_one_signatured_type): Likewise.
13424         (recursively_count_psymbols): Likewise.
13425         (recursively_write_psymbols): Likewise.
13426         (class debug_names): Likewise.
13427         (check_dwarf64_offsets): Likewise.
13428         (psyms_seen_size): Likewise.
13429         (write_gdbindex): Likewise.
13430         (write_debug_names): Likewise.
13431         (assert_file_size): Likewise.
13432         (write_psymtabs_to_index): Likewise.
13433         (save_gdb_index_command): Likewise.
13434         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13435         command.
13436         * dwarf2read.h: New file.
13437
13438 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13439
13440         PR gdb/22670
13441         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13442         symbol name if the CU's language stores symbol names in linkage
13443         format.
13444         * language.h (struct language_defn)
13445         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13446         all instances of this struct.
13447
13448 2018-03-26  Tom Tromey  <tom@tromey.com>
13449
13450         * stack.c (backtrace_command_1): Remove verbose code.
13451
13452 2018-03-26  Tom Tromey  <tom@tromey.com>
13453
13454         * python/py-framefilter.c (py_print_type): Don't catch
13455         exceptions.  Return void.
13456         (py_print_value): Likewise.
13457         (py_print_single_arg): Likewise.
13458         (enumerate_args): Don't catch exceptions.
13459         (py_print_args): Likewise.
13460         (py_print_frame): Likewise.
13461         (gdbpy_apply_frame_filter): Catch exceptions here.
13462
13463 2018-03-26  Tom Tromey  <tom@tromey.com>
13464
13465         * stack.c (_initialize_stack): Remove trailing newlines from help
13466         text.  Add "Usage" line to "backtrace" help.
13467
13468 2018-03-26  Tom Tromey  <tom@tromey.com>
13469
13470         PR python/16486:
13471         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13472
13473 2018-03-26  Tom Tromey  <tom@tromey.com>
13474
13475         * python/py-framefilter.c (py_print_single_arg): Return
13476         EXT_LANG_BT_ERROR from catch.
13477
13478 2018-03-26  Tom Tromey  <tom@tromey.com>
13479
13480         PR backtrace/15584:
13481         * stack.c (backtrace_command_1): Move some code into no-filters
13482         "if".
13483
13484 2018-03-26  Tom Tromey  <tom@tromey.com>
13485
13486         * python/py-framefilter.c (throw_quit_or_print_exception): New
13487         function.
13488         (gdbpy_apply_frame_filter): Use it.
13489
13490 2018-03-26  Tom Tromey  <tom@tromey.com>
13491
13492         PR cli/17716:
13493         * python/py-framefilter.c (py_print_type, py_print_value)
13494         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13495         RETURN_MASK_ERROR.
13496
13497 2018-03-26  Tom Tromey  <tom@tromey.com>
13498
13499         * python/py-framefilter.c (enumerate_args): Use
13500         gdb::unique_xmalloc_ptr.
13501
13502 2018-03-26  Tom Tromey  <tom@tromey.com>
13503
13504         * python/py-framefilter.c (py_print_frame): Return
13505         EXT_LANG_BT_OK.
13506         (gdbpy_apply_frame_filter): Update comment.
13507         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13508         Remove.
13509         <EXT_LANG_BT_NO_FILTERS>: Change value.
13510
13511 2018-03-26  Tom Tromey  <tom@tromey.com>
13512
13513         PR backtrace/15582:
13514         * stack.c (backtrace_command): Parse "hide" argument.
13515         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13516         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13517         constant.
13518
13519 2018-03-26  Tom Tromey  <tom@tromey.com>
13520
13521         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13522         add "flags".
13523         (backtrace_command): Remove "fulltrace", add "flags".
13524
13525 2018-03-26  Tom Tromey  <tom@tromey.com>
13526
13527         * stack.c (backtrace_command): Rewrite command line parsing.
13528
13529 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13530
13531         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13532
13533 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13534
13535         * filename-seen-cache.h: Add include guard.
13536
13537 2018-03-26  Keith Seitz  <keiths@redhat.com>
13538
13539         * symfile.c (place_section): Remove "struct" from section_addr_info
13540         in comment.
13541         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13542         "struct" keyword from section_addr_info.
13543
13544 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13545
13546         * regformats/regdef.h (reg): Add constructors.
13547
13548 2018-03-25  Pedro Alves  <palves@redhat.com>
13549
13550         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13551         if then/else bodies in var_func_name extraction.
13552
13553 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13554
13555         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13556         lookup_minimal_symbol() to find symbol entry.
13557         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13558
13559 2018-03-23  Keith Seitz  <keiths@redhat.com>
13560
13561         PR c++/22968
13562         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13563         nested type definitions for C++, too.
13564
13565 2018-03-23  Tom Tromey  <tom@tromey.com>
13566
13567         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13568         a typedef.
13569         (macho_register_oso): Remove.
13570         (macho_symtab_read): Take a std::vector.
13571         (oso_el_compare_name): Now a std::sort comparator.
13572         (macho_symfile_read_all_oso): Take a std::vector.
13573         (macho_symfile_read): Use std::vector.  Remove cleanups.
13574
13575 2018-03-22  Tom Tromey  <tom@tromey.com>
13576
13577         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13578         (record_full_goto_bookmark): Use std::string.
13579
13580 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13581
13582         PR tdep/18295
13583         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13584         a single mask.
13585
13586 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13587
13588         * rs6000-tdep.c (store_insn_p): New function.
13589         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13590         and cr_reg to their unshifted values. Use store_insn_p to
13591         match LR saves using either R1 or fdata->alloca_reg. Use
13592         store_insn_p to match CR saves. Set alloca_reg_offset
13593         when alloca_reg and framep are set. Remove lr_reg shift
13594         when assigning to fdata->lr_register.
13595
13596 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13597
13598         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13599         command line args instead of emitting a warning.
13600
13601 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13602
13603         * tracepoint.h (struct static_tracepoint_marker): Initialize
13604         fields, define default constructor, move constructor and move
13605         assignment, disable the rest.
13606         <str_id, extra>: Make std::string.
13607         (release_static_tracepoint_marker): Remove.
13608         (free_current_marker): Remove.
13609         * tracepoint.c (free_current_marker): Remove.
13610         (parse_static_tracepoint_marker_definition): Adjust to
13611         std::string, use new hex2str overload.
13612         (release_static_tracepoint_marker): Remove.
13613         (print_one_static_tracepoint_marker): Get marker by reference
13614         and adjust to std::string.
13615         (info_static_tracepoint_markers_command): Adjust to std::vector
13616         changes
13617         * target.h (static_tracepoint_marker_p): Remove typedef.
13618         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13619         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13620         bool.
13621         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13622         * target-debug.h
13623         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13624         (target_debug_print_std_vector_static_tracepoint_marker): New.
13625         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13626         to...
13627         (target_debug_print_static_tracepoint_marker_p): ... this.
13628         * target-delegates.c: Re-generate.
13629         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13630         Make std::string.
13631         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13632         (decode_static_tracepoint_spec): Adjust to std::vector.
13633         (tracepoint_print_one_detail): Adjust to std::string.
13634         (strace_marker_decode_location): Adjust to std::string.
13635         (update_static_tracepoint): Adjust to std::string, remove call
13636         to release_static_tracepoint_marker.
13637         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13638         Adjust to std::vector.
13639         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13640         (remote_static_tracepoint_markers_by_strid): Adjust to
13641         std::vector.
13642         * common/rsp-low.h (hex2str): New overload with explicit count
13643         of bytes.
13644         * common/rsp-low.c (hex2str): New overload with explicit count
13645         of bytes.
13646         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13647         (_initialize_rsp_low_selftests): Add test_hex2str test.
13648         * unittests/tracepoint-selftests.c
13649         (test_parse_static_tracepoint_marker_definition): Adjust to
13650         std::string.
13651
13652 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13653
13654         * tracepoint.c (parse_static_tracepoint_marker_definition):
13655         Consider case where the definition is followed by more
13656         definitions.
13657         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13658         tracepoint-selftests.c.
13659         * unittests/tracepoint-selftests.c: New.
13660
13661 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13662
13663         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13664         Carvalho.
13665
13666 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13667
13668         * symtab.c (find_pc_sect_line): fixed indentation.
13669
13670 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13671
13672         * symtab.c (find_pc_sect_line): now uses binary search.
13673
13674 2018-03-19  Tom Tromey  <tom@tromey.com>
13675
13676         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13677         "IDENT" production.
13678
13679 2018-03-19  Pedro Alves  <palves@redhat.com>
13680             Tom Tromey  <tom@tromey.com>
13681
13682         * unittests/observable-selftests.c: New file.
13683         * common/observable.h: New file.
13684         * observable.h: New file.
13685         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13686         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13687         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13688         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13689         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13690         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13691         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13692         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13693         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13694         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13695         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13696         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13697         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13698         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13699         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13700         tui/tui-interp.c, valops.c: Update all users.
13701         * tui/tui-hooks.c (tui_bp_created_observer)
13702         (tui_bp_deleted_observer, tui_bp_modified_observer)
13703         (tui_inferior_exit_observer, tui_before_prompt_observer)
13704         (tui_normal_stop_observer, tui_register_changed_observer):
13705         Remove.
13706         (tui_observers_token): New global.
13707         (attach_or_detach, tui_attach_detach_observers): New functions.
13708         (tui_install_hooks, tui_remove_hooks): Use
13709         tui_attach_detach_observers.
13710         * record-btrace.c (record_btrace_thread_observer): Remove.
13711         (record_btrace_thread_observer_token): New global.
13712         * observer.sh: Remove.
13713         * observer.c: Rename to observable.c.
13714         * observable.c (namespace gdb_observers): Define new objects.
13715         (observer_debug): Move into gdb_observers namespace.
13716         (struct observer, struct observer_list, xalloc_observer_list_node)
13717         (xfree_observer_list_node, generic_observer_attach)
13718         (generic_observer_detach, generic_observer_notify): Remove.
13719         (_initialize_observer): Update.
13720         Don't include observer.inc.
13721         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13722         (clean mostlyclean): Likewise.
13723         (observer.h, observer.inc): Remove targets.
13724         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13725         (COMMON_SFILES): Use observable.c, not observer.c.
13726         * .gitignore: Remove observer.h.
13727
13728 2018-03-18  Tom Tromey  <tom@tromey.com>
13729
13730         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13731         gdb::def_vector.
13732         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13733
13734 2018-03-17  Tom Tromey  <tom@tromey.com>
13735
13736         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13737
13738 2018-03-17  Tom Tromey  <tom@tromey.com>
13739
13740         * target.c (class scoped_target_fd): New.
13741         (target_fileio_close_cleanup): Remove.
13742         (target_fileio_read_alloc_1): Use scoped_target_fd.
13743
13744 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13745
13746         * silent-rules.mk: New.
13747         * Makefile.in: Include silent-rules.mk
13748         (srcdir, VPATH, top_srcdir): Move up.
13749         (COMPILE): Add ECHO_CXX.
13750         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13751         (init.c): Add ECHO_INIT_C.
13752         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13753         (version.c): Add ECHO_GEN.
13754         (printcmd.o): Add ECHO_CXX.
13755         (target-float.o): Add ECHO_CXX.
13756         (ada-exp.o): Add ECHO_CXX.
13757         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13758         (insight$(EXEEXT)): Add ECHO_CXXLD.
13759         * gnulib/configure.ac: Add AM_SILENT_RULES.
13760         * gnulib/aclocal.m4: Re-generate.
13761         * gnulib/configure: Re-generate.
13762         * gnulib/import/Makefile.in: Re-generate.
13763
13764 2018-03-16  Tom Tromey  <tom@tromey.com>
13765
13766         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13767         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13768         * utils.c (do_free_section_addr_info)
13769         (make_cleanup_free_section_addr_info): Remove.
13770         * symfile.h (struct other_sections): Add constructor.
13771         (struct section_addr_info): Remove.
13772         (section_addr_info): New typedef.
13773         (struct sym_fns) <sym_offsets>: Change type of parameter.
13774         (build_section_addr_info_from_objfile)
13775         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13776         (default_symfile_offsets, symbol_file_add)
13777         (symbol_file_add_from_bfd)
13778         (build_section_addr_info_from_section_table): Update.
13779         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13780         * symfile.c (alloc_section_addr_info): Remove.
13781         (build_section_addr_info_from_section_table): Change return type.
13782         Update.
13783         (build_section_addr_info_from_bfd)
13784         (build_section_addr_info_from_objfile): Likewise.
13785         (free_section_addr_info): Remove.
13786         (relative_addr_info_to_section_offsets): Change type of "addrs".
13787         (addrs_section_compar): Now a std::sort comparator.
13788         (addrs_section_sort): Change return type.
13789         (addr_info_make_relative): Change type of "addrs".  Update.
13790         (default_symfile_offsets, syms_from_objfile_1)
13791         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13792         (symbol_file_add_separate): Update.
13793         (symbol_file_add): Change type of "addrs".  Update.
13794         (add_symbol_file_command): Update.  Remove cleanups.
13795         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13796         cleanups.
13797         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13798         * solib.c (solib_read_symbols): Update.
13799         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13800         * machoread.c (macho_symfile_offsets): Update.
13801         * jit.c (jit_bfd_try_read_symtab): Update.
13802
13803 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13804
13805         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13806         unittests/utils-selftests.c.
13807         * unittests/utils-selftests.c: New file.
13808
13809 2018-03-14  Tom Tromey  <tom@tromey.com>
13810
13811         PR cli/14977:
13812         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13813         for NULL.
13814
13815 2018-03-14  Tom Tromey  <tom@tromey.com>
13816
13817         PR cli/19918:
13818         * printcmd.c (printf_pointer): Allow "-" in format.
13819
13820 2018-03-14  Tom Tromey  <tom@tromey.com>
13821
13822         * printcmd.c (_initialize_printcmd): Add usage to printf.
13823
13824 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13825
13826         * MAINTAINERS: Update my email address.
13827
13828 2018-03-13  Tom Tromey  <tom@tromey.com>
13829
13830         * machoread.c (macho_check_dsym): Change filenamep to a
13831         std::string*.
13832         (macho_symfile_read): Update.
13833         * symfile.c (load_command): Use std::string.
13834
13835 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13836
13837         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13838         to error message string.
13839         (riscv_register_name): Use xsnprintf instead of sprintf.
13840         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13841         internal_error.
13842         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13843         error.
13844         (riscv_push_dummy_call): Likewise.
13845
13846 2018-03-12  Tom Tromey  <tom@tromey.com>
13847
13848         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13849         Use gdb::byte_vector.
13850         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13851
13852 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13853
13854         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13855         parameter type to readable_regcache.
13856         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13857         the declaration.
13858
13859 2018-03-11  Tom Tromey  <tom@tromey.com>
13860
13861         * dwarf2read.c (struct nextfield): Add initializers.
13862         (struct nextfnfield): Remove.
13863         (struct fnfieldlist): Add initializers.  Remove "length" and
13864         "head", use std::vector.
13865         (struct decl_field_list): Remove.
13866         (struct field_info): Add initializers.
13867         <fields, baseclasses>: Now std::vector.
13868         <nbaseclasses, nfnfields, typedef_field_list_count,
13869         nested_types_list_count>: Remove.
13870         (dwarf2_add_field, dwarf2_add_type_defn)
13871         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13872         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13873         (process_structure_scope): Update.
13874
13875 2018-03-11  Tom Tromey  <tom@tromey.com>
13876
13877         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13878         for use by std::sort.
13879         (build_type_psymtabs_1): Use std::vector.
13880
13881 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13882
13883         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13884         and LIBMPFR in the printed configuration.
13885
13886 2018-03-08  Tom Tromey  <tom@tromey.com>
13887
13888         * source.c (get_filename_and_charpos): Use scoped_fd.
13889         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13890         (procfs_pidlist): Likewise.
13891         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13892         (iterate_over_mappings): Likewise.
13893
13894 2018-03-08  Tom Tromey  <tom@tromey.com>
13895
13896         * infcall.c (struct call_return_meta_info)
13897         <stack_temporaries_enabled>: Remove.
13898         (get_call_return_value, call_function_by_hand_dummy): Update.
13899         * thread.c (disable_thread_stack_temporaries): Remove.
13900         (enable_thread_stack_temporaries): Remove.
13901         (thread_stack_temporaries_enabled_p): Return bool.
13902         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13903         (get_last_thread_stack_temporary): Update.
13904         * eval.c (evaluate_subexp): Update.
13905         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13906         class, not a function.
13907         (value_ptr, value_vec): Remove typedefs.
13908         (class thread_info) <stack_temporaries_enabled>: Now bool.
13909         <stack_temporaries>: Now a std::vector.
13910         (thread_stack_temporaries_enabled_p)
13911         (value_in_thread_stack_temporaries): Return bool.
13912
13913 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13914
13915         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13916         (getpkt_or_notif_sane_1): Likewise.
13917
13918 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13919
13920         * build-id.c (build_id_to_debug_bfd): Use std::string.
13921
13922 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13923
13924         * build-id.c (find_separate_debug_file_by_buildid): Return
13925         std::string.
13926         * build-id.h (find_separate_debug_file_by_buildid): Return
13927         std::string.
13928         * coffread.c (coff_symfile_read): Adjust to std::string.
13929         * elfread.c (elf_symfile_read): Adjust to std::string.
13930         * symfile.c (separate_debug_file_exists): Change parameter to
13931         std::string.
13932         (find_separate_debug_file): Return std::string.
13933         (find_separate_debug_file_by_debuglink): Return std::string.
13934         * symfile.h (find_separate_debug_file_by_debuglink): Return
13935         std::string.
13936
13937 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13938
13939         * common/xml-utils.c (xml_escape_text): Move code to...
13940         (xml_escape_text_append): ... this new function.
13941         * common/xml-utils.h (xml_escape_text_append): New declaration.
13942         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13943         New function.
13944         (_initialize_xml_utils): register test_xml_escape_text_append as
13945         a selftest.
13946
13947 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13948
13949         * defs.h: Remove MAX_REGISTER_SIZE.
13950         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13951         asserts.
13952         * python/py-unwind.c (pyuw_sniffer): Likewise.
13953
13954 2018-03-07  Tom Tromey  <tom@tromey.com>
13955
13956         * linux-tdep.c (linux_info_proc): Update.
13957         * target.h (struct target_ops) <to_fileio_readlink>: Return
13958         optional<string>.
13959         (target_fileio_readlink): Return optional<string>.
13960         * remote.c (remote_hostio_readlink): Return optional<string>.
13961         * inf-child.c (inf_child_fileio_readlink): Return
13962         optional<string>.
13963         * target.c (target_fileio_readlink): Return optional<string>.
13964
13965 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13966
13967         * regcache.c (cooked_read_test): Add riscv to the list of
13968         architectures that have a save_reggroup.
13969
13970 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13971
13972         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13973         value is not a dynamic class object.
13974
13975 2018-03-06  Tom Tromey  <tom@tromey.com>
13976
13977         * rust-exp.y: Formatting fixes.
13978
13979 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13980
13981         * riscv-tdep.c (riscv_register_name): Remove target description
13982         support.
13983         (riscv_gdbarch_init): Remove target description check.
13984
13985 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13986
13987         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13988         comment.
13989         * riscv-tdep.h: Likewise.
13990
13991 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13992
13993         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13994         (riscv_pseudo_register_write): Delete.
13995         (riscv_gdbarch_init): Remove all use of pseudo registers.
13996
13997 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13998
13999         * record-btrace.c (btrace_print_lines): Replace cleanup
14000         parameter with RAII equivalents.
14001         (btrace_insn_history): Replace cleanup with RAII equivalents.
14002         * ui-out.h (make_cleanup_ui_out_list_begin_end,
14003         make_cleanup_ui_out_tuple_begin_end): Remove.
14004         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
14005         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
14006         make_cleanup_ui_out_list_begin_end): Remove.
14007
14008 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14009
14010         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
14011         parameter types to std::vector.  Use bool.
14012         (record_btrace_wait): Replace VEC(tp_t) with
14013         std::vector<thread_info *>.
14014         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
14015
14016 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
14017
14018         * record-btrace.c (record_btrace_disable_callback): Remove.
14019         (struct scoped_btrace_disable): New.
14020         (record_btrace_open): Use scoped_btrace_disable.
14021
14022 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14023
14024         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
14025         reading values from registers.
14026
14027 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14028
14029         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
14030         where appropriate.
14031
14032 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14033
14034         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
14035         change parameter type.  Use GDB's print functions, and use
14036         core_addr_to_string where appropriate.
14037         (riscv_push_dummy_call): Use core_addr_to_string where
14038         appropriate, update call to riscv_print_arg_location, and reindent
14039         a few lines.
14040         (riscv_return_value): Update call to riscv_print_arg_location.
14041
14042 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14043             Tim Newsome <tim@sifive.com>
14044             Albert Ou <a0u@eecs.berkeley.edu>
14045             Darius Rad <darius@bluespec.com>
14046
14047         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
14048         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
14049         (ALLDEPFILES): Add riscv-tdep.c
14050         * configure.tgt: Add riscv support.
14051         * riscv-tdep.c: New file.
14052         * riscv-tdep.h: New file.
14053         * NEWS: Mention new target.
14054         * MAINTAINERS: Add entry for riscv.
14055
14056 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
14057
14058         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
14059         fields within aggregates.
14060
14061 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
14062
14063         * record-btrace.c (btrace_print_lines): Change type of flags to
14064         gdb_disassembly_flags.
14065
14066 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14067
14068         * fbsd-nat.c: Include "inf-ptrace.h".
14069         (USE_SIGTRAP_SIGINFO): Conditionally define.
14070         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
14071         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
14072         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
14073         function.
14074         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
14075         Likewise.
14076         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
14077         Likewise.
14078         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
14079         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
14080         "supports_stopped_by_hw_breakpoint" target methods.
14081
14082 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14083
14084         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
14085         * fbsd-nat.c (debug_fbsd_nat): New variable.
14086         (show_fbsd_nat_debug): New function.
14087         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
14088         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
14089
14090 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
14091
14092         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
14093         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
14094         prototype.
14095         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
14096         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
14097         method.
14098
14099 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14100
14101         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
14102         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
14103
14104 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14105
14106         * charset.c (struct charset_vector): New.
14107         (charsets): Change type to charset_vector.
14108         (find_charset_names): Adjust.
14109         (add_one): Adjust.
14110         (_initialize_charset): Adjust.
14111
14112 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14113
14114         * progspace.h (struct program_space) <deleted_solibs>: Change
14115         type to std::vector<std::string>.
14116         * progspace.c (clear_program_space_solib_cache): Adjust.
14117         * breakpoint.c (print_solib_event): Adjust.
14118         (check_status_catch_solib): Adjust.
14119         * solib.c (update_solib_list): Adjust.
14120         * ui-out.h (class ui_out) <field_string>: New overload.
14121         * ui-out.c (ui_out::field_string): New overload.
14122
14123 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14124
14125         * progspace.h (struct program_space): Add constructor and
14126         destructor, initialize fields.
14127         (add_program_space): Remove.
14128         * progspace.c (add_program_space): Rename to...
14129         (program_space::program_space): ... this.
14130         (release_program_space): Rename to...
14131         (program_space::~program_space): ... this.
14132         (delete_program_space): Use delete to delete program_space.
14133         (initialize_progspace): Use new to allocate program_space.
14134         * inferior.c (add_inferior_with_spaces): Likewise.
14135         (clone_inferior_command): Likewise.
14136         * infrun.c (follow_fork_inferior): Likewise.
14137         (handle_vfork_child_exec_or_exit): Likewise.
14138
14139 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
14140
14141         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
14142         (delim_string_to_char_ptr_vec): Return std::vector of
14143         gdb::unique_xmalloc_ptr.
14144         (dirnames_to_char_ptr_vec_append): Take std::vector of
14145         gdb::unique_xmalloc_ptr.
14146         (dirnames_to_char_ptr_vec): Return std::vector of
14147         gdb::unique_xmalloc_ptr.
14148         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
14149         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
14150         (delim_string_to_char_ptr_vec): Return an std::vector of
14151         gdb::unique_xmalloc_ptr, adjust the code.
14152         (dirnames_to_char_ptr_vec_append): Take an std::vector of
14153         gdb::unique_xmalloc_ptr, adjust the code.
14154         (dirnames_to_char_ptr_vec): Return an std::vector of
14155         gdb::unique_xmalloc_ptr, adjust the code.
14156         * auto-load.c (auto_load_safe_path_vec): Change type to
14157         std::vector of gdb::unique_xmalloc_ptr.
14158         (auto_load_expand_dir_vars): Return an std::vector of
14159         gdb::unique_xmalloc_ptr, adjust the code.
14160         (auto_load_safe_path_vec_update): Adjust.
14161         (filename_is_in_auto_load_safe_path_vec): Adjust.
14162         (auto_load_objfile_script_1): Adjust.
14163         * build-id.c (build_id_to_debug_bfd): Adjust.
14164         * linux-thread-db.c (thread_db_load_search): Adjust.
14165         * source.c (add_path): Adjust.
14166         (openp): Adjust.
14167         * symfile.c (find_separate_debug_file): Adjust.
14168         * utils.c (do_free_char_ptr_vec): Remove.
14169         (make_cleanup_free_char_ptr_vec): Remove.
14170
14171 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14172
14173         PR gdb/22907
14174         * common/pathstuff.c: Conditionally include "<windows.h>".
14175
14176 2018-03-01  Georg Sauthoff  <mail@georg.so>
14177
14178         PR gdb/22888
14179         * gcore.in: Quote variables and switch interpreter to bash.
14180
14181 2018-03-01  Tom Tromey  <tom@tromey.com>
14182
14183         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14184         assertion.  Add assertion for discriminant_index.
14185         (quirk_rust_enum): Use correct base type name in univariant case.
14186
14187 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14188
14189         * record.c (get_call_history_modifiers): Return a
14190         record_print_flags.
14191         (cmd_record_call_history): Adjust.
14192         * record-btrace.c (record_btrace_call_history): Adjust.
14193         (record_btrace_call_history_range): Adjust.
14194         (record_btrace_call_history_from): Adjust.
14195         * target-debug.h (target_debug_print_record_print_flags): New.
14196         * target-delegates.c: Re-generate.
14197         * target.c (target_call_history): Change flags type.
14198         (target_call_history_from): Likewise.
14199         (target_call_history_range): Likewise.
14200         * target.h (struct target_ops) <target_call_history>: Likewise.
14201         (target_call_history_from): Likewise.
14202         (target_call_history_range): Likewise.
14203
14204 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14205             Simon Marchi  <simon.marchi@polymtl.ca>
14206
14207         * common/common-utils.c: Include "sys/stat.h".
14208         (is_regular_file): Move here from "source.c"; change return
14209         type to "bool".
14210         * common/common-utils.h (is_regular_file): New prototype.
14211         * common/pathstuff.c (contains_dir_separator): New function.
14212         * common/pathstuff.h (contains_dir_separator): New prototype.
14213         * source.c: Don't include "sys/stat.h".
14214         (is_regular_file): Move to "common/common-utils.c".
14215
14216 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14217
14218         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14219         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14220         * auto-load.c: Include "common/pathstuff.h".
14221         * common/common-def.h (current_directory): Move here.
14222         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14223         function.
14224         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14225         prototype.
14226         * common/pathstuff.c: New file.
14227         * common/pathstuff.h: New file.
14228         * compile/compile.c: Include "common/pathstuff.h".
14229         * defs.h (current_directory): Move to "common/common-defs.h".
14230         * dwarf2read.c: Include "common/pathstuff.h".
14231         * exec.c: Likewise.
14232         * guile/scm-safe-call.c: Likewise.
14233         * linux-thread-db.c: Likewise.
14234         * main.c: Likewise.
14235         * nto-tdep.c: Likewise.
14236         * objfiles.c: Likewise.
14237         * source.c: Likewise.
14238         * symtab.c: Likewise.
14239         * utils.c: Include "common/pathstuff.h".
14240         (gdb_realpath): Move to "common/pathstuff.c".
14241         (gdb_realpath_keepfile): Likewise.
14242         (gdb_abspath): Likewise.
14243         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14244         (gdb_realpath_keepfile): Likewise.
14245         (gdb_abspath): Likewise.
14246
14247 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14248
14249         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14250         wildcard process pid for super_resume for kernels with a
14251         specific bug.
14252
14253 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14254
14255         * compile/compile.c (get_args): Add additional comments
14256         explaining function.
14257
14258 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14259             Tom Tromey  <tom@tromey.com>
14260
14261         * target.h (memory_write_request_s): Remove typedef.  Don't define
14262         VEC.
14263         (target_write_memory_blocks): Change argument to std::vector.
14264         (struct memory_write_request): Add constructor.
14265         * target-memory.c (compare_block_starting_address): Return bool.
14266         Change argument types.
14267         (claim_memory): Change arguments to use std::vector.
14268         (split_regular_and_flash_blocks, blocks_to_erase)
14269         (compute_garbled_blocks): Likewise.
14270         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14271         (target_write_memory_blocks): Change argument to std::vector.
14272         * symfile.c (struct load_section_data): Add constructor and
14273         destructor.  Use std::vector for "requests".
14274         (struct load_progress_data): Add initializers.
14275         (load_section_callback): Update.  Use "new".
14276         (clear_memory_write_data): Remove.
14277         (generic_load): Update.
14278
14279 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14280
14281         * arch/aarch64.h: Use common/tdesc.h.
14282
14283 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14284
14285         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14286         architecture with a 64-bit ABI.
14287
14288 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14289
14290         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14291         ahead of target description loading.
14292
14293 2018-02-26  Tom Tromey  <tom@tromey.com>
14294
14295         * stack.c (backtrace_command_1): Update.
14296         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14297         of "flags".
14298         * python/py-framefilter.c (py_print_frame)
14299         (gdbpy_apply_frame_filter): Change type of "flags".
14300         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14301         of "flags".
14302         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14303         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14304         * extension.h (enum frame_filter_flag): Rename from
14305         frame_filter_flags.
14306         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14307         (apply_ext_lang_frame_filter): Change type of "flags".
14308         * extension.c (apply_ext_lang_frame_filter): Change type of
14309         "flags".
14310         * extension-priv.h (struct extension_language_ops)
14311         <apply_frame_filter>: Change type of "flags".
14312
14313 2018-02-26  Tom Tromey  <tom@tromey.com>
14314
14315         PR python/16497:
14316         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14317         off-by-one in py_end computation.
14318         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14319         PRINT_MORE_FRAMES.
14320         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14321         constant.
14322
14323 2018-02-26  Tom Tromey  <tom@tromey.com>
14324
14325         * dwarf2read.c (struct variant_field): New.
14326         (struct nextfield) <variant>: New field.
14327         (dwarf2_add_field): Handle DW_TAG_variant_part.
14328         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14329         discriminated union.
14330         (read_structure_type): Handle DW_TAG_variant_part.
14331         (handle_struct_member_die): New function, extracted from
14332         process_structure_scope.  Handle DW_TAG_variant.
14333         (process_structure_scope): Handle discriminated unions.  Call
14334         handle_struct_member_die.
14335
14336 2018-02-26  Tom Tromey  <tom@tromey.com>
14337
14338         * rust-lang.h (rust_last_path_segment): Declare.
14339         * rust-lang.c (rust_last_path_segment): Now public.  Change
14340         contract.
14341         (struct disr_info): Remove.
14342         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14343         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14344         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14345         (rust_enum_p, rust_enum_variant): New function.
14346         (rust_underscore_fields): Remove "offset" parameter.
14347         (rust_print_enum): New function.
14348         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14349         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14350         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14351         enums.
14352         (rust_internal_print_type): New function, from rust_print_type.
14353         Remove enum code.
14354         (rust_print_type): Call rust_internal_print_type.
14355         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14356         Update enum handling.
14357         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14358         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14359         (rust_union_quirks): New functions.
14360         (process_full_comp_unit, process_full_type_unit): Call
14361         rust_union_quirks.
14362         (process_structure_scope): Update rust_unions if necessary.
14363
14364 2018-02-26  Tom Tromey  <tom@tromey.com>
14365
14366         * value.h (value_union_variant): Declare.
14367         * valops.c (value_union_variant): New function.
14368         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14369         (struct discriminant_info): New.
14370         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14371         enumerator.
14372         (struct main_type) <flag_discriminated_union>: New field.
14373
14374 2018-02-26  Tom Tromey  <tom@tromey.com>
14375
14376         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14377         unittests/unpack-selftests.c.
14378         * unittests/unpack-selftests.c: New file.
14379         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14380
14381 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14382
14383         * dwarf2read.c (struct partial_die_info) <read>: New method.
14384         (read_partial_die): Remove the declaration.
14385         (load_partial_dies): Update.
14386         (partial_die_info::partial_die_info):
14387         (read_partial_die): Change it to partial_die_info::read.
14388
14389 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14390
14391         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14392         (fixup_partial_die): Remove declaration.
14393         (scan_partial_symbols): Update.
14394         (partial_die_parent_scope): Likewise.
14395         (partial_die_full_name): Likewise.
14396         (fixup_partial_die): Change it to partial_die_info::fixup.
14397
14398 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14399
14400         * dwarf2read.c (read_partial_die): Update the declaration.
14401         (load_partial_dies): Caller update.
14402         (read_partial_die): Remove one argument abbrev_len.
14403
14404 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14405
14406         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14407         assignment operator.
14408         (load_partial_dies): Use ctor and copy ctor.
14409         (read_partial_die): Update.
14410         (dwarf2_cu::find_partial_die): Use ctor.
14411
14412 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14413
14414         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14415         (find_partial_die_in_comp_unit): Change it to
14416         dwarf2_cu::find_partial_die.
14417         (find_partial_die): Update.
14418
14419 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14420
14421         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14422         is NULL.
14423
14424 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14425
14426         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14427
14428 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14429
14430         * arch/amd64.h: Use common/tdesc.h.
14431         * arch/i386.c: Likewise.
14432         * arch/i386.h: Likewise.
14433         * arch/tic6x.c: Likewise.
14434         * arch/tdesc.h: Move file from here...
14435         * common/tdesc.h: ...to here.
14436         * features/aarch64-core.c: Regenerate.
14437         * features/aarch64-fpu.c: Regenerate.
14438         * features/i386/32bit-avx.c: Regenerate.
14439         * features/i386/32bit-avx512.c: Regenerate.
14440         * features/i386/32bit-core.c: Regenerate.
14441         * features/i386/32bit-linux.c: Regenerate.
14442         * features/i386/32bit-mpx.c: Regenerate.
14443         * features/i386/32bit-pkeys.c: Regenerate.
14444         * features/i386/32bit-sse.c: Regenerate.
14445         * features/i386/64bit-avx.c: Regenerate.
14446         * features/i386/64bit-avx512.c: Regenerate.
14447         * features/i386/64bit-core.c: Regenerate.
14448         * features/i386/64bit-linux.c: Regenerate.
14449         * features/i386/64bit-mpx.c: Regenerate.
14450         * features/i386/64bit-pkeys.c: Regenerate.
14451         * features/i386/64bit-segments.c: Regenerate.
14452         * features/i386/64bit-sse.c: Regenerate.
14453         * features/i386/x32-core.c: Regenerate.
14454         * features/tic6x-c6xp.c: Regenerate.
14455         * features/tic6x-core.c: Regenerate.
14456         * features/tic6x-gp.c: Regenerate.
14457         * target-descriptions.c: Use common/tdesc.h.
14458         * target-descriptions.h: Likewise.
14459
14460 2018-02-24  Tom Tromey  <tom@tromey.com>
14461
14462         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14463         (try_thread_db_load_from_dir, thread_db_load_search): Use
14464         std::string.
14465         (info_auto_load_libthread_db_compare): Return bool.  Change
14466         argument types.
14467         (info_auto_load_libthread_db): Use std::vector, std::string.
14468         Remove cleanups.
14469
14470 2018-02-24  Tom Tromey  <tom@tromey.com>
14471
14472         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14473         std::string.
14474         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14475         std::string*.
14476         * gdbarch.c: Rebuild.
14477         * gdbarch.h: Rebuild.
14478         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14479         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14480         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14481         std::string*.
14482
14483 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14484
14485         * gdbtypes.h (sect_offset): Change type to uint64_t.
14486         (sect_offset_str): New function.
14487         * dwarf2read.c (create_addrmap_from_aranges): Use
14488         sect_offset_str.
14489         (error_check_comp_unit_head): Likewise.
14490         (create_debug_type_hash_table): Likewise.
14491         (read_cutu_die_from_dwo): Likewise.
14492         (init_cutu_and_read_dies): Likewise.
14493         (init_cutu_and_read_dies_no_follow): Likewise.
14494         (process_psymtab_comp_unit_reader): Likewise.
14495         (partial_die_parent_scope): Likewise.
14496         (peek_die_abbrev): Likewise.
14497         (process_queue): Likewise.
14498         (dwarf2_physname): Likewise.
14499         (read_namespace_alias): Likewise.
14500         (read_import_statement): Likewise.
14501         (create_dwo_cu_reader): Likewise.
14502         (create_cus_hash_table): Likewise.
14503         (lookup_dwo_cutu): Likewise.
14504         (inherit_abstract_dies): Likewise.
14505         (read_func_scope): Likewise.
14506         (read_call_site_scope): Likewise.
14507         (dwarf2_add_member_fn): Likewise.
14508         (read_common_block): Likewise.
14509         (read_module_type): Likewise.
14510         (read_typedef): Likewise.
14511         (read_subrange_type): Likewise.
14512         (load_partial_dies): Likewise.
14513         (read_partial_die): Likewise.
14514         (find_partial_die): Likewise.
14515         (read_str_index): Likewise.
14516         (dwarf2_string_attr): Likewise.
14517         (build_error_marker_type): Likewise.
14518         (lookup_die_type): Likewise.
14519         (dump_die_shallow): Likewise.
14520         (follow_die_ref): Likewise.
14521         (dwarf2_fetch_die_loc_sect_off): Likewise.
14522         (dwarf2_fetch_constant_bytes): Likewise.
14523         (follow_die_sig): Likewise.
14524         (get_signatured_type): Likewise.
14525         (get_DW_AT_signature_type): Likewise.
14526         (dwarf2_find_containing_comp_unit): Likewise.
14527         (set_die_type): Likewise.
14528
14529 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14530
14531         * arch/aarch64.c: Include "common-defs.h".
14532         * arch/amd64.c: Likewise.
14533         * arch/i386.c: Likewise.
14534
14535 2018-02-21  Tom Tromey  <tom@tromey.com>
14536
14537         * value.h: (extract_field_op): Update.
14538         * eval.c (extract_field_op): Return a const char *.
14539         * expression.h (parse_expression_for_completion): Update.
14540         * completer.c (complete_expression): Update.
14541         (add_struct_fields): Make fieldname const.
14542         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14543         (mark_completion_tag, parse_exp_in_context_1): Update.
14544         (parse_expression_for_completion): Change "name" to
14545         unique_xmalloc_ptr*.
14546
14547 2018-02-21  Tom Tromey  <tom@tromey.com>
14548
14549         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14550
14551 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14552
14553         * avr-tdep.c (avr_read_pc): Change parameter type to
14554         readable_regcache.
14555         * gdbarch.sh (read_pc): Likewise.
14556         * gdbarch.c: Re-generated.
14557         * gdbarch.h: Re-generated.
14558         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14559         readable_regcache.
14560         * ia64-tdep.c (ia64_read_pc): Likewise.
14561         * mips-tdep.c (mips_read_pc): Likewise.
14562         * spu-tdep.c (spu_read_pc): Likewise.
14563
14564 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14565
14566         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14567         * regcache-dump.c: New file.
14568         * regcache.c: Move register_dump to regcache-dump.c.
14569         (maintenance_print_registers): Likewise.
14570         (maintenance_print_raw_registers): Likewise.
14571         (maintenance_print_cooked_registers): Likewise.
14572         (maintenance_print_register_groups): Likewise.
14573         (maintenance_print_remote_registers): Likewise.
14574         (_initialize_regcache): Likewise.
14575         * regcache.h (register_dump): Moved from regcache.c.
14576
14577 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14578
14579         * regcache.c (regcache::regcache): Update.
14580         (regcache::invalidate): Move it to detached_regcache::invalidate.
14581         (get_thread_arch_aspace_regcache): Update.
14582         (regcache::raw_update): Update.
14583         (regcache::cooked_read): Remove some code.
14584         (regcache::cooked_read_value): Likewise.
14585         (regcache::raw_write): Remove assert on m_readonly_p.
14586         (regcache::raw_supply_integer): Move it to
14587         detached_regcache::raw_supply_integer.
14588         (regcache::raw_supply_zeroed): Likewise.
14589         * regcache.h (detached_regcache) <raw_supply_integer>: New
14590         declaration.
14591         <raw_supply_zeroed, invalidate>: Likewise.
14592         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14593         <invalidate>: Likewise.
14594         <m_readonly_p>: Removed.
14595
14596 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14597
14598         * infcmd.c (get_return_value): Let stop_regs point to
14599         get_current_regcache.
14600         * regcache.c (regcache::regcache): Remove.
14601         (register_dump_reg_buffer): New class.
14602         (regcache_print): Adjust.
14603         * regcache.h (regcache): Remove constructors.
14604
14605 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14606
14607         * regcache.c (class register_dump): New class.
14608         (register_dump_regcache, register_dump_none): New class.
14609         (register_dump_remote, register_dump_groups): New class.
14610         (regcache_print): Update.
14611         * regcache.h (regcache_dump_what): Move it to regcache.c.
14612         (regcache) <dump>: Remove.
14613
14614 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14615
14616         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14617          reg_buffer_rw *.
14618         (jit_unwind_reg_set_impl): Call raw_supply.
14619         (jit_frame_sniffer): Use reg_buffer_rw.
14620         * record-full.c (record_full_core_regbuf): Change its type.
14621         (record_full_core_open_1): Use reg_buffer_rw.
14622         (record_full_close): Likewise.
14623         (record_full_core_fetch_registers): Use regcache->raw_supply.
14624         (record_full_core_store_registers): Likewise.
14625         * regcache.c (regcache::get_register_status): Move it to
14626         reg_buffer.
14627         (regcache_raw_set_cached_value): Remove.
14628         (regcache::raw_set_cached_value): Remove.
14629         (regcache::raw_write): Call raw_supply.
14630         (regcache::raw_supply): Move it to reg_buffer_rw.
14631         * regcache.h (regcache_raw_set_cached_value): Remove.
14632         (reg_buffer_rw): New class.
14633
14634 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14635
14636         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14637         readonly_detached_regcache.
14638         (dummy_frame_prev_register): Use regcache->cooked_read.
14639         * frame.c (frame_save_as_regcache): Change return type.
14640         (frame_pop): Update.
14641         * frame.h (frame_save_as_regcache): Update declaration.
14642         * inferior.h (get_infcall_suspend_state_regcache): Update
14643         declaration.
14644         * infrun.c (infcall_suspend_state) <registers>: use
14645         readonly_detached_regcache.
14646         (save_infcall_suspend_state): Don't use regcache_dup.
14647         (get_infcall_suspend_state_regcache): Change return type.
14648         * linux-fork.c (struct fork_info) <savedregs>: Change to
14649         readonly_detached_regcache.
14650         <pc>: New field.
14651         (fork_save_infrun_state): Don't use regcache_dup.
14652         (info_checkpoints_command): Adjust.
14653         * mi/mi-main.c (register_changed_p): Update declaration.
14654         (mi_cmd_data_list_changed_registers): Use
14655         readonly_detached_regcache.
14656         (register_changed_p): Change parameter type to
14657         readonly_detached_regcache.
14658         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14659         readonly_detached_regcache.
14660         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14661         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14662         New.
14663         (regcache::save): Move it to reg_buffer.
14664         (regcache::restore): Change parameter type.
14665         (regcache_dup): Remove.
14666         * regcache.h (reg_buffer) <save>: New method.
14667         (readonly_detached_regcache): New class.
14668         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14669         readonly_detached_regcache.
14670         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14671
14672 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14673
14674         * frame.c (frame_save_as_regcache): Use regcache method save.
14675         (frame_pop): Use regcache method restore.
14676         * infrun.c (restore_infcall_suspend_state): Likewise.
14677         * linux-fork.c (fork_load_infrun_state): Likewise.
14678         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14679         save.
14680         * regcache.c (regcache_save): Remove.
14681         (regcache::restore): More asserts.
14682         (regcache_cpy): Remove.
14683         * regcache.h (regcache_save): Remove the declaration.
14684         (regcache::restore): Move from private to public.
14685         Remove the friend declaration of regcache_cpy.
14686         (regcache_cpy): Remove declaration.
14687
14688 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14689
14690         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14691         parameter type to 'readable_regcache *'.
14692         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14693         * arm-tdep.c (arm_neon_quad_read): Likewise.
14694         (arm_pseudo_read): Likewise.
14695         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14696         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14697         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14698         * gdbarch.c: Re-generated.
14699         * gdbarch.h: Re-generated.
14700         * gdbarch.sh (pseudo_register_read): Change parameter type to
14701         'readable_regcache *'.
14702         (pseudo_register_read_value): Likewise.
14703         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14704         (h8300_pseudo_register_read): Likewise.
14705         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14706         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14707         (i386_pseudo_register_read_into_value): Likewise.
14708         (i386_pseudo_register_read_value): Likewise.
14709         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14710         declaration.
14711         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14712         * m32c-tdep.c (m32c_raw_read): Likewise.
14713         (m32c_read_flg): Likewise.
14714         (m32c_banked_register): Likewise.
14715         (m32c_banked_read): Likewise.
14716         (m32c_sb_read): Likewise.
14717         (m32c_part_read): Likewise.
14718         (m32c_cat_read): Likewise.
14719         (m32c_r3r2r1r0_read): Likewise.
14720         (m32c_pseudo_register_read): Likewise.
14721         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14722         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14723         (mep_pseudo_cr64_read): Likewise.
14724         (mep_pseudo_register_read): Likewise.
14725         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14726         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14727         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14728         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14729         (regcache::cooked_read): Likewise.
14730         (regcache::cooked_read_value): Likewise.
14731         (regcache_cooked_read_signed):
14732         (regcache::cooked_read): Likewise.
14733         * regcache.h (readable_regcache): New class.
14734         (regcache): Inherit readable_regcache.  Move some methods to
14735         readable_regcache.
14736         * rl78-tdep.c (rl78_pseudo_register_read): Change
14737         parameter type to 'readable_regcache *'.
14738         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14739         (e500_pseudo_register_read): Change parameter type to
14740         'readable_regcache *'.
14741         (dfp_pseudo_register_read): Likewise.
14742         (vsx_pseudo_register_read): Likewise.
14743         (efpr_pseudo_register_read): Likewise.
14744         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14745         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14746         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14747         (sh64_pseudo_register_read): Likewise.
14748         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14749         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14750         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14751         (spu_pseudo_register_read): Likewise.
14752         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14753         (xtensa_pseudo_register_read): Likewise.
14754
14755 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14756
14757         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14758         (regcache::arch): Move it to reg_buffer::arch.
14759         (regcache::register_buffer): Likewise.
14760         (regcache::assert_regnum): Likewise.
14761         (regcache::num_raw_registers): Likewise.
14762         * regcache.h (reg_buffer): New class.
14763         (regcache): Inherit reg_buffer.
14764
14765 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14766
14767         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14768         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14769
14770 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14771
14772         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14773
14774 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14775
14776         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14777         (SFILES): Remove common/*.c files.
14778         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14779         * common/common.host: Add common reference.
14780         * configure.ac: Likewise.
14781         * configure: Regenerate.
14782
14783 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14784
14785         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14786         (block_initialize_namespace): Use new.
14787         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14788         (dwarf2_free_objfile): Use delete.
14789         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14790         (copy_type_recursive): Use new.
14791         * gdb_obstack.h (allocate_on_obstack): New.
14792
14793 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14794
14795         PR gdb/22849
14796         * inferior.c (exit_inferior_1): Reset inf->control.
14797
14798 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14799
14800         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14801         declaration.
14802
14803 2018-02-14  Pedro Alves  <palves@redhat.com>
14804
14805         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14806         frame_cleanup_after_sniffer on exception.
14807
14808 2018-02-14  Tom Tromey  <tom@tromey.com>
14809
14810         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14811         const.
14812         (solib_bfd_open): Make pathname const.
14813         * solib.c (solib_bfd_open): Make pathname const.
14814         * solib-spu.c (spu_bfd_fopen): Make name const.
14815         (spu_bfd_open): Make pathname const.
14816         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14817         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14818
14819 2018-02-14  Tom Tromey  <tom@tromey.com>
14820
14821         * symfile.c (symfile_bfd_open): Update.
14822         * source.h (openp, source_full_path_of, find_and_open_source):
14823         Change argument type to unique_xmalloc_ptr.
14824         * source.c (openp): Take a unique_xmalloc_ptr.
14825         (source_full_path_of, find_and_open_source): Likewise.
14826         (open_source_file, symtab_to_fullname): Update.
14827         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14828         unique_xmalloc_ptr.
14829         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14830         (exec_file_find): Update.
14831         * psymtab.c (psymtab_to_fullname): Update.
14832         * nto-tdep.h (nto_find_and_open_solib): Update.
14833         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14834         unique_xmalloc_ptr.
14835         * exec.c (exec_file_attach): Update.
14836         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14837         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14838
14839 2018-02-14  Tom Tromey  <tom@tromey.com>
14840
14841         * solib.c: Include source.h.
14842         * nto-tdep.c: Include source.h.
14843         * mi/mi-cmd-env.c: Include source.h.
14844         * infcmd.c: Include source.h.
14845         * exec.c: Include source.h.
14846         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14847         (add_path, directory_switch, source_path, init_source_path): Move
14848         declarations...
14849         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14850         (add_path, directory_switch, source_path, init_source_path):
14851         ...here.
14852
14853 2018-02-14  Tom Tromey  <tom@tromey.com>
14854
14855         * solist.h (exec_file_find, solib_find): Return
14856         unique_xmalloc_ptr.
14857         (solib_bfd_fopen): Take a const char *.
14858         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14859         (exec_file_find, solib_find): Likewise.
14860         (solib_bfd_fopen): Do not take ownership of "pathname".
14861         (solib_bfd_open): Use unique_xmalloc_ptr.
14862         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14863         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14864         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14865         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14866
14867 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14868
14869         * ada-lang.c (name_match_type_from_name): Remove reference to
14870         ada_name_for_lookup in function's documentation.
14871         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14872
14873 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14874
14875         * defs.h (enum openp_flags): New enum.
14876         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14877         Move to enum openp_flags.
14878         (openp_flags): New enum flags.
14879         (openp): Change parameter type to openp_flags.
14880         * source.c (openp): Change parameter type to openp_flags.
14881         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14882         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14883
14884 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14885
14886         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14887         per-command.
14888
14889 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14890
14891         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14892         into...
14893         (class dwarf2_queue_guard): ...the destructor of this new class.
14894         (dw2_do_instantiate_symtab): Create instance of the new class
14895         dwarf2_queue_guard, remove cleanup.
14896
14897 2018-02-09  Tom Tromey  <tom@tromey.com>
14898
14899         * source.c (find_source_lines): Don't reference past the end of
14900         the vector.
14901
14902 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14903
14904         * remote.c (remote_btrace_maybe_reopen): Change error message.
14905         * btrace.c (btrace_enable): Likewise.
14906         (parse_xml_btrace): Likewise.
14907         (parse_xml_btrace_conf): Likewise.
14908
14909 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14910
14911         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14912         (linux_enable_pt, linux_enable_bts): Call
14913         diagnose_perf_event_open_fail.
14914
14915 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14916
14917         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14918         Remove parameter and change return type.  Update callers.  Move it.
14919         (linux_enable_bts, linux_enable_pt): Improve error message.
14920         (linux_enable_pt): Remove zero buffer size check.
14921         (linux_enable_btrace): Improve error messages.  Remove NULL return
14922         check.
14923
14924 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14925
14926         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14927         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14928         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14929         (linux_supports_pt, linux_supports_btrace): Remove.
14930         (linux_enable_bts): Call cpu_supports_bts.
14931         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14932         * remote.c (remote_supports_btrace): Remove.
14933         (init_remote_ops): Remove remote_supports_btrace.
14934         * target-delegates.c: Regenerated.
14935         * target.c (target_supports_btrace): Remove.
14936         * target.h (target_ops) <to_supports_btrace>: Remove
14937         (target_supports_btrace): Remove.
14938         * x86-linux-nat.c (x86_linux_create_target): Remove
14939         linux_supports_btrace.
14940
14941 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14942
14943         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14944         btrace failed.
14945         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14946         exception and use message in own exception.
14947
14948 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14949
14950         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14951         (perf_event_pt_event_type): Use gdb_file_up.
14952         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14953         scoped_fd, and scoped_mmap.
14954
14955 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14956
14957         * common/scoped_mmap.h: New.
14958         * unittests/scoped_mmap-selftest.c: New.
14959         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14960         unittests/scoped_mmap-selftest.c.
14961
14962 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14963
14964         * common/scoped_fd.h: New.
14965         * unittests/scoped_fd-selftest.c: New.
14966         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14967         unittests/scoped_fd-selftest.c.
14968
14969 2018-02-09  Tom Tromey  <tom@tromey.com>
14970
14971         * auto-load.c (auto_load_section_scripts): Use
14972         gdb::unique_xmalloc_ptr.
14973
14974 2018-02-09  Tom Tromey  <tom@tromey.com>
14975
14976         * auto-load.c (execute_script_contents): Use std::string.
14977
14978 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14979
14980         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14981         Python function, rather than a new command.
14982
14983 2018-02-08  Tom Tromey  <tom@tromey.com>
14984
14985         * solib.c (solib_find_1): Use std::string.
14986         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14987
14988 2018-02-08  Tom Tromey  <tom@tromey.com>
14989
14990         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14991
14992 2018-02-08  Tom Tromey  <tom@tromey.com>
14993
14994         * source.c (find_source_lines): Use gdb::def_vector.
14995
14996 2018-02-08  Tom Tromey  <tom@tromey.com>
14997
14998         * macrocmd.c (struct temporary_macro_definition): New.
14999         (macro_define_command): Use temporary_macro_definition.  Remove
15000         cleanups.
15001         (free_macro_definition_ptr): Remove.
15002
15003 2018-02-08  Tom Tromey  <tom@tromey.com>
15004
15005         * macroexp.c (maybe_expand): Use std::string.
15006
15007 2018-02-08  Tom Tromey  <tom@tromey.com>
15008
15009         * macroexp.c (struct macro_buffer): Add initializers for some
15010         members.
15011         (init_buffer, init_shared_buffer, free_buffer)
15012         (free_buffer_return_text): Remove.
15013         (macro_buffer): New constructors.
15014         (~macro_buffer): New destructor.
15015         (macro_buffer::set_shared): New method.
15016         (macro_buffer::resize_buffer, macro_buffer::appendc)
15017         (macro_buffer::appendmem): Now methods, not free functions.
15018         (set_token, append_tokens_without_splicing, stringify)
15019         (macro_stringify): Update.
15020         (gather_arguments): Change return type.  Remove argc_p argument,
15021         add args_ptr argument.  Use std::vector.
15022         (substitute_args): Remove argc argument.  Accept std::vector.
15023         (expand): Update.  Use std::vector.
15024         (scan, macro_expand, macro_expand_next): Update.
15025
15026 2018-02-08  Tom Tromey  <tom@tromey.com>
15027
15028         * symtab.c (default_collect_symbol_completion_matches_break_on):
15029         Use unique_xmalloc_ptr.
15030         * macroscope.h: (sal_macro_scope, user_macro_scope)
15031         (default_macro_scope): Return unique_xmalloc_ptr.
15032         * macroscope.c (sal_macro_scope, user_macro_scope)
15033         (default_macro_scope): Return unique_xmalloc_ptr.
15034         * macroexp.h (macro_expand, macro_expand_once): Return
15035         unique_xmalloc_ptr.
15036         * macroexp.c (macro_expand, macro_expand_once): Return
15037         unique_xmalloc_ptr.
15038         * macrocmd.c (macro_expand_command, macro_expand_once_command)
15039         (info_macro_command, info_macros_command): Use
15040         unique_xmalloc_ptr.
15041         * compile/compile-c-support.c (write_macro_definitions): Use
15042         unique_xmalloc_ptr.
15043         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
15044
15045 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
15046
15047         * value.c (value_static_field): Assign field type instead of
15048         containing type when returning an optimized out value.
15049
15050 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15051
15052         * ft32-tdep.c (ft32_read_pc): Remove.
15053         (ft32_write_pc): Remove.
15054         (ft32_gdbarch_init): Update.
15055         * m32r-tdep.c (m32r_read_pc): Remove.
15056         (m32r_gdbarch_init): Update.
15057         * mep-tdep.c (mep_read_pc): Remove.
15058         (mep_gdbarch_init): Update.
15059         * microblaze-tdep.c (microblaze_write_pc): Remove.
15060         (microblaze_gdbarch_init): Update.
15061         * mn10300-tdep.c (mn10300_read_pc): Remove.
15062         (mn10300_write_pc): Remove.
15063         (mn10300_gdbarch_init): Update.
15064         * moxie-tdep.c (moxie_read_pc): Remove.
15065         (moxie_write_pc): Remove.
15066         (moxie_gdbarch_init): Update.
15067
15068 2018-02-06  Yao Qi  <yao.qi@linaro.org>
15069
15070         * expprint.c (print_subexp_standard): Handle
15071         OP_F77_UNDETERMINED_ARGLIST.
15072         (dump_subexp_body_standard): Likewise.
15073
15074 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
15075
15076         * target-descriptions.c (tdesc_element_visitor) Add empty
15077         implementations.
15078         (tdesc_type): Move make_gdb_type from here.
15079         (tdesc_type_builtin): Likewise.
15080         (tdesc_type_vector): Likewise.
15081         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
15082         (make_gdb_type_struct): Move from tdesc_type_with_fields.
15083         (make_gdb_type_union): Likewise.
15084         (make_gdb_type_flags): Likewise.
15085         (make_gdb_type_enum): Likewise.
15086         (make_gdb_type): New function.
15087         (tdesc_register_type): Use static make_gdb_type.
15088
15089 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
15090
15091         * infcmd.c (default_print_one_register_info): Align natural-format
15092         column values consistently one under another.
15093         (pad_to_column): New function.
15094
15095 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
15096
15097         * dwarf2read.c (dwarf2_physname): Move commment.
15098
15099 2018-02-01  Leszek Swirski  <leszeks@google.com>
15100
15101         * varobj.c (varobj_formatted_print_options): Allow recursive
15102         pretty printing if pretty printing is enabled.
15103
15104 2018-02-01  Leszek Swirski  <leszeks@google.com>
15105
15106         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
15107         names after a structop as a filename.
15108
15109 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15110
15111         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
15112         (arm_record_coproc_data_proc): Likewise.
15113
15114 2018-02-01  Yao Qi  <yao.qi@linaro.org>
15115
15116         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
15117
15118 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
15119
15120         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
15121         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
15122
15123 2018-01-31  Pedro Alves  <palves@redhat.com>
15124
15125         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
15126         * inflow.c (child_terminal_save_inferior): Wrap reference to
15127         tcgetpgrp in HAVE_TERMIOS_H.
15128         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
15129         _WIN32.
15130         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
15131         always iterate over all inferiors.
15132         (gdbsim_cntrl_c): Adjust.
15133         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
15134
15135 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15136
15137         * gdbtypes.c (lookup_array_range_type): Make sure the array's
15138         index type is objfile-owned if the element type is as well.
15139
15140 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
15141
15142         GDB 8.1 released.
15143
15144 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15145
15146         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
15147         "features/s390x-linux64.c".
15148         (_initialize_s390_linux_tdep): Remove initialization of tdescs
15149         s390_linux32 and s390x_linux64.
15150         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
15151         default tdesc.
15152         * s390-tdep.c: Include "features/s390-linux32.c" and
15153         "features/s390x-linux64.c".
15154         (s390_tdesc_valid): Add check for tdesc_has_registers.
15155         (s390_gdbarch_init): Make sure there is always a valid tdesc.
15156         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
15157         tdesc_s390x_linux64.
15158         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15159         tdesc_s390x_linux64 to...
15160         * s390-tdep.h: ...here.
15161
15162 2018-01-30  Pedro Alves  <palves@redhat.com>
15163
15164         PR gdb/13211
15165         * config.in, configure: Regenerate.
15166         * configure.ac: Check for getpgid.
15167         * go32-nat.c (go32_pass_ctrlc): New.
15168         (go32_target): Install it.
15169         * inf-child.c (inf_child_target): Install
15170         child_terminal_save_inferior, child_pass_ctrlc and
15171         child_interrupt.
15172         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15173         (inf_ptrace_target): No longer install it.
15174         * infcmd.c (interrupt_target_1): Adjust.
15175         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15176         (child_interrupt): Declare.
15177         (inferior::terminal_state): New.
15178         * inflow.c (struct terminal_info): Update comments.
15179         (inferior_process_group): Delete.
15180         (terminal_is_ours): Delete.
15181         (gdb_tty_state): New.
15182         (child_terminal_init): Adjust.
15183         (is_gdb_terminal, sharing_input_terminal_1)
15184         (sharing_input_terminal): New functions.
15185         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15186         Set the process's actual process group in the foreground if
15187         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15188         mark terminal as the inferior's if not sharing GDB's terminal.
15189         Don't check attach_flag.
15190         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15191         pass down a target_terminal_state.
15192         (child_terminal_save_inferior): New, factored out from ...
15193         (child_terminal_ours_1): ... this.  Handle
15194         target_terminal_state::is_ours_for_output.
15195         (child_interrupt, child_pass_ctrlc): New.
15196         (inflow_inferior_exit): Clear the inferior's terminal_state.
15197         (copy_terminal_info): Copy the inferior's terminal state.
15198         (_initialize_inflow): Remove reference to terminal_is_ours.
15199         * inflow.h (inferior_process_group): Delete.
15200         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15201         * procfs.c (procfs_target): Don't install procfs_interrupt.
15202         (procfs_interrupt): Delete.
15203         * remote.c (remote_serial_quit_handler): Adjust.
15204         (remote_interrupt): Remove ptid parameter.  Adjust.
15205         * target-delegates.c: Regenerate.
15206         * target.c: Include "terminal.h".
15207         (target_terminal::terminal_state): Rename to ...
15208         (target_terminal::m_terminal_state): ... this.
15209         (target_terminal::init): Adjust.
15210         (target_terminal::inferior): Adjust to per-inferior
15211         terminal_state.
15212         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15213         (target_terminal::ours, target_terminal::ours_for_output): Use
15214         target_terminal_is_ours_kind.
15215         (target_interrupt): Remove ptid parameter.  Adjust.
15216         (default_target_pass_ctrlc): Adjust.
15217         * target.h (target_ops::to_terminal_save_inferior): New field.
15218         (target_ops::to_interrupt): Remove ptid_t parameter.
15219         (target_interrupt): Remove ptid_t parameter.  Update comment.
15220         (target_pass_ctrlc): Update comment.
15221         * target/target.h (target_terminal_state): New scoped enum,
15222         factored out of ...
15223         (target_terminal::terminal_state): ... here.
15224         (target_terminal::inferior): Update comments.
15225         (target_terminal::restore_inferior): New.
15226         (target_terminal::is_inferior, target_terminal::is_ours)
15227         (target_terminal::is_ours_for_output): Adjust.
15228         (target_terminal::scoped_restore_terminal_state): Adjust to
15229         rename, and call restore_inferior() instead of inferior().
15230         (target_terminal::scoped_restore_terminal_state::m_state): Change
15231         type.
15232         (target_terminal::terminal_state): Rename to ...
15233         (target_terminal::m_terminal_state): ... this and change type.
15234
15235 2018-01-30  Pedro Alves  <palves@redhat.com>
15236
15237         * linux-nat.c (wait_for_signal): New function.
15238         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15239         directly.
15240         (async_terminal_is_ours)
15241         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15242         (linux_nat_add_target): Don't override
15243         to_terminal_inferior/to_terminal_ours.
15244
15245 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15246
15247         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15248
15249 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15250
15251         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15252         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15253         dwarf2_per_objfile_free here.
15254         (dwarf2_per_objfile_free): Remove.
15255         (_initialize_dwarf2_read): Don't register
15256         dwarf2_per_objfile_free as a registry cleanup.
15257
15258 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15259
15260         Avoid compilation errors in MinGW native builds
15261
15262         The error is triggered by including python-internal.h, and the
15263         error message is:
15264
15265              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15266                       from build-gnulib/import/math.h:27,
15267                       from d:/usr/Python26/include/pyport.h:235,
15268                       from d:/usr/Python26/include/Python.h:58,
15269                       from python/python-internal.h:94,
15270                       from python/py-arch.c:24:
15271              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15272         using ::hypot;
15273                 ^~~~~
15274
15275         This happens because Python headers define 'hypot' to expand t
15276         '_hypot' in the Windows builds.
15277         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15278         'hypoth'.  This avoids a compilation error.
15279
15280 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15281
15282         * MAINTAINERS (Write After Approval): Fix ordering.
15283
15284 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15285
15286         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15287
15288 2018-01-26  Alan Modra  <amodra@gmail.com>
15289
15290         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15291         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15292         Remove nop.  Make const.  Comment.
15293         (powerpc32_plt_stub_so_2): New.
15294         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15295         Correct count.  Update uses.
15296         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15297         Move common code reading PLT entry word.  Correct
15298         powerpc32_plt_stub PLT address calculation.
15299         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15300         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15301         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15302         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15303         (ppc64_standard_linkage8): Likewise.
15304         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15305         Correct insns description.
15306         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15307
15308 2018-01-24  Pedro Alves  <palves@redhat.com>
15309
15310         GCC PR libstdc++/83906
15311         * gdbtypes.c (operator==(const dynamic_prop &,
15312         const dynamic_prop &)): New.
15313         (operator==(const range_bounds &, const range_bounds &)): New.
15314         (check_types_equal): Use them instead of memcmp.
15315         * gdbtypes.h (operator==(const dynamic_prop &,
15316         const dynamic_prop &)): Declare.
15317         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15318         (operator==(const range_bounds &, const range_bounds &)): Declare.
15319         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15320
15321 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15322
15323         * s390-linux-tdep.c (s390_record_address_mask)
15324         (s390_record_calc_disp_common, s390_record_calc_disp)
15325         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15326         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15327         (s390_process_record): Move to s390-tdep.c.
15328         (s390_linux_init_abi_any): Adjust.
15329         * s390-tdep.c (s390_record_address_mask)
15330         (s390_record_calc_disp_common, s390_record_calc_disp)
15331         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15332         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15333         (s390_process_record): Moved from s390-linux-tdep.c
15334         (s390_gdbarch_init): Adjust.
15335
15336 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15337
15338         * s390-linux-nat.c (s390-tdep.h): New include.
15339         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15340         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15341         (ALLDEPFILES): Add s390-tdep.c.
15342         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15343         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15344         * s390-tdep.h: ...this.  New file.
15345         * s390-linux-tdep.c (s390-tdep.h): New include.
15346         (_initialize_s390_tdep): Rename to...
15347         (_initialize_s390_linux_tdep): ...this and adjust.
15348         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15349         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15350         s390-tdep.h.
15351         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15352         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15353         (s390_is_partial_instruction, s390_software_single_step)
15354         (is_non_branch_ril, s390_displaced_step_copy_insn)
15355         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15356         (s390_prologue_data, s390_addr, s390_store, s390_load)
15357         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15358         (s390_register_call_saved, s390_guess_tracepoint_registers)
15359         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15360         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15361         (s390_pseudo_register_name, s390_pseudo_register_type)
15362         (s390_pseudo_register_read, s390_pseudo_register_write)
15363         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15364         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15365         (s390_addr_bits_remove, s390_address_class_type_flags)
15366         (s390_address_class_type_flags_to_name)
15367         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15368         (s390_function_arg_float, s390_function_arg_vector)
15369         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15370         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15371         (s390_frame_align, s390_register_return_value, s390_return_value)
15372         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15373         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15374         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15375         (s390_trad_frame_prev_register, s390_unwind_cache)
15376         (s390_prologue_frame_unwind_cache)
15377         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15378         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15379         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15380         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15381         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15382         (s390_frame_base_address, s390_local_base_address)
15383         (s390_frame_base, s390_gcc_target_options)
15384         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15385         (s390_validate_reg_range, s390_tdesc_valid)
15386         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15387         * s390-tdep.c: ...this.  New file.
15388
15389 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15390
15391         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15392         (s390_process_record, s390_gdbarch_tdep_alloc)
15393         (s390_linux_init_abi_any): Use/set new hook.
15394
15395 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15396
15397         * s390-linux-tdep.c (osabi.h): New include.
15398         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15399         (s390_linux_init_abi_any): New functions.
15400         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15401
15402 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15403
15404         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15405         tdesc_has_registers check
15406
15407 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15408
15409         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15410         (s390_validate_reg_range): New macro.
15411         (s390_gdbarch_init): Adjust.
15412
15413 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15414
15415         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15416         (s390_gdbarch_tdep_alloc): Adjust.
15417         (s390_gdbarch_init): Adjust.
15418
15419 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15420
15421         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15422         <have_tdb>: Change type to bool.
15423         (s390_gdbarch_tdep_alloc): Adjust.
15424         (s390_gdbarch_init): Adjust.
15425
15426 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15427
15428         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15429         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15430         (s390_gdbarch_tdep_alloc): New function.
15431         (s390_gdbarch_init): Allocate tdep at start and use its fields
15432         instead of separate variables.
15433
15434 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15435
15436         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15437         when looking for cached gdbarch and add comment for remaining.
15438
15439 2018-01-22  Pedro Alves  <palves@redhat.com>
15440             Sergio Durigan Junior  <sergiodj@redhat.com>
15441
15442         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15443         case.
15444
15445 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15446
15447         * MAINTAINERS: Update my company e-mail address.
15448
15449 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15450
15451         * regcache.c (cooked_write_test): New function.
15452         (_initialize_regcache): Register the test.
15453
15454 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15455
15456         * ia64-tdep.c (ia64_pseudo_register_read): Call
15457         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15458         * m32c-tdep.c (m32c_cat_read): Likewise.
15459         (m32c_r3r2r1r0_read): Likewise.
15460         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15461         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15462
15463 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15464
15465         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15466         method raw_read instead of regcache_raw_read.
15467         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15468         * arm-tdep.c (arm_neon_quad_read): Likewise.
15469         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15470         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15471         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15472         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15473         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15474         (i386_pseudo_register_read_into_value): Likewise.
15475         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15476         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15477         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15478         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15479         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15480         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15481         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15482         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15483         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15484
15485 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15486
15487         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15488         * configure.tgt: Remove target mt.
15489         * mt-tdep.c: Remove.
15490         * regcache.c (cooked_read_test): Remove the check for mt.
15491
15492 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15493
15494         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15495         instead of gdbarch_pseudo_register_read_value.
15496
15497 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15498
15499         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15500         language is Ada.
15501
15502 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15503
15504         * linespec.c (create_sals_line_offset): Remove code that preserved
15505         the symtab_and_line's line number.
15506
15507 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15508
15509         * varobj.c (varobj_create): Don't set valid_block when creating a
15510         floating varobj.
15511
15512 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15513
15514         * varobj.c (varobj_create): Remove out of date comment.
15515
15516 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15517
15518         PR mi/20395
15519         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15520         updating innermost block.
15521         * parse.c (innermost_block_tracker::update): Take extra type
15522         parameter, and check types match before updating innermost block.
15523         (write_dollar_variable): Update innermost block for registers.
15524         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15525         (innermost_block_tracker::innermost_block_tracker): Initialise
15526         m_types member.
15527         (innermost_block_tracker::reset): Take type parameter.
15528         (innermost_block_tracker::update): Take type parameter, and pass
15529         type through as needed.
15530         (innermost_block_tracker::m_types): New member.
15531         * varobj.c (varobj_create): Pass type when reseting innermost
15532         block.
15533
15534 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15535
15536         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15537         * ada-lang.c (resolve_subexp): Likewise.
15538         * breakpoint.c (set_breakpoint_condition) Likewise.
15539         (watch_command_1) Likewise.
15540         * c-exp.y (variable): Likewise.
15541         * d-exp.y (PrimaryExpression): Likewise.
15542         * f-exp.y (variable): Likewise.
15543         * go-exp.y (variable): Likewise.
15544         * m2-exp.y (variable): Likewise.
15545         * objfiles.c (objfile::~objfile): Likewise.
15546         * p-exp.y (variable): Likewise.
15547         * parse.c (innermost_block): Change type.
15548         * parser-defs.h (class innermost_block_tracker): New.
15549         (innermost_block): Change to innermost_block_tracker.
15550         * printcmd.c (display_command): Switch to innermost_block API.
15551         (do_one_display): Likewise.
15552         * rust-exp.y (do_one_display): Likewise.
15553         * symfile.c (clear_symtab_users): Likewise.
15554         * varobj.c (varobj_create): Switch to innermost_block API, replace
15555         use of innermost_block with block stored on varobj object.
15556
15557 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15558
15559         * expression.h (innermost_block): Remove declaration.
15560         * varobj.c: Add 'parser-defs.h' include.
15561
15562 2018-01-19  Tom Tromey  <tom@tromey.com>
15563
15564         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15565         symbols in the static and global blocks.
15566
15567 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15568
15569         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15570         gdb_ptrace.h, and move including gdb_wait.h ...
15571         * nat/linux-ptrace.h: ... to here.
15572
15573 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15574
15575         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15576         inf_ptrace_detach_success.
15577         (inf_ptrace_detach_success): Add inferior parameter, use it
15578         instead of inferior_ptid, pass it to detach_inferior.
15579         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15580         parameter.
15581         * inferior.c (detach_inferior): Add overload that takes an
15582         inferior object.
15583         * inferior.h (detach_inferior): Likewise.
15584         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15585         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15586         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15587
15588 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15589
15590         * target.h (struct target_ops) <to_detach>: Add inferior
15591         parameter.
15592         (target_detach): Likewise.
15593         * target.c (dispose_inferior): Pass inferior down.
15594         (target_detach): Pass inferior down.  Assert that it is equal to
15595         the current inferior.
15596         * aix-thread.c (aix_thread_detach): Pass inferior down.
15597         * corefile.c (core_file_command): Pass current_inferior() down.
15598         * corelow.c (core_detach): Add inferior parameter.
15599         * darwin-nat.c (darwin_detach): Likewise.
15600         * gnu-nat.c (gnu_detach): Likewise.
15601         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15602         * infcmd.c (detach_command): Pass current_inferior() down to
15603         target_detach.
15604         * infrun.c (follow_fork_inferior): Pass parent_inf to
15605         target_detach.
15606         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15607         target_detach.
15608         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15609         * linux-thread-db.c (thread_db_detach): Likewise.
15610         * nto-procfs.c (procfs_detach): Likewise.
15611         * procfs.c (procfs_detach): Likewise.
15612         * record.c (record_detach): Likewise.
15613         * record.h (struct inferior): Forward-declare.
15614         (record_detach): Add inferior parameter.
15615         * remote-sim.c (gdbsim_detach): Likewise.
15616         * remote.c (remote_detach_1): Likewise.
15617         (remote_detach): Likewise.
15618         (extended_remote_detach): Likewise.
15619         * sol-thread.c (sol_thread_detach): Likewise.
15620         * target-debug.h (target_debug_print_inferior_p): New macro.
15621         * target-delegates.c: Re-generate.
15622         * top.c (kill_or_detach): Pass inferior down to target_detach.
15623         * windows-nat.c (windows_detach): Add inferior parameter.
15624
15625 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15626
15627         * target.h (struct target_ops) <to_detach>: Remove args
15628         parameter.
15629         (target_detach): Likewise.
15630         * target.c (dispose_inferior): Adjust.
15631         (target_detach): Remove args parameter, adjust.
15632         * aix-thread.c (aix_thread_detach): Adjust.
15633         * corefile.c (core_file_command): Adjust.
15634         * corelow.c (core_detach): Adjust.
15635         * darwin-nat.c (darwin_detach): Adjust.
15636         * gnu-nat.c (gnu_detach): Adjust.
15637         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15638         * infcmd.c (detach_command): Adjust
15639         * infrun.c (follow_fork_inferior): Adjust.
15640         (handle_vfork_child_exec_or_exit): Adjust.
15641         * linux-fork.c (linux_fork_detach): Remove args parameter.
15642         * linux-fork.h (linux_fork_detach): Likewise.
15643         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15644         * linux-thread-db.c (thread_db_detach): Likewise.
15645         * nto-procfs.c (procfs_detach): Likewise.
15646         * procfs.c (procfs_detach): Likewise.
15647         (do_detach): Remove signo parameter.
15648         * record.c (record_detach): Remove args parameter.
15649         * record.h (record_detach): Likewise.
15650         * remote-sim.c (gdbsim_detach): Likewise.
15651         * remote.c (remote_detach_1): Likewise.
15652         (remote_detach): Likewise.
15653         (extended_remote_detach): Likewise.
15654         * sol-thread.c (sol_thread_detach): Likewise.
15655         * target-delegates.c: Re-generate.
15656         * top.c (struct qt_args) <args>: Remove field.
15657         (kill_or_detach): Don't pass args.
15658         (quit_force): Don't set args.
15659         * windows-nat.c (windows_detach): Remove args parameter.
15660
15661 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15662
15663         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15664         (arm_linux_init_abi): Install it.
15665
15666 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15667
15668         * osabi.c (gdb_osabi_names): Extend the regexp for
15669         arm-linux-gnueabihf.
15670
15671 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15672
15673         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15674         m_abbrevs.
15675         (abbrev_table::add_abbrev): Update.
15676         (abbrev_table::lookup_abbrev): Update.
15677
15678 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15679
15680         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15681
15682 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15683
15684         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15685         to "std::string".
15686
15687 2018-01-17  Tom Tromey  <tom@tromey.com>
15688
15689         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15690
15691 2018-01-17  Tom Tromey  <tom@tromey.com>
15692
15693         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15694         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15695         (create_array_type_with_stride): Update.
15696         * dwarf2read.c (set_die_type): Update.
15697
15698 2018-01-17  Tom Tromey  <tom@tromey.com>
15699
15700         * dwarf2read.c (delayed_method_info): Remove typedef.
15701         (dwarf2_cu::method_info): Now a std::vector.
15702         (add_to_method_list): Update.
15703         (free_delayed_list): Remove.
15704         (compute_delayed_physnames): Update.
15705         (process_full_comp_unit, process_full_type_unit): Clear the method
15706         list.  Remove cleanups.
15707         (psymtab_include_file_name): Add name_holder parameter.  Use
15708         unique_xmalloc_ptr.
15709         (dwarf_decode_lines): Update.
15710
15711 2018-01-17  Tom Tromey  <tom@tromey.com>
15712             Simon Marchi  <simon.marchi@ericsson.com>
15713
15714         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15715         (dwarf2_per_objfile::free_cached_comp_units)
15716         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15717         (init_cutu_and_read_dies_no_follow): Update.
15718         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15719         (dwarf2_cu::~dwarf2_cu): New.
15720         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15721         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15722
15723 2018-01-17  Tom Tromey  <tom@tromey.com>
15724             Simon Marchi  <simon.marchi@ericsson.com>
15725
15726         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15727         (struct die_reader_specs) <abbrev_table>: New member.
15728         (struct abbrev_table): Add constructor.
15729         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15730         <abbrev_obstack>: Now an auto_obstack.
15731         (abbrev_table_up): New typedef.
15732         (init_cu_die_reader): Add abbrev_table parameter.
15733         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15734         Add result_dwo_abbrev_table.
15735         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15736         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15737         Update.
15738         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15739         parameter.
15740         (skip_children): Update.
15741         (abbrev_table::alloc_abbrev): Rename from
15742         abbrev_table_alloc_abbrev.
15743         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15744         (abbrev_table::lookup_abbrev): Rename from
15745         abbrev_table_lookup_abbrev.
15746         (abbrev_table_read_table): Return abbrev_table_up.
15747         (abbrev_table_free, abbrev_table_free_cleanup)
15748         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15749         (load_partial_dies): Update.
15750
15751 2018-01-17  Tom Tromey  <tom@tromey.com>
15752
15753         * dwarf2read.c (dwarf2_compute_name): Update comment.
15754         (read_func_scope, read_variable): Update.
15755         (new_symbol): Remove.
15756         (new_symbol_full): Rename to new_symbol.
15757
15758 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15759
15760         PR gdb/16577
15761         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15762         a warning instead of throwing an error, set section size to 0 and return
15763         NULL.
15764         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15765
15766 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15767
15768         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15769         std::string.
15770         (linux_ptrace_attach_fail_reason_string): Likewise.
15771         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15772         Likewise.
15773         (linux_ptrace_attach_fail_reason_string): Likewise.
15774         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15775
15776 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15777
15778         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15779
15780 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15781
15782         PR gdb/21559
15783         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15784         checking for fs_base/gs_base fields in struct user_regs_struct.
15785         * configure: Regenerate.
15786
15787 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15788
15789         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15790         function.
15791         (aarch64_linux_init_abi): Install it to gdbarch hook
15792         gcc_target_options.
15793
15794 2018-01-15  Pedro Alves  <palves@redhat.com>
15795
15796         * common/signals-state-save-restore.c
15797         (save_original_signals_state): Fix typos.
15798
15799 2017-01-12  Tom Tromey  <tom@tromey.com>
15800             Sergio Durigan Junior  <sergiodj@redhat.com>
15801
15802         * Makefile.in (install-only): Install gdb-add-index.
15803
15804 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15805
15806         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15807
15808 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15809
15810         * infrun.c (keep_going_pass_signal): Clear step-over info when
15811         insert_breakpoints fails.
15812
15813 2018-01-11  Pedro Alves  <palves@redhat.com>
15814
15815         PR gdb/22583
15816         * infrun.c (resume): Rename to ...
15817         (resume_1): ... this.
15818         (resume): Reimplement as wrapper around resume_1.
15819
15820 2018-01-11  Pedro Alves  <palves@redhat.com>
15821
15822         PR remote/22597
15823         * remote.c (remote_parse_stop_reply): Default to the last-set
15824         general thread instead of to 'magic_null_ptid'.
15825
15826 2018-01-10  Pedro Alves  <palves@redhat.com>
15827
15828         * language.h (language_get_symbol_name_matcher): Rename ...
15829         (get_symbol_name_matcher): ... this.
15830         * language.c (language_get_symbol_name_matcher): Ditto.
15831         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15832         callers adjusted.
15833
15834 2018-01-10  Pedro Alves  <palves@redhat.com>
15835
15836         PR gdb/22670
15837         * dwarf2read.c
15838         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15839         Adjust to use language_get_symbol_name_matcher instead of
15840         language_defn::la_get_symbol_name_matcher.
15841         * language.c (language_get_symbol_name_matcher): If in Ada mode
15842         and the lookup name is a verbatim match, return Ada's matcher.
15843         * language.h (language_get_symbol_name_matcher): Adjust comment.
15844         (ada_lookup_name_info::verbatim_p):: New method.
15845
15846 2018-01-10  Pedro Alves  <palves@redhat.com>
15847
15848         PR gdb/22670
15849         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15850         minsym's language is language_auto or language_cplus, pass down
15851         language_ada instead.
15852         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15853
15854 2018-01-10  Pedro Alves  <palves@redhat.com>
15855
15856         PR gdb/22670
15857         * minsyms.c (linkage_name_str): New function.
15858         (iterate_over_minimal_symbols): Use it.
15859
15860 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15861
15862         * NEWS: Document that 'info proc' now works on FreeBSD.
15863
15864 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15865
15866         * configure.ac: Check for kinfo_getfile in libutil.
15867         * configure: Regenerate.
15868         * config.in: Regenerate.
15869         * fbsd-nat.c: Include "fbsd-tdep.h".
15870         (fbsd_fetch_cmdline): New.
15871         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15872         rather than calling error.
15873         (fbsd_info_proc): New.
15874         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15875         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15876         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15877
15878 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15879
15880         * fbsd-nat.c (struct free_deleter): Remove.
15881         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15882
15883 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15884
15885         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15886         NULL for an empty pathname.
15887
15888 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15889
15890         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15891         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15892         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15893         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15894         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15895         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15896         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15897         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15898         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15899         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15900         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15901         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15902         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15903         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15904         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15905
15906 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15907
15908         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15909         (gnu_xfer_auxv): New function.
15910         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15911         TARGET_OBJECT_AUXV.
15912
15913 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15914             Simon Marchi  <simon.marchi@ericsson.com>
15915
15916         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15917         common/selftest.c.
15918         (COMMON_OBS): Remove selftest.o.
15919         * configure.ac: Append selftest-arch.c and common/selftest.c to
15920         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15921         * configure: Re-generated.
15922         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15923         GDB_SELF_TEST.
15924         (maintenance_info_selftests): Likewise.
15925
15926 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15927
15928         * ada-valprint.c (val_print_packed_array_elements): Use
15929         proper number of elements when printing an array indexed
15930         by an enumeration type.
15931
15932 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15933
15934         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15935         (dw2_get_file_names_reader): Adjust.
15936         (lookup_dwo_signatured_type): Adjust.
15937         (lookup_dwp_signatured_type): Adjust.
15938         (lookup_signatured_type): Adjust.
15939         (create_type_unit_group): Adjust.
15940         (get_type_unit_group): Adjust.
15941         (process_psymtab_comp_unit_reader): Adjust.
15942         (build_type_psymtabs_reader): Adjust.
15943         (scan_partial_symbols): Adjust.
15944         (add_partial_symbol): Adjust.
15945         (add_partial_subprogram): Adjust.
15946         (peek_die_abbrev): Adjust.
15947         (fixup_go_packaging): Adjust.
15948         (process_imported_unit_die): Adjust.
15949         (dwarf2_compute_name): Adjust.
15950         (dwarf2_physname): Adjust.
15951         (read_import_statement): Adjust.
15952         (handle_DW_AT_stmt_list): Adjust.
15953         (read_file_scope): Adjust.
15954         (read_func_scope): Adjust.
15955         (read_lexical_block_scope): Adjust.
15956         (read_call_site_scope): Adjust.
15957         (read_variable): Adjust.
15958         (dwarf2_rnglists_process): Adjust.
15959         (dwarf2_ranges_process): Adjust.
15960         (dwarf2_ranges_read): Adjust.
15961         (dwarf2_get_pc_bounds): Adjust.
15962         (dwarf2_record_block_ranges): Adjust.
15963         (dwarf2_add_field): Adjust.
15964         (dwarf2_add_member_fn): Adjust.
15965         (read_structure_type): Adjust.
15966         (process_structure_scope): Adjust.
15967         (read_enumeration_type): Adjust.
15968         (read_array_type): Adjust.
15969         (mark_common_block_symbol_computed): Adjust.
15970         (read_common_block): Adjust.
15971         (read_namespace_type): Adjust.
15972         (read_namespace): Adjust.
15973         (read_module_type): Adjust.
15974         (read_tag_pointer_type): Adjust.
15975         (read_tag_ptr_to_member_type): Adjust.
15976         (read_tag_string_type): Adjust.
15977         (read_subroutine_type): Adjust.
15978         (read_typedef): Adjust.
15979         (read_base_type): Adjust.
15980         (attr_to_dynamic_prop): Adjust.
15981         (read_subrange_type): Adjust.
15982         (read_unspecified_type): Adjust.
15983         (dwarf2_read_abbrevs): Adjust.
15984         (load_partial_dies): Adjust.
15985         (read_partial_die): Adjust.
15986         (find_partial_die): Adjust.
15987         (guess_partial_die_structure_name): Adjust.
15988         (fixup_partial_die): Adjust.
15989         (read_attribute_value): Adjust.
15990         (read_addr_index): Adjust.
15991         (read_addr_index_from_leb128): Adjust.
15992         (read_str_index): Adjust.
15993         (dwarf2_string_attr): Adjust.
15994         (get_debug_line_section): Adjust.
15995         (dwarf_decode_line_header): Adjust.
15996         (lnp_state_machine::check_line_address): Adjust.
15997         (dwarf_decode_lines_1): Adjust.
15998         (dwarf_decode_lines): Adjust.
15999         (dwarf2_start_symtab): Adjust.
16000         (var_decode_location): Adjust.
16001         (new_symbol_full): Adjust.
16002         (dwarf2_const_value_data): Adjust.
16003         (dwarf2_const_value_attr): Adjust.
16004         (dwarf2_const_value): Adjust.
16005         (die_type): Adjust.
16006         (die_containing_type): Adjust.
16007         (build_error_marker_type): Adjust.
16008         (lookup_die_type): Adjust.
16009         (guess_full_die_structure_name): Adjust.
16010         (anonymous_struct_prefix): Adjust.
16011         (determine_prefix): Adjust.
16012         (dwarf2_name): Adjust.
16013         (follow_die_ref_or_sig): Adjust.
16014         (follow_die_offset): Adjust.
16015         (follow_die_ref): Adjust.
16016         (follow_die_sig_1): Adjust.
16017         (follow_die_sig): Adjust.
16018         (get_signatured_type): Adjust.
16019         (get_DW_AT_signature_type): Adjust.
16020         (decode_locdesc): Adjust.
16021         (dwarf_decode_macros): Adjust.
16022         (cu_debug_loc_section): Adjust.
16023         (fill_in_loclist_baton): Adjust.
16024         (dwarf2_symbol_mark_computed): Adjust.
16025         (init_one_comp_unit): Don't assign
16026         dwarf2_cu::dwarf2_per_objfile.
16027         (set_die_type): Adjust.
16028
16029 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16030
16031         * dwarf2read.c (struct mapped_debug_names): Add constructor.
16032         <dwarf2_per_objfile>: New field.
16033         (dwarf2_per_objfile): Remove global.
16034         (get_dwarf2_per_objfile): New function.
16035         (set_dwarf2_per_objfile): New function.
16036         (dwarf2_build_psymtabs_hard): Change objfile parameter to
16037         dwarf2_per_objfile.
16038         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16039         (read_abbrev_offset): Likewise.
16040         (read_indirect_string): Likewise.
16041         (read_indirect_line_string): Likewise.
16042         (read_indirect_string_at_offset): Likewise.
16043         (read_indirect_string_from_dwz): Likewise.
16044         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16045         dwarf2_per_objfile.
16046         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16047         (create_all_comp_units): Change objfile parameter to
16048         dwarf2_per_objfile.
16049         (create_all_type_units): Likewise.
16050         (process_queue): Add dwarf2_per_objfile parameter.
16051         (read_and_check_comp_unit_head): Likewise.
16052         (lookup_dwo_unit_in_dwp): Likewise.
16053         (get_dwp_file): Likewise.
16054         (process_cu_includes): Likewise.
16055         (struct free_dwo_file_cleanup_data): New struct.
16056         (dwarf2_has_info): Use get_dwarf2_per_objfile and
16057         set_dwarf2_per_objfile.
16058         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
16059         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
16060         context, adjust calls.
16061         (dw2_instantiate_symtab): Likewise.
16062         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
16063         (dw2_get_cu): Likewise.
16064         (create_cu_from_index_list): Change objfile parameter to
16065         dwarf2_per_objfile.
16066         (create_cus_from_index_list): Get dwarf2_per_objfile from
16067         context, adjust calls.
16068         (create_cus_from_index): Likewise.
16069         (create_signatured_type_table_from_index): Change objfile
16070         parameter to dwarf2_per_objfile.
16071         (create_signatured_type_table_from_debug_names): Change objfile
16072         parameter to dwarf2_per_objfile.
16073         (create_addrmap_from_index): Likewise.
16074         (create_addrmap_from_aranges): Likewise.
16075         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
16076         (dw2_setup): Remove.
16077         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
16078         context.
16079         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
16080         get_dwarf2_per_objfile.
16081         (dw2_forget_cached_source_info): Likewise.
16082         (dw2_map_symtabs_matching_filename): Likewise.
16083         (struct dw2_symtab_iterator) <index>: Remove.
16084         <dwarf2_per_objfile>: New field.
16085         (dw2_symtab_iter_init): Replace index parameter with
16086         dwarf2_per_objfile.
16087         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
16088         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
16089         (dw2_print_stats): Likewise.
16090         (dw2_dump): Likewise.
16091         (dw2_expand_symtabs_for_function): Likewise.
16092         (dw2_expand_all_symtabs): Likewise.
16093         (dw2_expand_symtabs_with_fullname): Likewise.
16094         (dw2_expand_marked_cus): Replace index and objfile parameters
16095         with dwarf2_per_objfile.
16096         (dw_expand_symtabs_matching_file_matcher): Add
16097         dwarf2_per_objfile parameter and adjust calls.
16098         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
16099         adjust calls.
16100         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
16101         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
16102         adjust calls.
16103         (create_cus_from_debug_names_list): Replace objfile parameter
16104         with dwarf2_per_objfile and adjust calls.
16105         (create_cus_from_debug_names): Likewise.
16106         (dwarf2_read_debug_names): Likewise.
16107         (mapped_debug_names::namei_to_name): Adjust call.
16108         (dw2_debug_names_iterator::next): Likewise.
16109         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
16110         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
16111         (dw2_debug_names_dump): Likewise.
16112         (dw2_debug_names_expand_symtabs_for_function): Likewise.
16113         (dw2_debug_names_expand_symtabs_matching): Likewise.
16114         (dwarf2_initialize_objfile): Likewise.
16115         (dwarf2_build_psymtabs): Likewise.
16116         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
16117         this_cu.
16118         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
16119         (read_and_check_comp_unit_head): Likewise.
16120         (read_abbrev_offset): Likewise.
16121         (create_debug_type_hash_table): Likewise.
16122         (create_debug_types_hash_table): Likewise.
16123         (create_all_type_units): Replace objfile parameter with
16124         dwarf2_per_objfile.
16125         (add_type_unit): Add dwarf2_per_objfile parameter.
16126         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
16127         with dwarf2_per_objfile.
16128         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
16129         (lookup_dwp_signatured_type): Likewise.
16130         (lookup_signatured_type): Likewise.
16131         (read_cutu_die_from_dwo): Likewise.
16132         (init_tu_and_read_dwo_dies): Likewise.
16133         (init_cutu_and_read_dies): Likewise.
16134         (init_cutu_and_read_dies_no_follow): Likewise.
16135         (allocate_type_unit_groups_table): Add objfile parameter.
16136         (create_type_unit_group): Use dwarf2_per_objfile from cu.
16137         (get_type_unit_group): Likewise.
16138         (process_psymtab_comp_unit): Update call.
16139         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
16140         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
16141         (print_tu_stats): Likewise.
16142         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
16143         in void* parameter.
16144         (build_type_psymtabs): Change objfile parameter to
16145         dwarf2_per_objfile.
16146         (process_skeletonless_type_unit): Use dwarf2_per_objfile
16147         passed in void* parameter.
16148         (process_skeletonless_type_units): Change objfile parameter to
16149         dwarf2_per_objfile.
16150         (set_partial_user): Likewise.
16151         (dwarf2_build_psymtabs_hard): Likewise.
16152         (read_comp_units_from_section): Likewise.
16153         (create_all_comp_units): Likewise.
16154         (scan_partial_symbols): Update calls.
16155         (add_partial_symbol): Likewise.
16156         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
16157         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16158         (process_queue): Add dwarf2_per_objfile parameter.
16159         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16160         (compute_compunit_symtab_includes): Likewise.
16161         (process_cu_includes): Add dwarf2_per_objfile parameter.
16162         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16163         (process_full_type_unit): Likewise.
16164         (process_imported_unit_die): Update call.
16165         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16166         (read_file_scope): Likewise.
16167         (allocate_dwo_file_hash_table): Add objfile parameter.
16168         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16169         (create_cus_hash_table): Likewise.
16170         (create_dwp_hash_table): Likewise.
16171         (create_dwo_unit_in_dwp_v1): Likewise.
16172         (create_dwp_v2_section): Likewise.
16173         (create_dwo_unit_in_dwp_v2): Likewise.
16174         (lookup_dwo_unit_in_dwp): Likewise.
16175         (try_open_dwop_file): Likewise.
16176         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16177         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16178         cleanup to include a reference to dwarf2_per_objfile.
16179         (open_dwp_file): Add dwarf2_per_objfile parameter.
16180         (open_and_init_dwp_file): Likewise.
16181         (get_dwp_file): Likewise.
16182         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16183         (queue_and_load_all_dwo_tus): Update call.
16184         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16185         data.
16186         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16187         (dwarf2_ranges_process): Likewise.
16188         (dwarf2_get_pc_bounds): Likewise.
16189         (mark_common_block_symbol_computed): Likewise.
16190         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16191         (dwarf2_read_abbrevs): Update call.
16192         (read_partial_die): Use dwarf2_per_objfile from cu.
16193         (find_partial_die): Likewise.
16194         (fixup_partial_die): Likewise.
16195         (read_attribute_value): Likewise.
16196         (read_indirect_string_at_offset_from): Add objfile parameter.
16197         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16198         parameter.
16199         (read_indirect_string_from_dwz): Add objfile parameter.
16200         (read_indirect_string): Add objfile parameter.
16201         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16202         (read_addr_index): Use dwarf2_per_objfile from cu.
16203         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16204         call dw2_setup.
16205         (read_str_index): Use dwarf2_per_objfile from cu.
16206         (get_debug_line_section): Likewise.
16207         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16208         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16209         (new_symbol_full): Use dwarf2_per_objfile from cu.
16210         (build_error_marker_type): Likewise.
16211         (lookup_die_type): Likewise.
16212         (determine_prefix): Likewise.
16213         (follow_die_offset): Likewise.
16214         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16215         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16216         (dwarf2_fetch_die_type_sect_off): Likewise.
16217         (dwarf2_get_die_type): Likewise.
16218         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16219         (get_signatured_type): Likewise.
16220         (get_DW_AT_signature_type): Likewise.
16221         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16222         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16223         (cu_debug_loc_section): Likewise.
16224         (fill_in_loclist_baton): Likewise.
16225         (dwarf2_symbol_mark_computed): Likewise.
16226         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16227         dwarf2_per_objfile.
16228         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16229         parameter.
16230         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16231         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16232         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16233         (set_die_type): Use dwarf2_free_objfile from cu.
16234         (get_die_type_at_offset): Likewise.
16235         (dwarf2_per_objfile_free): Don't assign global variable.
16236         (debug_names) <constructor>: Add dwarf2_per_objfile
16237         parameter, update m_debugstrlookup construction.
16238         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16239         parameter.
16240         <m_dwarf2_per_objfile>: New field.
16241         <lookup>: Use m_dwarf2_per_objfile.
16242         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16243         (psyms_seen_size): Likewise.
16244         (write_gdbindex): Replace objfile parameter with
16245         dwarf2_per_objfile.
16246         (write_debug_names): Likewise.
16247         (write_psymtabs_to_index): Likewise.
16248         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16249         calls.
16250
16251 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16252
16253         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16254         <dwarf2_per_objfile>: New field.
16255         (struct dwarf2_per_cu_data) <objfile>: Remove.
16256         <dwarf2_per_objfile>: New field.
16257         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16258         of objfile.
16259         (create_signatured_type_table_from_index): Likewise.
16260         (create_debug_type_hash_table): Likewise.
16261         (fill_in_sig_entry_from_dwo_entry): Likewise.
16262         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16263         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16264         objfile.
16265         (create_partial_symtab): Access objfile through
16266         dwarf2_per_objfile.
16267         (process_psymtab_comp_unit_reader): Likewise.
16268         (read_comp_units_from_section): Likewise.
16269         (scan_partial_symbols): Likewise.
16270         (add_partial_symbol): Likewise.
16271         (add_partial_subprogram): Likewise.
16272         (peek_die_abbrev): Likewise.
16273         (fixup_go_packaging): Likewise.
16274         (process_full_comp_unit): Likewise.
16275         (process_full_type_unit): Likewise.
16276         (process_imported_unit_die): Likewise.
16277         (dwarf2_compute_name): Likewise.
16278         (dwarf2_physname): Likewise.
16279         (read_import_statement): Likewise.
16280         (create_cus_hash_table): Assign dwarf2_physname instead of
16281         objfile.
16282         (read_func_scope): Access objfile through dwarf2_per_objfile.
16283         (read_lexical_block_scope): Likewise.
16284         (read_call_site_scope): Likewise.
16285         (read_variable): Likewise.
16286         (dwarf2_rnglists_process): Likewise.
16287         (dwarf2_ranges_process): Likewise.
16288         (dwarf2_ranges_read): Likewise.
16289         (dwarf2_record_block_ranges): Likewise.
16290         (dwarf2_add_field): Likewise.
16291         (dwarf2_add_member_fn): Likewise.
16292         (read_structure_type): Likewise.
16293         (process_structure_scope): Likewise.
16294         (read_enumeration_type): Likewise.
16295         (read_array_type): Likewise.
16296         (read_common_block): Likewise.
16297         (read_namespace_type): Likewise.
16298         (read_namespace): Likewise.
16299         (read_module_type): Likewise.
16300         (read_tag_pointer_type): Likewise.
16301         (read_tag_ptr_to_member_type): Likewise.
16302         (read_tag_string_type): Likewise.
16303         (read_subroutine_type): Likewise.
16304         (read_typedef): Likewise.
16305         (read_base_type): Likewise.
16306         (attr_to_dynamic_prop): Likewise.
16307         (read_subrange_type): Likewise.
16308         (read_unspecified_type): Likewise.
16309         (load_partial_dies): Likewise.
16310         (read_partial_die): Likewise.
16311         (find_partial_die): Likewise.
16312         (guess_partial_die_structure_name): Likewise.
16313         (fixup_partial_die): Likewise.
16314         (read_attribute_value): Likewise.
16315         (read_addr_index_from_leb128): Likewise.
16316         (dwarf2_read_addr_index): Likewise.
16317         (dwarf2_string_attr): Likewise.
16318         (lnp_state_machine::check_line_address): Likewise.
16319         (dwarf_decode_lines_1): Likewise.
16320         (dwarf_decode_lines): Likewise.
16321         (dwarf2_start_symtab): Likewise.
16322         (var_decode_location): Likewise.
16323         (new_symbol_full): Likewise.
16324         (dwarf2_const_value_data): Likewise.
16325         (dwarf2_const_value_attr): Likewise.
16326         (dwarf2_const_value): Likewise.
16327         (die_type): Likewise.
16328         (die_containing_type): Likewise.
16329         (lookup_die_type): Likewise.
16330         (guess_full_die_structure_name): Likewise.
16331         (anonymous_struct_prefix): Likewise.
16332         (dwarf2_name): Likewise.
16333         (follow_die_ref_or_sig): Likewise.
16334         (follow_die_offset): Likewise.
16335         (follow_die_ref): Likewise.
16336         (dwarf2_fetch_die_loc_sect_off): Likewise.
16337         (dwarf2_fetch_constant_bytes): Likewise.
16338         (dwarf2_fetch_die_type_sect_off): Likewise.
16339         (dwarf2_get_die_type): Likewise.
16340         (follow_die_sig): Likewise.
16341         (decode_locdesc): Likewise.
16342         (dwarf2_per_cu_objfile): Likewise.
16343         (dwarf2_per_cu_text_offset): Likewise.
16344         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16345         objfile.
16346         (set_die_type): Access objfile through
16347         dwarf2_per_objfile.
16348
16349 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16350
16351         * valprint.c (converted_character_d): Remove typedef.
16352         (DEF_VEC_O (converted_character_d)): Remove.
16353         (count_next_character): Use std::vector.
16354         (print_converted_chars_to_obstack): Likewise.
16355         (generic_printstr): Likewise.
16356
16357 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16358
16359         * xml-support.h (struct gdb_xml_value): Add constructor.
16360         <value>: Change type to unique_xmalloc_ptr.
16361         (gdb_xml_value_s): Remove typedef.
16362         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16363         (gdb_xml_element_start_handler): Change parameter type to
16364         std::vector.
16365         (xml_find_attribute): Likewise.
16366         * xml-support.c (xml_find_attribute): Change parameter type to
16367         std::vector and adjust.
16368         (gdb_xml_values_cleanup): Remove.
16369         (gdb_xml_parser::start_element): Adjust to std::vector.
16370         (xinclude_start_include): Change paraeter type to std::vector
16371         and adjust.
16372         * btrace.c (check_xml_btrace_version): Likewise.
16373         (parse_xml_btrace_block): Likewise.
16374         (parse_xml_btrace_pt_config_cpu): Likewise.
16375         (parse_xml_btrace_pt): Likewise.
16376         (parse_xml_btrace_conf_bts): Likewise.
16377         (parse_xml_btrace_conf_pt): Likewise.
16378         * memory-map.c (memory_map_start_memory): Likewise.
16379         (memory_map_start_property): Likewise.
16380         * osdata.c (osdata_start_osdata): Likewise.
16381         (osdata_start_item): Likewise.
16382         (osdata_start_column): Likewise.
16383         * remote.c (start_thread): Likewise.
16384         * solib-aix.c (library_list_start_library): Likewise.
16385         (library_list_start_list): Likewise.
16386         * solib-svr4.c (library_list_start_library): Likewise.
16387         (svr4_library_list_start_list): Likewise.
16388         * solib-target.c (library_list_start_segment): Likewise.
16389         (library_list_start_section): Likewise.
16390         (library_list_start_library): Likewise.
16391         (library_list_start_list): Likewise.
16392         * tracepoint.c (traceframe_info_start_memory): Likewise.
16393         (traceframe_info_start_tvar): Likewise.
16394         * xml-syscall.c (syscall_start_syscall): Likewise.
16395         * xml-tdesc.c (tdesc_start_target): Likewise.
16396         (tdesc_start_feature): Likewise.
16397         (tdesc_start_reg): Likewise.
16398         (tdesc_start_union): Likewise.
16399         (tdesc_start_struct): Likewise.
16400         (tdesc_start_flags): Likewise.
16401         (tdesc_start_enum): Likewise.
16402         (tdesc_start_field): Likewise.
16403         (tdesc_start_enum_value): Likewise.
16404         (tdesc_start_vector): Likewise.
16405
16406 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16407
16408         * extension.h (struct xmethod_worker) <clone>: Remove.
16409         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16410         Remove.
16411         (python_xmethod_worker::clone): Remove.
16412         * valops.c (find_overload_match): Use std::move instead of
16413         clone.
16414
16415 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16416
16417         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16418         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16419         <free_xmethod_worker_data>: Remove.
16420         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16421         <get_xmethod_arg_types>: Remove.
16422         <get_xmethod_result_type>: Remove.
16423         <invoke_xmethod>: Remove.
16424         * extension.c (new_xmethod_worker): Remove.
16425         (clone_xmethod_worker): Remove.
16426         (get_matching_xmethod_workers): Return void, pass std::vector by
16427         pointer.
16428         (get_xmethod_arg_types): Rename to...
16429         (xmethod_worker::get_arg_types): ... this, and adjust.
16430         (get_xmethod_result_type): Rename to...
16431         (xmethod_worker::get_result_type): ... this, and adjust.
16432         (invoke_xmethod): Remove.
16433         (free_xmethod_worker): Remove.
16434         (free_xmethod_worker_vec): Remove.
16435         * extension.h (enum ext_lang_rc): Move here from
16436         extension-priv.h.
16437         (struct xmethod_worker): Add constructor and destructor.
16438         <data>: Remove.
16439         <value>: Remove.
16440         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16441         virtual pure methods.
16442         <get_arg_types, get_result_type>: New methods.
16443         (xmethod_worker_ptr): Remove typedef.
16444         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16445         (xmethod_worker_vec): Remove typedef.
16446         (xmethod_worker_up): New typedef.
16447         (invoke_xmethod): Remove.
16448         (clone_xmethod_worker): Remove.
16449         (free_xmethod_worker): Remove.
16450         (free_xmethod_worker_vec): Remove.
16451         (get_xmethod_arg_types): Remove.
16452         (get_xmethod_result_type): Remove.
16453         * valops.c (find_method_list): Use std::vector, don't use
16454         intermediate vector.
16455         (value_find_oload_method_list): Use std::vector.
16456         (find_overload_match): Use std::vector.
16457         (find_oload_champ): Use std::vector.
16458         * value.c (value_free): Use operator delete.
16459         (value_of_xmethod): Rename to...
16460         (value_from_xmethod): ... this.  Don't assign
16461         xmethod_worker::value, take rvalue-reference.
16462         (result_type_of_xmethod): Adjust.
16463         (call_xmethod): Adjust.
16464         * value.h: Include extension.h.
16465         (struct xmethod_worker): Don't forward-declare.
16466         (value_of_xmethod): Rename to...
16467         (value_from_xmethod): ... this, take rvalue-reference.
16468         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16469         (struct python_xmethod_worker): ... this, add constructor and
16470         destructor.
16471         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16472         (gdbpy_free_xmethod_worker_data): Rename to...
16473         (python_xmethod_worker::~python_xmethod_worker): ... this and
16474         adjust.
16475         (gdbpy_clone_xmethod_worker_data): Rename to...
16476         (python_xmethod_worker::clone): ... this and adjust.
16477         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16478         temporary vector.
16479         (gdbpy_get_xmethod_arg_types): Rename to...
16480         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16481         (gdbpy_get_xmethod_result_type): Rename to...
16482         (python_xmethod_worker::do_get_result_type): ... this and
16483         adjust.
16484         (gdbpy_invoke_xmethod): Rename to...
16485         (python_xmethod_worker::invoke): ... this and adjust.
16486         (new_python_xmethod_worker): Rename to...
16487         (python_xmethod_worker::python_xmethod_worker): ... this and
16488         adjust.
16489         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16490         Remove.
16491         (gdbpy_free_xmethod_worker_data): Remove.
16492         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16493         (gdbpy_get_xmethod_arg_types): Remove.
16494         (gdbpy_get_xmethod_result_type): Remove.
16495         (gdbpy_invoke_xmethod): Remove.
16496         * python/python.c (python_extension_ops): Remove obsolete
16497         callbacks.
16498
16499 2018-01-05  Pedro Alves  <palves@redhat.com>
16500
16501         PR gdb/18653
16502         * common/signals-state-save-restore.c
16503         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16504         find a custom handler preinstalled, instead of internal erroring.
16505         But only warn if !quiet.
16506         * common/signals-state-save-restore.h
16507         (save_original_signals_state): New parameter 'quiet'.
16508         * main.c (captured_main_1): Move save_original_signals_state call
16509         after option handling, and pass QUIET.
16510
16511 2018-01-05  Pedro Alves  <palves@redhat.com>
16512
16513         * spu-tdep.c (spu_catch_start): Pass
16514         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16515
16516 2018-01-05  Pedro Alves  <palves@redhat.com>
16517
16518         PR gdb/22670
16519         * ada-lang.c (literal_symbol_name_matcher): New function.
16520         (ada_get_symbol_name_matcher): Use it for
16521         symbol_name_match_type::SEARCH_NAME.
16522         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16523         it down instead of assuming symbol_name_match_type::FULL.
16524         * block.h (block_lookup_symbol): New parameter 'match_type'.
16525         * c-valprint.c (print_unpacked_pointer): Use
16526         lookup_symbol_search_name instead of lookup_symbol.
16527         * compile/compile-object-load.c (get_out_value_type): Pass down
16528         symbol_name_match_type::SEARCH_NAME.
16529         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16530         symbol_name_match_type::FULL.
16531         * cp-support.c (cp_get_symbol_name_matcher): Handle
16532         symbol_name_match_type::SEARCH_NAME.
16533         * infrun.c (insert_exception_resume_breakpoint): Use
16534         lookup_symbol_search_name.
16535         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16536         * psymtab.c (maintenance_check_psymtabs): Use
16537         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16538         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16539         SYMBOL_SEARCH_NAME.
16540         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16541         if symbol_name_match_type::SEARCH_NAME.
16542         (lookup_symbol_in_language): Pass down
16543         symbol_name_match_type::FULL.
16544         (lookup_symbol_search_name): New.
16545         (lookup_language_this): Pass down
16546         symbol_name_match_type::SEARCH_NAME.
16547         (lookup_symbol_aux, lookup_local_symbol): New parameter
16548         'match_type'.  Pass it down.
16549         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16550         (lookup_symbol_search_name): New declaration.
16551         (lookup_symbol_in_block): New 'match_type' parameter.
16552
16553 2018-01-05  Pedro Alves  <palves@redhat.com>
16554
16555         PR gdb/22670
16556         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16557         ada_lookup_symbol.
16558         (ada_lookup_symbol): Reimplement in terms of
16559         ada_lookup_symbol_list, bits factored out from
16560         ada_lookup_encoded_symbol.
16561
16562 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16563
16564         * ada-exp.y (write_object_renaming): When subscripting an array
16565         using a symbol as the index, pass the block in call to
16566         ada_lookup_encoded_symbol when looking that symbol up.
16567
16568 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16569
16570         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16571         TYPE_INDEX_TYPE.
16572
16573 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16574
16575         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16576         the case where VALUE_LVAL (val0) is not lval_memory.
16577
16578 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16579
16580         * ada-valprint.c (print_optional_low_bound): Handle
16581         character-indexed array printing like boolean-indexed array
16582         printing.
16583
16584 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16585
16586         * NEWS: Create a new section for the next release branch.
16587         Rename the section of the current branch, now that it has
16588         been cut.
16589
16590 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16591
16592         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16593         * version.in: Bump version to 8.1.50.DATE-git.
16594
16595 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16596
16597         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16598         Add field.
16599         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16600         Add field.
16601         (default_exception_support_info) <catch_handlers_sym>: Add field.
16602         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16603         (ada_exception_name_addr_1): Add "catch handlers" handling.
16604         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16605         Update all callers.
16606         (create_excep_cond_exprs) <ex>: Add parameter.
16607         (re_set_exception): Update create_excep_cond_exprs call.
16608         (print_it_exception, print_one_exception, print_mention_exception)
16609         (print_recreate_exception): Add "catch handler" handling.
16610         (allocate_location_catch_handlers, re_set_catch_handlers)
16611         (check_status_catch_handlers, print_it_catch_handlers)
16612         (print_one_catch_handlers, print_mention_catch_handlers)
16613         (print_recreate_catch_handlers): New function.
16614         (catch_handlers_breakpoint_ops): New variable.
16615         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16616         Add parameter.  Add "catch handler" handling.
16617         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16618         Add "catch handler" handling.
16619         (ada_exception_catchpoint_cond_string): Add "catch handler"
16620         handling.
16621         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16622         call.
16623         (catch_ada_handlers_command): New function.
16624         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16625         operations structure.
16626         (_initialize_ada_language): Add "catch handlers" command entry.
16627         * NEWS: Document "catch handlers" feature.
16628
16629 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16630
16631         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16632         account when creating the array type of the slice.
16633         (ada_value_slice): Likewise.
16634
16635 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16636
16637         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16638         New enum value.
16639         (create_array_type_with_stride): Add byte_stride_prop parameter.
16640         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16641         New parameter.  Update all callers in this file.
16642         (array_type_has_dynamic_stride): New function.
16643         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16644         of arrays with dynamic byte strides.
16645         * dwarf2read.c (read_array_type): Add support for dynamic
16646         DW_AT_byte_stride attributes.
16647
16648 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16649
16650         * dwarf2read.c (read_unspecified_type): Treat
16651         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16652
16653 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16654
16655         Update copyright year range in all GDB files.
16656
16657 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16658
16659         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16660         and gdb/testsuite/gdb.base/step-line.c.
16661
16662 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16663
16664         * copyright.py (main): Dump the contents of
16665         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16666         even if BY_HAND is empty.
16667
16668 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16669
16670         * top.c (print_gdb_version): Update Copyright year in version
16671         message.
16672
16673 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16674
16675         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16676
16677 For older changes see ChangeLog-2017.
16678 \f
16679 Local Variables:
16680 mode: change-log
16681 left-margin: 8
16682 fill-column: 74
16683 version-control: never
16684 coding: utf-8
16685 End: