gdb/riscv: Add equality operators to riscv_gdb_features
[external/binutils.git] / gdb / ChangeLog
1 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
2
3         * arch/riscv.h (riscv_gdb_features::operator==): New.
4         (riscv_gdb_features::operator!=): New.
5         * riscv-tdep.c (riscv_gdbarch_init): Make use of the inequality
6         operator.
7
8 2018-11-30  Andrew Burgess  <andrew.burgess@embecosm.com>
9
10         * arch/riscv.h (riscv_create_target_description): Make return type
11         const.
12         * arch/riscv.c (riscv_create_target_description): Likewise.
13         * riscv-tdep.c (riscv_find_default_target_description): Likewise.
14
15 2018-11-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
16             Keith Seitz  <keiths@redhat.com>
17             Tom Tromey  <tom@tromey.com>
18             Sergio Durigan Junior  <sergiodj@redhat.com>
19
20         https://bugzilla.redhat.com/show_bug.cgi?id=1613614
21         * dwarf2read.c (dwarf2_find_containing_comp_unit): Add
22         'mid_cu->length' to '*cu_off' when checking if 'sect_off' is
23         inside the CU.
24
25 2018-11-30  Pedro Alves  <palves@redhat.com>
26
27         * aix-thread.c (aix_thread_target) <aix_thread_target>: Delete.
28         <stratum>: New override.
29         * bfd-target.c (aix_thread_target) <aix_thread_target>: Delete.
30         <stratum>: New override.
31         * bsd-uthread.c (bsd_uthread_target) <bsd_uthread_target>: Delete.
32         <stratum>: New override.
33         * exec.c (exec_target) <exec_target>: Delete.
34         <stratum>: New override.
35         * gdbarch-selftests.c (register_to_value_test): Adjust to use the
36         stratum method instead of the to_stratum field.
37         * linux-thread-db.c (thread_db_target) <thread_db_target>: Delete.
38         <stratum>: New override.
39         (thread_db_target::thread_db_target): Delete.
40         * make-target-delegates (print_class): Don't print a ctor
41         declaration.  Print a stratum method override declaration.
42         * process-stratum-target.h (process_stratum_target)
43         <process_stratum_target>: Delete.
44         <stratum>: New override.
45         * ravenscar-thread.c (ravenscar_thread_target)
46         <ravenscar_thread_target>: Delete.
47         <stratum>: New override.
48         * record-btrace.c (record_btrace_target)
49         <record_btrace_target>: Delete.
50         <stratum>: New override.
51         * record-full.c (record_full_base_target)
52         <record_full_base_target>: Delete.
53         <stratum>: New override.
54         * record.c (record_disconnect, record_detach)
55         (record_mourn_inferior, record_kill): Adjust to use the stratum
56         method instead of the to_stratum field.
57         * regcache.c (cooked_read_test, cooked_write_test): Likewise.
58         * sol-thread.c (sol_thread_target)
59         <sol_thread_target>: Delete.
60         <stratum>: New override.
61         * spu-multiarch.c (spu_multiarch_target)
62         <spu_multiarch_target>: Delete.
63         <stratum>: New override.
64         * target-delegates.c: Regenerate.
65         * target.c (target_stack::push, target_stack::unpush)
66         (pop_all_targets_above, pop_all_targets_at_and_above)
67         (info_target_command, target_require_runnable)
68         (target_stack::find_beneath): Adjust to use the stratum method
69         instead of the to_stratum field.
70         (dummy_target::dummy_target): Delete.
71         (dummy_target::stratum): New.
72         (debug_target::debug_target): Delete.
73         (debug_target::stratum): New.
74         (maintenance_print_target_stack): Adjust to use the stratum method
75         instead of the to_stratum field.
76         * target.h (struct target_ops) <stratum>: New method.
77         <to_stratum>: Delete.
78         <is_pushed>: Adjust to use the stratum method
79         instead of the to_stratum field.
80
81 2018-11-30  Pedro Alves  <palves@redhat.com>
82
83         * corelow.c (core_target) <has_all_memory, has_execution>: New
84         overrides.
85         * inf-child.c (inf_child_target::has_all_memory)
86         (inf_child_target::has_memory, inf_child_target::has_stack)
87         (inf_child_target::has_registers)
88         (inf_child_target::has_execution): Delete.
89         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
90         has_stack, has_registers, has_execution>: Delete.
91         * process-stratum-target.c
92         (process_stratum_target::has_all_memory)
93         (process_stratum_target::has_memory)
94         (process_stratum_target::has_stack)
95         (process_stratum_target::has_registers)
96         (process_stratum_target::has_execution): New.
97         * process-stratum-target.h (process_stratum_target)
98         <has_all_memory, has_memory, has_stack, has_registers,
99         has_execution>: New method overrides.
100         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
101         has_memory, has_stack, has_registers, has_execution>: Delete.
102         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
103         has_execution>: Delete.
104         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
105         has_registers, has_execution>: Delete.
106         * target.c (default_child_has_all_memory)
107         (default_child_has_memory, default_child_has_stack)
108         (default_child_has_registers, default_child_has_execution):
109         Delete.
110         * target.h (default_child_has_all_memory)
111         (default_child_has_memory, default_child_has_stack)
112         (default_child_has_registers, default_child_has_execution):
113         Delete.
114         * tracefile.h (tracefile_target) <has_execution>: New override.
115
116 2018-11-30  Pedro Alves  <palves@redhat.com>
117
118         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
119         * bsd-kvm.c: Include "process-stratum-target.h".
120         (bsd_kvm_target): Now inherits from process_stratum_target.
121         (bsd_kvm_target::bsd_kvm_target): Default it.
122         * corelow.c: Include "process-stratum-target.h".
123         (core_target): Now inherits from process_stratum_target.
124         (core_target::core_target): Don't set to_stratum here.
125         * inf-child.c (inf_child_target::inf_child_target): Delete.
126         * inf-child.h: Include "process-stratum-target.h".
127         (inf_child_target): Inherit from process_stratum_target.
128         (inf_child_target) <inf_child_target>: Default it.
129         <can_async_p, supports_non_stop, supports_disable_randomization>:
130         Delete overrides.
131         * process-stratum-target.c: New file.
132         * process-stratum-target.h: New file.
133         * remote-sim.c: Include "process-stratum-target.h".
134         (gdbsim_target): Inherit from process_stratum_target.
135         <gdbsim_target>: Default it.
136         * remote.c: Include "process-stratum-target.h".
137         (remote_target): Inherit from process_stratum_target.
138         <remote_target>: Default it.
139         * target.c (default_thread_address_space)
140         (default_thread_architecture): Delete.
141         * target.h (target_ops) <thread_architecture>: Now returns NULL by
142         default.
143         <thread_address_space>: Ditto.
144         * test-target.h: Include "process-stratum-target.h" instead of
145         "target.h".
146         (test_target_ops): Inherit from process_stratum_target.
147         <test_target_ops>: Default it.
148         * tracefile.c (tracefile_target::tracefile_target): Delete.
149         * tracefile.h: Include "process-stratum-target.h".
150         (tracefile_target): Inherit from process_stratum_target.
151         <tracefile_target>: Default it.
152         * target-delegates.c: Regenerate.
153
154 2018-11-30  Pedro Alves  <palves@redhat.com>
155
156         * Makefile.in (COMMON_SFILES): Add test-target.c.
157         * gdbarch-selftests.c: Include "test-target.h".
158         * regcache.c: Include "test-target.h".
159         * target.c (test_target_info, test_target_ops::info): Move to ...
160         * test-target.c: ... this new file.
161         * target.h (test_target_ops): Move to ...
162         * test-target.h: ... this new file.
163
164 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
165
166         * source.c (forward_search_command): Fix leak by using
167         xrealloc even for the first allocation in the loop, as buf
168         is static.
169
170 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
171
172         PR gdb/23093
173         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
174         (fbsd_gdb_signal_to_target): New.
175         (fbsd_init_abi): Install gdbarch "signal_from_target" and
176         "signal_to_target" methods.
177
178 2018-11-29  Tom Tromey  <tom@tromey.com>
179
180         * valarith.c (value_x_unop): Don't set argvec[3].
181
182 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
183
184         PR gdb/23917
185         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
186         semicolon.
187
188 2018-11-26  Pedro Alves  <palves@redhat.com>
189
190         * procfs.c (procfs_notice_thread): Replace uses of
191         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
192         * sol-thread.c (sol_thread_target::wait)
193         (sol_update_thread_list_callback): Likewise.
194
195 2018-11-25  Tom Tromey  <tom@tromey.com>
196
197         * ui-out.c (ui_out::field_fmt): Remove comment.
198         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
199         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
200
201 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
202
203         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
204         leak in open_source_file' has been partially undone by '2179fbc36d23
205         Return scoped_fd from open_source_file'. Re-add the transfer of
206         current s->fullname to the unique_xmalloc_ptr fullname given
207         to find_and_open_source.
208
209 2018-11-23  Pedro Alves  <palves@redhat.com>
210
211         * gdbthread.h (enum thread_state): Move comments here.
212         (is_running, is_stopped, is_exited): Remove declarations.
213
214 2018-11-22  Pedro Alves  <palves@redhat.com>
215
216         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
217         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
218         ALL_NON_EXITED_THREADS with all_non_exited_threads.
219         (print_one_breakpoint_location): Replace ALL_INFERIORS with
220         all_inferiors.
221         * bsd-kvm.c: Include inferior.h.
222         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
223         with all_non_exited_threads.
224         * common/filtered-iterator.h: New.
225         * common/safe-iterator.h: New.
226         * corelow.c (core_target_open): Don't call init_thread_list here.
227         * darwin-nat.c (thread_info_from_private_thread_info): Replace
228         ALL_THREADS with all_threads.
229         * fbsd-nat.c (fbsd_nat_target::resume): Replace
230         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
231         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
232         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
233         * fork-child.c (postfork_hook): Don't call init_thread_list here.
234         * gdbarch-selftests.c (register_to_value_test): Adjust.
235         * gdbthread.h: Don't include "inferior.h" here.
236         (struct inferior): Forward declare.
237         (enum step_over_calls_kind): Moved here from inferior.h.
238         (thread_info::deletable): Definition moved to thread.c.
239         (find_thread_ptid (inferior *, ptid_t)): Declare.
240         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
241         Include "thread-iter.h".
242         (all_threads, all_non_exited_threads, all_threads_safe): New.
243         (any_thread_p): Declare.
244         (thread_list): Delete.
245         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
246         all_non_exited_threads.
247         (proceed_after_attach_callback): Delete.
248         (proceed_after_attach): Take an inferior pointer instead of an
249         integer PID.  Adjust to use range-for.
250         (attach_post_wait): Pass down inferior pointer instead of pid.
251         Use range-for instead of ALL_NON_EXITED_THREADS.
252         (detach_command): Remove init_thread_list call.
253         * inferior-iter.h: New.
254         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
255         (delete_thread_of_inferior): Delete.
256         (delete_inferior, exit_inferior_1): Use range-for with
257         inf->threads_safe() instead of iterate_over_threads.
258         (inferior_appeared): Call init_thread_list here.
259         (discard_all_inferiors): Use all_non_exited_inferiors.
260         (find_inferior_id, find_inferior_pid): Use all_inferiors.
261         (iterate_over_inferiors): Use all_inferiors_safe.
262         (have_inferiors, number_of_live_inferiors): Use
263         all_non_exited_inferiors.
264         (number_of_inferiors): Use all_inferiors and std::distance.
265         (print_inferior): Use all_inferiors.
266         * inferior.h: Include gdbthread.h.
267         (enum step_over_calls_kind): Moved to gdbthread.h.
268         (struct inferior) <thread_list>: New field.
269         <threads, non_exited_threads, threads_safe>: New methods.
270         (ALL_INFERIORS): Delete.
271         Include "inferior-iter.h".
272         (ALL_NON_EXITED_INFERIORS): Delete.
273         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
274         functions.
275         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
276         ALL_NON_EXITED_THREADS with all_non_exited_threads.
277         * infrun.c (follow_exec): Use all_threads_safe.
278         (clear_proceed_status, proceed): Use all_non_exited_threads.
279         (init_wait_for_inferior): Don't clear inline frame state here.
280         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
281         all_threads instead of ALL_NON_EXITED_THREADS.
282         (random_pending_event_thread): Use all_non_exited_threads instead
283         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
284         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
285         instead of ALL_NON_EXITED_THREADS.
286         (handle_no_resumed): Use all_non_exited_threads instead of
287         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
288         ALL_INFERIORS.
289         (restart_threads, switch_back_to_stepped_thread): Use
290         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
291         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
292         all_inferiors.
293         (kill_unfollowed_fork_children): Use inf->non_exited_threads
294         instead of ALL_NON_EXITED_THREADS.
295         * linux-tdep.c (linux_make_corefile_notes): Use
296         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
297         * linux-thread-db.c (thread_db_target::update_thread_list):
298         Replace ALL_INFERIORS with all_inferiors.
299         (thread_db_target::thread_handle_to_thread_info): Use
300         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
301         * mi/mi-interp.c (multiple_inferiors_p): New.
302         (mi_on_resume_1): Simplify using all_non_exited_threads and
303         multiple_inferiors_p.
304         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
305         instead of ALL_NON_EXITED_THREADS.
306         * nto-procfs.c (nto_procfs_target::open): Don't call
307         init_thread_list here.
308         * record-btrace.c (record_btrace_target_open)
309         (record_btrace_target::stop_recording)
310         (record_btrace_target::close)
311         (record_btrace_target::record_is_replaying)
312         (record_btrace_target::resume, record_btrace_target::wait)
313         (record_btrace_target::record_stop_replaying): Use
314         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
315         * record-full.c (record_full_wait_1): Use all_non_exited_threads
316         instead of ALL_NON_EXITED_THREADS.
317         * regcache.c (cooked_read_test): Remove reference to global
318         thread_list.
319         * remote-sim.c (gdbsim_target::create_inferior): Don't call
320         init_thread_list here.
321         * remote.c (remote_target::update_thread_list): Use
322         all_threads_safe instead of ALL_NON_EXITED_THREADS.
323         (remote_target::process_initial_stop_replies): Replace
324         ALL_INFERIORS with all_non_exited_inferiors and use
325         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
326         (remote_target::open_1): Don't call init_thread_list here.
327         (remote_target::append_pending_thread_resumptions)
328         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
329         instead of ALL_NON_EXITED_THREADS.
330         (remote_target::commit_resume)
331         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
332         with all_non_exited_inferiors and use all_non_exited_threads
333         instead of ALL_NON_EXITED_THREADS.
334         (remote_target::kill_new_fork_children): Use
335         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
336         init_thread_list and init_wait_for_inferior calls.
337         (remote_target::remote_btrace_maybe_reopen)
338         (remote_target::thread_handle_to_thread_info): Use
339         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
340         * target.c (target_terminal::restore_inferior)
341         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
342         all_non_exited_inferiors.
343         * thread-iter.c: New file.
344         * thread-iter.h: New file.
345         * thread.c: Include "inline-frame.h".
346         (thread_list): Delete.
347         (clear_thread_inferior_resources): Call clear_inline_frame_state.
348         (init_thread_list): Use all_threads_safe instead of
349         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
350         (new_thread): Adjust to per-inferior thread lists.
351         (add_thread_silent): Pass inferior to find_thread_ptid.
352         (thread_info::deletable): New, moved from the header.
353         (delete_thread_1): Adjust to per-inferior thread lists.
354         (find_thread_global_id): Use inf->threads().
355         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
356         find_thread_ptid.
357         (find_thread_ptid(inferior*, ptid_t)): New overload.
358         (iterate_over_threads): Use all_threads_safe.
359         (any_thread_p): New.
360         (thread_count): Use all_threads and std::distance.
361         (live_threads_count): Use all_non_exited_threads and
362         std::distance.
363         (valid_global_thread_id): Use all_threads.
364         (in_thread_list): Use find_thread_ptid.
365         (first_thread_of_inferior): Adjust to per-inferior thread lists.
366         (any_thread_of_inferior, any_live_thread_of_inferior): Use
367         inf->non_exited_threads().
368         (prune_threads, delete_exited_threads): Use all_threads_safe.
369         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
370         (set_resumed, set_running): Use all_non_exited_threads.
371         (is_thread_state, is_stopped, is_exited, is_running)
372         (is_executing): Delete.
373         (set_executing, set_stop_requested, finish_thread_state): Use
374         all_non_exited_threads.
375         (print_thread_info_1): Use all_inferiors and all_threads.
376         (thread_apply_all_command): Use all_non_exited_threads.
377         (thread_find_command): Use all_threads.
378         (update_threads_executing): Use all_non_exited_threads.
379         * tid-parse.c (parse_thread_id): Use inf->threads.
380         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
381
382 2018-11-22  Pedro Alves  <palves@redhat.com>
383
384         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
385         switch to it before calling into try_open_exec_file.
386
387 2018-11-22  Pedro Alves  <palves@redhat.com>
388
389         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
390         inferior_thread instead of find_thread_ptid, and only when
391         inferior_ptid is not null_ptid.
392         * inferior.c (add_inferior): Don't include target_pid_to_str
393         output when the inferior is not started.
394         * python/py-inferior.c (python_on_normal_stop): Don't use
395         find_thread_ptid.
396         (tui_on_user_selected_context_changed): Use inferior_thread
397         instead of find_thread_ptid, and only when inferior_ptid is not
398         null_ptid.
399
400 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
401
402         PR python/23714
403         * gdb/python/python.c (execute_gdb_command): Call
404         prevent_dont_repeat earlier to avoid affecting dont_repeat.
405
406 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
407
408         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
409         (HFILES_NO_SRCDIR): Add arch/riscv.h.
410         * arch/riscv.c: New file.
411         * arch/riscv.h: New file.
412         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
413         this list, and add arch/riscv.o.
414         * features/Makefile: Add riscv features.
415         * features/riscv/32bit-cpu.c: New file.
416         * features/riscv/32bit-cpu.xml: New file.
417         * features/riscv/32bit-csr.c: New file.
418         * features/riscv/32bit-csr.xml: New file.
419         * features/riscv/32bit-fpu.c: New file.
420         * features/riscv/32bit-fpu.xml: New file.
421         * features/riscv/64bit-cpu.c: New file.
422         * features/riscv/64bit-cpu.xml: New file.
423         * features/riscv/64bit-csr.c: New file.
424         * features/riscv/64bit-csr.xml: New file.
425         * features/riscv/64bit-fpu.c: New file.
426         * features/riscv/64bit-fpu.xml: New file.
427         * features/riscv/rebuild-csr-xml.sh: New file.
428         * riscv-tdep.c: Add 'arch/riscv.h' include.
429         (riscv_gdb_reg_names): Delete.
430         (csr_reggroup): New global.
431         (struct riscv_register_alias): Delete.
432         (struct riscv_register_feature): New structure.
433         (riscv_register_aliases): Delete.
434         (riscv_xreg_feature): New global.
435         (riscv_freg_feature): New global.
436         (riscv_virtual_feature): New global.
437         (riscv_csr_feature): New global.
438         (riscv_create_csr_aliases): New function.
439         (riscv_read_misa_reg): Delete.
440         (riscv_has_feature): Delete.
441         (riscv_isa_xlen): Simplify, just return cached xlen.
442         (riscv_isa_flen): Simplify, just return cached flen.
443         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
444         (riscv_register_name): Update to make use of tdesc_register_name.
445         Look up xreg and freg names in the new globals riscv_xreg_feature
446         and riscv_freg_feature.  Don't supply csr aliases here.
447         (riscv_fpreg_q_type): Delete.
448         (riscv_register_type): Use tdesc_register_type in almost all
449         cases, override the returned type in a few specific cases only.
450         (riscv_print_one_register_info): Handle errors reading registers.
451         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
452         registers that are otherwise unknown to GDB.  Also check the
453         csr_reggroup.
454         (riscv_print_registers_info): Remove assert about upper register
455         number, and use gdbarch_register_reggroup_p instead of
456         short-cutting.
457         (riscv_find_default_target_description): New function.
458         (riscv_check_tdesc_feature): New function.
459         (riscv_add_reggroups): New function.
460         (riscv_setup_register_aliases): New function.
461         (riscv_init_reggroups): New function.
462         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
463         setup register groups.  Register new riscv debug variable.
464         * riscv-tdep.h: Add 'arch/riscv.h' include.
465         (struct gdbarch_tdep): Remove abi union, and add
466         riscv_gdbarch_features field.  Remove cached quad floating point
467         type, and provide initialisation for double type field.
468         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
469         the list of targets using the feature based target descriptions.
470         * NEWS: Mention target description support.
471
472 2018-11-21  Pedro Alves  <palves@redhat.com>
473
474         * valops.c (find_method_list, value_find_oload_method_list)
475         (find_overload_match, find_oload_champ): Rename parameters and
476         locals.
477
478 2018-11-21  Pedro Alves  <palves@redhat.com>
479
480         * valops.c (find_method_list): Replace pointer and length
481         parameters with an gdb::array_view.  Adjust.
482         (value_find_oload_method_list): Likewise.
483         (find_overload_match): Use gdb::array_view for methods list.
484         Adjust to find_oload_champ interface change.
485         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
486         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
487
488 2018-11-21  Pedro Alves  <palves@redhat.com>
489
490         * gdbtypes.c (compare_badness): Change type of parameters to const
491         reference.  Adjust to badness_vector being a std::vector now.
492         (rank_function): Adjust to badness_vector being a std::vector now.
493         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
494         (LENGTH_MATCH): Delete.
495         (compare_badness): Change type of parameters to const reference.
496         (rank_function): Return a badness_vector by value now.
497         (find_overload_match): Adjust to badness_vector being a
498         std::vector now.  Remove cleanups.
499         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
500         badness_vector pointer.
501         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
502         a badness_vector pointer.  Adjust to badness_vector being a
503         std::vector now.  Remove cleanups.
504         (find_oload_champ): 'oload_champ_bv' parameter now
505         a badness_vector pointer.  Adjust to badness_vector being a
506         std::vector now.  Remove cleanups.
507
508 2018-11-21  Pedro Alves  <palves@redhat.com>
509
510         * cp-support.c (sym_return_val_size, sym_return_val_index)
511         (sym_return_val): Delete.
512         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
513         add to the vector.
514         (make_symbol_overload_list): Adjust to return a std::vector
515         instead of maintaining a global open coded vector.
516         (make_symbol_overload_list_block): Add std::vector parameter.
517         (make_symbol_overload_list_block): Rename to ...
518         (add_symbol_overload_list_block): ... this and add std::vector
519         parameter.
520         (make_symbol_overload_list_namespace): Rename to ...
521         (add_symbol_overload_list_namespace): ... this and add std::vector
522         parameter.
523         (make_symbol_overload_list_adl_namespace): Rename to ...
524         (add_symbol_overload_list_adl_namespace): ... this and add
525         std::vector parameter.
526         (make_symbol_overload_list_adl): Delete.
527         (add_symbol_overload_list_adl): New.
528         (make_symbol_overload_list_using): Rename to ...
529         (add_symbol_overload_list_using): ... this and add std::vector
530         parameter.
531         (make_symbol_overload_list_qualified): Rename to ...
532         (add_symbol_overload_list_qualified): ... this and add std::vector
533         parameter.
534         * cp-support.h: Include "common/array-view.h" and <vector>.
535         (make_symbol_overload_list): Change return type to std::vector.
536         (make_symbol_overload_list_adl): Delete declaration.
537         (add_symbol_overload_list_adl): New declaration.
538         * valops.c (find_overload_match): Local 'oload_syms' now a
539         std::vector.
540         (find_oload_champ_namespace): 'oload_syms' parameter now a
541         std::vector pointer.
542         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
543         std::vector pointer.  Adjust to new make_symbol_overload_list
544         interface.
545
546 2018-11-21  Pedro Alves  <palves@redhat.com>
547
548         * common/array-view.h (array_view::splice(size_type, size_t)): New.
549         (array_view::splice(size_type)): New.
550         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
551         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
552         std::vector.
553         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
554         * extension.h: Include "common/array-view.h".
555         (xmethod_worker::invoke): Adjust to use gdb::array_view.
556         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
557         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
558         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
559         (xmethod_worker::do_get_result_type): Adjust to use
560         gdb::array_view.
561         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
562         * gdbtypes.h: Include "common/array-view.h".
563         (rank_function): Adjust to use gdb::array_view.
564         * python/py-xmethods.c (python_xmethod_worker::invoke)
565         (python_xmethod_worker::do_get_arg_types)
566         (python_xmethod_worker::do_get_result_type)
567         (python_xmethod_worker::invoke): Adjust to new interfaces.
568         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
569         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
570         * valops.c (find_overload_match, find_oload_champ_namespace)
571         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
572         gdb:array_view and the new xmethod_worker interfaces.
573         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
574         gdb::array_view.
575         * value.h (find_overload_match, result_type_of_xmethod)
576         (call_xmethod): Adjust to use gdb::array_view.
577         * unittests/array-view-selftests.c: Add slicing tests.
578
579 2018-11-21  Pedro Alves  <palves@redhat.com>
580
581         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
582         * common/array-view.h (make_array_view): New.
583         * compile/compile-object-run.c (compile_object_run): Adjust to
584         pass an array_view.
585         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
586         * eval.c (eval_call): Adjust to pass an array_view.
587         (evaluate_subexp_standard): Adjust to pass an array_view.
588         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
589         * guile/scm-value.c (gdbscm_value_call): Likewise.
590         * infcall.c (push_dummy_code): Replace pointer + size parameters
591         with an array_view parameter.
592         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
593         adjust.
594         * infcall.h: Include "common/array-view.h".
595         (call_function_by_hand, call_function_by_hand_dummy): Replace
596         pointer + size parameters with an array_view parameter.
597         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
598         * linux-tdep.c (linux_infcall_mmap): Likewise.
599         * objc-lang.c (lookup_objc_class, lookup_child_selector)
600         (value_nsstring, print_object_command): Likewise.
601         * python/py-value.c (valpy_call): Likewise.
602         * rust-lang.c (rust_evaluate_funcall): Likewise.
603         * spu-tdep.c (flush_ea_cache): Likewise.
604         * valarith.c (value_x_binop, value_x_unop): Likewise.
605         * valops.c (value_allocate_space_in_inferior): Likewise.
606         * unittests/array-view-selftests.c (run_tests): Add
607         gdb::make_array_view test.
608
609 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
610
611         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
612         than a fixed size buffer.
613
614 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
615
616         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
617         and remove insertion of extra spaces in GDB's output.
618         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
619         Layout field into a temporary buffer, and then output it as a
620         string field.
621
622 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
623
624         * NEWS: Document the language choice done by
625         'info [types|functions|variables]|rbreak'.
626
627 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
628
629         * symtab.c (treg_matches_sym_type_name): Use
630         scoped_switch_to_sym_language_if_auto instead of local logic.
631         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
632         to switch to SYM language when language mode is auto.
633
634 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
635
636         * language.h (scoped_switch_to_sym_language_if_auto): New class.
637
638 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
639
640         * symtab.c (search_symbols): Properly check absence of type regexp
641         before entering the loop scanning the minimal symbols.
642
643 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
644
645         * s12z-tdep.c (s12z_extract_return_value): New function.
646         (inv_reg_perm) New array.
647         (s12z_return_value): Populate readbuf if non-null.
648
649 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
650
651         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
652         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
653         to MinGW fixed by Gnulib.
654         (O_NOINHERIT): Define if not defined.
655
656 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
657
658         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
659
660 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
661
662         * infrun.c (displaced_step_inferior_state) <next>: Remove.
663
664 2018-11-19  Tom Tromey  <tom@tromey.com>
665
666         * source.c (get_filename_and_charpos): Return void.
667
668 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
669
670         * skip.c (_initialize_step_skip): Fix "info skip" help.
671
672 2018-11-16  Tom Tromey  <tom@tromey.com>
673
674         PR rust/23625:
675         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
676
677 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
678
679         * infrun.c (displaced_step_inferior_states): Change type to
680         std::forward_list.
681         (get_displaced_stepping_state): Adjust.
682         (displaced_step_in_progress_any_inferior): Adjust.
683         (add_displaced_stepping_state): Adjust.
684         (remove_displaced_stepping_state): Adjust.
685
686 2018-11-18  Tom Tromey  <tom@tromey.com>
687
688         PR build/23814:
689         * target-delegates.c: Rebuild.
690         * ia64-linux-nat.c (class ia64_linux_nat_target)
691         <have_steppable_watchpoint>: Use override.  Return true, not 1.
692         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
693         "self" argument.
694         (ia64_linux_nat_target::low_new_thread): Rename.
695         (class ia64_linux_nat_target) <read_description>: Don't declare.
696         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
697         bool.
698
699 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
700
701         PR gdb/22736:
702         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
703         lang_struct_return code.
704
705 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
706
707         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
708         return_method.
709         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
710         * amd64-tdep.c (amd64_push_arguments): Likewise.
711         (amd64_push_dummy_call): Likewise.
712         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
713         * arc-tdep.c (arc_push_dummy_call): Likewise.
714         * arm-tdep.c (arm_push_dummy_call): Likewise.
715         * avr-tdep.c (avr_push_dummy_call): Likewise.
716         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
717         * cris-tdep.c (cris_push_dummy_call): Likewise.
718         * csky-tdep.c (csky_push_dummy_call): Likewise.
719         * frv-tdep.c (frv_push_dummy_call): Likewise.
720         * gdbarch.c: Regenerate.
721         * gdbarch.h: Regenerate.
722         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
723         return_method.
724         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
725         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
726         (hppa64_push_dummy_call): Likewise.
727         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
728         * i386-tdep.c (i386_push_dummy_call): Likewise.
729         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
730         * infcall.c (call_function_by_hand_dummy): Likewise.
731         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
732         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
733         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
734         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
735         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
736         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
737         * mep-tdep.c (mep_push_dummy_call): Likewise.
738         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
739         (mips_n32n64_push_dummy_call): Likewise.
740         (mips_o32_push_dummy_call): Likewise.
741         (mips_o64_push_dummy_call): Likewise.
742         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
743         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
744         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
745         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
746         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
747         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
748         (ppc64_sysv_abi_push_dummy_call): Likewise.
749         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
750         (ppc64_sysv_abi_push_dummy_call): Likewise.
751         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
752         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
753         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
754         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
755         * rx-tdep.c (rx_push_dummy_call): Likewise.
756         * s390-tdep.c (s390_push_dummy_call): Likewise.
757         * score-tdep.c (score_push_dummy_call): Likewise.
758         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
759         (sh_push_dummy_call_nofpu): Likewise.
760         * sparc-tdep.c (sparc32_store_arguments): Likewise.
761         (sparc32_push_dummy_call): Likewise.
762         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
763         (sparc64_push_dummy_call): Likewise.
764         * spu-tdep.c (spu_push_dummy_call): Likewise.
765         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
766         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
767         * v850-tdep.c (v850_push_dummy_call): Likewise.
768         * vax-tdep.c (vax_push_dummy_call): Likewise.
769         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
770         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
771
772 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
773
774         * gdbarch.sh (enum function_call_return_method): Add enum.
775         * gdbarch.h: Regenerate.
776         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
777
778 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
779
780         * unittests/copy_bitwise-selftests.c: New file.
781         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
782         (selftests::copy_bitwise_tests): Delete, moving this code to
783         unittests/copy_bitwise-selftests.c instead.
784         (_initialize_utils): Do not register copy_bitwise tests.
785         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
786         unittests/copy_bitwise-selftests.c.
787
788 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
789
790         * ada-lang.c (move_bits): Delete. Update all callers to use
791         copy_bitwise instead.
792         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
793         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
794         Move from here to utils.c.
795         (_initialize_dwarf2loc): Remove call to register copy_bitwise
796         selftests.
797         * utils.h (copy_bitwise): Add declaration.
798         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
799         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
800         Moved here from dwarf2loc.c.
801         (_initialize_utils): Register copy_bitwise selftests.
802
803 2018-11-14  Jim Wilson  <jimw@sifive.com>
804
805         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
806         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
807         then increment next_regnum if odd.
808         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
809         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
810         function type.  Pass new arg to riscv_arg_location based on function
811         type.
812         (riscv_return_value): Pass new arg to riscv_arg_location.
813
814         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
815         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
816         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
817
818         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
819         setting len.  New local align, set to max of arg align and xlen,
820         and pass to first riscv_assign_stack_location call.
821
822 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
823
824         * skip.c (complete_skip_number): New function.
825         (_initialize_step_skip): Add completers to some skip commands.
826
827 2018-11-09  Tom Tromey  <tom@tromey.com>
828
829         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
830         (struct remote_g_packet_data): Derive from allocate_on_obstack.
831         <guesses>: Now a std::vector.
832         (remote_g_packet_data_init, register_remote_g_packet_guess):
833         Update.
834         (remote_read_description_p): Update.  Return bool.
835         (remote_target::read_description): Update.
836         (struct remote_g_packet_guess): Add constructor.
837
838 2018-11-09  Tom Tromey  <tom@tromey.com>
839
840         * common/scoped_fd.h (class scoped_fd): Add move constructor and
841         move assignment operator.
842         * psymtab.c (psymtab_to_fullname): Update.
843         * source.h (open_source_file): Return scoped_fd.
844         (find_and_open_source): Likewise.
845         * source.c (open_source_file): Return scoped_fd.
846         (get_filename_and_charpos): Update.
847         (print_source_lines_base): Update.  Use scoped_fd::to_file.
848         (forward_search_command): Likewise.
849         (reverse_search_command): Likewise.
850         (find_and_open_source): Return scoped_fd.
851         * tui/tui-source.c (tui_set_source_content): Update.  Use
852         gdb_file_up.
853
854 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
855
856         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
857         overflow.
858
859 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
860
861         * configure: Regenerate.
862
863 2018-11-09  Tom de Vries  <tdevries@suse.de>
864
865         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
866         unconditionally, to set the language of the symbol.  Manage freeing
867         returned pointer using gdb::unique_xmalloc_ptr.
868
869 2018-11-08  Tom Tromey  <tom@tromey.com>
870
871         * record.c (require_record_target): Upper-case "<TAB>".
872
873 2018-11-08  Tom Tromey  <tom@tromey.com>
874
875         * python/lib/gdb/command/pretty_printers.py
876         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
877
878 2018-11-08  Tom Tromey  <tom@tromey.com>
879
880         PR gdb/23555:
881         PR gdb/23838:
882         * target.h (target_supports_terminal_ours): Return bool.
883         * target.c (target_supports_terminal_ours): Handle case where
884         current_top_target returns nullptr.  Return bool.
885
886 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
887
888         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
889         return the correct count for potential HFAs.
890
891 2018-11-08  Jan Beulich  <jbeulich@suse.com>
892
893         * i387-tdep.c (i387_supply_xsave): Split handling of
894         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
895         (i387_collect_xsave): Likewise.
896
897 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
898
899         * riscv-tdep.c (riscv_insn::decode): Update header comment.
900         (riscv_frame_this_id): Catch errors thrown while building the
901         frame cache, leave the frame id as the default, which is the outer
902         frame id.
903
904 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
905
906         * ada-lang.c (read_atcb): Only set task_info->called_task if
907         task_info->state == Entry_Caller_Sleep.
908         (print_ada_task_info): Do not check task_info->state before
909         checking task_info->called_task.
910         (info_task): Likewise.
911
912 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
913
914         * ada-tasks.c (read_atcb): Clear task_info before computing
915         the value of each of its fields.
916
917 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
918
919         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
920         NULL before dereferencing it.
921
922 2018-11-06  Tom de Vries  <tdevries@suse.de>
923
924         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
925         program headers.
926
927 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
928
929         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
930         so that it applies to uclinux as well.
931
932 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
933
934         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
935         when on AAPCS.
936
937 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
938
939         * riscv-fbsd-nat.c (getregs_supplies): Return true for
940         RISCV_CSR_SSTATUS_REGNUM.
941
942 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
943
944         * source.c (open_source_file): Fix leak by transferring the
945         current s->fullname to the unique_xmalloc_ptr fullname given
946         to find_and_open_source.
947
948 2018-11-04  Tom Tromey  <tom@tromey.com>
949
950         * varobj.c (install_default_visualizer): Update.
951         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
952         Return gdbpy_ref.
953         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
954         (find_pretty_printer_from_progspace)
955         (find_pretty_printer_from_gdb, find_pretty_printer)
956         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
957         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
958         Update.
959
960 2018-11-04  Tom Tromey  <tom@tromey.com>
961
962         * python/python.c (gdbpy_parameter_value): Update.
963         * python/python-internal.h (python_string_to_unicode)
964         (python_string_to_target_python_string)
965         (host_string_to_python_string): Return gdbpy_ref.
966         * python/py-utils.c (python_string_to_unicode)
967         (unicode_to_encoded_python_string)
968         (unicode_to_target_python_string)
969         (python_string_to_target_string)
970         (python_string_to_target_python_string): Return gdbpy_ref.
971         (python_string_to_host_string): Update.
972         (host_string_to_python_string): Return gdbpy_ref.
973         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
974         (stpy_fullname): Update.
975         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
976         Update.
977         * python/py-prettyprint.c (print_string_repr): Update.
978         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
979         (objfpy_get_build_id): Update.
980         * python/py-breakpoint.c (bppy_get_location)
981         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
982         Update.
983
984 2018-11-04  Tom Tromey  <tom@tromey.com>
985
986         * python/python-internal.h (gdb_py_object_from_longest)
987         (gdb_py_object_from_ulongest): Return gdbpy_ref.
988         * python/py-value.c (valpy_int): Update.
989         * python/py-utils.c (gdb_py_object_from_longest): Return
990         gdbpy_ref.
991         (gdb_py_object_from_ulongest): Likewise.
992         * python/py-type.c (typy_get_alignof): Update.
993         * python/py-linetable.c (ltpy_get_all_source_lines)
994         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
995         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
996
997 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
998
999         * ada-lang.c (_initialize_ada_language): Fix typo.
1000
1001 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1002
1003         * language.c (type): Remove.
1004         (_initialize_language): Remove assignment to type.
1005
1006 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
1007
1008         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
1009         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
1010         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
1011         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
1012         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
1013         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
1014         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
1015         and aarch64-ravenscar-thread.o.
1016         * NEWS: Add entry documenting Ravenscar tasking support
1017         on AArch64 ELF.
1018
1019 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
1020
1021         * symtab.c (info_functions_command): Initialize quiet flag.
1022         * stack.c (info_args_command): Likewise.
1023
1024 2018-11-01  Jim Wilson  <jimw@sifive.com>
1025
1026         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
1027         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
1028         debugging messages.
1029
1030 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1031
1032         * ada-lang.c (ada_watch_location_expression): New function.
1033         (ada_language_defn): Set la_watch_location_expression to
1034         ada_watch_location_expression.
1035
1036 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1037
1038         * print-utils.c (int_string): Remove unnecessary trailing spaces.
1039
1040 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
1041
1042         * rs6000-tdep.c (skip_prologue): Fix potential negative left
1043         shifting.
1044
1045 2018-11-01  Jerome Guitton  <guitton@adacore.com>
1046             Joel Brobecker  <brobecker@adacore.com>
1047
1048         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
1049         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
1050         * arm-pikeos-tdep.c: New file.
1051         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
1052         embedded system.
1053         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
1054
1055 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
1056
1057         * common/pathstuff.c (get_standard_temp_dir): New.
1058         * common/pathstuff.h (get_standard_temp_dir): New.
1059         * config.in: Re-generate.
1060         * configure: Re-generate.
1061         * configure.ac: Don't check for mkdtemp.
1062         * gnulib/aclocal-m4-deps.mk: Re-generate.
1063         * gnulib/aclocal.m4: Re-generate.
1064         * gnulib/config.in: Re-generate.
1065         * gnulib/configure: Re-generate.
1066         * gnulib/import/Makefile.am: Re-generate.
1067         * gnulib/import/Makefile.in: Re-generate.
1068         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
1069         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
1070         * gnulib/import/m4/mkdtemp.m4: New file.
1071         * gnulib/import/mkdtemp.c: New file.
1072         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
1073         Add mkdtemp module.
1074         * unittests/mkdir-recursive-selftests.c (test): Use
1075         get_standard_temp_dir.
1076         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
1077         ifdef.
1078         * compile/compile.c (get_compile_file_tempdir): Likewise.
1079
1080 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1081
1082         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1083         (SIG_FRAME_LR_OFFSET64): New define.
1084         (SIG_FRAME_FP_OFFSET64): New define.
1085         (aix_sighandle_frame_cache): New Function.
1086         (aix_sighandle_frame_this_id): New Function.
1087         (aix_sighandle_frame_prev_register): New Function.
1088         (aix_sighandle_frame_sniffer): New Function.
1089         (aix_sighandle_frame_unwind): New global variable.
1090         (rs6000_aix_init_osabi): Install new frame unwinder.
1091
1092 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1093
1094         PR gdb/23835
1095         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1096         already defined.
1097
1098 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1099
1100         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1101
1102 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1103
1104         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1105         (producer_is_icc): New function.
1106         (check_producer): Set producer_is_icc field on dwarf2_cu.
1107         (dwarf2_init_integer_type): New function.
1108         (read_base_type): Call dwarf2_init_integer_type instead of
1109         init_integer_type in all cases.
1110         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1111         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1112         LEN is greater than 0.
1113
1114 2018-10-30  Tom Tromey  <tom@tromey.com>
1115
1116         * main.c (captured_main_1): Check return value of bfd_init.
1117
1118 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1119
1120         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1121         Adjust comments.
1122
1123 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1124
1125         * procfs.c: Include common/pathstuff.h.
1126
1127 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1128
1129         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1130         Add missing braces.  No functional change.
1131
1132 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1133
1134         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1135         to report a bad option and fix indentation.
1136         * demangle.c (demangle_command): Use report_unrecognized_option_error
1137         to report a bad option and correctly report the bad option.
1138
1139 2018-10-27  Tom Tromey  <tom@tromey.com>
1140
1141         PR cli/23364:
1142         * darwin-nat.c (copied_shell): New global.
1143         (may_have_sip): Rename from should_disable_startup_with_shell.
1144         (copy_shell_to_cache, maybe_cache_shell): New functions.
1145         (darwin_nat_target::create_inferior): Update.  Use
1146         copied_shell.
1147
1148 2018-10-27  Tom Tromey  <tom@tromey.com>
1149
1150         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1151         (run_tests): Call test_to_file.
1152         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1153         temporary files.
1154         * common/scoped_fd.h (scoped_fd::to_file): New method.
1155
1156 2018-10-27  Tom Tromey  <tom@tromey.com>
1157
1158         * unittests/scoped_mmap-selftests.c (test_normal): Use
1159         gdb_mkostemp_cloexec.
1160         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1161         Use gdb_mkostemp_cloexec.
1162         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1163         gnulib/config.in, gnulib/configure,
1164         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1165         gnulib/import/m4/gnulib-cache.m4,
1166         gnulib/import/m4/gnulib-comp.m4: Update.
1167         * gnulib/import/m4/mkostemp.m4: New file.
1168         * gnulib/import/m4/mkstemp.m4: Remove.
1169         * gnulib/import/mkostemp.c: New file.
1170         * gnulib/import/mkstemp.m4: Remove.
1171         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1172         mkstemp, add mkostemp.  Apply new patch.
1173         * gnulib/import/stdlib.in.h: Apply patch.
1174         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1175         New file.
1176         * dwarf-index-write.c (write_psymtabs_to_index): Use
1177         gdb_mkostemp_cloexec.
1178         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1179
1180 2018-10-27  Tom Tromey  <tom@tromey.com>
1181
1182         * unittests/mkdir-recursive-selftests.c: New file.
1183         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1184         unittests/mkdir-recursive-selftests.c.
1185         * dwarf-index-cache.c (mkdir_recursive): Move to
1186         common/filestuff.c.
1187         (index_cache::store): Check return value of mkdir_recursive.
1188         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1189         (_initialize_index_cache): Don't register test.
1190         * common/filestuff.h (mkdir_recursive): Declare.
1191         * common/filestuff.c (mkdir_recursive): Move from
1192         dwarf-index-cache.c.  Return bool.
1193
1194 2018-10-27  Tom Tromey  <tom@tromey.com>
1195
1196         * dwarf-index-write.c (write_psymtabs_to_index): Move
1197         make_temp_filename to common/pathstuff.c.
1198         * common/pathstuff.h (make_temp_filename): Declare.
1199         * common/pathstuff.c (make_temp_filename): New function, moved
1200         from dwarf-index-write.c.
1201
1202 2018-10-27  Tom Tromey  <tom@tromey.com>
1203
1204         * procfs.c (procfs_target::create_inferior): Use get_shell.
1205         * cli/cli-cmds.c (shell_escape): Use get_shell.
1206         * windows-nat.c (windows_nat_target::create_inferior): Use
1207         get_shell.
1208         * common/pathstuff.c (get_shell): New function.
1209         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1210         (fork_inferior): Use get_shell.
1211         * common/pathstuff.h (get_shell): Declare.
1212
1213 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1214
1215         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1216
1217 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1218
1219         * stack.c (print_variable_and_value_data): Add preg and treg.
1220         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1221         and update callers.
1222         (print_frame_arg_vars): Likewise.
1223         (prepare_reg): New function.
1224         (info_locals_command): Extract info print args and use them.
1225         (info_args_command): Likewise.
1226         (_initialize_stack): Modify on-line help.
1227         * symtab.c (treg_matches_sym_type_name): New function.
1228         (search_symbols): New arg t_regexp.
1229         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1230         (info_variables_command): Extract info print args and use them.
1231         (info_functions_command): Likewise.
1232         (info_types_command): Update call to symtab_symbol_info.
1233         (_initialize_symtab): Modify on-line help.
1234         * symtab.h (treg_matches_sym_type_name): New function.
1235         (search_symbols): New t_regexp arg.
1236
1237 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1238
1239         * cli-utils.c (extract_arg_maybe_quoted): New function.
1240         (extract_info_print_args): New function.
1241         (info_print_args_help): New function.
1242         (report_unrecognized_option_error): New function.
1243         * cli-utils.h (extract_arg_maybe_quoted): New function.
1244         (extract_info_print_args): New function.
1245         (info_print_args_help): New function.
1246         (report_unrecognized_option_error): New function.
1247
1248 2018-10-26  Tom Tromey  <tom@tromey.com>
1249
1250         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1251         (compute_compunit_symtab_includes): Update.
1252         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1253         (compunit_symtab_ptr): Likewise.
1254
1255 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1256
1257         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1258         default_print_auxv_entry for specific tag values.
1259
1260 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1261
1262         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1263
1264 2018-10-26  Jim Wilson  <jimw@sifive.com>
1265
1266         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1267         (riscv_linux_sigframe_init): Declare.
1268         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1269         (riscv_linux_sigframe): New.
1270         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1271         (riscv_linux_sigframe_init): Define.
1272         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1273
1274         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1275         (riscv_isa_flen): Likewise.  Drop static.
1276         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1277         (riscv_isa_flen): Likewise.  Declare.
1278
1279 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1280             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1281
1282         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1283         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1284         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1285         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1286         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1287         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1288         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1289         Define.
1290         (struct ppc_linux_features) <htm>: New field.
1291         (ppc_linux_no_features): Add initializer for htm field.
1292         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1293         new tdescs.
1294         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1295         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1296         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1297         Define if not already defined.
1298         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1299         and rs6000/powerpc-isa207-htm-vsx64l.
1300         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1301         rs6000/powerpc-isa207-htm-vsx64l.xml.
1302         * features/rs6000/power-htm-spr.xml: New file.
1303         * features/rs6000/power-htm-core.xml: New file.
1304         * features/rs6000/power64-htm-core.xml: New file.
1305         * features/rs6000/power-htm-fpu.xml: New file.
1306         * features/rs6000/power-htm-altivec.xml: New file.
1307         * features/rs6000/power-htm-vsx.xml: New file.
1308         * features/rs6000/power-htm-ppr.xml: New file.
1309         * features/rs6000/power-htm-dscr.xml: New file.
1310         * features/rs6000/power-htm-tar.xml: New file.
1311         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1312         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1313         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1314         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1315         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1316         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1317         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1318         fetch_regset with HTM regsets.
1319         (store_register, store_ppc_registers): Call store_regset with HTM
1320         regsets.
1321         (ppc_linux_nat_target::read_description): Set htm field in the
1322         features struct if needed.
1323         * ppc-linux-tdep.c: Include
1324         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1325         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1326         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1327         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1328         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1329         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1330         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1331         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1332         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1333         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1334         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1335         (ppc32_linux_ctarregset): New globals.
1336         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1337         (ppc_linux_collect_core_cpgrregset): New function.
1338         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1339         regsets.
1340         (ppc_linux_core_read_description): Check if the tm spr section is
1341         present and set htm in the features struct.
1342         (_initialize_ppc_linux_tdep): Call
1343         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1344         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1345         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1346         Declare.
1347         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1348         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1349         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1350         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1351         New fields.
1352         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1353         Likewise.
1354         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1355         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1356         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1357         New enum fields.
1358         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1359         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1360         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1361         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1362         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1363         <PPC_CTAR_REGNUM>: Likewise.
1364         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1365         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1366         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1367         (IS_CEFP_PSEUDOREG): Define.
1368         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1369         registers.  Return names for the checkpointed DFP, VSX, and EFP
1370         pseudo registers.
1371         (rs6000_pseudo_register_type): Remove initial assert and raise an
1372         internal error in the else clause instead.  Return types for the
1373         checkpointed DFP, VSX, and EFP pseudo registers.
1374         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1375         checkpointed DFP pseudo registers.
1376         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1377         checkpointed VSX pseudo registers.
1378         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1379         from efpr_pseudo_register_read and
1380         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1381         registers.
1382         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1383         Handle checkpointed DFP, VSX, and EFP registers.
1384         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1385         (efp_ax_pseudo_register_collect): New functions.
1386         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1387         register logic to new functions.  Handle checkpointed DFP, VSX,
1388         and EFP pseudo registers.
1389         (rs6000_gdbarch_init): Look for and validate the htm features.
1390         Include checkpointed DFP, VSX and EFP pseudo-registers.
1391         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1392         HTM registers.
1393
1394 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1395
1396         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1397         without altivec or fpu.
1398
1399 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1400             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1401
1402         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1403         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1404         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1405         Define if not already defined.
1406         * features/rs6000/power-ebb.xml: New file.
1407         * features/rs6000/power-linux-pmu.xml: New file.
1408         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1409         features.
1410         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1411         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1412         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1413         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1414         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1415         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1416         fetch_regset with ebb and pmu regsets.
1417         (store_register, store_ppc_registers): Call store_regset with ebb
1418         and pmu regsets.
1419         (ppc_linux_nat_target::read_description): Set isa207 field in the
1420         features struct if ebb and pmu are avaiable.
1421         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1422         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1423         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1424         and pmu regsets.
1425         (ppc_linux_core_read_description): Check if the pmu section is
1426         present and set isa207 in the features struct.
1427         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1428         (ppc32_linux_pmuregset): Declare.
1429         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1430         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1431         <ppc_sier_regnum>: New field.
1432         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1433         New enum values.
1434         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1435         values.
1436         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1437         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1438         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1439         ebb and pmu features.
1440
1441 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1442             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1443
1444         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1445         (tdesc_powerpc_isa207_vsx64l): Declare.
1446         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1447         (struct ppc_linux_features) <isa207>: New field.
1448         (ppc_linux_no_features): Add initializer for isa207 field.
1449         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1450         new tdescs.
1451         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1452         (NT_PPC_TAR): Define if not already defined.
1453         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1454         rs6000/powerpc-isa207-vsx64l.
1455         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1456         rs6000/powerpc-isa207-vsx64l.xml.
1457         * features/rs6000/power-tar.xml: New file.
1458         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1459         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1460         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1461         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1462         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1463         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1464         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1465         fetch_regset with the TAR regset.
1466         (store_register, store_ppc_registers): Call store_regset with the
1467         TAR regset.
1468         (ppc_linux_nat_target::read_description): Set isa207 field in the
1469         features struct if needed.
1470         * ppc-linux-tdep.c: Include
1471         features/rs6000/powerpc-isa207-vsx32l.c and
1472         features/rs6000/powerpc-isa207-vsx64l.c.
1473         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1474         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1475         regset.
1476         (ppc_linux_core_read_description): Check if the tar section is
1477         present and set isa207 in the features struct.
1478         (_initialize_ppc_linux_tdep): Call
1479         initialize_tdesc_powerpc_isa207_vsx32l and
1480         initialize_tdesc_powerpc_isa207_vsx64l.
1481         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1482         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1483         (enum) <PPC_TAR_REGNUM>: New enum value.
1484         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1485         feature.
1486         (ppc_process_record_op31): Record changes to TAR.
1487
1488 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1489             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1490
1491         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1492         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1493         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1494         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1495         (struct ppc_linux_features) <ppr_dscr>: New field.
1496         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1497         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1498         new tdescs.
1499         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1500         Define if not already defined.
1501         * features/Makefile (WHICH): Add
1502         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1503         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1504         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1505         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1506         * features/rs6000/power-dscr.xml: New file.
1507         * features/rs6000/power-ppr.xml: New file.
1508         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1509         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1510         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1511         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1512         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1513         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1514         * ppc-linux-nat.c: Include <sys/uio.h>.
1515         (fetch_regset, store_regset, check_regset): New functions.
1516         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1517         DSCR and PPR regsets.
1518         (store_register, store_ppc_registers): Call store_regset with
1519         DSCR and PPR regsets.
1520         (ppc_linux_get_hwcap2): New function.
1521         (ppc_linux_nat_target::read_description): Call
1522         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1523         features struct if needed.
1524         * ppc-linux-tdep.c: Include
1525         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1526         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1527         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1528         (ppc32_linux_dscrregset): New globals.
1529         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1530         and dscr regsets.
1531         (ppc_linux_core_read_description): Check if the ppr and dscr
1532         sections are present and set ppr_dscr in the features struct.
1533         (_initialize_ppc_linux_tdep): Call
1534         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1535         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1536         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1537         (ppc32_linux_dscrregset): Declare.
1538         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1539         <ppc_dscr_regnum>: New field.
1540         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1541         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1542         and dscr features.
1543         (ppc_process_record_op31): Record changes to PPR and DSCR.
1544
1545 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1546
1547         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1548         second initializer line for the have_* variables.  Initialize
1549         have_fpu to 0 instead of 1.
1550
1551 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1552
1553         * arch/ppc-linux-common.c (ppc_linux_match_description):
1554         Parenthesize tdesc assignements and indent them properly.
1555
1556 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1557
1558         * ppc-linux-nat.c (fetch_register): Change if statement to else
1559         if.
1560         (store_register): Likewise.
1561
1562 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1563
1564         * rs6000-tdep.c: Remove reggroups.h include.
1565         (rs6000_pseudo_register_reggroup_p): Remove.
1566         (rs6000_gdbarch_init): Remove call to
1567         set_tdesc_pseudo_register_reggroup_p.
1568
1569 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1570
1571         * reggroups.c (default_register_reggroup_p): Return true for
1572         decfloat registers and float_reggroup.
1573
1574 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1575
1576         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1577         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1578         ppc_linux_collect_vrregset by regcache_collect_regset.
1579
1580 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1581
1582         * linux-tdep.c (linux_collect_regset_section_cb): Use
1583         std::vector<gdb_byte> instead of char * and malloc for buf.
1584         Remove xfree.
1585
1586 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1587
1588         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1589         symtab_start instead of always using language_unknown.
1590
1591 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1592
1593         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1594         READ_P parameter, catch and ignore register access errors from
1595         either the old or new MISA location.
1596         (riscv_has_feature): Update call to riscv_read_misa_reg.
1597
1598 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1599
1600         * python/py-function.c (convert_values_to_python): Return
1601         gdbpy_ref<>.  Add header comment.
1602         (fnpy_call): Adjust.
1603
1604 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1605
1606         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1607         (cmdpy_completer_handle_brkchars): Adjust.
1608         (cmdpy_completer): Adjust.
1609
1610 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1611
1612         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1613         Pass correct regnum to raw_supply_zeroed.
1614
1615 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1616
1617         * regcache.c (cooked_read_test): Add CSKY to the list of
1618         architectures with a save_reggroup
1619
1620 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1621
1622         PR gdb/23368
1623         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1624         transfer terminal state from old new new inferior.
1625         * terminal.h (swap_terminal_info): New function.
1626         * inflow.c (swap_terminal_info): New function.
1627
1628 2018-10-23  Tom Tromey  <tom@tromey.com>
1629
1630         * record-btrace.c (get_thread_current_frame_id): Rename from
1631         get_thread_current_frame.  Return a frame_id.
1632         (record_btrace_start_replaying): Update.
1633
1634 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1635
1636         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1637         for CSRs.
1638
1639 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1640
1641         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1642         have_nonsteppable_watchpoint attribute to 1.
1643
1644 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1645
1646         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1647         register names.
1648         (struct register_alias): Rename to...
1649         (struct riscv_register_alias): ...this, and update comment.
1650         (riscv_register_aliases): Update type, and alias names.  Remove
1651         CSR names from this list.
1652         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1653         register names.  Add an extra assertion.
1654         (riscv_is_regnum_a_named_csr): New function.
1655         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1656
1657 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1658
1659         * configure.tgt: Add configuration for s12z.
1660         * s12z-tdep.c:  New file.
1661         * NEWS: Mention new target.
1662
1663 2018-10-22  Jim Wilson  <jimw@sifive.com>
1664
1665         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1666         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1667
1668         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1669         (riscv_register_type): Use them.
1670         (riscv_print_one_register_info): Handle union of floats same as float.
1671         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1672         riscv_fpreg_q_type fields.
1673
1674 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1675
1676         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1677         * gdbarch.h: Re-generate.
1678         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1679         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1680         * eval.c (evaluate_subexp_standard): Likewise.
1681         * findvar.c (value_of_register): Likewise.
1682         (value_of_register_lazy): Likewise.
1683         (address_from_register): Likewise.
1684         * frame.c (get_frame_register_bytes): Likewise.
1685         * gdbarch-selftests.c (register_to_value_test): Likewise.
1686         * h8300-tdep.c (h8300_register_type): Likewise.
1687         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1688         (i386_svr4_reg_to_regnum): Likewise.
1689         * infcmd.c (default_print_registers_info): Likewise.
1690         (registers_info): Likewise.
1691         (print_vector_info): Likewise.
1692         (default_print_float_info): Likewise.
1693         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1694         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1695         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1696         (mi_cmd_data_list_changed_registers): Likewise.
1697         (mi_cmd_data_list_register_values): Likewise.
1698         (mi_cmd_data_write_register_values): Likewise.
1699         (mi_cmd_trace_frame_collected): Likewise.
1700         * mips-tdep.c (print_gp_register_row): Likewise.
1701         (mips_print_registers_info): Likewise.
1702         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1703         * regcache.c (init_regcache_descr): Likewise.
1704         (register_size): Likewise.
1705         (register_dump::dump): Likewise.
1706         (cooked_read_test): Likewise.
1707         (cooked_write_test): Likewise.
1708         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1709         (rs6000_gdbarch_init): Likewise.
1710         * stabsread.c (stab_reg_to_regnum): Likewise.
1711         * stack.c (info_frame_command): Likewise.
1712         * target-descriptions.c (tdesc_register_name): Likewise.
1713         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1714         * tui/tui-regs.c (tui_show_register_group): Likewise.
1715         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1716         (user_reg_map_regnum_to_name): Likewise.
1717         (value_of_user_reg): Likewise.
1718         (maintenance_print_user_registers): Likewise.
1719         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1720         (xtensa_register_name): Likewise.
1721         (xtensa_register_type): Likewise.
1722         (xtensa_reg_to_regnum): Likewise.
1723         (xtensa_pseudo_register_read): Likewise.
1724         (xtensa_pseudo_register_write): Likewise.
1725
1726 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1727
1728         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1729         correctly-sized buffer with raw_read.
1730         (amd64_pseudo_register_write): Use correctly-sized buffer for
1731         raw_read/raw_write.
1732
1733 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1734
1735         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1736         in add_prefix_cmd of set print type.
1737
1738 2018-10-19  Tom Tromey  <tom@tromey.com>
1739
1740         PR tui/18388:
1741         * NEWS: Mention tabset deprecation.
1742         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1743         (update_tab_width): New function.
1744         (tui_set_tab_width, tui_show_tab_width): New functions.
1745         (tui_set_tab_width_command): Use update_tab_width.
1746         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1747         Add new "set tui tab-width" command.
1748         * tui/tui-source.c (tui_set_source_content): Update.
1749         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1750         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1751         Don't declare.
1752         (tui_tab_width): Declare.
1753         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1754         (tui_set_default_tab_len): Remove.
1755
1756 2018-10-19  Tom Tromey  <tom@tromey.com>
1757
1758         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1759         (key_is_backspace, tui_getc): Don't declare.
1760         * tui/tui-io.c (key_is_start_sequence): Now static.
1761         (key_is_end_sequence, key_is_backspace): Remove.
1762         (tui_getc): Now static.
1763
1764 2018-10-19  Tom Tromey  <tom@tromey.com>
1765
1766         * symfile.c (reread_symbols): Clear "static_links".
1767
1768 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1769
1770         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1771         define.
1772         (aarch64_linux_sigframe_init): Extra boundary checks.
1773
1774 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1775
1776         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1777         the possibly non-existent tdesc type 'vec128', but the type of raw
1778         register v16 instead.
1779
1780 2018-10-19  Gary Benson <gbenson@redhat.com>
1781
1782         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1783
1784 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1785
1786         PR cli/23785
1787         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1788         NULL.
1789
1790 2018-10-17  Paul Koning  <paul_koning@dell.com>
1791
1792         * charset.c (convert_between_encodings): Fix unsigned overflow.
1793
1794 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1795
1796         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1797         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1798         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1799         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1800         New functions.
1801         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1802         and fbsd_info_proc_mappings_header.
1803         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1804         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1805         New.
1806
1807 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1808
1809         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1810         Solaris Maintainer.
1811
1812 2018-10-15  Tom Tromey  <tom@tromey.com>
1813
1814         * tui/tui.c (strcat_to_buf): Remove casts.
1815         * tui/tui-winsource.c (tui_show_source_line)
1816         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1817         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1818         * tui/tui-windata.c (tui_first_data_item_displayed)
1819         (tui_delete_data_content_windows, tui_erase_data_content)
1820         (tui_display_all_data, tui_display_data_from)
1821         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1822         * tui/tui-win.c (tui_set_win_height)
1823         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1824         casts.
1825         * tui/tui-win.c (tui_resize_all): Remove casts.
1826         (tui_scroll_backward_command, tui_set_focus)
1827         (tui_set_tab_width_command): Likewise.
1828         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1829         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1830         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1831         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1832         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1833         Remove casts.
1834
1835 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1836
1837         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1838         AArch64/ARM maintainer.
1839
1840 2018-10-11  Gary Benson <gbenson@redhat.com>
1841
1842         * interps.h (interp::m_name): Make private and mutable.
1843         * interps.c (interp::~interp): Free m_name.
1844
1845 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1846             Simon Marchi <simark@simark.ca>
1847
1848         * README (`configure' options): Add documentation for new
1849         "--enable-unit-tests" option.
1850         * acinclude.m4: Include "selftest.m4".
1851         * configure: Regenerate.
1852         * configure.ac: Use "GDB_AC_SELFTEST".
1853         * maint.c (maintenance_selftest): Update message informing
1854         that selftests have been disabled.
1855         (maintenance_info_selftests): Likewise.
1856         * selftest.m4: New file.
1857
1858 2018-10-10  Gary Benson <gbenson@redhat.com>
1859
1860         * remote.c (remote_target::remote_send_printf): Add
1861         missing va_end found by Coverity.
1862
1863 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1864
1865         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1866
1867 2018-10-09  Tom Tromey  <tom@tromey.com>
1868
1869         * configure: Rebuild.
1870         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1871         * NEWS: Update --enable-ubsan documentation.
1872
1873 2018-10-09  Gary Benson <gbenson@redhat.com>
1874
1875         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1876         found by Coverity.
1877
1878 2018-10-08  Tom Tromey  <tom@tromey.com>
1879
1880         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1881         variable.
1882         (riscv_fbsd_init_abi): Likewise.
1883
1884 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1885         * valops.c (value_struct_elt_for_reference): Rename local variable
1886         to work around the shadowing a previous local warning.
1887
1888 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1889
1890         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1891         * NEWS: Mention new FreeBSD/riscv native configuration.
1892         * configure.host: Add riscv*-*-freebsd*.
1893         * configure.nat: Likewise.
1894         * riscv-fbsd-nat.c: New file.
1895
1896 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1897
1898         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1899         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1900         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1901         * NEWS: Mention new FreeBSD/riscv target.
1902         * configure.tgt: Add riscv*-*-freebsd*.
1903         * riscv-fbsd-tdep.c: New file.
1904         * riscv-fbsd-tdep.h: New file.
1905
1906 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1907
1908         * regcache.h (struct regcache_map_entry): Note that this type can
1909         be used with traditional frame caches.
1910         * trad-frame.c (trad_frame_set_reg_regmap): New.
1911         * trad-frame.h (trad_frame_set_reg_regmap): New.
1912
1913 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1914
1915         PR c++/16841
1916         * valops.c (get_virtual_base_offset): New function.
1917         (value_struct_elt_for_reference): Use it to get virtual base offset
1918         and add it in calculating class member address.
1919
1920 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1921
1922         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1923         (check_producer): Check if the producer is codewarrior.
1924         (producer_is_codewarrior): New function.
1925         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1926         produced by codewarrior.
1927         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1928
1929 2018-10-06  Tom Tromey  <tom@tromey.com>
1930
1931         PR python/19399:
1932         * python/py-inferior.c: Add "architecture" entry.
1933         (infpy_architecture): New function.
1934
1935 2018-10-06  Tom Tromey  <tom@tromey.com>
1936
1937         PR python/21765:
1938         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1939         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1940         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1941         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1942
1943 2018-10-06  Tom Tromey  <tom@tromey.com>
1944
1945         PR build/17077:
1946         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1947         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1948         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1949         #include.
1950
1951 2018-10-06  Tom Tromey  <tom@tromey.com>
1952
1953         * python/py-breakpoint.c (bppy_get_location): Handle a
1954         bp_breakpoint without a location.
1955
1956 2018-10-06  Tom Tromey  <tom@tromey.com>
1957
1958         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1959         (_RegEx): Reformat help text.
1960         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1961         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1962         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1963         text.
1964         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1965         (EnableXMethod, DisableXMethod): Remove help indentation.
1966         Capitalize meta-syntactic variables.
1967         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1968         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1969         Capitalize meta-syntactic variables.
1970         * python/lib/gdb/command/explore.py (ExploreCommand)
1971         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1972         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1973         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1974         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1975         Remove help indentation.
1976         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1977         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1978         (DisableFrameFilter, SetFrameFilterPriority)
1979         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1980
1981 2018-10-06  Tom Tromey  <tom@tromey.com>
1982
1983         PR tui/28819:
1984         * tui/tui-io.c (gdb_wgetch): New function.
1985         (tui_mld_getc, tui_getc): Use it.
1986
1987 2018-10-05  Tom Tromey  <tom@tromey.com>
1988
1989         * sol-thread.c (sol_thread_target::wait): Rename inner
1990         "save_ptid".
1991
1992 2018-10-04  Tom Tromey  <tom@tromey.com>
1993
1994         * configure: Rebuild.
1995         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1996
1997 2018-10-04  Tom Tromey  <tom@tromey.com>
1998
1999         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
2000         declaration of "block".
2001
2002 2018-10-04  Tom Tromey  <tom@tromey.com>
2003
2004         * common/filestuff.c (fdwalk): Remove inner declaration of
2005         "result".
2006
2007 2018-10-04  Tom Tromey  <tom@tromey.com>
2008
2009         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
2010         "structs_addr" and hoist declaration.
2011
2012 2018-10-04  Tom Tromey  <tom@tromey.com>
2013
2014         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
2015         variable "size".
2016
2017 2018-10-04  Tom Tromey  <tom@tromey.com>
2018
2019         * mdebugread.c (parse_partial_symbols): Use std::string.
2020
2021 2018-10-04  Tom Tromey  <tom@tromey.com>
2022
2023         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
2024         * p-valprint.c (pascal_val_print): Split inner "i" variable.
2025         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
2026         header.
2027         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
2028         more inner scope.
2029         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
2030         * varobj.c (varobj_update): Rename inner "newobj",
2031         "type_changed".
2032         * valprint.c (generic_emit_char): Rename inner "buf".
2033         * valops.c (find_overload_match): Rename inner "temp".
2034         (value_struct_elt_for_reference): Declare "v" in more inner
2035         scope.
2036         * v850-tdep.c (v850_push_dummy_call): Rename "len".
2037         * unittests/array-view-selftests.c (run_tests): Rename inner
2038         "vec".
2039         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
2040         header.
2041         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
2042         "tsv" in more inner scope.
2043         (print_one_static_tracepoint_marker): Rename inner
2044         "tuple_emitter".
2045         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
2046         (tic6x_push_dummy_call): Don't redeclare "addr".
2047         * target-float.c: Declare "dto" lower.
2048         * symtab.c (lookup_local_symbol): Rename inner "sym".
2049         (find_pc_sect_line): Rename inner "pc".
2050         * stack.c (print_frame): Don't redeclare "gdbarch".
2051         (return_command): Rename inner "gdbarch".
2052         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
2053         "sp".
2054         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
2055         header.
2056         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
2057         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
2058         scope.
2059         * remote.c (remote_target::update_thread_list): Don't redeclare
2060         "tp".
2061         (remote_target::process_initial_stop_replies): Rename inner
2062         "thread".
2063         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
2064         (remote_target::wait_as): Don't redeclare "stop_reply".
2065         (remote_target::get_thread_local_address): Rename inner
2066         "result".
2067         (remote_target::get_tib_address): Likewise.
2068
2069         * regcache.c (cooked_read_test): Rename "regnum".
2070         * record-btrace.c (cmd_record_btrace_start): Rename inner
2071         "exception".
2072         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
2073         loop header.
2074         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
2075         header.
2076         (ppu2spu_sniffer): Rename inner "buf".
2077         * parse.c (operator_check_standard): Rename inner "type",
2078         "objfile".
2079         * p-valprint.c (pascal_val_print): Introduce new scope for
2080         "low_bound", "high_bound".
2081         * p-exp.y (yylex): Declare "i" in loop header.
2082         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2083         Lower declaration of "s".
2084         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2085         header.
2086         (nios2_push_dummy_call): Rename "len".
2087         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2088         "buf".
2089         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2090         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2091         (linux_xfer_osdata_modules): Likewise.
2092         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2093         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2094         (mips_o64_push_dummy_call): Likewise.
2095         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2096         "op".
2097         * mi/mi-main.c (list_available_thread_groups): Rename inner
2098         "tuple_emitter".
2099         (mi_cmd_data_read_memory): Rename inner "opts".
2100         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2101         "tuple_emitter".
2102         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2103         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2104         more inner scope.
2105         (parse_partial_symbols): Rename inner "pst", "p", "name"
2106         * main.c (captured_main_1): Rename inner "i"s.
2107         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2108         "oso2".
2109         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2110         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2111         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2112         (handle_signal_stop): Rename inner "gdbarch".
2113         (handle_command): Declare "signum" in loop header.
2114         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2115         "status".
2116         (examine_prologue): Rename inner "sol" and "sof".
2117         (ia64_extract_return_value): Rename inner "val".  Declare another
2118         "val" in a more inner scope.
2119         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2120         inner scope.
2121         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2122         "except".
2123         * findvar.c (default_read_var_value): Don't redeclare "addr".
2124         * f-exp.y (yylex): Declare "i" in loop header.
2125         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2126         Rename inner "type", "expect_type".
2127         (evaluate_subexp_for_sizeof): Rename inner "pc".
2128         * elfread.c (elf_symfile_read): Rename inner "abfd".
2129         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2130         "bytes_read".
2131         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2132         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2133         (dwarf_decode_line_header): Rename inner "lh".
2134         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2135         "offset".  Declare "i" in loop header.
2136         (disassemble_dwarf_expression): Rename inner "addr_size".
2137         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2138         inner "result".
2139         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2140         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2141         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2142         "inner_list_emitter".
2143         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2144         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2145         declaration in a block.
2146         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2147         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2148         "obstack_final_size".
2149         * cp-support.c (inspect_type): Declare "i" in loop header.
2150         * compile/compile.c (compile_instance::insert_symbol_error):
2151         Rename inner "e".
2152         * common/agent.c (agent_run_command): Remove inner "ret"
2153         declaration.
2154         * coffread.c (coff_symfile_read): Rename inner "name".
2155         (coff_symfile_read): Rename inner "abfd".
2156         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2157         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2158         "high".
2159         * c-exp.y (lex_one_token): Move "len" declaration lower.
2160         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2161         "gdbarch".
2162         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2163         "b".
2164         (watch_command_1): Declare "mark" later.
2165         (clear_command): Don't shadow "a" or "b".
2166         (delete_command): Rename inner "b".
2167         (delete_trace_command): Likewise.
2168         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2169         "op".
2170         (arm_gdbarch_init): Remove inner "e_flags".
2171         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2172         "offset" in inner blocks.
2173
2174 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2175
2176         * dwarf-index-write.c (file_write): Don't write if the vector is
2177         empty.
2178
2179 2018-10-05  Tom de Vries  <tdevries@suse.de>
2180
2181         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2182         PyArg_ParseTuple call.
2183
2184 2018-10-05  Tom de Vries  <tdevries@suse.de>
2185
2186         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2187         PyArg_ParseTuple call.
2188
2189 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2190
2191         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2192         to avoid exceeding 80 characters per line limit.
2193
2194 2018-10-04  Tom Tromey  <tom@tromey.com>
2195
2196         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2197         (reread_symbols): Update.
2198         * complaints.h (clear_complaints): Remove argument.
2199         * complaints.c (enum complaint_series): Remove.
2200         (series): Remove global.
2201         (complaint_internal): Update.
2202         (clear_complaints): Remove argument.
2203
2204 2018-10-04  Tom Tromey  <tom@tromey.com>
2205
2206         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2207         debugging symbols" message if there is a separate debug objfile.
2208
2209 2018-10-04  Tom Tromey  <tom@tromey.com>
2210
2211         PR cli/19551:
2212         * symfile.c (symbol_file_add_with_addrs): Update output.
2213         * psymtab.c (require_partial_symbols): Update output.
2214
2215 2018-10-04  Tom Tromey  <tom@tromey.com>
2216
2217         PR cli/22234:
2218         * complaints.c: Emit \n.
2219
2220 2018-10-04  Tom Tromey  <tom@tromey.com>
2221
2222         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2223         (separate_debug_file_exists, find_separate_debug_file)
2224         (add_symbol_file_command, reread_symbols, allocate_symtab)
2225         (allocate_compunit_symtab): Use filtered printing, not
2226         unfiltered.
2227         * psymtab.c (require_partial_symbols, dump_psymtab)
2228         (allocate_psymtab): Use filtered printing, not unfiltered.
2229
2230 2018-10-04  Tom Tromey  <tom@tromey.com>
2231
2232         * complaints.c (complaint_internal): Correctly check complaint
2233         count.
2234
2235 2018-10-04  Tom Tromey  <tom@tromey.com>
2236
2237         * complaints.h (struct complaints): Remove declaration.
2238         * complaints.c (clear_complaints): Remove an unused variable.
2239
2240 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2241
2242         * MAINTAINERS (Write After Approval): Add self.
2243
2244 2018-10-03  Tom Tromey  <tom@tromey.com>
2245
2246         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2247         "buffer_contents".
2248         * coffread.c (coff_symtab_read): Initialize "newobj".
2249
2250 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2251
2252         * dwarf2read.c (read_func_scope): Remove struct keyword in
2253         range-based for.
2254
2255 2018-10-03  Tom Tromey  <tom@tromey.com>
2256
2257         * README: Mention --enable-ubsan.
2258         * NEWS: Mention --enable-ubsan.
2259         * acinclude.m4: Include sanitize.m4.
2260         * configure: Rebuild.
2261         * configure.ac: Call AM_GDB_UBSAN.
2262         * sanitize.m4: New file.
2263
2264 2018-10-03  Tom Tromey  <tom@tromey.com>
2265
2266         * expression.h (enum exp_opcode): Use uint8_t as base type.
2267         * expprint.c (op_name): Handle invalid opcodes.
2268
2269 2018-10-03  Tom Tromey  <tom@tromey.com>
2270
2271         * parse.c (prefixify_expression): Add assert.
2272         (parse_exp_in_context_1): Throw exception if the expression is
2273         empty.
2274
2275 2018-10-03  Tom Tromey  <tom@tromey.com>
2276
2277         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2278
2279 2018-10-03  Tom Tromey  <tom@tromey.com>
2280
2281         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2282
2283 2018-10-03  Tom Tromey  <tom@tromey.com>
2284
2285         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2286         unsigned.
2287
2288 2018-10-03  Tom Tromey  <tom@tromey.com>
2289
2290         * findvar.c (extract_integer): Do work in an unsigned type.
2291
2292 2018-10-03  Tom Tromey  <tom@tromey.com>
2293
2294         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2295         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2296         base type.
2297         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2298         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2299         type.
2300         * c-lang.h (enum c_string_type_values): Use unsigned as base
2301         type.
2302         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2303
2304 2018-10-03  Tom Tromey  <tom@tromey.com>
2305
2306         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2307         <~dwarf2_frame_state_reg_info>: Update.
2308         <dwarf2_frame_state_reg_info>: Update.
2309         <alloc_regs>: Add assertion.  Update.
2310         <reg>: Now a std::vector.
2311         <num_regs>: Remove.
2312         <swap>: Update.
2313         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2314         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2315
2316 2018-10-03  Tom Tromey  <tom@tromey.com>
2317
2318         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2319
2320 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2321
2322         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2323
2324 2018-10-02  Tom Tromey  <tom@tromey.com>
2325
2326         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2327
2328 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2329
2330         * NEWS: Mention changed commands.
2331         * ser-uds.c: New file.
2332         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2333         * configure: Regenerate.
2334         * Makefile.in: Add new file.
2335         * serial.c (serial_open): Check if filename is a socket
2336         and lookup the appropriate interface accordingly.
2337
2338 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2339
2340         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2341         define.
2342         (AARCH64_EXTRA_MAGIC): Likewise.
2343         (AARCH64_FPSIMD_MAGIC): Likewise.
2344         (AARCH64_SVE_MAGIC): Likewise.
2345         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2346         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2347         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2348         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2349         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2350         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2351         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2352         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2353         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2354         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2355         (read_aarch64_ctx): Add function.
2356         (aarch64_linux_sigframe_init): Detect FP registers.
2357
2358 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2359
2360         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2361         (AARCH64_D0_REGNUM): Likewise.
2362         (AARCH64_S0_REGNUM): Likewise.
2363         (AARCH64_H0_REGNUM): Likewise.
2364         (AARCH64_B0_REGNUM): Likewise.
2365         (AARCH64_SVE_V0_REGNUM): Likewise.
2366         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2367         (AARCH64_D0_REGNUM): Likewise.
2368         (AARCH64_S0_REGNUM): Likewise.
2369         (AARCH64_H0_REGNUM): Likewise.
2370         (AARCH64_B0_REGNUM): Likewise.
2371         (AARCH64_SVE_V0_REGNUM): Likewise.
2372
2373 2018-10-01  Gary Benson <gbenson@redhat.com>
2374
2375         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2376         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2377         prfpregset_t instead of gdb_prfpregset_t.
2378         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2379         * configure, config.in: Rebuild.
2380
2381 2018-10-01  Gary Benson <gbenson@redhat.com>
2382
2383         * common/gdb_proc_service.h: New file, factored out from...
2384         * gdb_proc_service.h: Moved common code to the above file.
2385         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2386
2387 2018-10-01  Gary Benson <gbenson@redhat.com>
2388
2389         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2390         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2391
2392 2018-10-01  Gary Benson <gbenson@redhat.com>
2393
2394         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2395         (AC_CHECK_HEADERS): Check for linux/elf.h.
2396         * configure, config.in: Rebuild.
2397         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2398         doesn't define elf_fpregset_t.
2399
2400 2018-10-01  Gary Benson <gbenson@redhat.com>
2401
2402         * gdb_proc_service.h: Whitespace change.
2403
2404 2018-10-01  Tom Tromey  <tom@tromey.com>
2405
2406         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2407         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2408         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2409
2410 2018-10-01  Tom Tromey  <tom@tromey.com>
2411
2412         * README: Minor change.
2413
2414 2018-09-30  Pedro Alves  <palves@redhat.com>
2415
2416         * darwin-nat-info.c (darwin_debug_regions_recurse)
2417         (info_mach_exceptions_command): Remove unused local variables.
2418         * darwin-nat.c (darwin_decode_notify_message)
2419         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2420         (darwin_stop_inferior, darwin_setup_exceptions)
2421         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2422         (darwin_nat_target::attach, darwin_nat_target::detach)
2423         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2424         local variables.
2425         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2426         variables.
2427
2428 2018-09-29  Tom Tromey  <tom@tromey.com>
2429
2430         * README: Remove some leftover text.
2431
2432 2018-09-29  Tom Tromey  <tom@tromey.com>
2433
2434         * PROBLEMS: Rewrite.
2435         * README: Update.
2436
2437 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2438
2439         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2440         case with explicit breakpoint kind.
2441         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2442         'additional_info' and related logic.
2443         (riscv_debug_breakpoints): New variable.
2444         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2445         instruction to determine the breakpoint kind.
2446         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2447         flag.  Update description of 'set/show riscv
2448         use-compressed-breakpoints' flag.
2449
2450 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2451
2452         (NEWS): Mention changes to frame related commands.
2453         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2454         (add_prefix_cmd_suppress_notification): New function.
2455         (add_com_suppress_notification): Call
2456         add_cmd_suppress_notification.
2457         * command.h (add_cmd_suppress_notification): Declare.
2458         (add_prefix_cmd_suppress_notification): Declare.
2459         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2460         (parse_frame_specification): Moved from stack.c, with
2461         simplification to handle a single argument.
2462         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2463         switch to the selected frame.  Add a header comment.
2464         * stack.c: Remove 'safe-ctype.h' include.
2465         (find_frame_for_function): Add declaration.
2466         (find_frame_for_address): New function.
2467         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2468         (frame_selection_by_function_completer): New function.
2469         (info_frame_command): Rename to...
2470         (info_frame_command_core): ...this, and update parameter types.
2471         (select_frame_command): Rename to...
2472         (select_frame_command_core): ...this, and update parameter types.
2473         (frame_command): Rename to...
2474         (frame_command_core): ...this, and update parameter types.
2475         (class frame_command_helper): New class to wrap implementations of
2476         frame related sub-commands.
2477         (frame_apply_cmd_list): New static global.
2478         (frame_cmd_list): Make static.
2479         (select_frame_cmd_list): New global for sub-commands.
2480         (info_frame_cmd_list): New global for sub-commands.
2481         (_initialize_stack): Register sub-commands for 'frame',
2482         'select-frame', and 'info frame'.  Update 'frame apply' commands
2483         to use frame_apply_cmd_list.  Move function local static
2484         frame_apply_list to file static frame_apply_cmd_list for
2485         consistency.
2486         * stack.h (select_frame_command): Delete declarationn.
2487         (select_frame_for_mi): Declare new function.
2488
2489 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2490
2491         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2492         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2493         and NOP.
2494
2495 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2496
2497         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2498
2499 2018-09-26  Tom Tromey  <tom@tromey.com>
2500
2501         * valops.c (auto_abandon): Remove dead code.
2502
2503 2018-09-26  Tom Tromey  <tom@tromey.com>
2504
2505         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2506
2507 2018-09-24  Tom Tromey  <tom@tromey.com>
2508
2509         * common/pathstuff.c (get_standard_cache_dir): Make
2510         "xdg_cache_home" and "home" const.
2511         * top.c (init_history): Make "tmpenv" const.
2512         * main.c (get_init_files): Make "homedir" const.
2513
2514 2018-09-23  Tom Tromey  <tom@tromey.com>
2515
2516         PR python/18852:
2517         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2518
2519 2018-09-23  Tom Tromey  <tom@tromey.com>
2520
2521         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2522         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2523         * python/python-internal.h (gdbpy_handle_exception): Declare.
2524         * python/py-utils.c (gdbpy_handle_exception): New function.
2525
2526 2018-09-23  Tom Tromey  <tom@tromey.com>
2527
2528         PR python/17284:
2529         * python/py-type.c (typy_template_argument): Check for negative
2530         argument number.
2531
2532 2018-09-23  Tom Tromey  <tom@tromey.com>
2533
2534         PR python/14062:
2535         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2536
2537 2018-09-23  Tom Tromey  <tom@tromey.com>
2538
2539         PR python/18170:
2540         * python/py-value.c (valpy_int): Allow conversion from pointer
2541         type.
2542
2543 2018-09-23  Tom Tromey  <tom@tromey.com>
2544
2545         PR python/20126:
2546         * python/py-value.c (valpy_int): Respect type sign.
2547
2548 2018-09-23  Tom Tromey  <tom@tromey.com>
2549
2550         PR python/18352;
2551         * python/py-value.c (valpy_float): Allow conversions from int or
2552         char.
2553         (valpy_int, valpy_long): Allow conversions from float.
2554
2555 2018-09-23  Tom Tromey  <tom@tromey.com>
2556
2557         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2558         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2559
2560 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2561
2562         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2563         __sighndlr.
2564         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2565
2566 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2567
2568         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2569         target_terminal::ours().
2570
2571 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2572
2573         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2574         of vl to ULONGEST.
2575
2576 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2577
2578         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2579         redundant condition.
2580
2581 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2582
2583         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2584
2585         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2586         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2587         * sol-thread.c (ps_pdmodel): Don't guard definition.
2588
2589         * procfs.c: Fix formatting.
2590
2591         * procfs.c (sysset_t_alloc): Remove.
2592         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2593         (procfs_debug_inferior): Likewise.
2594         (procfs_set_exec_trap): Likewise.
2595         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2596         (proc_set_traced_sysexit): Likewise.
2597
2598         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2599         (dead_procinfo): Likewise.
2600         (proc_warn): Likewise.
2601         (proc_error): Likewise.
2602         (proc_get_LDT_entry): Likewise.
2603         (do_attach): Likewise.
2604         (procfs_target::pid_to_str): Likewise.
2605         (iterate_over_mappings): Likewise.
2606
2607         * procfs.c (create_procinfo): Fix ARI warning.
2608         (proc_get_status): Likewise.
2609         (proc_stop_process): Likewise.
2610         (proc_run_process): Likewise.
2611         (proc_kill): Likewise.
2612         (proc_get_LDT_entry): Likewise.
2613         (procfs_find_LDT_entry): Likewise.
2614         (proc_update_threads): Likewise.
2615         (proc_iterate_over_threads): Likewise.
2616         (do_attach): Likewise.
2617         (procfs_xfer_memory): Likewise.
2618         (invalidate_cache): Likewise.
2619         (procfs_target::resume): Likewise.
2620         (procfs_init_inferior): Likewise.
2621         (procfs_set_exec_trap): Likewise.
2622         (procfs_target::thread_alive): Likewise.
2623         (procfs_target::pid_to_exec_file): Likewise.
2624         (iterate_over_mappings): Likewise.
2625         (procfs_target::make_corefile_notes): Likewise.
2626         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2627
2628         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2629         (procfs_find_LDT_entry): Likewise.
2630         * sol-thread.c (ps_lgetLDT): Likewise.
2631
2632 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2633
2634         PR tdep/17903
2635         * procfs.c (procfs_target): Declare pid_to_exec_file.
2636         (procfs_target::pid_to_exec_file): New.
2637
2638 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2639
2640         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2641         renaming.
2642         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2643         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2644
2645 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2646
2647         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2648         (supply_fpregset, fill_fpregset): Move ...
2649         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2650         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2651         Remove references to ioctl-based procfs.
2652         Include <sys/reg.h>.
2653         Remove PR_MODEL_NATIVE guards.
2654         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2655         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2656
2657 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2658
2659         PR gdb/20981:
2660         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2661         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2662         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2663
2664 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2665
2666         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2667         (fbsd_print_sockaddr_in6): Likewise.
2668
2669 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2670             Chris January  <chris.january@arm.com>
2671
2672         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2673         (evaluate_subexp_standard): Return a dummy type when
2674         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2675         OP_F77_UNDETERMINED_ARGLIST case.
2676         * expression.h (enum noside): Update comment.
2677
2678 2018-09-19  George Vasick <george.vasick@oracle.com>
2679
2680         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2681
2682 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2683             April Chin <april.chin@oracle.com>
2684             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2685
2686         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2687         uint_t lwpid_t.
2688         (create_procinfo): Print pids in /proc without leading zeros.
2689
2690 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2691
2692         * nios2-tdep.c (nios2_gcc_target_options): New.
2693         (nios2_gdb_arch_init): Install new hook.
2694
2695 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2696
2697         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2698         New file.
2699         * update-gnulib.sh: Apply patch.
2700         * configure: Re-generate.
2701
2702 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2703
2704         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2705         description.  Make "info proc" command descriptions more
2706         consistent.
2707
2708 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2709
2710         * NEWS: Mention 'info proc files' command.
2711
2712 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2713
2714         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2715         descriptors for IP_FILES and IP_ALL.
2716
2717 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2718
2719         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2720         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2721         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2722         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2723         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2724         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2725         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2726         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2727         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2728         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2729         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2730         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2731         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2732         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2733         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2734         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2735         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2736         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2737         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2738         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2739         (struct fbsd_sockaddr_un): New types.
2740         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2741         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2742         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2743         (fbsd_core_info_proc_files): New functions.
2744         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2745         IP_ALL.
2746         * fbsd-tdep.h (fbsd_info_proc_files_header)
2747         (fbsd_info_proc_files_entry): New.
2748
2749 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2750
2751         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2752         * infcmd.c (info_proc_cmd_files): New function.
2753         (_initialize_infcmd): Register 'info proc files' command.
2754
2755 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2756
2757         * gnulib/aclocal-m4-deps.mk: Re-generate.
2758         * gnulib/aclocal.m4: Re-generate.
2759         * gnulib/config.in: Re-generate.
2760         * gnulib/configure: Re-generate.
2761         * gnulib/import/Makefile.am: Re-generate.
2762         * gnulib/import/Makefile.in: Re-generate.
2763         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2764         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2765         * gnulib/import/arpa_inet.in.h: New file.
2766         * gnulib/import/inet_ntop.c: New file.
2767         * gnulib/import/m4/arpa_inet_h.m4: New file.
2768         * gnulib/import/m4/inet_ntop.m4: New file.
2769         * gnulib/import/m4/netinet_in_h.m4: New file.
2770         * gnulib/import/m4/socklen.m4: New file.
2771         * gnulib/import/m4/sockpfaf.m4: New file.
2772         * gnulib/import/m4/stdalign.m4: New file.
2773         * gnulib/import/m4/sys_uio_h.m4: New file.
2774         * gnulib/import/netinet_in.in.h: New file.
2775         * gnulib/import/stdalign.in.h: New file.
2776         * gnulib/import/sys_socket.c: New file.
2777         * gnulib/import/sys_socket.in.h: New file.
2778         * gnulib/import/sys_uio.in.h: New file.
2779         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2780         module.
2781
2782 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2783
2784         * gnulib/aclocal-m4-deps.mk: New file.
2785         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2786         deterministically.
2787
2788 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2789
2790         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2791         KVE_PATH.
2792
2793 2018-09-18  Tom Tromey  <tom@tromey.com>
2794
2795         * compile/compile-object-load.c (struct
2796         link_hash_table_cleanup_data): Add constructor and destructor.
2797         Use DISABLE_COPY_AND_ASSIGN.
2798         (~link_hash_table_cleanup_data): Rename from
2799         link_hash_table_free.  Now a destructor.
2800         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2801
2802 2018-09-18  Tom Tromey  <tom@tromey.com>
2803
2804         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2805         * compile/compile-object-load.c (struct munmap_list): Move to
2806         header file.
2807         (munmap_list::add): Rename from munmap_list_add; rewrite.
2808         (munmap_list::~munmap_list): Rename from munmap_list_free.
2809         (munmap_listp_free_cleanup): Remove.
2810         (compile_object_load): Update.
2811         * compile/compile-object-load.h (struct munmap_list): Move from
2812         compile-object-load.c.  Rewrite.
2813
2814 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2815
2816         * aarch64-tdep.c (pass_in_v): Use register size.
2817         (aarch64_extract_return_value): Likewise.
2818         (aarch64_store_return_value): Likewise.
2819
2820 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2821
2822         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2823         rlim_t.
2824
2825 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2826
2827         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2828         Fix short help line.
2829
2830 2018-09-17  Tom Tromey  <tom@tromey.com>
2831
2832         PR python/20445:
2833         * configure: Rebuild.
2834         * configure.ac: Conditionally use -DNDEBUG for Python.
2835
2836 2018-09-17  Tom Tromey  <tom@tromey.com>
2837
2838         * configure: Rebuild.
2839         * configure.ac: Use gmp as a library dependency when checking for
2840         mpfr.
2841
2842 2018-09-17  Pedro Alves  <palves@redhat.com>
2843
2844         * python/py-inferior.c (find_inferior_object): Delete.
2845
2846 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2847
2848         * compile/compile-cplus-types.c
2849         (compile_cplus_instance::enter_scope): Don't use new_scope after
2850         std::move.
2851
2852 2018-09-17  Tom Tromey  <tom@tromey.com>
2853
2854         * common/pathstuff.c (get_standard_cache_dir): Use
2855         ~/Library/Caches on macOS.
2856         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2857
2858 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2859
2860         PR python/23669
2861         * breakpoint.c (commands_cmd_element): New.
2862         (_initialize_breakpoint): Assign commands_cmd_element.
2863         * breakpoint.h (commands_cmd_element): New.
2864         * cli/cli-script.c (while_cmd_element, if_command,
2865         define_cmd_element): New.
2866         (command_name_equals): Remove.
2867         (process_next_line): Compare commands by pointer, not by name.
2868         (_initialize_cli_script): Assign the various cmd_list_element
2869         variables.
2870         * compile/compile.c (compile_cmd_element): New.
2871         (_initialize_compile): Assign compile_cmd_element.
2872         * compile/compile.h (compile_cmd_element): New.
2873         * guile/guile.c (guile_cmd_element): New.
2874         (install_gdb_commands): Assign guile_cmd_element.
2875         * guile/guile.h (guile_cmd_element): New.
2876         * python/python.c (python_cmd_element): New.
2877         (_initialize_python): Assign python_cmd_element.
2878         * python/python.h (python_cmd_element): New.
2879         * tracepoint.c (while_stepping_cmd_element): New.
2880         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2881         * tracepoint.h (while_stepping_cmd_element): New.
2882
2883 2018-09-17  Tom Tromey  <tom@tromey.com>
2884
2885         * infrun.c (save_infcall_suspend_state): Return
2886         infcall_suspend_state_up.
2887         (save_infcall_control_state): Return infcall_control_state_up.
2888         * inferior.h (save_infcall_suspend_state)
2889         (save_infcall_control_state): Declare later.  Return unique
2890         pointers.
2891
2892 2018-09-17  Tom Tromey  <tom@tromey.com>
2893
2894         * infrun.c (struct stop_context): Declare constructor,
2895         destructor, "changed" method.
2896         (stop_context::stop_context): Rename from save_stop_context.
2897         (stop_context::~stop_context): Rename from
2898         release_stop_context_cleanup.
2899         (normal_stop): Update.
2900         (stop_context::changed): Rename from stop_context_changed.  Return
2901         bool.
2902
2903 2018-09-17  Tom Tromey  <tom@tromey.com>
2904
2905         * inferior.h (struct infcall_suspend_state_deleter): New.
2906         (infcall_suspend_state_up): New typedef.
2907         (struct infcall_control_state_deleter): New.
2908         (infcall_control_state_up): New typedef.
2909         (make_cleanup_restore_infcall_suspend_state)
2910         (make_cleanup_restore_infcall_control_state): Don't declare.
2911         * infcall.c (call_function_by_hand_dummy): Update.
2912         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2913         (make_cleanup_restore_infcall_suspend_state): Remove.
2914         (do_restore_infcall_control_state_cleanup)
2915         (make_cleanup_restore_infcall_control_state): Remove.
2916
2917 2018-09-17  Tom Tromey  <tom@tromey.com>
2918
2919         * gdbthread.h (struct thread_control_state): Add initializer.
2920         (class thread_info) <control>: Remove initializer.
2921         * inferior.h (struct inferior_control_state): Add initializer.
2922         (class inferior) <control>: Remove initializer.
2923         (exit_inferior_1): Update.
2924         * infrun.c (struct infcall_control_state): Add constructors.
2925         (save_infcall_control_state): Use new.
2926         (restore_infcall_control_state, discard_infcall_control_state):
2927         Use delete.
2928
2929 2018-09-17  Tom Tromey  <tom@tromey.com>
2930
2931         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2932         unique_ptr.
2933         <siginfo_data>: Now a unique_xmalloc_ptr.
2934         (save_infcall_suspend_state, restore_infcall_suspend_state)
2935         (discard_infcall_suspend_state)
2936         (get_infcall_suspend_state_regcache): Update.
2937
2938 2018-09-17  Tom Tromey  <tom@tromey.com>
2939
2940         * gdbthread.h (struct thread_suspend_state): Add initializers.
2941         (class thread_info) <suspend>: Remove initializer.
2942         * infrun.c (struct infcall_suspend_state): Add initializers.
2943         (save_infcall_suspend_state): Use new.
2944         (discard_infcall_suspend_state): Use delete.
2945
2946 2018-09-16  Tom Tromey  <tom@tromey.com>
2947
2948         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2949         Remove.
2950         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2951         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2952         (py_varobj_iter_new): Likewise.
2953         (py_varobj_get_iterator): Use gdbpy_ref.
2954
2955 2018-09-16  Tom Tromey  <tom@tromey.com>
2956
2957         * python/py-threadevent.c (py_get_event_thread): Simplify.
2958         * python/py-inferior.c (infpy_thread_from_thread_handle):
2959         Return immediately after calling thread_to_thread_object.  Use
2960         Py_RETURN_NONE.
2961         (thread_to_thread_object): Set the exception on a NULL return.
2962
2963 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2964
2965         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2966
2967 2018-09-16  Tom Tromey  <tom@tromey.com>
2968
2969         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2970         Remove.
2971
2972 2018-09-16  Tom Tromey  <tom@tromey.com>
2973
2974         * python/python-internal.h (thread_to_thread_object): Change
2975         return type.
2976         * python/py-inferior.c (thread_to_thread_object): Return a new
2977         reference.
2978         (infpy_thread_from_thread_handle): Update.
2979         * python/py-infthread.c (gdbpy_selected_thread): Update.
2980         * python/py-stopevent.c (create_stop_event_object): Update.
2981         * python/py-threadevent.c (py_get_event_thread): Return a new
2982         reference.
2983         (py_get_event_thread): Update.
2984         * python/py-event.h (py_get_event_thread): Change return type.
2985         * python/py-continueevent.c (create_continue_event_object):
2986         Update.
2987
2988 2018-09-16  Tom Tromey  <tom@tromey.com>
2989
2990         * python/py-progspace.c (pspy_get_objfiles): Update.
2991         * python/python-internal.h (objfile_to_objfile_object): Change
2992         return type.
2993         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2994         Update.
2995         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2996         Update.
2997         * python/python.c (gdbpy_get_current_objfile): Update.
2998         (gdbpy_objfiles): Update.
2999         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
3000         Update.
3001         (objfile_to_objfile_object): Return a new reference.
3002         * python/py-symtab.c (stpy_get_objfile): Update.
3003         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
3004         Update.
3005
3006 2018-09-16  Tom Tromey  <tom@tromey.com>
3007
3008         * python/py-inferior.c (infpy_get_progspace): Update.
3009         * python/python-internal.h (pspace_to_pspace_object): Change
3010         return type.
3011         * python/py-newobjfileevent.c
3012         (create_clear_objfiles_event_object): Update.
3013         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
3014         Update.
3015         * python/python.c (gdbpy_get_current_progspace): Update.
3016         (gdbpy_progspaces): Update.
3017         * python/py-progspace.c (pspace_to_pspace_object): Return a new
3018         reference.
3019         * python/py-objfile.c (objfpy_get_progspace): Update.
3020         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
3021         Update.
3022
3023 2018-09-16  Tom Tromey  <tom@tromey.com>
3024
3025         * python/lib/gdb/__init__.py (current_progspace, objfiles)
3026         (solib_name, block_for_pc, find_pc_line): New functions.
3027         (execute_unwinders): Update.
3028         * python/py-block.c (gdbpy_block_for_pc): Remove.
3029         * python/py-inferior.c (infpy_get_progspace): New function.
3030         (inferior_object_getset) <progspace>: Add.
3031         * python/py-progspace.c (pspy_objfiles): Rewrite.
3032         (pspy_solib_name, pspy_block_for_pc)
3033         (pspy_find_pc_line, pspy_is_valid): New functions.
3034         (progspace_object_methods): Add entries for solib_name,
3035         block_for_pc, find_pc_line, is_valid.
3036         * python/python-internal.h (gdbpy_block_for_pc)
3037         (build_objfiles_list): Don't declare.
3038         * python/python.c: Don't include solib.h.
3039         (gdbpy_solib_name, gdbpy_find_pc_line)
3040         (gdbpy_get_current_progspace, build_objfiles_list)
3041         (gdbpy_objfiles): Remove.
3042         (GdbMethods) <current_progspace, objfiles, block_for_pc,
3043         solib_name, find_pc_line>: Remove entries.
3044
3045 2018-09-16  Tom Tromey  <tom@tromey.com>
3046
3047         * top.c (new_ui_command): Use GNU style for metasyntactic
3048         variables.
3049         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
3050         variables.
3051         * maint.c (maintenance_translate_address): Remove "<>" around
3052         text.
3053         * interps.c (interpreter_exec_cmd): Use GNU style for
3054         metasyntactic variables.
3055         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
3056         metasyntactic variables.
3057         * tracepoint.c (tfind_range_command): Use GNU style for
3058         metasyntactic variables.
3059         (tfind_outside_command): Likewise.
3060         (_initialize_tracepoint): Likewise.
3061         * remote.c (extended_remote_target::create_inferior): Use GNU
3062         style for metasyntactic variables.
3063         * sparc64-tdep.c (adi_examine_command): Use GNU style for
3064         metasyntactic variables.
3065         (adi_assign_command): Likewise.
3066
3067 2018-09-16  Tom Tromey  <tom@tromey.com>
3068
3069         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
3070         metasyntactic variables.  Print message if no disassembler options
3071         are available.
3072
3073 2018-09-15  Tom Tromey  <tom@tromey.com>
3074
3075         * infcmd.c (get_inferior_args): Return const char *.
3076         * inferior.h (get_inferior_args): Return type now const.
3077         * linux-tdep.c (linux_fill_prpsinfo): Update.
3078         * procfs.c (procfs_target::make_corefile_notes): Update.
3079
3080 2018-09-07  Tom Tromey  <tom@tromey.com>
3081
3082         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3083         inside the TRY.
3084
3085 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3086
3087         * nios2-tdep.c (nios2_type_align): New.
3088         (nios2_gdb_arch_init): Install type_align hook.
3089
3090 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3091
3092         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3093         type that is neither object file owned, nor gdbarch owned.
3094         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3095         gdbarch is non-NULL.
3096         (alloc_type_instance): Allocate non-objfile owned types on the
3097         gdbarch obstack.
3098         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3099         using TYPE_ALLOC to ensure memory is allocated on the correct
3100         obstack.
3101         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3102         obstack, or the gdbarch obstack.
3103         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3104
3105 2018-09-14  Tom Tromey  <tom@tromey.com>
3106
3107         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3108         block.
3109
3110 2018-09-14  Tom Tromey  <tom@tromey.com>
3111
3112         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3113
3114 2018-09-13  Tom Tromey  <tom@tromey.com>
3115
3116         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3117         static.
3118
3119 2018-09-13  Tom Tromey  <tom@tromey.com>
3120
3121         * exec.c (try_open_exec_file): Use std::string.
3122
3123 2018-09-13  Tom Tromey  <tom@tromey.com>
3124
3125         * utils.h (gdb_bfd_errmsg): Return std::string.
3126         * exec.c (exec_file_attach): Update.
3127         * compile/compile-object-load.c (compile_object_load): Update.
3128         * utils.c (gdb_bfd_errmsg): Return std::string.
3129
3130 2018-09-13  Tom Tromey  <tom@tromey.com>
3131
3132         * procfs.c (struct procinfo_deleter): New.
3133         (procinfo_up): New typedef.
3134         (do_destroy_procinfo_cleanup): Remove.
3135         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3136
3137 2018-09-13  Tom Tromey  <tom@tromey.com>
3138
3139         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3140
3141 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3142 2018-09-13  Tom Tromey  <tom@tromey.com>
3143
3144         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3145         (pspy_get_objfiles): New function.
3146         (progspace_object_methods): New.
3147         (pspace_object_type): Add tp_methods callback.
3148         * python/python-internal.h (build_objfiles_list): New
3149         declaration.
3150         * python/python.c (build_objfiles_list): New function.
3151         (gdbpy_objfiles): Implement using build_objfiles_list.
3152         * NEWS: Mention the Progspace.objfiles method.
3153
3154 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3155
3156         * python/py-inferior.c (infpy_get_progspace): New function.
3157         (inferior_object_getset): Add progspace property.
3158         * NEWS: Mention the new property.
3159
3160 2018-09-13  Tom Tromey  <tom@tromey.com>
3161
3162         PR rust/23650:
3163         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3164
3165 2018-09-13  Tom Tromey  <tom@tromey.com>
3166
3167         PR rust/23626:
3168         * rust-lang.c (rust_enum_variant): Now static.
3169         (rust_empty_enum_p): New function.
3170         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3171         Handle empty enum.
3172
3173 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3174
3175         * python/py-inferior.c (infpy_repr): New.
3176         (inferior_object_type): Register infpy_repr.
3177         * python/py-objfile.c (objfpy_repr): New.
3178         (objfile_object_type): Register objfpy_repr.
3179
3180 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3181
3182         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3183
3184 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3185
3186         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3187         typo.
3188
3189 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3190
3191         * common/common-utils.c: Don't include '<sys/stat.h>'.
3192         (is_regular_file): Move to...
3193         * common/filestuff.c (is_regular_file): ... here.
3194         * common/common-utils.h (is_regular_file): Move to...
3195         * common/filestuff.h (is_regular_file): ... here.
3196
3197 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3198
3199         * skip.c (debug_skip): New variable.
3200         (skiplist_entry::do_skip_file_p): Add debug output.
3201         (skiplist_entry::do_skip_gfile_p): Likewise.
3202         (skiplist_entry::skip_function_p): Likewise.
3203         (_initialize_step_skip): Create debug command.
3204         * NEWS: Mention set/show debug skip.
3205
3206 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3207
3208         * darwin-nat.c (should_disable_startup_with_shell):
3209         New function.
3210         (darwin_nat_target::create_inferior): Add call.
3211
3212 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3213
3214         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3215         inf_port, msg_state>: Initialize.
3216         (struct darwin_thread_info) <signaled, single_step>: Change
3217         type and initialize.
3218         (struct darwin_thread_info) <event>: Initialize.
3219
3220 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3221
3222         PR gdb/23555
3223         PR gdb/23558
3224         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3225         guesses.
3226
3227 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3228
3229         Revert:
3230         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3231
3232         PR gdb/23555
3233         PR gdb/23558
3234         * gnulib/aclocal.m4: Regenerate.
3235         * gnulib/config.in: Regenerate.
3236         * gnulib/configure: Regenerate.
3237         * gnulib/import/Makefile.am: Update.
3238         * gnulib/import/Makefile.in: Update.
3239         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3240         * gnulib/import/_Noreturn.h: ... this.
3241         * gnulib/import/alloca.in.h: Update.
3242         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3243         * gnulib/import/arg-nonnull.h: ... this.
3244         * gnulib/import/assure.h: Update.
3245         * gnulib/import/at-func.c: Update.
3246         * gnulib/import/basename-lgpl.c: Update.
3247         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3248         * gnulib/import/c++defs.h: ... this.
3249         * gnulib/import/canonicalize-lgpl.c: Update.
3250         * gnulib/import/cdefs.h: Update.
3251         * gnulib/import/chdir-long.c: Update.
3252         * gnulib/import/chdir-long.h: Update.
3253         * gnulib/import/cloexec.c: Update.
3254         * gnulib/import/cloexec.h: Update.
3255         * gnulib/import/close.c: Update.
3256         * gnulib/import/closedir.c: Update.
3257         * gnulib/import/config.charset: Update.
3258         * gnulib/import/dirent-private.h: Update.
3259         * gnulib/import/dirent.in.h: Update.
3260         * gnulib/import/dirfd.c: Update.
3261         * gnulib/import/dirname-lgpl.c: Update.
3262         * gnulib/import/dirname.h: Update.
3263         * gnulib/import/dosname.h: Update.
3264         * gnulib/import/dup-safer-flag.c: Update.
3265         * gnulib/import/dup-safer.c: Update.
3266         * gnulib/import/dup.c: Update.
3267         * gnulib/import/dup2.c: Update.
3268         * gnulib/import/errno.in.h: Update.
3269         * gnulib/import/error.c: Update.
3270         * gnulib/import/error.h: Update.
3271         * gnulib/import/exitfail.c: Update.
3272         * gnulib/import/exitfail.h: Update.
3273         * gnulib/import/extra/update-copyright: Update.
3274         * gnulib/import/fchdir.c: Update.
3275         * gnulib/import/fcntl.c: Update.
3276         * gnulib/import/fcntl.in.h: Update.
3277         * gnulib/import/fd-hook.c: Update.
3278         * gnulib/import/fd-hook.h: Update.
3279         * gnulib/import/fd-safer-flag.c: Update.
3280         * gnulib/import/fd-safer.c: Update.
3281         * gnulib/import/fdopendir.c: Update.
3282         * gnulib/import/filename.h: Update.
3283         * gnulib/import/filenamecat-lgpl.c: Update.
3284         * gnulib/import/filenamecat.h: Update.
3285         * gnulib/import/flexmember.h: Update.
3286         * gnulib/import/float+.h: Update.
3287         * gnulib/import/float.c: Update.
3288         * gnulib/import/float.in.h: Update.
3289         * gnulib/import/fnmatch.c: Update.
3290         * gnulib/import/fnmatch.in.h: Update.
3291         * gnulib/import/fnmatch_loop.c: Update.
3292         * gnulib/import/fpucw.h: Update.
3293         * gnulib/import/frexp.c: Update.
3294         * gnulib/import/frexpl.c: Update.
3295         * gnulib/import/fstat.c: Update.
3296         * gnulib/import/fstatat.c: Update.
3297         * gnulib/import/getcwd-lgpl.c: Update.
3298         * gnulib/import/getcwd.c: Update.
3299         * gnulib/import/getdtablesize.c: Update.
3300         * gnulib/import/getlogin_r.c: Update.
3301         * gnulib/import/getprogname.c: Update.
3302         * gnulib/import/getprogname.h: Update.
3303         * gnulib/import/gettext.h: Update.
3304         * gnulib/import/gettimeofday.c: Update.
3305         * gnulib/import/glob-libc.h: Update.
3306         * gnulib/import/glob.c: Update.
3307         * gnulib/import/glob.in.h: Update.
3308         * gnulib/import/glob_internal.h: Update.
3309         * gnulib/import/glob_pattern_p.c: Update.
3310         * gnulib/import/globfree.c: Update.
3311         * gnulib/import/hard-locale.c: Update.
3312         * gnulib/import/hard-locale.h: Update.
3313         * gnulib/import/intprops.h: Update.
3314         * gnulib/import/inttypes.in.h: Update.
3315         * gnulib/import/isnan.c: Update.
3316         * gnulib/import/isnand-nolibm.h: Update.
3317         * gnulib/import/isnand.c: Update.
3318         * gnulib/import/isnanl-nolibm.h: Update.
3319         * gnulib/import/isnanl.c: Update.
3320         * gnulib/import/itold.c: Update.
3321         * gnulib/import/libc-config.h: Update.
3322         * gnulib/import/limits.in.h: Update.
3323         * gnulib/import/localcharset.c: Update.
3324         * gnulib/import/localcharset.h: Update.
3325         * gnulib/import/localtime-buffer.c: Update.
3326         * gnulib/import/localtime-buffer.h: Update.
3327         * gnulib/import/lstat.c: Update.
3328         * gnulib/import/m4/00gnulib.m4: Update.
3329         * gnulib/import/m4/__inline.m4: Update.
3330         * gnulib/import/m4/absolute-header.m4: Update.
3331         * gnulib/import/m4/alloca.m4: Update.
3332         * gnulib/import/m4/builtin-expect.m4: Update.
3333         * gnulib/import/m4/canonicalize.m4: Update.
3334         * gnulib/import/m4/chdir-long.m4: Update.
3335         * gnulib/import/m4/close.m4: Update.
3336         * gnulib/import/m4/closedir.m4: Update.
3337         * gnulib/import/m4/configmake.m4: Update.
3338         * gnulib/import/m4/d-ino.m4: Update.
3339         * gnulib/import/m4/d-type.m4: Update.
3340         * gnulib/import/m4/dirent_h.m4: Update.
3341         * gnulib/import/m4/dirfd.m4: Update.
3342         * gnulib/import/m4/dirname.m4: Update.
3343         * gnulib/import/m4/double-slash-root.m4: Update.
3344         * gnulib/import/m4/dup.m4: Update.
3345         * gnulib/import/m4/dup2.m4: Update.
3346         * gnulib/import/m4/eealloc.m4: Update.
3347         * gnulib/import/m4/environ.m4: Update.
3348         * gnulib/import/m4/errno_h.m4: Update.
3349         * gnulib/import/m4/error.m4: Update.
3350         * gnulib/import/m4/exponentd.m4: Update.
3351         * gnulib/import/m4/exponentl.m4: Update.
3352         * gnulib/import/m4/extensions.m4: Update.
3353         * gnulib/import/m4/extern-inline.m4: Update.
3354         * gnulib/import/m4/fchdir.m4: Update.
3355         * gnulib/import/m4/fcntl-o.m4: Update.
3356         * gnulib/import/m4/fcntl.m4: Update.
3357         * gnulib/import/m4/fcntl_h.m4: Update.
3358         * gnulib/import/m4/fdopendir.m4: Update.
3359         * gnulib/import/m4/filenamecat.m4: Update.
3360         * gnulib/import/m4/flexmember.m4: Update.
3361         * gnulib/import/m4/float_h.m4: Update.
3362         * gnulib/import/m4/fnmatch.m4: Update.
3363         * gnulib/import/m4/fnmatch_h.m4: Update.
3364         * gnulib/import/m4/fpieee.m4: Update.
3365         * gnulib/import/m4/frexp.m4: Update.
3366         * gnulib/import/m4/frexpl.m4: Update.
3367         * gnulib/import/m4/fstat.m4: Update.
3368         * gnulib/import/m4/fstatat.m4: Update.
3369         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3370         * gnulib/import/m4/getcwd-path-max.m4: Update.
3371         * gnulib/import/m4/getcwd.m4: Update.
3372         * gnulib/import/m4/getdtablesize.m4: Update.
3373         * gnulib/import/m4/getlogin.m4: Update.
3374         * gnulib/import/m4/getlogin_r.m4: Update.
3375         * gnulib/import/m4/getpagesize.m4: Update.
3376         * gnulib/import/m4/getprogname.m4: Update.
3377         * gnulib/import/m4/gettimeofday.m4: Update.
3378         * gnulib/import/m4/glibc21.m4: Update.
3379         * gnulib/import/m4/glob.m4: Update.
3380         * gnulib/import/m4/glob_h.m4: Update.
3381         * gnulib/import/m4/gnulib-cache.m4: Update.
3382         * gnulib/import/m4/gnulib-common.m4: Update.
3383         * gnulib/import/m4/gnulib-comp.m4: Update.
3384         * gnulib/import/m4/gnulib-tool.m4: Update.
3385         * gnulib/import/m4/hard-locale.m4: Update.
3386         * gnulib/import/m4/include_next.m4: Update.
3387         * gnulib/import/m4/inttypes-pri.m4: Update.
3388         * gnulib/import/m4/inttypes.m4: Update.
3389         * gnulib/import/m4/isnand.m4: Update.
3390         * gnulib/import/m4/isnanl.m4: Update.
3391         * gnulib/import/m4/largefile.m4: Update.
3392         * gnulib/import/m4/limits-h.m4: Update.
3393         * gnulib/import/m4/localcharset.m4: Update.
3394         * gnulib/import/m4/locale-fr.m4: Update.
3395         * gnulib/import/m4/locale-ja.m4: Update.
3396         * gnulib/import/m4/locale-zh.m4: Update.
3397         * gnulib/import/m4/localtime-buffer.m4: Update.
3398         * gnulib/import/m4/longlong.m4: Update.
3399         * gnulib/import/m4/lstat.m4: Update.
3400         * gnulib/import/m4/malloc.m4: Update.
3401         * gnulib/import/m4/malloca.m4: Update.
3402         * gnulib/import/m4/math_h.m4: Update.
3403         * gnulib/import/m4/mbrtowc.m4: Update.
3404         * gnulib/import/m4/mbsinit.m4: Update.
3405         * gnulib/import/m4/mbsrtowcs.m4: Update.
3406         * gnulib/import/m4/mbstate_t.m4: Update.
3407         * gnulib/import/m4/memchr.m4: Update.
3408         * gnulib/import/m4/memmem.m4: Update.
3409         * gnulib/import/m4/mempcpy.m4: Update.
3410         * gnulib/import/m4/memrchr.m4: Update.
3411         * gnulib/import/m4/mkdir.m4: Update.
3412         * gnulib/import/m4/mkstemp.m4: Update.
3413         * gnulib/import/m4/mmap-anon.m4: Update.
3414         * gnulib/import/m4/mode_t.m4: Update.
3415         * gnulib/import/m4/msvc-inval.m4: Update.
3416         * gnulib/import/m4/msvc-nothrow.m4: Update.
3417         * gnulib/import/m4/multiarch.m4: Update.
3418         * gnulib/import/m4/nocrash.m4: Update.
3419         * gnulib/import/m4/off_t.m4: Update.
3420         * gnulib/import/m4/onceonly.m4: Update.
3421         * gnulib/import/m4/open-cloexec.m4: Update.
3422         * gnulib/import/m4/open.m4: Update.
3423         * gnulib/import/m4/openat.m4: Update.
3424         * gnulib/import/m4/opendir.m4: Update.
3425         * gnulib/import/m4/pathmax.m4: Update.
3426         * gnulib/import/m4/rawmemchr.m4: Update.
3427         * gnulib/import/m4/readdir.m4: Update.
3428         * gnulib/import/m4/readlink.m4: Update.
3429         * gnulib/import/m4/realloc.m4: Update.
3430         * gnulib/import/m4/rename.m4: Update.
3431         * gnulib/import/m4/rewinddir.m4: Update.
3432         * gnulib/import/m4/rmdir.m4: Update.
3433         * gnulib/import/m4/save-cwd.m4: Update.
3434         * gnulib/import/m4/secure_getenv.m4: Update.
3435         * gnulib/import/m4/setenv.m4: Update.
3436         * gnulib/import/m4/signal_h.m4: Update.
3437         * gnulib/import/m4/ssize_t.m4: Update.
3438         * gnulib/import/m4/stat-time.m4: Update.
3439         * gnulib/import/m4/stat.m4: Update.
3440         * gnulib/import/m4/std-gnu11.m4: Update.
3441         * gnulib/import/m4/stdbool.m4: Update.
3442         * gnulib/import/m4/stddef_h.m4: Update.
3443         * gnulib/import/m4/stdint.m4: Update.
3444         * gnulib/import/m4/stdio_h.m4: Update.
3445         * gnulib/import/m4/stdlib_h.m4: Update.
3446         * gnulib/import/m4/strchrnul.m4: Update.
3447         * gnulib/import/m4/strdup.m4: Update.
3448         * gnulib/import/m4/strerror.m4: Update.
3449         * gnulib/import/m4/string_h.m4: Update.
3450         * gnulib/import/m4/strstr.m4: Update.
3451         * gnulib/import/m4/strtok_r.m4: Update.
3452         * gnulib/import/m4/sys_socket_h.m4: Update.
3453         * gnulib/import/m4/sys_stat_h.m4: Update.
3454         * gnulib/import/m4/sys_time_h.m4: Update.
3455         * gnulib/import/m4/sys_types_h.m4: Update.
3456         * gnulib/import/m4/tempname.m4: Update.
3457         * gnulib/import/m4/time_h.m4: Update.
3458         * gnulib/import/m4/unistd-safer.m4: Update.
3459         * gnulib/import/m4/unistd_h.m4: Update.
3460         * gnulib/import/m4/warn-on-use.m4: Update.
3461         * gnulib/import/m4/wchar_h.m4: Update.
3462         * gnulib/import/m4/wchar_t.m4: Update.
3463         * gnulib/import/m4/wctype_h.m4: Update.
3464         * gnulib/import/m4/wint_t.m4: Update.
3465         * gnulib/import/malloc.c: Update.
3466         * gnulib/import/malloc/scratch_buffer.h: Update.
3467         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3468         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3469         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3470         * gnulib/import/malloca.c: Update.
3471         * gnulib/import/malloca.h: Update.
3472         * gnulib/import/malloca.valgrind: Update.
3473         * gnulib/import/math.in.h: Update.
3474         * gnulib/import/mbrtowc.c: Update.
3475         * gnulib/import/mbsinit.c: Update.
3476         * gnulib/import/mbsrtowcs-impl.h: Update.
3477         * gnulib/import/mbsrtowcs-state.c: Update.
3478         * gnulib/import/mbsrtowcs.c: Update.
3479         * gnulib/import/memchr.c: Update.
3480         * gnulib/import/memmem.c: Update.
3481         * gnulib/import/mempcpy.c: Update.
3482         * gnulib/import/memrchr.c: Update.
3483         * gnulib/import/mkdir.c: Update.
3484         * gnulib/import/mkstemp.c: Update.
3485         * gnulib/import/msvc-inval.c: Update.
3486         * gnulib/import/msvc-inval.h: Update.
3487         * gnulib/import/msvc-nothrow.c: Update.
3488         * gnulib/import/msvc-nothrow.h: Update.
3489         * gnulib/import/open.c: Update.
3490         * gnulib/import/openat-die.c: Update.
3491         * gnulib/import/openat-priv.h: Update.
3492         * gnulib/import/openat-proc.c: Update.
3493         * gnulib/import/openat.c: Update.
3494         * gnulib/import/openat.h: Update.
3495         * gnulib/import/opendir.c: Update.
3496         * gnulib/import/pathmax.h: Update.
3497         * gnulib/import/pipe-safer.c: Update.
3498         * gnulib/import/rawmemchr.c: Update.
3499         * gnulib/import/readdir.c: Update.
3500         * gnulib/import/readlink.c: Update.
3501         * gnulib/import/realloc.c: Update.
3502         * gnulib/import/ref-add.sin: Update.
3503         * gnulib/import/ref-del.sin: Update.
3504         * gnulib/import/rename.c: Update.
3505         * gnulib/import/rewinddir.c: Update.
3506         * gnulib/import/rmdir.c: Update.
3507         * gnulib/import/same-inode.h: Update.
3508         * gnulib/import/save-cwd.c: Update.
3509         * gnulib/import/save-cwd.h: Update.
3510         * gnulib/import/scratch_buffer.h: Update.
3511         * gnulib/import/secure_getenv.c: Update.
3512         * gnulib/import/setenv.c: Update.
3513         * gnulib/import/signal.in.h: Update.
3514         * gnulib/import/stat-time.c: Update.
3515         * gnulib/import/stat-time.h: Update.
3516         * gnulib/import/stat-w32.c: Update.
3517         * gnulib/import/stat-w32.h: Update.
3518         * gnulib/import/stat.c: Update.
3519         * gnulib/import/stdbool.in.h: Update.
3520         * gnulib/import/stddef.in.h: Update.
3521         * gnulib/import/stdint.in.h: Update.
3522         * gnulib/import/stdio.in.h: Update.
3523         * gnulib/import/stdlib.in.h: Update.
3524         * gnulib/import/str-two-way.h: Update.
3525         * gnulib/import/strchrnul.c: Update.
3526         * gnulib/import/strdup.c: Update.
3527         * gnulib/import/streq.h: Update.
3528         * gnulib/import/strerror-override.c: Update.
3529         * gnulib/import/strerror-override.h: Update.
3530         * gnulib/import/strerror.c: Update.
3531         * gnulib/import/string.in.h: Update.
3532         * gnulib/import/stripslash.c: Update.
3533         * gnulib/import/strnlen1.c: Update.
3534         * gnulib/import/strnlen1.h: Update.
3535         * gnulib/import/strstr.c: Update.
3536         * gnulib/import/strtok_r.c: Update.
3537         * gnulib/import/sys_stat.in.h: Update.
3538         * gnulib/import/sys_time.in.h: Update.
3539         * gnulib/import/sys_types.in.h: Update.
3540         * gnulib/import/tempname.c: Update.
3541         * gnulib/import/tempname.h: Update.
3542         * gnulib/import/time.in.h: Update.
3543         * gnulib/import/unistd--.h: Update.
3544         * gnulib/import/unistd-safer.h: Update.
3545         * gnulib/import/unistd.in.h: Update.
3546         * gnulib/import/unsetenv.c: Update.
3547         * gnulib/import/verify.h: Update.
3548         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3549         * gnulib/import/wchar.in.h: Update.
3550         * gnulib/import/wctype.in.h: Update.
3551         * gnulib/import/xalloc-oversized.h: Update.
3552         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3553         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3554
3555 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3556
3557         * record-btrace.c (get_thread_current_frame): Remove
3558         old_inferior_ptid.
3559
3560 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3561
3562         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3563         with check_tag to 1 if and only if the type is tagged and the
3564         component being searched cannot been found in the current
3565         view. Otherwise, always call ada_to_fixed_type with
3566         check_tag to 0.
3567
3568 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3569
3570         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3571         declaration.
3572         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3573         * ada-varobj.c (ada_varobj_get_number_of_children,
3574         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3575
3576 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3577
3578         * ada-valprint.c (ada_value_print): Use type instead of
3579         enclosing type.
3580
3581 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3582
3583         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3584         an array of access to unconstrained array.
3585
3586 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3587
3588         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3589         (ada_check_typedef): Use it.
3590
3591 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3592
3593         * ada-varobj.c (ada_varobj_describe_struct_child)
3594         (ada_varobj_describe_child): Handle union case like struct one.
3595
3596 2018-09-10  Tom Tromey  <tom@tromey.com>
3597
3598         PR python/18380:
3599         * python/python.c (_initialize_python): Make example in "python"
3600         help work in Python 3.
3601
3602 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3603
3604         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3605         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3606         $(EXEEXT) to the script, as it is not a program.
3607
3608 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3609
3610         * python/py-prettyprint.c (pretty_print_one_value): Return
3611         gdbpy_ref<>.
3612         (print_string_repr): Adjust.
3613         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3614         * python/python-internal.h (apply_varobj_pretty_printer): Return
3615         gdbpy_ref<>.
3616         * varobj.c (varobj_value_get_print_value): Adjust.
3617
3618 2018-09-08  Tom Tromey  <tom@tromey.com>
3619
3620         PR python/16047:
3621         * python/py-prettyprint.c (pretty_print_one_value): Check for
3622         to_string method.
3623
3624 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3625
3626         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3627         replace_operator_with_call.
3628
3629 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3630
3631         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3632
3633 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3634
3635         * ada-typeprint.c (print_range): Print the bounds using TYPE
3636         rather than its TYPE_TARGET_TYPE.
3637
3638 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3639
3640         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3641         call to ada_to_fixed_value_create.
3642
3643 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3644
3645         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3646
3647 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3648
3649         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3650         by calls to error.
3651
3652 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3653
3654         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3655         Move update of loop variable "fi".
3656
3657 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3658
3659         * ada-lang.c (value_assign_to_component): In the case of
3660         big-endian targets, extract the bits of the given VAL
3661         using an src_offset of zero if container is not a scalar.
3662
3663 2018-09-06  Simon Ser  <contact@emersion.fr>
3664
3665         PR gdb/23105
3666         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3667         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3668         * fbsd-tdep.c (fbsd_make_note_desc): New.
3669         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3670         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3671         * target.h (enum target_object) Add FreeBSD-specific
3672         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3673
3674 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3675
3676         * compile/compile-c.h (generate_c_for_variable_locations):
3677         Change reference to pointer.
3678         * compile/compile-c-support.c (compile_program) <compute>:
3679         Likewise.
3680         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3681         (generate_c_for_for_one_variable): Likewise
3682         (generate_c_for_variable_locations): Likewise
3683         * compile/compile-c-types.c (compile_c_instance::convert_type):
3684         Likewise
3685         * compile/compile-cplus-symbols.c (convert_one_symbol):
3686         std::move the scope passed to enter_scope.
3687         * compile/compile-cplus-types.c
3688         (compile_cplus_instance::enter_scope): Make parameter
3689         rvalue-reference.
3690         (compile_cplus_instance::new_scope): Change reference to
3691         pointer.
3692         (compile_cplus_instance::convert_type): Likewise
3693         (compile_cplus_convert_typedef): std::move the scope passed to
3694         enter_scope.
3695         (compile_cplus_convert_struct_or_union): Likewise.
3696         (compile_cplus_convert_enum): Likewise.
3697         (compile_cplus_convert_namespace): Likewise.
3698         * compile/compile-cplus.h (compile_cplus_instance)
3699         <enter_scope>: Make parameter rvalue-reference.
3700         * compile/compile-internal.h (compile_instance)
3701         <get_cached_type>: Likewise
3702         * compile/compile-loc2c.c (push): Likewise
3703         (pushf): Likewise
3704         (unary): Likewise
3705         (binary): Likewise
3706         (print_label): Likewise
3707         (pushf_register_address): Likewise
3708         (pushf_register): Likewise
3709         (do_compile_dwarf_expr_to_c): Likewise
3710         (compile_dwarf_expr_to_c): Likewise
3711         (compile_dwarf_bounds_to_c): Likewise
3712         * compile/compile.c (compile_instance::get_cached_type):
3713         Likewise
3714         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3715         (compile_dwarf_bounds_to_c): Likewise
3716         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3717         (dwarf2_compile_property_to_c): Likewise
3718         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3719         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3720         Likewise
3721
3722 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3723
3724         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3725         * tui/tui-data.c (init_content_element): Don't initialize it.
3726
3727 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3728
3729         * tui/tui-data.h (struct tui_win_info)
3730         <detail::opaque>: Remove.
3731         * tui/tui-data.c (init_win_info): Remove assignment.
3732
3733 2018-09-05  Tom Tromey  <tom@tromey.com>
3734
3735         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3736         -Wformat-nonliteral.
3737         * target-float.c (host_float_ops<T>::to_string)
3738         (host_float_ops<T>::from_string): Use
3739         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3740         * configure: Rebuild.
3741
3742 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3743
3744         * printcmd.c (printf_c_string): Use
3745         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3746         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3747
3748 2018-09-05  Tom Tromey  <tom@tromey.com>
3749
3750         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3751
3752 2018-09-05  Tom de Vries  <tdevries@suse.de>
3753
3754         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3755         with resolve_abstract_p == true.
3756         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3757         defaulting to false. Propagate resolve_abstract_p to
3758         dwarf2_fetch_die_loc_sect_off.
3759         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3760         parameter, defaulting to false.
3761         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3762         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3763         parameter.
3764         * dwarf2read.h (struct die_info): Forward-declare.
3765         (die_info_ptr): New typedef.
3766         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3767
3768 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3769
3770         GDB 8.2 released.
3771
3772 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3773             Pedro Alves  <palves@redhat.com>
3774
3775         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3776         "aclocal-m4-deps.mk".  Include file here.
3777         $(srcdir)/aclocal.m4: Add "configure.ac".
3778         * gnulib/aclocal-m4-deps.mk: New file.
3779         * gnulib/update-gnulib.sh: Automatically update
3780         "aclocal-m4-deps.mk".
3781
3782 2018-09-04  Tom Tromey  <tom@tromey.com>
3783
3784         * configure: Rebuild.
3785         * configure.ac: Remove multi-ice code.
3786
3787 2018-09-04  Tom Tromey  <tom@tromey.com>
3788
3789         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3790         (ada-exp.o): Update.
3791
3792 2018-09-04  Tom Tromey  <tom@tromey.com>
3793
3794         * Makefile.in (printcmd.o, target-float.o): Remove.
3795         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3796
3797 2018-09-04  Tom Tromey  <tom@tromey.com>
3798
3799         * gnulib/Makefile.in: Remove obsolete comment.
3800         * Makefile.in: Remove obsolete comment.
3801
3802 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3803
3804         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3805         line with '+'.
3806
3807 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3808
3809         * riscv-tdep.c: Add 'prologue-value.h' include.
3810         (struct riscv_unwind_cache): New struct.
3811         (riscv_debug_unwinder): New global.
3812         (riscv_scan_prologue): Update arguments, capture register details
3813         from prologue scan.
3814         (riscv_skip_prologue): Reformat arguments line, move end of
3815         prologue calculation into riscv_scan_prologue.
3816         (riscv_frame_cache): Update return type, create
3817         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3818         details.
3819         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3820         (riscv_frame_prev_register): Use the trad_frame within the
3821         riscv_unwind_cache.
3822         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3823         flag.
3824
3825 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3826
3827         * trad-frame.h (trad_frame_set_realreg): Declare.
3828         (trad_frame_set_addr): Declare.
3829         * trad-frame.c (trad_frame_set_realreg): Define new function.
3830         (trad_frame_set_addr): Define new function.
3831         (trad_frame_set_reg_realreg): Use new function.
3832         (trad_frame_set_reg_addr): Use new function.
3833
3834 2018-09-01  Keith Seitz  <keiths@redhat.com>
3835
3836         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3837         pulongest instead of "%lld".
3838         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3839         ATTRIBUTE_UNUSED.
3840
3841 2018-08-31  Tom Tromey  <tom@tromey.com>
3842
3843         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3844         variant part type.
3845
3846 2018-08-31  Pedro Alves  <palves@redhat.com>
3847
3848         * gdbarch.h: Regenerate.
3849
3850 2018-08-31  Pedro Alves  <palves@redhat.com>
3851
3852         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3853         * target.h (Hardware watchpoint interfaces): Describe
3854         continuable/steppable/non-steppable watchpoints.
3855         * gdbarch.h, gdbarch.c: Regenerate.
3856
3857 2018-08-31  Pedro Alves  <palves@redhat.com>
3858
3859         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3860         Delete.
3861         * s390-linux-nat.c
3862         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3863         * target.h (target_ops::have_continuable_watchpoint): Delete.
3864         (target_have_continuable_watchpoint): Delete.
3865         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3866         * target-delegates.c: Regenerate.
3867
3868 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3869
3870         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3871         the files present in "gnulib/import/m4/".
3872
3873 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3874
3875         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3876         c.sw, c.swsp, and c.sdsp.
3877
3878 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3879
3880         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3881         (riscv_read_misa_reg): Don't cache value read into inferior data.
3882         (riscv_new_inferior_data): Delete.
3883         (riscv_inferior_data_cleanup): Delete.
3884         (riscv_inferior_data): Delete.
3885         (riscv_invalidate_inferior_data): Delete.
3886         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3887
3888 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3889
3890         * compile/compile-cplus-types.c
3891         (compile_cplus_instance::leave_scope): Take the address of scope
3892         object.
3893         (compile_cplus_instance::convert_qualified_base): Compare quals
3894         to 0.
3895
3896 2018-08-30  Keith Seitz  <keiths@redhat.com>
3897
3898         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3899         Use "%s" and host_address_to_string instead of "%p" in printf.
3900
3901 2018-08-29  Keith Seitz  <keiths@redhat.com>
3902
3903         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3904         and compile-cplus-types.c.
3905         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3906         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3907         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3908         Declare.
3909         * compile/compile-c-support.c: Include compile-cplus.h.
3910         (load_libcompile): Templatize.
3911         (get_compile_context): "New" function.
3912         (c_get_compile_context): Use get_compile_context.
3913         (cplus_get_compile_context): New function.
3914         (cplus_push_user_expression, cplus_pop_user_expression)
3915         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3916         (cplus_compute_program): Define new structs/functions.
3917         * compile/compile-cplus-symmbols.c: New file.
3918         * compile/compile-cplus-types.c: New file.
3919         * compile/compile-cplus.h: New file.
3920         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3921         Declare.
3922         * compile/compile-object-load.c (get_out_value_type): Use
3923         strncmp_iw when comparing symbol names.
3924         (compile_object_load): Add mst_bss and mst_data.
3925         * compile/compile.c (_initialize_compile): Remove
3926         -Wno-implicit-function-declaration from `compile_args'.
3927         * compile/gcc-cp-plugin.h: New file.
3928         * NEWS: Mention C++ compile support and new debug options.
3929
3930 2018-08-29  Keith Seitz  <keiths@redhat.com>
3931
3932         * linespec.c (collect_info::add_symbol): Make virtual.
3933         (struct symbol_searcher_collect_info): New struct.
3934         (symbol_searcher::find_all_symbols): New method.
3935         * symtab.h (class symbol_searcher): New class.
3936
3937 2018-08-29  Keith Seitz  <keiths@redhat.com>
3938
3939         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3940         Change to vector of block_symbol.  Update all users.
3941         (struct collect_info) <symbols>: Likewise.
3942         (collect_info::add_symbol): Take block_symbol as argument.
3943         Update all callers.
3944         (decode_compound_collector) <m_symbols>: Change type to vector
3945         of block_symbol.  Update all users.
3946         (decode_compound_collector::operator ()): Change parameter type
3947         to block_symbol.
3948         (find_method, find_function_symbols, find_linespec_symbols)
3949         (find_label_symbols_in_block, find_label_symbols): Change symbol
3950         vectors to block_symbol vectors.
3951         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3952         block_symbol.
3953
3954 2018-08-29  Keith Seitz  <keiths@redhat.com>
3955
3956         * linespec.c (symbolp): Remove typedef and VEC definitions.
3957         (bound_minimal_symbol_d): Likewise.
3958
3959 2018-08-29  Keith Seitz  <keiths@redhat.com>
3960
3961         * linespec.c (decode_compound_collector::decode_compound_collector):
3962         Remove initialization for `m_symtabs'.
3963         (decode_compound_collector::release_symbols): Change return type
3964         to std::vector.  Update all callers.
3965         (class decode_compound_collector) <m_symbols>: Change type to
3966         std::vector.
3967         (lookup_prefix_sym): Change return type to std::vector.  Update all
3968         callers.
3969         (compare_symbols): Remove.
3970         (std_compare_symbols): Rename to `compare_symbols'.
3971         (find_method): Change `sym_classes' parameter to std::vector.
3972         Update all callers.  Use std::sort to sort sym_classes.
3973         (find_linespec_symbols): Remove cleanup.
3974
3975 2018-08-29  Keith Seitz  <keiths@redhat.com>
3976
3977         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3978         std::vector.  Update all users.
3979         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3980         (struct collect_info) <minimal_symbols>: Likewise.
3981         (compare_msymbols): Return bool.  Change parameters to const
3982         bound_minimal_symbol references.
3983         (find_method, find_function_symbols, find_linespec_symbols): Change
3984         `minsyms' parameter to std::vector.  Update all callers.
3985
3986 2018-08-29  Keith Seitz  <keiths@redhat.com>
3987
3988         * linespec.c (struct linespec) <label_symbols>: Change type to
3989         std::vector.  Update all users.
3990         (find_label_symbols_in_block): Change `result' parameter to
3991         std::vector.  Update all callers.
3992         (find_label_symbols): Return std::vector.  Update all callers.
3993
3994 2018-08-29  Keith Seitz  <keiths@redhat.com>
3995
3996         * linespec.c (struct linespec) <function_symbols>: Change type to
3997         std::vector.  Update all users.
3998         (struct collect_info) <function_symbols>: Likewise.
3999         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
4000         (std_compare_symbols): New function.
4001         (find_method, find_function_symbols, find_linespec_symbols)
4002         (find_label_symbols_in_block): Change `symbols' parameter to
4003         std::vector.  Update all callers.
4004         (find_label_symbols): Likewise for `function_symbols' and
4005         `label_funcs_ret'.
4006
4007 2018-08-29  Keith Seitz  <keiths@redhat.com>
4008
4009         * linespec.c (symtab_vector_up): Define.
4010         (struct linespec) <file_symtabs>: Change type to std::vector *.
4011         Update all uses.
4012         (struct collect_info) <file_symtabs>: Likewise.
4013         (collect_symtabs_from_filename): Return symtab_vector_up.
4014         Update all callers.
4015         (decode_objc): Remove cleanup.
4016         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
4017         (symtab_collector::release_symtabs): Return symtab_vector_up.
4018         Update all callers.
4019         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
4020         Update all users.
4021         (collect_symtabs_from_filename, symtabs_from_filename): Return
4022         symtab_vector_up.  Update all callers.
4023
4024 2018-08-29  Tom Tromey  <tom@tromey.com>
4025
4026         * csky-tdep.c (csky_analyze_prologue): Use
4027         core_addr_to_string_nz.
4028
4029 2018-08-29  Tom Tromey  <tom@tromey.com>
4030
4031         * windows-nat.c (struct xlate_exception) <them>: Change type to
4032         DWORD.
4033         (xlate): Fix formatting.  Remove last entry.
4034         (struct xlate_exception, xlate): Comment out.
4035         (windows_nat_target::resume): Use ranged for.
4036
4037 2018-08-29  Jim Wilson  <jimw@sifive.com>
4038
4039         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
4040         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
4041         of NT_PRFPREG.
4042         (riscv_linux_nat_target::store_registers): Likewise.
4043
4044 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
4045
4046         PR gdb/23555
4047         PR gdb/23558
4048         * gnulib/aclocal.m4: Regenerate.
4049         * gnulib/config.in: Regenerate.
4050         * gnulib/configure: Regenerate.
4051         * gnulib/import/Makefile.am: Update.
4052         * gnulib/import/Makefile.in: Update.
4053         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
4054         * gnulib/import/_Noreturn.h: ... this.
4055         * gnulib/import/alloca.in.h: Update.
4056         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
4057         * gnulib/import/arg-nonnull.h: ... this.
4058         * gnulib/import/assure.h: Update.
4059         * gnulib/import/at-func.c: Update.
4060         * gnulib/import/basename-lgpl.c: Update.
4061         * gnulib/import/extra/snippet/c++defs.h: Rename to...
4062         * gnulib/import/c++defs.h: ... this.
4063         * gnulib/import/canonicalize-lgpl.c: Update.
4064         * gnulib/import/cdefs.h: Update.
4065         * gnulib/import/chdir-long.c: Update.
4066         * gnulib/import/chdir-long.h: Update.
4067         * gnulib/import/cloexec.c: Update.
4068         * gnulib/import/cloexec.h: Update.
4069         * gnulib/import/close.c: Update.
4070         * gnulib/import/closedir.c: Update.
4071         * gnulib/import/config.charset: Update.
4072         * gnulib/import/dirent-private.h: Update.
4073         * gnulib/import/dirent.in.h: Update.
4074         * gnulib/import/dirfd.c: Update.
4075         * gnulib/import/dirname-lgpl.c: Update.
4076         * gnulib/import/dirname.h: Update.
4077         * gnulib/import/dosname.h: Update.
4078         * gnulib/import/dup-safer-flag.c: Update.
4079         * gnulib/import/dup-safer.c: Update.
4080         * gnulib/import/dup.c: Update.
4081         * gnulib/import/dup2.c: Update.
4082         * gnulib/import/errno.in.h: Update.
4083         * gnulib/import/error.c: Update.
4084         * gnulib/import/error.h: Update.
4085         * gnulib/import/exitfail.c: Update.
4086         * gnulib/import/exitfail.h: Update.
4087         * gnulib/import/extra/update-copyright: Update.
4088         * gnulib/import/fchdir.c: Update.
4089         * gnulib/import/fcntl.c: Update.
4090         * gnulib/import/fcntl.in.h: Update.
4091         * gnulib/import/fd-hook.c: Update.
4092         * gnulib/import/fd-hook.h: Update.
4093         * gnulib/import/fd-safer-flag.c: Update.
4094         * gnulib/import/fd-safer.c: Update.
4095         * gnulib/import/fdopendir.c: Update.
4096         * gnulib/import/filename.h: Update.
4097         * gnulib/import/filenamecat-lgpl.c: Update.
4098         * gnulib/import/filenamecat.h: Update.
4099         * gnulib/import/flexmember.h: Update.
4100         * gnulib/import/float+.h: Update.
4101         * gnulib/import/float.c: Update.
4102         * gnulib/import/float.in.h: Update.
4103         * gnulib/import/fnmatch.c: Update.
4104         * gnulib/import/fnmatch.in.h: Update.
4105         * gnulib/import/fnmatch_loop.c: Update.
4106         * gnulib/import/fpucw.h: Update.
4107         * gnulib/import/frexp.c: Update.
4108         * gnulib/import/frexpl.c: Update.
4109         * gnulib/import/fstat.c: Update.
4110         * gnulib/import/fstatat.c: Update.
4111         * gnulib/import/getcwd-lgpl.c: Update.
4112         * gnulib/import/getcwd.c: Update.
4113         * gnulib/import/getdtablesize.c: Update.
4114         * gnulib/import/getlogin_r.c: Update.
4115         * gnulib/import/getprogname.c: Update.
4116         * gnulib/import/getprogname.h: Update.
4117         * gnulib/import/gettext.h: Update.
4118         * gnulib/import/gettimeofday.c: Update.
4119         * gnulib/import/glob-libc.h: Update.
4120         * gnulib/import/glob.c: Update.
4121         * gnulib/import/glob.in.h: Update.
4122         * gnulib/import/glob_internal.h: Update.
4123         * gnulib/import/glob_pattern_p.c: Update.
4124         * gnulib/import/globfree.c: Update.
4125         * gnulib/import/hard-locale.c: Update.
4126         * gnulib/import/hard-locale.h: Update.
4127         * gnulib/import/intprops.h: Update.
4128         * gnulib/import/inttypes.in.h: Update.
4129         * gnulib/import/isnan.c: Update.
4130         * gnulib/import/isnand-nolibm.h: Update.
4131         * gnulib/import/isnand.c: Update.
4132         * gnulib/import/isnanl-nolibm.h: Update.
4133         * gnulib/import/isnanl.c: Update.
4134         * gnulib/import/itold.c: Update.
4135         * gnulib/import/libc-config.h: Update.
4136         * gnulib/import/limits.in.h: Update.
4137         * gnulib/import/localcharset.c: Update.
4138         * gnulib/import/localcharset.h: Update.
4139         * gnulib/import/localtime-buffer.c: Update.
4140         * gnulib/import/localtime-buffer.h: Update.
4141         * gnulib/import/lstat.c: Update.
4142         * gnulib/import/m4/00gnulib.m4: Update.
4143         * gnulib/import/m4/__inline.m4: Update.
4144         * gnulib/import/m4/absolute-header.m4: Update.
4145         * gnulib/import/m4/alloca.m4: Update.
4146         * gnulib/import/m4/builtin-expect.m4: Update.
4147         * gnulib/import/m4/canonicalize.m4: Update.
4148         * gnulib/import/m4/chdir-long.m4: Update.
4149         * gnulib/import/m4/close.m4: Update.
4150         * gnulib/import/m4/closedir.m4: Update.
4151         * gnulib/import/m4/configmake.m4: Update.
4152         * gnulib/import/m4/d-ino.m4: Update.
4153         * gnulib/import/m4/d-type.m4: Update.
4154         * gnulib/import/m4/dirent_h.m4: Update.
4155         * gnulib/import/m4/dirfd.m4: Update.
4156         * gnulib/import/m4/dirname.m4: Update.
4157         * gnulib/import/m4/double-slash-root.m4: Update.
4158         * gnulib/import/m4/dup.m4: Update.
4159         * gnulib/import/m4/dup2.m4: Update.
4160         * gnulib/import/m4/eealloc.m4: Update.
4161         * gnulib/import/m4/environ.m4: Update.
4162         * gnulib/import/m4/errno_h.m4: Update.
4163         * gnulib/import/m4/error.m4: Update.
4164         * gnulib/import/m4/exponentd.m4: Update.
4165         * gnulib/import/m4/exponentl.m4: Update.
4166         * gnulib/import/m4/extensions.m4: Update.
4167         * gnulib/import/m4/extern-inline.m4: Update.
4168         * gnulib/import/m4/fchdir.m4: Update.
4169         * gnulib/import/m4/fcntl-o.m4: Update.
4170         * gnulib/import/m4/fcntl.m4: Update.
4171         * gnulib/import/m4/fcntl_h.m4: Update.
4172         * gnulib/import/m4/fdopendir.m4: Update.
4173         * gnulib/import/m4/filenamecat.m4: Update.
4174         * gnulib/import/m4/flexmember.m4: Update.
4175         * gnulib/import/m4/float_h.m4: Update.
4176         * gnulib/import/m4/fnmatch.m4: Update.
4177         * gnulib/import/m4/fnmatch_h.m4: Update.
4178         * gnulib/import/m4/fpieee.m4: Update.
4179         * gnulib/import/m4/frexp.m4: Update.
4180         * gnulib/import/m4/frexpl.m4: Update.
4181         * gnulib/import/m4/fstat.m4: Update.
4182         * gnulib/import/m4/fstatat.m4: Update.
4183         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4184         * gnulib/import/m4/getcwd-path-max.m4: Update.
4185         * gnulib/import/m4/getcwd.m4: Update.
4186         * gnulib/import/m4/getdtablesize.m4: Update.
4187         * gnulib/import/m4/getlogin.m4: Update.
4188         * gnulib/import/m4/getlogin_r.m4: Update.
4189         * gnulib/import/m4/getpagesize.m4: Update.
4190         * gnulib/import/m4/getprogname.m4: Update.
4191         * gnulib/import/m4/gettimeofday.m4: Update.
4192         * gnulib/import/m4/glibc21.m4: Update.
4193         * gnulib/import/m4/glob.m4: Update.
4194         * gnulib/import/m4/glob_h.m4: Update.
4195         * gnulib/import/m4/gnulib-cache.m4: Update.
4196         * gnulib/import/m4/gnulib-common.m4: Update.
4197         * gnulib/import/m4/gnulib-comp.m4: Update.
4198         * gnulib/import/m4/gnulib-tool.m4: Update.
4199         * gnulib/import/m4/hard-locale.m4: Update.
4200         * gnulib/import/m4/include_next.m4: Update.
4201         * gnulib/import/m4/inttypes-pri.m4: Update.
4202         * gnulib/import/m4/inttypes.m4: Update.
4203         * gnulib/import/m4/isnand.m4: Update.
4204         * gnulib/import/m4/isnanl.m4: Update.
4205         * gnulib/import/m4/largefile.m4: Update.
4206         * gnulib/import/m4/limits-h.m4: Update.
4207         * gnulib/import/m4/localcharset.m4: Update.
4208         * gnulib/import/m4/locale-fr.m4: Update.
4209         * gnulib/import/m4/locale-ja.m4: Update.
4210         * gnulib/import/m4/locale-zh.m4: Update.
4211         * gnulib/import/m4/localtime-buffer.m4: Update.
4212         * gnulib/import/m4/longlong.m4: Update.
4213         * gnulib/import/m4/lstat.m4: Update.
4214         * gnulib/import/m4/malloc.m4: Update.
4215         * gnulib/import/m4/malloca.m4: Update.
4216         * gnulib/import/m4/math_h.m4: Update.
4217         * gnulib/import/m4/mbrtowc.m4: Update.
4218         * gnulib/import/m4/mbsinit.m4: Update.
4219         * gnulib/import/m4/mbsrtowcs.m4: Update.
4220         * gnulib/import/m4/mbstate_t.m4: Update.
4221         * gnulib/import/m4/memchr.m4: Update.
4222         * gnulib/import/m4/memmem.m4: Update.
4223         * gnulib/import/m4/mempcpy.m4: Update.
4224         * gnulib/import/m4/memrchr.m4: Update.
4225         * gnulib/import/m4/mkdir.m4: Update.
4226         * gnulib/import/m4/mkstemp.m4: Update.
4227         * gnulib/import/m4/mmap-anon.m4: Update.
4228         * gnulib/import/m4/mode_t.m4: Update.
4229         * gnulib/import/m4/msvc-inval.m4: Update.
4230         * gnulib/import/m4/msvc-nothrow.m4: Update.
4231         * gnulib/import/m4/multiarch.m4: Update.
4232         * gnulib/import/m4/nocrash.m4: Update.
4233         * gnulib/import/m4/off_t.m4: Update.
4234         * gnulib/import/m4/onceonly.m4: Update.
4235         * gnulib/import/m4/open-cloexec.m4: Update.
4236         * gnulib/import/m4/open.m4: Update.
4237         * gnulib/import/m4/openat.m4: Update.
4238         * gnulib/import/m4/opendir.m4: Update.
4239         * gnulib/import/m4/pathmax.m4: Update.
4240         * gnulib/import/m4/rawmemchr.m4: Update.
4241         * gnulib/import/m4/readdir.m4: Update.
4242         * gnulib/import/m4/readlink.m4: Update.
4243         * gnulib/import/m4/realloc.m4: Update.
4244         * gnulib/import/m4/rename.m4: Update.
4245         * gnulib/import/m4/rewinddir.m4: Update.
4246         * gnulib/import/m4/rmdir.m4: Update.
4247         * gnulib/import/m4/save-cwd.m4: Update.
4248         * gnulib/import/m4/secure_getenv.m4: Update.
4249         * gnulib/import/m4/setenv.m4: Update.
4250         * gnulib/import/m4/signal_h.m4: Update.
4251         * gnulib/import/m4/ssize_t.m4: Update.
4252         * gnulib/import/m4/stat-time.m4: Update.
4253         * gnulib/import/m4/stat.m4: Update.
4254         * gnulib/import/m4/std-gnu11.m4: Update.
4255         * gnulib/import/m4/stdbool.m4: Update.
4256         * gnulib/import/m4/stddef_h.m4: Update.
4257         * gnulib/import/m4/stdint.m4: Update.
4258         * gnulib/import/m4/stdio_h.m4: Update.
4259         * gnulib/import/m4/stdlib_h.m4: Update.
4260         * gnulib/import/m4/strchrnul.m4: Update.
4261         * gnulib/import/m4/strdup.m4: Update.
4262         * gnulib/import/m4/strerror.m4: Update.
4263         * gnulib/import/m4/string_h.m4: Update.
4264         * gnulib/import/m4/strstr.m4: Update.
4265         * gnulib/import/m4/strtok_r.m4: Update.
4266         * gnulib/import/m4/sys_socket_h.m4: Update.
4267         * gnulib/import/m4/sys_stat_h.m4: Update.
4268         * gnulib/import/m4/sys_time_h.m4: Update.
4269         * gnulib/import/m4/sys_types_h.m4: Update.
4270         * gnulib/import/m4/tempname.m4: Update.
4271         * gnulib/import/m4/time_h.m4: Update.
4272         * gnulib/import/m4/unistd-safer.m4: Update.
4273         * gnulib/import/m4/unistd_h.m4: Update.
4274         * gnulib/import/m4/warn-on-use.m4: Update.
4275         * gnulib/import/m4/wchar_h.m4: Update.
4276         * gnulib/import/m4/wchar_t.m4: Update.
4277         * gnulib/import/m4/wctype_h.m4: Update.
4278         * gnulib/import/m4/wint_t.m4: Update.
4279         * gnulib/import/malloc.c: Update.
4280         * gnulib/import/malloc/scratch_buffer.h: Update.
4281         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4282         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4283         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4284         * gnulib/import/malloca.c: Update.
4285         * gnulib/import/malloca.h: Update.
4286         * gnulib/import/malloca.valgrind: Update.
4287         * gnulib/import/math.in.h: Update.
4288         * gnulib/import/mbrtowc.c: Update.
4289         * gnulib/import/mbsinit.c: Update.
4290         * gnulib/import/mbsrtowcs-impl.h: Update.
4291         * gnulib/import/mbsrtowcs-state.c: Update.
4292         * gnulib/import/mbsrtowcs.c: Update.
4293         * gnulib/import/memchr.c: Update.
4294         * gnulib/import/memmem.c: Update.
4295         * gnulib/import/mempcpy.c: Update.
4296         * gnulib/import/memrchr.c: Update.
4297         * gnulib/import/mkdir.c: Update.
4298         * gnulib/import/mkstemp.c: Update.
4299         * gnulib/import/msvc-inval.c: Update.
4300         * gnulib/import/msvc-inval.h: Update.
4301         * gnulib/import/msvc-nothrow.c: Update.
4302         * gnulib/import/msvc-nothrow.h: Update.
4303         * gnulib/import/open.c: Update.
4304         * gnulib/import/openat-die.c: Update.
4305         * gnulib/import/openat-priv.h: Update.
4306         * gnulib/import/openat-proc.c: Update.
4307         * gnulib/import/openat.c: Update.
4308         * gnulib/import/openat.h: Update.
4309         * gnulib/import/opendir.c: Update.
4310         * gnulib/import/pathmax.h: Update.
4311         * gnulib/import/pipe-safer.c: Update.
4312         * gnulib/import/rawmemchr.c: Update.
4313         * gnulib/import/readdir.c: Update.
4314         * gnulib/import/readlink.c: Update.
4315         * gnulib/import/realloc.c: Update.
4316         * gnulib/import/ref-add.sin: Update.
4317         * gnulib/import/ref-del.sin: Update.
4318         * gnulib/import/rename.c: Update.
4319         * gnulib/import/rewinddir.c: Update.
4320         * gnulib/import/rmdir.c: Update.
4321         * gnulib/import/same-inode.h: Update.
4322         * gnulib/import/save-cwd.c: Update.
4323         * gnulib/import/save-cwd.h: Update.
4324         * gnulib/import/scratch_buffer.h: Update.
4325         * gnulib/import/secure_getenv.c: Update.
4326         * gnulib/import/setenv.c: Update.
4327         * gnulib/import/signal.in.h: Update.
4328         * gnulib/import/stat-time.c: Update.
4329         * gnulib/import/stat-time.h: Update.
4330         * gnulib/import/stat-w32.c: Update.
4331         * gnulib/import/stat-w32.h: Update.
4332         * gnulib/import/stat.c: Update.
4333         * gnulib/import/stdbool.in.h: Update.
4334         * gnulib/import/stddef.in.h: Update.
4335         * gnulib/import/stdint.in.h: Update.
4336         * gnulib/import/stdio.in.h: Update.
4337         * gnulib/import/stdlib.in.h: Update.
4338         * gnulib/import/str-two-way.h: Update.
4339         * gnulib/import/strchrnul.c: Update.
4340         * gnulib/import/strdup.c: Update.
4341         * gnulib/import/streq.h: Update.
4342         * gnulib/import/strerror-override.c: Update.
4343         * gnulib/import/strerror-override.h: Update.
4344         * gnulib/import/strerror.c: Update.
4345         * gnulib/import/string.in.h: Update.
4346         * gnulib/import/stripslash.c: Update.
4347         * gnulib/import/strnlen1.c: Update.
4348         * gnulib/import/strnlen1.h: Update.
4349         * gnulib/import/strstr.c: Update.
4350         * gnulib/import/strtok_r.c: Update.
4351         * gnulib/import/sys_stat.in.h: Update.
4352         * gnulib/import/sys_time.in.h: Update.
4353         * gnulib/import/sys_types.in.h: Update.
4354         * gnulib/import/tempname.c: Update.
4355         * gnulib/import/tempname.h: Update.
4356         * gnulib/import/time.in.h: Update.
4357         * gnulib/import/unistd--.h: Update.
4358         * gnulib/import/unistd-safer.h: Update.
4359         * gnulib/import/unistd.in.h: Update.
4360         * gnulib/import/unsetenv.c: Update.
4361         * gnulib/import/verify.h: Update.
4362         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4363         * gnulib/import/wchar.in.h: Update.
4364         * gnulib/import/wctype.in.h: Update.
4365         * gnulib/import/xalloc-oversized.h: Update.
4366         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4367         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4368
4369 2018-08-16  Gary Benson <gbenson@redhat.com>
4370
4371         PR gdb/13000:
4372         * gdb/main.c (captured_main_1): Exit with nonzero status
4373         in batch mode if the last command to be executed failed.
4374         * NEWS: Mention the above.
4375
4376 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4377
4378         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4379         end of warning message.
4380
4381 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4382
4383         PR gdb/22943:
4384         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4385         (aarch64_extract_return_value): Use
4386         aapcs_is_vfp_call_or_return_candidate.
4387         (aarch64_return_in_memory): Likewise.
4388         (aarch64_store_return_value): Likewise.
4389
4390 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4391
4392         * aarch64-tdep.c
4393         (aapcs_is_vfp_call_or_return_candidate): Make static
4394         (pass_in_v_or_stack): Remove function.
4395         (pass_in_v_vfp_candidate): New function.
4396         (aarch64_push_dummy_call): Check for float register candidates.
4397
4398 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4399
4400         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4401         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4402         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4403
4404 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4405
4406         PR build/23399
4407         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4408         (struct ipa_sym_addresses): Rename to...
4409         (struct ipa_sym_addresses_common): ... this.
4410         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4411
4412 2018-08-28  Tom Tromey  <tom@tromey.com>
4413
4414         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4415         (token_fifo): Now a std::vector.
4416         (yylex, c_parse): Update.
4417         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4418         (token_fifo): Now a std::vector.
4419         (yylex, d_parse): Update.
4420         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4421         (token_fifo): Now a std::vector.
4422         (yylex, go_parse): Update.
4423
4424 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4425
4426         * parser-defs.h (struct type_stack) <elements>: Change type to
4427         std::vector<union type_stack_elt>.
4428         <depth, size>: Remove.
4429         * parse.c (parse_exp_in_context_1): Adjust.
4430         (type_stack_reserve): Remove.
4431         (check_type_stack_depth): Remove.
4432         (insert_into_type_stack): Adjust to std::vector.
4433         (insert_type): Likewise.
4434         (push_type): Likewise.
4435         (push_type_int): Likewise.
4436         (insert_type_address_space): Likewise.
4437         (pop_type): Likewise.
4438         (pop_type_int): Likewise.
4439         (pop_typelist): Likewise.
4440         (pop_type_stack): Likewise.
4441         (append_type_stack): Likewise.
4442         (push_type_stack): Likewise.
4443         (get_type_stack): Likewise.
4444         (type_stack_cleanup): Likewise.
4445         (push_typelist): Likewise.
4446         (follow_types): Likewise.
4447         (_initialize_parse): Likewise.
4448
4449 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4450
4451         * NEWS: Mention csky target.
4452
4453 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4454             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4455             Don Breazeal  <donb@codesourcery.com>
4456
4457         * csky-linux-tdep.c: New file.
4458         * csky-tdep.c: Likewise.
4459         * csky-tdep.h: Likewise.
4460         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4461         csky-tdep.o.
4462         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4463         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4464         * configure.tgt: Add csky support.
4465
4466 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4467
4468         * python/py-framefilter.c (py_print_frame): Print frame architecture
4469         when printing on an MI output.
4470
4471 2018-08-27  Tom Tromey  <tom@tromey.com>
4472
4473         PR build/23087:
4474         * configure: Rebuild.
4475         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4476
4477 2018-08-27  Tom Tromey  <tom@tromey.com>
4478
4479         * aarch64-linux-tdep.c
4480         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4481         casts to int.
4482
4483 2018-08-27  Tom Tromey  <tom@tromey.com>
4484
4485         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4486         unsigned.
4487         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4488         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4489         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4490         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4491         unsigned.
4492
4493 2018-08-27  Tom Tromey  <tom@tromey.com>
4494
4495         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4496         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4497
4498 2018-08-27  Tom Tromey  <tom@tromey.com>
4499
4500         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4501         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4502         ULONGEST_MAX.
4503         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4504         ULONGEST_MAX.
4505         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4506         ULONGEST_MAX.
4507         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4508         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4509         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4510         ULONGEST_MAX.
4511         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4512         (ppc64_linux_sigaction_tramp_frame)
4513         (ppc32_linux_sighandler_tramp_frame)
4514         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4515         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4516         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4517         * mn10300-linux-tdep.c (am33_linux_sigframe)
4518         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4519         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4520         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4521         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4522         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4523         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4524         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4525         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4526         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4527         * microblaze-linux-tdep.c
4528         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4529         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4530         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4531         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4532         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4533         * common/common-types.h (ULONGEST_MAX): New define.
4534         (CORE_ADDR_MAX): Fix formatting.
4535         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4536         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4537         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4538         (arm_linux_rt_sigreturn_tramp_frame)
4539         (arm_eabi_linux_sigreturn_tramp_frame)
4540         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4541         (thumb2_eabi_linux_sigreturn_tramp_frame)
4542         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4543         (arm_linux_restart_syscall_tramp_frame)
4544         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4545         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4546         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4547         ULONGEST_MAX.
4548         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4549
4550 2018-08-27  Tom Tromey  <tom@tromey.com>
4551
4552         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4553         CORE_ADDR_MAX.
4554         * mips-tdep.c (mips_deal_with_atomic_sequence)
4555         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4556         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4557         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4558         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4559         CORE_ADDR_MAX.
4560         * aarch64-tdep.c (aarch64_software_single_step): Use
4561         CORE_ADDR_MAX.
4562
4563 2018-08-27  Tom Tromey  <tom@tromey.com>
4564
4565         * linespec.c (complete_linespec_component): Add cast to "char".
4566         * completer.c (completion_tracker::build_completion_result): Add
4567         cast to "char".
4568
4569 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4570
4571         * solist.h (struct solist, struct target_so_ops): Fix
4572         indentation.
4573
4574 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4575
4576         * ada-tasks.c (ada_task_info_s): Remove typedef.
4577         (DEF_VEC_O(ada_task_info_s)): Remove.
4578         (struct ada_tasks_inferior_data): Initialize fields.
4579         <task_list>: Make an std::vector.
4580         (get_ada_tasks_inferior_data): Allocate with new.
4581         (ada_get_task_number): Adjust.
4582         (get_task_number_from_id): Likewise.
4583         (valid_task_id): Likewise.
4584         (ada_get_task_info_from_ptid): Likewise.
4585         (iterate_over_live_ada_tasks): Likewise.
4586         (add_ada_task): Likewise.
4587         (read_known_tasks): Likewise.
4588         (ada_build_task_list): Likewise.
4589         (print_ada_task_info): Likewise.
4590         (info_task): Likewise.
4591         (task_command_1): Likewise.
4592
4593 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4594
4595         * ada-lang.c (add_angle_brackets): Return std::string.
4596
4597 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4598
4599         * python/py-threadevent.c (py_get_event_thread): Initialize
4600         pythread.
4601
4602 2018-08-24  Pedro Alves  <palves@redhat.com>
4603
4604         * python/py-bpevent.c (create_breakpoint_event_object): Use
4605         copy-initialization.
4606         * python/py-continueevent.c (emit_continue_event): Use
4607         copy-initialization.
4608         * python/py-exitedevent.c (create_exited_event_object): Return a
4609         gdbpy_ref<>.
4610         (emit_exited_event): Use copy-initialization.
4611         * python/py-inferior.c (python_new_inferior)
4612         (python_inferior_deleted, add_thread_object): Use
4613         copy-initialization.
4614         * python/py-infevents.c (create_inferior_call_event_object)
4615         (create_register_changed_event_object)
4616         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4617         (emit_inferior_call_event, emit_memory_changed_event)
4618         (emit_register_changed_event): Use copy-initialization.
4619         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4620         Return a gdbpy_ref<>.
4621         (emit_new_objfile_event): Use copy-initialization.
4622         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4623         (emit_clear_objfiles_event): Use copy-initialization.
4624         * python/py-signalevent.c (create_signal_event_object): Use
4625         copy-initialization.
4626         * python/py-threadevent.c (create_thread_event_object): Use
4627         copy-initialization.
4628
4629 2018-08-24  Pedro Alves  <palves@redhat.com>
4630             Simon Marchi  <simon.marchi@ericsson.com>
4631
4632         PR gdb/23379
4633         * python/py-continueevent.c: Include "gdbthread.h".
4634         (create_continue_event_object): Add intro comment.  Add 'ptid'
4635         parameter.  Use it to find thread to pass to
4636         create_thread_event_object.
4637         (emit_continue_event): Pass PTID down to
4638         create_continue_event_object.
4639         * python/py-event.h (py_get_event_thread): Declare.
4640         (create_thread_event_object): Remove default from 'thread'
4641         parameter.
4642         * python/py-stopevent.c (create_stop_event_object): Use
4643         py_get_event_thread.
4644         * python/py-threadevent.c (get_event_thread): Rename to ...
4645         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4646         and use it to find the thread.
4647         (create_thread_event_object): Assert that THREAD isn't null.
4648         Don't find the event thread here.
4649
4650 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4651
4652         * block.h (blockrange, blockranges): New struct declarations.
4653         (struct block): Add new field named `ranges'.
4654         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4655         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4656         macros for accessing ranges in struct block.
4657         (make_blockranges): New declaration.
4658         block.c (make_blockranges): New function.
4659         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4660         for block.
4661         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4662         * blockframe.c (cache_pc_function_block): New static global.
4663         (clear_pc_function_cache): Clear cache_pc_function_block.
4664         (find_pc_partial_function): Move comment to symtab.h.  Add
4665         support for non-contiguous blocks.
4666         * cli/cli-cmds.c (block.h): Include.
4667         (print_disassembly): Handle printing of non-contiguous blocks.
4668         (disassemble_current_function): Likewise.
4669         (disassemble_command): Likewise.
4670
4671         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4672         BLOCK_START.
4673         * blockframe.c (get_pc_function_start): Likewise.
4674         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4675         (gcc_symbol_address): Likewise.
4676         * compile/compile-object-run.c (compile_object_run): Likewise.
4677         * compile/compile.c (get_expr_block_and_pc): Likewise.
4678         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4679         (func_addr_to_tail_call_list): Likewise.
4680         * findvar.c (default_read_var_value): Likewise.
4681         * inline-frame.c (inline_frame_this_id): Likewise.
4682         (skip-inline_frames): Likewise.
4683         * infcmd.c (until_next_command): Likewise.
4684         * linespec.c (convert_linespec_to_sals): Likewise.
4685         * parse.c (parse_exp_in_context_1): Likewise.
4686         * printcmd.c (build_address_symbolic): likewise.
4687         (info_address_command): Likewise.
4688         symtab.c (find_function_start_sal): Likewise.
4689         (skip_prologue_sal): Likewise.
4690         (find_function_alias_target): Likewise.
4691         (find_gnu_ifunc): Likewise.
4692         * stack.c (find_frame_funname): Likewise.
4693         * symtab.c (fixup_symbol_section): Likewise.
4694         (find_function_start_sal): Likewise.
4695         (skip_prologue_sal): Likewsie.
4696         (find_function_alias_target): Likewise.
4697         (find_gnu_ifunc): Likewise.
4698         * tracepoint.c (info_scope_command): Likewise.
4699         * value.c (value_fn_field): Likewise.
4700
4701         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4702         in place of find_pc_partial_function.
4703         * blockframe.c (find_function_entry_range_from_pc): New function.
4704         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4705         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4706         for each range in a block.
4707
4708
4709 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4710
4711         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4712         incrementation.
4713
4714 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4715
4716         * solib-svr4.c (read_program_headers_from_bfd): Return
4717         gdb::optional<gdb::byte_vector>.
4718         (svr4_exec_displacement): Adjust.
4719
4720 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4721
4722         * solib-svr4.c (read_program_header): Return
4723         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4724         (find_program_interpreter): Return
4725         gdb::optional<gdb::byte_vector>.
4726         (scan_dyntag_auxv): Adjust.
4727         (enable_break): Adjust.
4728         (svr4_exec_displacement): Adjust.
4729
4730 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4731
4732         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4733         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4734
4735 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4736
4737         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4738         string_vprintf.
4739         * guile/scm-utils.c (gdbscm_printf): Likewise.
4740         * serial.c (serial_printf): Likewise.
4741         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4742
4743 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4744
4745         * stack.c (print_frame): Print frame architecture when printing on
4746         an MI output.
4747         * NEWS: Mention new "arch" attribute in frame output.
4748
4749 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4750
4751         * arch/aarch64.h (aarch64_regnum): Update comment.
4752
4753 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4754
4755         * NEWS: Add SVE to 8.2 section.
4756
4757 2018-08-21  Pedro Alves  <palves@redhat.com>
4758
4759         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4760         out from gdbscm_parse_function_args.
4761         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4762         gdbscm_parse_function_args_1.
4763
4764 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4765
4766         PR gdb/17816
4767         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4768         operator.
4769
4770 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4771
4772         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4773
4774 2018-08-19  Michael Spang  <spang@google.com>
4775
4776         PR gdb/11786
4777         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4778         for PT_TLS segments.
4779
4780 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4781
4782         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4783         dwarf_variable_value.
4784         * dwarf2-frame.c (class dwarf_expr_executor):
4785         Add override for dwarf_variable_value.
4786         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4787         (class symbol_needs_eval_context): Likewise.
4788         (indirect_synthetic_pointer): Add forward declaration.
4789         (sect_variable_value): New function.
4790         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4791         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4792         for DW_OP_GNU_variable_value.
4793
4794 2018-08-16  Tom Tromey  <tom@tromey.com>
4795
4796         * top.c (read_command_file): Update.
4797         (command_line_input): Remove "repeat" argument.
4798         * ada-lang.c (get_selections): Update.
4799         * linespec.c (decode_line_2): Update.
4800         * defs.h (command_line_input): Remove argument.
4801         * cli/cli-script.c (read_next_line): Update.
4802         * python/py-gdb-readline.c: Update.
4803
4804 2018-08-17  Tom Tromey  <tom@tromey.com>
4805
4806         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4807         command_line_input.
4808
4809 2018-08-15  Tom Tromey  <tom@tromey.com>
4810
4811         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4812
4813 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4814
4815         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4816         If used, use find_pc_partial_function to find address range
4817         to disassemble.
4818         * mi/mi-main.c (mi_cmd_list_features): Report
4819         "data-disassemble-a-option" feature.
4820         * NEWS: Mention new -data-disassemble option -a.
4821
4822 2018-08-13  Tom Tromey  <tom@tromey.com>
4823
4824         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4825
4826 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4827
4828         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4829         (aarch64_linux_collect_sve_regset): Likewise.
4830         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4831         * regcache.h (regcache_map_entry_size): New function.
4832
4833 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4834
4835         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4836         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4837         (SVE_HEADER_VL_LENGTH): Likewise.
4838         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4839         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4840         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4841         (SVE_HEADER_SIZE_OFFSET): Likewise.
4842         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4843         (SVE_HEADER_VL_OFFSET): Likewise.
4844         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4845         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4846         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4847         (SVE_HEADER_SIZE): Likewise.
4848         (aarch64_linux_core_read_vq): Add function.
4849         (aarch64_linux_core_read_description): Check for SVE section.
4850
4851 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4852
4853         * aarch64-fbsd-tdep.c
4854         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4855         collect_size.
4856         * aarch64-linux-tdep.c
4857         (aarch64_linux_iterate_over_regset_sections): Likewise.
4858         * alpha-linux-tdep.c
4859         (alpha_linux_iterate_over_regset_sections):
4860         * alpha-nbsd-tdep.c
4861         (alphanbsd_iterate_over_regset_sections): Likewise.
4862         * amd64-fbsd-tdep.c
4863         (amd64fbsd_iterate_over_regset_sections): Likewise.
4864         * amd64-linux-tdep.c
4865         (amd64_linux_iterate_over_regset_sections): Likewise.
4866         * arm-bsd-tdep.c
4867         (armbsd_iterate_over_regset_sections): Likewise.
4868         * arm-fbsd-tdep.c
4869         (arm_fbsd_iterate_over_regset_sections): Likewise.
4870         * arm-linux-tdep.c
4871         (arm_linux_iterate_over_regset_sections): Likewise.
4872         * corelow.c (get_core_registers_cb): Likewise.
4873         (core_target::fetch_registers): Likewise.
4874         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4875         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4876         * gdbarch.h (void): Regenerate.
4877         * gdbarch.sh: Add supply_size and collect_size.
4878         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4879         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4880         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4881         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4882         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4883         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4884         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4885         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4886         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4887         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4888         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4889         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4890         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4891         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4892         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4893         Likewise.
4894         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4895         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4896         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4897         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4898         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4899         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4900         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4901         Likewise.
4902         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4903         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4904         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4905         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4906         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4907         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4908         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4909         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4910
4911 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4912
4913         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4914         with string_printf.
4915
4916 2018-08-10  Keith Seitz  <keiths@redhat.com>
4917
4918         * compile/compile-c-support.c (add_code_header, add_code_footer):
4919         Move into policy class.
4920         (c_push_user_expression, pop_user_expression_nop)
4921         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4922         (compile_program): New host class.
4923         (c_compile_program): New typedef.
4924         (c_compute_porgram): Use c_compile_program.
4925
4926 2018-08-10  Keith Seitz  <keiths@redhat.com>
4927
4928         * compile/compile-internal.h (compile_instance::~compile_instance):
4929         Remove calls to htab_delete.
4930         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4931         * compile.c (compile_instance::compile_instance): Initialize
4932         htab unique pointers.
4933         (compile_instance::get_cached_type, compile_instance::insert_type)
4934         (compile_instance::error_symbol_once): Update for unique_ptr.
4935
4936 2018-08-10  Keith Seitz  <keiths@redhat.com>
4937
4938         * compile/compile-c-symbols.c (struct symbol_error)
4939         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4940         (compile_instance::insert_symbol_error)
4941         (compile_instance::error_symbol_once): Move to ...
4942         * compile/compile.c: ... here.
4943
4944 2018-08-10  Keith Seitz  <keiths@redhat.com>
4945
4946         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4947         instead of `new_compile_instance'.
4948         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4949         Update description.
4950         If the symbol error map is not initialized, create it.
4951         (generate_c_for_for_one_symbol): Do not check/initialize
4952         the symbol error map.
4953         * compile/compile-c-types.c (compile_c_instance): Make a class.
4954         Update all callers.
4955         (compile_instance::compile_instance): Initialize the type cache.
4956         (get_cached_type): New function.
4957         (insert_type): Update description.
4958         (compile_c_instance::m_default_cflags): Define.
4959         (convert_type): Update description.  Use get_cached_type.
4960         (delete_instance): Moved to destructor.
4961         (new_compile_instance): Moved to constructor.
4962         * compile/compile-c.h (compile_c_instance): Make class inheriting
4963         from compile_instance.
4964         <base>: Remove field.
4965         <type_map, symbol_err_map>: Move to base class.
4966         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4967         * compile/compile-internal.h (compile_instance): Make class.
4968         <type_map_t, symbol_err_map_t>: Define.
4969         <fe>: Rename to `m_gcc_fe'.
4970         <scope, block, gcc_target_options>: Add `m_' prefix.
4971         <m_type_map, m_symbol_err_map>: New fields, moved from
4972         compile_c_instance.
4973         <destroy>: Remove.
4974         (convert_type, new_compile_instance): Remove.
4975         * compile/compile.c (cleanup_compile_instance): Remove.
4976         (compile_to_object): Use unique_ptr to eliminate cleanups.
4977         (compile_instance::set_print_callback, compile_instance::version)
4978         (compile_instance::set_verbose)
4979         (compile_instance::set_driver_filename)
4980         (compile_instance::set_triplet_regexp)
4981         (compile_instance::set_arguments)
4982         (compile_instance::set_source_file)
4983         (compile_instance::compile): Define.
4984
4985 2018-08-10  Keith Seitz  <keiths@redhat.com>
4986
4987         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4988         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4989         gcc-c-fe.def to define C plugin.
4990         (delete_instance): Delete `c_plugin'.
4991         (new_compile_instance): Initialize `c_plugin'.
4992         * compile/compile-c.h: Include gcc_c_plugin.h.
4993         (struct compile_c_instance) <c_plugin>: New member.
4994         * gcc-c-plugin.h: New file.
4995         Update all callers with API change.
4996
4997 2018-08-10  Keith Seitz  <keiths@redhat.com>
4998
4999         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
5000         (HFILES_NO_SRCDIR): ... to here.
5001         Add compile-internal.h and compile-c.h.
5002         * compile/compile-c-support.c: Include compile-c.h.
5003         * compile/compile-c-symbols.c: Include compile-c.h.
5004         (generate_c_for_variable_locations): Update comment.
5005         * compile/compile-c-types.c: Include compile-c.h.
5006         * compile/compile-c.h: New file -- moved C language declarations
5007         from other files here.
5008         * compile/compile-internal.h: Do not include hashtab.h or
5009         common/enum-flags.h.
5010         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
5011         (gcc_convert_symbol, gcc_symbol_address)
5012         (generate_c_for_variable_locations, c_get_mode_for_size)
5013         (c_get_range_decl_name): Definitions moved to compile-c.h.
5014         * compile/compile-loc2c.c: Include compile-c.h.
5015
5016 2018-08-10  Keith Seitz  <keiths@redhat.com>
5017
5018         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
5019         (c_symbol_substitution_name): ... this.
5020         Update all callers.
5021
5022 2018-08-10  Keith Seitz  <keiths@redhat.com>
5023
5024         * compile/compile-c-support.c (c_compute_program): Use
5025         unique_xmalloc_ptr to eliminate cleanup.
5026         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
5027         Return a unique_xmalloc_ptr and eliminate cleanup.
5028         * compile/compile-internal.h (generate_c_for_variable_locations):
5029         Return unique_xmalloc_ptr and update description.
5030
5031 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
5032
5033         * corelow.c (core_target::get_core_register_section): Rename
5034         min_size to section_min_size.
5035
5036 2018-08-09  Jim Wilson  <jimw@sifive.com>
5037
5038         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
5039         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
5040         * NEWS: Mention new GNU/Linux RISC-V target.
5041         * configure.host: Add riscv*-*-linux*.
5042         * configure.nat: Add riscv*.
5043         * configure.tgt: Add riscv*-*-linux*.
5044         * riscv-linux-nat.c: New file.
5045         * riscv-linux-tdep.c: New file.
5046
5047 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5048
5049         * infrun.c (resume): Make static, add forward declaration.
5050         (proceed): Update header comment.
5051         * infrun.h (resume): Delete declaration.
5052
5053 2018-08-09  Tom Tromey  <tom@tromey.com>
5054
5055         * riscv-tdep.h: Minor formatting fixes.
5056
5057 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
5058
5059         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
5060         * dwarf-index-cache.c (create_dir_and_check): Likewise.
5061         (test_mkdir_recursive): Likewise.
5062         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
5063
5064 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
5065
5066         * valarith.c (value_subscripted_rvalue): If an array is not in
5067         memory, and we don't know the upper bound, then we can't know that
5068         the requested element exists or not.
5069
5070 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
5071
5072         * target.c (str_comma_list_concat_elem): Fix typo in comment.
5073         (target_options_to_string): Add comment.
5074
5075 2018-08-08  Tom Tromey  <tom@tromey.com>
5076
5077         * unittests/scoped_mmap-selftests.c: Check result of "write".
5078
5079 2018-08-08  Jim Wilson  <jimw@sifive.com>
5080
5081         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5082         (decode_register_index_short): New.
5083         (decode_j_type_insn, decode_cj_type_insn): New.
5084         (decode_b_type_insn, decode_cb_type_insn): New.
5085         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5086         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5087         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5088         is_c_sw_insn instead of is_sw_insn.
5089         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5090         (riscv_software_single_step): New.
5091         * riscv-tdep.h (riscv_software_single_step): Declare.
5092
5093         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5094         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5095
5096 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5097
5098         PR gdb/18050:
5099         * target.c (dispose_inferior): Don't dispose of inferiors that are
5100         already killed.
5101
5102 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5103
5104         * remote.c (remote_target::download_tracepoint): Change char* to
5105         const char*.
5106
5107 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5108
5109         * target.h (target_options_to_string): Return an std::string.
5110         * target.c (str_comma_list_concat_elem): Return void, use
5111         std::string.
5112         (do_option): Likewise.
5113         (target_options_to_string): Return an std::string.
5114         * linux-nat.c (linux_nat_target::wait): Adjust.
5115         * target-debug.h (target_debug_print_options): Adjust.
5116
5117 2018-08-07  Tom Tromey  <tom@tromey.com>
5118
5119         * Makefile.in (CPPFLAGS): New variable.
5120         (INTERNAL_CPPFLAGS): Use it.
5121
5122 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5123
5124         * NEWS: Mention the index cache.
5125
5126 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5127
5128         * common/pathstuff.h (get_standard_cache_dir): New.
5129         * common/pathstuff.c (get_standard_cache_dir): New.
5130         * build-id.h (build_id_to_string): New.
5131         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5132         DEBUG_STR_SUFFIX): Move to here.
5133         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5134         DEBUG_STR_SUFFIX): Move from there.
5135         (write_psymtabs_to_index): Make non-static, add basename
5136         parameter.  Write to temporary files, rename when done.
5137         (save_gdb_index_command): Adjust call to
5138         write_psymtabs_to_index.
5139         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5140         field.
5141         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5142         (get_gdb_index_contents_from_cache): New.
5143         (get_gdb_index_contents_from_cache_dwz): New.
5144         (dwarf2_initialize_objfile): Read index from cache.
5145         (dwarf2_build_psymtabs): Save to index.
5146         * dwarf-index-cache.h: New file.
5147         * dwarf-index-cache.c: New file.
5148         * dwarf-index-write.h: New file.
5149
5150 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5151
5152         * gnulib/aclocal.m4: Re-generate.
5153         * gnulib/config.in: Re-generate.
5154         * gnulib/configure: Re-generate.
5155         * gnulib/import/Makefile.am: Re-generate.
5156         * gnulib/import/Makefile.in: Re-generate.
5157         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5158         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5159         * gnulib/import/m4/mkdir.m4: New file.
5160         * gnulib/import/mkdir.c: New file.
5161         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5162         module.
5163
5164 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5165
5166         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5167         * common/scoped_mmap.c: New file.
5168         * common/scoped_mmap.h (destroy): New method.
5169         (~scoped_mmap, reset): Use destroy.
5170         (scoped_mmap): New move constructor.
5171         (mmap_file): New declaration.
5172         * unittests/scoped_mmap-selftests.c (test_normal,
5173         test_invalid_filename, run_tests): New functions.
5174         (_initialize_scoped_mmap_selftests): Register selftest.
5175
5176 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5177
5178         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5179         (read_gdb_index_from_buffer): ... this.  Remove section
5180         parameter, add buffer parameter.
5181         (get_gdb_index_contents_ftype,
5182         get_gdb_index_contents_dwz_ftype): New typedefs.
5183         (dwarf2_read_gdb_index): Add callback parameters to get the
5184         index contents.
5185         (get_gdb_index_contents_from_section): New.
5186         (dwarf2_initialize_objfile): Update call to
5187         dwarf2_read_gdb_index.
5188
5189 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5190
5191         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5192         (gdb_open_cloexec): Likewise.
5193         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5194         (commandline_from_pid): Likewise.
5195         (linux_xfer_osdata_threads): Likewise.
5196         (linux_xfer_osdata_fds): Likewise.
5197         * ada-lang.c (is_package_name): Likewise.
5198         * auxv.c (procfs_xfer_auxv): Likewise.
5199         * breakpoint.c (print_one_breakpoint_location): Use
5200         uiout::field_fmt.
5201         (print_one_catch_solib): Use string_printf.
5202         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5203         (add_pe_forwarded_sym): Likewise.
5204         * dwarf2read.c (create_type_unit_group): Likewise.
5205         (build_error_marker_type): Likewise.
5206         * infcall.c (get_function_name): Likewise.
5207         * valprint.c (print_converted_chars_to_obstack): Likewise.
5208         * xtensa-tdep.c (xtensa_register_type): Likewise.
5209
5210 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5211
5212         * remote.c (remote_target::download_tracepoint): Fix format
5213         string errors.
5214
5215 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5216
5217         * tracefile.c: Include common/byte-vector.h.
5218         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5219         with trace_regblock_size if needed.  Update uses of buf.
5220
5221 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5222
5223         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5224         std::vector<unsigned char>.
5225         * tracepoint.c (collection_list::collection_list): Remove
5226         m_regs_mask initializer from initializer list.  Resize
5227         m_regs_mask using the largest remote register number.
5228         (collection_list::add_remote_register): Remove size check on
5229         m_regs_mask.  Use at to access element.
5230         (collection_list::stringify): Change type of temp_buf to
5231         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5232         stringify the register mask.  Use pack_hex_byte for the register
5233         mask.
5234
5235 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5236
5237         * tracepoint.h (class collection_list) <add_register>: Remove.
5238         <add_remote_register, add_ax_registers, add_local_register>:
5239         Declare.
5240         <add_memrange>: Add scope parameter.
5241         * tracepoint.c (encode_actions_1): Likewise.
5242         (collection_list::add_register): Rename to ...
5243         (collection_list::add_remote_register): ... this.  Update
5244         comment.
5245         (collection_list::add_ax_registers, add_local_register): New
5246         methods.
5247         (collection_list::add_memrange): Add scope parameter.  Call
5248         add_local_register instead of add_register.
5249         (finalize_tracepoint_aexpr): New function.
5250         (collection_list::collect_symbol): Update calls to add_memrange.
5251         Call add_local_register instead of add_register.  Call
5252         add_ax_registers.  Call finalize_tracepoint_aexpr.
5253         (encode_actions_1): Get remote regnos for $reg action.  Call
5254         add_remote_register, add_ax_registers, and add_local_register.
5255         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5256         (validate_actionline): Call finalize_tracepoint_aexpr.
5257
5258 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5259
5260         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5261         Replace array buf with gdb::char_vector buf, of size
5262         get_remote_packet_size ().  Replace references to buf and
5263         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5264         and xsnprintf with snprintf.  Raise errors if the buffer is too
5265         small.
5266
5267 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5268
5269         * remote.c (remote_target::download_tracepoint): Fix the has_more
5270         predicate in the QTDP action list iteration.
5271
5272 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5273
5274         * remote.c (remote_target::download_tracepoint): Fix indentation
5275         in for block.
5276
5277 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5278
5279         * proc-api.c (_initialize_proc_api): Remove c, unused.
5280         * procfs.c (procfs_init_inferior): Remove signals, unused.
5281         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5282         unused.
5283
5284 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5285             Andrew Burgess  <andrew.burgess@embecosm.com>
5286
5287         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5288         'W_STOPCODE (0)' as this could be ambiguous.
5289
5290 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5291
5292         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5293         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5294         "ai_socktype").
5295
5296 2018-08-02  Tom Tromey  <tom@tromey.com>
5297
5298         PR symtab/16842.
5299         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5300         symbols.
5301         (process_structure_scope): Likewise.
5302
5303 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5304
5305         PR gdb/22629:
5306         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5307         kill inferior.
5308
5309 2018-08-02  Tom Tromey  <tom@tromey.com>
5310
5311         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5312         (darwin_suspend_inferior, darwin_resume_inferior)
5313         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5314         (darwin_check_new_threads): Check result of get_darwin_inferior.
5315
5316 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5317
5318         GDB 8.1.1 released.
5319
5320 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5321
5322         * varobj.c (varobj_get_path_expr_parent): Report an error if
5323         parent is a dynamic varobj.
5324
5325 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5326
5327         * gnulib/aclocal.m4: Re-generate.
5328         * gnulib/config.in: Re-generate.
5329         * gnulib/configure: Re-generate.
5330         * gnulib/import/Makefile.in: Re-generate.
5331         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5332         * gnulib/import/m4/onceonly.m4: Re-generate.
5333
5334 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5335
5336         * target-descriptions.c (struct xml_test_tdesc): New.
5337         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5338         (record_xml_tdesc): Update.
5339         (maintenance_check_xml_descriptions): Update.
5340         * target-descriptions.h (record_xml_tdesc): Update comment.
5341
5342 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5343
5344         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5345         checking array bounds are defined.
5346
5347 2018-07-30  Tom Tromey  <tom@tromey.com>
5348
5349         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5350         irreflexivity violation.
5351
5352 2018-07-30  Tom Tromey  <tom@tromey.com>
5353
5354         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5355         * value.c (unpack_long): Remove lint code.
5356         * valops.c (value_ind): Remove lint code.
5357         * valarith.c (value_x_binop, value_x_unop, value_equal)
5358         (value_pos): Remove lint code.
5359
5360 2018-07-28  Tom de Vries  <tdevries@suse.de>
5361
5362         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5363         with undefined upper bound as <optimized out>.
5364
5365 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5366
5367         * gcore.in: Rename variable "name" to "prefix".  Expand
5368         "usage" text.
5369
5370 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5371
5372         * windows-nat.c (windows_nat_target::create_inferior): Update to
5373         call close() in global namespace.
5374
5375 2018-07-26  Tom Tromey  <tom@tromey.com>
5376
5377         * dwarf-index-write.c (add_address_entry): Don't add objfile
5378         offsets.
5379         * dbxread.c (find_stab_function): Rename from
5380         find_stab_function_addr.  Return a bound_minimal_symbol.
5381         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5382         Don't add objfile offsets.
5383         (end_psymtab): Use raw_text_low, raw_text_high,
5384         MSYMBOL_VALUE_RAW_ADDRESS.
5385         (read_ofile_symtab): Update.
5386         (process_one_symbol): Update.
5387         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5388         offsets.
5389         (dw2_relocate): Remove.
5390         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5391         searching addrmap.
5392         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5393         Update.
5394         (process_psymtab_comp_unit_reader, add_partial_symbol)
5395         (add_partial_subprogram, dwarf2_ranges_read): Update.
5396         (load_partial_dies): Update.
5397         (add_address_entry): Don't add objfile offsets.
5398         (dwarf2_build_include_psymtabs): Update.
5399         (create_addrmap_from_aranges): Don't add objfile offsets.
5400         (dw2_find_pc_sect_compunit_symtab): Update.
5401         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5402         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5403         Update.
5404         (parse_partial_symbols): Don't add objfile offsets.  Use
5405         raw_text_low, raw_text_high.  Update.
5406         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5407         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5408         or call 'relocate' quick function.  Clear psymbol_map.
5409         * psympriv.h (struct partial_symbol) <address>: Add section
5410         offset.
5411         <set_unrelocated_address>: Rename from set_address.
5412         <raw_text_low, raw_text_high>: New methods.
5413         <text_low, text_high>: Add objfile parameter.
5414         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5415         set_unrelocated_address.
5416         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5417         (find_pc_psymbol): Update.
5418         (fixup_psymbol_section, relocate_psymtabs): Remove.
5419         (dump_psymtab, psym_functions): Update.
5420         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5421         parameter.
5422         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5423         (start_psymtab_common): Update.
5424         * symfile-debug.c (debug_qf_relocate): Remove.
5425         (debug_sym_quick_functions): Update.
5426         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5427         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5428         Update.
5429
5430 2018-07-26  Tom Tromey  <tromey@redhat.com>
5431
5432         * dbxread.c (end_psymtab): Use text_high_valid and
5433         text_low_valid.
5434         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5435         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5436         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5437         Update comment.
5438         <text_low_valid, text_high_valid>: New fields.
5439         <set_text_low, set_text_high>: Update.
5440         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5441
5442 2018-07-26  Tom Tromey  <tom@tromey.com>
5443
5444         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5445         Update.
5446         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5447         textlow and texthigh fields.
5448         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5449         Update.
5450         * mdebugread.c (parse_lines, parse_partial_symbols)
5451         (psymtab_to_symtab_1): Update.
5452         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5453         Rename fields.  Update comment.  Now private.
5454         <text_low, text_high, set_text_low, set_text_high>: New methods.
5455         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5456         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5457         (start_psymtab_common, maintenance_info_psymtabs)
5458         (maintenance_check_psymtabs): Update.
5459         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5460         texthigh fields.
5461         (scan_xcoff_symtab): Update.
5462
5463 2018-07-26  Tom Tromey  <tromey@redhat.com>
5464
5465         * psympriv.h (struct partial_symbol) <unrelocated_address,
5466         address, set_address>: New methods.
5467         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5468         (fixup_psymbol_section, relocate_psymtabs): Update.
5469         (print_partial_symbols): Add 'objfile' parameter.  Update.
5470         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5471         Update.
5472
5473 2018-07-26  Tom Tromey  <tom@tromey.com>
5474
5475         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5476         (debug_names::write_psymbols): Update.
5477         * psympriv.h (struct partial_symbol): Derive from
5478         general_symbol_info.
5479         <obj_section>: New method.
5480         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5481         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5482         (find_pc_sect_psymbol, fixup_psymbol_section)
5483         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5484         (print_partial_symbols, recursively_search_psymtabs)
5485         (compare_psymbols, psymbol_hash, psymbol_compare)
5486         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5487         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5488
5489 2018-07-26  Tom Tromey  <tromey@redhat.com>
5490
5491         * dbxread.c (end_psymtab): Remove dead code.
5492
5493 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5494
5495         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5496         DWARF unwinders are disabled.
5497         * dwarf2-frame.c: Add dwarf2read.h include.
5498         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5499         disabled.
5500         (dwarf2_frame_unwinders_enabled_p): Define.
5501         (show_dwarf_unwinders_enabled_p): New function.
5502         (_initialize_dwarf2_frame): Register switch to control DWARF
5503         unwinder use.
5504         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5505         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5506         (show_dwarf_cmdlist): Remove static keyword.
5507         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5508         (show_dwarf_cmdlist): Declare.
5509         * NEWS: Document new feature.
5510
5511 2018-07-26  Tom de Vries  <tdevries@suse.de>
5512
5513         PR breakpoints/23366
5514         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5515
5516 2018-07-26  Tom de Vries  <tdevries@suse.de>
5517
5518         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5519         DW_AT_count can't be translated to a dynamic prop.
5520
5521 2018-07-25  Tom de Vries  <tdevries@suse.de>
5522
5523         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5524         try/catch.
5525
5526 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5527
5528         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5529
5530 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5531
5532         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5533
5534 2018-07-24  Keith Seitz  <keiths@redhat.comt
5535
5536         PR symtab/23010
5537         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5538         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5539         instead of add_symbol_to_list.
5540         (read_file_scope): Call prepare_one_comp_unit before reading
5541         any other DIEs.
5542
5543 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5544
5545         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5546
5547 2018-07-24  Tom Tromey  <tom@tromey.com>
5548
5549         * utils.c (malloc, realloc, free): Don't declare.
5550         * configure, config.in: Rebuild.
5551         * configure.ac: Don't check for declarations of free, malloc, or
5552         realloc.
5553
5554 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5555
5556         * aarch64-linux-nat.c
5557         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5558         variable.
5559         * arm-linux-nat.c (fetch_regs): Likewise.
5560         (store_regs): Likewise.
5561         (fetch_vfp_regs): Likewise.
5562         (store_vfp_regs): Likewise.
5563         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5564         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5565         (arm_linux_nat_target::insert_watchpoint): Likewise.
5566         (arm_linux_nat_target::remove_watchpoint): Likewise.
5567         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5568         Likewise.
5569         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5570         Likewise.
5571         * ppc-linux-nat.c (fetch_register): Likewise.
5572         (fetch_all_gp_regs): Likewise.
5573         (fetch_ppc_registers): Likewise.
5574         (store_all_gp_regs): Likewise.
5575         (store_ppc_registers): Likewise.
5576         (hwdebug_insert_point): Likewise.
5577         (can_use_watchpoint_cond_accel): Likewise.
5578         * remote-sim.c (gdb_os_write_stdout): Likewise.
5579
5580 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5581             Tom Tromey  <tom@tromey.com>
5582
5583         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5584         test for it.
5585         * configure: Rebuild.
5586
5587 2018-07-22  Tom Tromey  <tom@tromey.com>
5588
5589         * regformats/regdat.sh: Define xmltarget_${name} inside
5590         #ifndef IN_PROCESS_AGENT.
5591
5592 2018-07-22  Tom Tromey  <tom@tromey.com>
5593
5594         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5595
5596 2018-07-22  Tom Tromey  <tom@tromey.com>
5597
5598         * symfile.c (reread_symbols): Notify iter, not objfile.
5599
5600 2018-07-22  Tom Tromey  <tom@tromey.com>
5601
5602         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5603         Use arch_ops.
5604         (ravenscar_thread_target::prepare_to_store): Likewise.
5605
5606 2018-07-22  Tom Tromey  <tom@tromey.com>
5607
5608         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5609         unused variable.  Call value_fetch_lazy when needed.
5610         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5611         Remove unused variable.  Call value_fetch_lazy when needed.
5612
5613 2018-07-22  Tom Tromey  <tom@tromey.com>
5614
5615         * m32c-tdep.c (mark_dma): Return void.
5616         (make_regs): Remove unused declarations.
5617
5618 2018-07-22  Tom Tromey  <tom@tromey.com>
5619
5620         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5621         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5622         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5623         bkscm_get_valid_block_smob_arg_unsafe for effect.
5624
5625 2018-07-22  Tom Tromey  <tom@tromey.com>
5626
5627         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5628         value_type.
5629
5630 2018-07-22  Tom Tromey  <tom@tromey.com>
5631
5632         * windows-nat.c (saved_context): Conditionally define.
5633         * remote.c (remote_target::remote_btrace_maybe_reopen):
5634         Conditionally declare "warned".
5635         * inflow.c (sigquit_ours): Conditionally define.
5636         (new_tty): Move "tty" declaration inside #if.
5637         * guile/guile.c (guile_datadir): Conditionally define.
5638         * charset.c (set_be_le_names): Move some declarations inside #if.
5639         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5640         #if.
5641         (parse_xml_btrace_conf): Likewise.
5642
5643 2018-07-22  Tom Tromey  <tom@tromey.com>
5644
5645         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5646
5647 2018-07-22  Tom Tromey  <tom@tromey.com>
5648
5649         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5650         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5651         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5652         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5653         * stack.c (frame_apply_level_command): Remove unused variable.
5654         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5655         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5656         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5657         unused variable.
5658         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5659         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5660         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5661         variable.
5662         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5663         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5664         variable.
5665         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5666         Remove unused variable.
5667         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5668         variable.
5669         * common/tdesc.c (print_xml_feature::visit): Remove unused
5670         variable.
5671         * compile/compile-object-load.c (store_regs): Remove unused
5672         variables.
5673         * complaints.c (clear_complaints): Remove unused variable.
5674         * corelow.c (core_target_open): Remove unused variable.
5675         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5676         variable.
5677         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5678         variable.
5679         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5680         variable.
5681         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5682         variable.
5683         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5684         variable.
5685         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5686         variable.
5687         * ia64-tdep.c (examine_prologue): Remove unused variable.
5688         * infcall.c (run_inferior_call): Remove unused variable.
5689         * inferior.c (exit_inferior): Remove unused variable.
5690         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5691         * linespec.c (decode_line_2): Remove unused variable.
5692         * linux-nat.c (super_close): Remove.
5693         * linux-tdep.c (linux_info_proc): Remove unused variable.
5694         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5695         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5696         Remove unused variable.
5697         * parse.c (find_minsym_type_and_address): Remove unused variable.
5698         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5699         variable.
5700         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5701         variable.
5702         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5703         variables.
5704         * record-btrace.c (record_btrace_target::store_registers): Remove
5705         unused variable.
5706         (cmd_show_record_btrace_cpu): Remove unused variable.
5707         * riscv-tdep.c (riscv_register_reggroup_p)
5708         (riscv_push_dummy_call, riscv_return_value): Remove unused
5709         variable.
5710         * rust-exp.y (literal): Remove unused variable.
5711         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5712         unused variable.
5713         <STRUCTOP_ANONYMOUS>: Likewise.
5714         * s390-linux-tdep.c (s390_linux_init_abi_31)
5715         (s390_linux_init_abi_64): Remove unused variable.
5716         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5717         (file_select_thread, net_windows_open, _initialize_ser_windows):
5718         Remove unused variables.
5719         * symtab.c (find_pc_sect_line): Remove unused variable.
5720         * target-memory.c (compute_garbled_blocks): Remove unused
5721         variable.
5722         (target_write_memory_blocks): Remove unused variable.
5723         * target.c (target_stack::unpush): Remove unused variables.
5724         * tracepoint.c (start_tracing, all_tracepoint_actions)
5725         (merge_uploaded_trace_state_variables)
5726         (print_one_static_tracepoint_marker): Remove unused variable.
5727         * unittests/basic_string_view/element_access/char/1.cc (test01):
5728         Remove unused variable.
5729         * windows-nat.c (windows_continue, windows_add_all_dlls)
5730         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5731         Remove unused variables.
5732
5733 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5734
5735         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5736         attr_profile in HAVE_ELF.
5737         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5738         HAVE_ELF.
5739
5740 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5741
5742         * frame.c (frame_register_unwind): Change parameter name.
5743         (frame_unwind_register): Likewise.
5744         (frame_unwind_register_value): Likewise.
5745         (frame_unwind_register_signed): Likewise.
5746         (frame_unwind_register_unsigned): Likewise.
5747         * frame.h (frame_register_unwind): Likewise.
5748         (frame_unwind_register): Likewise.
5749         (frame_unwind_register_value): Likewise.
5750         (frame_unwind_register_signed): Likewise.
5751         (frame_unwind_register_unsigned): Likewise.
5752         (frame_unwind_arch): Likewise.
5753
5754 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5755
5756         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5757         ISA maintenance.
5758
5759 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5760
5761         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5762         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5763         hand.
5764
5765 2018-07-20  Keith Seitz  <keiths@redhat.com>
5766
5767         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5768         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5769         m_compunit_symtab, m_language>: Add "m_" prefix.
5770         Update all uses.
5771         * buildsym.c: Update all uses.
5772
5773 2018-07-20  Tom Tromey  <tom@tromey.com>
5774
5775         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5776         * buildsym.h (record_line_ftype): Remove typedef.
5777
5778 2018-07-20  Tom Tromey  <tom@tromey.com>
5779
5780         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5781         (end_expandable_symtab): Likewise.
5782         (end_symtab_get_static_block): Likewise.
5783         (end_symtab_from_static_block): Likewise.
5784         * buildsym-legacy.c (augment_type_symtab): Remove.
5785         (end_expandable_symtab): Remove.
5786         (end_symtab_get_static_block): Remove.
5787         (end_symtab_from_static_block): Remove.
5788
5789 2018-07-20  Tom Tromey  <tom@tromey.com>
5790
5791         * dwarf2read.c: Include buildsym.h.
5792         (struct dwarf2_cu) <builder>: New method.
5793         (fixup_go_packaging): Update.
5794         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5795         use scoped_free_pendings.
5796         (using_directives): Add "cu" parameter, remove "language".
5797         (read_import_statement, setup_type_unit_groups, )
5798         (read_func_scope, read_lexical_block_scope)
5799         (dwarf2_record_block_ranges, read_namespace): Update.
5800         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5801         (lnp_state_machine::handle_end_sequence): Update.
5802         (class lnp_state_machine) <m_cu>: New member.
5803         <m_record_line_callback>: Remove.
5804         <m_currently_recording_lines>: New member.
5805         (lnp_state_machine::handle_set_file): Update.
5806         (noop_record_line): Remove.
5807         (dwarf_record_line_p): Add cu parameter.
5808         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5809         (lnp_state_machine::record_line)
5810         (lnp_state_machine::lnp_state_machine)
5811         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5812         (dwarf_decode_lines): Update.
5813         (dwarf2_start_subfile): Add cu parameter.
5814         (dwarf2_start_symtab, new_symbol): Update.
5815         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5816         Remove dwarf2_per_objfile parameter.
5817         (dwarf_decode_macros): Update.
5818
5819 2018-07-20  Tom Tromey  <tom@tromey.com>
5820
5821         * stabsread.c (define_symbol): Update.
5822         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5823         * dwarf2read.c (new_symbol): Update.
5824         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5825         * cp-namespace.c: Include buildsym.h.
5826         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5827         * buildsym-legacy.c (get_buildsym_compunit): New function.
5828
5829 2018-07-20  Tom Tromey  <tom@tromey.com>
5830
5831         * xcoffread.c: Include buildsym-legacy.h.
5832         * windows-nat.c: Include buildsym-legacy.h.
5833         * stabsread.c: Include buildsym-legacy.h.
5834         * mdebugread.c: Include buildsym-legacy.h.
5835         * buildsym-legacy.h: New file.
5836         * buildsym-legacy.c: New file, from buildsym.c.
5837         * go32-nat.c: Include buildsym-legacy.h.
5838         * dwarf2read.c: Include buildsym-legacy.h.
5839         * dbxread.c: Include buildsym-legacy.h.
5840         * cp-namespace.c: Include buildsym-legacy.h.
5841         * coffread.c: Include buildsym-legacy.h.
5842         * buildsym.h: Move some contents to buildsym-legacy.h.
5843         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5844         buildsym-legacy.c.
5845         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5846
5847 2018-07-20  Tom Tromey  <tom@tromey.com>
5848
5849         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5850         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5851         (buildsym_compunit::buildsym_compunit)
5852         (buildsym_compunit::~buildsym_compunit)
5853         (buildsym_compunit::get_macro_table): Define.
5854
5855 2018-07-20  Tom Tromey  <tom@tromey.com>
5856
5857         * buildsym.c (reset_symtab_globals): Remove.
5858         (buildsym_compunit::end_symtab_from_static_block): Update.
5859         (buildsym_compunit::augment_type_symtab): Update.
5860         (end_symtab_from_static_block): Call free_buildsym_compunit.
5861         (augment_type_symtab, end_symtab, end_expandable_symtab):
5862         Likewise.
5863
5864 2018-07-20  Tom Tromey  <tom@tromey.com>
5865
5866         * arch-utils.c: Do not include buildsym.h.
5867         * mipsread.c: Do not include buildsym.h.
5868         * machoread.c: Do not include buildsym.h.
5869         * elfread.c: Do not include buildsym.h.
5870
5871 2018-07-20  Tom Tromey  <tom@tromey.com>
5872
5873         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5874         initialization.
5875         (buildsym_compunit): Add new constructor.
5876         (struct buildsym_compunit) <get_last_source_file, finish_block,
5877         record_block_range, start_subfile, patch_subfile_names,
5878         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5879         set_last_source_start_addr, get_last_source_start_addr,
5880         get_local_using_directives, set_local_using_directives,
5881         get_global_using_directives, outermost_context_p,
5882         get_current_context_stack, get_context_stack_depth,
5883         get_current_subfile, get_local_symbols, get_file_symbols,
5884         get_global_symbols, record_debugformat, record_producer,
5885         push_context, pop_context, end_symtab_get_static_block,
5886         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5887         New public methods.
5888         <record_pending_block, finish_block_internal, make_blockvector,
5889         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5890         private methods.
5891         Update all users.
5892
5893 2018-05-22  Tom Tromey  <tom@tromey.com>
5894
5895         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5896         parameter.
5897         (finish_block_internal): Update.
5898
5899 2018-07-20  Tom Tromey  <tom@tromey.com>
5900
5901         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5902         parameter.
5903         (finish_block_internal): Update.
5904
5905 2018-07-20  Tom Tromey  <tom@tromey.com>
5906
5907         * buildsym.h (EXTERN): Don't define or undef.
5908         * buildsym.c (EXTERN): Don't define.
5909
5910 2018-07-20  Tom Tromey  <tom@tromey.com>
5911
5912         * buildsym.c: Remove TODO comment.
5913
5914 2018-07-20  Tom Tromey  <tom@tromey.com>
5915
5916         * coffread.c (coff_symtab_read): Update.
5917         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5918         (xcoff_new_init): Update.
5919         * mipsread.c (mipscoff_new_init): Update.
5920         * mdebugread.c (mdebug_build_psymtabs): Update.
5921         * elfread.c (elf_new_init): Update.
5922         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5923         Update.
5924         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5925         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5926         (stabsect_build_psymtabs): Update.
5927         * buildsym.h (buildsym_init): Don't declare.
5928         * buildsym.c: Update comment.
5929         (prepare_for_building): Remove.
5930         (start_symtab, restart_symtab): Update.
5931         (reset_symtab_globals): Update comment.
5932         (buildsym_init): Remove.
5933
5934 2018-07-20  Tom Tromey  <tom@tromey.com>
5935
5936         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5937         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5938         (read_enum_type, common_block_start, common_block_end)
5939         (cleanup_undefined_types_1, finish_global_stabs): Update.
5940         * mdebugread.c (psymtab_to_symtab_1): Update.
5941         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5942         (read_lexical_block_scope, new_symbol): Update.
5943         * dbxread.c (process_one_symbol): Update.
5944         * coffread.c (coff_symtab_read, process_coff_symbol)
5945         (coff_read_enum_type): Update.
5946         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5947         declare.
5948         (get_local_symbols, get_file_symbols, get_global_symbols): New
5949         functions.
5950         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5951         m_global_symbols.
5952         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5953         (~scoped_free_pendings): Update.
5954         (finish_block, prepare_for_building, reset_symtab_globals)
5955         (end_symtab_get_static_block, end_symtab_with_blockvector)
5956         (augment_type_symtab, push_context): Update.
5957         (get_local_symbols, get_file_symbols, get_global_symbols): New
5958         functions.
5959         (buildsym_init): Update.
5960
5961 2018-07-20  Tom Tromey  <tom@tromey.com>
5962
5963         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5964         (process_full_type_unit): Likewise.
5965         (dwarf2_start_symtab): Set list_in_scope.
5966
5967 2018-07-20  Tom Tromey  <tom@tromey.com>
5968
5969         * dwarf2read.c (process_psymtab_comp_unit_reader)
5970         (build_type_psymtabs_reader): Do not set list_in_scope.
5971
5972 2018-07-20  Tom Tromey  <tom@tromey.com>
5973
5974         * buildsym.c (free_pendings): Remove.
5975         (add_symbol_to_list, scoped_free_pendings)
5976         (finish_block_internal, buildsym_init): Update.
5977
5978 2018-07-20  Tom Tromey  <tom@tromey.com>
5979
5980         * xcoffread.c (read_xcoff_symtab): Update.
5981         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5982         Update.
5983         * dbxread.c (process_one_symbol): Update.
5984         * coffread.c (coff_symtab_read): Update.
5985         * buildsym.h (finish_block): Update.
5986         * buildsym.c (finish_block): Remove "listhead" argument.
5987         (end_symtab_get_static_block): Update.
5988
5989 2018-07-20  Tom Tromey  <tom@tromey.com>
5990
5991         * buildsym.h (class scoped_free_pendings): Remove constructor.
5992         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5993         method.
5994         <m_pending_block_obstack, m_pending_blocks>: New members.
5995         (pending_block_obstack, pending_blocks): Remove.
5996         (scoped_free_pendings::scoped_free_pendings): Default.
5997         (~scoped_free_pendings): Update.
5998         (free_pending_blocks): Remove.
5999         (finish_block_internal, record_pending_block, make_blockvector)
6000         (end_symtab_get_static_block, augment_type_symtab, push_context)
6001         (buildsym_init): Update.
6002
6003 2018-07-20  Tom Tromey  <tom@tromey.com>
6004
6005         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
6006         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
6007         members.
6008         (pending_addrmap, pending_addrmap_obstack)
6009         (pending_addrmap_interesting): Remove.
6010         (scoped_free_pendings, record_block_range, make_blockvector)
6011         (prepare_for_building, reset_symtab_globals, buildsym_init):
6012         Update.
6013
6014 2018-07-20  Tom Tromey  <tom@tromey.com>
6015
6016         * xcoffread.c (process_linenos): Update.
6017         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
6018         * mdebugread.c (psymtab_to_symtab_1): Update.
6019         * dwarf2read.c (setup_type_unit_groups)
6020         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
6021         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
6022         * dbxread.c (process_one_symbol): Update.
6023         * coffread.c (coff_symtab_read, enter_linenos)
6024         (process_coff_symbol): Update.
6025         * buildsym.h (current_subfile): Don't declare.
6026         (get_current_subfile): Declare.
6027         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
6028         member.
6029         (start_subfile, free_buildsym_compunit, push_subfile)
6030         (prepare_for_building, start_symtab): Update.
6031         (get_current_subfile): New function.
6032
6033 2018-07-20  Tom Tromey  <tom@tromey.com>
6034
6035         * coffread.c (coff_symtab_read): Update.
6036         * xcoffread.c (read_xcoff_symtab): Update.
6037         * dwarf2read.c (new_symbol): Update.
6038         (read_func_scope, read_lexical_block_scope): Update.
6039         * dbxread.c (process_one_symbol): Update.
6040         * buildsym.h (context_stack, context_stack_depth): Don't declare.
6041         (outermost_context_p): Remove macro.
6042         (outermost_context_p, get_current_context_stack)
6043         (get_context_stack_depth): Declare.
6044         (pop_context): Return struct context_stack.
6045         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
6046         member.
6047         (context_stack_size): Remove.
6048         (INITIAL_CONTEXT_STACK_SIZE): Remove.
6049         (prepare_for_building, end_symtab_get_static_block)
6050         (augment_type_symtab, push_context): Update.
6051         (pop_context): Return struct context_stack.
6052         (outermost_context_p, get_current_context_stack)
6053         (get_context_stack_depth): New functions.
6054         (buildsym_init): Update.
6055
6056 2018-07-20  Tom Tromey  <tom@tromey.com>
6057
6058         * rust-exp.y: Now a pure parser.  Update all rules.
6059         (%union): Move earlier.
6060         (current_parser, work_obstack): Remove globals.
6061         (rust_parser, ~rust_parser): Update.
6062         (class rust_parser) <copy_name, concat3, crate_name, super_name,
6063         lex_character, lex_number, lex_string, lex_identifier,
6064         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
6065         convert_name, convert_params_to_expression,
6066         convert_ast_to_expression, ast_basic_type, ast_operation,
6067         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
6068         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
6069         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
6070         ast_array_type, ast_slice_type, ast_reference_type,
6071         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
6072         (rust_parse): Update.
6073         (rustyyerror, rustyylex): Add parser parameter.
6074         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
6075         (rust_lex_stringish_test, rust_lex_test_sequence)
6076         (rust_lex_test_trailing_dot, rust_lex_test_completion)
6077         (rust_lex_test_push_back, rust_lex_tests): Update.
6078
6079 2018-07-19  Pedro Alves  <palves@redhat.com>
6080
6081         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6082         gdb::unique_xmalloc_ptr.
6083         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6084         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6085         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6086         copy-initialization.
6087         * guile/scm-pretty-print.c (ppscm_print_children): Use
6088         gdb::unique_xmalloc_ptr instead of cleanups.
6089         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6090         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6091         gdb::unique_xmalloc_ptr.
6092         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6093         Adjust to use gdb::unique_xmalloc_ptr.
6094         * guile/scm-utils.c (extract_arg): Adjust.
6095         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6096         gdb::unique_xmalloc_ptr instead of a cleanup.
6097
6098 2018-07-19  Tom Tromey  <tom@tromey.com>
6099
6100         * utils.c (do_value_free_to_mark)
6101         (make_cleanup_value_free_to_mark): Remove.
6102         * utils.h (make_cleanup_value_free_to_mark): Remove.
6103
6104 2018-07-19  Pedro Alves  <palves@redhat.com>
6105
6106         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6107         forwarding reference.
6108
6109 2018-07-18  Pedro Alves  <palves@redhat.com>
6110
6111         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6112         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6113         cleanup.
6114
6115 2018-07-18  Pedro Alves  <palves@redhat.com>
6116
6117         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6118         exceptions.
6119         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6120         (gdbscm_wrap): New.
6121         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6122         directly instead of a cleanup.
6123         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6124         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6125         (vlscm_binop_gdbthrow): New, factored out from ...
6126         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6127         (vlscm_rich_compare): Use gdbscm_wrap.
6128         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6129         instead of a cleanup.
6130         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6131         cleanup.
6132         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6133         Use xfree directly instead of a cleanup.
6134         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6135         Adjust to use gdbscm_wrap and scoped_value_mark.
6136         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6137         (gdbscm_value_address, gdbscm_value_dereference)
6138         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6139         scoped_value_mark.
6140         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6141         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6142         scoped_value_mark.
6143         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6144         gdbscm_wrap and scoped_value_mark.
6145         (gdbscm_value_to_string): Use xfree directly instead of a
6146         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6147         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6148         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6149         scoped_value_mark.
6150         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6151         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6152         scoped_value_mark.
6153         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6154         gdbscm_wrap.
6155
6156 2018-07-18  Tom de Vries  <tdevries@suse.de>
6157
6158         * findvar.c (default_read_var_value): Also resolve dynamic type for
6159         LOC_OPTIMIZED_OUT vars.
6160
6161 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6162
6163         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6164         decoding.
6165
6166 2018-07-17  Tom Tromey  <tom@tromey.com>
6167
6168         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6169         (compute_enum_list, pascm_set_param_value_x)
6170         (gdbscm_parameter_value): Update.
6171         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6172         (gdbscm_scm_to_host_string): Update.
6173         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6174         Update.
6175         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6176         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6177         * guile/scm-string.c (gdbscm_scm_to_string): Return
6178         unique_xmalloc_ptr.
6179         (gdbscm_scm_to_host_string): Likewise.
6180
6181 2018-07-17  Tom Tromey  <tom@tromey.com>
6182
6183         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6184         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6185         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6186         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6187         unique_xmalloc_ptr.
6188
6189 2018-07-17  Tom Tromey  <tom@tromey.com>
6190
6191         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6192         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6193         Update.
6194         * guile/scm-cmd.c (cmdscm_function): Update.
6195         * guile/scm-pretty-print.c
6196         (ppscm_print_exception_unless_memory_error): Update.
6197         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6198         Return unique_xmalloc_ptr.
6199
6200 2018-07-17  Tom Tromey  <tom@tromey.com>
6201
6202         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6203         Use string_printf.
6204
6205 2018-07-17  Jim Wilson  <jimw@sifive.com>
6206
6207         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6208         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6209         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6210         unecessary braces after EF_RISCV_RVC test.  Delete call to
6211         set_gdbarch_decr_pc_after_break.
6212
6213         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6214         RISCV_LAST_FP_REGNUM + 1.
6215         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6216
6217 2018-07-17  Tom Tromey  <tom@tromey.com>
6218
6219         * configure.ac: Remove --disable-gdbcli.
6220         * configure: Rebuild.
6221         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6222         (SUBDIR_CLI_CFLAGS): Remove.
6223         (SFILES): Use SUBDIR_CLI_SRCS.
6224         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6225
6226 2018-07-17  Tom Tromey  <tom@tromey.com>
6227
6228         PR gdb/18624:
6229         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6230
6231 2018-07-16  Jim Wilson  <jimw@sifive.com>
6232
6233         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6234
6235 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6236
6237         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6238         variable.
6239         (libunwind_frame_sniffer): Likewise.
6240         (libunwind_frame_prev_register): Likewise.
6241         (libunwind_sigtramp_frame_sniffer): Likewise.
6242         * ia64-tdep.c (ia64_access_reg): Likewise.
6243         (ia64_access_rse_reg): Likewise.
6244         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6245         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6246
6247 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6248
6249         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6250
6251 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6252
6253         * remote-sim.c (gdbsim_target::close,
6254         gdbsim_target::mourn_inferior): Remove unused variables.
6255
6256 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6257
6258         * ia64-tdep.c (ktab_buf): New global.
6259         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6260         (get_kernel_table): Adjust.
6261
6262 2018-07-16  Tom Tromey  <tom@tromey.com>
6263
6264         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6265         * dwarf2read.c (using_directives, new_symbol): Use
6266         outermost_context_p.
6267         * dbxread.c (process_one_symbol): Use outermost_context_p.
6268         * coffread.c (coff_symtab_read): Use outermost_context_p.
6269
6270 2018-07-16  Tom Tromey  <tom@tromey.com>
6271
6272         * dwarf2read.c (using_directives, read_func_scope)
6273         (read_lexical_block_scope): Update.
6274         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6275         * buildsym.h (local_using_directives, global_using_directives):
6276         Don't declare.
6277         (get_local_using_directives, set_local_using_directives)
6278         (get_global_using_directives): Declare.
6279         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6280         m_global_using_directives>: New members.
6281         (finish_block_internal, prepare_for_building)
6282         (reset_symtab_globals, end_symtab_get_static_block)
6283         (push_context): Update.
6284         (get_local_using_directives, set_local_using_directives)
6285         (get_global_using_directives): New functions.
6286         (buildsym_init): Update.
6287
6288 2018-07-16  Tom Tromey  <tom@tromey.com>
6289
6290         * xcoffread.c (xcoff_initial_scan): Don't call
6291         free_pending_blocks.
6292         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6293         * buildsym.h (class scoped_free_pendings): Add constructor.
6294         (free_pending_blocks): Don't declare.
6295         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6296         (free_pending_blocks): Now static.
6297
6298 2018-07-16  Tom Tromey  <tom@tromey.com>
6299
6300         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6301         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6302         member.
6303         (struct subfile_stack): Remove.
6304         (subfile_stack): Remove.
6305         (push_subfile, pop_subfile, buildsym_init): Update.
6306
6307 2018-07-16  Tom Tromey  <tom@tromey.com>
6308
6309         * buildsym.c (push_subfile): Use gdb_assert.
6310         (pop_subfile): Use gdb_assert.
6311
6312 2018-07-16  Tom Tromey  <tom@tromey.com>
6313
6314         * buildsym.h (merge_symbol_lists): Remove.
6315         * buildsym.c (merge_symbol_lists): Remove.
6316
6317 2018-07-16  Tom Tromey  <tom@tromey.com>
6318
6319         * stabsread.c (scan_file_globals): Update comment.
6320         * stabsread.h (scan_file_globals): Move from buildsym.h.
6321         * buildsym.h (scan_file_globals): Move to stabsread.h.
6322
6323 2018-07-16  Tom Tromey  <tom@tromey.com>
6324
6325         * xcoffread.c (xcoff_new_init): Update.
6326         * mipsread.c (mipscoff_new_init): Update.
6327         * mdebugread.c (mdebug_build_psymtabs): Update.
6328         * elfread.c (elf_new_init): Update.
6329         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6330         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6331         * buildsym.h (buildsym_new_init): Don't declare.
6332         * buildsym.c (buildsym_new_init): Remove.
6333
6334 2018-07-16  Tom Tromey  <tom@tromey.com>
6335
6336         * stabsread.h (within_function): Move from buildsym.h.
6337         * stabsread.c (start_stabs): Clear within_function.
6338         * coffread.c (coff_start_symtab): Clear within_function.
6339         * buildsym.h (within_function): Move to stabsread.h.
6340         * buildsym.c (prepare_for_building): Update.
6341
6342 2018-07-16  Tom Tromey  <tom@tromey.com>
6343
6344         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6345         * dwarf2read.c (dwarf2_start_symtab): Don't set
6346         processing_gcc_compilation.
6347         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6348
6349 2018-07-16  Tom Tromey  <tom@tromey.com>
6350
6351         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6352         (next_symbol_text_func): Move from buildsym.h.
6353         * stabsread.c (hashname): Move from buildsym.c.
6354         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6355         (next_symbol_text_func, hashname): Move to stabsread.h.
6356         * buildsym.c: Don't include bcache.h
6357         (hashname): Move to stasbread.c.
6358
6359 2018-07-16  Tom Tromey  <tom@tromey.com>
6360
6361         * buildsym.h (context_stack_size): Don't declare.
6362         * buildsym.c (context_stack_size): New global.
6363
6364 2018-07-16  Tom Tromey  <tom@tromey.com>
6365
6366         * dbxread.c (processing_acc_compilation): New global.
6367         * buildsym.h (processing_acc_compilation): Don't declare.
6368
6369 2018-07-16  Tom Tromey  <tom@tromey.com>
6370
6371         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6372         * dbxread.c (read_ofile_symtab): Update.
6373         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6374         * buildsym.h (last_source_start_addr): Remove.
6375         (set_last_source_start_addr, get_last_source_start_addr):
6376         Declare.
6377         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6378         parameter.
6379         (struct buildsym_compunit) <m_last_source_start_addr>: New
6380         member.
6381         (prepare_for_building): Remove start_addr parameter.
6382         (start_symtab, restart_symtab, end_symtab_get_static_block)
6383         (end_symtab_with_blockvector): Update.
6384         (set_last_source_start_addr, get_last_source_start_addr): New
6385         functions.
6386
6387 2018-07-16  Tom Tromey  <tom@tromey.com>
6388
6389         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6390         member.
6391         (have_line_numbers): Remove.
6392         (record_line, prepare_for_building, end_symtab_get_static_block)
6393         (augment_type_symtab): Update.
6394
6395 2018-07-16  Tom Tromey  <tom@tromey.com>
6396
6397         * buildsym.c (~buildsym_compunit): Free the macro table.
6398         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6399         methods.
6400         <m_pending_macros>: New member.
6401         (pending_macros): Remove.
6402         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6403         (reset_symtab_globals, end_symtab_get_static_block)
6404         (end_symtab_with_blockvector, augment_type_symtab)
6405         (buildsym_init): Update.
6406
6407 2018-07-16  Tom Tromey  <tom@tromey.com>
6408
6409         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6410         parameter.
6411         (buildsym_compunit::set_last_source_file): New method.
6412         <m_last_source_file>: New member.
6413         (prepare_for_building): Remove "name" parameter.
6414         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6415         (last_source_file): Remove.
6416         (set_last_source_file, get_last_source_file): Update.
6417
6418 2018-07-16  Tom Tromey  <tom@tromey.com>
6419
6420         * buildsym.c (prepare_for_building): Add assert.
6421
6422 2018-07-16  Tom Tromey  <tom@tromey.com>
6423
6424         * buildsym.c (~buildsym_compunit): Update.
6425         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6426         (start_subfile, patch_subfile_names)
6427         (end_symtab_with_blockvector): Update.
6428
6429 2018-07-16  Tom Tromey  <tom@tromey.com>
6430
6431         * buildsym.c (struct buildsym_compunit): Add constructor,
6432         destructor, initializers.
6433         (start_buildsym_compunit): Remove.
6434         (free_buildsym_compunit): Use "delete".
6435         (start_symtab, restart_symtab): Use "new".
6436
6437 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6438
6439         * symfile.c (set_objfile_default_section_offset): Remove struct
6440         keyword.
6441
6442 2018-07-14  Stafford Horne  <shorne@gmail.com>
6443
6444         * (Responsible Maintainers): Add myself as or1k maintainer.
6445
6446 2018-07-13  Tom Tromey  <tom@tromey.com>
6447
6448         * symfile.c (set_objfile_default_section_offset): Use extra braces
6449         around initializer.
6450
6451 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6452
6453         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6454         non-branching basr.
6455
6456 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6457
6458         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6459         unittests/cli-utils-selftests.c
6460         * unittests/cli-utils-selftests.c: New file.
6461
6462 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6463
6464         * NEWS: Mention new commands. Mention change to 'thread apply'.
6465
6466 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6467
6468         * thread.c (thr_try_catch_cmd): New function.
6469         (thread_apply_all_command): Handle qcs flags.
6470         (thread_apply_command): Handle qcs flags.
6471         (taas_command): New function.
6472         (tfaas_command): New function.
6473         (_initialize_thread): Update to setup the new commands 'taas
6474         and 'tfaas'. Change doc string for 'thread apply'.
6475
6476 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6477
6478         * stack.c: (trailing_outermost_frame): New function, mostly
6479         extracted from backtrace_command_1.
6480         (leading_innermost_frame): New function.
6481         (backtrace_command_1): Update to call trailing_outermost_frame.
6482         (frame_apply_command_count): New function.
6483         (frame_apply_level_command): New function.
6484         (frame_apply_all_command): New function.
6485         (frame_apply_command): New function.
6486         (faas_command): New function.
6487         (frame_cmd_list): New variable.
6488         (_initialize_stack): Update to setup the new commands 'frame apply'
6489         and 'faas'.
6490
6491 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6492
6493         * cli-utils.c (number_or_range_parser::get_number): Only handle
6494         numbers or convenience var as numbers.
6495         (parse_flags): New function.
6496         (parse_flags_qcs): New function.
6497         (number_or_range_parser::finished): Ensure parsing end is detected
6498         before end of string.
6499         * cli-utils.h (parse_flags): New function.
6500         (parse_flags_qcs): New function.
6501         (number_or_range_parser): Remove m_finished bool.
6502         (number_or_range_parser::skip_range): Set m_in_range to false.
6503
6504 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6505
6506         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6507         on Windows.
6508
6509 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6510             Jan Kratochvil  <jan.kratochvil@redhat.com>
6511             Paul Fertser  <fercerpav@gmail.com>
6512             Tsutomu Seki  <sekiriki@gmail.com>
6513             Pedro Alves  <palves@redhat.com>
6514
6515         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6516         'unittests/parse-connection-spec-selftests.c'.
6517         (COMMON_SFILES): Add 'common/netstuff.c'.
6518         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6519         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6520         * common/netstuff.c: New file.
6521         * common/netstuff.h: New file.
6522         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6523         (wait_for_connect): Update comment.  New parameter
6524         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6525         Use 'sock' directly instead of 'scb->fd'.
6526         (try_connect): New function, with code from 'net_open'.
6527         (net_open): Rewrite main loop to deal with multiple
6528         sockets/addresses.  Handle IPv6-style hostnames; implement
6529         support for IPv6 connections.
6530         * unittests/parse-connection-spec-selftests.c: New file.
6531
6532 2018-07-11  Pedro Alves  <palves@redhat.com>
6533
6534         PR gdb/23377
6535         * remote.c (remote_target::remote_detach_pid): Call
6536         set_current_process.
6537
6538 2018-07-11  Pedro Alves  <palves@redhat.com>
6539
6540         * h8300-tdep.c (h8300_gdbarch_init): Remove
6541         set_gdbarch_ecoff_reg_to_regnum calls.
6542
6543 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6544
6545         PR c++/23373
6546         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6547         offsets/sizes for static members of a class/struct.
6548
6549 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6550
6551         * target-descriptions.c (tdesc_register_bitsize): Rename.
6552         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6553         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6554         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6555
6556 2018-07-10  Tom Tromey  <tom@tromey.com>
6557
6558         * breakpoint.c (moribund_locations): Now static and a
6559         std::vector.
6560         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6561         (build_bpstat_chain, update_global_location_list)
6562         (breakpoint_retire_moribund): Update.
6563         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6564         VEC.
6565
6566 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6567
6568         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6569         (riscv_register_reggroup_p): Use new function, remove unneeded
6570         parenthesis.
6571         (riscv_push_dummy_call): Extend assert to compare against xlen or
6572         flen based on register type.
6573
6574 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6575
6576         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6577
6578 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6579
6580         * remote.c (show_hardware_watchpoint_limit): New function.
6581         (show_hardware_watchpoint_length_limit): New function.
6582         (show_hardware_breakpoint_limit): New function.
6583         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6584         where appropriate, update help text.
6585
6586 2018-07-09  Tom Tromey  <tom@tromey.com>
6587
6588         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6589         (CLIBS): Don't mention NAT_CLIBS.
6590
6591 2018-07-09  Tom Tromey  <tom@tromey.com>
6592
6593         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6594         (LIBGDB_OBS, clean mostlyclean): Update.
6595         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6596
6597 2018-07-09  Tom Tromey  <tom@tromey.com>
6598
6599         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6600         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6601         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6602
6603 2018-07-09  Tom Tromey  <tom@tromey.com>
6604
6605         * Makefile.in (ALLDEPFILES): Remove exec.c.
6606         (COMMON_OBS): Remove exec.o.
6607         (COMMON_SFILES): Add exec.c.
6608
6609 2018-07-09  Tom Tromey  <tom@tromey.com>
6610
6611         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6612
6613 2018-07-09  Tom Tromey  <tom@tromey.com>
6614
6615         * Makefile.in (clean mostlyclean): Remove stamp-version.
6616         (version.c): Depend on stamp-version.
6617         (stamp-version): New rule, from version.c rule.
6618
6619 2018-07-09  Tom Tromey  <tom@tromey.com>
6620
6621         * Makefile.in (init.c): Depend on stamp-init.
6622         (stamp-init): New rule, from init.c rule.
6623         (clean mostlyclean): Remove stamp-init.
6624
6625 2018-07-09  Tom Tromey  <tom@tromey.com>
6626
6627         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6628         SUBDIR_GCC_COMPILE_SRCS.
6629
6630 2018-07-09  Tom Tromey  <tom@tromey.com>
6631
6632         * Makefile.in (init.c): Remove some unused sed rules.
6633
6634 2018-07-09  Tom Tromey  <tom@tromey.com>
6635
6636         * Makefile.in (TSOBS): Remove.
6637         (INIT_FILES): Update.
6638         (LIBGDB_OBS): Update.
6639         (COMMON_SFILES): Add inflow.c.
6640         (SFILES): Remove inflow.c.
6641
6642 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6643
6644         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6645
6646 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6647
6648         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6649         get_saveloc_name, is_signal_frame_name, step_name,
6650         init_remote_name, create_addr_space_name,
6651         destroy_addr_space_name, search_unwind_table_name,
6652         find_dyn_list_name): Constify.
6653
6654 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6655
6656         * darwin-nat.c (darwin_pthread_kill): New function.
6657         (darwin_resume_thread): Use darwin_pthread_kill.
6658
6659 2018-07-05  Tom de Vries  <tdevries@suse.de>
6660
6661         * macroexp.c (macro_buffer) <operator=>: New member function.
6662
6663 2018-07-04  Tom Tromey  <tom@tromey.com>
6664
6665         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6666
6667 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6668
6669         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6670         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6671         * maint.c: Likewise.
6672         * top.c: Likewise.
6673
6674 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6675
6676         * NEWS: Create a new section for the next release branch.
6677         Rename the section of the current branch, now that it has
6678         been cut.
6679
6680 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6681
6682         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6683         * version.in: Bump version to 8.2.50.DATE-git.
6684
6685 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6686             Pedro Alves  <palves@redhat.com>
6687
6688         * linux-nat.c (linux_init_ptrace): Rename to ...
6689         (linux_init_ptrace_procfs): ... this.  Call
6690         linux_proc_init_warnings.
6691         (linux_nat_target::post_attach)
6692         (linux_nat_target::post_startup_inferior): Adjust.
6693         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6694         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6695
6696 2018-07-04  Tom de Vries  <tdevries@suse.de>
6697
6698         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6699         check ...
6700         (read_comp_unit_head): ... here.
6701
6702 2018-07-03  Tom Tromey  <tom@tromey.com>
6703
6704         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6705         (stop_tracing, tstatus_command)
6706         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6707         (print_one_static_tracepoint_marker): Update.
6708         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6709         std::vector.
6710         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6711         VEC.
6712         (all_tracepoints, static_tracepoints_here): Return std::vector.
6713
6714 2018-07-03  Tom Tromey  <tom@tromey.com>
6715
6716         * common/ptid.c (ptid_equal): Remove.
6717         * common/ptid.h (ptid_equal): Don't declare.
6718         * ada-tasks.c: Update.
6719         * breakpoint.c: Update.
6720         * common/agent.c: Update.
6721         * corelow.c: Update.
6722         * darwin-nat-info.c: Update.
6723         * darwin-nat.c: Update.
6724         * dcache.c: Update.
6725         * dtrace-probe.c: Update.
6726         * dummy-frame.c: Update.
6727         * fbsd-nat.c: Update.
6728         * frame.c: Update.
6729         * gdbthread.h: Update.
6730         * gnu-nat.c: Update.
6731         * go32-nat.c: Update.
6732         * inf-loop.c: Update.
6733         * inf-ptrace.c: Update.
6734         * infcall.c: Update.
6735         * infcmd.c: Update.
6736         * inflow.c: Update.
6737         * infrun.c: Update.
6738         * linux-fork.c: Update.
6739         * linux-nat.c: Update.
6740         * linux-thread-db.c: Update.
6741         * mi/mi-cmd-var.c: Update.
6742         * mi/mi-interp.c: Update.
6743         * mi/mi-main.c: Update.
6744         * nto-procfs.c: Update.
6745         * ppc-linux-tdep.c: Update.
6746         * procfs.c: Update.
6747         * python/py-inferior.c: Update.
6748         * python/py-record-btrace.c: Update.
6749         * python/py-record.c: Update.
6750         * ravenscar-thread.c: Update.
6751         * regcache.c: Update.
6752         * remote-sim.c: Update.
6753         * remote.c: Update.
6754         * sol-thread.c: Update.
6755         * solib.c: Update.
6756         * target.c: Update.
6757         * tui/tui-stack.c: Update.
6758         * varobj.c: Update.
6759         * windows-nat.c: Update.
6760         * windows-tdep.c: Update.
6761
6762 2018-07-03  Tom Tromey  <tom@tromey.com>
6763
6764         * common/ptid.c (ptid_match): Remove.
6765         * common/ptid.h (ptid_match): Don't declare.
6766         * fbsd-nat.c: Update.
6767         * infcmd.c: Update.
6768         * infrun.c: Update.
6769         * linux-nat.c: Update.
6770         * record-btrace.c: Update.
6771         * regcache.c: Update.
6772         * remote.c: Update.
6773
6774 2018-07-03  Tom Tromey  <tom@tromey.com>
6775
6776         * common/ptid.c (ptid_tid_p): Remove.
6777         * common/ptid.h (ptid_tid_p): Don't declare.
6778         * sol-thread.c: Update.
6779
6780 2018-07-03  Tom Tromey  <tom@tromey.com>
6781
6782         * common/ptid.c (ptid_lwp_p): Remove.
6783         * common/ptid.h (ptid_lwp_p): Don't declare.
6784         * fbsd-nat.c: Update.
6785         * linux-nat.c: Update.
6786         * nat/linux-procfs.c: Update.
6787         * nat/x86-linux-dregs.c: Update.
6788         * sol-thread.c: Update.
6789
6790 2018-07-03  Tom Tromey  <tom@tromey.com>
6791
6792         * common/ptid.c (ptid_is_pid): Remove.
6793         * common/ptid.h (ptid_is_pid): Don't declare.
6794         * infrun.c: Update.
6795         * linux-nat.c: Update.
6796         * mi/mi-interp.c: Update.
6797         * remote.c: Update.
6798         * thread.c: Update.
6799
6800 2018-07-03  Tom Tromey  <tom@tromey.com>
6801
6802         * common/ptid.c (ptid_get_tid): Remove.
6803         * common/ptid.h (ptid_get_tid): Don't declare.
6804         * ada-tasks.c: Update.
6805         * aix-thread.c: Update.
6806         * bsd-uthread.c: Update.
6807         * darwin-nat.c: Update.
6808         * fbsd-nat.c: Update.
6809         * i386-darwin-nat.c: Update.
6810         * infrun.c: Update.
6811         * linux-tdep.c: Update.
6812         * nto-procfs.c: Update.
6813         * ppc-ravenscar-thread.c: Update.
6814         * python/py-infthread.c: Update.
6815         * ravenscar-thread.c: Update.
6816         * sol-thread.c: Update.
6817         * sparc-ravenscar-thread.c: Update.
6818         * windows-nat.c: Update.
6819
6820 2018-07-03  Tom Tromey  <tom@tromey.com>
6821
6822         * common/ptid.c (ptid_get_lwp): Remove.
6823         * common/ptid.h (ptid_get_lwp): Don't declare.
6824         * aarch64-linux-nat.c: Update.
6825         * ada-tasks.c: Update.
6826         * aix-thread.c: Update.
6827         * amd64-linux-nat.c: Update.
6828         * arm-linux-nat.c: Update.
6829         * corelow.c: Update.
6830         * fbsd-nat.c: Update.
6831         * fbsd-tdep.c: Update.
6832         * gnu-nat.c: Update.
6833         * i386-cygwin-tdep.c: Update.
6834         * i386-gnu-nat.c: Update.
6835         * i386-linux-nat.c: Update.
6836         * ia64-linux-nat.c: Update.
6837         * inf-ptrace.c: Update.
6838         * infrun.c: Update.
6839         * linux-fork.c: Update.
6840         * linux-nat.c: Update.
6841         * linux-tdep.c: Update.
6842         * linux-thread-db.c: Update.
6843         * mips-linux-nat.c: Update.
6844         * nat/aarch64-linux-hw-point.c: Update.
6845         * nat/aarch64-linux.c: Update.
6846         * nat/linux-btrace.c: Update.
6847         * nat/linux-osdata.c: Update.
6848         * nat/linux-procfs.c: Update.
6849         * nat/x86-linux-dregs.c: Update.
6850         * obsd-nat.c: Update.
6851         * ppc-fbsd-nat.c: Update.
6852         * ppc-linux-nat.c: Update.
6853         * procfs.c: Update.
6854         * python/py-infthread.c: Update.
6855         * ravenscar-thread.c: Update.
6856         * remote.c: Update.
6857         * s390-linux-nat.c: Update.
6858         * sol-thread.c: Update.
6859         * sol2-tdep.c: Update.
6860         * spu-linux-nat.c: Update.
6861         * x86-linux-nat.c: Update.
6862         * xtensa-linux-nat.c: Update.
6863
6864 2018-07-03  Tom Tromey  <tom@tromey.com>
6865
6866         * common/ptid.c (ptid_get_pid): Remove.
6867         * common/ptid.h (ptid_get_pid): Don't declare.
6868         * aarch64-linux-nat.c: Update.
6869         * ada-lang.c: Update.
6870         * aix-thread.c: Update.
6871         * alpha-bsd-nat.c: Update.
6872         * amd64-fbsd-nat.c: Update.
6873         * amd64-linux-nat.c: Update.
6874         * arm-linux-nat.c: Update.
6875         * arm-nbsd-nat.c: Update.
6876         * auxv.c: Update.
6877         * break-catch-syscall.c: Update.
6878         * breakpoint.c: Update.
6879         * bsd-uthread.c: Update.
6880         * corelow.c: Update.
6881         * ctf.c: Update.
6882         * darwin-nat.c: Update.
6883         * fbsd-nat.c: Update.
6884         * fbsd-tdep.c: Update.
6885         * gcore.c: Update.
6886         * gnu-nat.c: Update.
6887         * hppa-nbsd-nat.c: Update.
6888         * hppa-obsd-nat.c: Update.
6889         * i386-fbsd-nat.c: Update.
6890         * ia64-linux-nat.c: Update.
6891         * inf-ptrace.c: Update.
6892         * infcmd.c: Update.
6893         * inferior.c: Update.
6894         * inferior.h: Update.
6895         * inflow.c: Update.
6896         * infrun.c: Update.
6897         * linux-fork.c: Update.
6898         * linux-nat.c: Update.
6899         * linux-tdep.c: Update.
6900         * linux-thread-db.c: Update.
6901         * m68k-bsd-nat.c: Update.
6902         * mi/mi-interp.c: Update.
6903         * mi/mi-main.c: Update.
6904         * mips-linux-nat.c: Update.
6905         * mips-nbsd-nat.c: Update.
6906         * mips64-obsd-nat.c: Update.
6907         * nat/aarch64-linux-hw-point.c: Update.
6908         * nat/aarch64-linux.c: Update.
6909         * nat/linux-btrace.c: Update.
6910         * nat/linux-osdata.c: Update.
6911         * nat/linux-procfs.c: Update.
6912         * nat/x86-linux-dregs.c: Update.
6913         * nto-procfs.c: Update.
6914         * obsd-nat.c: Update.
6915         * ppc-linux-nat.c: Update.
6916         * ppc-nbsd-nat.c: Update.
6917         * ppc-obsd-nat.c: Update.
6918         * proc-service.c: Update.
6919         * procfs.c: Update.
6920         * python/py-inferior.c: Update.
6921         * python/py-infthread.c: Update.
6922         * ravenscar-thread.c: Update.
6923         * record.c: Update.
6924         * remote-sim.c: Update.
6925         * remote.c: Update.
6926         * rs6000-nat.c: Update.
6927         * s390-linux-nat.c: Update.
6928         * sh-nbsd-nat.c: Update.
6929         * sol-thread.c: Update.
6930         * sparc-nat.c: Update.
6931         * sparc64-tdep.c: Update.
6932         * spu-linux-nat.c: Update.
6933         * spu-tdep.c: Update.
6934         * target-debug.h: Update.
6935         * target.c: Update.
6936         * thread.c: Update.
6937         * tid-parse.c: Update.
6938         * tracefile-tfile.c: Update.
6939         * vax-bsd-nat.c: Update.
6940         * windows-nat.c: Update.
6941         * x86-linux-nat.c: Update.
6942         * x86-nat.c: Update.
6943
6944 2018-07-03  Tom Tromey  <tom@tromey.com>
6945
6946         * common/ptid.c (pid_to_ptid): Remove.
6947         * common/ptid.h (pid_to_ptid): Don't declare.
6948         * aix-thread.c: Update.
6949         * arm-linux-nat.c: Update.
6950         * common/ptid.c: Update.
6951         * common/ptid.h: Update.
6952         * corelow.c: Update.
6953         * ctf.c: Update.
6954         * darwin-nat.c: Update.
6955         * fbsd-nat.c: Update.
6956         * fork-child.c: Update.
6957         * gnu-nat.c: Update.
6958         * go32-nat.c: Update.
6959         * inf-ptrace.c: Update.
6960         * infcmd.c: Update.
6961         * inferior.c: Update.
6962         * infrun.c: Update.
6963         * linux-fork.c: Update.
6964         * linux-nat.c: Update.
6965         * nat/aarch64-linux-hw-point.c: Update.
6966         * nat/fork-inferior.c: Update.
6967         * nat/x86-linux-dregs.c: Update.
6968         * nto-procfs.c: Update.
6969         * obsd-nat.c: Update.
6970         * procfs.c: Update.
6971         * progspace.c: Update.
6972         * remote.c: Update.
6973         * rs6000-nat.c: Update.
6974         * s390-linux-nat.c: Update.
6975         * sol-thread.c: Update.
6976         * spu-linux-nat.c: Update.
6977         * target.c: Update.
6978         * top.c: Update.
6979         * tracefile-tfile.c: Update.
6980         * windows-nat.c: Update.
6981
6982 2018-07-03  Tom Tromey  <tom@tromey.com>
6983
6984         * common/ptid.h (ptid_build): Don't declare.
6985         * common/ptid.c (ptid_build): Remove.
6986         * aix-thread.c: Update.
6987         * bsd-kvm.c: Update.
6988         * bsd-uthread.c: Update.
6989         * common/agent.c: Update.
6990         * common/ptid.c: Update.
6991         * common/ptid.h: Update.
6992         * corelow.c: Update.
6993         * darwin-nat.c: Update.
6994         * fbsd-nat.c: Update.
6995         * gnu-nat.c: Update.
6996         * linux-fork.c: Update.
6997         * linux-nat.c: Update.
6998         * linux-thread-db.c: Update.
6999         * nat/linux-osdata.c: Update.
7000         * nat/linux-procfs.c: Update.
7001         * nto-procfs.c: Update.
7002         * obsd-nat.c: Update.
7003         * proc-service.c: Update.
7004         * procfs.c: Update.
7005         * ravenscar-thread.c: Update.
7006         * remote-sim.c: Update.
7007         * remote.c: Update.
7008         * sol-thread.c: Update.
7009         * target.c: Update.
7010         * windows-nat.c: Update.
7011
7012 2018-07-03  Tom Tromey  <tom@tromey.com>
7013
7014         * infrun.c (follow_exec): Use exit_inferior_silent.
7015         * inferior.c (exit_inferior_num_silent): Remove.
7016         * inferior.h (exit_inferior_num_silent): Don't declare.
7017
7018 2018-07-03  Tom Tromey  <tom@tromey.com>
7019
7020         PR cli/23340:
7021         * darwin-nat.c (darwin_attach_pid): Reset inferior and
7022         inferior_ptid on error.
7023
7024 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
7025             Simon Marchi  <simon.marchi@polymtl.ca>
7026
7027         PR tdep/8282
7028         * disasm.h (gdb_disassembler): Add
7029         `m_disassembler_options_holder'. member
7030         * disasm.c (get_all_disassembler_options): New function.
7031         (gdb_disassembler::gdb_disassembler): Use it.
7032         (gdb_buffered_insn_length_init_dis): Likewise.
7033         (gdb_buffered_insn_length): Adjust accordingly.
7034         (set_disassembler_options): Handle options with arguments.
7035         (show_disassembler_options_sfunc): Likewise.  Add a leading new
7036         line if showing options with descriptions.
7037         (disassembler_options_completer): Adapt to using the
7038         `disasm_options_and_args_t' structure.
7039         * mips-tdep.c (mips_disassembler_options): New variable.
7040         (mips_disassembler_options_o32): Likewise.
7041         (mips_disassembler_options_n32): Likewise.
7042         (mips_disassembler_options_n64): Likewise.
7043         (gdb_print_insn_mips): Don't set `disassembler_options'.
7044         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
7045         functions.
7046         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
7047         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
7048         `gdbarch_disassembler_options_implicit' and
7049         `gdbarch_valid_disassembler_options'.
7050         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
7051         `disasm_options_and_args_t' structure.
7052         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
7053         method.
7054         (valid_disassembler_options): Switch from `disasm_options_t' to
7055         the `disasm_options_and_args_t' structure.
7056         * NEWS: Document `set disassembler-options' support for the MIPS
7057         target.
7058         * gdbarch.h: Regenerate.
7059         * gdbarch.c: Regenerate.
7060
7061 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
7062
7063         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
7064
7065 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
7066
7067         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
7068         parameter in call to amd64_target_description.
7069         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
7070         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
7071         (amd64fbsd_init_abi): Likewise.
7072         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
7073         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
7074         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
7075         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
7076
7077 2018-06-29  Pedro Alves  <palves@redhat.com>
7078
7079         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7080         "segments" parameter.
7081         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7082         (_initialize_amd64_tdep): Update call to
7083         amd64_create_target_description.
7084         (amd64_target_description): Add "segments" parameter.  Adjust
7085         the implementation to use it.
7086         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7087         call to amd64_create_target_description.
7088         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7089         * gdb/arch/amd64.h (amd64_create_target_description): Add
7090         "segments" register.
7091         * gdb/arch/amd64.c (amd64_create_target_description): Add
7092         "segments" parameter.  Call create_feature_i386_64bit_segments
7093         only if SEGMENTS is true.
7094         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7095         call to amd64_create_target_description.
7096
7097 2018-06-29  Pedro Alves  <palves@redhat.com>
7098
7099         * thread.c (thread_target_id_str): New, factored out from ...
7100         (print_thread_info_1): ... here.  Use it to compute the max
7101         "Target Id" column width.
7102
7103 2018-06-29  Pedro Alves  <palves@redhat.com>
7104
7105         * remote.c (remote_target::extra_thread_info): Delete
7106         'display_buf' and 'n' locals.  from the cache, regardless of
7107         packet mechanims is in use.  Use cache for qThreadExtra and qP
7108         methods too.
7109
7110 2018-06-29  Pedro Alves  <palves@redhat.com>
7111
7112         * blockframe.c (find_pc_sect_containing_function): New function.
7113         * breakpoint.c (print_breakpoint_location): Don't call
7114         find_pc_sect_function.
7115         * linespec.c (create_sals_line_offset): Record the location's
7116         symbol in the sal.
7117         * linespec.c (convert_address_location_to_sals): Fill in sal's
7118         symbol with find_pc_sect_containing_function.
7119         * symtab.c (find_function_start_sal): Rename to ...
7120         (find_function_start_sal_1): ... this.
7121         (find_function_start_sal): Reimplement as wrapper around
7122         find_function_start_sal_1, and use
7123         find_pc_sect_containing_function to fill in the sal's symbol.
7124         (find_function_start_sal(symbol*, bool)): Adjust.
7125         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7126         comments.
7127         (find_pc_sect_containing_function): Declare.
7128
7129 2018-06-29  Pedro Alves  <palves@redhat.com>
7130
7131         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7132         true if the the location has no symbol.
7133
7134 2018-06-28  Tom Tromey  <tom@tromey.com>
7135
7136         * NEWS: Mention --enable-codesign.
7137         * silent-rules.mk (ECHO_SIGN): New variable.
7138         * configure.ac: Add --enable-codesign.
7139         * configure: Rebuild.
7140         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7141         (gdb$(EXEEXT)): Optionally invoke codesign.
7142
7143 2018-06-28  Pedro Alves  <palves@redhat.com>
7144
7145         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7146         comments.
7147         (switch_to_thread_no_regs): Adjust comment.
7148         * infcmd.c (stop_pc): Delete.
7149         (post_create_inferior, info_program_command): Replace references
7150         to stop_pc with references to thread_info->suspend.stop_pc.
7151         * inferior.h (stop_pc): Delete declaration.
7152         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7153         (handle_inferior_event_1, handle_signal_stop)
7154         (process_event_stop_test, keep_going_stepped_thread)
7155         (handle_step_into_function, handle_step_into_function_backward)
7156         (print_stop_location): Replace references to stop_pc with
7157         references to thread_info->suspend.stop_pc.
7158         (struct infcall_suspend_state) <stop_pc>: Delete field.
7159         (save_infcall_suspend_state, restore_infcall_suspend_state):
7160         Remove references to inf_stat->stop_pc.
7161         * linux-fork.c (fork_load_infrun_state): Likewise.
7162         * record-btrace.c (record_btrace_set_replay): Likewise.
7163         * record-full.c (record_full_goto_entry): Likewise.
7164         * remote.c (print_one_stopped_thread): Likewise.
7165         * target.c (target_resume): Extend comment.
7166         * thread.c (set_executing_thread): New.
7167         (set_executing): Use it.
7168         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7169         Remove references to stop_pc.
7170
7171 2018-06-28  Pedro Alves  <palves@redhat.com>
7172
7173         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7174         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7175
7176 2018-06-28  Tom Tromey  <tom@tromey.com>
7177
7178         * coffread.c (coff_symfile_finish): Update.
7179         * xcoffread.c (xcoff_symfile_finish): Update.
7180         * elfread.c (elf_symfile_finish): Update.
7181         * symfile.h (dwarf2_free_objfile): Don't declare.
7182         * dwarf2read.c (_initialize_dwarf2_read): Use
7183         register_objfile_data_with_cleanup.
7184         (dwarf2_free_objfile): Now static.  Change signature.
7185
7186 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7187
7188         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7189         option "-o" to add-symbol-file-load to add an offset to each
7190         section's load address.
7191         * symfile.c (set_objfile_default_section_offset): New function.
7192
7193 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7194
7195         * symfile.c (add_symbol_file_command): Make sure that sections
7196         with the same name are sorted in the same order.
7197
7198 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7199
7200         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7201         require the second argument.  If omitted, load sections at the
7202         addresses specified in the file.
7203
7204 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7205
7206         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7207         (_initialize_symfile): Add option "-o" to symbol-file to add an
7208         offset to each section of the symbol file.
7209
7210 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7211
7212         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7213
7214 2018-06-27  Tom Tromey  <tom@tromey.com>
7215
7216         * stack.c (_initialize_stack): Update "func" help text.
7217
7218 2018-06-27  Tom Tromey  <tom@tromey.com>
7219
7220         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7221         std::vector.
7222         (unwind_infopy_str, pyuw_create_unwind_info)
7223         (unwind_infopy_add_saved_register, pyuw_sniffer)
7224         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7225         Update.
7226         (struct saved_reg): Add constructor.
7227         <value>: Now a gdbpy_ref<>.
7228
7229 2018-06-27  Tom Tromey  <tom@tromey.com>
7230
7231         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7232
7233 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7234
7235         * gdb-gdb.py.in: Format using autopep8.
7236
7237 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7238
7239         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7240         (type_lookup_function): Recognize CORE_ADDR values.
7241
7242 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7243
7244         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7245         print tag_name.
7246
7247 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7248
7249         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7250         <__lt__>: Add.
7251
7252 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7253
7254         * gdb-gdb.py: Move to...
7255         * gdb-gdb.py.in: ... here.
7256         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7257         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7258         dependencies.
7259         (distclean): Remove gdb-gdb.py when cleaning.
7260         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7261         * configure: Re-generate.
7262
7263 2018-06-27  Pedro Alves  <palves@redhat.com>
7264
7265         * proc-service.c (get_ps_regcache): New.
7266         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7267         (ps_lsetfpregs): Use it.
7268
7269 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7270
7271         PR gdb/21695
7272         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7273         declaration.
7274         (dwarf_decode_lines_1): Adjust.
7275
7276 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7277
7278         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7279         override.
7280         <info_proc>: Likewise.
7281
7282 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7283
7284         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7285         to windows_fetch_one_register, and only handle the case of
7286         fetching one register.  Move the code that reloads the context
7287         and iterates over all registers if R is negative to...
7288         (windows_nat_target::fetch_registers): ... here.
7289         (do_windows_store_inferior_registers): Rename to
7290         windows_store_one_register, and only handle the case of storing
7291         one register.  Move the code that handles the case where r is
7292         negative to...
7293         (windows_nat_target::store_registers) ... here.
7294
7295 2018-06-26  Tom Tromey  <tom@tromey.com>
7296
7297         PR rust/22574:
7298         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7299         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7300         Update.
7301         (rust_internal_print_type): Add podata parameter.
7302         (rust_print_type): Update.
7303
7304 2018-06-26  Tom Tromey  <tom@tromey.com>
7305
7306         * typeprint.h (struct print_offset_data) <update, finish,
7307         maybe_print_hole>: New methods.
7308         <indentation>: New constant.
7309         * typeprint.c (print_offset_data::indentation): Define.
7310         (print_offset_data::maybe_print_hole, print_offset_data::update)
7311         (print_offset_data::finish): Move from c-typeprint.c and rename.
7312         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7313         (print_spaces_filtered_with_print_options): Update.
7314         (c_print_type_union_field_offset, maybe_print_hole)
7315         (c_print_type_struct_field_offset): Move to typeprint.c and
7316         rename.
7317         (c_type_print_base_struct_union): Update.
7318
7319 2018-06-25  Pedro Alves  <palves@redhat.com>
7320
7321         * gdbthread.h (thread_info_ref, delete_thread)
7322         (delete_thread_silent, first_thread_of_inferior)
7323         (any_thread_of_inferior, switch_to_thread)
7324         (enable_thread_stack_temporaries)
7325         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7326         (get_last_thread_stack_temporary)
7327         (value_in_thread_stack_temporaries, can_access_registers_thread):
7328         Spell out "struct thread_info" instead of just "thread_info".
7329         * inferior.h (notice_new_inferior): Likewise.
7330
7331 2018-06-25  Pedro Alves  <palves@redhat.com>
7332
7333         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7334         pass thread_info pointer to delete_thread.
7335         (windows_nat_target::detach): Pass inferior pointer to
7336         detach_inferior.
7337         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7338         delete_thread.
7339         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7340         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7341         and pass a thread_info pointer to delete_thread.
7342         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7343         pass thread_info pointer to delete_thread.
7344         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7345         delete_thread_silent call.
7346         * procfs.c (procfs_target::detach): Pass inferior pointer to
7347         detach_inferior.
7348         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7349         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7350         delete_thread_silent call.
7351         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7352         pass thread_info pointer to delete_thread.
7353         (windows_nat_target::detach): Pass inferior pointer to
7354         delete_inferior.
7355
7356 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7357
7358         * regcache.c (readable_regcache::read_part): Fix asserts.
7359         (reg_buffer::raw_collect_part): New function.
7360         (regcache::write_part): Fix asserts.
7361         (reg_buffer::raw_supply_part): New function.
7362         (regcache::transfer_regset_register): New helper function.
7363         (regcache::transfer_regset): Call new functions.
7364         (regcache_supply_regset): Use gdb_byte*.
7365         (regcache::supply_regset): Likewise.
7366         (regcache_collect_regset): Likewise.
7367         (regcache::collect_regset): Likewise.
7368         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7369         (reg_buffer::raw_supply_part): Likewise.
7370         (regcache::transfer_regset_register): Likewise.
7371         (regcache::transfer_regset): Use gdb_byte*.
7372
7373 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7374
7375         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7376
7377 2018-06-21  Pedro Alves  <palves@redhat.com>
7378
7379         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7380         instead of a ptid_t.  All callers adjusted.
7381         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7382         adjusted.
7383         (print_ada_task_info, display_current_task_id, task_command_1):
7384         Adjust.
7385         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7386         inferior_thread.
7387         (breakpoint_kind): Adjust.
7388         (remove_breakpoints_pid): Rename to ...
7389         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7390         pointer.  All callers adjusted.
7391         (bpstat_clear_actions): Use inferior_thread.
7392         (get_bpstat_thread): New.
7393         (bpstat_do_actions): Use it.
7394         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7395         to take a thread_info pointer.  All callers adjusted.
7396         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7397         (breakpoint_re_set_thread): Use inferior_thread.
7398         * breakpoint.h (struct inferior): Forward declare.
7399         (bpstat_stop_status): Update.
7400         (remove_breakpoints_pid): Delete.
7401         (remove_breakpoints_inf): New.
7402         * bsd-uthread.c (bsd_uthread_target::wait)
7403         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7404         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7405         (maint_btrace_packet_history_cmd)
7406         (maint_btrace_clear_packet_history_cmd): Adjust.
7407         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7408         inferior_thread.
7409         * cli/cli-interp.c: Include "inferior.h".
7410         * common/refcounted-object.h (struct
7411         refcounted_object_ref_policy): New.
7412         * compile/compile-object-load.c: Include gdbthread.h.
7413         (store_regs): Use inferior_thread.
7414         * corelow.c (core_target::close): Use current_inferior.
7415         (core_target_open): Adjust to use first_thread_of_inferior and use
7416         the current inferior.
7417         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7418         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7419         <thread>: ... this new field.  All references adjusted.
7420         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7421         Take a thread_info pointer instead of a ptid_t.
7422         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7423         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7424         thread_info pointer instead of a ptid_t.
7425         * elfread.c: Include "inferior.h".
7426         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7427         Use inferior_thread.
7428         * eval.c (evaluate_subexp): Likewise.
7429         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7430         inferior_thread.
7431         * gdb_proc_service.h (struct thread_info): Forward declare.
7432         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7433         <thread>: ... this new field.  All references adjusted.
7434         * gdbarch.h, gdbarch.c: Regenerate.
7435         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7436         'thread' parameter.  All implementations and callers adjusted.
7437         * gdbthread.h (thread_info) <set_running>: New method.
7438         (delete_thread, delete_thread_silent): Take a thread_info pointer
7439         instead of a ptid.
7440         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7441         (first_thread_of_process): Delete, replaced by ...
7442         (first_thread_of_inferior): ... this new function.  All callers
7443         adjusted.
7444         (any_live_thread_of_process): Delete, replaced by ...
7445         (any_live_thread_of_inferior): ... this new function.  All callers
7446         adjusted.
7447         (switch_to_thread, switch_to_no_thread): Declare.
7448         (is_executing): Delete.
7449         (enable_thread_stack_temporaries): Update comment.
7450         <enable_thread_stack_temporaries>: Take a thread_info pointer
7451         instead of a ptid_t.  Incref the thread.
7452         <~enable_thread_stack_temporaries>: Decref the thread.
7453         <m_ptid>: Delete
7454         <m_thr>: New.
7455         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7456         (get_last_thread_stack_temporary)
7457         (value_in_thread_stack_temporaries, can_access_registers_thread):
7458         Take a thread_info pointer instead of a ptid_t.  All callers
7459         adjusted.
7460         * infcall.c (get_call_return_value): Use inferior_thread.
7461         (run_inferior_call): Work with thread pointers instead of ptid_t.
7462         (call_function_by_hand_dummy): Work with thread pointers instead
7463         of ptid_t.  Use thread_info_ref.
7464         * infcmd.c (proceed_thread_callback): Access thread's state
7465         directly.
7466         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7467         access thread's state directly.
7468         (continue_command): Use inferior_thread.
7469         (info_program_command): Use find_thread_ptid and access thread
7470         state directly.
7471         (proceed_after_attach_callback): Use thread state directly.
7472         (notice_new_inferior): Take a thread_info pointer instead of a
7473         ptid_t.  All callers adjusted.
7474         (exit_inferior): Take an inferior pointer instead of a pid.  All
7475         callers adjusted.
7476         (exit_inferior_silent): New.
7477         (detach_inferior): Delete.
7478         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7479         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7480         (detach_inferior_command, kill_inferior_command): Use
7481         find_inferior_id instead of valid_gdb_inferior_id and
7482         gdb_inferior_id_to_pid.
7483         (inferior_command): Use inferior and thread pointers.
7484         * inferior.h (struct thread_info): Forward declare.
7485         (notice_new_inferior): Take a thread_info pointer instead of a
7486         ptid_t.  All callers adjusted.
7487         (detach_inferior): Delete declaration.
7488         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7489         instead of a pid.  All callers adjusted.
7490         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7491         (valid_gdb_inferior_id): Delete.
7492         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7493         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7494         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7495         ...
7496         <inf>: ... this new field.
7497         <step_ptid>: Delete, replaced by ...
7498         <step_thread>: ... this new field.
7499         (get_displaced_stepping_state): Take an inferior pointer instead
7500         of a pid.  All callers adjusted.
7501         (displaced_step_in_progress_any_inferior): Adjust.
7502         (displaced_step_in_progress_thread): Take a thread pointer instead
7503         of a ptid_t.  All callers adjusted.
7504         (displaced_step_in_progress, add_displaced_stepping_state): Take
7505         an inferior pointer instead of a pid.  All callers adjusted.
7506         (get_displaced_step_closure_by_addr): Adjust.
7507         (remove_displaced_stepping_state): Take an inferior pointer
7508         instead of a pid.  All callers adjusted.
7509         (displaced_step_prepare_throw, displaced_step_prepare)
7510         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7511         All callers adjusted.
7512         (start_step_over): Adjust.
7513         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7514         displaced step queue.
7515         (do_target_resume): Adjust.
7516         (fetch_inferior_event): Use inferior_thread.
7517         (context_switch, get_inferior_stop_soon): Take an
7518         execution_control_state pointer instead of a ptid_t.  All callers
7519         adjusted.
7520         (switch_to_thread_cleanup): Delete.
7521         (stop_all_threads): Use scoped_restore_current_thread.
7522         * inline-frame.c: Include "gdbthread.h".
7523         (inline_state) <inline_state>: Take a thread pointer instead of a
7524         ptid_t.  All callers adjusted.
7525         <ptid>: Delete, replaced by ...
7526         <thread>: ... this new field.
7527         (find_inline_frame_state): Take a thread pointer instead of a
7528         ptid_t.  All callers adjusted.
7529         (skip_inline_frames, step_into_inline_frame)
7530         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7531         pointer instead of a ptid_t.  All callers adjusted.
7532         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7533         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7534         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7535         pointers directly.
7536         * linux-nat.c (get_detach_signal): Likewise.
7537         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7538         (thread_db_notice_clone): Adjust.
7539         (thread_db_find_new_threads_silently)
7540         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7541         a thread pointer instead of a ptid_t.  All callers adjusted.
7542         * mi/mi-cmd-var.c: Include "inferior.h".
7543         (mi_cmd_var_update_iter): Update to use thread pointers.
7544         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7545         inferior directly.
7546         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7547         out to ...
7548         (mi_output_running): ... this new function.
7549         (mi_on_resume_1): Adjust to use it.
7550         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7551         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7552         directly.
7553         (interrupt_thread_callback): : Adjust to use thread and inferior
7554         pointers.
7555         * proc-service.c: Include "gdbthread.h".
7556         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7557         * progspace-and-thread.c: Include "inferior.h".
7558         * progspace.c: Include "inferior.h".
7559         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7560         hold a reference to an inferior_object.
7561         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7562         inferior_thread.
7563         * python/py-inferior.c (struct inferior_object): Give the type a
7564         tag name instead of a typedef.
7565         (python_on_normal_stop): No need to check if the current thread is
7566         listed.
7567         (inferior_to_inferior_object): Change return type to
7568         inferior_object.  All callers adjusted.
7569         (find_thread_object): Delete, bits factored out to ...
7570         (thread_to_thread_object): ... this new function.
7571         * python/py-infthread.c (create_thread_object): Use
7572         inferior_to_inferior_object.
7573         (thpy_is_stopped): Use thread pointer directly.
7574         (gdbpy_selected_thread): Use inferior_thread.
7575         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7576         field, replaced with ...
7577         <thread>: ... this new field.  All users adjusted.
7578         (btpy_insn_or_gap_new): Drop const.
7579         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7580         callers adjusted.
7581         * python/py-record.c: Include "gdbthread.h".
7582         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7583         a ptid_t.  All callers adjusted.
7584         (gdbpy_current_recording): Use inferior_thread.
7585         * python/py-record.h (recpy_record_object) <ptid>: Delete
7586         field, replaced with ...
7587         <thread>: ... this new field.  All users adjusted.
7588         (recpy_element_object) <ptid>: Delete
7589         field, replaced with ...
7590         <thread>: ... this new field.  All users adjusted.
7591         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7592         a ptid_t.  All callers adjusted.
7593         * python/py-threadevent.c: Include "gdbthread.h".
7594         (get_event_thread): Use thread_to_thread_object.
7595         * python/python-internal.h (struct inferior_object): Forward
7596         declare.
7597         (find_thread_object, find_inferior_object): Delete declarations.
7598         (thread_to_thread_object, inferior_to_inferior_object): New
7599         declarations.
7600         * record-btrace.c: Include "inferior.h".
7601         (require_btrace_thread): Use inferior_thread.
7602         (record_btrace_frame_sniffer)
7603         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7604         (get_thread_current_frame): Use scoped_restore_current_thread and
7605         switch_to_thread.
7606         (get_thread_current_frame): Use thread pointer directly.
7607         (record_btrace_replay_at_breakpoint): Use thread's inferior
7608         pointer directly.
7609         * record-full.c: Include "inferior.h".
7610         * regcache.c: Include "gdbthread.h".
7611         (get_thread_arch_regcache): Use the inferior's address space
7612         directly.
7613         (get_thread_regcache, registers_changed_thread): New.
7614         * regcache.h (get_thread_regcache(thread_info *thread)): New
7615         overload.
7616         (registers_changed_thread): New.
7617         (remote_target) <remote_detach_1>: Swap order of parameters.
7618         (remote_add_thread): <remote_add_thread>: Return the new thread.
7619         (get_remote_thread_info(ptid_t)): New overload.
7620         (remote_target::remote_notice_new_inferior): Use thread pointers
7621         directly.
7622         (remote_target::process_initial_stop_replies): Use
7623         thread_info::set_running.
7624         (remote_target::remote_detach_1, remote_target::detach)
7625         (extended_remote_target::detach): Adjust.
7626         * stack.c (frame_show_address): Use inferior_thread.
7627         * target-debug.h (target_debug_print_thread_info_pp): New.
7628         * target-delegates.c: Regenerate.
7629         * target.c (default_thread_address_space): Delete.
7630         (memory_xfer_partial_1): Use current_inferior.
7631         (target_detach): Use current_inferior.
7632         (target_thread_address_space): Delete.
7633         (generic_mourn_inferior): Use current_inferior.
7634         * target.h (struct target_ops) <thread_address_space>: Delete.
7635         (target_thread_address_space): Delete.
7636         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7637         pointers directly.
7638         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7639         thread pointer instead of a ptid_t.  Adjust all callers.
7640         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7641         (first_thread_of_process): Delete, replaced by ...
7642         (first_thread_of_inferior): ... this new function.  All callers
7643         adjusted.
7644         (any_thread_of_process): Rename to ...
7645         (any_thread_of_inferior): ... this, and take an inferior pointer.
7646         (any_live_thread_of_process): Rename to ...
7647         (any_live_thread_of_inferior): ... this, and take an inferior
7648         pointer.
7649         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7650         (value_in_thread_stack_temporaries)
7651         (get_last_thread_stack_temporary): Take a thread pointer instead
7652         of a ptid_t.  Adjust all callers.
7653         (thread_info::set_running): New.
7654         (validate_registers_access): Use inferior_thread.
7655         (can_access_registers_ptid): Rename to ...
7656         (can_access_registers_thread): ... this, and take a thread
7657         pointer.
7658         (print_thread_info_1): Adjust to compare thread pointers instead
7659         of ptids.
7660         (switch_to_no_thread, switch_to_thread): Make extern.
7661         (scoped_restore_current_thread::~scoped_restore_current_thread):
7662         Use m_thread pointer directly.
7663         (scoped_restore_current_thread::scoped_restore_current_thread):
7664         Use inferior_thread.
7665         (thread_command): Use thread pointer directly.
7666         (thread_num_make_value_helper): Use inferior_thread.
7667         * top.c (execute_command): Use inferior_thread.
7668         * tui/tui-interp.c: Include "inferior.h".
7669         * varobj.c (varobj_create): Use inferior_thread.
7670         (value_of_root_1): Use find_thread_global_id instead of
7671         global_thread_id_to_ptid.
7672
7673 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7674
7675         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7676         possible.
7677         (regcache::write_part): Likewise.
7678         (readable_regcache::cooked_read_part): Update comment.
7679         (readable_regcache::cooked_write_part): Likewise.
7680         * regcache.h: (readable_regcache::read_part): Likewise.
7681         (regcache::write_part): Likewise.
7682
7683 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7684             Dirk Schubert  <dirk.schubert@arm.com>
7685
7686         * aarch64-linux-nat.c (post_attach): New.
7687         (aarch64_linux_nat_target::post_attach): Override post_attach to
7688         record the number of hardware debug registers.
7689
7690 2018-06-20  Tom Tromey  <tom@tromey.com>
7691
7692         * python/py-param.c (add_setshow_generic): Make parameters const.
7693         (parmpy_init): Update.
7694
7695 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7696
7697         * regcache.h (regcache_cooked_read_ftype): Rename to...
7698         (register_read_ftype): ...this, change type to function_view.
7699         (class reg_buffer) <save>: Remove src parameter.
7700         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7701         parameter non-const in first overload.  Remove src parameter in
7702         second overload.
7703         * regcache.c (do_cooked_read): Remove.
7704         (readonly_detached_regcache::readonly_detached_regcache): Make
7705         parameter non-const, adjust call to other constructor.
7706         (reg_buffer::save): Remove src parameter.
7707         * frame.c (do_frame_register_read): Remove.
7708         (frame_save_as_regcache): Use lambda function.
7709         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7710         parameter to ppu2spu_data *.
7711         (ppu2spu_sniffer): Use lambda function.
7712
7713 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7714
7715         * record-full.c (record_full_target::insert_breakpoint): Remove
7716         "struct" keyword, add const.
7717
7718 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7719
7720         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7721         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7722         * configure.ac: Remove AC_PREREQ, add missing quoting.
7723         * gnulib/configure.ac: Modernize usage of
7724         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7725         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7726         (AUTOMAKE_VERSION): Bump to 1.15.1.
7727         * configure: Re-generate.
7728         * config.in: Re-generate.
7729         * aclocal.m4: Re-generate.
7730         * gnulib/aclocal.m4: Re-generate.
7731         * gnulib/config.in: Re-generate.
7732         * gnulib/configure: Re-generate.
7733         * gnulib/import/Makefile.in: Re-generate.
7734
7735 2018-06-19  Pedro Alves  <palves@redhat.com>
7736
7737         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7738         (lookup_minimal_symbol_by_pc_section): ... here with
7739         gdb_assert_not_reached added.
7740
7741 2018-06-19  Pedro Alves  <palves@redhat.com>
7742
7743         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7744         parameter with a block parameter.  Compare location's block symbol
7745         with the frame's block instead of addresses.
7746         (skip_inline_frames): Pass the current block instead of the
7747         frame's address.  Break out as soon as we determine the frame
7748         should not be skipped.
7749
7750 2018-06-18  Tom Tromey  <tom@tromey.com>
7751
7752         * solib-aix.c (solib_aix_get_section_offsets): Return
7753         unique_xmalloc_ptr.
7754         (solib_aix_solib_create_inferior_hook): Update.
7755
7756 2018-06-18  Tom Tromey  <tom@tromey.com>
7757
7758         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7759
7760 2018-06-18  Tom Tromey  <tom@tromey.com>
7761
7762         * solib-frv.c (frv_relocate_main_executable): Use
7763         unique_xmalloc_ptr.
7764         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7765         unique_xmalloc_ptr.
7766
7767 2018-06-18  Tom Tromey  <tom@tromey.com>
7768
7769         * objfiles.h (inhibit_section_map_updates): Update.
7770         (resume_section_map_updates, resume_section_map_updates_cleanup):
7771         Remove.
7772         * solib-svr4.c (svr4_handle_solib_event): Update.
7773         * objfiles.c (inhibit_section_map_updates): Return
7774         scoped_restore_tmpl<int>.
7775         (resume_section_map_updates, resume_section_map_updates_cleanup):
7776         Remove.
7777
7778 2018-06-18  Tom Tromey  <tom@tromey.com>
7779
7780         * valprint.h (read_string): Update.
7781         * valprint.c (read_string): Change type of "buffer".
7782         (val_print_string): Update.
7783         * python/py-value.c (valpy_string): Update.
7784         * language.h (struct language_defn) <la_get_string>: Change
7785         type of "buffer".
7786         (default_get_string, c_get_string): Update.
7787         * language.c (default_get_string): Change type of "buffer".
7788         * guile/scm-value.c (gdbscm_value_to_string): Update.
7789         * c-lang.c (c_get_string): Change type of "buffer".
7790
7791 2018-06-18  Tom Tromey  <tom@tromey.com>
7792
7793         * ser-mingw.c (struct pipe_state_destroyer): New.
7794         (pipe_state_up): New typedef.
7795         (cleanup_pipe_state): Remove.
7796         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7797
7798 2018-06-18  Tom Tromey  <tom@tromey.com>
7799
7800         * rust-lang.h (rust_yyerror): Don't declare.
7801         * rust-lang.c (rust_language_defn): Update.
7802         * rust-exp.y (yyerror): Now static.
7803         * parse.c (parse_exp_in_context_1): Update.
7804         * p-lang.h (p_yyerror): Don't declare.
7805         * p-lang.c (p_language_defn): Update.
7806         * p-exp.y (yyerror): Now static.
7807         * opencl-lang.c (opencl_language_defn): Update.
7808         * objc-lang.c (objc_language_defn): Update.
7809         * m2-lang.h (m2_yyerror): Don't declare.
7810         * m2-lang.c (m2_language_defn): Update.
7811         * m2-exp.y (yyerror): Now static.
7812         * language.h (struct language_defn) <la_error>: Remove.
7813         * language.c (unk_lang_error): Remove.
7814         (unknown_language_defn, auto_language_defn): Remove.
7815         * go-lang.h (go_yyerror): Don't declare.
7816         * go-lang.c (go_language_defn): Update.
7817         * go-exp.y (yyerror): Now static.
7818         * f-lang.h (f_yyerror): Don't declare.
7819         * f-lang.c (f_language_defn): Update.
7820         * f-exp.y (yyerror): Now static.
7821         * d-lang.h (d_yyerror): Don't declare.
7822         * d-lang.c (d_language_defn): Update.
7823         * d-exp.y (yyerror): Now static.
7824         * c-lang.h (c_yyerror): Don't declare.
7825         * c-lang.c (c_language_defn, cplus_language_defn)
7826         (asm_language_defn, minimal_language_defn): Update.
7827         * c-exp.y (yyerror): Now static.
7828         * ada-lang.h (ada_yyerror): Don't declare.
7829         * ada-lang.c (ada_language_defn): Update.
7830         * ada-exp.y (yyerror): Now static.
7831
7832 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7833
7834         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7835         (store_sveregs_to_thread): Likewise.
7836         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7837         (aarch64_linux_store_inferior_registers): Likewise.
7838         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7839         function.
7840         (aarch64_sve_regs_copy_to_regcache): Likewise.
7841         (aarch64_sve_regs_copy_from_regcache): Likewise.
7842         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7843         declaration.
7844         (aarch64_sve_regs_copy_to_regcache): Likewise.
7845         (aarch64_sve_regs_copy_from_regcache): Likewise.
7846         (sve_context): Structure from Linux headers.
7847         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7848         (SVE_SIG_ZREG_SIZE): Likewise.
7849         (SVE_SIG_PREG_SIZE): Likewise.
7850         (SVE_SIG_FFR_SIZE): Likewise.
7851         (SVE_SIG_REGS_OFFSET): Likewise.
7852         (SVE_SIG_ZREGS_OFFSET): Likewise.
7853         (SVE_SIG_ZREG_OFFSET): Likewise.
7854         (SVE_SIG_ZREGS_SIZE): Likewise.
7855         (SVE_SIG_PREGS_OFFSET): Likewise.
7856         (SVE_SIG_PREG_OFFSET): Likewise.
7857         (SVE_SIG_PREGS_SIZE): Likewise.
7858         (SVE_SIG_FFR_OFFSET): Likewise.
7859         (SVE_SIG_REGS_SIZE): Likewise.
7860         (SVE_SIG_CONTEXT_SIZE): Likewise.
7861         (SVE_PT_REGS_MASK): Likewise.
7862         (SVE_PT_REGS_FPSIMD): Likewise.
7863         (SVE_PT_REGS_SVE): Likewise.
7864         (SVE_PT_VL_INHERIT): Likewise.
7865         (SVE_PT_VL_ONEXEC): Likewise.
7866         (SVE_PT_REGS_OFFSET): Likewise.
7867         (SVE_PT_FPSIMD_OFFSET): Likewise.
7868         (SVE_PT_FPSIMD_SIZE): Likewise.
7869         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7870         (SVE_PT_SVE_PREG_SIZE): Likewise.
7871         (SVE_PT_SVE_FFR_SIZE): Likewise.
7872         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7873         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7874         (__SVE_SIG_TO_PT): Likewise.
7875         (SVE_PT_SVE_OFFSET): Likewise.
7876         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7877         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7878         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7879         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7880         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7881         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7882         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7883         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7884         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7885         (SVE_PT_SVE_SIZE): Likewise.
7886         (SVE_PT_SIZE): Likewise.
7887         (HAS_SVE_STATE): New define.
7888
7889 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7890
7891         * nat/aarch64-sve-linux-sigcontext.h: New file.
7892         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7893         new files.
7894         (SVE_VQ_MIN): Likewise.
7895         (SVE_VQ_MAX): Likewise.
7896         (SVE_VL_MIN): Likewise.
7897         (SVE_VL_MAX): Likewise.
7898         (SVE_NUM_ZREGS): Likewise.
7899         (SVE_NUM_PREGS): Likewise.
7900         (sve_vl_valid): Likewise.
7901         (struct user_sve_header): Likewise.
7902
7903 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7904             Richard Bunt <Richard.Bunt@arm.com>
7905
7906         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7907         was requested by GDB.
7908
7909 2018-06-15  Tom de Vries  <tdevries@suse.de>
7910
7911         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7912
7913 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7914
7915         * gnulib/update-gnulib.sh: Print expected versions of
7916         autoconf/aclocal.
7917
7918 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7919
7920         * arch-utils.c (default_type_align): Use type_length_units.
7921         * gdbtypes.c (type_align): Use type_length_units.
7922
7923 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7924
7925         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7926         of 'define' command.
7927
7928 2018-06-14  Tom de Vries  <tdevries@suse.de>
7929
7930         PR cli/22573
7931         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7932         get_no_prettyformat_print_options.
7933
7934 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7935
7936         * sparc-nat.h: Include target.h.
7937         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7938         <fetch_registers>: Remove this argument in function call.
7939         <store_registers>: Remove this argument in function call, remove
7940         extra semicolon.
7941         <low_forget_process>: Call sparc64_forget_process instead of
7942         sparc_forget_process.
7943
7944 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7945
7946         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7947         (procfs_target::make_corefile_notes): Adjust to new
7948         target_read_alloc return type.
7949
7950 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7951             Stephen Roberts  <stephen.roberts@arm.com>
7952
7953         PR gdb/22882
7954         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7955         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7956         Move should_notify_stop local into more inner scope.
7957
7958 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7959             Stephen Roberts  <stephen.roberts@arm.com>
7960
7961         PR gdb/22882
7962         * infrun.c (resume_1): Add call to mark_async_event_handler.
7963
7964 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7965
7966         * infrun.c (do_target_wait): Change old version of $pc printed.
7967
7968 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7969
7970         * dwarf2read.c (read_index_from_section): Rename to...
7971         (read_gdb_index_from_section): ... this, update all callers.
7972         (dwarf2_read_index): Rename to...
7973         (dwarf2_read_gdb_index): ... this, update all callers.
7974
7975 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7976
7977         * hppa-linux-nat.c
7978         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7979         hppa_linux_nat_target::fetch_registers.
7980
7981 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7982
7983         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7984         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7985         (AARCH64_DWARF_SVE_FFR): Likewise.
7986         (AARCH64_DWARF_SVE_P0): Likewise.
7987         (AARCH64_DWARF_SVE_Z0): Likewise.
7988
7989 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7990
7991         * common/common-regcache.h (raw_compare): New function.
7992         * regcache.c (regcache::raw_compare): Likewise.
7993         * regcache.h (regcache::raw_compare): New declaration.
7994
7995 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7996
7997         * common/common-regcache.h (reg_buffer_common): New structure.
7998         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7999         (reg_buffer::raw_supply): Likewise.
8000         (reg_buffer::raw_supply_integer): Likewise.
8001         (reg_buffer::raw_supply_zeroed): Likewise.
8002         (reg_buffer::raw_collect): Likewise.
8003         (reg_buffer::raw_collect_integer): Likewise.
8004         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
8005         (reg_buffer::raw_supply): Likewise.
8006         (reg_buffer::raw_supply_integer): Likewise.
8007         (reg_buffer::raw_supply_zeroed): Likewise.
8008         (reg_buffer::raw_collect): Likewise.
8009         (reg_buffer::raw_collect_integer): Likewise.
8010
8011 2018-06-10  Tom Tromey  <tom@tromey.com>
8012
8013         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
8014         (class remote_state) <stop_reply_queue>: Now std::vector.
8015         (remote_state::~remote_state)
8016         (remote_target::stop_reply_queue_length): Update.
8017         (struct queue_iter_param, remove_child_of_pending_fork)
8018         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
8019         (check_pending_event_prevents_wildcard_vcont_callback)
8020         (remove_stop_reply_for_inferior)
8021         (remove_stop_reply_of_remote_state)
8022         (remote_notif_remove_once_on_match)
8023         (stop_reply_match_ptid_and_ws)
8024         (remote_kill_child_of_pending_fork): Remove.
8025         (remote_target::remove_new_fork_children)
8026         (remote_target::check_pending_events_prevent_wildcard_vcont)
8027         (remote_target::discard_pending_stop_replies)
8028         (remote_target::discard_pending_stop_replies_in_queue)
8029         (remote_target::remote_notif_remove_queued_reply)
8030         (remote_target::queued_stop_reply)
8031         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
8032         (remote_target::wait, remote_target::kill_new_fork_children)
8033         (remote_target::async): Update.
8034
8035 2018-06-10  Tom Tromey  <tom@tromey.com>
8036
8037         * record-full.c (record_full_arch_list_cleanups): Remove.
8038         (record_full_message): Use try/catch.
8039         (record_full_wait_cleanups): Remove.
8040         (record_full_wait_1): Use try/catch.
8041         (record_full_restore): Likewise.
8042
8043 2018-06-10  Tom Tromey  <tom@tromey.com>
8044
8045         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
8046         declare VEC.  Add constructor.
8047         <in_target_beneath>: Now bool.
8048         (record_full_breakpoints): Now a std::vector, static.
8049         (record_full_sync_record_breakpoints)
8050         (record_full_init_record_breakpoints)
8051         (record_full_target::insert_breakpoint)
8052         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
8053
8054 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
8055
8056         * dwarf2read.c (process_cu_includes): Remove struct keyword.
8057         * serial.c (serial_interface_lookup): Remove struct keyword.
8058
8059 2018-06-10  Tom Tromey  <tom@tromey.com>
8060
8061         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
8062         method.
8063         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
8064         a method.
8065         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
8066         method.
8067         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
8068         "beneath" as a method.
8069         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
8070         Use "beneath" as a method.
8071
8072 2018-06-10  Tom Tromey  <tom@tromey.com>
8073
8074         * tracefile.c (struct trace_file_writer_deleter): New.
8075         <operator()>: Rename from trace_file_writer_xfree.
8076         (trace_file_writer_up): New typedef.
8077         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
8078
8079 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8080
8081         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8082         <m_registers, m_register_status>: Change type to
8083         std::unique_ptr.
8084         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8085         XCNEWVEC.
8086
8087 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8088
8089         * common/common-regcache.h (enum register_status): Add
8090         underlying type "signed char".
8091         * regcache.h (reg_buffer) <m_register_status>: Change type to
8092         register_status *.
8093         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8094         register_status instead of signed char.
8095         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8096         (reg_buffer::get_register_status): Remove cast.
8097         (readable_regcache::raw_read): Remove cast.
8098         (readable_regcache::cooked_read): Remove cast.
8099
8100 2018-06-09  Tom Tromey  <tom@tromey.com>
8101
8102         * source.c (reverse_search_command, forward_search_command): Use
8103         scoped_fd.
8104
8105 2018-06-09  Tom Tromey  <tom@tromey.com>
8106
8107         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8108         (serial_ops_list): Now static, std::vector.
8109         (serial_interface_lookup, serial_add_interface): Update.
8110
8111 2018-06-09  Tom Tromey  <tom@tromey.com>
8112
8113         * dwarf2read.c (process_cu_includes): Update.
8114         (process_full_comp_unit): Update.
8115         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8116         std::vector.
8117
8118 2018-06-08  Paul Koning  <paul_koning@dell.com>
8119
8120         PR gdb/23252
8121
8122         * python/python.c (do_start_initialization):
8123         Avoid call to internal Python API.
8124         (init__gdb_module): New function.
8125
8126 2018-06-08  Gary Benson <gbenson@redhat.com>
8127
8128         * linux-thread-db.c (valprint.h): New include.
8129         (struct check_thread_db_info): New structure.
8130         (check_thread_db_on_load, tdb_testinfo): New static globals.
8131         (check_thread_db, check_thread_db_callback): New functions.
8132         (try_thread_db_load_1): Run integrity checks if requested.
8133         (maintenance_check_libthread_db): New function.
8134         (_initialize_thread_db): Register "maint check libthread-db"
8135         and "maint set/show check-libthread-db".
8136         * NEWS: Mention the above new commands.
8137
8138 2018-06-08  Tom Tromey  <tom@tromey.com>
8139
8140         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8141         now a method.
8142
8143 2018-06-08  Tom Tromey  <tom@tromey.com>
8144
8145         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8146
8147 2018-06-08  Tom Tromey  <tom@tromey.com>
8148
8149         * common/btrace-common.h (struct btrace_data): Add constructor,
8150         destructor, move assignment operator.
8151         <empty, clear, fini>: New methods.
8152         <format>: Initialize.
8153         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8154         (btrace_data_empty): Don't declare.
8155         * common/btrace-common.c (btrace_data_init): Remove.
8156         (btrace_data::fini): Rename from btrace_data_fini.
8157         (btrace_data::empty): Rename from btrace_data_empty.
8158         (btrace_data::clear): Rename from btrace_data_clear.  Return
8159         bool.
8160         * btrace.h (make_cleanup_btrace_data): Don't declare.
8161         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8162         (parse_xml_btrace): Update.
8163         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8164         (maint_btrace_clear_packet_history_cmd): Update.
8165
8166 2018-06-07  Pedro Alves  <palves@redhat.com>
8167
8168         * target.h (target_ops) <beneath>: Now a method.  All references
8169         updated.
8170         (class target_stack): New.
8171         * target.c (g_target_stack): New.
8172         (g_current_top_target): Delete.
8173         (current_top_target): Get the top target out of g_target_stack.
8174         (target_stack::push, target_stack::unpush): New.
8175         (push_target, unpush_target): Reimplement.
8176         (target_is_pushed): Reimplement in terms of g_target_stack.
8177         (target_ops::beneath, target_stack::find_beneath): New.
8178
8179 2018-06-07  Pedro Alves  <palves@redhat.com>
8180
8181         * target.h (find_target_beneath): Delete declaration.
8182         * target.c (find_target_beneath): Delete definition.
8183         * aix-thread.c: All callers of find_target_beneath adjusted to
8184         call target_ops::beneath instead.
8185         * bsd-uthread.c: Likewise.
8186         * linux-thread-db.c: Likewise.
8187         * ravenscar-thread.c: Likewise.
8188         * sol-thread.c: Likewise.
8189         * spu-multiarch.c: Likewise.
8190
8191 2018-06-07  Pedro Alves  <palves@redhat.com>
8192
8193         * target.h (target_ops) <beneath>: Now a method.  All references
8194         updated.
8195         (target_ops) <m_beneath>: New.
8196         * target.c (target_ops::beneath): New.
8197         * corelow.c: Adjust all references to target_ops::beneath.
8198         * linux-thread-db.c: Likewise.
8199         * make-target-delegates: Likewise.
8200         * record-btrace.c: Likewise.
8201         * record-full.c: Likewise.
8202         * remote.c: Likewise.
8203         * target.c: Likewise.
8204         * target-delegates.c: Regenerate.
8205
8206 2018-06-07  Pedro Alves  <palves@redhat.com>
8207
8208         * target.h (target_stack): Delete.
8209         (current_top_target): Declare function.
8210         * target.c (target_stack): Delete.
8211         (g_current_top_target): New.
8212         (current_top_target): New function.
8213         * auxv.c: Use current_top_target instead of target_stack
8214         throughout.
8215         * avr-tdep.c: Likewise.
8216         * breakpoint.c: Likewise.
8217         * corefile.c: Likewise.
8218         * elfread.c: Likewise.
8219         * eval.c: Likewise.
8220         * exceptions.c: Likewise.
8221         * frame.c: Likewise.
8222         * gdbarch-selftests.c: Likewise.
8223         * gnu-v3-abi.c: Likewise.
8224         * ia64-tdep.c: Likewise.
8225         * ia64-vms-tdep.c: Likewise.
8226         * infcall.c: Likewise.
8227         * infcmd.c: Likewise.
8228         * infrun.c: Likewise.
8229         * linespec.c: Likewise.
8230         * linux-tdep.c: Likewise.
8231         * minsyms.c: Likewise.
8232         * ppc-linux-nat.c: Likewise.
8233         * ppc-linux-tdep.c: Likewise.
8234         * procfs.c: Likewise.
8235         * regcache.c: Likewise.
8236         * remote.c: Likewise.
8237         * rs6000-tdep.c: Likewise.
8238         * s390-linux-nat.c: Likewise.
8239         * s390-tdep.c: Likewise.
8240         * solib-aix.c: Likewise.
8241         * solib-darwin.c: Likewise.
8242         * solib-dsbt.c: Likewise.
8243         * solib-spu.c: Likewise.
8244         * solib-svr4.c: Likewise.
8245         * solib-target.c: Likewise.
8246         * sparc-tdep.c: Likewise.
8247         * sparc64-tdep.c: Likewise.
8248         * spu-tdep.c: Likewise.
8249         * symfile.c: Likewise.
8250         * symtab.c: Likewise.
8251         * target-descriptions.c: Likewise.
8252         * target-memory.c: Likewise.
8253         * target.c: Likewise.
8254         * target.h: Likewise.
8255         * tracefile-tfile.c: Likewise.
8256         * tracepoint.c: Likewise.
8257         * valops.c: Likewise.
8258         * valprint.c: Likewise.
8259         * value.c: Likewise.
8260         * windows-tdep.c: Likewise.
8261         * mi/mi-main.c: Likewise.
8262
8263 2018-06-07  Tom Tromey  <tom@tromey.com>
8264
8265         * valprint.h (build_address_symbolic): Declare.
8266         * printcmd.c (print_address_symbolic): Update.
8267         (build_address_symbolic): Change "name" and "filename" to
8268         std::string.
8269         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8270         Update.
8271         * defs.h (build_address_symbolic): Remove declaration.
8272
8273 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8274
8275         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8276         (aarch64_vnv_type): Add function.
8277         (aarch64_pseudo_register_name): Add V regs for SVE.
8278         (aarch64_pseudo_register_type): Likewise.
8279         (aarch64_pseudo_register_reggroup_p): Likewise.
8280         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8281         (aarch64_pseudo_read_value): Add V regs for SVE.
8282         (aarch64_pseudo_write_2): Use V0 offset for SVE
8283         (aarch64_pseudo_write): Add V regs for SVE.
8284         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8285
8286 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8287
8288         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8289         (sve_vl_from_vq): Likewise.
8290
8291 2018-06-05  Tom Tromey  <tom@tromey.com>
8292
8293         * cli/cli-cmds.c (show_version): Update.
8294         * top.c (print_gdb_version): Add "interactive" parameter.
8295         Update.
8296         * main.c (captured_main_1): Update.
8297         * top.h (print_gdb_version): Add "interactive" parameter and a
8298         comment.
8299
8300 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8301
8302         * common/enum-flags.h: Add trailing semicolon to example in
8303         comment.
8304
8305 2018-06-05  Tom Tromey  <tom@tromey.com>
8306
8307         PR cli/12326:
8308         * NEWS: Add entry about pager.
8309         * utils.c (pagination_disabled_for_command): New global.
8310         (prompt_for_continue): Allow "c" response to prompt.
8311         (reinitialize_more_filter): Clear
8312         pagination_disabled_for_command.
8313         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8314
8315 2018-06-04  Tom Tromey  <tom@tromey.com>
8316
8317         * ada-lang.h (ada_lookup_symbol_list): Update.
8318         * ada-lang.c (resolve_subexp): Update.
8319         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8320         parameter.
8321         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8322         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8323         results parameter to std::vector.
8324         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8325         Update.
8326         * ada-exp.y (block_lookup): Update.
8327         (select_possible_type_sym): Change type of syms.  Remove nsyms
8328         parameter.
8329         (write_var_or_type, write_name_assoc): Update.
8330
8331 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8332
8333         * windows-nat.c (windows_nat_target::xfer_partial): Return
8334         TARGET_XFER_E_IO if we need to delegate to the target beneath
8335         but BENEATH is NULL.
8336
8337 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8338
8339         * Makefile.in (config.status): Add configure.nat as a
8340         dependency.
8341
8342 2018-06-04  Tom Tromey  <tom@tromey.com>
8343
8344         * cp-name-parser.y (cpname_state): Add method declarations.
8345         (HANDLE_QUAL): Update.
8346         (cpname_state::d_grab, cpname_state::fill_comp)
8347         (cpname_state::make_operator, cpname_state::make_dtor)
8348         (cpname_state::make_builtin_type, cpname_state::make_name)
8349         (cpname_state::d_qualify, cpname_state::d_int_type)
8350         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8351         (%union): Move earlier.
8352
8353 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8354
8355         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8356
8357 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8358
8359         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8360         (aarch64_pseudo_write_1): Likewise.
8361         (aarch64_pseudo_read_value): Use helper.
8362         (aarch64_pseudo_write): Likewise.
8363
8364 2018-06-04  Pedro Alves  <palves@redhat.com>
8365
8366         * darwin-nat.c (darwin_ops): Delete.
8367         (darwin_attach_pid): Use get_native_target.
8368
8369 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8370
8371         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8372         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8373
8374 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8375
8376         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8377         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8378         (aarch64_gdbarch_init): Check for SVE.
8379         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8380
8381 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8382
8383         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8384         * aarch64-tdep.h (aarch64_read_description): Likewise.
8385         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8386         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8387         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8388         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8389         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8390
8391 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8392
8393         * value.c (value_fetch_lazy_bitfield): New.
8394         (value_fetch_lazy_memory): New.
8395         (value_fetch_lazy_register): New.
8396         (value_fetch_lazy): Factor out to smaller functions.
8397
8398 2018-06-01  Tom Tromey  <tom@tromey.com>
8399
8400         * cp-name-parser.y (backslashable, represented): Now const.
8401
8402 2018-06-01  Tom Tromey  <tom@tromey.com>
8403
8404         * cp-name-parser.y: Include parser-defs.h.
8405         (parser_fprintf): Remove declaration.
8406
8407 2018-06-01  Tom Tromey  <tom@tromey.com>
8408
8409         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8410         %parse-param.
8411         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8412         (global_result): Remove globals.
8413         (struct cpname_state): New.
8414         (yyparse): Don't declare.
8415         (yylex, yyerror): Move declarations after %union.
8416         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8417         (make_name): Add state parameter.
8418         Update all callers.
8419         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8420         parameter.
8421         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8422         Update.
8423         (yylex): Add lvalp, state parameters.
8424         (yyerror): Add state parameter.
8425         (cp_demangled_name_to_comp): Update.
8426
8427 2018-06-01  Tom Tromey  <tom@tromey.com>
8428
8429         * cp-name-parser.y (parser_fprintf): Declare.
8430         (GDB_YY_REMAP_PREFIX): Define.
8431         Include yy-remap.h.  Don't redefine yy* identifiers.
8432
8433 2018-06-01  Tom Tromey  <tom@tromey.com>
8434
8435         * python/py-type.c (typy_legacy_template_argument): Update.
8436         * cp-support.h (cp_demangled_name_to_comp): Update.
8437         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8438         parameter to be a "std::string *".
8439         (main): Update.
8440
8441 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8442
8443         * ada-lex.l: Include "diagnostics.h" instead of
8444         "common/diagnostics.h".
8445         * unittests/environ-selftests.c: Likewise.
8446         * common/diagnostics.h: Moved to ../include.
8447
8448 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8449
8450         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8451         to language_mode_manual while calling breakpoint_re_set_one.
8452
8453 2018-06-01  Tom Tromey  <tom@tromey.com>
8454
8455         * valops.c (value_cast_structs, destructor_name_p): Update.
8456         * symtab.c (gdb_mangle_name): Update.
8457         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8458         Update.
8459         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8460         (pascal_object_print_value_fields, pascal_object_print_value):
8461         Update.
8462         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8463         * linespec.c (find_methods): Update.
8464         * gdbtypes.h (type_name_no_tag): Remove.
8465         (type_name_or_error): Rename from type_name_no_tag_or_error.
8466         * gdbtypes.c (type_name_no_tag): Remove.
8467         (type_name_or_error): Rename from type_name_no_tag_or_error.
8468         (lookup_struct_elt_type, check_typedef): Update.
8469         * expprint.c (print_subexp_standard): Update.
8470         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8471         * d-namespace.c (d_lookup_nested_symbol): Update.
8472         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8473         (cp_print_class_member): Update.
8474         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8475         * completer.c (add_struct_fields): Update.
8476         * c-typeprint.c (cp_type_print_derivation_info)
8477         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8478         Update.
8479         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8480         (ada_prefer_type, ada_is_exception_sym): Update.
8481
8482 2018-06-01  Tom Tromey  <tom@tromey.com>
8483
8484         * valops.c (enum_constant_from_type, value_namespace_elt)
8485         (value_maybe_namespace_elt): Update.
8486         * valarith.c (find_size_for_pointer_math): Update.
8487         * target-descriptions.c (make_gdb_type): Update.
8488         * symmisc.c (print_symbol): Update.
8489         * stabsread.c (define_symbol, read_type)
8490         (complain_about_struct_wipeout, add_undefined_type)
8491         (cleanup_undefined_types_1): Update.
8492         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8493         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8494         (rust_internal_print_type, rust_composite_type)
8495         (rust_evaluate_funcall, rust_evaluate_subexp)
8496         (rust_inclusive_range_type_p): Update.
8497         * python/py-type.c (typy_get_tag): Update.
8498         * p-typeprint.c (pascal_type_print_base): Update.
8499         * mdebugread.c (parse_symbol, parse_type): Update.
8500         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8501         Update.
8502         * guile/scm-type.c (gdbscm_type_tag): Update.
8503         * go-lang.c (sixg_string_p): Update.
8504         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8505         Update.
8506         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8507         (TYPE_TAG_NAME): Remove.
8508         * gdbtypes.c (type_name_no_tag): Simplify.
8509         (check_typedef, check_types_equal, recursive_dump_type)
8510         (copy_type_recursive, arch_composite_type): Update.
8511         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8512         in summary mode when needed.
8513         * eval.c (evaluate_funcall): Update.
8514         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8515         (process_structure_scope, read_enumeration_type)
8516         (read_namespace_type, read_module_type, determine_prefix): Update.
8517         * cp-support.c (inspect_type): Update.
8518         * coffread.c (process_coff_symbol, decode_base_type): Update.
8519         * c-varobj.c (c_is_path_expr_parent): Update.
8520         * c-typeprint.c (c_type_print_base_struct_union): Update.
8521         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8522         summary when using C language.
8523         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8524         (gen_maybe_namespace_elt): Update.
8525         * ada-lang.c (ada_type_name): Simplify.
8526         (empty_record, ada_template_to_fixed_record_type_1)
8527         (template_to_static_fixed_type)
8528         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8529
8530 2018-06-01  Tom Tromey  <tom@tromey.com>
8531
8532         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8533         c_print_type.
8534         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8535         (c_print_type): Update.
8536         (c_print_type): New overload.
8537         (c_type_print_varspec_prefix, c_type_print_args)
8538         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8539         (c_type_print_base_struct_union, c_type_print_base_1)
8540         (cp_type_print_method_args): Add "language" parameter.
8541         (c_type_print_base): Update.
8542         * c-lang.h (c_print_type): Add new overload.
8543
8544 2018-06-01  Tom Tromey  <tom@tromey.com>
8545
8546         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8547         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8548
8549 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8550
8551         * aarch64-tdep.c (aarch64_sve_register_names): New const
8552         var.
8553         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8554         (AARCH64_SVE_Z_REGS_NUM): New define.
8555         (AARCH64_SVE_P_REGS_NUM): Likewise.
8556         (AARCH64_SVE_NUM_REGS): Likewise.
8557
8558 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8559
8560         * nat/linux-ptrace.h [__alpha__]
8561         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8562         definitions.
8563
8564 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8565
8566         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8567         the endianness selected.
8568         * NEWS: Document `set endian auto' mode operation update.
8569
8570 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8571
8572         * Makefile.in: Add new header.
8573         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8574         (sve_vl_from_vg): Likewise.
8575         (sve_vq_from_vl): Likewise.
8576         (sve_vl_from_vq): Likewise.
8577         (sve_vq_from_vg): Likewise.
8578         (sve_vg_from_vq): Likewise.
8579         * configure.nat: Add new c file.
8580         * nat/aarch64-sve-linux-ptrace.c: New file.
8581         * nat/aarch64-sve-linux-ptrace.h: New file.
8582
8583 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8584
8585         * aarch64-linux-nat.c (aarch64_linux_read_description):
8586         Add parmeter zero.
8587         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8588         Likewise.
8589         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8590         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8591         (aarch64_gdbarch_init): Add parmeter zero.
8592         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8593         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8594         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8595         parmeter.
8596         * doc/gdb.texinfo: Describe SVE feature
8597         * features/aarch64-sve.c: New file.
8598
8599 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8600
8601         PR gdb/23210
8602         * gdbarch.sh (significant_addr_bit): Default to zero when
8603         not set by target architecture.
8604         * gdbarch.c: Re-generated.
8605         * utils.c (address_significant): Update.
8606
8607 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8608
8609         * stack.c (func_command): Remove trailing newline in call to error.
8610
8611 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8612
8613         * regcache.h (regcache_raw_collect): Remove, update callers to
8614         use regcache::raw_collect.
8615         * regcache.c (regcache_raw_collect): Remove.
8616
8617 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8618
8619         * regcache.h (regcache_raw_supply): Remove, update callers to
8620         use detached_regcache::raw_supply.
8621         * regcache.c (regcache_raw_supply): Remove.
8622
8623 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8624
8625         * regcache.h (regcache_cooked_write_part): Remove, update
8626         callers to use regcache::cooked_write_part.
8627         * regcache.c (regcache_cooked_write_part): Remove.
8628
8629 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8630
8631         * regcache.h (regcache_cooked_read_part): Remove, update callers
8632         to use readable_regcache::cooked_read_part.
8633         * regcache.c (regcache_cooked_read_part): Remove.
8634
8635 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8636
8637         * regcache.h (regcache_cooked_read_value): Remove, update
8638         callers to use readable_regcache::cooked_read_value.
8639         * regcache.c (regcache_cooked_read_value): Remove.
8640
8641 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8642
8643         * regcache.h (regcache_cooked_write): Remove, update callers to
8644         use regcache::cooked_write.
8645         * regcache.c (regcache_cooked_write): Remove.
8646
8647 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8648
8649         * regcache.h (regcache_invalidate): Remove, update callers to
8650         use detached_regcache::invalidate instead.
8651         * regcache.c (regcache_invalidate): Remove.
8652
8653 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8654
8655         * regcache.h (regcache_raw_write_part): Remove, update callers
8656         to use regcache::raw_write_part instead.
8657         * regcache.c (regcache_raw_write_part): Remove.
8658
8659 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8660
8661         * regcache.h (regcache_raw_read_part): Remove, update callers to
8662         use readable_regcache::raw_read_part instead.
8663         * regcache.c (regcache_raw_read_part): Remove.
8664
8665 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8666
8667         * regcache.h (regcache_cooked_read): Remove, update callers to
8668         use readable_regcache::cooked_read instead.
8669         * regcache.c (regcache_cooked_read): Remove.
8670
8671 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8672
8673         * regcache.h (regcache_raw_write): Remove, update callers to use
8674         regcache::raw_write instead.
8675         * regcache.c (regcache_raw_write): Remove.
8676
8677 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8678
8679         * regcache.h (regcache_raw_read): Remove, update callers to use
8680         readable_regcache::raw_read instead.
8681         * regcache.c (regcache_raw_read): Remove.
8682
8683 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8684
8685         * regcache.h (regcache_raw_update): Remove, update callers to
8686         use readable_regcache::raw_update instead.
8687         * regcache.c (regcache_raw_update): Remove.
8688
8689 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8690
8691         * regcache.h (regcache_register_status): Remove, update callers
8692         to use reg_buffer::get_register_status directly instead.
8693         * regcache.c (regcache_register_status): Remove.
8694
8695 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8696
8697         * regcache.h (regcache_get_ptid): Remove, update all callers to
8698         call regcache::ptid instead.
8699         * regcache.c (regcache_get_ptid): Remove.
8700
8701 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8702
8703         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8704
8705 2018-05-30  Pedro Alves  <palves@redhat.com>
8706
8707         * common/common-exceptions.h (exception_rethrow): Use
8708         ATTRIBUTE_NORETURN.
8709
8710 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8711
8712         * breakpoint.c (print_solib_event, check_status_catch_solib):
8713         Remove struct keyword in range-based for loops.
8714         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8715         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8716         Likewise.
8717         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8718         Likewise.
8719         * symfile.c (addr_info_make_relative): Likewise.
8720         * thread.c (value_in_thread_stack_temporaries): Likewise.
8721
8722 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8723
8724         PR gdb/16841
8725         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8726         aggregate type to get its real type before accessing it.
8727
8728 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8729
8730         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8731         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8732         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8733         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8734         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8735         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8736         * printcmd.c (info_address_command): Likewise.
8737
8738 2018-05-29  Tom Tromey  <tom@tromey.com>
8739
8740         * windows-nat.c (handle_exception): Update fall-through comment.
8741
8742 2018-05-29  Tom Tromey  <tom@tromey.com>
8743
8744         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8745         (struct program_space) <added_solibs>: Now a std::vector.
8746         * breakpoint.c (print_solib_event): Update.
8747         (check_status_catch_solib): Update.
8748         * progspace.c (clear_program_space_solib_cache): Update.
8749         * solib.c (update_solib_list): Update.
8750
8751 2018-05-29  Tom Tromey  <tom@tromey.com>
8752
8753         * python/py-type.c (typy_richcompare): Update.
8754         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8755         * gdbtypes.h (types_deeply_equal): Return bool.
8756         (types_equal): Likewise.
8757         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8758         declare VEC.
8759         (check_types_equal): Change worklist to std::vector.  Return
8760         bool.
8761         (struct type_equality_entry): Add constructor.
8762         (compare_maybe_null_strings): Return bool.
8763         (check_types_worklist): Return bool.  Change worklist to
8764         std::vector.
8765         (types_deeply_equal): Use std::vector.
8766         (types_equal): Return bool.
8767         (compare_maybe_null_strings): Simplify.
8768
8769 2018-05-29  Tom Tromey  <tom@tromey.com>
8770
8771         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8772
8773 2018-05-29  Tom Tromey  <tom@tromey.com>
8774
8775         * objc-lang.h: Don't include cp-support.h.
8776         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8777         declare VEC.
8778
8779 2018-05-27  Tom Tromey  <tom@tromey.com>
8780
8781         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8782
8783 2018-05-25  Tom Tromey  <tom@tromey.com>
8784
8785         * value.c (value::location): Initialize.
8786
8787 2018-05-25  Tom Tromey  <tom@tromey.com>
8788
8789         * dbxread.c (init_bincl_list): Remove.
8790         (bincl_list): Now a std::vector.
8791         (bincls_allocated, next_bincl): Remove.
8792         (free_bincl_list, do_free_bincl_list_cleanup)
8793         (make_cleanup_free_bincl_list): Remove.
8794         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8795         unique_xmalloc_ptr.
8796         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8797         (struct header_file_location): Add constructor.
8798         (add_bincl_to_list): Remove.
8799
8800 2018-05-25  Tom Tromey  <tom@tromey.com>
8801
8802         * tui/tui.c (tui_enable): Update.
8803         * mi/mi-interp.c (mi_interp::init): Update.
8804         * interps.h (class interp) <name>: New method.
8805         <m_name>: Rename from name.
8806         (~scoped_restore_interp): Update.
8807         * interps.c (interp::interp): Update.
8808         (interp_add, interp_set, interp_lookup_existing)
8809         (current_interp_named_p): Update.
8810
8811 2018-05-25  Tom Tromey  <tom@tromey.com>
8812
8813         * interps.c (interp_name): Remove.
8814         * mi/mi-interp.c (mi_interp::init): Update.
8815         * interps.h (interp_name): Remove.
8816         (~scoped_restore_interp): Update.
8817         * tui/tui.c (tui_enable): Update.
8818
8819 2018-05-25  Tom Tromey  <tom@tromey.com>
8820
8821         * utils.c (fputs_maybe_filtered): Update.
8822         * linespec.c (decode_line_full): Update.
8823         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8824         (mi_print_breakpoint_for_event, mi_solib_loaded)
8825         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8826         (mi_user_selected_context_changed): Update.
8827         * mi/mi-main.c (mi_execute_command): Update.
8828         * cli/cli-script.c (execute_control_command): Update.
8829         * python/python.c (execute_gdb_command): Update.
8830         * solib.c (info_sharedlibrary_command): Update.
8831         * interps.c (interp_ui_out): Remove.
8832         * interps.h (interp_ui_out): Remove.
8833
8834 2018-05-25  Tom Tromey  <tom@tromey.com>
8835
8836         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8837         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8838         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8839
8840 2018-05-25  Tom Tromey  <tom@tromey.com>
8841
8842         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8843         * interps.c (interp_exec): Use scoped_restore.
8844
8845 2018-05-25  Tom Tromey  <tom@tromey.com>
8846
8847         * remote.c (remote_target::remote_file_get): Use
8848         gdb::byte_vector.
8849         (remote_target::remote_file_put): Likewise.
8850
8851 2018-05-25  Tom Tromey  <tom@tromey.com>
8852
8853         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8854         a std::string.
8855         (get_pe_section_index, add_pe_exported_sym): Update.
8856         (read_pe_exported_syms): Use gdb::def_vector.
8857
8858 2018-05-25  Tom Tromey  <tom@tromey.com>
8859
8860         * frame.c (remove_prev_frame): Remove.
8861         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8862
8863 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8864
8865         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8866         Remove prototypes.
8867         * mips-linux-nat.c (supply_fpregset): Always call
8868         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8869         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8870         `mips_fill_fpregset'.
8871         * mips-linux-tdep.c (mips_supply_fpregset)
8872         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8873         (mips_fill_fpregset_wrapper): Remove functions.
8874         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8875         (mips_linux_fpregset): Remove variable.
8876         (mips_linux_iterate_over_regset_sections): Use
8877         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8878         (mips_linux_o32_sigframe_init): Remove comment.
8879
8880 2018-05-25  Pedro Alves  <palves@redhat.com>
8881
8882         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8883         (struct readahead_cache, struct packet_reg, struct
8884         remote_arch_state, class remote_state): Move higher up in the
8885         file.
8886         (remote_target::m_remote_state): Now an object instead of a pointer.
8887         (remote_target::get_remote_state): Adjust.
8888
8889 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8890
8891         * stack.c (select_and_print_frame): Delete.
8892         (struct function_bounds): Move struct within function.
8893         (func_command): Most content moved into new function
8894         find_frame_for_function, use new function, print result, add
8895         function comment.
8896         (find_frame_for_function): New function, now returns a result.
8897
8898 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8899
8900         * stack.c (iterate_over_block_arg_vars): Fix comment.
8901         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8902
8903 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8904
8905         PR gdb/23203
8906         * frame.c
8907         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8908         Define.
8909         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8910         Define.
8911         * frame.h (class scoped_restore_selected_frame): New class.
8912         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8913         of any exception, use scoped_restore_selected_frame to restore the
8914         frame instead.
8915
8916 2018-05-24  Pedro Alves  <palves@redhat.com>
8917
8918         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8919         override.
8920
8921 2018-05-23  Tom Tromey  <tom@tromey.com>
8922
8923         * complaints.c (struct complaints): Remove.
8924         (symfile_complaint_book): Remove.
8925         (series): New global.
8926         (complaint_internal): Update.
8927         (clear_complaints): Update.
8928
8929 2018-05-23  Tom Tromey  <tom@tromey.com>
8930
8931         * complaints.c (counters): New global.
8932         (struct complain): Remove.
8933         (struct complaints) <root>: Remove.
8934         (complaint_sentinel): Remove.
8935         (symfile_complaint_book): Update.
8936         (find_complaint) Remove.
8937         (complaint_internal, clear_complaints): Update.
8938
8939 2018-05-23  Tom Tromey  <tom@tromey.com>
8940
8941         * complaints.c (struct complain) <file, line>: Remove.
8942         (find_complaint): Remove file, line parameters.
8943         (complaint_internal): Update.
8944
8945 2018-05-23  Tom Tromey  <tom@tromey.com>
8946
8947         * complaints.c (vcomplaint): Remove.
8948         (complaint_internal) Merge in contents of vcomplaint.
8949
8950 2018-05-23  Tom Tromey  <tom@tromey.com>
8951
8952         * complaints.c (struct complaints) <explanation>: Remove.
8953         (symfile_explanations): Remove.
8954         (symfile_complaint_book): Update.
8955         (vcomplaint): Update.
8956         (struct explanation): Remove.
8957
8958 2018-05-23  Tom Tromey  <tom@tromey.com>
8959
8960         * complaints.c (symfile_complaints): Remove.
8961         (complaint_internal): Remove "complaints" parameter.
8962         (clear_complaints, vcomplaint): Remove "c" parameter.
8963         (get_complaints): Remove.
8964         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8965         (dwarf2_debug_line_missing_file_complaint)
8966         (dwarf2_debug_line_missing_end_sequence_complaint)
8967         (dwarf2_complex_location_expr_complaint)
8968         (dwarf2_const_value_length_mismatch_complaint)
8969         (dwarf2_section_buffer_overflow_complaint)
8970         (dwarf2_macro_malformed_definition_complaint)
8971         (dwarf2_invalid_attrib_class_complaint)
8972         (create_addrmap_from_index, dw2_symtab_iter_next)
8973         (dw2_expand_marked_cus)
8974         (dw2_debug_names_iterator::find_vec_in_debug_names)
8975         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8976         (create_debug_type_hash_table, init_cutu_and_read_dies)
8977         (partial_die_parent_scope, add_partial_enumeration)
8978         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8979         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8980         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8981         (create_cus_hash_table, create_dwp_hash_table)
8982         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8983         (dwarf2_rnglists_process, dwarf2_ranges_process)
8984         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8985         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8986         (handle_struct_member_die, process_structure_scope)
8987         (read_array_type, read_common_block, read_module_type)
8988         (read_tag_pointer_type, read_typedef, read_base_type)
8989         (read_subrange_type, load_partial_dies, partial_die_info::read)
8990         (partial_die_info::read, partial_die_info::read)
8991         (partial_die_info::read, read_checked_initial_length_and_offset)
8992         (dwarf2_string_attr, read_formatted_entries)
8993         (dwarf_decode_line_header)
8994         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8995         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8996         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8997         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8998         (get_signatured_type, get_DW_AT_signature_type)
8999         (decode_locdesc, file_file_name, consume_improper_spaces)
9000         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
9001         (dwarf_decode_macro_bytes, dwarf_decode_macros)
9002         (dwarf2_symbol_mark_computed, set_die_type)
9003         (read_attribute_value): Update.
9004         * stap-probe.c (handle_stap_probe, get_stap_base_address):
9005         Update.
9006         * dbxread.c (unknown_symtype_complaint)
9007         (lbrac_mismatch_complaint, repeated_header_complaint)
9008         (set_namestring, function_outside_compilation_unit_complaint)
9009         (read_dbx_symtab, process_one_symbol): Update.
9010         * gdbtypes.c (stub_noname_complaint): Update.
9011         * windows-nat.c (handle_unload_dll): Update.
9012         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
9013         (decode_base_type): Update.
9014         * xcoffread.c (bf_notfound_complaint, ef_complaint)
9015         (eb_complaint, record_include_begin, record_include_end)
9016         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
9017         (process_xcoff_symbol, read_symbol)
9018         (function_outside_compilation_unit_complaint)
9019         (scan_xcoff_symtab): Update.
9020         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
9021         * buildsym.c (finish_block_internal, make_blockvector)
9022         (end_symtab_get_static_block, augment_type_symtab): Update.
9023         * dtrace-probe.c (dtrace_process_dof)
9024         (dtrace_static_probe_ops::get_probes): Update.
9025         * complaints.h (struct complaint): Don't declare.
9026         (symfile_complaints): Remove.
9027         (complaint_internal): Remove "complaints" parameter.
9028         (complaint): Likewise.
9029         (clear_complaints): Likewise.
9030         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9031         (reread_symbols): Update.
9032         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
9033         (dwarf2_frame_cache, decode_frame_entry): Update.
9034         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
9035         * objc-lang.c (lookup_objc_class, lookup_child_selector)
9036         (info_selectors_command): Update.
9037         * macrotab.c (macro_include, check_for_redefinition)
9038         (macro_undef): Update.
9039         * objfiles.c (filter_overlapping_sections): Update.
9040         * stabsread.c (invalid_cpp_abbrev_complaint)
9041         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
9042         (define_symbol, error_type, read_type, rs6000_builtin_type)
9043         (stabs_method_name_from_physname, read_member_functions)
9044         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
9045         (attach_fields_to_type, complain_about_struct_wipeout)
9046         (read_range_type, read_args, common_block_start)
9047         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
9048         Update.
9049         * mdebugread.c (index_complaint, unknown_ext_complaint)
9050         (basic_type_complaint, bad_tag_guess_complaint)
9051         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
9052         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
9053         (parse_procedure, parse_lines)
9054         (function_outside_compilation_unit_complaint)
9055         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
9056         (bad_tag_guess_complaint, reg_value_complaint): Update.
9057         * cp-support.c (demangled_name_complaint): Update.
9058         * macroscope.c (sal_macro_scope): Update.
9059         * dwarf-index-write.c (class debug_names): Update.
9060
9061 2018-05-23  Tom Tromey  <tom@tromey.com>
9062
9063         * complaints.c (clear_complaints): Remove "noisy" parameter.
9064         * complaints.h (clear_complaints): Update.
9065         * symfile.c (syms_from_objfile_1, finish_new_objfile)
9066         (reread_symbols): Update.
9067
9068 2018-05-23  Tom Tromey  <tom@tromey.com>
9069
9070         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
9071         SUBSEQUENT_MESSAGE.
9072         (vcomplaint, clear_complaints): Update.
9073         (symfile_explanations): Remove some messages.
9074
9075 2018-05-23  Tom Tromey  <tom@tromey.com>
9076
9077         * complaints.c (internal_complaint): Remove.
9078         * complaints.h (internal_complaint): Remove.
9079
9080 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9081
9082         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9083
9084 2018-05-22  Pedro Alves  <palves@redhat.com>
9085
9086         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9087         (remote_fileio_badfd, remote_fileio_return_errno)
9088         (remote_fileio_return_success, remote_fileio_func_open)
9089         (remote_fileio_func_open, remote_fileio_func_close)
9090         (remote_fileio_func_read, remote_fileio_func_write)
9091         (remote_fileio_func_lseek, remote_fileio_func_rename)
9092         (remote_fileio_func_unlink, remote_fileio_func_stat)
9093         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9094         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9095         remote_target parameter.
9096         (remote_fio_func_map) <func>: Add remote_target parameter.
9097         (do_remote_fileio_request, remote_fileio_request):
9098         * remote-fileio.h (remote_fileio_request):
9099         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9100         remote_target parameter.
9101         (remote_notif_process, handle_notification): Adjust to pass down
9102         the remote.
9103         (remote_notif_state_allocate): Add remote_target parameter.  Save
9104         it.
9105         * remote-notif.h (struct remote_target): Forward declare.
9106         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9107         remote_target parameter.
9108         (struct remote_notif_state) <remote>: New field.
9109         (remote_notif_ack, remote_notif_parse): Add remote_target
9110         parameter.
9111         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9112         remote_target parameter.
9113         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9114         (threads_listing_context, rmt_thread_action, protocol_feature)
9115         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9116         (packet_result, struct threads_listing_context, remote_state):
9117         Move definitions and declarations higher up.
9118         (remote_target) <~remote_target>: Declare.
9119         (remote_download_command_source, remote_file_put, remote_file_get)
9120         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9121         (remote_hostio_pread_vFile, remote_hostio_send_command)
9122         (remote_hostio_set_filesystem, remote_hostio_open)
9123         (remote_hostio_close, remote_hostio_unlink, remote_state)
9124         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9125         (get_memory_write_packet_size, get_memory_read_packet_size)
9126         (append_pending_thread_resumptions, remote_detach_1)
9127         (append_resumption, remote_resume_with_vcont)
9128         (add_current_inferior_and_thread, wait_ns, wait_as)
9129         (process_stop_reply, remote_notice_new_inferior)
9130         (process_initial_stop_replies, remote_add_thread)
9131         (btrace_sync_conf, remote_btrace_maybe_reopen)
9132         (remove_new_fork_children, kill_new_fork_children)
9133         (discard_pending_stop_replies, stop_reply_queue_length)
9134         (check_pending_events_prevent_wildcard_vcont)
9135         (discard_pending_stop_replies_in_queue, stop_reply)
9136         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9137         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9138         (remote_interrupt_as, remote_interrupt_ns)
9139         (remote_get_noisy_reply, remote_query_attached)
9140         (remote_add_inferior, remote_current_thread, get_current_thread)
9141         (set_thread, set_general_thread, set_continue_thread)
9142         (set_general_process, write_ptid)
9143         (remote_unpack_thread_info_response, remote_get_threadinfo)
9144         (parse_threadlist_response, remote_get_threadlist)
9145         (remote_threadlist_iterator, remote_get_threads_with_ql)
9146         (remote_get_threads_with_qxfer)
9147         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9148         (get_offsets, remote_check_symbols, remote_supported_packet)
9149         (remote_query_supported, remote_packet_size)
9150         (remote_serial_quit_handler, remote_detach_pid)
9151         (remote_vcont_probe, remote_resume_with_hc)
9152         (send_interrupt_sequence, interrupt_query)
9153         (remote_notif_get_pending_events, fetch_register_using_p)
9154         (send_g_packet, process_g_packet, fetch_registers_using_g)
9155         (store_register_using_P, store_registers_using_G)
9156         (set_remote_traceframe, check_binary_download)
9157         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9158         (remote_xfer_live_readonly_partial, remote_read_bytes)
9159         (remote_send_printf, remote_flash_write, readchar)
9160         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9161         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9162         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9163         (extended_remote_disable_randomization, extended_remote_run)
9164         (send_environment_packet, extended_remote_environment_support)
9165         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9166         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9167         (packet_command): Now methods of ...
9168         (remote_target): ... this class.
9169         (m_remote_state) <remote_target>: New field.
9170         (struct remote_state) <stop_reply_queue,
9171         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9172         fields.
9173         (remote_state::remote_state): Allocate stop_reply_queue.
9174         (remote_state): Delete global.
9175         (get_remote_state_raw): Delete.
9176         (remote_target::get_remote_state): Allocate m_remote_state on
9177         demand.
9178         (get_current_remote_target): New.
9179         (remote_ops, extended_remote_ops): Delete.
9180         (wait_forever_enabled_p, remote_async_inferior_event_token):
9181         Delete, moved to struct remote_state.
9182         (remote_target::close): Delete self.  Destruction bits split to
9183         ...
9184         (remote_target::~remote_target): ... this.
9185         (show_memory_packet_size): Adjust to use
9186         get_current_remote_target.
9187         (struct protocol_feature) <func>: Add remote_target parameter.
9188         All callers adjusted.
9189         (curr_quit_handler_target): New.
9190         (remote_serial_quit_handler): Reimplement.
9191         (remote_target::open_1): Adjust to use get_current_remote_target.
9192         Heap-allocate remote_target/extended_remote_target instances.
9193         (vcont_builder::vcont_builder): Add remote_target parameter, and
9194         save it in m_remote.  All callers adjusted.
9195         (vcont_builder::m_remote): New field.
9196         (vcont_builder::restart, vcont_builder::flush)
9197         (vcont_builder::push_action): Use it.
9198         (remote_target::commit_resume): Use it.
9199         (struct queue_iter_param) <remote>: New field.
9200         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9201         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9202         (check_pending_event_prevents_wildcard_vcont_callback)
9203         (remote_target::check_pending_events_prevent_wildcard_vcont)
9204         (remote_target::discard_pending_stop_replies)
9205         (remote_target::discard_pending_stop_replies_in_queue)
9206         (remote_target::remote_notif_remove_queued_reply): Fill in
9207         'remote' field.
9208         (remote_notif_get_pending_events): New.
9209         (remote_target::readchar, remote_target::remote_serial_write):
9210         Save/restore curr_quit_handler_target.
9211         (putpkt): New.
9212         (kill_new_fork_children): Fill in 'remote' field.
9213         (packet_command): Use get_current_remote_target, defer to
9214         remote_target method of same name.
9215         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9216         parameter, and save it in m_remote.  All callers adjusted.
9217         (scoped_remote_fd::release): Use m_remote.
9218         (scoped_remote_fd::m_remote): New field.
9219         (remote_file_put, remote_file_get, remote_file_delete): Use
9220         get_current_remote_target, defer to remote_target method of same
9221         name.
9222         (remote_btrace_reset): Add remote_state paremeter.  Update all
9223         callers.
9224         (remote_async_inferior_event_handler). Pass down 'data'.
9225         (remote_new_objfile): Use get_current_remote_target.
9226         (remote_target::vcont_r_supported): New.
9227         (set_range_stepping): Use get_current_remote_target and
9228         remote_target::vcont_r_supported.
9229         (_initialize_remote): Don't allocate 'remote_state' and
9230         'stop_reply_queue' globals.
9231         * remote.h (struct remote_target): Forward declare.
9232         (getpkt, putpkt, remote_notif_get_pending_events): Add
9233         'remote_target' parameter.
9234
9235 2018-05-22  Pedro Alves  <palves@redhat.com>
9236
9237         * remote.c (vcont_builder): Now a class.  Make all data members
9238         private.
9239         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9240         Declare methods.
9241         (vcont_builder_restart): Rename to ...
9242         (vcont_builder::restart): ... this.
9243         (vcont_builder_flush): Rename to ...
9244         (vcont_builder::flush): ... this.
9245         (vcont_builder_push_action): Rename to ...
9246         (vcont_builder::push_action): ... this.
9247         (remote_target::commit_resume): Adjust.
9248
9249 2018-05-22  Pedro Alves  <palves@redhat.com>
9250
9251         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9252         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9253         (get_fixed_memory_packet_size): New.
9254         (get_memory_packet_size): Use it.
9255         (set_memory_packet_size): Don't override the config size with
9256         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9257         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9258         Don't refer to get_memory_packet_size if not connected to a remote
9259         target.  Show "(default)" if configured size is 0.
9260
9261 2018-05-22  Pedro Alves  <palves@redhat.com>
9262
9263         * remote.c (remote_target::mourn_inferior): Move
9264         discard_pending_stop_replies call here from ...
9265         (_initialize_remote): ... here.
9266
9267 2018-05-22  Pedro Alves  <palves@redhat.com>
9268
9269         * remote.c (compare_section_command): Remove set_general_process
9270         call.
9271
9272 2018-05-22  Pedro Alves  <palves@redhat.com>
9273
9274         * remote.c (struct packet_reg, struct remote_arch_state):
9275         Move higher up in the file.
9276         (remote_state) <m_arch_states>: Store remote_arch_state values
9277         instead of remote_arch_state pointers.
9278         (remote_state::get_remote_arch_state): Adjust.
9279
9280 2018-05-22  Pedro Alves  <palves@redhat.com>
9281
9282         * remote.c: Include <unordered_map>.
9283         (remote_state): Now a class.
9284         (remote_state) <get_remote_arch_state>: Declare method.
9285         <get_remote_arch_state>: New field.
9286         (remote_arch_state) <remote_arch_state>: Declare ctor.
9287         <regs>: Now a unique_ptr.
9288         (remote_gdbarch_data_handle): Delete.
9289         (get_remote_arch_state): Delete.
9290         (remote_state::get_remote_arch_state): New.
9291         (get_remote_state): Adjust to call remote_state's
9292         get_remote_arch_state method.
9293         (init_remote_state): Delete, bits factored out to ...
9294         (remote_arch_state::remote_arch_state): ... this new method.
9295         (get_remote_packet_size, get_memory_packet_size)
9296         (process_g_packet, remote_target::fetch_registers)
9297         (remote_target::prepare_to_store, store_registers_using_G)
9298         (remote_target::store_registers, remote_target::get_trace_status):
9299         Adjust to call remote_state's method.
9300         (_initialize_remote): Remove reference to
9301         remote_gdbarch_data_handle.
9302
9303 2018-05-22  Pedro Alves  <palves@redhat.com>
9304
9305         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9306         pread>: New method declarations.
9307         (remote_target::open_1): Adjust.
9308         (readahead_cache_invalidate): Rename to ...
9309         (readahead_cache::invalidate): ... this, and adjust to be a class
9310         method.
9311         (readahead_cache_invalidate_fd): Rename to ...
9312         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9313         class method.
9314         (remote_hostio_pwrite): Adjust.
9315         (remote_hostio_pread_from_cache): Rename to ...
9316         (readahead_cache::pread): ... this, and adjust to be a class
9317         method.
9318         (remote_hostio_close): Adjust.
9319
9320 2018-05-22  Pedro Alves  <palves@redhat.com>
9321
9322         * remote.c (remote_hostio_close_cleanup): Delete.
9323         (class scoped_remote_fd): New.
9324         (remote_file_put, remote_file_get): Use it.
9325
9326 2018-05-22  Pedro Alves  <palves@redhat.com>
9327
9328         (struct vCont_action_support): Use bool and initialize all fields.
9329         (struct readahead_cache): Initialize all fields.
9330         (remote_state): Use bool and initialize all fields.
9331         (remote_state::remote_state, remote_state::~remote_state): New.
9332         (new_remote_state): Delete.
9333         (_initialize_remote): Use new to allocate remote_state.
9334
9335 2018-05-22  Pedro Alves  <palves@redhat.com>
9336             張俊芝  <zjz@zjz.name>
9337
9338         PR gdb/22973
9339         * c-exp.y: Include "c-support.h".
9340         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9341         of tolower.  Use c_ident_is_alpha to scan names.
9342         * c-lang.c: Include "c-support.h".
9343         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9344         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9345         * c-support.h: New file, with bits factored out from ...
9346         * cp-name-parser.y: ... this file.
9347         Include "c-support.h".
9348         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9349         c-support.h and renamed.
9350         (symbol_end, yylex): Adjust.
9351
9352 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9353
9354         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9355         parameter type to CORE_ADDR.
9356         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9357         parameter type in declaration to CORE_ADDR.
9358         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9359         target_auxv_search to get AT_HWCAP and use the result to get the
9360         target description.
9361         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9362         to CORE_ADDR. Remove the cast of the return value to unsigned
9363         long. Fix error predicate of target_auxv_search.
9364         (ppc_linux_nat_target::read_description): Change the type of the
9365         hwcap variable to CORE_ADDR.
9366
9367 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9368
9369         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9370         if the size of fpscr is larger than 32 bits.
9371
9372 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9373
9374         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9375         (ppc32_linux_vsxregmap): New global.
9376         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9377         regcache_supply_regset, and regcache_collect_regset.
9378         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9379         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9380         (fetch_vsx_register, store_vsx_register): Remove.
9381         (fetch_vsx_registers): Add regno parameter. Get regset using
9382         ppc_linux_vsxregset. Use regset to supply registers.
9383         (store_vsx_registers): Add regno parameter. Get regset using
9384         ppc_linux_vsxregset. Use regset to collect registers.
9385         (fetch_register): Call fetch_vsx_registers instead of
9386         fetch_vsx_register.
9387         (store_register): Call store_vsx_registers instead of
9388         store_vsx_register.
9389         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9390         new regno parameter.
9391         (store_ppc_registers): Call store_vsx_registers with -1 for the
9392         new regno parameter.
9393         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9394         (ppc_collect_vsxregset): Remove.
9395
9396 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9397
9398         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9399         offset fields.
9400         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9401         for vector register offset fields.
9402         (ppc64_fbsd_reg_offsets): Likewise.
9403         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9404         to vector register offset fields.
9405         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9406         to vector register offset fields.
9407         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9408         vector register offset fields.
9409         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9410         initializers for vector register offset fields.
9411         (rs6000_aix64_reg_offsets): Likewise.
9412         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9413         (ppc_supply_vrregset): Remove.
9414         (ppc_collect_vrregset): Remove.
9415         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9416         (ppc_linux_vrregset) : New function.
9417         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9418         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9419         (ppc32_linux_vrregset): Remove.
9420         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9421         and use result instead of ppc32_linux_vrregset.
9422         (ppc32_linux_reg_offsets): Remove initializers for vector register
9423         offset fields.
9424         (ppc64_linux_reg_offsets): Likewise.
9425         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9426         * ppc-linux-nat.c: Include regset.h.
9427         (gdb_vrregset_t): Adjust comment to account for little-endian
9428         mode.
9429         (supply_vrregset, fill_vrregset): Remove.
9430         (fetch_altivec_register, store_altivec_register): Remove.
9431         (fetch_altivec_registers): Add regno parameter. Get regset using
9432         ppc_linux_vrregset. Use regset to supply registers.
9433         (store_altivec_registers): Add regno parameter. Get regset using
9434         ppc_linux_vrregset. Use regset to collect registers.
9435         (fetch_register): Call fetch_altivec_registers instead of
9436         fetch_altivec_register.
9437         (store_register): Call store_altivec_registers instead of
9438         store_altivec_register.
9439         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9440         the new regno parameter.
9441         (store_ppc_registers): Call store_altivec_registers with -1 for
9442         the new regno parameter.
9443
9444 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9445
9446         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9447         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9448         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9449         (gdb_vrregset_t): Change array type size to
9450         PPC_LINUX_SIZEOF_VRREGSET.
9451         (gdb_vsxregset_t): Change array type size to
9452         PPC_LINUX_SIZEOF_VSXREGSET.
9453         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9454         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9455         PPC_LINUX_SIZEOF_VSXREGSET.
9456
9457 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9458
9459         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9460         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9461         nat/ppc-linux.c.
9462         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9463         ppc_linux_target_wordsize with tid.
9464         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9465         wordsize with tid.
9466         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9467         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9468         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9469         tid parameter. Remove static specifier.
9470         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9471         (ppc_linux_target_wordsize): New declaration.
9472
9473 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9474
9475         * arch/ppc-linux-common.c: New file.
9476         * arch/ppc-linux-common.h: New file.
9477         * arch/ppc-linux-tdesc.h: New file.
9478         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9479         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9480         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9481         arch/ppc-linux-tdesc.h.
9482         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9483         arch/ppc-linux-tdesc.h.
9484         (ppc_linux_nat_target::read_description): Remove target
9485         description matching code. Fill a ppc_linux_features struct and
9486         call ppc_linux_match_description with it. Move comment about ISA
9487         2.05 to ppc-linux-common.c.
9488         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9489         arch/ppc-linux-tdesc.h.
9490         (ppc_linux_core_read_description): Remove target description
9491         matching code. Fill a ppc_linux_features struct and call
9492         ppc_linux_match_description with it.
9493         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9494         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9495         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9496         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9497         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9498         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9499         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9500         (tdesc_powerpc_e500l): Remove.
9501
9502 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9503
9504         * ada-lang.c (catch_assert_command): Pass empty string instead
9505         of NULL for excep_string argument.
9506
9507 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9508
9509         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9510         the width of the requested register exceeds the width of the
9511         `ptrace' data type.
9512
9513 2018-05-21  Tom Tromey  <tom@tromey.com>
9514
9515         * printcmd.c (output_command): Remove.
9516         (output_command_const): Rename to output_command.
9517         * valprint.h (output_command): Rename from output_command_const.
9518         * tracepoint.c (trace_dump_actions): Call output_command.
9519
9520 2018-05-21  Tom Tromey  <tom@tromey.com>
9521
9522         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9523         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9524         * ada-lang.h (create_ada_exception_catchpoint): Update.
9525         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9526         std::string.
9527         (create_excep_cond_exprs, ~ada_catchpoint)
9528         (should_stop_exception, print_one_exception)
9529         (print_mention_exception, print_recreate_exception): Update.
9530         (ada_get_next_arg): Remove.
9531         (catch_ada_exception_command_split): Use std::string.  Change type
9532         of "excep_string", "cond_string".
9533         (catch_ada_exception_command): Update.
9534         (create_ada_exception_catchpoint): Change type of excep_string.
9535         (ada_exception_sal): Remove excep_string parameter.
9536         (~ada_catchpoint): Remove.
9537
9538 2018-05-21  Tom Tromey  <tom@tromey.com>
9539
9540         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9541         cleanup.
9542
9543 2018-05-21  Tom Tromey  <tom@tromey.com>
9544
9545         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9546         Return unique_xmalloc_ptr.
9547         (print_it_exception): Update.
9548
9549 2018-05-21  Tom Tromey  <tom@tromey.com>
9550
9551         * tracepoint.c (trace_dump_actions): Use std::string.
9552
9553 2018-05-21  Tom Tromey  <tom@tromey.com>
9554
9555         * symfile.c (reread_symbols): Use std::string for original_name.
9556
9557 2018-05-21  Tom Tromey  <tom@tromey.com>
9558
9559         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9560         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9561         constructor.
9562
9563 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9564
9565         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9566         instance to...
9567         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9568         * objfiles.c (get_objfile_bfd_data): Allocate
9569         objfile_per_bfd_storage with obstack_new when allocating on
9570         obstack.
9571
9572 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9573
9574         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9575         OBSTACK_ZALLOC.
9576         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9577         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9578         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9579         (add_pending): Likewise.
9580         (parse_symbol): Likewise.
9581         (parse_partial_symbols): Likewise.
9582         (psymtab_to_symtab_1): Likewise.
9583         (new_psymtab): Likewise.
9584         (elfmdebug_build_psymtabs): Likewise.
9585         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9586         * objfiles.c (get_objfile_bfd_data): Likewise.
9587         (objfile_register_static_link): Likewise.
9588         * psymtab.c (allocate_psymtab): Likewise.
9589         * stabsread.c (read_member_functions): Likewise.
9590         * xcoffread.c (xcoff_end_psymtab): Likewise.
9591
9592 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9593
9594         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9595         compiler supports std::is_trivially_constructible.
9596         * common/poison.h: Include obstack.h.
9597         (IsMallocable): Define to is_trivially_constructible if the
9598         compiler supports it, define to true_type otherwise.
9599         (xobnew): New.
9600         (XOBNEW): Redefine.
9601         (xobnewvec): New.
9602         (XOBNEWVEC): Redefine.
9603         * gdb_obstack.h (obstack_zalloc): New.
9604         (OBSTACK_ZALLOC): Redefine.
9605         (obstack_calloc): New.
9606         (OBSTACK_CALLOC): Redefine.
9607         (obstack_new): New.
9608         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9609         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9610         gdbarch.c.
9611         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9612         obstack_calloc/obstack_zalloc.
9613         (gdbarch_obstack_zalloc): Remove.
9614         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9615
9616 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9617
9618         * stack.c (backtrace_command_1): Remove useless variable int i.
9619
9620 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9621
9622         * stack.c (print_frame_info): Fix comment.
9623
9624 2018-05-18  Tom Tromey  <tom@tromey.com>
9625
9626         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9627         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9628         (~dwarf2_per_objfile): Update
9629         (dwarf2_get_dwz_file): Use new.
9630         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9631         unique_ptr.
9632
9633 2018-05-18  Tom Tromey  <tom@tromey.com>
9634
9635         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9636         unique_ptr.
9637         * dwarf2read.c (struct dwp_file): Add constructor and
9638         initializers.
9639         (open_and_init_dwp_file): Return a unique_ptr.
9640         (dwarf2_per_objfile, create_dwp_hash_table)
9641         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9642         (lookup_dwo_unit_in_dwp): Update.
9643         (open_and_init_dwp_file, get_dwp_file): Update.
9644
9645 2018-05-18  Tom Tromey  <tom@tromey.com>
9646
9647         * dwarf2read.c (dwarf2_per_objfile): Update.
9648         (struct mapped_index): Add initializers.
9649         (dwarf2_read_index): Use new.
9650         (dw2_symtab_iter_init): Update.
9651         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9652         unique_ptr.
9653
9654 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9655
9656         * dwarf2read.c (mapped_index) <total_size>: Remove.
9657
9658 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9659
9660         * unittests/format_pieces-selftests.c (test_format_specifier):
9661         Add ARI comments.
9662
9663 2018-05-18  Tom Tromey  <tom@tromey.com>
9664
9665         * c-typeprint.c (maybe_print_hole): New function.
9666         (c_print_type_struct_field_offset): Update.
9667         (c_type_print_base_struct_union): Call maybe_print_hole.
9668
9669 2018-05-17  Keith Seitz  <keiths@redhat.com>
9670
9671         * breakpoint.c (build_bpstat_chain): New function, moved from
9672         bpstat_stop_status.
9673         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9674         If no stop chain is passed, call build_bpstat_chain to build it.
9675         * breakpoint.h (build_bpstat_chain): Declare.
9676         (bpstat_stop_status): Move documentation here from breakpoint.c.
9677         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9678         build the stop chain and pass it to skip_inline_frames.
9679         Pass this stop chain to bpstat_stop_status.
9680         * inline-frame.c: Include breakpoint.h.
9681         (stopped_by_user_bp_inline_frame): New function.
9682         (skip_inline_frames): Add parameter `stop_chain'.
9683         Move documention to inline-frame.h.
9684         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9685         whether the frame should be elided.
9686         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9687         Add moved documentation and update for new parameter.
9688
9689 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9690
9691         PR cli/14975
9692         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9693         unittests/format_pieces-selftests.c.
9694         * common/format.h (format_piece) <operator==>: New.
9695         (format_pieces) <operator[]>: Remove.
9696         * common/format.c (format_pieces::format_pieces): Handle \e.
9697         * unittests/format_pieces-selftests.c: New.
9698
9699 2018-05-17  Tom Tromey  <tom@tromey.com>
9700
9701         PR symtab/23010:
9702         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9703         (dw2_instantiate_symtab): Add skip_partial parameter.
9704         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9705         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9706         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9707         (dw2_expand_symtabs_matching_one)
9708         (dw2_find_pc_sect_compunit_symtab)
9709         (dw2_debug_names_lookup_symbol)
9710         (dw2_debug_names_expand_symtabs_for_function): Update.
9711         (init_cutu_and_read_dies): Add skip_partial parameter.
9712         (process_psymtab_comp_unit, build_type_psymtabs_1)
9713         (process_skeletonless_type_unit, load_partial_comp_unit)
9714         (psymtab_to_symtab_1): Update.
9715         (load_full_comp_unit): Add skip_partial parameter.
9716         (process_imported_unit_die, dwarf2_read_addr_index)
9717         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9718         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9719         (read_signatured_type): Update.
9720
9721 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9722
9723         * value.c (release_value): Remove unused variable.
9724         (record_latest_value): Likewise.
9725         (access_value_history): Likewise.
9726         (preserve_values): Likewise.
9727
9728 2018-05-17  Tom Tromey  <tom@tromey.com>
9729
9730         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9731         Initialize.
9732
9733 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9734
9735         PR gdb/22286
9736         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9737         Also handle registers whose width is not a multiple of
9738         PTRACE_TYPE_RET.
9739         (linux_nat_trad_target::store_register): Likewise.
9740
9741 2018-05-16  Tom Tromey  <tom@tromey.com>
9742
9743         * gdbcore.h (core_bfd): Redefine.
9744         * corelow.c (core_target::close): Update.
9745         (core_target_open): Update.
9746         * progspace.h (struct program_space) <cbfd>: Now a
9747         gdb_bfd_ref_ptr.
9748
9749 2018-05-16  Tom Tromey  <tom@tromey.com>
9750
9751         PR cli/19551:
9752         * symfile-add-flags.h (enum symfile_add_flags)
9753         <SYMFILE_NOT_FILENAME>: New constant.
9754         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9755         objfile name from BFD.
9756         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9757         * minidebug.c (find_separate_debug_file_in_section): Put
9758         ".gnu_debugdata" into BFD's file name.
9759
9760 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9761
9762         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9763         Remove.
9764
9765 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9766
9767         PR binutils/21446
9768         * aarch64-tdep.c (aarch64_analyze_prologue,
9769         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9770         Indicate not interested in errors.
9771
9772 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9773
9774         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9775         Supply the MIPS_ZERO_REGNUM register.
9776
9777 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9778
9779         * mips-tdep.c (mask_address_var): Make variable static.
9780
9781 2018-05-14  Tom Tromey  <tom@tromey.com>
9782
9783         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9784
9785 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9786
9787         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9788         FXSAVE_ADDR for the mxcsr register.
9789
9790 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9791
9792         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9793
9794 2018-05-11  Pedro Alves  <palves@redhat.com>
9795
9796         * corelow.c (core_target) <core_target>: No longer inline.
9797         Initialize m_core_gdbarch, m_core_vec and build the section table
9798         here.
9799         <~core_target>: New.
9800         <core_gdbarch, get_core_register_section>: New methods.
9801         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9802         factored out from ...
9803         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9804         (core_ops): Delete.
9805         (sniff_core_bfd): Add gdbarch parameter.
9806         (core_close): Delete, merged into ...
9807         (core_target::close): ... here.  Delete self.
9808         (core_close_cleanup): Delete.
9809         (core_target_open): Allocate a core_target on the heap.  Use a
9810         unique_ptr instead of a cleanup.  Bits moved into the core_target
9811         ctor.  Adjust to use core_target methods instead of globals.
9812         (get_core_register_section): Rename to ...
9813         (core_target::get_core_register_section): ... this and adjust.
9814         (struct get_core_registers_cb_data): New.
9815         (get_core_registers_cb): Use it.  Use bool.
9816         (core_target::fetch_registers, core_target::files_info)
9817         (core_target::xfer_partial, core_target::read_description)
9818         (core_target::pid_to, core_target::thread_name): Adjust to
9819         reference class fields instead of globals.
9820         * target.h (struct target_ops_deleter, target_ops_up): New.
9821
9822 2018-05-11  Pedro Alves  <palves@redhat.com>
9823
9824         * corefile.c (core_file_command): Move to corelow.c.
9825         * corelow.c (the_core_target): Delete.
9826         (core_file_command): Moved from corefile.c.  Check exec_bfd
9827         instead of the_core_target.  Use target_detach instead of calling
9828         into the_core_target directly.
9829         (maybe_say_no_core_file_now): New.
9830         (core_target::detach): Use it.
9831         (_initialize_corelow): Remove references to the_core_target.
9832         * gdbcore.h (the_core_target): Delete.
9833
9834 2018-05-11  Tom Tromey  <tromey@redhat.com>
9835             Pedro Alves  <palves@redhat.com>
9836
9837         * corefile.c (core_bfd): Remove.
9838         * gdbcore.h (core_bfd): Now a macro.
9839         * progspace.h (struct program_space) <cbfd>: New field.
9840
9841 2018-05-11  Tom Tromey  <tom@tromey.com>
9842
9843         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9844         gdb::def_vector.
9845
9846 2018-05-10  Tom Tromey  <tom@tromey.com>
9847
9848         * configure: Rebuild.
9849         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9850
9851 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9852
9853         PR server/23158:
9854         * regformats/regdat.sh: Adjust script, following the addition
9855         of the new expedite_regs parameter to init_target_desc.
9856
9857 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9858     
9859         PR gdb/23127
9860         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9861         set_gdbarch_significant_addr_bit.
9862         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9863         set_gdbarch_significant_addr_bit.
9864         * utils.c (address_significant): Update to sign extend addr.
9865
9866 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9867
9868         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9869         (xtensa_linux_init_abi): Limit tdep->num_regs by
9870         tdep->num_nopriv_regs.
9871         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9872         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9873         not initialized.
9874
9875 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9876
9877         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9878
9879 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9880
9881         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9882         (I387_MXCSR_INIT_VAL): New constant.
9883         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9884         buffer if it was supplied by the inferior.
9885         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9886         (i387_xsave_get_clear_bv): New function.
9887         (i387_supply_xsave): Only read x87 control registers from the
9888         xsave buffer if the feature is enabled, and the state will have
9889         been written, otherwise, provide a suitable default.
9890         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9891         including x87 control registers.  Update control registers if they
9892         have changed from the default value, and mark features as enabled
9893         as required.
9894         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9895
9896 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9897
9898         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9899
9900 2018-05-07  Tom Tromey  <tom@tromey.com>
9901
9902         * configure: Rebuild.
9903         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9904
9905 2018-05-07  Tom Tromey  <tom@tromey.com>
9906
9907         PR tdep/20362:
9908         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9909         bit.  Use correct value for VDIV.
9910
9911 2018-05-04  Tom Tromey  <tom@tromey.com>
9912
9913         * configure: Rebuild.
9914         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9915
9916 2018-05-04  Tom Tromey  <tom@tromey.com>
9917
9918         * linux-record.c (record_linux_system_call) <case
9919         RECORD_SYS_RECVFROM>: Add "break".
9920
9921 2018-05-04  Tom Tromey  <tom@tromey.com>
9922
9923         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9924         Add missing "break".
9925         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9926         Add missing "break".
9927
9928 2018-05-04  Tom Tromey  <tom@tromey.com>
9929
9930         * rs6000-tdep.c (ppc_process_record_op4)
9931         (ppc_process_record_op63): Add fall-through comment.
9932
9933 2018-05-04  Tom Tromey  <tom@tromey.com>
9934
9935         * i386-tdep.c (i386_process_record): Add fall-through comment.
9936
9937 2018-05-04  Tom Tromey  <tom@tromey.com>
9938
9939         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9940         comment.
9941
9942 2018-05-04  Tom Tromey  <tom@tromey.com>
9943
9944         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9945         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9946         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9947         comment.
9948         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9949         comment.
9950         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9951         comment.
9952
9953 2018-05-04  Tom Tromey  <tom@tromey.com>
9954
9955         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9956
9957 2018-05-04  Tom Tromey  <tom@tromey.com>
9958
9959         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9960         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9961         * symfile.c (section_is_mapped): Fix fall-through comment.
9962         * stabsread.c (define_symbol, read_member_functions): Fix
9963         fall-through comment.
9964         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9965         comment.
9966         * remote.c (remote_wait_as): Fix fall-through comment.
9967         * p-exp.y (yylex): Fix fall-through comment.
9968         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9969         comment.
9970         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9971         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9972         * jv-exp.y (yylex): Fix fall-through comment.
9973         * go-exp.y (lex_one_token): Fix fall-through comment.
9974         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9975         fall-through comment.
9976         * f-exp.y (yylex): Fix fall-through comment.
9977         * dwarf2read.c (process_die): Fix fall-through comments.
9978         * dbxread.c (process_one_symbol): Fix fall-through comment.
9979         * d-exp.y (lex_one_token): Fix fall-through comment.
9980         * cp-name-parser.y (yylex): Fix fall-through comment.
9981         * coffread.c (coff_symtab_read): Fix fall-through comment.
9982         * c-exp.y (lex_one_token): Fix fall-through comment.
9983         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9984         comment.
9985         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9986         comment.
9987
9988 2018-05-04  Tom Tromey  <tom@tromey.com>
9989
9990         PR python/22730:
9991         * NEWS: Mention gdb.execute change.
9992         * gdbcmd.h (execute_control_command): Don't declare.
9993         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9994         execute_control_commands, execute_control_commands_to_string.
9995         * cli/cli-script.h (execute_control_commands)
9996         (execute_control_commands_to_string): Declare.
9997         (execute_control_command): Add from_tty parameter.
9998         * cli/cli-script.c (execute_control_commands)
9999         (execute_control_commands_to_string): New functions.
10000         (execute_user_command): Use execute_control_commands.
10001         (execute_control_command_1): Add "from_tty" parameter.  Update.
10002         (execute_control_command): Likewise.
10003
10004 2018-05-04  Tom Tromey  <tom@tromey.com>
10005
10006         PR python/22731:
10007         * NEWS: Mention that breakpoint commands are writable.
10008         * python/py-breakpoint.c (bppy_set_commands): New function.
10009         (breakpoint_object_getset) <"commands">: Use it.
10010
10011 2018-05-04  Tom Tromey  <tom@tromey.com>
10012
10013         * tracepoint.c (actions_command): Update.
10014         * mi/mi-cmd-break.c (mi_command_line_array)
10015         (mi_command_line_array_cnt, mi_command_line_array_ptr)
10016         (mi_read_next_line): Remove.
10017         (mi_cmd_break_commands): Update.
10018         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
10019         function_view.
10020         * cli/cli-script.c (get_command_line): Update.
10021         (process_next_line): Use function_view.  Constify.
10022         (recurse_read_control_structure, read_command_lines)
10023         (read_command_lines_1): Change argument types to function_view.
10024         (do_define_command, document_command): Update.
10025         * breakpoint.h (check_tracepoint_command): Don't declare.
10026         * breakpoint.c (check_tracepoint_command): Remove.
10027         (commands_command_1, create_tracepoint_from_upload): Update.
10028
10029 2018-05-04  Tom Tromey  <tom@tromey.com>
10030
10031         PR gdb/11750:
10032         * cli/cli-script.h (enum command_control_type) <define_control>:
10033         New constant.
10034         * cli/cli-script.c (multi_line_command_p): Handle define_control.
10035         (build_command_line, execute_control_command_1)
10036         (process_next_line): Likewise.
10037         (do_define_command): New function, extracted from define_command.
10038         (define_command): Use it.
10039
10040 2018-05-04  Tom Tromey  <tom@tromey.com>
10041
10042         * tracepoint.c (actions_command): Update.
10043         * cli/cli-script.h (read_command_lines): Update.
10044         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
10045         (MAX_TMPBUF): Remove define.
10046         (define_command): Use string_printf.
10047         (document_command): Likewise.
10048         * breakpoint.c (commands_command_1): Update.
10049
10050 2018-05-04  Tom Tromey  <tom@tromey.com>
10051
10052         * top.c (execute_command): Update.
10053         * cli/cli-script.h (print_command_lines): Now varargs.
10054         * cli/cli-script.c (print_command_lines): Now varargs.
10055         (execute_control_command_1) <case while_control, case if_control>:
10056         Update.
10057
10058 2018-05-04  Tom Tromey  <tom@tromey.com>
10059
10060         * tracepoint.c (all_tracepoint_actions): Rename from
10061         all_tracepoint_actions_and_cleanup.  Change return type.
10062         (actions_command, encode_actions_1, encode_actions)
10063         (trace_dump_actions, tdump_command): Update.
10064         * remote.c (remote_download_command_source): Update.
10065         * python/python.c (gdbpy_eval_from_control_command)
10066         (python_command, python_interactive_command): Update.
10067         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
10068         * guile/guile.c (guile_command)
10069         (gdbscm_eval_from_control_command, guile_command): Update.
10070         * compile/compile.c (compile_code_command)
10071         (compile_print_command, compile_to_object): Update.
10072         * cli/cli-script.h (struct command_lines_deleter): New.
10073         (counted_command_line): New typedef.
10074         (struct command_line): Add constructor, destructor.
10075         <body_list>: Remove.
10076         <body_list_0, body_list_1>: New members.
10077         (command_line_up): Remove typedef.
10078         (read_command_lines, read_command_lines_1, get_command_line):
10079         Update.
10080         (copy_command_lines): Don't declare.
10081         * cli/cli-script.c (build_command_line): Use "new".
10082         (get_command_line): Return counted_command_line.
10083         (print_command_lines, execute_user_command)
10084         (execute_control_command_1, while_command, if_command): Update.
10085         (realloc_body_list): Remove.
10086         (process_next_line, recurse_read_control_structure): Update.
10087         (read_command_lines, read_command_lines_1): Return counted_command_line.
10088         (free_command_lines): Use "delete".
10089         (copy_command_lines): Remove.
10090         (define_command, document_command, show_user_1): Update.
10091         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10092         a counted_command_line.
10093         * breakpoint.h (counted_command_line): Remove typedef.
10094         (breakpoint_set_commands): Update.
10095         * breakpoint.c (check_no_tracepoint_commands)
10096         (validate_commands_for_breakpoint): Update.
10097         (breakpoint_set_commands): Change commands to be a
10098         counted_command_line.
10099         (commands_command_1, update_dprintf_command_list)
10100         (create_tracepoint_from_upload): Update.
10101
10102 2018-05-04  Tom Tromey  <tom@tromey.com>
10103
10104         * cli/cli-decode.h (cmd_list_element): New constructor.
10105         (~cmd_list_element): New destructor.
10106         (struct cmd_list_element): Add initializers.
10107         * cli/cli-decode.c (do_add_cmd): Use "new".
10108         (delete_cmd): Use "delete".
10109
10110 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10111             Pedro Alves <palves@redhat.com>
10112
10113         PR breakpoints/19806 and support for PR external/20207.
10114         * NEWS: Mention Aarch64 watchpoint improvements.
10115         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10116         watchpoints and PR external/20207 watchpoints.
10117         * nat/aarch64-linux-hw-point.c
10118         (kernel_supports_any_contiguous_range): New.
10119         (aarch64_watchpoint_offset): New.
10120         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10121         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10122         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10123         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10124         next_addr_orig_p.  Support PR external/20207 watchpoints.
10125         (aarch64_downgrade_regs): New.
10126         (aarch64_dr_state_insert_one_point): New parameters offset and
10127         addr_orig.
10128         (aarch64_dr_state_remove_one_point): Likewise.
10129         (aarch64_handle_breakpoint): Update caller.
10130         (aarch64_handle_aligned_watchpoint): Likewise.
10131         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10132         aligned_offset.
10133         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10134         aarch64_downgrade_regs.
10135         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10136         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10137         (DR_CONTROL_MASK): ... this.
10138         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10139         (unsigned int aarch64_watchpoint_offset): New prototype.
10140         (aarch64_linux_set_debug_regs): Remove const from state.
10141         * utils.c (align_up, align_down): Move to ...
10142         * common/common-utils.c (align_up, align_down): ... here.
10143         * utils.h (align_up, align_down): Move to ...
10144         * common/common-utils.h (align_up, align_down): ... here.
10145
10146 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10147
10148         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10149         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10150         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10151         Re-implement to match the ABI as summarized in GCC's
10152         gcc/config/sparc/sparc.c.  All callers updated.
10153         (sparc32_store_arguments): Remove assertion.
10154
10155 2018-05-04  Tom Tromey  <tom@tromey.com>
10156
10157         * printcmd.c: Don't include tui.h.
10158         (decode_format): Use skip_spaces.
10159
10160 2018-05-04  Tom Tromey  <tom@tromey.com>
10161
10162         PR gdb/22619:
10163         * printcmd.c (last_count): New global.
10164         (x_command): Use saved count when repeating.
10165
10166 2018-05-04  Tom Tromey  <tom@tromey.com>
10167
10168         * nto-procfs.c (do_closedir_cleanup): Remove.
10169         (procfs_pidlist): Use gdb_dir_up.
10170         * procfs.c (do_closedir_cleanup): Remove.
10171         (proc_update_threads): Use gdb_dir_up.
10172         * common/filestuff.h (struct gdb_dir_deleter): New.
10173         (gdb_dir_up): New typedef.
10174
10175 2018-05-04  Tom Tromey  <tom@tromey.com>
10176
10177         * ada-lang.c (print_mention_exception): Use std::string.
10178
10179 2018-05-04  Tom Tromey  <tom@tromey.com>
10180
10181         * ada-lang.c (create_excep_cond_exprs): Update.
10182         (ada_exception_catchpoint_cond_string): Use std::string.
10183
10184 2018-05-04  Tom Tromey  <tom@tromey.com>
10185
10186         * ada-lang.c (xget_renaming_scope): Return std::string.
10187         (old_renaming_is_invisible): Update.
10188
10189 2018-05-04  Tom Tromey  <tom@tromey.com>
10190
10191         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10192         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10193
10194 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10195
10196         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10197
10198 2018-05-04  Tom Tromey  <tom@tromey.com>
10199
10200         * remote.c (remote_query_supported_append): Change type.
10201         (remote_check_symbols): Update.
10202
10203 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10204
10205         PR gdb/11420
10206         * configure.ac: Prepend libpython.
10207         * python/python-config.py: Likewise.
10208         * configure: Regenerate.
10209
10210 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10211
10212         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10213
10214 2018-05-03  Pedro Alves  <palves@redhat.com>
10215
10216         * s390-linux-nat.c
10217         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10218         override.  Write 'true' instead of '1'.
10219         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10220         declaration.
10221
10222 2018-05-02  Pedro Alves  <palves@redhat.com>
10223
10224         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10225         add_inf_child_target.
10226         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10227         add_inf_child_target.
10228         * aix-thread.c (aix_thread_target_info): New.
10229         (aix_thread_target) <shortname, longname, doc>: Delete.
10230         <info>: New.
10231         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10232         add_inf_child_target.
10233         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10234         add_inf_child_target.
10235         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10236         add_inf_child_target.
10237         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10238         add_inf_child_target.
10239         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10240         add_inf_child_target.
10241         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10242         add_inf_child_target.
10243         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10244         add_inf_child_target.
10245         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10246         add_inf_child_target.
10247         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10248         add_inf_child_target.
10249         * bfd-target.c (target_bfd_target_info): New.
10250         (target_bfd) <shortname, longname, doc>: Delete.
10251         <info>: New.
10252         * bsd-kvm.c (bsd_kvm_target_info): New.
10253         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10254         <info>: New.
10255         (bsd_kvm_target::open): Rename to ...
10256         (bsd_kvm_target_open): ... this.  Adjust.
10257         * bsd-uthread.c (bsd_uthread_target_info): New.
10258         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10259         <info>: New.
10260         * corefile.c (core_file_command): Adjust.
10261         * corelow.c (core_target_info): New.
10262         (core_target) <shortname, longname, doc>: Delete.
10263         <info>: New.
10264         (core_target::open): Rename to ...
10265         (core_target_open): ... this.  Adjust.
10266         * ctf.c (ctf_target_info): New.
10267         (ctf_target) <shortname, longname, doc>: Delete.
10268         <info>: New.
10269         (ctf_target::open): Rename to ...
10270         (ctf_target_open): ... this.
10271         (_initialize_ctf): Adjust.
10272         * exec.c (exec_target_info): New.
10273         (exec_target) <shortname, longname, doc>: Delete.
10274         <info>: New.
10275         (exec_target::open): Rename to ...
10276         (exec_target_open): ... this.
10277         * gdbcore.h (core_target_open): Declare.
10278         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10279         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10280         add_inf_child_target.
10281         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10282         add_inf_child_target.
10283         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10284         add_inf_child_target.
10285         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10286         add_inf_child_target.
10287         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10288         add_inf_child_target.
10289         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10290         add_inf_child_target.
10291         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10292         add_inf_child_target.
10293         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10294         add_inf_child_target.
10295         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10296         add_inf_child_target.
10297         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10298         add_inf_child_target.
10299         * inf-child.c (inf_child_target_info): New.
10300         (inf_child_target::info): New.
10301         (inf_child_open_target): Remove 'target' parameter.  Use
10302         get_native_target instead.
10303         (inf_child_target::open): Delete.
10304         (add_inf_child_target): New.
10305         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10306         Delete.
10307         <info>: New.
10308         (add_inf_child_target): Declare.
10309         (inf_child_open_target): Declare.
10310         * linux-thread-db.c (thread_db_target_info): New.
10311         (thread_db_target) <shortname, longname, doc>: Delete.
10312         <info>: New.
10313         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10314         add_inf_child_target.
10315         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10316         add_inf_child_target.
10317         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10318         add_inf_child_target.
10319         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10320         add_inf_child_target.
10321         * make-target-delegates (print_class): Adjust.
10322         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10323         add_inf_child_target.
10324         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10325         add_inf_child_target.
10326         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10327         add_inf_child_target.
10328         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10329         add_inf_child_target.
10330         * nto-procfs.c (nto_native_target_info): New.
10331         (nto_procfs_target_native) <shortname, longname, doc>:
10332         Delete.
10333         <info>: New.
10334         (nto_procfs_target_info): New.
10335         (nto_procfs_target_procfs) <shortname, longname, doc>:
10336         Delete.
10337         <info>: New.
10338         (init_procfs_targets): Adjust.
10339         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10340         add_inf_child_target.
10341         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10342         add_inf_child_target.
10343         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10344         add_inf_child_target.
10345         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10346         add_inf_child_target.
10347         * ravenscar-thread.c (ravenscar_target_info): New.
10348         (ravenscar_thread_target) <shortname, longname, doc>:
10349         Delete.
10350         <info>: New.
10351         * record-btrace.c (record_btrace_target_info):
10352         (record_btrace_target) <shortname, longname, doc>: Delete.
10353         <info>: New.
10354         (record_btrace_target::open): Rename to ...
10355         (record_btrace_target_open): ... this.  Adjust.
10356         * record-full.c (record_longname, record_doc): New.
10357         (record_full_base_target) <shortname, longname, doc>: Delete.
10358         <info>: New.
10359         (record_full_target_info): New.
10360         (record_full_target): <shortname>: Delete.
10361         <info>: New.
10362         (record_full_core_open_1, record_full_open_1): Update comments.
10363         (record_full_base_target::open): Rename to ...
10364         (record_full_open): ... this.
10365         (cmd_record_full_restore): Update.
10366         (_initialize_record_full): Update.
10367         * remote-sim.c (remote_sim_target_info): New.
10368         (gdbsim_target) <shortname, longname, doc>: Delete.
10369         <info>: New.
10370         (gdbsim_target::open): Rename to ...
10371         (gdbsim_target_open): ... this.
10372         (_initialize_remote_sim): Adjust.
10373         * remote.c (remote_doc): New.
10374         (remote_target_info): New.
10375         (remote_target) <shortname, longname, doc>: Delete.
10376         <info>: New.
10377         (extended_remote_target_info): New.
10378         (extended_remote_target) <shortname, longname, doc>: Delete.
10379         <info>: New.
10380         (remote_target::open_1): Make static.  Adjust.
10381         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10382         * s390-linux-nat.c (_initialize_s390_nat): Use
10383         add_inf_child_target.
10384         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10385         add_inf_child_target.
10386         * sol-thread.c (thread_db_target_info): New.
10387         (sol_thread_target) <shortname, longname, doc>: Delete.
10388         <info>: New.
10389         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10390         add_inf_child_target.
10391         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10392         add_inf_child_target.
10393         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10394         add_inf_child_target.
10395         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10396         add_inf_child_target.
10397         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10398         add_inf_child_target.
10399         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10400         add_inf_child_target.
10401         * spu-linux-nat.c (_initialize_spu_nat): Use
10402         add_inf_child_target.
10403         * spu-multiarch.c (spu_multiarch_target_info): New.
10404         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10405         <info>: New.
10406         * target-delegates.c: Regenerate.
10407         * target.c: Include <unordered_map>.
10408         (target_ops_p): Delete.
10409         (DEF_VEC_P(target_ops_p)): Delete.
10410         (target_factories): New.
10411         (test_target_info): New.
10412         (test_target_ops::info): New.
10413         (open_target): Adjust to use target_factories.
10414         (add_target_with_completer): Rename to ...
10415         (add_target): ... this.  Change prototype.  Register target_info
10416         and open callback in target_factories.  Register target_info in
10417         command context instead of target_ops.
10418         (add_target): Delete old implementation.
10419         (add_deprecated_target_alias): Change prototype.  Adjust.
10420         (the_native_target): New.
10421         (set_native_target, get_native_target): New.
10422         (find_default_run_target): Use the_native_target.
10423         (find_attach_target, find_run_target): Simplify.
10424         (target_ops::open): Delete.
10425         (dummy_target_info): New.
10426         (dummy_target::shortname, dummy_target::longname)
10427         (dummy_target::doc): Delete.
10428         (dummy_target::info): New.
10429         (debug_target::shortname, debug_target::longname)
10430         (debug_target::doc): Delete.
10431         (debug_target::info): New.
10432         * target.h (struct target_info): New.
10433         (target_ops::~target_ops): Add comment.
10434         (target_ops::info): New.
10435         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10436         longer virtual.  Implement in terms of target_info.
10437         (set_native_target, get_native_target): Declare.
10438         (target_open_ftype): New.
10439         (add_target, add_target_with_completer)
10440         (add_deprecated_target_alias): Change prototype.
10441         (test_target) <shortname, longname, doc>: Delete.
10442         <info>: New.
10443         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10444         add_inf_child_target.
10445         * tracefile-tfile.c (tfile_target_info): New.
10446         (tfile_target) <shortname, longname, doc>: Delete.
10447         <info>: New.
10448         (tfile_target::open): Rename to ...
10449         (tfile_target_open): ... this.
10450         (_initialize_tracefile_tfile): Adjust.
10451         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10452         add_inf_child_target.
10453         * windows-nat.c (_initialize_windows_nat): Use
10454         add_inf_child_target.
10455         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10456         add_inf_child_target.
10457
10458 2018-05-02  Pedro Alves  <palves@redhat.com>
10459
10460         * linux-nat.h (linux_nat_target) <low_new_thread,
10461         low_delete_thread, low_new_fork, low_forget_process,
10462         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10463         New virtual methods.
10464         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10465         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10466         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10467         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10468         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10469         Delete.
10470         * linux-fork.c (delete_fork): Adjust to call low method.
10471         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10472         (linux_nat_new_fork, linux_nat_forget_process_hook)
10473         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10474         (linux_nat_status_is_event):
10475         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10476         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10477         to call low method.
10478         (sigtrap_is_event): Rename to ...
10479         (linux_nat_target::low_status_is_event): ... this.
10480         (linux_nat_set_status_is_event): Delete.
10481         (save_stop_reason, linux_nat_wait_1)
10482         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10483         low methods.
10484         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10485         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10486         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10487         (linux_nat_set_prepare_to_resume): Delete.
10488         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10489         low virtual methods.
10490         * amd64-linux-nat.c: Likewise.
10491         * arm-linux-nat.c: Likewise.
10492         * i386-linux-nat.c: Likewise.
10493         * ia64-linux-nat.c: Likewise.
10494         * mips-linux-nat.c: Likewise.
10495         * ppc-linux-nat.c: Likewise.
10496         * s390-linux-nat.c: Likewise.
10497         * sparc64-linux-nat.c: Likewise.
10498         * x86-linux-nat.c: Likewise.
10499         * x86-linux-nat.h: Include "nat/x86-linux.h".
10500         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10501         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10502         Override methods.
10503
10504 2018-05-02  Pedro Alves  <palves@redhat.com>
10505
10506         * target.h (target_ops)
10507         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10508         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10509         stopped_by_watchpoint, have_continuable_watchpoint,
10510         stopped_data_address, watchpoint_addr_within_range,
10511         can_accel_watchpoint_condition, can_run, thread_alive,
10512         has_all_memory, has_memory, has_stack, has_registers,
10513         has_execution, can_async_p, is_async_p, supports_non_stop,
10514         always_non_stop_p, can_execute_reverse, supports_multi_process,
10515         supports_enable_disable_tracepoint,
10516         supports_disable_randomization, supports_string_tracing,
10517         supports_evaluation_of_breakpoint_conditions,
10518         can_run_breakpoint_commands, filesystem_is_local,
10519         can_download_tracepoint, get_trace_state_variable_value,
10520         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10521         record_is_replaying, record_will_replay,
10522         augmented_libraries_svr4_read>: Adjust to return bool.
10523         * aarch64-linux-nat.c: All implementations adjusted.
10524         * aix-thread.c: All implementations adjusted.
10525         * arm-linux-nat.c: All implementations adjusted.
10526         * breakpoint.c: All implementations adjusted.
10527         * bsd-kvm.c: All implementations adjusted.
10528         * bsd-uthread.c: All implementations adjusted.
10529         * corelow.c: All implementations adjusted.
10530         * ctf.c: All implementations adjusted.
10531         * darwin-nat.c: All implementations adjusted.
10532         * darwin-nat.h: All implementations adjusted.
10533         * exec.c: All implementations adjusted.
10534         * fbsd-nat.c: All implementations adjusted.
10535         * fbsd-nat.h: All implementations adjusted.
10536         * gnu-nat.c: All implementations adjusted.
10537         * gnu-nat.h: All implementations adjusted.
10538         * go32-nat.c: All implementations adjusted.
10539         * ia64-linux-nat.c: All implementations adjusted.
10540         * inf-child.c: All implementations adjusted.
10541         * inf-child.h: All implementations adjusted.
10542         * inf-ptrace.c: All implementations adjusted.
10543         * inf-ptrace.h: All implementations adjusted.
10544         * linux-nat.c: All implementations adjusted.
10545         * linux-nat.h: All implementations adjusted.
10546         * mips-linux-nat.c: All implementations adjusted.
10547         * nto-procfs.c: All implementations adjusted.
10548         * ppc-linux-nat.c: All implementations adjusted.
10549         * procfs.c: All implementations adjusted.
10550         * ravenscar-thread.c: All implementations adjusted.
10551         * record-btrace.c: All implementations adjusted.
10552         * record-full.c: All implementations adjusted.
10553         * remote-sim.c: All implementations adjusted.
10554         * remote.c: All implementations adjusted.
10555         * s390-linux-nat.c: All implementations adjusted.
10556         * sol-thread.c: All implementations adjusted.
10557         * spu-multiarch.c: All implementations adjusted.
10558         * target-delegates.c: All implementations adjusted.
10559         * target.c: All implementations adjusted.
10560         * target.h: All implementations adjusted.
10561         * tracefile-tfile.c: All implementations adjusted.
10562         * tracefile.c: All implementations adjusted.
10563         * tracefile.h: All implementations adjusted.
10564         * windows-nat.c: All implementations adjusted.
10565         * x86-linux-nat.h: All implementations adjusted.
10566         * x86-nat.h: All implementations adjusted.
10567
10568 2018-05-02  Pedro Alves  <palves@redhat.com>
10569
10570         * make-target-delegates (scan_target_h): Don't trim lines here.
10571         Replace sequences of tabs and/or whitespace with a single
10572         whitespace.
10573         (top level, parsing methods): Trim each line before processing it
10574         here.
10575
10576 2018-05-02  Pedro Alves  <palves@redhat.com>
10577             John Baldwin  <jhb@freebsd.org>
10578
10579         * target.h (enum strata) <debug_stratum>: New.
10580         (struct target_ops) <all delegation methods>: Replace by C++
10581         virtual methods, and drop "to_" prefix.  All references updated
10582         throughout.
10583         <to_shortname, to_longname, to_doc, to_data,
10584         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10585         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10586         virtual methods.  All references updated throughout.
10587         <can_attach, supports_terminal_ours, can_create_inferior,
10588         get_thread_control_capabilities, attach_no_wait>: New
10589         virtual methods.
10590         <insert_breakpoint, remove_breakpoint>: Now
10591         TARGET_DEFAULT_NORETURN methods.
10592         <info_proc>: Now returns bool.
10593         <to_magic>: Delete.
10594         (OPS_MAGIC): Delete.
10595         (current_target): Delete.  All references replaced by references
10596         to ...
10597         (target_stack): ... this.  New.
10598         (target_shortname, target_longname): Adjust.
10599         (target_can_run): Now a function declaration.
10600         (default_child_has_all_memory, default_child_has_memory)
10601         (default_child_has_stack, default_child_has_registers)
10602         (default_child_has_execution): Remove target_ops parameter.
10603         (complete_target_initialization): Delete.
10604         (memory_breakpoint_target): New template class.
10605         (test_target_ops): Refactor as a C++ class with virtual methods.
10606         * make-target-delegates (NAME_PART): Tighten.
10607         (POINTER_PART, CP_SYMBOL): New.
10608         (SIMPLE_RETURN_PART): Reimplement.
10609         (VEC_RETURN_PART): Expect less.
10610         (RETURN_PART, VIRTUAL_PART): New.
10611         (METHOD): Adjust to C++ virtual methods.
10612         (scan_target_h): Remove reference to C99.
10613         (dname): Output "target_ops::" prefix.
10614         (write_function_header): Adjust to output a C++ class method.
10615         (write_declaration): New.
10616         (write_delegator): Adjust to output a C++ class method.
10617         (tdname): Output "dummy_target::" prefix.
10618         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10619         method.
10620         (tdefault_names, debug_names): Delete.
10621         (return_types, tdefaults, styles, argtypes_array): New.
10622         (top level): All methods are delegators.
10623         (print_class): New.
10624         (top level): Print dummy_target and debug_target classes.
10625         * target-delegates.c: Regenerate.
10626         * target-debug.h (target_debug_print_enum_info_proc_what)
10627         (target_debug_print_thread_control_capabilities)
10628         (target_debug_print_thread_info_p): New.
10629         * target.c (dummy_target): Delete.
10630         (the_dummy_target, the_debug_target): New.
10631         (target_stack): Now extern.
10632         (set_targetdebug): Push/unpush debug target.
10633         (default_child_has_all_memory, default_child_has_memory)
10634         (default_child_has_stack, default_child_has_registers)
10635         (default_child_has_execution): Remove target_ops parameter.
10636         (complete_target_initialization): Delete.
10637         (add_target_with_completer): No longer call
10638         complete_target_initialization.
10639         (target_supports_terminal_ours): Use regular delegation.
10640         (update_current_target): Delete.
10641         (push_target): No longer check magic number.  Don't call
10642         update_current_target.
10643         (unpush_target): Don't call update_current_target.
10644         (target_is_pushed): No longer check magic number.
10645         (target_require_runnable): Skip for all stratums over
10646         process_stratum.
10647         (target_ops::info_proc): New.
10648         (target_info_proc): Use find_target_at and
10649         find_default_run_target.
10650         (target_supports_disable_randomization): Use regular delegation.
10651         (target_get_osdata): Use find_target_at.
10652         (target_ops::open, target_ops::close, target_ops::can_attach)
10653         (target_ops::attach, target_ops::can_create_inferior)
10654         (target_ops::create_inferior, target_ops::can_run)
10655         (target_can_run): New.
10656         (default_fileio_target): Use regular delegation.
10657         (target_ops::fileio_open, target_ops::fileio_pwrite)
10658         (target_ops::fileio_pread, target_ops::fileio_fstat)
10659         (target_ops::fileio_close, target_ops::fileio_unlink)
10660         (target_ops::fileio_readlink): New.
10661         (target_fileio_open_1, target_fileio_unlink)
10662         (target_fileio_readlink): Always call the target method.  Handle
10663         FILEIO_ENOSYS.
10664         (return_zero, return_zero_has_execution): Delete.
10665         (init_dummy_target): Delete.
10666         (dummy_target::dummy_target, dummy_target::shortname)
10667         (dummy_target::longname, dummy_target::doc)
10668         (debug_target::debug_target, debug_target::shortname)
10669         (debug_target::longname, debug_target::doc): New.
10670         (target_supports_delete_record): Use regular delegation.
10671         (setup_target_debug): Delete.
10672         (maintenance_print_target_stack): Skip debug_stratum.
10673         (initialize_targets): Instantiate the_dummy_target and
10674         the_debug_target.
10675         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10676         use target_stack.
10677         (target_auxv_search, fprint_target_auxv): Adjust.
10678         (info_auxv_command): Adjust to use target_stack.
10679         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10680         * exceptions.c (print_flush): Handle a NULL target_stack.
10681         * regcache.c (target_ops_no_register): Refactor as class with
10682         virtual methods.
10683
10684         * exec.c (exec_target): New class.
10685         (exec_ops): Now an exec_target.
10686         (exec_open, exec_close_1, exec_get_section_table)
10687         (exec_xfer_partial, exec_files_info, exec_has_memory)
10688         (exec_make_note_section): Refactor as exec_target methods.
10689         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10690         Delete.
10691         (exec_target::find_memory_regions): New.
10692         (_initialize_exec): Don't call init_exec_ops.
10693         * gdbcore.h (exec_file_clear): Delete.
10694
10695         * corefile.c (core_target): Delete.
10696         (core_file_command): Adjust.
10697         * corelow.c (core_target): New class.
10698         (the_core_target): New.
10699         (core_close): Remove target_ops parameter.
10700         (core_close_cleanup): Adjust.
10701         (core_target::close): New.
10702         (core_open, core_detach, get_core_registers, core_files_info)
10703         (core_xfer_partial, core_thread_alive, core_read_description)
10704         (core_pid_to_str, core_thread_name, core_has_memory)
10705         (core_has_stack, core_has_registers, core_info_proc): Rework as
10706         core_target methods.
10707         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10708         (_initialize_corelow): Initialize the_core_target.
10709         * gdbcore.h (core_target): Delete.
10710         (the_core_target): New.
10711
10712         * ctf.c: (ctf_target): New class.
10713         (ctf_ops): Now a ctf_target.
10714         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10715         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10716         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10717         methods.
10718         (init_ctf_ops): Delete.
10719         (_initialize_ctf): Don't call it.
10720         * tracefile-tfile.c (tfile_target): New class.
10721         (tfile_ops): Now a tfile_target.
10722         (tfile_open, tfile_close, tfile_files_info)
10723         (tfile_get_tracepoint_status, tfile_trace_find)
10724         (tfile_fetch_registers, tfile_xfer_partial)
10725         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10726         Refactor as tfile_target methods.
10727         (tfile_xfer_partial_features): Remove target_ops parameter.
10728         (init_tfile_ops): Delete.
10729         (_initialize_tracefile_tfile): Don't call it.
10730         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10731         (tracefile_has_stack, tracefile_has_registers)
10732         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10733         tracefile_target methods.
10734         (init_tracefile_ops): Delete.
10735         (tracefile_target::tracefile_target): New.
10736         * tracefile.h: Include "target.h".
10737         (tracefile_target): New class.
10738         (init_tracefile_ops): Delete.
10739
10740         * spu-multiarch.c (spu_multiarch_target): New class.
10741         (spu_ops): Now a spu_multiarch_target.
10742         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10743         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10744         (spu_search_memory, spu_mourn_inferior): Refactor as
10745         spu_multiarch_target methods.
10746         (init_spu_ops): Delete.
10747         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10748         complete_target_initialization.
10749
10750         * ravenscar-thread.c (ravenscar_thread_target): New class.
10751         (ravenscar_ops): Now a ravenscar_thread_target.
10752         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10753         (ravenscar_thread_alive, ravenscar_pid_to_str)
10754         (ravenscar_fetch_registers, ravenscar_store_registers)
10755         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10756         (ravenscar_stopped_by_hw_breakpoint)
10757         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10758         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10759         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10760         methods.
10761         (init_ravenscar_thread_ops): Delete.
10762         (_initialize_ravenscar): Remove references to
10763         init_ravenscar_thread_ops and complete_target_initialization.
10764
10765         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10766         (bsd_uthread_target): New class.
10767         (bsd_uthread_ops): Now a bsd_uthread_target.
10768         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10769         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10770         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10771         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10772         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10773         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10774         (bsd_uthread_target): Delete function.
10775         (_initialize_bsd_uthread): Remove reference to
10776         complete_target_initialization.
10777
10778         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10779         (target_bfd): ... this new class.
10780         (target_bfd_xfer_partial, target_bfd_get_section_table)
10781         (target_bfd_close): Refactor as target_bfd methods.
10782         (target_bfd::~target_bfd): New.
10783         (target_bfd_reopen): Adjust.
10784         (target_bfd::close): New.
10785
10786         * record-btrace.c (record_btrace_target): New class.
10787         (record_btrace_ops): Now a record_btrace_target.
10788         (record_btrace_open, record_btrace_stop_recording)
10789         (record_btrace_disconnect, record_btrace_close)
10790         (record_btrace_async, record_btrace_info)
10791         (record_btrace_insn_history, record_btrace_insn_history_range)
10792         (record_btrace_insn_history_from, record_btrace_call_history)
10793         (record_btrace_call_history_range)
10794         (record_btrace_call_history_from, record_btrace_record_method)
10795         (record_btrace_is_replaying, record_btrace_will_replay)
10796         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10797         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10798         (record_btrace_store_registers, record_btrace_prepare_to_store)
10799         (record_btrace_to_get_unwinder)
10800         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10801         (record_btrace_commit_resume, record_btrace_wait)
10802         (record_btrace_stop, record_btrace_can_execute_reverse)
10803         (record_btrace_stopped_by_sw_breakpoint)
10804         (record_btrace_supports_stopped_by_sw_breakpoint)
10805         (record_btrace_stopped_by_hw_breakpoint)
10806         (record_btrace_supports_stopped_by_hw_breakpoint)
10807         (record_btrace_update_thread_list, record_btrace_thread_alive)
10808         (record_btrace_goto_begin, record_btrace_goto_end)
10809         (record_btrace_goto, record_btrace_stop_replaying_all)
10810         (record_btrace_execution_direction)
10811         (record_btrace_prepare_to_generate_core)
10812         (record_btrace_done_generating_core): Refactor as
10813         record_btrace_target methods.
10814         (init_record_btrace_ops): Delete.
10815         (_initialize_record_btrace): Remove reference to
10816         init_record_btrace_ops.
10817         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10818         the execution_direction global.
10819         (record_full_base_target, record_full_target)
10820         (record_full_core_target): New classes.
10821         (record_full_ops): Now a record_full_target.
10822         (record_full_core_ops): Now a record_full_core_target.
10823         (record_full_target::detach, record_full_target::disconnect)
10824         (record_full_core_target::disconnect)
10825         (record_full_target::mourn_inferior, record_full_target::kill):
10826         New.
10827         (record_full_open, record_full_close, record_full_async): Refactor
10828         as methods of the record_full_base_target class.
10829         (record_full_resume, record_full_commit_resume): Refactor
10830         as methods of the record_full_target class.
10831         (record_full_wait, record_full_stopped_by_watchpoint)
10832         (record_full_stopped_data_address)
10833         (record_full_stopped_by_sw_breakpoint)
10834         (record_full_supports_stopped_by_sw_breakpoint)
10835         (record_full_stopped_by_hw_breakpoint)
10836         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10837         methods of the record_full_base_target class.
10838         (record_full_store_registers, record_full_xfer_partial)
10839         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10840         Refactor as methods of the record_full_target class.
10841         (record_full_can_execute_reverse, record_full_get_bookmark)
10842         (record_full_goto_bookmark, record_full_execution_direction)
10843         (record_full_record_method, record_full_info, record_full_delete)
10844         (record_full_is_replaying, record_full_will_replay)
10845         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10846         (record_full_stop_replaying): Refactor as methods of the
10847         record_full_base_target class.
10848         (record_full_core_resume, record_full_core_kill)
10849         (record_full_core_fetch_registers)
10850         (record_full_core_prepare_to_store)
10851         (record_full_core_store_registers, record_full_core_xfer_partial)
10852         (record_full_core_insert_breakpoint)
10853         (record_full_core_remove_breakpoint)
10854         (record_full_core_has_execution): Refactor
10855         as methods of the record_full_core_target class.
10856         (record_full_base_target::supports_delete_record): New.
10857         (init_record_full_ops): Delete.
10858         (init_record_full_core_ops): Delete.
10859         (record_full_save): Refactor as method of the
10860         record_full_base_target class.
10861         (_initialize_record_full): Remove references to
10862         init_record_full_ops and init_record_full_core_ops.
10863
10864         * remote.c (remote_target, extended_remote_target): New classes.
10865         (remote_ops): Now a remote_target.
10866         (extended_remote_ops): Now an extended_remote_target.
10867         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10868         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10869         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10870         (remote_pass_signals, remote_set_syscall_catchpoint)
10871         (remote_program_signals, )
10872         (remote_thread_always_alive): Remove target_ops parameter.
10873         (remote_thread_alive, remote_thread_name)
10874         (remote_update_thread_list, remote_threads_extra_info)
10875         (remote_static_tracepoint_marker_at)
10876         (remote_static_tracepoint_markers_by_strid)
10877         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10878         (remote_open): Refactor as methods of remote_target.
10879         (extended_remote_open, extended_remote_detach)
10880         (extended_remote_attach, extended_remote_post_attach):
10881         (extended_remote_supports_disable_randomization)
10882         (extended_remote_create_inferior): : Refactor as method of
10883         extended_remote_target.
10884         (remote_set_permissions, remote_open_1, remote_detach)
10885         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10886         (remote_resume, remote_commit_resume, remote_stop)
10887         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10888         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10889         (remote_prepare_to_store, remote_store_registers)
10890         (remote_flash_erase, remote_flash_done, remote_files_info)
10891         (remote_kill, remote_mourn, remote_insert_breakpoint)
10892         (remote_remove_breakpoint, remote_insert_watchpoint)
10893         (remote_watchpoint_addr_within_range)
10894         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10895         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10896         (remote_supports_stopped_by_sw_breakpoint)
10897         (remote_stopped_by_hw_breakpoint)
10898         (remote_supports_stopped_by_hw_breakpoint)
10899         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10900         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10901         (remote_verify_memory): Refactor as methods of remote_target.
10902         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10903         parameter.
10904         (remote_xfer_partial, remote_get_memory_xfer_limit)
10905         (remote_search_memory, remote_rcmd, remote_memory_map)
10906         (remote_pid_to_str, remote_get_thread_local_address)
10907         (remote_get_tib_address, remote_read_description): Refactor as
10908         methods of remote_target.
10909         (remote_target::fileio_open, remote_target::fileio_pwrite)
10910         (remote_target::fileio_pread, remote_target::fileio_close): New.
10911         (remote_hostio_readlink, remote_hostio_fstat)
10912         (remote_filesystem_is_local, remote_can_execute_reverse)
10913         (remote_supports_non_stop, remote_supports_disable_randomization)
10914         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10915         (remote_supports_enable_disable_tracepoint)
10916         (remote_supports_string_tracing)
10917         (remote_can_run_breakpoint_commands, remote_trace_init)
10918         (remote_download_tracepoint, remote_can_download_tracepoint)
10919         (remote_download_trace_state_variable, remote_enable_tracepoint)
10920         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10921         (remote_trace_start, remote_get_trace_status)
10922         (remote_get_tracepoint_status, remote_trace_stop)
10923         (remote_trace_find, remote_get_trace_state_variable_value)
10924         (remote_save_trace_data, remote_get_raw_trace_data)
10925         (remote_set_disconnected_tracing, remote_core_of_thread)
10926         (remote_set_circular_trace_buffer, remote_traceframe_info)
10927         (remote_get_min_fast_tracepoint_insn_len)
10928         (remote_set_trace_buffer_size, remote_set_trace_notes)
10929         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10930         (remote_disable_btrace, remote_teardown_btrace)
10931         (remote_read_btrace, remote_btrace_conf)
10932         (remote_augmented_libraries_svr4_read, remote_load)
10933         (remote_pid_to_exec_file, remote_can_do_single_step)
10934         (remote_execution_direction, remote_thread_handle_to_thread_info):
10935         Refactor as methods of remote_target.
10936         (init_remote_ops, init_extended_remote_ops): Delete.
10937         (remote_can_async_p, remote_is_async_p, remote_async)
10938         (remote_thread_events, remote_upload_tracepoints)
10939         (remote_upload_trace_state_variables): Refactor as methods of
10940         remote_target.
10941         (_initialize_remote): Remove references to init_remote_ops and
10942         init_extended_remote_ops.
10943
10944         * remote-sim.c (gdbsim_target): New class.
10945         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10946         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10947         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10948         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10949         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10950         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10951         Refactor as methods of gdbsim_target.
10952         (gdbsim_ops): Now a gdbsim_target.
10953         (init_gdbsim_ops): Delete.
10954         (gdbsim_cntrl_c): Adjust.
10955         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10956
10957         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10958         (the_amd64_linux_nat_target): New.
10959         (amd64_linux_fetch_inferior_registers)
10960         (amd64_linux_store_inferior_registers): Refactor as methods of
10961         amd64_linux_nat_target.
10962         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10963         * i386-linux-nat.c: Don't include "linux-nat.h".
10964         (i386_linux_nat_target): New class.
10965         (the_i386_linux_nat_target): New.
10966         (i386_linux_fetch_inferior_registers)
10967         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10968         as methods of i386_linux_nat_target.
10969         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10970         * inf-child.c (inf_child_ops): Delete.
10971         (inf_child_fetch_inferior_registers)
10972         (inf_child_store_inferior_registers): Delete.
10973         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10974         methods of inf_child_target.
10975         (inf_child_target::supports_terminal_ours)
10976         (inf_child_target::terminal_init)
10977         (inf_child_target::terminal_inferior)
10978         (inf_child_target::terminal_ours_for_output)
10979         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10980         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10981         New.
10982         (inf_child_open, inf_child_disconnect, inf_child_close)
10983         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10984         (inf_child_post_startup_inferior, inf_child_can_run)
10985         (inf_child_pid_to_exec_file): Refactor as methods of
10986         inf_child_target.
10987         (inf_child_follow_fork): Delete.
10988         (inf_child_target::can_create_inferior)
10989         (inf_child_target::can_attach): New.
10990         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10991         (inf_child_target::has_stack, inf_child_target::has_registers)
10992         (inf_child_target::has_execution): New.
10993         (inf_child_fileio_open, inf_child_fileio_pwrite)
10994         (inf_child_fileio_pread, inf_child_fileio_fstat)
10995         (inf_child_fileio_close, inf_child_fileio_unlink)
10996         (inf_child_fileio_readlink, inf_child_use_agent)
10997         (inf_child_can_use_agent): Refactor as methods of
10998         inf_child_target.
10999         (return_zero, inf_child_target): Delete.
11000         (inf_child_target::inf_child_target): New.
11001         * inf-child.h: Include "target.h".
11002         (inf_child_target): Delete function prototype.
11003         (inf_child_target): New class.
11004         (inf_child_open_target, inf_child_mourn_inferior)
11005         (inf_child_maybe_unpush_target): Delete.
11006         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
11007         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
11008         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
11009         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
11010         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
11011         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
11012         (inf_ptrace_wait, inf_ptrace_xfer_partial)
11013         (inf_ptrace_thread_alive, inf_ptrace_files_info)
11014         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
11015         methods of inf_ptrace_target.
11016         (inf_ptrace_target): Delete function.
11017         * inf-ptrace.h: Include "inf-child.h".
11018         (inf_ptrace_target): Delete function declaration.
11019         (inf_ptrace_target): New class.
11020         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
11021         * linux-nat.c (linux_target): New.
11022         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
11023         (linux_nat_target::~linux_nat_target): New.
11024         (linux_child_post_attach, linux_child_post_startup_inferior)
11025         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
11026         (linux_child_remove_fork_catchpoint)
11027         (linux_child_insert_vfork_catchpoint)
11028         (linux_child_remove_vfork_catchpoint)
11029         (linux_child_insert_exec_catchpoint)
11030         (linux_child_remove_exec_catchpoint)
11031         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
11032         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
11033         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
11034         (linux_nat_stopped_data_address)
11035         (linux_nat_stopped_by_sw_breakpoint)
11036         (linux_nat_supports_stopped_by_sw_breakpoint)
11037         (linux_nat_stopped_by_hw_breakpoint)
11038         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
11039         (linux_nat_kill, linux_nat_mourn_inferior)
11040         (linux_nat_xfer_partial, linux_nat_thread_alive)
11041         (linux_nat_update_thread_list, linux_nat_pid_to_str)
11042         (linux_nat_thread_name, linux_child_pid_to_exec_file)
11043         (linux_child_static_tracepoint_markers_by_strid)
11044         (linux_nat_is_async_p, linux_nat_can_async_p)
11045         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
11046         (linux_nat_supports_multi_process)
11047         (linux_nat_supports_disable_randomization, linux_nat_async)
11048         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
11049         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
11050         (linux_nat_fileio_open, linux_nat_fileio_readlink)
11051         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
11052         methods of linux_nat_target.
11053         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
11054         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
11055         parameter.
11056         (check_stopped_by_watchpoint): Adjust.
11057         (linux_xfer_partial): Delete.
11058         (linux_target_install_ops, linux_target, linux_nat_add_target):
11059         Delete.
11060         (linux_nat_target::linux_nat_target): New.
11061         * linux-nat.h: Include "inf-ptrace.h".
11062         (linux_nat_target): New.
11063         (linux_target, linux_target_install_ops, linux_nat_add_target):
11064         Delete function declarations.
11065         (linux_target): Declare global.
11066         * linux-thread-db.c (thread_db_target): New.
11067         (thread_db_target::thread_db_target): New.
11068         (thread_db_ops): Delete.
11069         (the_thread_db_target): New.
11070         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
11071         (thread_db_update_thread_list, thread_db_pid_to_str)
11072         (thread_db_extra_thread_info)
11073         (thread_db_thread_handle_to_thread_info)
11074         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
11075         (thread_db_resume): Refactor as methods of thread_db_target.
11076         (init_thread_db_ops): Delete.
11077         (_initialize_thread_db): Remove reference to init_thread_db_ops.
11078         * x86-linux-nat.c: Don't include "linux-nat.h".
11079         (super_post_startup_inferior): Delete.
11080         (x86_linux_nat_target::~x86_linux_nat_target): New.
11081         (x86_linux_child_post_startup_inferior)
11082         (x86_linux_read_description, x86_linux_enable_btrace)
11083         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11084         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11085         methods of x86_linux_nat_target.
11086         (x86_linux_create_target): Delete.  Bits folded ...
11087         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11088         pointer.
11089         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11090         (x86_linux_nat_target): New class.
11091         (x86_linux_create_target): Delete.
11092         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11093         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11094         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11095         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11096         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11097         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11098         make extern.
11099         (x86_use_watchpoints): Delete.
11100         * x86-nat.h: Include "breakpoint.h" and "target.h".
11101         (x86_use_watchpoints): Delete.
11102         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11103         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11104         (x86_insert_watchpoint, x86_remove_watchpoint)
11105         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11106         (x86_stopped_by_hw_breakpoint): New declarations.
11107         (x86_nat_target): New template class.
11108
11109         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11110         (the_ppc_linux_nat_target): New.
11111         (ppc_linux_fetch_inferior_registers)
11112         (ppc_linux_can_use_hw_breakpoint)
11113         (ppc_linux_region_ok_for_hw_watchpoint)
11114         (ppc_linux_ranged_break_num_registers)
11115         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11116         (ppc_linux_insert_mask_watchpoint)
11117         (ppc_linux_remove_mask_watchpoint)
11118         (ppc_linux_can_accel_watchpoint_condition)
11119         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11120         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11121         (ppc_linux_watchpoint_addr_within_range)
11122         (ppc_linux_masked_watch_num_registers)
11123         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11124         (ppc_linux_read_description): Refactor as methods of
11125         ppc_linux_nat_target.
11126         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11127
11128         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11129         (procfs_target): New class.
11130         (the_procfs_target): New.
11131         (procfs_target): Delete function.
11132         (procfs_auxv_parse, procfs_attach, procfs_detach)
11133         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11134         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11135         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11136         (procfs_create_inferior, procfs_update_thread_list)
11137         (procfs_thread_alive, procfs_pid_to_str)
11138         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11139         (procfs_stopped_data_address, procfs_insert_watchpoint)
11140         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11141         (proc_find_memory_regions, procfs_info_proc)
11142         (procfs_make_note_section): Refactor as methods of procfs_target.
11143         (_initialize_procfs): Adjust.
11144         * sol-thread.c (sol_thread_target): New class.
11145         (sol_thread_ops): Now a sol_thread_target.
11146         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11147         (sol_thread_fetch_registers, sol_thread_store_registers)
11148         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11149         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11150         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11151         (init_sol_thread_ops): Delete.
11152         (_initialize_sol_thread): Adjust.  Remove references to
11153         init_sol_thread_ops and complete_target_initialization.
11154
11155         * windows-nat.c (windows_nat_target): New class.
11156         (windows_fetch_inferior_registers)
11157         (windows_store_inferior_registers, windows_resume, windows_wait)
11158         (windows_attach, windows_detach, windows_pid_to_exec_file)
11159         (windows_files_info, windows_create_inferior)
11160         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11161         (windows_close, windows_pid_to_str, windows_xfer_partial)
11162         (windows_get_tib_address, windows_get_ada_task_ptid)
11163         (windows_thread_name, windows_thread_alive): Refactor as
11164         windows_nat_target methods.
11165         (do_initial_windows_stuff): Adjust.
11166         (windows_target): Delete function.
11167         (_initialize_windows_nat): Adjust.
11168
11169         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11170         (darwin_mourn_inferior, darwin_kill_inferior)
11171         (darwin_create_inferior, darwin_attach, darwin_detach)
11172         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11173         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11174         (darwin_supports_multi_process): Refactor as darwin_nat_target
11175         methods.
11176         (darwin_resume_to, darwin_files_info): Delete.
11177         (_initialize_darwin_inferior): Rename to ...
11178         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11179         * darwin-nat.h: Include "inf-child.h".
11180         (darwin_nat_target): New class.
11181         (darwin_complete_target): Delete.
11182         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11183         (darwin_target): New.
11184         (i386_darwin_fetch_inferior_registers)
11185         (i386_darwin_store_inferior_registers): Refactor as methods of
11186         darwin_nat_target.
11187         (darwin_complete_target): Delete, with ...
11188         (_initialize_i386_darwin_nat): ... bits factored out here.
11189
11190         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11191         (the_alpha_linux_nat_target): New.
11192         (alpha_linux_register_u_offset): Refactor as
11193         alpha_linux_nat_target method.
11194         (_initialize_alpha_linux_nat): Adjust.
11195         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11196         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11197         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11198         methods of linux_nat_trad_target.
11199         (linux_trad_target): Delete.
11200         * linux-nat-trad.h (linux_trad_target): Delete function.
11201         (linux_nat_trad_target): New class.
11202         * mips-linux-nat.c (mips_linux_nat_target): New class.
11203         (super_fetch_registers, super_store_registers, super_close):
11204         Delete.
11205         (the_mips_linux_nat_target): New.
11206         (mips64_linux_regsets_fetch_registers)
11207         (mips64_linux_regsets_store_registers)
11208         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11209         (mips_linux_register_u_offset, mips_linux_read_description)
11210         (mips_linux_can_use_hw_breakpoint)
11211         (mips_linux_stopped_by_watchpoint)
11212         (mips_linux_stopped_data_address)
11213         (mips_linux_region_ok_for_hw_watchpoint)
11214         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11215         (mips_linux_close): Refactor as methods of mips_linux_nat.
11216         (_initialize_mips_linux_nat): Adjust to C++ification.
11217
11218         * aix-thread.c (aix_thread_target): New class.
11219         (aix_thread_ops): Now an aix_thread_target.
11220         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11221         (aix_thread_fetch_registers, aix_thread_store_registers)
11222         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11223         (aix_thread_thread_alive, aix_thread_pid_to_str)
11224         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11225         Refactor as methods of aix_thread_target.
11226         (init_aix_thread_ops): Delete.
11227         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11228         and complete_target_initialization.
11229         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11230         (rs6000_nat_target): New class.
11231         (the_rs6000_nat_target): New.
11232         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11233         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11234         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11235         (super_create_inferior): Delete.
11236         (_initialize_rs6000_nat): Adjust to C++ification.
11237
11238         * arm-linux-nat.c (arm_linux_nat_target): New class.
11239         (the_arm_linux_nat_target): New.
11240         (arm_linux_fetch_inferior_registers)
11241         (arm_linux_store_inferior_registers, arm_linux_read_description)
11242         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11243         (arm_linux_remove_hw_breakpoint)
11244         (arm_linux_region_ok_for_hw_watchpoint)
11245         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11246         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11247         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11248         arm_linux_nat_target.
11249         (_initialize_arm_linux_nat): Adjust to C++ification.
11250
11251         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11252         (the_aarch64_linux_nat_target): New.
11253         (aarch64_linux_fetch_inferior_registers)
11254         (aarch64_linux_store_inferior_registers)
11255         (aarch64_linux_child_post_startup_inferior)
11256         (aarch64_linux_read_description)
11257         (aarch64_linux_can_use_hw_breakpoint)
11258         (aarch64_linux_insert_hw_breakpoint)
11259         (aarch64_linux_remove_hw_breakpoint)
11260         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11261         (aarch64_linux_region_ok_for_hw_watchpoint)
11262         (aarch64_linux_stopped_data_address)
11263         (aarch64_linux_stopped_by_watchpoint)
11264         (aarch64_linux_watchpoint_addr_within_range)
11265         (aarch64_linux_can_do_single_step): Refactor as methods of
11266         aarch64_linux_nat_target.
11267         (super_post_startup_inferior): Delete.
11268         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11269
11270         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11271         (the_hppa_linux_nat_target): New.
11272         (hppa_linux_fetch_inferior_registers)
11273         (hppa_linux_store_inferior_registers): Refactor as methods of
11274         hppa_linux_nat_target.
11275         (_initialize_hppa_linux_nat): Adjust to C++ification.
11276
11277         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11278         (the_ia64_linux_nat_target): New.
11279         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11280         (ia64_linux_stopped_data_address)
11281         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11282         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11283         ia64_linux_nat_target methods.
11284         (super_xfer_partial): Delete.
11285         (_initialize_ia64_linux_nat): Adjust to C++ification.
11286
11287         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11288         (the_m32r_linux_nat_target): New.
11289         (m32r_linux_fetch_inferior_registers)
11290         (m32r_linux_store_inferior_registers): Refactor as
11291         m32r_linux_nat_target methods.
11292         (_initialize_m32r_linux_nat): Adjust to C++ification.
11293
11294         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11295         (the_m68k_linux_nat_target): New.
11296         (m68k_linux_fetch_inferior_registers)
11297         (m68k_linux_store_inferior_registers): Refactor as
11298         m68k_linux_nat_target methods.
11299         (_initialize_m68k_linux_nat): Adjust to C++ification.
11300
11301         * s390-linux-nat.c (s390_linux_nat_target): New class.
11302         (the_s390_linux_nat_target): New.
11303         (s390_linux_fetch_inferior_registers)
11304         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11305         (s390_insert_watchpoint, s390_remove_watchpoint)
11306         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11307         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11308         (s390_auxv_parse, s390_read_description): Refactor as methods of
11309         s390_linux_nat_target.
11310         (_initialize_s390_nat): Adjust to C++ification.
11311
11312         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11313         (the_sparc_linux_nat_target): New.
11314         (_initialize_sparc_linux_nat): Adjust to C++ification.
11315         * sparc-nat.c (sparc_fetch_inferior_registers)
11316         (sparc_store_inferior_registers): Remove target_ops parameter.
11317         * sparc-nat.h (sparc_fetch_inferior_registers)
11318         (sparc_store_inferior_registers): Remove target_ops parameter.
11319         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11320         (the_sparc64_linux_nat_target): New.
11321         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11322
11323         * spu-linux-nat.c (spu_linux_nat_target): New class.
11324         (the_spu_linux_nat_target): New.
11325         (spu_child_post_startup_inferior, spu_child_post_attach)
11326         (spu_child_wait, spu_fetch_inferior_registers)
11327         (spu_store_inferior_registers, spu_xfer_partial)
11328         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11329         methods.
11330         (_initialize_spu_nat): Adjust to C++ification.
11331
11332         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11333         (the_tilegx_linux_nat_target): New.
11334         (fetch_inferior_registers, store_inferior_registers):
11335         Refactor as methods.
11336         (_initialize_tile_linux_nat): Adjust to C++ification.
11337
11338         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11339         (the_xtensa_linux_nat_target): New.
11340         (xtensa_linux_fetch_inferior_registers)
11341         (xtensa_linux_store_inferior_registers): Refactor as
11342         xtensa_linux_nat_target methods.
11343         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11344
11345         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11346         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11347         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11348         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11349         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11350         (fbsd_stopped_by_sw_breakpoint)
11351         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11352         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11353         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11354         (fbsd_post_startup_inferior, fbsd_post_attach)
11355         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11356         (fbsd_set_syscall_catchpoint)
11357         (super_xfer_partial, super_resume, super_wait)
11358         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11359         (fbsd_handle_debug_trap): Remove target_ops parameter.
11360         (fbsd_nat_add_target): Delete.
11361         * fbsd-nat.h: Include "inf-ptrace.h".
11362         (fbsd_nat_add_target): Delete.
11363         (USE_SIGTRAP_SIGINFO): Define.
11364         (fbsd_nat_target): New class.
11365
11366         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11367         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11368         (amd64bsd_target): Delete.
11369         * amd64-bsd-nat.h: New file.
11370         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11371         "x86-bsd-nat.h".
11372         (amd64_fbsd_nat_target): New class.
11373         (the_amd64_fbsd_nat_target): New.
11374         (amd64fbsd_read_description): Refactor as method of
11375         amd64_fbsd_nat_target.
11376         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11377         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11378         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11379         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11380         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11381         (i386bsd_target): Delete.
11382         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11383         (i386bsd_fetch_inferior_registers)
11384         (i386bsd_store_inferior_registers): Declare.
11385         (i386_bsd_nat_target): New class.
11386         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11387         (the_i386_fbsd_nat_target): New.
11388         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11389         i386_fbsd_nat_target methods.
11390         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11391         (_initialize_i386fbsd_nat): Adjust to C++ification.
11392         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11393         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11394         (_initialize_x86_bsd_nat): Adjust to C++ification.
11395         * x86-bsd-nat.h: Include "x86-nat.h".
11396         (x86bsd_target): Delete declaration.
11397         (x86bsd_nat_target): New class.
11398
11399         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11400         (the_aarch64_fbsd_nat_target): New.
11401         (aarch64_fbsd_fetch_inferior_registers)
11402         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11403         aarch64_fbsd_nat_target.
11404         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11405         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11406         (the_alpha_bsd_nat_target): New.
11407         (alphabsd_fetch_inferior_registers)
11408         (alphabsd_store_inferior_registers): Refactor as
11409         alpha_bsd_nat_target methods.
11410         (_initialize_alphabsd_nat): Refactor as methods of
11411         alpha_bsd_nat_target.
11412         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11413         (the_amd64_nbsd_nat_target): New.
11414         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11415         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11416         (the_amd64_obsd_nat_target): New.
11417         (_initialize_amd64obsd_nat): Adjust to C++ification.
11418         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11419         (the_arm_fbsd_nat_target): New.
11420         (arm_fbsd_fetch_inferior_registers)
11421         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11422         (_initialize_arm_fbsd_nat): Refactor as methods of
11423         arm_fbsd_nat_target.
11424         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11425         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11426         (the_arm_netbsd_nat_target): New.
11427         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11428         arm_netbsd_nat_target.
11429         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11430         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11431         (the_hppa_nbsd_nat_target): New.
11432         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11433         hppa_nbsd_nat_target methods.
11434         (_initialize_hppanbsd_nat): Adjust to C++ification.
11435         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11436         (the_hppa_obsd_nat_target): New.
11437         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11438         methods of hppa_obsd_nat_target.
11439         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11440         add_target.
11441         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11442         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11443         add_target.
11444         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11445         (_initialize_i386obsd_nat): Use add_target.
11446         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11447         (the_m68k_bsd_nat_target): New.
11448         (m68kbsd_fetch_inferior_registers)
11449         (m68kbsd_store_inferior_registers): Refactor as methods of
11450         m68k_bsd_nat_target.
11451         (_initialize_m68kbsd_nat): Adjust to C++ification.
11452         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11453         (the_mips_fbsd_nat_target): New.
11454         (mips_fbsd_fetch_inferior_registers)
11455         (mips_fbsd_store_inferior_registers): Refactor as methods of
11456         mips_fbsd_nat_target.
11457         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11458         add_target.
11459         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11460         (the_mips_nbsd_nat_target): New.
11461         (mipsnbsd_fetch_inferior_registers)
11462         (mipsnbsd_store_inferior_registers): Refactor as methods of
11463         mips_nbsd_nat_target.
11464         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11465         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11466         (the_mips64_obsd_nat_target): New.
11467         (mips64obsd_fetch_inferior_registers)
11468         (mips64obsd_store_inferior_registers): Refactor as methods of
11469         mips64_obsd_nat_target.
11470         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11471         add_target.
11472         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11473         nbsd_nat_target.
11474         * nbsd-nat.h: Include "inf-ptrace.h".
11475         (nbsd_nat_target): New class.
11476         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11477         (obsd_wait): Refactor as methods of obsd_nat_target.
11478         (obsd_add_target): Delete.
11479         * obsd-nat.h: Include "inf-ptrace.h".
11480         (obsd_nat_target): New class.
11481         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11482         (the_ppc_fbsd_nat_target): New.
11483         (ppcfbsd_fetch_inferior_registers)
11484         (ppcfbsd_store_inferior_registers): Refactor as methods of
11485         ppc_fbsd_nat_target.
11486         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11487         add_target.
11488         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11489         (the_ppc_nbsd_nat_target): New.
11490         (ppcnbsd_fetch_inferior_registers)
11491         (ppcnbsd_store_inferior_registers): Refactor as methods of
11492         ppc_nbsd_nat_target.
11493         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11494         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11495         (the_ppc_obsd_nat_target): New.
11496         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11497         methods of ppc_obsd_nat_target.
11498         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11499         add_target.
11500         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11501         (the_sh_nbsd_nat_target): New.
11502         (shnbsd_fetch_inferior_registers)
11503         (shnbsd_store_inferior_registers): Refactor as methods of
11504         sh_nbsd_nat_target.
11505         (_initialize_shnbsd_nat): Adjust to C++ification.
11506         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11507         (inf_ptrace_xfer_partial): Delete.
11508         (sparc_xfer_partial, sparc_target): Delete.
11509         * sparc-nat.h (sparc_fetch_inferior_registers)
11510         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11511         (sparc_target): Delete function declaration.
11512         (sparc_target): New template class.
11513         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11514         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11515         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11516         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11517         add_target.
11518         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11519         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11520         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11521         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11522         add_target.
11523         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11524         (the_vax_bsd_nat_target): New.
11525         (vaxbsd_fetch_inferior_registers)
11526         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11527         methods.
11528         (_initialize_vaxbsd_nat): Adjust to C++ification.
11529
11530         * bsd-kvm.c (bsd_kvm_target): New class.
11531         (bsd_kvm_ops): Now a bsd_kvm_target.
11532         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11533         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11534         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11535         bsd_kvm_target.
11536         (bsd_kvm_return_one): Delete.
11537         (bsd_kvm_add_target): Adjust to C++ification.
11538
11539         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11540         (nto_procfs_target_procfs): New classes.
11541         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11542         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11543         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11544         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11545         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11546         (procfs_remove_hw_breakpoint, procfs_resume)
11547         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11548         (procfs_kill_inferior, procfs_store_registers)
11549         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11550         as methods of nto_procfs_target.
11551         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11552         (nto_native_ops): Delete.
11553         (procfs_open, procfs_native_open): Delete.
11554         (nto_native_ops): Now an nto_procfs_target_native.
11555         (init_procfs_targets): Adjust to C++ification.
11556         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11557         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11558         Refactor as methods of nto_procfs_target.
11559
11560         * go32-nat.c (go32_nat_target): New class.
11561         (the_go32_nat_target): New.
11562         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11563         (go32_store_registers, go32_xfer_partial, go32_files_info)
11564         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11565         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11566         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11567         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11568         (go32_target): Delete.
11569         (_initialize_go32_nat): Adjust to C++ification.
11570
11571         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11572         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11573         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11574         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11575         gnu_nat_target.
11576         (gnu_target): Delete.
11577         * gnu-nat.h (gnu_target): Delete.
11578         (gnu_nat_target): New class.
11579         * i386-gnu-nat.c (gnu_base_target): New.
11580         (i386_gnu_nat_target): New class.
11581         (the_i386_gnu_nat_target): New.
11582         (_initialize_i386gnu_nat): Adjust to C++ification.
11583
11584 2018-05-02  Pedro Alves  <palves@redhat.com>
11585
11586         * bfd-target.c (target_bfd_xclose): Rename to ...
11587         (target_bfd_close): ... this.
11588         (target_bfd_reopen): Adjust.
11589         * target.c (target_close): Remove references to to_xclose.
11590         * target.h (target_ops::to_xclose): Delete.
11591         (target_ops::to_close): Update comments.
11592
11593 2018-05-02  Pedro Alves  <palves@redhat.com>
11594
11595         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11596         "linux-nat.h".
11597         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11598         * inf-ptrace.c (inf_ptrace_register_u_offset)
11599         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11600         (inf_ptrace_store_register, inf_ptrace_store_registers)
11601         (inf_ptrace_trad_target): Move to ...
11602         * linux-nat-trad.c: ... this new file.
11603         * linux-nat-trad.h: New file.
11604         * linux-nat.c (linux_target_install_ops): Make extern.
11605         (linux_trad_target): Delete.
11606         * linux-nat.h (linux_trad_target): Delete declaration.
11607         (linux_target_install_ops): Declare.
11608         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11609         "linux-nat.h".
11610
11611 2018-05-02  Pedro Alves  <palves@redhat.com>
11612
11613         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11614         procfs_target/add_target here.
11615         * procfs.c (procfs_target): Make static.
11616         (_initialize_procfs): Call add_target here.
11617         * procfs.h (struct target_ops): Remove forward declaration.
11618         (procfs_target): Remove declaration.
11619         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11620
11621 2018-05-02  Pedro Alves  <palves@redhat.com>
11622
11623         * procfs.c (procfs_stopped_by_watchpoint)
11624         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11625         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11626         Forward declare.
11627         (procfs_use_watchpoints): Delete, move contents...
11628         (procfs_target): ... here.
11629         * procfs.h (procfs_use_watchpoints): Delete declaration.
11630         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11631         procfs_use_watchpoints.
11632         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11633         procfs_use_watchpoints.
11634
11635 2018-05-02  Tom Tromey  <tom@tromey.com>
11636
11637         PR python/20084:
11638         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11639         and var_zuinteger_unlimited.
11640         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11641         and PARAM_ZUINTEGER_UNLIMITED.
11642         (set_parameter_value): Handle var_zuinteger and
11643         var_zuinteger_unlimited.
11644         (add_setshow_generic): Likewise.
11645         (parmpy_init): Likewise.
11646
11647 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11648
11649         PR rust/23124
11650         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11651         pointer is not null before dereferencing it.
11652
11653 2018-04-30  Tom Tromey  <tom@tromey.com>
11654
11655         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11656         is_mi_like_p.
11657
11658 2018-04-30  Tom Tromey  <tom@tromey.com>
11659
11660         * breakpoint.c (mention): Remove use of is_mi_like_p.
11661         (print_mention_ranged_breakpoint): Likewise.
11662         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11663         of is_mi_like_p.
11664
11665 2018-04-30  Tom Tromey  <tom@tromey.com>
11666
11667         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11668
11669 2018-04-30  Tom Tromey  <tom@tromey.com>
11670
11671         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11672         (info_spu_event_command): Remove some uses of is_mi_like_p.
11673
11674 2018-04-30  Tom Tromey  <tom@tromey.com>
11675
11676         * python/py-framefilter.c (py_print_single_arg)
11677         (enumerate_locals, py_print_args, py_print_frame): Remove some
11678         uses of is_mi_like_p.
11679
11680 2018-04-30  Tom Tromey  <tom@tromey.com>
11681
11682         * ui-out.c: Update.
11683         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11684         * ui-out.h (ui_out::is_mi_like_p): Now const.
11685         (ui_out::do_is_mi_like_p): Now const.
11686         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11687
11688 2018-04-30  Tom Tromey  <tom@tromey.com>
11689
11690         * varobj.c (varobj_set_visualizer): Use new_reference.
11691         * python/python.c (gdbpy_decode_line): Use new_reference.
11692         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11693         new_reference.
11694
11695 2018-04-30  Tom Tromey  <tom@tromey.com>
11696
11697         * varobj.c (install_new_value): Use new_reference.
11698         * value.h (value_incref): Return void.  Swap intro comment with
11699         value_decref.
11700         * value.c (set_value_parent): Use new_reference.
11701         (value_incref): Return void.  Update intro comment.
11702         (release_value): Use new_reference.
11703         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11704
11705 2018-04-30  Tom Tromey  <tom@tromey.com>
11706
11707         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11708         * gdb_bfd.h (new_bfd_ref): Remove.
11709         (gdb_bfd_open): Update comment.
11710         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11711         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11712         (gdb_bfd_fdopenr): Use new_reference.
11713         * exec.c (exec_file_attach): Use new_reference.
11714
11715 2018-04-30  Tom Tromey  <tom@tromey.com>
11716
11717         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11718         method.
11719
11720 2018-04-30  Tom Tromey  <tom@tromey.com>
11721
11722         * jit.c (jit_read_code_entry): Use type_align.
11723         * i386-tdep.c (i386_gdbarch_init): Don't call
11724         set_gdbarch_long_long_align_bit.
11725         * gdbarch.sh: Remove long_long_align_bit.
11726         * gdbarch.c, gdbarch.h: Rebuild.
11727         * arc-tdep.c (arc_type_align): New function.
11728         (arc_gdbarch_init): Use arc_type_align.  Don't call
11729         set_gdbarch_long_long_align_bit.
11730
11731 2018-04-30  Tom Tromey  <tom@tromey.com>
11732
11733         * rust-lang.c (rust_type_alignment): Remove.
11734         (rust_composite_type): Use type_align.
11735
11736 2018-04-30  Tom Tromey  <tom@tromey.com>
11737
11738         * NEWS: Mention Type.align.
11739         * python/py-type.c (typy_get_alignof): New function.
11740         (type_object_getset): Add "alignof".
11741
11742 2018-04-30  Tom Tromey  <tom@tromey.com>
11743
11744         PR exp/17095:
11745         * NEWS: Update.
11746         * std-operator.def (UNOP_ALIGNOF): New operator.
11747         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11748         New.
11749         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11750         * c-lang.c (c_op_print_tab): Add alignof.
11751         * c-exp.y (ALIGNOF): New token.
11752         (exp): Add "ALIGNOF" production.
11753         (ident_tokens): Add _Alignof and alignof.
11754
11755 2018-04-30  Tom Tromey  <tom@tromey.com>
11756
11757         * i386-tdep.c (i386_type_align): New function.
11758         (i386_gdbarch_init): Update.
11759         * gdbarch.sh (type_align): New method.
11760         * gdbarch.c, gdbarch.h: Rebuild.
11761         * arch-utils.h (default_type_align): Declare.
11762         * arch-utils.c (default_type_align): New function.
11763         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11764         (struct type) <align_log2>: New field.
11765         <instance_flags>: Now a bitfield.
11766         (TYPE_RAW_ALIGN): New macro.
11767         (type_align, type_raw_align, set_type_align): Declare.
11768         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11769         functions.
11770         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11771         (get_alignment, maybe_set_alignment): New functions.
11772         (read_structure_type, read_enumeration_type, read_array_type)
11773         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11774         (read_subrange_type, read_base_type): Set type alignment.
11775
11776 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11777
11778         * dwarf2read.c (read_index_from_section): Use bool.
11779
11780 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11781
11782         PR gdb/22950
11783         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11784         with #ifdef.
11785
11786 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11787
11788         PR build/22873
11789         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11790         last step, and do it atomically.
11791
11792 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11793
11794         * compile/compile-c-types.c (convert_int, convert_float):
11795         Update for C FE v1.
11796
11797 2018-04-27  Tom Tromey  <tom@tromey.com>
11798
11799         PR rust/22545:
11800         * rust-lang.c (rust_inclusive_range_type_p): New function.
11801         (rust_range): Handle inclusive ranges.
11802         (rust_compute_range): Likewise.
11803         * rust-exp.y (struct rust_op) <inclusive>: New field.
11804         (DOTDOTEQ): New constant.
11805         (range_expr): Add "..=" productions.
11806         (operator_tokens): Add "..=" token.
11807         (ast_range): Add "inclusive" parameter.
11808         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11809         ranges.
11810         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11811         bounds values.
11812         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11813         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11814         Update comments.
11815         * expprint.c (print_subexp_standard): Handle new bounds values.
11816         (dump_subexp_body_standard): Likewise.
11817
11818 2018-04-27  Tom Tromey  <tom@tromey.com>
11819
11820         * configure: Rebuild.
11821         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11822         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11823         "OVERRIDE".
11824         (class symbol_needs_eval_context): Likewise.
11825         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11826         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11827         "virtual".
11828         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11829         "override".
11830         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11831         * aarch64-tdep.c (instruction_reader::read): Use "override".
11832         (instruction_reader_test::read): Likewise.
11833         * arm-tdep.c (instruction_reader::read): Use "override".
11834         (instruction_reader_thumb::read): Likewise.
11835
11836 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11837
11838         PR remote/9665
11839         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11840         instead of remote_send.
11841         (remote_send): Remove.
11842
11843 2018-04-26  Pedro Alves  <palves@redhat.com>
11844
11845         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11846         find_function_start_sal instead of find_pc_line.
11847
11848 2018-04-26  Pedro Alves  <palves@redhat.com>
11849
11850         * breakpoint.c (set_breakpoint_location_function): Handle
11851         mst_data_gnu_ifunc.
11852         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11853         * elfread.c (elf_symtab_read): Give data symbols with
11854         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11855         (elf_rel_plt_read): Update comment.
11856         * linespec.c (convert_linespec_to_sals): Handle
11857         mst_data_gnu_ifunc.
11858         (minsym_found): Handle mst_data_gnu_ifunc.
11859         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11860         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11861         * parse.c (find_minsym_type_and_address): Handle
11862         mst_data_gnu_ifunc.
11863         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11864         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11865         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11866         comment.
11867         <mst_data_gnu_ifunc>: New enumerator.
11868
11869 2018-04-26  Pedro Alves  <palves@redhat.com>
11870
11871         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11872         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11873         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11874         Handle it.
11875         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11876         (lookup_minimal_symbol_by_pc): Adjust.
11877         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11878         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11879         * minsyms.h (lookup_msym_prefer): New enum.
11880         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11881         parameter by a lookup_msym_prefer parameter.
11882
11883 2018-04-26  Pedro Alves  <palves@redhat.com>
11884
11885         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11886         ends in "@plt" instead of looking at the symbol's section.
11887
11888 2018-04-26  Pedro Alves  <palves@redhat.com>
11889
11890         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11891         all references.
11892         (find_pc_partial_function_gnu_ifunc): Rename to ...
11893         (find_pc_partial_function): ... this, and remove references to
11894         'is_gnu_ifunc_p'.
11895         (find_pc_partial_function): Delete old implementation.
11896         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11897
11898 2018-04-26  Pedro Alves  <palves@redhat.com>
11899
11900         * linespec.c (struct bound_minimal_symbol_search_key): New.
11901         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11902         skip first line if we found a GNU ifunc minimal symbol by name.
11903         (compare_msymbols): Change parameters to work with a destructured
11904         lhs minsym.
11905         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11906         functions.
11907
11908 2018-04-26  Pedro Alves  <palves@redhat.com>
11909
11910         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11911         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11912         address/name.
11913         (add_location_to_breakpoint): Store the minsym and the objfile in
11914         the breakpoint location.
11915         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11916         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11917         Record the minsym in the sal.
11918         * symtab.h (symtab_and_line) <msymbol>: New field.
11919
11920 2018-04-26  Pedro Alves  <palves@redhat.com>
11921
11922         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11923         unless we actually resolved the ifunc.
11924
11925 2018-04-26  Pedro Alves  <palves@redhat.com>
11926
11927         * c-exp.y (variable production): Prefer ifunc minsyms over
11928         regular function symbols.
11929         * symtab.c (find_gnu_ifunc): New function.
11930         * minsyms.h (lookup_msym_prefer): New enum.
11931         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11932         parameter by a lookup_msym_prefer parameter.
11933         * symtab.h (find_gnu_ifunc): New declaration.
11934
11935 2018-04-26  Pedro Alves  <palves@redhat.com>
11936
11937         * blockframe.c (find_gnu_ifunc_target_type): New function.
11938         (find_function_type): New.
11939         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11940         return a value with a memory address.
11941         (eval_call): For calls to GNU ifunc functions, try to find the
11942         type of the target function from the type that the resolver
11943         returns.
11944         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11945         symbols.
11946         * infcall.c (find_function_return_type): Delete.
11947         (find_function_addr): Add 'function_type' parameter.  For calls to
11948         GNU ifunc functions, try to find the type of the target function
11949         from the type that the resolver returns, and return it via
11950         FUNCTION_TYPE.
11951         (call_function_by_hand_dummy): Adjust to use the function type
11952         returned by find_function_addr.
11953         (find_function_addr): Add 'function_type' parameter and move
11954         description here.
11955         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11956         declarations.
11957
11958 2018-04-26  Pedro Alves  <palves@redhat.com>
11959
11960         * c-exp.y (variable production): Skip finding an alias for ifunc
11961         symbols.
11962
11963 2018-04-26  Pedro Alves  <palves@redhat.com>
11964
11965         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11966
11967 2018-04-25  Pedro Alves  <palves@redhat.com>
11968
11969         * infcmd.c (kill_command): Print the pid as string, not the whole
11970         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11971         message.
11972         * remote.c (remote_detach_1): Print the pid as string, not the
11973         whole thread's ptid.
11974
11975 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11976             Sergio Durigan Junior  <sergiodj@redhat.com>
11977             Pedro Alves  <palves@redhat.com>
11978
11979         * infcmd.c (kill_command): Print message when inferior has
11980         been killed.
11981         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11982         '1'.
11983         (add_inferior): Improve message printed when
11984         'print_inferior_events' is on.
11985         (exit_inferior): Remove message printed when
11986         'print_inferior_events' is on.
11987         (detach_inferior): Improve message printed when
11988         'print_inferior_events' is on.
11989         (initialize_inferiors): Use 'add_inferior_silent' to set
11990         'current_inferior_'.
11991         * inferior.h (print_inferior_events): Declare here as
11992         'extern'.
11993         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11994         '[Detaching...]' messages when 'print_inferior_events' is on.
11995         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11996         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11997         'Detaching after fork from child...', replace it by '... from
11998         parent...'.
11999         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
12000         prefix/suffix when printing 'Detaching...' messages.  Print
12001         them when 'print_inferior_events' is on.
12002         * remote.c (remote_detach_1): Print message when detaching
12003         from inferior and '!is_fork_parent'.
12004
12005 2018-04-24  Tom Tromey  <tom@tromey.com>
12006
12007         * cli-out.h: Reindent.
12008
12009 2018-04-24  Tom Tromey  <tom@tromey.com>
12010
12011         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
12012         (cli_ui_out::do_field_string): Use fputs_filtered.
12013         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
12014
12015 2018-04-23  Tom Tromey  <tom@tromey.com>
12016
12017         * guile/scm-frame.c (gdbscm_frame_read_var): Use
12018         gdb::unique_xmalloc_ptr.
12019
12020 2018-04-23  Tom Tromey  <tom@tromey.com>
12021
12022         * configure: Rebuild.
12023
12024 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
12025
12026         PR gdb/23095
12027         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
12028         prepare_for_testing.  Set normal_bp to r_debug_state if target
12029         is bsd.
12030
12031 2018-04-21  Pedro Alves  <palves@redhat.com>
12032             Rajendra SY  <rajendra.sy@gmail.com>
12033
12034         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
12035         * remote.c (extended_remote_attach): In all-stop mode, mark the
12036         thread as executing.
12037
12038 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
12039
12040         * thread.c (thread_apply_all_command): Fix comment.
12041         (thread_command): Fix comment.
12042
12043 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
12044
12045         * common/tdesc.h (tdesc_create_feature): Remove xml filename
12046         parameter.
12047         * features/aarch64-core.c (create_feature_aarch64_core):
12048         Regenerate.
12049         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
12050         Likewise.
12051         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
12052         Likewise.
12053         * features/i386/32bit-avx512.c
12054         (create_feature_i386_32bit_avx512): Likewise.
12055         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
12056         Likewise.
12057         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
12058         Likewise.
12059         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
12060         Likewise.
12061         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
12062         Likewise.
12063         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
12064         Likewise.
12065         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
12066         Likewise.
12067         * features/i386/64bit-avx512.c
12068         (create_feature_i386_64bit_avx512): Likewise.
12069         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
12070         Likewise.
12071         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
12072         Likewise.
12073         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
12074         Likewise.
12075         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
12076         Likewise.
12077         * features/i386/64bit-segments.c
12078         (create_feature_i386_64bit_segments): Likewise.
12079         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12080         Likewise.
12081         * features/i386/x32-core.c
12082         (create_feature_i386_x32_core): Likewise.
12083         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12084         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12085         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12086         * target-descriptions.c: In generated code, don't pass xml
12087         filename.
12088
12089 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12090
12091         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12092         (print_xml_feature::visit_post): Likewise.
12093         (print_xml_feature::visit): Likewise.
12094         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12095         (print_xml_feature): Add new class.
12096         * regformats/regdat.sh: Null xmltarget on feature targets.
12097         * target-descriptions.c (struct target_desc): Add xmltarget.
12098         (maintenance_check_tdesc_xml_convert): Add unittest function.
12099         (tdesc_get_features_xml): Add function to get xml.
12100         (maintenance_check_xml_descriptions): Test xml generation.
12101         * xml-tdesc.c (string_read_description_xml): Add function.
12102         * xml-tdesc.h (string_read_description_xml): Add declaration.
12103
12104 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12105
12106         * features/Makefile: Add feature marker to targets with new style
12107         target descriptions.
12108         * regformats/aarch64.dat: Regenerate.
12109         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12110         * regformats/i386/amd64-avx-linux.dat: Likewise.
12111         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12112         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12113         * regformats/i386/amd64-linux.dat: Likewise.
12114         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12115         * regformats/i386/amd64.dat: Likewise.
12116         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12117         * regformats/i386/i386-avx-linux.dat: Likewise.
12118         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12119         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12120         * regformats/i386/i386-linux.dat: Likewise.
12121         * regformats/i386/i386-mmx-linux.dat: Likewise.
12122         * regformats/i386/i386-mpx-linux.dat: Likewise.
12123         * regformats/i386/i386.dat: Likewise.
12124         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12125         * regformats/i386/x32-avx-linux.dat: Likewise.
12126         * regformats/i386/x32-linux.dat: Likewise.
12127         * regformats/tic6x-c62x-linux.dat: Likewise.
12128         * regformats/tic6x-c64x-linux.dat: Likewise.
12129         * regformats/tic6x-c64xp-linux.dat: Likewise.
12130         * regformats/regdat.sh: Parse feature marker.
12131
12132 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12133
12134         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12135         (tdesc_osabi_name): Likewise.
12136         * target-descriptions.c (tdesc_architecture_name): Add new
12137         function.
12138         (tdesc_osabi_name): Likewise.
12139
12140 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12141
12142         * common/tdesc.c (tdesc_predefined_type): Move to here.
12143         (tdesc_named_type): Likewise.
12144         (tdesc_create_vector): Likewise.
12145         (tdesc_create_struct): Likewise.
12146         (tdesc_set_struct_size): Likewise.
12147         (tdesc_create_union): Likewise.
12148         (tdesc_create_flags): Likewise.
12149         (tdesc_create_enum): Likewise.
12150         (tdesc_add_field): Likewise.
12151         (tdesc_add_typed_bitfield): Likewise.
12152         (tdesc_add_bitfield): Likewise.
12153         (tdesc_add_flag): Likewise.
12154         (tdesc_add_enum_value): Likewise.
12155         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12156         (struct tdesc_type_vector): Likewise.
12157         (struct tdesc_type_field): Likewise.
12158         (struct tdesc_type_with_fields): Likewise.
12159         (tdesc_create_enum): Add declaration.
12160         (tdesc_add_typed_bitfield): Likewise.
12161         (tdesc_add_enum_value): Likewise.
12162         * target-descriptions.c (tdesc_type_field): Move from here.
12163         (tdesc_type_builtin): Likewise.
12164         (tdesc_type_vector): Likewise.
12165         (tdesc_type_with_fields): Likewise.
12166         (tdesc_predefined_types): Likewise.
12167         (tdesc_named_type): Likewise.
12168         (tdesc_create_vector): Likewise.
12169         (tdesc_create_struct): Likewise.
12170         (tdesc_set_struct_size): Likewise.
12171         (tdesc_create_union): Likewise.
12172         (tdesc_create_flags): Likewise.
12173         (tdesc_create_enum): Likewise.
12174         (tdesc_add_field): Likewise.
12175         (tdesc_add_typed_bitfield): Likewise.
12176         (tdesc_add_bitfield): Likewise.
12177         (tdesc_add_flag): Likewise.
12178         (tdesc_add_enum_value): Likewise.
12179         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12180         (tdesc_add_typed_bitfield): Likewise.
12181         (tdesc_add_enum_value): Likewise.
12182
12183 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12184
12185         * common/tdesc.c (tdesc_feature::accept): Move to here.
12186         (tdesc_feature::operator==): Likewise.
12187         (tdesc_create_reg): Likewise.
12188         * common/tdesc.h (tdesc_type_kind): Likewise.
12189         (struct tdesc_type): Likewise.
12190         (struct tdesc_feature): Likewise.
12191         * regformats/regdat.sh: Create a feature.
12192         * target-descriptions.c (tdesc_type_kind): Move from here.
12193         (tdesc_type): Likewise.
12194         (tdesc_type_up): Likewise.
12195         (tdesc_feature): Likewise.
12196         (tdesc_create_reg): Likewise.
12197
12198 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12199
12200         * Makefile.in: Add arch/tdesc.c
12201         * common/tdesc.c: New file.
12202         * common/tdesc.h (tdesc_element_visitor): Move to here.
12203         (tdesc_element): Likewise.
12204         (tdesc_reg): Likewise.
12205         (tdesc_reg_up): Likewise.
12206         * regformats/regdef.h (reg): Add offset to constructors.
12207         * target-descriptions.c (tdesc_element_visitor): Move from here.
12208         (tdesc_element): Likewise.
12209         (tdesc_reg): Likewise.
12210         (tdesc_reg_up): Likewise.
12211
12212 2018-04-17  Tom Tromey  <tom@tromey.com>
12213
12214         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12215         discriminant field.
12216
12217 2018-04-17  Tom Tromey  <tom@tromey.com>
12218
12219         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12220
12221 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12222
12223         * symtab.c (print_symbol_info): Skip printing filename and line
12224         number when `last' is NULL.
12225         (symtab_symbol_info): Use empty string instead of NULL for first
12226         invocation of print_symbol_info.
12227         (rbreak_command): Pass NULL to `last' parameter of
12228         print_symbol_info.
12229
12230 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12231
12232         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12233         instead of nullptr.
12234
12235 2018-04-16  Pedro Alves  <palves@redhat.com>
12236
12237         * MAINTAINERS (sh): Remove.
12238         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12239         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12240         (ALLDEPFILES): Remove sh64-tdep.c.
12241         * NEWS: Mentions that support for SH-5/SH64 is removed.
12242         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12243         (sh*-*-openbsd*): Ditto.
12244         (sh64-*-elf*): Remove.
12245         (sh*): Remove.
12246         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12247         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12248         * sh-tdep.c: No longer include "sh64-tdep.h".
12249         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12250         * sh64-tdep.c, sh64-tdep.h: Remove files.
12251
12252 2018-04-16  Pedro Alves  <palves@redhat.com>
12253
12254         * MAINTAINERS: Remove m88k.
12255         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12256         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12257         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12258         * NEWS: Mention that support for m88k was removed.
12259         * configure.host (m88*-*-*): Remove support.
12260         * configure.nat (m88k-*-*): Remove support.
12261         * configure.tgt (m88*-*-openbsd*): Remove.
12262         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12263
12264 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12265
12266         * configure.tgt (x86_tobjs): New variable.
12267         (amd64_tobjs, i386_tobjs): Use it.
12268
12269 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12270
12271         * symtab.c (print_symbol_info): Precede the symbol definition by
12272         the line number when available.
12273         * NEWS: Advertise this enhancement.
12274
12275 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12276
12277         * NEWS (New options): announce set/show record btrace cpu.
12278         * btrace.c: Include record-btrace.h.
12279         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12280         the vendor is unknown.
12281         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12282         Maybe overwrite the btrace configuration's cpu.
12283         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12284         (btrace_fetch): Add cpu parameter.  Update callers.
12285         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12286         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12287         errata workarounds if the vendor is unknown.
12288         * python/py-record-btrace.c: Include record-btrace.h.
12289         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12290         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12291         * record-btrace.c (record_btrace_cpu_state_kind): New.
12292         (record_btrace_cpu): New.
12293         (set_record_btrace_cpu_cmdlist): New.
12294         (record_btrace_get_cpu): New.
12295         (require_btrace_thread, record_btrace_info)
12296         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12297         (cmd_set_record_btrace_cpu_none): New.
12298         (cmd_set_record_btrace_cpu_auto): New.
12299         (cmd_set_record_btrace_cpu): New.
12300         (cmd_show_record_btrace_cpu): New.
12301         (_initialize_record_btrace): Initialize set/show record btrace cpu
12302         commands.
12303         * record-btrace.h (record_btrace_get_cpu): New.
12304
12305 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12306
12307         * record.c (set_record_command): Fix typo in message.
12308
12309 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12310
12311         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12312
12313 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12314
12315         * infrun.c (process_event_stop_test): Call
12316         gdbarch_in_indirect_branch_thunk.
12317         * gdbarch.sh (in_indirect_branch_thunk): New.
12318         * gdbarch.c: Regenerated.
12319         * gdbarch.h: Regenerated.
12320         * x86-tdep.h: New.
12321         * x86-tdep.c: New.
12322         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12323         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12324         (ALLDEPFILES): Add x86-tdep.c.
12325         * arch-utils.h (default_in_indirect_branch_thunk): New.
12326         * arch-utils.c (default_in_indirect_branch_thunk): New.
12327         * i386-tdep: Include x86-tdep.h.
12328         (i386_in_indirect_branch_thunk): New.
12329         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12330         function.
12331         * amd64-tdep: Include x86-tdep.h.
12332         (amd64_in_indirect_branch_thunk): New.
12333         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12334
12335 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12336
12337         PR gdb/23053
12338         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12339         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12340         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12341         regression.
12342
12343 2018-04-12  Tom Tromey  <tom@tromey.com>
12344
12345         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12346         (rust_evaluate_subexp): Likewise.
12347
12348 2018-04-12  Pedro Alves  <palves@redhat.com>
12349
12350         * procfs.c (procfs_detach): Make forward declaration's prototype
12351         match definition's protototype.
12352         (proc_get_LDT_entry): Remove stale do_cleanups call.
12353
12354 2018-04-12  Pedro Alves  <palves@redhat.com>
12355
12356         * target.h (target_ops::to_has_exited): Delete.
12357         (target_has_exited): Delete.
12358         * target-delegates.c: Regenerate.
12359
12360 2018-04-11  Pedro Alves  <palves@redhat.com>
12361
12362         * target.c (fileio_fh_t::t): Add comment.
12363         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12364         (target_fileio_close): Handle a NULL target.
12365         (invalidate_fileio_fh): New.
12366         (target_close): Call it.
12367         * remote.c (remote_hostio_send_command): No longer check whether
12368         remote_desc is open.
12369
12370 2018-04-11  Pedro Alves  <palves@redhat.com>
12371
12372         * target.c (fileio_fh_t): Make it a named struct instead of a
12373         typedef.
12374         (fileio_fh_t::is_closed): New method.
12375         (DEF_VEC_O (fileio_fh_t)): Remove.
12376         (fileio_fhandles): Now a std::vector.
12377         (is_closed_fileio_fh): Delete.
12378         (acquire_fileio_fd): Adjust.  Rename parameters.
12379         (release_fileio_fd): Adjust.
12380         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12381         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12382         (target_fileio_close): Adjust.
12383
12384 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12385
12386         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12387         index.
12388
12389 2018-04-10  Pedro Alves  <palves@redhat.com>
12390
12391         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12392         (scoped_finish_thread_state): New class.
12393         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12394         cleanup.
12395         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12396         (fetch_inferior_event, normal_stop): Likewise.
12397         * thread.c (finish_thread_state_cleanup): Delete.
12398
12399 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12400             Pedro Alves  <palves@redhat.com>
12401
12402         * value.c: Include "selftest.h" and "common/array-view.h".
12403         (struct range) <operator ==>: New.
12404         (test_ranges_contain): New.
12405         (check_ranges_vector): New.
12406         (test_insert_into_bit_range_vector): New.
12407         (_initialize_values): Register selftests.
12408         * common/array-view.h (operator==, operator!=): New.
12409
12410 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12411
12412         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12413         an iterator.
12414         * inline-frame.c: Include <algorithm>.
12415         (struct inline_state): Add constructor.
12416         (inline_state_s): Remove.
12417         (DEF_VEC_O(inline_state_s)): Remove.
12418         (inline_states): Change type to std::vector.
12419         (find_inline_frame_state): Adjust to std::vector.
12420         (allocate_inline_frame_state): Remove.
12421         (clear_inline_frame_state): Adjust to std::vector.
12422         (skip_inline_frames): Adjust to std::vector.
12423
12424 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12425
12426         * tracepoint.h (struct trace_state_variable): Add constructor.
12427         <name>: Change type to std::string.
12428         * tracepoint.c (tsv_s): Remove.
12429         (DEF_VEC_O(tsv_s)): Remove.
12430         (tvariables): Change to std::vector.
12431         (create_trace_state_variable): Adjust to std::vector.
12432         (find_trace_state_variable): Likewise.
12433         (find_trace_state_variable_by_number): Likewise.
12434         (delete_trace_state_variable): Likewise.
12435         (trace_variable_command): Adjust to std::string.
12436         (delete_trace_variable_command): Likewise.
12437         (tvariables_info_1): Adjust to std::vector.
12438         (save_trace_state_variables): Likewise.
12439         (start_tracing): Likewise.
12440         (merge_uploaded_trace_state_variables): Adjust to std::vector
12441         and std::string.
12442         * target.h (struct target_ops)
12443         <to_download_trace_state_variable>: Pass reference to
12444         trace_state_variable.
12445         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12446         * target-delegates.c: Re-generate.
12447         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12448         (mi_tsv_deleted): Likewise.
12449         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12450         * remote.c (remote_download_trace_state_variable): Change
12451         pointer to reference and adjust.
12452         * make-target-delegates (parse_argtypes): Handle references.
12453         (write_function_header): Likewise.
12454         (munge_type): Likewise.
12455
12456 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12457
12458         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12459         string_view-selftests.c.
12460         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12461         testsuite.
12462         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12463         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12464         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12465         * unittests/basic_string_view/element_access/char/1.cc:
12466         Likewise.
12467         * unittests/basic_string_view/element_access/char/empty.cc:
12468         Likewise.
12469         * unittests/basic_string_view/element_access/char/front_back.cc:
12470         Likewise.
12471         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12472         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12473         Likewise.
12474         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12475         Likewise.
12476         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12477         Likewise.
12478         * unittests/basic_string_view/operations/compare/char/1.cc:
12479         Likewise.
12480         * unittests/basic_string_view/operations/compare/char/13650.cc:
12481         Likewise.
12482         * unittests/basic_string_view/operations/copy/char/1.cc:
12483         Likewise.
12484         * unittests/basic_string_view/operations/data/char/1.cc:
12485         Likewise.
12486         * unittests/basic_string_view/operations/find/char/1.cc:
12487         Likewise.
12488         * unittests/basic_string_view/operations/find/char/2.cc:
12489         Likewise.
12490         * unittests/basic_string_view/operations/find/char/3.cc:
12491         Likewise.
12492         * unittests/basic_string_view/operations/find/char/4.cc:
12493         Likewise.
12494         * unittests/basic_string_view/operations/rfind/char/1.cc:
12495         Likewise.
12496         * unittests/basic_string_view/operations/rfind/char/2.cc:
12497         Likewise.
12498         * unittests/basic_string_view/operations/rfind/char/3.cc:
12499         Likewise.
12500         * unittests/basic_string_view/operations/substr/char/1.cc:
12501         Likewise.
12502         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12503         * unittests/string_view-selftests.c: New file.
12504
12505 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12506
12507         * unittests/basic_string_view/capacity/1.cc: New file.
12508         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12509         * unittests/basic_string_view/cons/char/1.cc: New file.
12510         * unittests/basic_string_view/cons/char/2.cc: New file.
12511         * unittests/basic_string_view/cons/char/3.cc: New file.
12512         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12513         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12514         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12515         * unittests/basic_string_view/element_access/char/1.cc: New file.
12516         * unittests/basic_string_view/element_access/char/2.cc: New file.
12517         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12518         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12519         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12520         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12521         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12522         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12523         * unittests/basic_string_view/include.cc: New file.
12524         * unittests/basic_string_view/inserters/char/1.cc: New file.
12525         * unittests/basic_string_view/inserters/char/2.cc: New file.
12526         * unittests/basic_string_view/inserters/char/3.cc: New file.
12527         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12528         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12529         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12530         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12531         * unittests/basic_string_view/literals/types.cc: New file.
12532         * unittests/basic_string_view/literals/values.cc: New file.
12533         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12534         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12535         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12536         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12537         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12538         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12539         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12540         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12541         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12542         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12543         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12544         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12545         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12546         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12547         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12548         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12549         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12550         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12551         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12552         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12553         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12554         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12555         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12556         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12557         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12558         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12559         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12560         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12561         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12562         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12563         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12564         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12565         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12566         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12567         * unittests/basic_string_view/operators/char/2.cc: New file.
12568         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12569         * unittests/basic_string_view/range_access/char/1.cc: New file.
12570         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12571         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12572         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12573         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12574         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12575         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12576         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12577         * unittests/basic_string_view/typedefs.cc: New file.
12578         * unittests/basic_string_view/types/1.cc: New file.
12579
12580 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12581
12582         * common/gdb_string_view.h: Remove libstdc++ implementation
12583         details, adjust to gdb reality.
12584         * common/gdb_string_view.tcc: Likewise.
12585         * cli/cli-script.c (struct string_view): Remove.
12586         (user_args) <m_args>: Change element type to gdb::string_view.
12587         (user_args::insert_args): Adjust.
12588
12589 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12590
12591         * common/gdb_string_view.h: New file.
12592         * common/gdb_string_view.tcc: New file.
12593
12594 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12595
12596         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12597         * configure: Re-generate.
12598
12599 2018-04-09  Pedro Alves  <palves@redhat.com>
12600
12601         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12602         (set_target_gdbarch): Call
12603         gdb::observers::architecture_changed.notify instead of
12604         observer_notify_architecture_changed.
12605
12606 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12607
12608         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12609         (do_restore_current_traceframe_cleanup): Remove.
12610         (restore_current_traceframe_cleanup_dtor): Remove.
12611         (make_cleanup_restore_current_traceframe): Remove.
12612         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12613         New.
12614         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12615         * infrun.c (fetch_inferior_event): Use
12616         scoped_restore_current_traceframe.
12617
12618 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12619
12620         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12621         Remove.
12622         <n_allocated_type_units>: Remove.
12623         <all_type_units>: Change to std::vector.
12624         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12625         to std::vector change.
12626         (dwarf2_per_objfile::get_cutu): Likewise.
12627         (dwarf2_per_objfile::get_tu): Likewise.
12628         (create_signatured_type_table_from_index): Likewise.
12629         (create_signatured_type_table_from_debug_names): Likewise.
12630         (dw2_symtab_iter_next): Likewise.
12631         (dw2_print_stats): Likewise.
12632         (dw2_expand_all_symtabs): Likewise.
12633         (dw2_expand_marked_cus): Likewise.
12634         (dw2_debug_names_iterator::next): Likewise.
12635         (dwarf2_initialize_objfile): Likewise.
12636         (add_signatured_type_cu_to_table): Likewise.
12637         (create_all_type_units): Likewise.
12638         (add_type_unit): Likewise.
12639         (struct tu_abbrev_offset): Add constructor.
12640         (build_type_psymtabs_1): Adjust to std::vector change.
12641         (print_tu_stats): Likewise.
12642         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12643         (write_debug_names): Likewise.
12644
12645 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12646
12647         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12648         Make an std::vector.
12649         <n_comp_units>: Remove.
12650         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12651         to std::vector change.
12652         (dwarf2_per_objfile::get_cutu): Likewise.
12653         (dwarf2_per_objfile::get_cu): Likewise.
12654         (create_cus_from_index): Likewise.
12655         (create_addrmap_from_index): Likewise.
12656         (create_addrmap_from_aranges): Likewise.
12657         (dwarf2_read_index): Likewise.
12658         (dw2_find_last_source_symtab): Likewise.
12659         (dw2_map_symtabs_matching_filename): Likewise.
12660         (dw2_symtab_iter_next): Likewise.
12661         (dw2_print_stats): Likewise.
12662         (dw2_expand_all_symtabs): Likewise.
12663         (dw2_expand_symtabs_with_fullname): Likewise.
12664         (dw2_expand_marked_cus): Likewise.
12665         (dw2_map_symbol_filenames): Likewise.
12666         (create_cus_from_debug_names): Likewise.
12667         (dwarf2_read_debug_names): Likewise.
12668         (dw2_debug_names_iterator::next): Likewise.
12669         (dwarf2_initialize_objfile): Likewise.
12670         (set_partial_user): Likewise.
12671         (dwarf2_build_psymtabs_hard): Likewise.
12672         (read_comp_units_from_section): Remove arguments, adjust to
12673         std::vector change.
12674         (create_all_comp_units): Adjust to std::vector and
12675         read_comp_units_from_section changes.
12676         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12677         change.
12678         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12679         (psyms_seen_size): Likewise.
12680         (write_gdbindex): Likewise.
12681         (write_debug_names): Likewise.
12682
12683 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12684
12685         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12686         with dwarf2_per_objfile.
12687         (create_cus_from_index): Likewise.
12688         (create_signatured_type_table_from_index): Likewise.
12689         (dwarf2_read_index): Likewise.
12690         (dwarf2_initialize_objfile): Likewise.
12691         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12692         per_cu rather than get_dwarf2_per_objfile.
12693
12694 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12695
12696         * dwarf2read.h (struct signatured_type): Forward declare.
12697         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12698         New methods.
12699         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12700         (dw2_get_cutu): ...this.
12701         (dwarf2_per_objfile::get_cu): Rename from...
12702         (dw2_get_cu): ...this.
12703         (dwarf2_per_objfile::get_tu): New.
12704         (create_addrmap_from_index): Adjust.
12705         (create_addrmap_from_aranges): Adjust.
12706         (dw2_find_last_source_symtab): Adjust.
12707         (dw2_map_symtabs_matching_filename): Adjust.
12708         (dw2_symtab_iter_next): Adjust.
12709         (dw2_print_stats): Adjust.
12710         (dw2_expand_all_symtabs): Adjust.
12711         (dw2_expand_symtabs_with_fullname): Adjust.
12712         (dw2_expand_marked_cus): Adjust.
12713         (dw_expand_symtabs_matching_file_matcher): Adjust.
12714         (dw2_map_symbol_filenames): Adjust.
12715         (dw2_debug_names_iterator::next): Adjust.
12716         (dwarf2_initialize_objfile): Adjust.
12717         (set_partial_user): Adjust.
12718         (dwarf2_build_psymtabs_hard): Adjust.
12719
12720 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12721
12722         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12723         Remove unused variables.
12724         (dw2_map_symtabs_matching_filename): Likewise.
12725         (dwarf2_record_block_ranges): Likewise.
12726         (dwarf2_read_addr_index): Likewise.
12727         (follow_die_offset): Likewise.
12728
12729 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12730
12731         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12732         to symbol_file_add_main.
12733
12734 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12735
12736         PR mi/22299
12737         * mi/mi-console.c (do_fputc_async_safe): New.
12738         (mi_console_file::write_async_safe): New.
12739         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12740         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12741         New.
12742         * ui-file.c (ui_file::putstrn): Adjust call to
12743         fputstrn_unfiltered.
12744         * utils.c (printchar): Replace do_fputs and do_fprintf
12745         parameters by do_fputc.
12746         (fputstr_filtered): Adjust call to printchar.
12747         (fputstr_unfiltered): Likewise.
12748         (fputstrn_filtered): Likewise.
12749         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12750         printchar.
12751         * utils.h (do_fputc_ftype): New typedef.
12752         (fputstrn_unfiltered): Add do_fputc parameter.
12753
12754 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12755
12756         * regformats/i386/i386-avx.dat: Remove.
12757
12758 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12759
12760         PR gdb/22979
12761         * amd64-tdep.c (amd64_none_init_abi): New function.
12762         (amd64_x32_none_init_abi): New function.
12763         (_initialize_amd64_tdep): Register handlers for x86-64 and
12764         x64_32 with GDB_OSABI_NONE.
12765         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12766         GDB_OSABI_NONE osabi.
12767
12768 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12769
12770         PR gdb/22980
12771         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12772         GDB_OSABI_NONE.
12773         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12774         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12775
12776 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12777
12778         * common/byte-vector.h (char_vector): New type.
12779         * target.h (target_read_alloc): Return
12780         gdb::optional<byte_vector>.
12781         (target_read_stralloc): Return gdb::optional<char_vector>.
12782         (target_get_osdata): Return gdb::optional<char_vector>.
12783         * target.c (target_read_alloc_1): Templatize.  Replacement
12784         manual memory management with vector.
12785         (target_read_alloc): Change return type, adjust.
12786         (target_read_stralloc): Change return type, adjust.
12787         (target_get_osdata): Change return type, adjust.
12788         * auxv.c (struct auxv_info) <length>: Remove.
12789         <data>: Change type to gdb::optional<byte_vector>.
12790         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12791         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12792         (target_auxv_search): Adjust.
12793         (fprint_target_auxv): Adjust.
12794         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12795         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12796         (linux_make_corefile_notes): Adjust.
12797         * osdata.c (get_osdata): Adjust.
12798         * remote.c (remote_get_threads_with_qxfer): Adjust.
12799         (remote_memory_map): Adjust.
12800         (remote_traceframe_info): Adjust.
12801         (btrace_read_config): Adjust.
12802         (remote_read_btrace): Adjust.
12803         (remote_pid_to_exec_file): Adjust.
12804         * solib-aix.c (solib_aix_get_library_list): Adjust.
12805         * solib-dsbt.c (decode_loadmap): Don't free buf.
12806         (dsbt_get_initial_loadmaps): Adjust.
12807         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12808         * solib-target.c (solib_target_current_sos): Adjust.
12809         * tracepoint.c (sdata_make_value): Adjust.
12810         * xml-support.c (xinclude_start_include): Adjust.
12811         (xml_fetch_content_from_file): Adjust.
12812         * xml-support.h (xml_fetch_another): Change return type.
12813         (xml_fetch_content_from_file): Change return type.
12814         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12815         * xml-tdesc.c (file_read_description_xml): Adjust.
12816         (fetch_available_features_from_target): Change return type.
12817         (target_fetch_description_xml): Adjust.
12818         (target_read_description_xml): Adjust.
12819
12820 2018-04-06  Tom Tromey  <tom@tromey.com>
12821
12822         * value.c (~value): Update.
12823         (struct value) <contents>: Now unique_xmalloc_ptr.
12824         (value_contents_bits_eq, allocate_value_contents)
12825         (value_contents_raw, value_contents_all_raw)
12826         (value_contents_for_printing, value_contents_for_printing_const)
12827         (set_value_enclosing_type): Update.
12828
12829 2018-04-06  Tom Tromey  <tom@tromey.com>
12830
12831         * value.c (range_s): Remove typedef, VEC.
12832         (struct range): Add operator<.
12833         (range_lessthan): Remove.
12834         (ranges_contain): Change type.
12835         (~value): Update.
12836         (struct value) <unavailable, optimized_out>: Now std::vector.
12837         (value_entirely_available)
12838         (value_entirely_covered_by_range_vector)
12839         (value_entirely_unavailable, value_entirely_optimized_out):
12840         Update.
12841         (insert_into_bit_range_vector): Change argument type.
12842         (find_first_range_overlap): Likewise.
12843         (struct ranges_and_idx, value_contents_bits_eq)
12844         (require_not_optimized_out, require_available): Update.
12845         (ranges_copy_adjusted): Change argument types.
12846         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12847
12848 2018-04-06  Tom Tromey  <tom@tromey.com>
12849
12850         * value.c (~value): Update.
12851         (struct value) <parent>: Now a value_ref_ptr.
12852         (value_parent, set_value_parent, value_address, value_copy):
12853         Update.
12854
12855 2018-04-06  Tom Tromey  <tom@tromey.com>
12856
12857         * value.c (struct value): Add constructor, destructor, and member
12858         initializers.
12859         (allocate_value_lazy, value_decref): Update.
12860
12861 2018-04-06  Tom Tromey  <tom@tromey.com>
12862
12863         * value.c (struct value) <released, next>: Remove.
12864         (all_values): Now a std::vector.
12865         (allocate_value_lazy): Update.
12866         (value_next): Remove.
12867         (value_mark, value_free_to_mark, release_value)
12868         (value_release_to_mark): Update.
12869
12870 2018-04-06  Tom Tromey  <tom@tromey.com>
12871
12872         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12873         (free_value_chain): Remove.
12874         * value.c (free_value_chain): Remove.
12875         (value_release_to_mark): Return a std::vector.
12876         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12877         std::vector.
12878         (check_condition): Update.
12879         * eval.c (fetch_subexp_value): Change "val_chain" to a
12880         std::vector.
12881         * breakpoint.c (update_watchpoint): Update.
12882         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12883
12884 2018-04-06  Tom Tromey  <tom@tromey.com>
12885
12886         * value.h (free_all_values): Remove.
12887         * value.c (free_all_values): Remove.
12888
12889 2018-04-06  Tom Tromey  <tom@tromey.com>
12890
12891         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12892         (value_history_chain, value_history_count): Remove.
12893         (value_history): New global.
12894         (record_latest_value, access_value_history, show_values)
12895         (preserve_values): Update.
12896
12897 2018-04-06  Tom Tromey  <tom@tromey.com>
12898
12899         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12900         * varobj.c (varobj_set_display_format, varobj_set_value)
12901         (install_default_visualizer, construct_visualizer)
12902         (install_new_value, ~varobj, varobj_get_value_type)
12903         (my_value_of_variable, varobj_editable_p): Update.
12904         * c-varobj.c (c_describe_child, c_value_of_variable)
12905         (cplus_number_of_children, cplus_describe_child): Update.
12906         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12907         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12908         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12909
12910 2018-04-06  Tom Tromey  <tom@tromey.com>
12911
12912         * printcmd.c (last_examine_address): Change type to
12913         value_ref_ptr.
12914         (do_examine, x_command): Update.
12915
12916 2018-04-06  Tom Tromey  <tom@tromey.com>
12917
12918         * value.c (release_value): Update.
12919         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12920         (struct bpstats) <val>: Now a value_ref_ptr.
12921         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12922         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12923         (~watchpoint, print_it_watchpoint, watch_command_1)
12924         (invalidate_bp_value_on_memory_change): Update.
12925
12926 2018-04-06  Tom Tromey  <tom@tromey.com>
12927
12928         * varobj.c (varobj_clear_saved_item)
12929         (update_dynamic_varobj_children, install_new_value, ~varobj):
12930         Update.
12931         * value.h (value_incref): Move declaration earlier.
12932         (value_decref): Rename from value_free.
12933         (struct value_ref_policy): New.
12934         (value_ref_ptr): New typedef.
12935         (struct value_deleter): Remove.
12936         (gdb_value_up): Remove typedef.
12937         (release_value): Change return type.
12938         (release_value_or_incref): Remove.
12939         * value.c (set_value_parent): Update.
12940         (value_incref): Change return type.
12941         (value_decref): Rename from value_free.
12942         (value_free_to_mark, free_all_values, free_value_chain): Update.
12943         (release_value): Return value_ref_ptr.
12944         (release_value_or_incref): Remove.
12945         (record_latest_value, set_internalvar, clear_internalvar):
12946         Update.
12947         * stack.c (info_frame_command): Don't call value_free.
12948         * python/py-value.c (valpy_dealloc, valpy_new)
12949         (value_to_value_object): Update.
12950         * printcmd.c (do_examine): Update.
12951         * opencl-lang.c (lval_func_free_closure): Update.
12952         * mi/mi-main.c (register_changed_p): Don't call value_free.
12953         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12954         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12955         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12956         value_free.
12957         * guile/scm-value.c (vlscm_free_value_smob)
12958         (vlscm_scm_from_value): Update.
12959         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12960         (frame_unwind_register_unsigned, get_frame_register_bytes)
12961         (put_frame_register_bytes): Don't call value_free.
12962         * findvar.c (address_from_register): Don't call value_free.
12963         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12964         * dwarf2loc.c (entry_data_value_free_closure)
12965         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12966         (dwarf2_evaluate_loc_desc_full): Update.
12967         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12968         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12969         (~watchpoint, watch_command_1)
12970         (invalidate_bp_value_on_memory_change): Update.
12971         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12972
12973 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12974
12975         PR gdb/23022
12976         * warning.m4: Add -Wno-error=deprecated-register.
12977         * configure: Re-generate.
12978
12979 2018-04-05  Tom Tromey  <tom@tromey.com>
12980
12981         * linespec.h: Remove include of "vec.h".
12982
12983 2018-04-05  Tom Tromey  <tom@tromey.com>
12984
12985         * linespec.c (typep): Remove typedef.
12986         (find_methods, find_superclass_methods): Take a std::vector.
12987         (find_method): Use std::vector.
12988
12989 2018-04-05  Tom Tromey  <tom@tromey.com>
12990
12991         * utils.c (compare_strings): Remove.
12992         * utils.h (compare_strings): Remove.
12993         * objc-lang.h (find_imps): Update.
12994         * objc-lang.c (find_methods): Take a std::vector.
12995         (uniquify_strings, find_imps): Likewise.
12996         * linespec.c (find_methods): Take a std::vector.
12997         (decode_objc): Use std::vector.
12998         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12999         a std::vector.
13000         (find_method, find_function_symbols): Use std::vector.
13001
13002 2018-04-05  Tom Tromey  <tom@tromey.com>
13003
13004         * completer.c (completion_tracker::completion_tracker): Remove
13005         cast.
13006         (completion_tracker::discard_completions): Likewise.
13007         * breakpoint.c (ambiguous_names_p): Remove cast.
13008         * ada-lang.c (_initialize_ada_language): Remove cast.
13009         * utils.h (streq): Update.
13010         (streq_hash): Add new declaration.
13011         * utils.c (streq): Return bool.
13012         (streq_hash): New function.
13013
13014 2018-04-05  Tom Tromey  <tom@tromey.com>
13015
13016         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
13017         Remove a string copy.
13018
13019 2018-04-05  Tom Tromey  <tom@tromey.com>
13020
13021         * linespec.c (filter_results): Use std::vector.
13022         (decode_line_2, decode_line_full): Update.
13023
13024 2018-04-05  Tom Tromey  <tom@tromey.com>
13025
13026         * linespec.c (canonical_to_fullform): Return std::string.
13027         (filter_results): Update.
13028         (struct decode_line_2_item): Add constructor.
13029         <fullform, displayform>: Now std::string.
13030         (decode_line_2_compare_items): Now a std::sort comparator.
13031         (decode_line_2): Update.
13032
13033 2018-04-05  Tom Tromey  <tom@tromey.com>
13034
13035         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
13036         (unexpected_linespec_error): Update.
13037         (linespec_parse_basic, parse_linespec): Update.
13038
13039 2018-04-05  Tom Tromey  <tom@tromey.com>
13040
13041         * linespec.c (linespec_parse_basic): Reindent.
13042
13043 2018-04-05  Tom Tromey  <tom@tromey.com>
13044
13045         * minsyms.h (iterate_over_minimal_symbols): Update.
13046         * minsyms.c (iterate_over_minimal_symbols): Take a
13047         gdb::function_view.
13048         * linespec.c (struct collect_minsyms): Remove.
13049         (compare_msyms): Now a std::sort comparator.
13050         (add_minsym): Add parameters.
13051         (search_minsyms_for_name): Update.  Use std::vector.
13052
13053 2018-04-03  Tom Tromey  <tom@tromey.com>
13054
13055         * mipsread.c (read_alphacoff_dynamic_symtab): Use
13056         gdb::byte_vector.
13057
13058 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13059
13060         * MAINTAINERS (Write After Approval): Add Weimin Pan.
13061
13062 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
13063
13064         PR gdb/16959
13065         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
13066         printing static type.
13067
13068 2018-04-01  Tom Tromey  <tom@tromey.com>
13069
13070         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
13071         (rs6000_xfer_shared_libraries): Update.
13072
13073 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
13074
13075         * common/gdb_vecs.h (char_ptr): Remove.
13076         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
13077
13078 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13079
13080         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13081         with std::vector.
13082         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13083
13084 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13085
13086         * tracepoint.h (struct uploaded_tp): Initialize fields.
13087         <actions, step_actions, cmd_strings>: Change type to
13088         std::vector<char *>.
13089         * tracepoint.c (get_uploaded_tp): Allocate with new.
13090         (free_uploaded_tps): Free with delete.
13091         (parse_tracepoint_definition): Adjust to std::vector change.
13092         * breakpoint.c (read_uploaded_action): Likewise.
13093         (create_tracepoint_from_upload): Likewise.
13094         * ctf.c (ctf_write_uploaded_tp): Likewise.
13095         (SET_ARRAY_FIELD): Likewise.
13096         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13097
13098 2018-03-30  Tom Tromey  <tom@tromey.com>
13099
13100         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13101         std::unique_ptr.
13102         (svr4_keep_data_in_core): Update.
13103         (svr4_read_so_list): Update.
13104
13105 2018-03-30  Tom Tromey  <tom@tromey.com>
13106
13107         * windows-nat.c (handle_output_debug_string, handle_exception):
13108         Update.
13109         * target.h (target_read_string): Update.
13110         * target.c (target_read_string): Change "string" to
13111         unique_xmalloc_ptr.
13112         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13113         Update.
13114         * solib-frv.c (frv_current_sos): Update.
13115         * solib-dsbt.c (dsbt_current_sos): Update.
13116         * solib-darwin.c (darwin_current_sos): Update.
13117         * linux-thread-db.c (inferior_has_bug): Update.
13118         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13119         Update.  Remove alloca.
13120         * ada-lang.c (ada_main_name): Update.
13121
13122 2018-03-30  Tom Tromey  <tom@tromey.com>
13123
13124         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13125         (struct dwo_file_deleter): New.
13126         (dwo_file_up): New typedef.
13127         (open_and_init_dwo_file): Use dwo_file_up.
13128         (free_dwo_file_cleanup): Remove.
13129
13130 2018-03-30  Tom Tromey  <tom@tromey.com>
13131
13132         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13133         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13134
13135 2018-03-30  Tom Tromey  <tom@tromey.com>
13136
13137         * dwarf2read.c (class free_cached_comp_units): New class.
13138         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13139         (free_cached_comp_units): Remove function.
13140
13141 2018-03-30  Tom Tromey  <tom@tromey.com>
13142
13143         * utils.h (make_cleanup_unpush_target): Remove.
13144         * inf-ptrace.c (struct target_unpusher): New.
13145         (target_unpush_up) New typedef.
13146         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13147         target_unpush_up.
13148         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13149
13150 2018-03-27  Tom Tromey  <tom@tromey.com>
13151
13152         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13153
13154 2018-03-27  Pedro Alves  <palves@redhat.com>
13155             Tom Tromey  <tom@tromey.com>
13156
13157         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13158         destructor.  Now a class.
13159         (gdb_readline_wrapper_cleanup): Remove function.
13160         (gdb_readline_wrapper): Remove cleanups.
13161
13162 2018-03-27  Tom Tromey  <tom@tromey.com>
13163
13164         * typeprint.h (struct type_print_options) <local_typedefs,
13165         global_typedefs>: Remove "struct" keyword.
13166         (class typedef_hash_table): New class.
13167         (recursively_update_typedef_hash, add_template_parameters)
13168         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13169         (find_typedef_in_hash): Don't declare.
13170         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13171         (typedef_hash_table::recursively_update): Rename from
13172         recursively_update_typedef_hash.  Now a member.
13173         (typedef_hash_table::add_template_parameters): Rename from
13174         add_template_parameters.  Now a member.
13175         (typedef_hash_table::typedef_hash_table): Now a constructor;
13176         rename from create_typedef_hash.
13177         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13178         rename from free_typedef_hash.
13179         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13180         (do_free_global_table): Remove.
13181         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13182         from copy_type_recursive.
13183         (create_global_typedef_table): Remove.
13184         (typedef_hash_table::find_global_typedef): Now a member of
13185         typedef_hash_table.
13186         (typedef_hash_table::find_typedef): Rename from
13187         find_typedef_in_hash; now a member.
13188         (whatis_exp): Update.
13189         * extension.h (struct ext_lang_type_printers): Add constructor and
13190         destructor.
13191         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13192         declare.
13193         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13194         Now a constructor; rename from start_ext_lang_type_printers.
13195         (ext_lang_type_printers): Now a destructor; rename from
13196         free_ext_lang_type_printers.
13197         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13198         Update.
13199         (c_type_print_base_struct_union): Update.  Remove cleanups.
13200
13201 2018-03-27  Tom Tromey  <tom@tromey.com>
13202
13203         * dwarf-index-write.c: Include <cmath>.
13204
13205 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13206
13207         * NEWS: Add entry describing new "set|show varsize-limit" command.
13208         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13209         command.
13210         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13211         "set variable".
13212
13213 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13214
13215         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13216         dwarf-index-write.c
13217         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13218         * dwarf-index-common.c: New file.
13219         * dwarf-index-common.h: New file.
13220         * dwarf-index-write.c: New file.
13221         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13222         (struct dwarf2_section_info): Move from here.
13223         (dwarf2_section_info_def): Likewise.
13224         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13225         (offset_type): Likewise.
13226         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13227         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13228         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13229         (byte_swap): Likewise.
13230         (MAYBE_SWAP): Likewise.
13231         (dwarf2_per_cu_ptr): Likewise.
13232         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13233         (struct tu_stats): Likewise.
13234         (struct dwarf2_per_objfile): Likewise.
13235         (struct dwarf2_per_cu_data): Likewise.
13236         (struct signatured_type): Likewise.
13237         (sig_type_ptr): Likewise.
13238         (DEF_VEC_P (sig_type_ptr)): Likewise.
13239         (INDEX4_SUFFIX): Likewise.
13240         (INDEX5_SUFFIX): Likewise.
13241         (DEBUG_STR_SUFFIX): Likewise.
13242         (dwarf2_read_section): Make non-static.
13243         (mapped_index_string_hash): Move from here.
13244         (dwarf5_djb_hash): Likewise.
13245         (file_write): Likewise.
13246         (class data_buf): Likewise.
13247         (struct symtab_index_entry): Likewise.
13248         (struct mapped_symtab): Likewise.
13249         (find_slot): Likewise.
13250         (hash_expand): Likewise.
13251         (add_index_entry): Likewise.
13252         (uniquify_cu_indices): Likewise.
13253         (class c_str_view): Likewise.
13254         (class c_str_view_hasher): Likewise.
13255         (class vector_hasher): Likewise.
13256         (write_hash_table): Likewise.
13257         (psym_index_map): Likewise.
13258         (struct addrmap_index_data): Likewise.
13259         (add_address_entry): Likewise.
13260         (add_address_entry_worker): Likewise.
13261         (write_address_map): Likewise.
13262         (symbol_kind): Likewise.
13263         (write_psymbols): Likewise.
13264         (struct signatured_type_index_data): Likewise.
13265         (write_one_signatured_type): Likewise.
13266         (recursively_count_psymbols): Likewise.
13267         (recursively_write_psymbols): Likewise.
13268         (class debug_names): Likewise.
13269         (check_dwarf64_offsets): Likewise.
13270         (psyms_seen_size): Likewise.
13271         (write_gdbindex): Likewise.
13272         (write_debug_names): Likewise.
13273         (assert_file_size): Likewise.
13274         (write_psymtabs_to_index): Likewise.
13275         (save_gdb_index_command): Likewise.
13276         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13277         command.
13278         * dwarf2read.h: New file.
13279
13280 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13281
13282         PR gdb/22670
13283         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13284         symbol name if the CU's language stores symbol names in linkage
13285         format.
13286         * language.h (struct language_defn)
13287         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13288         all instances of this struct.
13289
13290 2018-03-26  Tom Tromey  <tom@tromey.com>
13291
13292         * stack.c (backtrace_command_1): Remove verbose code.
13293
13294 2018-03-26  Tom Tromey  <tom@tromey.com>
13295
13296         * python/py-framefilter.c (py_print_type): Don't catch
13297         exceptions.  Return void.
13298         (py_print_value): Likewise.
13299         (py_print_single_arg): Likewise.
13300         (enumerate_args): Don't catch exceptions.
13301         (py_print_args): Likewise.
13302         (py_print_frame): Likewise.
13303         (gdbpy_apply_frame_filter): Catch exceptions here.
13304
13305 2018-03-26  Tom Tromey  <tom@tromey.com>
13306
13307         * stack.c (_initialize_stack): Remove trailing newlines from help
13308         text.  Add "Usage" line to "backtrace" help.
13309
13310 2018-03-26  Tom Tromey  <tom@tromey.com>
13311
13312         PR python/16486:
13313         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13314
13315 2018-03-26  Tom Tromey  <tom@tromey.com>
13316
13317         * python/py-framefilter.c (py_print_single_arg): Return
13318         EXT_LANG_BT_ERROR from catch.
13319
13320 2018-03-26  Tom Tromey  <tom@tromey.com>
13321
13322         PR backtrace/15584:
13323         * stack.c (backtrace_command_1): Move some code into no-filters
13324         "if".
13325
13326 2018-03-26  Tom Tromey  <tom@tromey.com>
13327
13328         * python/py-framefilter.c (throw_quit_or_print_exception): New
13329         function.
13330         (gdbpy_apply_frame_filter): Use it.
13331
13332 2018-03-26  Tom Tromey  <tom@tromey.com>
13333
13334         PR cli/17716:
13335         * python/py-framefilter.c (py_print_type, py_print_value)
13336         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13337         RETURN_MASK_ERROR.
13338
13339 2018-03-26  Tom Tromey  <tom@tromey.com>
13340
13341         * python/py-framefilter.c (enumerate_args): Use
13342         gdb::unique_xmalloc_ptr.
13343
13344 2018-03-26  Tom Tromey  <tom@tromey.com>
13345
13346         * python/py-framefilter.c (py_print_frame): Return
13347         EXT_LANG_BT_OK.
13348         (gdbpy_apply_frame_filter): Update comment.
13349         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13350         Remove.
13351         <EXT_LANG_BT_NO_FILTERS>: Change value.
13352
13353 2018-03-26  Tom Tromey  <tom@tromey.com>
13354
13355         PR backtrace/15582:
13356         * stack.c (backtrace_command): Parse "hide" argument.
13357         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13358         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13359         constant.
13360
13361 2018-03-26  Tom Tromey  <tom@tromey.com>
13362
13363         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13364         add "flags".
13365         (backtrace_command): Remove "fulltrace", add "flags".
13366
13367 2018-03-26  Tom Tromey  <tom@tromey.com>
13368
13369         * stack.c (backtrace_command): Rewrite command line parsing.
13370
13371 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13372
13373         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13374
13375 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13376
13377         * filename-seen-cache.h: Add include guard.
13378
13379 2018-03-26  Keith Seitz  <keiths@redhat.com>
13380
13381         * symfile.c (place_section): Remove "struct" from section_addr_info
13382         in comment.
13383         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13384         "struct" keyword from section_addr_info.
13385
13386 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13387
13388         * regformats/regdef.h (reg): Add constructors.
13389
13390 2018-03-25  Pedro Alves  <palves@redhat.com>
13391
13392         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13393         if then/else bodies in var_func_name extraction.
13394
13395 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13396
13397         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13398         lookup_minimal_symbol() to find symbol entry.
13399         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13400
13401 2018-03-23  Keith Seitz  <keiths@redhat.com>
13402
13403         PR c++/22968
13404         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13405         nested type definitions for C++, too.
13406
13407 2018-03-23  Tom Tromey  <tom@tromey.com>
13408
13409         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13410         a typedef.
13411         (macho_register_oso): Remove.
13412         (macho_symtab_read): Take a std::vector.
13413         (oso_el_compare_name): Now a std::sort comparator.
13414         (macho_symfile_read_all_oso): Take a std::vector.
13415         (macho_symfile_read): Use std::vector.  Remove cleanups.
13416
13417 2018-03-22  Tom Tromey  <tom@tromey.com>
13418
13419         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13420         (record_full_goto_bookmark): Use std::string.
13421
13422 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13423
13424         PR tdep/18295
13425         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13426         a single mask.
13427
13428 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13429
13430         * rs6000-tdep.c (store_insn_p): New function.
13431         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13432         and cr_reg to their unshifted values. Use store_insn_p to
13433         match LR saves using either R1 or fdata->alloca_reg. Use
13434         store_insn_p to match CR saves. Set alloca_reg_offset
13435         when alloca_reg and framep are set. Remove lr_reg shift
13436         when assigning to fdata->lr_register.
13437
13438 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13439
13440         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13441         command line args instead of emitting a warning.
13442
13443 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13444
13445         * tracepoint.h (struct static_tracepoint_marker): Initialize
13446         fields, define default constructor, move constructor and move
13447         assignment, disable the rest.
13448         <str_id, extra>: Make std::string.
13449         (release_static_tracepoint_marker): Remove.
13450         (free_current_marker): Remove.
13451         * tracepoint.c (free_current_marker): Remove.
13452         (parse_static_tracepoint_marker_definition): Adjust to
13453         std::string, use new hex2str overload.
13454         (release_static_tracepoint_marker): Remove.
13455         (print_one_static_tracepoint_marker): Get marker by reference
13456         and adjust to std::string.
13457         (info_static_tracepoint_markers_command): Adjust to std::vector
13458         changes
13459         * target.h (static_tracepoint_marker_p): Remove typedef.
13460         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13461         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13462         bool.
13463         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13464         * target-debug.h
13465         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13466         (target_debug_print_std_vector_static_tracepoint_marker): New.
13467         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13468         to...
13469         (target_debug_print_static_tracepoint_marker_p): ... this.
13470         * target-delegates.c: Re-generate.
13471         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13472         Make std::string.
13473         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13474         (decode_static_tracepoint_spec): Adjust to std::vector.
13475         (tracepoint_print_one_detail): Adjust to std::string.
13476         (strace_marker_decode_location): Adjust to std::string.
13477         (update_static_tracepoint): Adjust to std::string, remove call
13478         to release_static_tracepoint_marker.
13479         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13480         Adjust to std::vector.
13481         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13482         (remote_static_tracepoint_markers_by_strid): Adjust to
13483         std::vector.
13484         * common/rsp-low.h (hex2str): New overload with explicit count
13485         of bytes.
13486         * common/rsp-low.c (hex2str): New overload with explicit count
13487         of bytes.
13488         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13489         (_initialize_rsp_low_selftests): Add test_hex2str test.
13490         * unittests/tracepoint-selftests.c
13491         (test_parse_static_tracepoint_marker_definition): Adjust to
13492         std::string.
13493
13494 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13495
13496         * tracepoint.c (parse_static_tracepoint_marker_definition):
13497         Consider case where the definition is followed by more
13498         definitions.
13499         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13500         tracepoint-selftests.c.
13501         * unittests/tracepoint-selftests.c: New.
13502
13503 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13504
13505         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13506         Carvalho.
13507
13508 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13509
13510         * symtab.c (find_pc_sect_line): fixed indentation.
13511
13512 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13513
13514         * symtab.c (find_pc_sect_line): now uses binary search.
13515
13516 2018-03-19  Tom Tromey  <tom@tromey.com>
13517
13518         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13519         "IDENT" production.
13520
13521 2018-03-19  Pedro Alves  <palves@redhat.com>
13522             Tom Tromey  <tom@tromey.com>
13523
13524         * unittests/observable-selftests.c: New file.
13525         * common/observable.h: New file.
13526         * observable.h: New file.
13527         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13528         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13529         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13530         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13531         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13532         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13533         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13534         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13535         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13536         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13537         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13538         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13539         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13540         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13541         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13542         tui/tui-interp.c, valops.c: Update all users.
13543         * tui/tui-hooks.c (tui_bp_created_observer)
13544         (tui_bp_deleted_observer, tui_bp_modified_observer)
13545         (tui_inferior_exit_observer, tui_before_prompt_observer)
13546         (tui_normal_stop_observer, tui_register_changed_observer):
13547         Remove.
13548         (tui_observers_token): New global.
13549         (attach_or_detach, tui_attach_detach_observers): New functions.
13550         (tui_install_hooks, tui_remove_hooks): Use
13551         tui_attach_detach_observers.
13552         * record-btrace.c (record_btrace_thread_observer): Remove.
13553         (record_btrace_thread_observer_token): New global.
13554         * observer.sh: Remove.
13555         * observer.c: Rename to observable.c.
13556         * observable.c (namespace gdb_observers): Define new objects.
13557         (observer_debug): Move into gdb_observers namespace.
13558         (struct observer, struct observer_list, xalloc_observer_list_node)
13559         (xfree_observer_list_node, generic_observer_attach)
13560         (generic_observer_detach, generic_observer_notify): Remove.
13561         (_initialize_observer): Update.
13562         Don't include observer.inc.
13563         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13564         (clean mostlyclean): Likewise.
13565         (observer.h, observer.inc): Remove targets.
13566         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13567         (COMMON_SFILES): Use observable.c, not observer.c.
13568         * .gitignore: Remove observer.h.
13569
13570 2018-03-18  Tom Tromey  <tom@tromey.com>
13571
13572         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13573         gdb::def_vector.
13574         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13575
13576 2018-03-17  Tom Tromey  <tom@tromey.com>
13577
13578         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13579
13580 2018-03-17  Tom Tromey  <tom@tromey.com>
13581
13582         * target.c (class scoped_target_fd): New.
13583         (target_fileio_close_cleanup): Remove.
13584         (target_fileio_read_alloc_1): Use scoped_target_fd.
13585
13586 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13587
13588         * silent-rules.mk: New.
13589         * Makefile.in: Include silent-rules.mk
13590         (srcdir, VPATH, top_srcdir): Move up.
13591         (COMPILE): Add ECHO_CXX.
13592         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13593         (init.c): Add ECHO_INIT_C.
13594         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13595         (version.c): Add ECHO_GEN.
13596         (printcmd.o): Add ECHO_CXX.
13597         (target-float.o): Add ECHO_CXX.
13598         (ada-exp.o): Add ECHO_CXX.
13599         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13600         (insight$(EXEEXT)): Add ECHO_CXXLD.
13601         * gnulib/configure.ac: Add AM_SILENT_RULES.
13602         * gnulib/aclocal.m4: Re-generate.
13603         * gnulib/configure: Re-generate.
13604         * gnulib/import/Makefile.in: Re-generate.
13605
13606 2018-03-16  Tom Tromey  <tom@tromey.com>
13607
13608         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13609         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13610         * utils.c (do_free_section_addr_info)
13611         (make_cleanup_free_section_addr_info): Remove.
13612         * symfile.h (struct other_sections): Add constructor.
13613         (struct section_addr_info): Remove.
13614         (section_addr_info): New typedef.
13615         (struct sym_fns) <sym_offsets>: Change type of parameter.
13616         (build_section_addr_info_from_objfile)
13617         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13618         (default_symfile_offsets, symbol_file_add)
13619         (symbol_file_add_from_bfd)
13620         (build_section_addr_info_from_section_table): Update.
13621         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13622         * symfile.c (alloc_section_addr_info): Remove.
13623         (build_section_addr_info_from_section_table): Change return type.
13624         Update.
13625         (build_section_addr_info_from_bfd)
13626         (build_section_addr_info_from_objfile): Likewise.
13627         (free_section_addr_info): Remove.
13628         (relative_addr_info_to_section_offsets): Change type of "addrs".
13629         (addrs_section_compar): Now a std::sort comparator.
13630         (addrs_section_sort): Change return type.
13631         (addr_info_make_relative): Change type of "addrs".  Update.
13632         (default_symfile_offsets, syms_from_objfile_1)
13633         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13634         (symbol_file_add_separate): Update.
13635         (symbol_file_add): Change type of "addrs".  Update.
13636         (add_symbol_file_command): Update.  Remove cleanups.
13637         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13638         cleanups.
13639         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13640         * solib.c (solib_read_symbols): Update.
13641         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13642         * machoread.c (macho_symfile_offsets): Update.
13643         * jit.c (jit_bfd_try_read_symtab): Update.
13644
13645 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13646
13647         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13648         unittests/utils-selftests.c.
13649         * unittests/utils-selftests.c: New file.
13650
13651 2018-03-14  Tom Tromey  <tom@tromey.com>
13652
13653         PR cli/14977:
13654         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13655         for NULL.
13656
13657 2018-03-14  Tom Tromey  <tom@tromey.com>
13658
13659         PR cli/19918:
13660         * printcmd.c (printf_pointer): Allow "-" in format.
13661
13662 2018-03-14  Tom Tromey  <tom@tromey.com>
13663
13664         * printcmd.c (_initialize_printcmd): Add usage to printf.
13665
13666 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13667
13668         * MAINTAINERS: Update my email address.
13669
13670 2018-03-13  Tom Tromey  <tom@tromey.com>
13671
13672         * machoread.c (macho_check_dsym): Change filenamep to a
13673         std::string*.
13674         (macho_symfile_read): Update.
13675         * symfile.c (load_command): Use std::string.
13676
13677 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13678
13679         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13680         to error message string.
13681         (riscv_register_name): Use xsnprintf instead of sprintf.
13682         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13683         internal_error.
13684         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13685         error.
13686         (riscv_push_dummy_call): Likewise.
13687
13688 2018-03-12  Tom Tromey  <tom@tromey.com>
13689
13690         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13691         Use gdb::byte_vector.
13692         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13693
13694 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13695
13696         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13697         parameter type to readable_regcache.
13698         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13699         the declaration.
13700
13701 2018-03-11  Tom Tromey  <tom@tromey.com>
13702
13703         * dwarf2read.c (struct nextfield): Add initializers.
13704         (struct nextfnfield): Remove.
13705         (struct fnfieldlist): Add initializers.  Remove "length" and
13706         "head", use std::vector.
13707         (struct decl_field_list): Remove.
13708         (struct field_info): Add initializers.
13709         <fields, baseclasses>: Now std::vector.
13710         <nbaseclasses, nfnfields, typedef_field_list_count,
13711         nested_types_list_count>: Remove.
13712         (dwarf2_add_field, dwarf2_add_type_defn)
13713         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13714         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13715         (process_structure_scope): Update.
13716
13717 2018-03-11  Tom Tromey  <tom@tromey.com>
13718
13719         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13720         for use by std::sort.
13721         (build_type_psymtabs_1): Use std::vector.
13722
13723 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13724
13725         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13726         and LIBMPFR in the printed configuration.
13727
13728 2018-03-08  Tom Tromey  <tom@tromey.com>
13729
13730         * source.c (get_filename_and_charpos): Use scoped_fd.
13731         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13732         (procfs_pidlist): Likewise.
13733         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13734         (iterate_over_mappings): Likewise.
13735
13736 2018-03-08  Tom Tromey  <tom@tromey.com>
13737
13738         * infcall.c (struct call_return_meta_info)
13739         <stack_temporaries_enabled>: Remove.
13740         (get_call_return_value, call_function_by_hand_dummy): Update.
13741         * thread.c (disable_thread_stack_temporaries): Remove.
13742         (enable_thread_stack_temporaries): Remove.
13743         (thread_stack_temporaries_enabled_p): Return bool.
13744         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13745         (get_last_thread_stack_temporary): Update.
13746         * eval.c (evaluate_subexp): Update.
13747         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13748         class, not a function.
13749         (value_ptr, value_vec): Remove typedefs.
13750         (class thread_info) <stack_temporaries_enabled>: Now bool.
13751         <stack_temporaries>: Now a std::vector.
13752         (thread_stack_temporaries_enabled_p)
13753         (value_in_thread_stack_temporaries): Return bool.
13754
13755 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13756
13757         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13758         (getpkt_or_notif_sane_1): Likewise.
13759
13760 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13761
13762         * build-id.c (build_id_to_debug_bfd): Use std::string.
13763
13764 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13765
13766         * build-id.c (find_separate_debug_file_by_buildid): Return
13767         std::string.
13768         * build-id.h (find_separate_debug_file_by_buildid): Return
13769         std::string.
13770         * coffread.c (coff_symfile_read): Adjust to std::string.
13771         * elfread.c (elf_symfile_read): Adjust to std::string.
13772         * symfile.c (separate_debug_file_exists): Change parameter to
13773         std::string.
13774         (find_separate_debug_file): Return std::string.
13775         (find_separate_debug_file_by_debuglink): Return std::string.
13776         * symfile.h (find_separate_debug_file_by_debuglink): Return
13777         std::string.
13778
13779 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13780
13781         * common/xml-utils.c (xml_escape_text): Move code to...
13782         (xml_escape_text_append): ... this new function.
13783         * common/xml-utils.h (xml_escape_text_append): New declaration.
13784         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13785         New function.
13786         (_initialize_xml_utils): register test_xml_escape_text_append as
13787         a selftest.
13788
13789 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13790
13791         * defs.h: Remove MAX_REGISTER_SIZE.
13792         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13793         asserts.
13794         * python/py-unwind.c (pyuw_sniffer): Likewise.
13795
13796 2018-03-07  Tom Tromey  <tom@tromey.com>
13797
13798         * linux-tdep.c (linux_info_proc): Update.
13799         * target.h (struct target_ops) <to_fileio_readlink>: Return
13800         optional<string>.
13801         (target_fileio_readlink): Return optional<string>.
13802         * remote.c (remote_hostio_readlink): Return optional<string>.
13803         * inf-child.c (inf_child_fileio_readlink): Return
13804         optional<string>.
13805         * target.c (target_fileio_readlink): Return optional<string>.
13806
13807 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13808
13809         * regcache.c (cooked_read_test): Add riscv to the list of
13810         architectures that have a save_reggroup.
13811
13812 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13813
13814         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13815         value is not a dynamic class object.
13816
13817 2018-03-06  Tom Tromey  <tom@tromey.com>
13818
13819         * rust-exp.y: Formatting fixes.
13820
13821 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13822
13823         * riscv-tdep.c (riscv_register_name): Remove target description
13824         support.
13825         (riscv_gdbarch_init): Remove target description check.
13826
13827 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13828
13829         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13830         comment.
13831         * riscv-tdep.h: Likewise.
13832
13833 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13834
13835         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13836         (riscv_pseudo_register_write): Delete.
13837         (riscv_gdbarch_init): Remove all use of pseudo registers.
13838
13839 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13840
13841         * record-btrace.c (btrace_print_lines): Replace cleanup
13842         parameter with RAII equivalents.
13843         (btrace_insn_history): Replace cleanup with RAII equivalents.
13844         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13845         make_cleanup_ui_out_tuple_begin_end): Remove.
13846         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13847         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13848         make_cleanup_ui_out_list_begin_end): Remove.
13849
13850 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13851
13852         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13853         parameter types to std::vector.  Use bool.
13854         (record_btrace_wait): Replace VEC(tp_t) with
13855         std::vector<thread_info *>.
13856         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13857
13858 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13859
13860         * record-btrace.c (record_btrace_disable_callback): Remove.
13861         (struct scoped_btrace_disable): New.
13862         (record_btrace_open): Use scoped_btrace_disable.
13863
13864 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13865
13866         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13867         reading values from registers.
13868
13869 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13870
13871         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13872         where appropriate.
13873
13874 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13875
13876         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13877         change parameter type.  Use GDB's print functions, and use
13878         core_addr_to_string where appropriate.
13879         (riscv_push_dummy_call): Use core_addr_to_string where
13880         appropriate, update call to riscv_print_arg_location, and reindent
13881         a few lines.
13882         (riscv_return_value): Update call to riscv_print_arg_location.
13883
13884 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13885             Tim Newsome <tim@sifive.com>
13886             Albert Ou <a0u@eecs.berkeley.edu>
13887             Darius Rad <darius@bluespec.com>
13888
13889         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13890         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13891         (ALLDEPFILES): Add riscv-tdep.c
13892         * configure.tgt: Add riscv support.
13893         * riscv-tdep.c: New file.
13894         * riscv-tdep.h: New file.
13895         * NEWS: Mention new target.
13896         * MAINTAINERS: Add entry for riscv.
13897
13898 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13899
13900         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13901         fields within aggregates.
13902
13903 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13904
13905         * record-btrace.c (btrace_print_lines): Change type of flags to
13906         gdb_disassembly_flags.
13907
13908 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13909
13910         * fbsd-nat.c: Include "inf-ptrace.h".
13911         (USE_SIGTRAP_SIGINFO): Conditionally define.
13912         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13913         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13914         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13915         function.
13916         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13917         Likewise.
13918         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13919         Likewise.
13920         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13921         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13922         "supports_stopped_by_hw_breakpoint" target methods.
13923
13924 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13925
13926         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13927         * fbsd-nat.c (debug_fbsd_nat): New variable.
13928         (show_fbsd_nat_debug): New function.
13929         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13930         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13931
13932 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13933
13934         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13935         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13936         prototype.
13937         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13938         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13939         method.
13940
13941 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13942
13943         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13944         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13945
13946 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13947
13948         * charset.c (struct charset_vector): New.
13949         (charsets): Change type to charset_vector.
13950         (find_charset_names): Adjust.
13951         (add_one): Adjust.
13952         (_initialize_charset): Adjust.
13953
13954 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13955
13956         * progspace.h (struct program_space) <deleted_solibs>: Change
13957         type to std::vector<std::string>.
13958         * progspace.c (clear_program_space_solib_cache): Adjust.
13959         * breakpoint.c (print_solib_event): Adjust.
13960         (check_status_catch_solib): Adjust.
13961         * solib.c (update_solib_list): Adjust.
13962         * ui-out.h (class ui_out) <field_string>: New overload.
13963         * ui-out.c (ui_out::field_string): New overload.
13964
13965 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13966
13967         * progspace.h (struct program_space): Add constructor and
13968         destructor, initialize fields.
13969         (add_program_space): Remove.
13970         * progspace.c (add_program_space): Rename to...
13971         (program_space::program_space): ... this.
13972         (release_program_space): Rename to...
13973         (program_space::~program_space): ... this.
13974         (delete_program_space): Use delete to delete program_space.
13975         (initialize_progspace): Use new to allocate program_space.
13976         * inferior.c (add_inferior_with_spaces): Likewise.
13977         (clone_inferior_command): Likewise.
13978         * infrun.c (follow_fork_inferior): Likewise.
13979         (handle_vfork_child_exec_or_exit): Likewise.
13980
13981 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13982
13983         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13984         (delim_string_to_char_ptr_vec): Return std::vector of
13985         gdb::unique_xmalloc_ptr.
13986         (dirnames_to_char_ptr_vec_append): Take std::vector of
13987         gdb::unique_xmalloc_ptr.
13988         (dirnames_to_char_ptr_vec): Return std::vector of
13989         gdb::unique_xmalloc_ptr.
13990         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13991         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13992         (delim_string_to_char_ptr_vec): Return an std::vector of
13993         gdb::unique_xmalloc_ptr, adjust the code.
13994         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13995         gdb::unique_xmalloc_ptr, adjust the code.
13996         (dirnames_to_char_ptr_vec): Return an std::vector of
13997         gdb::unique_xmalloc_ptr, adjust the code.
13998         * auto-load.c (auto_load_safe_path_vec): Change type to
13999         std::vector of gdb::unique_xmalloc_ptr.
14000         (auto_load_expand_dir_vars): Return an std::vector of
14001         gdb::unique_xmalloc_ptr, adjust the code.
14002         (auto_load_safe_path_vec_update): Adjust.
14003         (filename_is_in_auto_load_safe_path_vec): Adjust.
14004         (auto_load_objfile_script_1): Adjust.
14005         * build-id.c (build_id_to_debug_bfd): Adjust.
14006         * linux-thread-db.c (thread_db_load_search): Adjust.
14007         * source.c (add_path): Adjust.
14008         (openp): Adjust.
14009         * symfile.c (find_separate_debug_file): Adjust.
14010         * utils.c (do_free_char_ptr_vec): Remove.
14011         (make_cleanup_free_char_ptr_vec): Remove.
14012
14013 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
14014
14015         PR gdb/22907
14016         * common/pathstuff.c: Conditionally include "<windows.h>".
14017
14018 2018-03-01  Georg Sauthoff  <mail@georg.so>
14019
14020         PR gdb/22888
14021         * gcore.in: Quote variables and switch interpreter to bash.
14022
14023 2018-03-01  Tom Tromey  <tom@tromey.com>
14024
14025         * dwarf2read.c (alloc_discriminant_info): Fix default_index
14026         assertion.  Add assertion for discriminant_index.
14027         (quirk_rust_enum): Use correct base type name in univariant case.
14028
14029 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
14030
14031         * record.c (get_call_history_modifiers): Return a
14032         record_print_flags.
14033         (cmd_record_call_history): Adjust.
14034         * record-btrace.c (record_btrace_call_history): Adjust.
14035         (record_btrace_call_history_range): Adjust.
14036         (record_btrace_call_history_from): Adjust.
14037         * target-debug.h (target_debug_print_record_print_flags): New.
14038         * target-delegates.c: Re-generate.
14039         * target.c (target_call_history): Change flags type.
14040         (target_call_history_from): Likewise.
14041         (target_call_history_range): Likewise.
14042         * target.h (struct target_ops) <target_call_history>: Likewise.
14043         (target_call_history_from): Likewise.
14044         (target_call_history_range): Likewise.
14045
14046 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14047             Simon Marchi  <simon.marchi@polymtl.ca>
14048
14049         * common/common-utils.c: Include "sys/stat.h".
14050         (is_regular_file): Move here from "source.c"; change return
14051         type to "bool".
14052         * common/common-utils.h (is_regular_file): New prototype.
14053         * common/pathstuff.c (contains_dir_separator): New function.
14054         * common/pathstuff.h (contains_dir_separator): New prototype.
14055         * source.c: Don't include "sys/stat.h".
14056         (is_regular_file): Move to "common/common-utils.c".
14057
14058 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
14059
14060         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
14061         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
14062         * auto-load.c: Include "common/pathstuff.h".
14063         * common/common-def.h (current_directory): Move here.
14064         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
14065         function.
14066         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
14067         prototype.
14068         * common/pathstuff.c: New file.
14069         * common/pathstuff.h: New file.
14070         * compile/compile.c: Include "common/pathstuff.h".
14071         * defs.h (current_directory): Move to "common/common-defs.h".
14072         * dwarf2read.c: Include "common/pathstuff.h".
14073         * exec.c: Likewise.
14074         * guile/scm-safe-call.c: Likewise.
14075         * linux-thread-db.c: Likewise.
14076         * main.c: Likewise.
14077         * nto-tdep.c: Likewise.
14078         * objfiles.c: Likewise.
14079         * source.c: Likewise.
14080         * symtab.c: Likewise.
14081         * utils.c: Include "common/pathstuff.h".
14082         (gdb_realpath): Move to "common/pathstuff.c".
14083         (gdb_realpath_keepfile): Likewise.
14084         (gdb_abspath): Likewise.
14085         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14086         (gdb_realpath_keepfile): Likewise.
14087         (gdb_abspath): Likewise.
14088
14089 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14090
14091         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14092         wildcard process pid for super_resume for kernels with a
14093         specific bug.
14094
14095 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14096
14097         * compile/compile.c (get_args): Add additional comments
14098         explaining function.
14099
14100 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14101             Tom Tromey  <tom@tromey.com>
14102
14103         * target.h (memory_write_request_s): Remove typedef.  Don't define
14104         VEC.
14105         (target_write_memory_blocks): Change argument to std::vector.
14106         (struct memory_write_request): Add constructor.
14107         * target-memory.c (compare_block_starting_address): Return bool.
14108         Change argument types.
14109         (claim_memory): Change arguments to use std::vector.
14110         (split_regular_and_flash_blocks, blocks_to_erase)
14111         (compute_garbled_blocks): Likewise.
14112         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14113         (target_write_memory_blocks): Change argument to std::vector.
14114         * symfile.c (struct load_section_data): Add constructor and
14115         destructor.  Use std::vector for "requests".
14116         (struct load_progress_data): Add initializers.
14117         (load_section_callback): Update.  Use "new".
14118         (clear_memory_write_data): Remove.
14119         (generic_load): Update.
14120
14121 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14122
14123         * arch/aarch64.h: Use common/tdesc.h.
14124
14125 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14126
14127         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14128         architecture with a 64-bit ABI.
14129
14130 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14131
14132         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14133         ahead of target description loading.
14134
14135 2018-02-26  Tom Tromey  <tom@tromey.com>
14136
14137         * stack.c (backtrace_command_1): Update.
14138         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14139         of "flags".
14140         * python/py-framefilter.c (py_print_frame)
14141         (gdbpy_apply_frame_filter): Change type of "flags".
14142         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14143         of "flags".
14144         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14145         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14146         * extension.h (enum frame_filter_flag): Rename from
14147         frame_filter_flags.
14148         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14149         (apply_ext_lang_frame_filter): Change type of "flags".
14150         * extension.c (apply_ext_lang_frame_filter): Change type of
14151         "flags".
14152         * extension-priv.h (struct extension_language_ops)
14153         <apply_frame_filter>: Change type of "flags".
14154
14155 2018-02-26  Tom Tromey  <tom@tromey.com>
14156
14157         PR python/16497:
14158         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14159         off-by-one in py_end computation.
14160         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14161         PRINT_MORE_FRAMES.
14162         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14163         constant.
14164
14165 2018-02-26  Tom Tromey  <tom@tromey.com>
14166
14167         * dwarf2read.c (struct variant_field): New.
14168         (struct nextfield) <variant>: New field.
14169         (dwarf2_add_field): Handle DW_TAG_variant_part.
14170         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14171         discriminated union.
14172         (read_structure_type): Handle DW_TAG_variant_part.
14173         (handle_struct_member_die): New function, extracted from
14174         process_structure_scope.  Handle DW_TAG_variant.
14175         (process_structure_scope): Handle discriminated unions.  Call
14176         handle_struct_member_die.
14177
14178 2018-02-26  Tom Tromey  <tom@tromey.com>
14179
14180         * rust-lang.h (rust_last_path_segment): Declare.
14181         * rust-lang.c (rust_last_path_segment): Now public.  Change
14182         contract.
14183         (struct disr_info): Remove.
14184         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14185         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14186         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14187         (rust_enum_p, rust_enum_variant): New function.
14188         (rust_underscore_fields): Remove "offset" parameter.
14189         (rust_print_enum): New function.
14190         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14191         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14192         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14193         enums.
14194         (rust_internal_print_type): New function, from rust_print_type.
14195         Remove enum code.
14196         (rust_print_type): Call rust_internal_print_type.
14197         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14198         Update enum handling.
14199         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14200         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14201         (rust_union_quirks): New functions.
14202         (process_full_comp_unit, process_full_type_unit): Call
14203         rust_union_quirks.
14204         (process_structure_scope): Update rust_unions if necessary.
14205
14206 2018-02-26  Tom Tromey  <tom@tromey.com>
14207
14208         * value.h (value_union_variant): Declare.
14209         * valops.c (value_union_variant): New function.
14210         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14211         (struct discriminant_info): New.
14212         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14213         enumerator.
14214         (struct main_type) <flag_discriminated_union>: New field.
14215
14216 2018-02-26  Tom Tromey  <tom@tromey.com>
14217
14218         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14219         unittests/unpack-selftests.c.
14220         * unittests/unpack-selftests.c: New file.
14221         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14222
14223 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14224
14225         * dwarf2read.c (struct partial_die_info) <read>: New method.
14226         (read_partial_die): Remove the declaration.
14227         (load_partial_dies): Update.
14228         (partial_die_info::partial_die_info):
14229         (read_partial_die): Change it to partial_die_info::read.
14230
14231 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14232
14233         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14234         (fixup_partial_die): Remove declaration.
14235         (scan_partial_symbols): Update.
14236         (partial_die_parent_scope): Likewise.
14237         (partial_die_full_name): Likewise.
14238         (fixup_partial_die): Change it to partial_die_info::fixup.
14239
14240 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14241
14242         * dwarf2read.c (read_partial_die): Update the declaration.
14243         (load_partial_dies): Caller update.
14244         (read_partial_die): Remove one argument abbrev_len.
14245
14246 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14247
14248         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14249         assignment operator.
14250         (load_partial_dies): Use ctor and copy ctor.
14251         (read_partial_die): Update.
14252         (dwarf2_cu::find_partial_die): Use ctor.
14253
14254 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14255
14256         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14257         (find_partial_die_in_comp_unit): Change it to
14258         dwarf2_cu::find_partial_die.
14259         (find_partial_die): Update.
14260
14261 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14262
14263         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14264         is NULL.
14265
14266 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14267
14268         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14269
14270 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14271
14272         * arch/amd64.h: Use common/tdesc.h.
14273         * arch/i386.c: Likewise.
14274         * arch/i386.h: Likewise.
14275         * arch/tic6x.c: Likewise.
14276         * arch/tdesc.h: Move file from here...
14277         * common/tdesc.h: ...to here.
14278         * features/aarch64-core.c: Regenerate.
14279         * features/aarch64-fpu.c: Regenerate.
14280         * features/i386/32bit-avx.c: Regenerate.
14281         * features/i386/32bit-avx512.c: Regenerate.
14282         * features/i386/32bit-core.c: Regenerate.
14283         * features/i386/32bit-linux.c: Regenerate.
14284         * features/i386/32bit-mpx.c: Regenerate.
14285         * features/i386/32bit-pkeys.c: Regenerate.
14286         * features/i386/32bit-sse.c: Regenerate.
14287         * features/i386/64bit-avx.c: Regenerate.
14288         * features/i386/64bit-avx512.c: Regenerate.
14289         * features/i386/64bit-core.c: Regenerate.
14290         * features/i386/64bit-linux.c: Regenerate.
14291         * features/i386/64bit-mpx.c: Regenerate.
14292         * features/i386/64bit-pkeys.c: Regenerate.
14293         * features/i386/64bit-segments.c: Regenerate.
14294         * features/i386/64bit-sse.c: Regenerate.
14295         * features/i386/x32-core.c: Regenerate.
14296         * features/tic6x-c6xp.c: Regenerate.
14297         * features/tic6x-core.c: Regenerate.
14298         * features/tic6x-gp.c: Regenerate.
14299         * target-descriptions.c: Use common/tdesc.h.
14300         * target-descriptions.h: Likewise.
14301
14302 2018-02-24  Tom Tromey  <tom@tromey.com>
14303
14304         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14305         (try_thread_db_load_from_dir, thread_db_load_search): Use
14306         std::string.
14307         (info_auto_load_libthread_db_compare): Return bool.  Change
14308         argument types.
14309         (info_auto_load_libthread_db): Use std::vector, std::string.
14310         Remove cleanups.
14311
14312 2018-02-24  Tom Tromey  <tom@tromey.com>
14313
14314         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14315         std::string.
14316         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14317         std::string*.
14318         * gdbarch.c: Rebuild.
14319         * gdbarch.h: Rebuild.
14320         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14321         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14322         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14323         std::string*.
14324
14325 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14326
14327         * gdbtypes.h (sect_offset): Change type to uint64_t.
14328         (sect_offset_str): New function.
14329         * dwarf2read.c (create_addrmap_from_aranges): Use
14330         sect_offset_str.
14331         (error_check_comp_unit_head): Likewise.
14332         (create_debug_type_hash_table): Likewise.
14333         (read_cutu_die_from_dwo): Likewise.
14334         (init_cutu_and_read_dies): Likewise.
14335         (init_cutu_and_read_dies_no_follow): Likewise.
14336         (process_psymtab_comp_unit_reader): Likewise.
14337         (partial_die_parent_scope): Likewise.
14338         (peek_die_abbrev): Likewise.
14339         (process_queue): Likewise.
14340         (dwarf2_physname): Likewise.
14341         (read_namespace_alias): Likewise.
14342         (read_import_statement): Likewise.
14343         (create_dwo_cu_reader): Likewise.
14344         (create_cus_hash_table): Likewise.
14345         (lookup_dwo_cutu): Likewise.
14346         (inherit_abstract_dies): Likewise.
14347         (read_func_scope): Likewise.
14348         (read_call_site_scope): Likewise.
14349         (dwarf2_add_member_fn): Likewise.
14350         (read_common_block): Likewise.
14351         (read_module_type): Likewise.
14352         (read_typedef): Likewise.
14353         (read_subrange_type): Likewise.
14354         (load_partial_dies): Likewise.
14355         (read_partial_die): Likewise.
14356         (find_partial_die): Likewise.
14357         (read_str_index): Likewise.
14358         (dwarf2_string_attr): Likewise.
14359         (build_error_marker_type): Likewise.
14360         (lookup_die_type): Likewise.
14361         (dump_die_shallow): Likewise.
14362         (follow_die_ref): Likewise.
14363         (dwarf2_fetch_die_loc_sect_off): Likewise.
14364         (dwarf2_fetch_constant_bytes): Likewise.
14365         (follow_die_sig): Likewise.
14366         (get_signatured_type): Likewise.
14367         (get_DW_AT_signature_type): Likewise.
14368         (dwarf2_find_containing_comp_unit): Likewise.
14369         (set_die_type): Likewise.
14370
14371 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14372
14373         * arch/aarch64.c: Include "common-defs.h".
14374         * arch/amd64.c: Likewise.
14375         * arch/i386.c: Likewise.
14376
14377 2018-02-21  Tom Tromey  <tom@tromey.com>
14378
14379         * value.h: (extract_field_op): Update.
14380         * eval.c (extract_field_op): Return a const char *.
14381         * expression.h (parse_expression_for_completion): Update.
14382         * completer.c (complete_expression): Update.
14383         (add_struct_fields): Make fieldname const.
14384         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14385         (mark_completion_tag, parse_exp_in_context_1): Update.
14386         (parse_expression_for_completion): Change "name" to
14387         unique_xmalloc_ptr*.
14388
14389 2018-02-21  Tom Tromey  <tom@tromey.com>
14390
14391         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14392
14393 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14394
14395         * avr-tdep.c (avr_read_pc): Change parameter type to
14396         readable_regcache.
14397         * gdbarch.sh (read_pc): Likewise.
14398         * gdbarch.c: Re-generated.
14399         * gdbarch.h: Re-generated.
14400         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14401         readable_regcache.
14402         * ia64-tdep.c (ia64_read_pc): Likewise.
14403         * mips-tdep.c (mips_read_pc): Likewise.
14404         * spu-tdep.c (spu_read_pc): Likewise.
14405
14406 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14407
14408         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14409         * regcache-dump.c: New file.
14410         * regcache.c: Move register_dump to regcache-dump.c.
14411         (maintenance_print_registers): Likewise.
14412         (maintenance_print_raw_registers): Likewise.
14413         (maintenance_print_cooked_registers): Likewise.
14414         (maintenance_print_register_groups): Likewise.
14415         (maintenance_print_remote_registers): Likewise.
14416         (_initialize_regcache): Likewise.
14417         * regcache.h (register_dump): Moved from regcache.c.
14418
14419 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14420
14421         * regcache.c (regcache::regcache): Update.
14422         (regcache::invalidate): Move it to detached_regcache::invalidate.
14423         (get_thread_arch_aspace_regcache): Update.
14424         (regcache::raw_update): Update.
14425         (regcache::cooked_read): Remove some code.
14426         (regcache::cooked_read_value): Likewise.
14427         (regcache::raw_write): Remove assert on m_readonly_p.
14428         (regcache::raw_supply_integer): Move it to
14429         detached_regcache::raw_supply_integer.
14430         (regcache::raw_supply_zeroed): Likewise.
14431         * regcache.h (detached_regcache) <raw_supply_integer>: New
14432         declaration.
14433         <raw_supply_zeroed, invalidate>: Likewise.
14434         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14435         <invalidate>: Likewise.
14436         <m_readonly_p>: Removed.
14437
14438 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14439
14440         * infcmd.c (get_return_value): Let stop_regs point to
14441         get_current_regcache.
14442         * regcache.c (regcache::regcache): Remove.
14443         (register_dump_reg_buffer): New class.
14444         (regcache_print): Adjust.
14445         * regcache.h (regcache): Remove constructors.
14446
14447 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14448
14449         * regcache.c (class register_dump): New class.
14450         (register_dump_regcache, register_dump_none): New class.
14451         (register_dump_remote, register_dump_groups): New class.
14452         (regcache_print): Update.
14453         * regcache.h (regcache_dump_what): Move it to regcache.c.
14454         (regcache) <dump>: Remove.
14455
14456 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14457
14458         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14459          reg_buffer_rw *.
14460         (jit_unwind_reg_set_impl): Call raw_supply.
14461         (jit_frame_sniffer): Use reg_buffer_rw.
14462         * record-full.c (record_full_core_regbuf): Change its type.
14463         (record_full_core_open_1): Use reg_buffer_rw.
14464         (record_full_close): Likewise.
14465         (record_full_core_fetch_registers): Use regcache->raw_supply.
14466         (record_full_core_store_registers): Likewise.
14467         * regcache.c (regcache::get_register_status): Move it to
14468         reg_buffer.
14469         (regcache_raw_set_cached_value): Remove.
14470         (regcache::raw_set_cached_value): Remove.
14471         (regcache::raw_write): Call raw_supply.
14472         (regcache::raw_supply): Move it to reg_buffer_rw.
14473         * regcache.h (regcache_raw_set_cached_value): Remove.
14474         (reg_buffer_rw): New class.
14475
14476 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14477
14478         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14479         readonly_detached_regcache.
14480         (dummy_frame_prev_register): Use regcache->cooked_read.
14481         * frame.c (frame_save_as_regcache): Change return type.
14482         (frame_pop): Update.
14483         * frame.h (frame_save_as_regcache): Update declaration.
14484         * inferior.h (get_infcall_suspend_state_regcache): Update
14485         declaration.
14486         * infrun.c (infcall_suspend_state) <registers>: use
14487         readonly_detached_regcache.
14488         (save_infcall_suspend_state): Don't use regcache_dup.
14489         (get_infcall_suspend_state_regcache): Change return type.
14490         * linux-fork.c (struct fork_info) <savedregs>: Change to
14491         readonly_detached_regcache.
14492         <pc>: New field.
14493         (fork_save_infrun_state): Don't use regcache_dup.
14494         (info_checkpoints_command): Adjust.
14495         * mi/mi-main.c (register_changed_p): Update declaration.
14496         (mi_cmd_data_list_changed_registers): Use
14497         readonly_detached_regcache.
14498         (register_changed_p): Change parameter type to
14499         readonly_detached_regcache.
14500         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14501         readonly_detached_regcache.
14502         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14503         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14504         New.
14505         (regcache::save): Move it to reg_buffer.
14506         (regcache::restore): Change parameter type.
14507         (regcache_dup): Remove.
14508         * regcache.h (reg_buffer) <save>: New method.
14509         (readonly_detached_regcache): New class.
14510         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14511         readonly_detached_regcache.
14512         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14513
14514 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14515
14516         * frame.c (frame_save_as_regcache): Use regcache method save.
14517         (frame_pop): Use regcache method restore.
14518         * infrun.c (restore_infcall_suspend_state): Likewise.
14519         * linux-fork.c (fork_load_infrun_state): Likewise.
14520         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14521         save.
14522         * regcache.c (regcache_save): Remove.
14523         (regcache::restore): More asserts.
14524         (regcache_cpy): Remove.
14525         * regcache.h (regcache_save): Remove the declaration.
14526         (regcache::restore): Move from private to public.
14527         Remove the friend declaration of regcache_cpy.
14528         (regcache_cpy): Remove declaration.
14529
14530 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14531
14532         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14533         parameter type to 'readable_regcache *'.
14534         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14535         * arm-tdep.c (arm_neon_quad_read): Likewise.
14536         (arm_pseudo_read): Likewise.
14537         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14538         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14539         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14540         * gdbarch.c: Re-generated.
14541         * gdbarch.h: Re-generated.
14542         * gdbarch.sh (pseudo_register_read): Change parameter type to
14543         'readable_regcache *'.
14544         (pseudo_register_read_value): Likewise.
14545         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14546         (h8300_pseudo_register_read): Likewise.
14547         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14548         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14549         (i386_pseudo_register_read_into_value): Likewise.
14550         (i386_pseudo_register_read_value): Likewise.
14551         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14552         declaration.
14553         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14554         * m32c-tdep.c (m32c_raw_read): Likewise.
14555         (m32c_read_flg): Likewise.
14556         (m32c_banked_register): Likewise.
14557         (m32c_banked_read): Likewise.
14558         (m32c_sb_read): Likewise.
14559         (m32c_part_read): Likewise.
14560         (m32c_cat_read): Likewise.
14561         (m32c_r3r2r1r0_read): Likewise.
14562         (m32c_pseudo_register_read): Likewise.
14563         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14564         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14565         (mep_pseudo_cr64_read): Likewise.
14566         (mep_pseudo_register_read): Likewise.
14567         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14568         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14569         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14570         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14571         (regcache::cooked_read): Likewise.
14572         (regcache::cooked_read_value): Likewise.
14573         (regcache_cooked_read_signed):
14574         (regcache::cooked_read): Likewise.
14575         * regcache.h (readable_regcache): New class.
14576         (regcache): Inherit readable_regcache.  Move some methods to
14577         readable_regcache.
14578         * rl78-tdep.c (rl78_pseudo_register_read): Change
14579         parameter type to 'readable_regcache *'.
14580         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14581         (e500_pseudo_register_read): Change parameter type to
14582         'readable_regcache *'.
14583         (dfp_pseudo_register_read): Likewise.
14584         (vsx_pseudo_register_read): Likewise.
14585         (efpr_pseudo_register_read): Likewise.
14586         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14587         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14588         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14589         (sh64_pseudo_register_read): Likewise.
14590         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14591         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14592         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14593         (spu_pseudo_register_read): Likewise.
14594         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14595         (xtensa_pseudo_register_read): Likewise.
14596
14597 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14598
14599         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14600         (regcache::arch): Move it to reg_buffer::arch.
14601         (regcache::register_buffer): Likewise.
14602         (regcache::assert_regnum): Likewise.
14603         (regcache::num_raw_registers): Likewise.
14604         * regcache.h (reg_buffer): New class.
14605         (regcache): Inherit reg_buffer.
14606
14607 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14608
14609         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14610         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14611
14612 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14613
14614         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14615
14616 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14617
14618         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14619         (SFILES): Remove common/*.c files.
14620         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14621         * common/common.host: Add common reference.
14622         * configure.ac: Likewise.
14623         * configure: Regenerate.
14624
14625 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14626
14627         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14628         (block_initialize_namespace): Use new.
14629         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14630         (dwarf2_free_objfile): Use delete.
14631         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14632         (copy_type_recursive): Use new.
14633         * gdb_obstack.h (allocate_on_obstack): New.
14634
14635 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14636
14637         PR gdb/22849
14638         * inferior.c (exit_inferior_1): Reset inf->control.
14639
14640 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14641
14642         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14643         declaration.
14644
14645 2018-02-14  Pedro Alves  <palves@redhat.com>
14646
14647         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14648         frame_cleanup_after_sniffer on exception.
14649
14650 2018-02-14  Tom Tromey  <tom@tromey.com>
14651
14652         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14653         const.
14654         (solib_bfd_open): Make pathname const.
14655         * solib.c (solib_bfd_open): Make pathname const.
14656         * solib-spu.c (spu_bfd_fopen): Make name const.
14657         (spu_bfd_open): Make pathname const.
14658         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14659         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14660
14661 2018-02-14  Tom Tromey  <tom@tromey.com>
14662
14663         * symfile.c (symfile_bfd_open): Update.
14664         * source.h (openp, source_full_path_of, find_and_open_source):
14665         Change argument type to unique_xmalloc_ptr.
14666         * source.c (openp): Take a unique_xmalloc_ptr.
14667         (source_full_path_of, find_and_open_source): Likewise.
14668         (open_source_file, symtab_to_fullname): Update.
14669         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14670         unique_xmalloc_ptr.
14671         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14672         (exec_file_find): Update.
14673         * psymtab.c (psymtab_to_fullname): Update.
14674         * nto-tdep.h (nto_find_and_open_solib): Update.
14675         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14676         unique_xmalloc_ptr.
14677         * exec.c (exec_file_attach): Update.
14678         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14679         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14680
14681 2018-02-14  Tom Tromey  <tom@tromey.com>
14682
14683         * solib.c: Include source.h.
14684         * nto-tdep.c: Include source.h.
14685         * mi/mi-cmd-env.c: Include source.h.
14686         * infcmd.c: Include source.h.
14687         * exec.c: Include source.h.
14688         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14689         (add_path, directory_switch, source_path, init_source_path): Move
14690         declarations...
14691         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14692         (add_path, directory_switch, source_path, init_source_path):
14693         ...here.
14694
14695 2018-02-14  Tom Tromey  <tom@tromey.com>
14696
14697         * solist.h (exec_file_find, solib_find): Return
14698         unique_xmalloc_ptr.
14699         (solib_bfd_fopen): Take a const char *.
14700         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14701         (exec_file_find, solib_find): Likewise.
14702         (solib_bfd_fopen): Do not take ownership of "pathname".
14703         (solib_bfd_open): Use unique_xmalloc_ptr.
14704         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14705         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14706         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14707         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14708
14709 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14710
14711         * ada-lang.c (name_match_type_from_name): Remove reference to
14712         ada_name_for_lookup in function's documentation.
14713         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14714
14715 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14716
14717         * defs.h (enum openp_flags): New enum.
14718         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14719         Move to enum openp_flags.
14720         (openp_flags): New enum flags.
14721         (openp): Change parameter type to openp_flags.
14722         * source.c (openp): Change parameter type to openp_flags.
14723         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14724         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14725
14726 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14727
14728         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14729         per-command.
14730
14731 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14732
14733         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14734         into...
14735         (class dwarf2_queue_guard): ...the destructor of this new class.
14736         (dw2_do_instantiate_symtab): Create instance of the new class
14737         dwarf2_queue_guard, remove cleanup.
14738
14739 2018-02-09  Tom Tromey  <tom@tromey.com>
14740
14741         * source.c (find_source_lines): Don't reference past the end of
14742         the vector.
14743
14744 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14745
14746         * remote.c (remote_btrace_maybe_reopen): Change error message.
14747         * btrace.c (btrace_enable): Likewise.
14748         (parse_xml_btrace): Likewise.
14749         (parse_xml_btrace_conf): Likewise.
14750
14751 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14752
14753         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14754         (linux_enable_pt, linux_enable_bts): Call
14755         diagnose_perf_event_open_fail.
14756
14757 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14758
14759         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14760         Remove parameter and change return type.  Update callers.  Move it.
14761         (linux_enable_bts, linux_enable_pt): Improve error message.
14762         (linux_enable_pt): Remove zero buffer size check.
14763         (linux_enable_btrace): Improve error messages.  Remove NULL return
14764         check.
14765
14766 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14767
14768         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14769         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14770         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14771         (linux_supports_pt, linux_supports_btrace): Remove.
14772         (linux_enable_bts): Call cpu_supports_bts.
14773         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14774         * remote.c (remote_supports_btrace): Remove.
14775         (init_remote_ops): Remove remote_supports_btrace.
14776         * target-delegates.c: Regenerated.
14777         * target.c (target_supports_btrace): Remove.
14778         * target.h (target_ops) <to_supports_btrace>: Remove
14779         (target_supports_btrace): Remove.
14780         * x86-linux-nat.c (x86_linux_create_target): Remove
14781         linux_supports_btrace.
14782
14783 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14784
14785         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14786         btrace failed.
14787         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14788         exception and use message in own exception.
14789
14790 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14791
14792         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14793         (perf_event_pt_event_type): Use gdb_file_up.
14794         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14795         scoped_fd, and scoped_mmap.
14796
14797 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14798
14799         * common/scoped_mmap.h: New.
14800         * unittests/scoped_mmap-selftest.c: New.
14801         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14802         unittests/scoped_mmap-selftest.c.
14803
14804 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14805
14806         * common/scoped_fd.h: New.
14807         * unittests/scoped_fd-selftest.c: New.
14808         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14809         unittests/scoped_fd-selftest.c.
14810
14811 2018-02-09  Tom Tromey  <tom@tromey.com>
14812
14813         * auto-load.c (auto_load_section_scripts): Use
14814         gdb::unique_xmalloc_ptr.
14815
14816 2018-02-09  Tom Tromey  <tom@tromey.com>
14817
14818         * auto-load.c (execute_script_contents): Use std::string.
14819
14820 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14821
14822         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14823         Python function, rather than a new command.
14824
14825 2018-02-08  Tom Tromey  <tom@tromey.com>
14826
14827         * solib.c (solib_find_1): Use std::string.
14828         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14829
14830 2018-02-08  Tom Tromey  <tom@tromey.com>
14831
14832         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14833
14834 2018-02-08  Tom Tromey  <tom@tromey.com>
14835
14836         * source.c (find_source_lines): Use gdb::def_vector.
14837
14838 2018-02-08  Tom Tromey  <tom@tromey.com>
14839
14840         * macrocmd.c (struct temporary_macro_definition): New.
14841         (macro_define_command): Use temporary_macro_definition.  Remove
14842         cleanups.
14843         (free_macro_definition_ptr): Remove.
14844
14845 2018-02-08  Tom Tromey  <tom@tromey.com>
14846
14847         * macroexp.c (maybe_expand): Use std::string.
14848
14849 2018-02-08  Tom Tromey  <tom@tromey.com>
14850
14851         * macroexp.c (struct macro_buffer): Add initializers for some
14852         members.
14853         (init_buffer, init_shared_buffer, free_buffer)
14854         (free_buffer_return_text): Remove.
14855         (macro_buffer): New constructors.
14856         (~macro_buffer): New destructor.
14857         (macro_buffer::set_shared): New method.
14858         (macro_buffer::resize_buffer, macro_buffer::appendc)
14859         (macro_buffer::appendmem): Now methods, not free functions.
14860         (set_token, append_tokens_without_splicing, stringify)
14861         (macro_stringify): Update.
14862         (gather_arguments): Change return type.  Remove argc_p argument,
14863         add args_ptr argument.  Use std::vector.
14864         (substitute_args): Remove argc argument.  Accept std::vector.
14865         (expand): Update.  Use std::vector.
14866         (scan, macro_expand, macro_expand_next): Update.
14867
14868 2018-02-08  Tom Tromey  <tom@tromey.com>
14869
14870         * symtab.c (default_collect_symbol_completion_matches_break_on):
14871         Use unique_xmalloc_ptr.
14872         * macroscope.h: (sal_macro_scope, user_macro_scope)
14873         (default_macro_scope): Return unique_xmalloc_ptr.
14874         * macroscope.c (sal_macro_scope, user_macro_scope)
14875         (default_macro_scope): Return unique_xmalloc_ptr.
14876         * macroexp.h (macro_expand, macro_expand_once): Return
14877         unique_xmalloc_ptr.
14878         * macroexp.c (macro_expand, macro_expand_once): Return
14879         unique_xmalloc_ptr.
14880         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14881         (info_macro_command, info_macros_command): Use
14882         unique_xmalloc_ptr.
14883         * compile/compile-c-support.c (write_macro_definitions): Use
14884         unique_xmalloc_ptr.
14885         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14886
14887 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14888
14889         * value.c (value_static_field): Assign field type instead of
14890         containing type when returning an optimized out value.
14891
14892 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14893
14894         * ft32-tdep.c (ft32_read_pc): Remove.
14895         (ft32_write_pc): Remove.
14896         (ft32_gdbarch_init): Update.
14897         * m32r-tdep.c (m32r_read_pc): Remove.
14898         (m32r_gdbarch_init): Update.
14899         * mep-tdep.c (mep_read_pc): Remove.
14900         (mep_gdbarch_init): Update.
14901         * microblaze-tdep.c (microblaze_write_pc): Remove.
14902         (microblaze_gdbarch_init): Update.
14903         * mn10300-tdep.c (mn10300_read_pc): Remove.
14904         (mn10300_write_pc): Remove.
14905         (mn10300_gdbarch_init): Update.
14906         * moxie-tdep.c (moxie_read_pc): Remove.
14907         (moxie_write_pc): Remove.
14908         (moxie_gdbarch_init): Update.
14909
14910 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14911
14912         * expprint.c (print_subexp_standard): Handle
14913         OP_F77_UNDETERMINED_ARGLIST.
14914         (dump_subexp_body_standard): Likewise.
14915
14916 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14917
14918         * target-descriptions.c (tdesc_element_visitor) Add empty
14919         implementations.
14920         (tdesc_type): Move make_gdb_type from here.
14921         (tdesc_type_builtin): Likewise.
14922         (tdesc_type_vector): Likewise.
14923         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14924         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14925         (make_gdb_type_union): Likewise.
14926         (make_gdb_type_flags): Likewise.
14927         (make_gdb_type_enum): Likewise.
14928         (make_gdb_type): New function.
14929         (tdesc_register_type): Use static make_gdb_type.
14930
14931 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14932
14933         * infcmd.c (default_print_one_register_info): Align natural-format
14934         column values consistently one under another.
14935         (pad_to_column): New function.
14936
14937 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14938
14939         * dwarf2read.c (dwarf2_physname): Move commment.
14940
14941 2018-02-01  Leszek Swirski  <leszeks@google.com>
14942
14943         * varobj.c (varobj_formatted_print_options): Allow recursive
14944         pretty printing if pretty printing is enabled.
14945
14946 2018-02-01  Leszek Swirski  <leszeks@google.com>
14947
14948         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14949         names after a structop as a filename.
14950
14951 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14952
14953         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14954         (arm_record_coproc_data_proc): Likewise.
14955
14956 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14957
14958         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14959
14960 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14961
14962         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14963         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14964
14965 2018-01-31  Pedro Alves  <palves@redhat.com>
14966
14967         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14968         * inflow.c (child_terminal_save_inferior): Wrap reference to
14969         tcgetpgrp in HAVE_TERMIOS_H.
14970         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14971         _WIN32.
14972         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14973         always iterate over all inferiors.
14974         (gdbsim_cntrl_c): Adjust.
14975         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14976
14977 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14978
14979         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14980         index type is objfile-owned if the element type is as well.
14981
14982 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14983
14984         GDB 8.1 released.
14985
14986 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14987
14988         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14989         "features/s390x-linux64.c".
14990         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14991         s390_linux32 and s390x_linux64.
14992         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14993         default tdesc.
14994         * s390-tdep.c: Include "features/s390-linux32.c" and
14995         "features/s390x-linux64.c".
14996         (s390_tdesc_valid): Add check for tdesc_has_registers.
14997         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14998         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14999         tdesc_s390x_linux64.
15000         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
15001         tdesc_s390x_linux64 to...
15002         * s390-tdep.h: ...here.
15003
15004 2018-01-30  Pedro Alves  <palves@redhat.com>
15005
15006         PR gdb/13211
15007         * config.in, configure: Regenerate.
15008         * configure.ac: Check for getpgid.
15009         * go32-nat.c (go32_pass_ctrlc): New.
15010         (go32_target): Install it.
15011         * inf-child.c (inf_child_target): Install
15012         child_terminal_save_inferior, child_pass_ctrlc and
15013         child_interrupt.
15014         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
15015         (inf_ptrace_target): No longer install it.
15016         * infcmd.c (interrupt_target_1): Adjust.
15017         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
15018         (child_interrupt): Declare.
15019         (inferior::terminal_state): New.
15020         * inflow.c (struct terminal_info): Update comments.
15021         (inferior_process_group): Delete.
15022         (terminal_is_ours): Delete.
15023         (gdb_tty_state): New.
15024         (child_terminal_init): Adjust.
15025         (is_gdb_terminal, sharing_input_terminal_1)
15026         (sharing_input_terminal): New functions.
15027         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
15028         Set the process's actual process group in the foreground if
15029         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
15030         mark terminal as the inferior's if not sharing GDB's terminal.
15031         Don't check attach_flag.
15032         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
15033         pass down a target_terminal_state.
15034         (child_terminal_save_inferior): New, factored out from ...
15035         (child_terminal_ours_1): ... this.  Handle
15036         target_terminal_state::is_ours_for_output.
15037         (child_interrupt, child_pass_ctrlc): New.
15038         (inflow_inferior_exit): Clear the inferior's terminal_state.
15039         (copy_terminal_info): Copy the inferior's terminal state.
15040         (_initialize_inflow): Remove reference to terminal_is_ours.
15041         * inflow.h (inferior_process_group): Delete.
15042         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
15043         * procfs.c (procfs_target): Don't install procfs_interrupt.
15044         (procfs_interrupt): Delete.
15045         * remote.c (remote_serial_quit_handler): Adjust.
15046         (remote_interrupt): Remove ptid parameter.  Adjust.
15047         * target-delegates.c: Regenerate.
15048         * target.c: Include "terminal.h".
15049         (target_terminal::terminal_state): Rename to ...
15050         (target_terminal::m_terminal_state): ... this.
15051         (target_terminal::init): Adjust.
15052         (target_terminal::inferior): Adjust to per-inferior
15053         terminal_state.
15054         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
15055         (target_terminal::ours, target_terminal::ours_for_output): Use
15056         target_terminal_is_ours_kind.
15057         (target_interrupt): Remove ptid parameter.  Adjust.
15058         (default_target_pass_ctrlc): Adjust.
15059         * target.h (target_ops::to_terminal_save_inferior): New field.
15060         (target_ops::to_interrupt): Remove ptid_t parameter.
15061         (target_interrupt): Remove ptid_t parameter.  Update comment.
15062         (target_pass_ctrlc): Update comment.
15063         * target/target.h (target_terminal_state): New scoped enum,
15064         factored out of ...
15065         (target_terminal::terminal_state): ... here.
15066         (target_terminal::inferior): Update comments.
15067         (target_terminal::restore_inferior): New.
15068         (target_terminal::is_inferior, target_terminal::is_ours)
15069         (target_terminal::is_ours_for_output): Adjust.
15070         (target_terminal::scoped_restore_terminal_state): Adjust to
15071         rename, and call restore_inferior() instead of inferior().
15072         (target_terminal::scoped_restore_terminal_state::m_state): Change
15073         type.
15074         (target_terminal::terminal_state): Rename to ...
15075         (target_terminal::m_terminal_state): ... this and change type.
15076
15077 2018-01-30  Pedro Alves  <palves@redhat.com>
15078
15079         * linux-nat.c (wait_for_signal): New function.
15080         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15081         directly.
15082         (async_terminal_is_ours)
15083         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15084         (linux_nat_add_target): Don't override
15085         to_terminal_inferior/to_terminal_ours.
15086
15087 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15088
15089         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15090
15091 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15092
15093         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15094         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15095         dwarf2_per_objfile_free here.
15096         (dwarf2_per_objfile_free): Remove.
15097         (_initialize_dwarf2_read): Don't register
15098         dwarf2_per_objfile_free as a registry cleanup.
15099
15100 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15101
15102         Avoid compilation errors in MinGW native builds
15103
15104         The error is triggered by including python-internal.h, and the
15105         error message is:
15106
15107              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15108                       from build-gnulib/import/math.h:27,
15109                       from d:/usr/Python26/include/pyport.h:235,
15110                       from d:/usr/Python26/include/Python.h:58,
15111                       from python/python-internal.h:94,
15112                       from python/py-arch.c:24:
15113              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15114         using ::hypot;
15115                 ^~~~~
15116
15117         This happens because Python headers define 'hypot' to expand t
15118         '_hypot' in the Windows builds.
15119         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15120         'hypoth'.  This avoids a compilation error.
15121
15122 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15123
15124         * MAINTAINERS (Write After Approval): Fix ordering.
15125
15126 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15127
15128         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15129
15130 2018-01-26  Alan Modra  <amodra@gmail.com>
15131
15132         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15133         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15134         Remove nop.  Make const.  Comment.
15135         (powerpc32_plt_stub_so_2): New.
15136         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15137         Correct count.  Update uses.
15138         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15139         Move common code reading PLT entry word.  Correct
15140         powerpc32_plt_stub PLT address calculation.
15141         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15142         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15143         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15144         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15145         (ppc64_standard_linkage8): Likewise.
15146         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15147         Correct insns description.
15148         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15149
15150 2018-01-24  Pedro Alves  <palves@redhat.com>
15151
15152         GCC PR libstdc++/83906
15153         * gdbtypes.c (operator==(const dynamic_prop &,
15154         const dynamic_prop &)): New.
15155         (operator==(const range_bounds &, const range_bounds &)): New.
15156         (check_types_equal): Use them instead of memcmp.
15157         * gdbtypes.h (operator==(const dynamic_prop &,
15158         const dynamic_prop &)): Declare.
15159         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15160         (operator==(const range_bounds &, const range_bounds &)): Declare.
15161         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15162
15163 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15164
15165         * s390-linux-tdep.c (s390_record_address_mask)
15166         (s390_record_calc_disp_common, s390_record_calc_disp)
15167         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15168         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15169         (s390_process_record): Move to s390-tdep.c.
15170         (s390_linux_init_abi_any): Adjust.
15171         * s390-tdep.c (s390_record_address_mask)
15172         (s390_record_calc_disp_common, s390_record_calc_disp)
15173         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15174         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15175         (s390_process_record): Moved from s390-linux-tdep.c
15176         (s390_gdbarch_init): Adjust.
15177
15178 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15179
15180         * s390-linux-nat.c (s390-tdep.h): New include.
15181         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15182         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15183         (ALLDEPFILES): Add s390-tdep.c.
15184         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15185         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15186         * s390-tdep.h: ...this.  New file.
15187         * s390-linux-tdep.c (s390-tdep.h): New include.
15188         (_initialize_s390_tdep): Rename to...
15189         (_initialize_s390_linux_tdep): ...this and adjust.
15190         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15191         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15192         s390-tdep.h.
15193         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15194         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15195         (s390_is_partial_instruction, s390_software_single_step)
15196         (is_non_branch_ril, s390_displaced_step_copy_insn)
15197         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15198         (s390_prologue_data, s390_addr, s390_store, s390_load)
15199         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15200         (s390_register_call_saved, s390_guess_tracepoint_registers)
15201         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15202         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15203         (s390_pseudo_register_name, s390_pseudo_register_type)
15204         (s390_pseudo_register_read, s390_pseudo_register_write)
15205         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15206         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15207         (s390_addr_bits_remove, s390_address_class_type_flags)
15208         (s390_address_class_type_flags_to_name)
15209         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15210         (s390_function_arg_float, s390_function_arg_vector)
15211         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15212         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15213         (s390_frame_align, s390_register_return_value, s390_return_value)
15214         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15215         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15216         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15217         (s390_trad_frame_prev_register, s390_unwind_cache)
15218         (s390_prologue_frame_unwind_cache)
15219         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15220         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15221         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15222         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15223         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15224         (s390_frame_base_address, s390_local_base_address)
15225         (s390_frame_base, s390_gcc_target_options)
15226         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15227         (s390_validate_reg_range, s390_tdesc_valid)
15228         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15229         * s390-tdep.c: ...this.  New file.
15230
15231 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15232
15233         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15234         (s390_process_record, s390_gdbarch_tdep_alloc)
15235         (s390_linux_init_abi_any): Use/set new hook.
15236
15237 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15238
15239         * s390-linux-tdep.c (osabi.h): New include.
15240         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15241         (s390_linux_init_abi_any): New functions.
15242         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15243
15244 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15245
15246         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15247         tdesc_has_registers check
15248
15249 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15250
15251         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15252         (s390_validate_reg_range): New macro.
15253         (s390_gdbarch_init): Adjust.
15254
15255 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15256
15257         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15258         (s390_gdbarch_tdep_alloc): Adjust.
15259         (s390_gdbarch_init): Adjust.
15260
15261 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15262
15263         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15264         <have_tdb>: Change type to bool.
15265         (s390_gdbarch_tdep_alloc): Adjust.
15266         (s390_gdbarch_init): Adjust.
15267
15268 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15269
15270         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15271         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15272         (s390_gdbarch_tdep_alloc): New function.
15273         (s390_gdbarch_init): Allocate tdep at start and use its fields
15274         instead of separate variables.
15275
15276 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15277
15278         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15279         when looking for cached gdbarch and add comment for remaining.
15280
15281 2018-01-22  Pedro Alves  <palves@redhat.com>
15282             Sergio Durigan Junior  <sergiodj@redhat.com>
15283
15284         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15285         case.
15286
15287 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15288
15289         * MAINTAINERS: Update my company e-mail address.
15290
15291 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15292
15293         * regcache.c (cooked_write_test): New function.
15294         (_initialize_regcache): Register the test.
15295
15296 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15297
15298         * ia64-tdep.c (ia64_pseudo_register_read): Call
15299         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15300         * m32c-tdep.c (m32c_cat_read): Likewise.
15301         (m32c_r3r2r1r0_read): Likewise.
15302         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15303         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15304
15305 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15306
15307         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15308         method raw_read instead of regcache_raw_read.
15309         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15310         * arm-tdep.c (arm_neon_quad_read): Likewise.
15311         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15312         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15313         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15314         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15315         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15316         (i386_pseudo_register_read_into_value): Likewise.
15317         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15318         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15319         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15320         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15321         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15322         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15323         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15324         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15325         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15326
15327 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15328
15329         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15330         * configure.tgt: Remove target mt.
15331         * mt-tdep.c: Remove.
15332         * regcache.c (cooked_read_test): Remove the check for mt.
15333
15334 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15335
15336         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15337         instead of gdbarch_pseudo_register_read_value.
15338
15339 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15340
15341         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15342         language is Ada.
15343
15344 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15345
15346         * linespec.c (create_sals_line_offset): Remove code that preserved
15347         the symtab_and_line's line number.
15348
15349 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15350
15351         * varobj.c (varobj_create): Don't set valid_block when creating a
15352         floating varobj.
15353
15354 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15355
15356         * varobj.c (varobj_create): Remove out of date comment.
15357
15358 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15359
15360         PR mi/20395
15361         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15362         updating innermost block.
15363         * parse.c (innermost_block_tracker::update): Take extra type
15364         parameter, and check types match before updating innermost block.
15365         (write_dollar_variable): Update innermost block for registers.
15366         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15367         (innermost_block_tracker::innermost_block_tracker): Initialise
15368         m_types member.
15369         (innermost_block_tracker::reset): Take type parameter.
15370         (innermost_block_tracker::update): Take type parameter, and pass
15371         type through as needed.
15372         (innermost_block_tracker::m_types): New member.
15373         * varobj.c (varobj_create): Pass type when reseting innermost
15374         block.
15375
15376 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15377
15378         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15379         * ada-lang.c (resolve_subexp): Likewise.
15380         * breakpoint.c (set_breakpoint_condition) Likewise.
15381         (watch_command_1) Likewise.
15382         * c-exp.y (variable): Likewise.
15383         * d-exp.y (PrimaryExpression): Likewise.
15384         * f-exp.y (variable): Likewise.
15385         * go-exp.y (variable): Likewise.
15386         * m2-exp.y (variable): Likewise.
15387         * objfiles.c (objfile::~objfile): Likewise.
15388         * p-exp.y (variable): Likewise.
15389         * parse.c (innermost_block): Change type.
15390         * parser-defs.h (class innermost_block_tracker): New.
15391         (innermost_block): Change to innermost_block_tracker.
15392         * printcmd.c (display_command): Switch to innermost_block API.
15393         (do_one_display): Likewise.
15394         * rust-exp.y (do_one_display): Likewise.
15395         * symfile.c (clear_symtab_users): Likewise.
15396         * varobj.c (varobj_create): Switch to innermost_block API, replace
15397         use of innermost_block with block stored on varobj object.
15398
15399 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15400
15401         * expression.h (innermost_block): Remove declaration.
15402         * varobj.c: Add 'parser-defs.h' include.
15403
15404 2018-01-19  Tom Tromey  <tom@tromey.com>
15405
15406         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15407         symbols in the static and global blocks.
15408
15409 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15410
15411         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15412         gdb_ptrace.h, and move including gdb_wait.h ...
15413         * nat/linux-ptrace.h: ... to here.
15414
15415 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15416
15417         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15418         inf_ptrace_detach_success.
15419         (inf_ptrace_detach_success): Add inferior parameter, use it
15420         instead of inferior_ptid, pass it to detach_inferior.
15421         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15422         parameter.
15423         * inferior.c (detach_inferior): Add overload that takes an
15424         inferior object.
15425         * inferior.h (detach_inferior): Likewise.
15426         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15427         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15428         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15429
15430 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15431
15432         * target.h (struct target_ops) <to_detach>: Add inferior
15433         parameter.
15434         (target_detach): Likewise.
15435         * target.c (dispose_inferior): Pass inferior down.
15436         (target_detach): Pass inferior down.  Assert that it is equal to
15437         the current inferior.
15438         * aix-thread.c (aix_thread_detach): Pass inferior down.
15439         * corefile.c (core_file_command): Pass current_inferior() down.
15440         * corelow.c (core_detach): Add inferior parameter.
15441         * darwin-nat.c (darwin_detach): Likewise.
15442         * gnu-nat.c (gnu_detach): Likewise.
15443         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15444         * infcmd.c (detach_command): Pass current_inferior() down to
15445         target_detach.
15446         * infrun.c (follow_fork_inferior): Pass parent_inf to
15447         target_detach.
15448         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15449         target_detach.
15450         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15451         * linux-thread-db.c (thread_db_detach): Likewise.
15452         * nto-procfs.c (procfs_detach): Likewise.
15453         * procfs.c (procfs_detach): Likewise.
15454         * record.c (record_detach): Likewise.
15455         * record.h (struct inferior): Forward-declare.
15456         (record_detach): Add inferior parameter.
15457         * remote-sim.c (gdbsim_detach): Likewise.
15458         * remote.c (remote_detach_1): Likewise.
15459         (remote_detach): Likewise.
15460         (extended_remote_detach): Likewise.
15461         * sol-thread.c (sol_thread_detach): Likewise.
15462         * target-debug.h (target_debug_print_inferior_p): New macro.
15463         * target-delegates.c: Re-generate.
15464         * top.c (kill_or_detach): Pass inferior down to target_detach.
15465         * windows-nat.c (windows_detach): Add inferior parameter.
15466
15467 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15468
15469         * target.h (struct target_ops) <to_detach>: Remove args
15470         parameter.
15471         (target_detach): Likewise.
15472         * target.c (dispose_inferior): Adjust.
15473         (target_detach): Remove args parameter, adjust.
15474         * aix-thread.c (aix_thread_detach): Adjust.
15475         * corefile.c (core_file_command): Adjust.
15476         * corelow.c (core_detach): Adjust.
15477         * darwin-nat.c (darwin_detach): Adjust.
15478         * gnu-nat.c (gnu_detach): Adjust.
15479         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15480         * infcmd.c (detach_command): Adjust
15481         * infrun.c (follow_fork_inferior): Adjust.
15482         (handle_vfork_child_exec_or_exit): Adjust.
15483         * linux-fork.c (linux_fork_detach): Remove args parameter.
15484         * linux-fork.h (linux_fork_detach): Likewise.
15485         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15486         * linux-thread-db.c (thread_db_detach): Likewise.
15487         * nto-procfs.c (procfs_detach): Likewise.
15488         * procfs.c (procfs_detach): Likewise.
15489         (do_detach): Remove signo parameter.
15490         * record.c (record_detach): Remove args parameter.
15491         * record.h (record_detach): Likewise.
15492         * remote-sim.c (gdbsim_detach): Likewise.
15493         * remote.c (remote_detach_1): Likewise.
15494         (remote_detach): Likewise.
15495         (extended_remote_detach): Likewise.
15496         * sol-thread.c (sol_thread_detach): Likewise.
15497         * target-delegates.c: Re-generate.
15498         * top.c (struct qt_args) <args>: Remove field.
15499         (kill_or_detach): Don't pass args.
15500         (quit_force): Don't set args.
15501         * windows-nat.c (windows_detach): Remove args parameter.
15502
15503 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15504
15505         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15506         (arm_linux_init_abi): Install it.
15507
15508 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15509
15510         * osabi.c (gdb_osabi_names): Extend the regexp for
15511         arm-linux-gnueabihf.
15512
15513 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15514
15515         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15516         m_abbrevs.
15517         (abbrev_table::add_abbrev): Update.
15518         (abbrev_table::lookup_abbrev): Update.
15519
15520 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15521
15522         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15523
15524 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15525
15526         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15527         to "std::string".
15528
15529 2018-01-17  Tom Tromey  <tom@tromey.com>
15530
15531         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15532
15533 2018-01-17  Tom Tromey  <tom@tromey.com>
15534
15535         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15536         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15537         (create_array_type_with_stride): Update.
15538         * dwarf2read.c (set_die_type): Update.
15539
15540 2018-01-17  Tom Tromey  <tom@tromey.com>
15541
15542         * dwarf2read.c (delayed_method_info): Remove typedef.
15543         (dwarf2_cu::method_info): Now a std::vector.
15544         (add_to_method_list): Update.
15545         (free_delayed_list): Remove.
15546         (compute_delayed_physnames): Update.
15547         (process_full_comp_unit, process_full_type_unit): Clear the method
15548         list.  Remove cleanups.
15549         (psymtab_include_file_name): Add name_holder parameter.  Use
15550         unique_xmalloc_ptr.
15551         (dwarf_decode_lines): Update.
15552
15553 2018-01-17  Tom Tromey  <tom@tromey.com>
15554             Simon Marchi  <simon.marchi@ericsson.com>
15555
15556         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15557         (dwarf2_per_objfile::free_cached_comp_units)
15558         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15559         (init_cutu_and_read_dies_no_follow): Update.
15560         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15561         (dwarf2_cu::~dwarf2_cu): New.
15562         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15563         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15564
15565 2018-01-17  Tom Tromey  <tom@tromey.com>
15566             Simon Marchi  <simon.marchi@ericsson.com>
15567
15568         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15569         (struct die_reader_specs) <abbrev_table>: New member.
15570         (struct abbrev_table): Add constructor.
15571         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15572         <abbrev_obstack>: Now an auto_obstack.
15573         (abbrev_table_up): New typedef.
15574         (init_cu_die_reader): Add abbrev_table parameter.
15575         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15576         Add result_dwo_abbrev_table.
15577         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15578         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15579         Update.
15580         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15581         parameter.
15582         (skip_children): Update.
15583         (abbrev_table::alloc_abbrev): Rename from
15584         abbrev_table_alloc_abbrev.
15585         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15586         (abbrev_table::lookup_abbrev): Rename from
15587         abbrev_table_lookup_abbrev.
15588         (abbrev_table_read_table): Return abbrev_table_up.
15589         (abbrev_table_free, abbrev_table_free_cleanup)
15590         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15591         (load_partial_dies): Update.
15592
15593 2018-01-17  Tom Tromey  <tom@tromey.com>
15594
15595         * dwarf2read.c (dwarf2_compute_name): Update comment.
15596         (read_func_scope, read_variable): Update.
15597         (new_symbol): Remove.
15598         (new_symbol_full): Rename to new_symbol.
15599
15600 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15601
15602         PR gdb/16577
15603         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15604         a warning instead of throwing an error, set section size to 0 and return
15605         NULL.
15606         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15607
15608 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15609
15610         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15611         std::string.
15612         (linux_ptrace_attach_fail_reason_string): Likewise.
15613         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15614         Likewise.
15615         (linux_ptrace_attach_fail_reason_string): Likewise.
15616         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15617
15618 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15619
15620         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15621
15622 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15623
15624         PR gdb/21559
15625         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15626         checking for fs_base/gs_base fields in struct user_regs_struct.
15627         * configure: Regenerate.
15628
15629 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15630
15631         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15632         function.
15633         (aarch64_linux_init_abi): Install it to gdbarch hook
15634         gcc_target_options.
15635
15636 2018-01-15  Pedro Alves  <palves@redhat.com>
15637
15638         * common/signals-state-save-restore.c
15639         (save_original_signals_state): Fix typos.
15640
15641 2017-01-12  Tom Tromey  <tom@tromey.com>
15642             Sergio Durigan Junior  <sergiodj@redhat.com>
15643
15644         * Makefile.in (install-only): Install gdb-add-index.
15645
15646 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15647
15648         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15649
15650 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15651
15652         * infrun.c (keep_going_pass_signal): Clear step-over info when
15653         insert_breakpoints fails.
15654
15655 2018-01-11  Pedro Alves  <palves@redhat.com>
15656
15657         PR gdb/22583
15658         * infrun.c (resume): Rename to ...
15659         (resume_1): ... this.
15660         (resume): Reimplement as wrapper around resume_1.
15661
15662 2018-01-11  Pedro Alves  <palves@redhat.com>
15663
15664         PR remote/22597
15665         * remote.c (remote_parse_stop_reply): Default to the last-set
15666         general thread instead of to 'magic_null_ptid'.
15667
15668 2018-01-10  Pedro Alves  <palves@redhat.com>
15669
15670         * language.h (language_get_symbol_name_matcher): Rename ...
15671         (get_symbol_name_matcher): ... this.
15672         * language.c (language_get_symbol_name_matcher): Ditto.
15673         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15674         callers adjusted.
15675
15676 2018-01-10  Pedro Alves  <palves@redhat.com>
15677
15678         PR gdb/22670
15679         * dwarf2read.c
15680         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15681         Adjust to use language_get_symbol_name_matcher instead of
15682         language_defn::la_get_symbol_name_matcher.
15683         * language.c (language_get_symbol_name_matcher): If in Ada mode
15684         and the lookup name is a verbatim match, return Ada's matcher.
15685         * language.h (language_get_symbol_name_matcher): Adjust comment.
15686         (ada_lookup_name_info::verbatim_p):: New method.
15687
15688 2018-01-10  Pedro Alves  <palves@redhat.com>
15689
15690         PR gdb/22670
15691         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15692         minsym's language is language_auto or language_cplus, pass down
15693         language_ada instead.
15694         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15695
15696 2018-01-10  Pedro Alves  <palves@redhat.com>
15697
15698         PR gdb/22670
15699         * minsyms.c (linkage_name_str): New function.
15700         (iterate_over_minimal_symbols): Use it.
15701
15702 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15703
15704         * NEWS: Document that 'info proc' now works on FreeBSD.
15705
15706 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15707
15708         * configure.ac: Check for kinfo_getfile in libutil.
15709         * configure: Regenerate.
15710         * config.in: Regenerate.
15711         * fbsd-nat.c: Include "fbsd-tdep.h".
15712         (fbsd_fetch_cmdline): New.
15713         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15714         rather than calling error.
15715         (fbsd_info_proc): New.
15716         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15717         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15718         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15719
15720 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15721
15722         * fbsd-nat.c (struct free_deleter): Remove.
15723         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15724
15725 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15726
15727         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15728         NULL for an empty pathname.
15729
15730 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15731
15732         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15733         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15734         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15735         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15736         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15737         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15738         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15739         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15740         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15741         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15742         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15743         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15744         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15745         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15746         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15747
15748 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15749
15750         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15751         (gnu_xfer_auxv): New function.
15752         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15753         TARGET_OBJECT_AUXV.
15754
15755 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15756             Simon Marchi  <simon.marchi@ericsson.com>
15757
15758         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15759         common/selftest.c.
15760         (COMMON_OBS): Remove selftest.o.
15761         * configure.ac: Append selftest-arch.c and common/selftest.c to
15762         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15763         * configure: Re-generated.
15764         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15765         GDB_SELF_TEST.
15766         (maintenance_info_selftests): Likewise.
15767
15768 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15769
15770         * ada-valprint.c (val_print_packed_array_elements): Use
15771         proper number of elements when printing an array indexed
15772         by an enumeration type.
15773
15774 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15775
15776         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15777         (dw2_get_file_names_reader): Adjust.
15778         (lookup_dwo_signatured_type): Adjust.
15779         (lookup_dwp_signatured_type): Adjust.
15780         (lookup_signatured_type): Adjust.
15781         (create_type_unit_group): Adjust.
15782         (get_type_unit_group): Adjust.
15783         (process_psymtab_comp_unit_reader): Adjust.
15784         (build_type_psymtabs_reader): Adjust.
15785         (scan_partial_symbols): Adjust.
15786         (add_partial_symbol): Adjust.
15787         (add_partial_subprogram): Adjust.
15788         (peek_die_abbrev): Adjust.
15789         (fixup_go_packaging): Adjust.
15790         (process_imported_unit_die): Adjust.
15791         (dwarf2_compute_name): Adjust.
15792         (dwarf2_physname): Adjust.
15793         (read_import_statement): Adjust.
15794         (handle_DW_AT_stmt_list): Adjust.
15795         (read_file_scope): Adjust.
15796         (read_func_scope): Adjust.
15797         (read_lexical_block_scope): Adjust.
15798         (read_call_site_scope): Adjust.
15799         (read_variable): Adjust.
15800         (dwarf2_rnglists_process): Adjust.
15801         (dwarf2_ranges_process): Adjust.
15802         (dwarf2_ranges_read): Adjust.
15803         (dwarf2_get_pc_bounds): Adjust.
15804         (dwarf2_record_block_ranges): Adjust.
15805         (dwarf2_add_field): Adjust.
15806         (dwarf2_add_member_fn): Adjust.
15807         (read_structure_type): Adjust.
15808         (process_structure_scope): Adjust.
15809         (read_enumeration_type): Adjust.
15810         (read_array_type): Adjust.
15811         (mark_common_block_symbol_computed): Adjust.
15812         (read_common_block): Adjust.
15813         (read_namespace_type): Adjust.
15814         (read_namespace): Adjust.
15815         (read_module_type): Adjust.
15816         (read_tag_pointer_type): Adjust.
15817         (read_tag_ptr_to_member_type): Adjust.
15818         (read_tag_string_type): Adjust.
15819         (read_subroutine_type): Adjust.
15820         (read_typedef): Adjust.
15821         (read_base_type): Adjust.
15822         (attr_to_dynamic_prop): Adjust.
15823         (read_subrange_type): Adjust.
15824         (read_unspecified_type): Adjust.
15825         (dwarf2_read_abbrevs): Adjust.
15826         (load_partial_dies): Adjust.
15827         (read_partial_die): Adjust.
15828         (find_partial_die): Adjust.
15829         (guess_partial_die_structure_name): Adjust.
15830         (fixup_partial_die): Adjust.
15831         (read_attribute_value): Adjust.
15832         (read_addr_index): Adjust.
15833         (read_addr_index_from_leb128): Adjust.
15834         (read_str_index): Adjust.
15835         (dwarf2_string_attr): Adjust.
15836         (get_debug_line_section): Adjust.
15837         (dwarf_decode_line_header): Adjust.
15838         (lnp_state_machine::check_line_address): Adjust.
15839         (dwarf_decode_lines_1): Adjust.
15840         (dwarf_decode_lines): Adjust.
15841         (dwarf2_start_symtab): Adjust.
15842         (var_decode_location): Adjust.
15843         (new_symbol_full): Adjust.
15844         (dwarf2_const_value_data): Adjust.
15845         (dwarf2_const_value_attr): Adjust.
15846         (dwarf2_const_value): Adjust.
15847         (die_type): Adjust.
15848         (die_containing_type): Adjust.
15849         (build_error_marker_type): Adjust.
15850         (lookup_die_type): Adjust.
15851         (guess_full_die_structure_name): Adjust.
15852         (anonymous_struct_prefix): Adjust.
15853         (determine_prefix): Adjust.
15854         (dwarf2_name): Adjust.
15855         (follow_die_ref_or_sig): Adjust.
15856         (follow_die_offset): Adjust.
15857         (follow_die_ref): Adjust.
15858         (follow_die_sig_1): Adjust.
15859         (follow_die_sig): Adjust.
15860         (get_signatured_type): Adjust.
15861         (get_DW_AT_signature_type): Adjust.
15862         (decode_locdesc): Adjust.
15863         (dwarf_decode_macros): Adjust.
15864         (cu_debug_loc_section): Adjust.
15865         (fill_in_loclist_baton): Adjust.
15866         (dwarf2_symbol_mark_computed): Adjust.
15867         (init_one_comp_unit): Don't assign
15868         dwarf2_cu::dwarf2_per_objfile.
15869         (set_die_type): Adjust.
15870
15871 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15872
15873         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15874         <dwarf2_per_objfile>: New field.
15875         (dwarf2_per_objfile): Remove global.
15876         (get_dwarf2_per_objfile): New function.
15877         (set_dwarf2_per_objfile): New function.
15878         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15879         dwarf2_per_objfile.
15880         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15881         (read_abbrev_offset): Likewise.
15882         (read_indirect_string): Likewise.
15883         (read_indirect_line_string): Likewise.
15884         (read_indirect_string_at_offset): Likewise.
15885         (read_indirect_string_from_dwz): Likewise.
15886         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15887         dwarf2_per_objfile.
15888         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15889         (create_all_comp_units): Change objfile parameter to
15890         dwarf2_per_objfile.
15891         (create_all_type_units): Likewise.
15892         (process_queue): Add dwarf2_per_objfile parameter.
15893         (read_and_check_comp_unit_head): Likewise.
15894         (lookup_dwo_unit_in_dwp): Likewise.
15895         (get_dwp_file): Likewise.
15896         (process_cu_includes): Likewise.
15897         (struct free_dwo_file_cleanup_data): New struct.
15898         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15899         set_dwarf2_per_objfile.
15900         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15901         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15902         context, adjust calls.
15903         (dw2_instantiate_symtab): Likewise.
15904         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15905         (dw2_get_cu): Likewise.
15906         (create_cu_from_index_list): Change objfile parameter to
15907         dwarf2_per_objfile.
15908         (create_cus_from_index_list): Get dwarf2_per_objfile from
15909         context, adjust calls.
15910         (create_cus_from_index): Likewise.
15911         (create_signatured_type_table_from_index): Change objfile
15912         parameter to dwarf2_per_objfile.
15913         (create_signatured_type_table_from_debug_names): Change objfile
15914         parameter to dwarf2_per_objfile.
15915         (create_addrmap_from_index): Likewise.
15916         (create_addrmap_from_aranges): Likewise.
15917         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15918         (dw2_setup): Remove.
15919         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15920         context.
15921         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15922         get_dwarf2_per_objfile.
15923         (dw2_forget_cached_source_info): Likewise.
15924         (dw2_map_symtabs_matching_filename): Likewise.
15925         (struct dw2_symtab_iterator) <index>: Remove.
15926         <dwarf2_per_objfile>: New field.
15927         (dw2_symtab_iter_init): Replace index parameter with
15928         dwarf2_per_objfile.
15929         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15930         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15931         (dw2_print_stats): Likewise.
15932         (dw2_dump): Likewise.
15933         (dw2_expand_symtabs_for_function): Likewise.
15934         (dw2_expand_all_symtabs): Likewise.
15935         (dw2_expand_symtabs_with_fullname): Likewise.
15936         (dw2_expand_marked_cus): Replace index and objfile parameters
15937         with dwarf2_per_objfile.
15938         (dw_expand_symtabs_matching_file_matcher): Add
15939         dwarf2_per_objfile parameter and adjust calls.
15940         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15941         adjust calls.
15942         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15943         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15944         adjust calls.
15945         (create_cus_from_debug_names_list): Replace objfile parameter
15946         with dwarf2_per_objfile and adjust calls.
15947         (create_cus_from_debug_names): Likewise.
15948         (dwarf2_read_debug_names): Likewise.
15949         (mapped_debug_names::namei_to_name): Adjust call.
15950         (dw2_debug_names_iterator::next): Likewise.
15951         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15952         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15953         (dw2_debug_names_dump): Likewise.
15954         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15955         (dw2_debug_names_expand_symtabs_matching): Likewise.
15956         (dwarf2_initialize_objfile): Likewise.
15957         (dwarf2_build_psymtabs): Likewise.
15958         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15959         this_cu.
15960         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15961         (read_and_check_comp_unit_head): Likewise.
15962         (read_abbrev_offset): Likewise.
15963         (create_debug_type_hash_table): Likewise.
15964         (create_debug_types_hash_table): Likewise.
15965         (create_all_type_units): Replace objfile parameter with
15966         dwarf2_per_objfile.
15967         (add_type_unit): Add dwarf2_per_objfile parameter.
15968         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15969         with dwarf2_per_objfile.
15970         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15971         (lookup_dwp_signatured_type): Likewise.
15972         (lookup_signatured_type): Likewise.
15973         (read_cutu_die_from_dwo): Likewise.
15974         (init_tu_and_read_dwo_dies): Likewise.
15975         (init_cutu_and_read_dies): Likewise.
15976         (init_cutu_and_read_dies_no_follow): Likewise.
15977         (allocate_type_unit_groups_table): Add objfile parameter.
15978         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15979         (get_type_unit_group): Likewise.
15980         (process_psymtab_comp_unit): Update call.
15981         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15982         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15983         (print_tu_stats): Likewise.
15984         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15985         in void* parameter.
15986         (build_type_psymtabs): Change objfile parameter to
15987         dwarf2_per_objfile.
15988         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15989         passed in void* parameter.
15990         (process_skeletonless_type_units): Change objfile parameter to
15991         dwarf2_per_objfile.
15992         (set_partial_user): Likewise.
15993         (dwarf2_build_psymtabs_hard): Likewise.
15994         (read_comp_units_from_section): Likewise.
15995         (create_all_comp_units): Likewise.
15996         (scan_partial_symbols): Update calls.
15997         (add_partial_symbol): Likewise.
15998         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15999         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
16000         (process_queue): Add dwarf2_per_objfile parameter.
16001         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
16002         (compute_compunit_symtab_includes): Likewise.
16003         (process_cu_includes): Add dwarf2_per_objfile parameter.
16004         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
16005         (process_full_type_unit): Likewise.
16006         (process_imported_unit_die): Update call.
16007         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
16008         (read_file_scope): Likewise.
16009         (allocate_dwo_file_hash_table): Add objfile parameter.
16010         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
16011         (create_cus_hash_table): Likewise.
16012         (create_dwp_hash_table): Likewise.
16013         (create_dwo_unit_in_dwp_v1): Likewise.
16014         (create_dwp_v2_section): Likewise.
16015         (create_dwo_unit_in_dwp_v2): Likewise.
16016         (lookup_dwo_unit_in_dwp): Likewise.
16017         (try_open_dwop_file): Likewise.
16018         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
16019         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
16020         cleanup to include a reference to dwarf2_per_objfile.
16021         (open_dwp_file): Add dwarf2_per_objfile parameter.
16022         (open_and_init_dwp_file): Likewise.
16023         (get_dwp_file): Likewise.
16024         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
16025         (queue_and_load_all_dwo_tus): Update call.
16026         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
16027         data.
16028         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
16029         (dwarf2_ranges_process): Likewise.
16030         (dwarf2_get_pc_bounds): Likewise.
16031         (mark_common_block_symbol_computed): Likewise.
16032         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
16033         (dwarf2_read_abbrevs): Update call.
16034         (read_partial_die): Use dwarf2_per_objfile from cu.
16035         (find_partial_die): Likewise.
16036         (fixup_partial_die): Likewise.
16037         (read_attribute_value): Likewise.
16038         (read_indirect_string_at_offset_from): Add objfile parameter.
16039         (read_indirect_string_at_offset): Add dwarf2_per_objfile
16040         parameter.
16041         (read_indirect_string_from_dwz): Add objfile parameter.
16042         (read_indirect_string): Add objfile parameter.
16043         (read_addr_index_1): Add dwarf2_per_objfile parameter.
16044         (read_addr_index): Use dwarf2_per_objfile from cu.
16045         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
16046         call dw2_setup.
16047         (read_str_index): Use dwarf2_per_objfile from cu.
16048         (get_debug_line_section): Likewise.
16049         (read_formatted_entries): Add dwarf2_per_objfile parameter.
16050         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
16051         (new_symbol_full): Use dwarf2_per_objfile from cu.
16052         (build_error_marker_type): Likewise.
16053         (lookup_die_type): Likewise.
16054         (determine_prefix): Likewise.
16055         (follow_die_offset): Likewise.
16056         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
16057         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
16058         (dwarf2_fetch_die_type_sect_off): Likewise.
16059         (dwarf2_get_die_type): Likewise.
16060         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
16061         (get_signatured_type): Likewise.
16062         (get_DW_AT_signature_type): Likewise.
16063         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
16064         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
16065         (cu_debug_loc_section): Likewise.
16066         (fill_in_loclist_baton): Likewise.
16067         (dwarf2_symbol_mark_computed): Likewise.
16068         (dwarf2_find_containing_comp_unit): Change objfile parameter to
16069         dwarf2_per_objfile.
16070         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
16071         parameter.
16072         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
16073         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
16074         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
16075         (set_die_type): Use dwarf2_free_objfile from cu.
16076         (get_die_type_at_offset): Likewise.
16077         (dwarf2_per_objfile_free): Don't assign global variable.
16078         (debug_names) <constructor>: Add dwarf2_per_objfile
16079         parameter, update m_debugstrlookup construction.
16080         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16081         parameter.
16082         <m_dwarf2_per_objfile>: New field.
16083         <lookup>: Use m_dwarf2_per_objfile.
16084         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16085         (psyms_seen_size): Likewise.
16086         (write_gdbindex): Replace objfile parameter with
16087         dwarf2_per_objfile.
16088         (write_debug_names): Likewise.
16089         (write_psymtabs_to_index): Likewise.
16090         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16091         calls.
16092
16093 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16094
16095         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16096         <dwarf2_per_objfile>: New field.
16097         (struct dwarf2_per_cu_data) <objfile>: Remove.
16098         <dwarf2_per_objfile>: New field.
16099         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16100         of objfile.
16101         (create_signatured_type_table_from_index): Likewise.
16102         (create_debug_type_hash_table): Likewise.
16103         (fill_in_sig_entry_from_dwo_entry): Likewise.
16104         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16105         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16106         objfile.
16107         (create_partial_symtab): Access objfile through
16108         dwarf2_per_objfile.
16109         (process_psymtab_comp_unit_reader): Likewise.
16110         (read_comp_units_from_section): Likewise.
16111         (scan_partial_symbols): Likewise.
16112         (add_partial_symbol): Likewise.
16113         (add_partial_subprogram): Likewise.
16114         (peek_die_abbrev): Likewise.
16115         (fixup_go_packaging): Likewise.
16116         (process_full_comp_unit): Likewise.
16117         (process_full_type_unit): Likewise.
16118         (process_imported_unit_die): Likewise.
16119         (dwarf2_compute_name): Likewise.
16120         (dwarf2_physname): Likewise.
16121         (read_import_statement): Likewise.
16122         (create_cus_hash_table): Assign dwarf2_physname instead of
16123         objfile.
16124         (read_func_scope): Access objfile through dwarf2_per_objfile.
16125         (read_lexical_block_scope): Likewise.
16126         (read_call_site_scope): Likewise.
16127         (read_variable): Likewise.
16128         (dwarf2_rnglists_process): Likewise.
16129         (dwarf2_ranges_process): Likewise.
16130         (dwarf2_ranges_read): Likewise.
16131         (dwarf2_record_block_ranges): Likewise.
16132         (dwarf2_add_field): Likewise.
16133         (dwarf2_add_member_fn): Likewise.
16134         (read_structure_type): Likewise.
16135         (process_structure_scope): Likewise.
16136         (read_enumeration_type): Likewise.
16137         (read_array_type): Likewise.
16138         (read_common_block): Likewise.
16139         (read_namespace_type): Likewise.
16140         (read_namespace): Likewise.
16141         (read_module_type): Likewise.
16142         (read_tag_pointer_type): Likewise.
16143         (read_tag_ptr_to_member_type): Likewise.
16144         (read_tag_string_type): Likewise.
16145         (read_subroutine_type): Likewise.
16146         (read_typedef): Likewise.
16147         (read_base_type): Likewise.
16148         (attr_to_dynamic_prop): Likewise.
16149         (read_subrange_type): Likewise.
16150         (read_unspecified_type): Likewise.
16151         (load_partial_dies): Likewise.
16152         (read_partial_die): Likewise.
16153         (find_partial_die): Likewise.
16154         (guess_partial_die_structure_name): Likewise.
16155         (fixup_partial_die): Likewise.
16156         (read_attribute_value): Likewise.
16157         (read_addr_index_from_leb128): Likewise.
16158         (dwarf2_read_addr_index): Likewise.
16159         (dwarf2_string_attr): Likewise.
16160         (lnp_state_machine::check_line_address): Likewise.
16161         (dwarf_decode_lines_1): Likewise.
16162         (dwarf_decode_lines): Likewise.
16163         (dwarf2_start_symtab): Likewise.
16164         (var_decode_location): Likewise.
16165         (new_symbol_full): Likewise.
16166         (dwarf2_const_value_data): Likewise.
16167         (dwarf2_const_value_attr): Likewise.
16168         (dwarf2_const_value): Likewise.
16169         (die_type): Likewise.
16170         (die_containing_type): Likewise.
16171         (lookup_die_type): Likewise.
16172         (guess_full_die_structure_name): Likewise.
16173         (anonymous_struct_prefix): Likewise.
16174         (dwarf2_name): Likewise.
16175         (follow_die_ref_or_sig): Likewise.
16176         (follow_die_offset): Likewise.
16177         (follow_die_ref): Likewise.
16178         (dwarf2_fetch_die_loc_sect_off): Likewise.
16179         (dwarf2_fetch_constant_bytes): Likewise.
16180         (dwarf2_fetch_die_type_sect_off): Likewise.
16181         (dwarf2_get_die_type): Likewise.
16182         (follow_die_sig): Likewise.
16183         (decode_locdesc): Likewise.
16184         (dwarf2_per_cu_objfile): Likewise.
16185         (dwarf2_per_cu_text_offset): Likewise.
16186         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16187         objfile.
16188         (set_die_type): Access objfile through
16189         dwarf2_per_objfile.
16190
16191 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16192
16193         * valprint.c (converted_character_d): Remove typedef.
16194         (DEF_VEC_O (converted_character_d)): Remove.
16195         (count_next_character): Use std::vector.
16196         (print_converted_chars_to_obstack): Likewise.
16197         (generic_printstr): Likewise.
16198
16199 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16200
16201         * xml-support.h (struct gdb_xml_value): Add constructor.
16202         <value>: Change type to unique_xmalloc_ptr.
16203         (gdb_xml_value_s): Remove typedef.
16204         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16205         (gdb_xml_element_start_handler): Change parameter type to
16206         std::vector.
16207         (xml_find_attribute): Likewise.
16208         * xml-support.c (xml_find_attribute): Change parameter type to
16209         std::vector and adjust.
16210         (gdb_xml_values_cleanup): Remove.
16211         (gdb_xml_parser::start_element): Adjust to std::vector.
16212         (xinclude_start_include): Change paraeter type to std::vector
16213         and adjust.
16214         * btrace.c (check_xml_btrace_version): Likewise.
16215         (parse_xml_btrace_block): Likewise.
16216         (parse_xml_btrace_pt_config_cpu): Likewise.
16217         (parse_xml_btrace_pt): Likewise.
16218         (parse_xml_btrace_conf_bts): Likewise.
16219         (parse_xml_btrace_conf_pt): Likewise.
16220         * memory-map.c (memory_map_start_memory): Likewise.
16221         (memory_map_start_property): Likewise.
16222         * osdata.c (osdata_start_osdata): Likewise.
16223         (osdata_start_item): Likewise.
16224         (osdata_start_column): Likewise.
16225         * remote.c (start_thread): Likewise.
16226         * solib-aix.c (library_list_start_library): Likewise.
16227         (library_list_start_list): Likewise.
16228         * solib-svr4.c (library_list_start_library): Likewise.
16229         (svr4_library_list_start_list): Likewise.
16230         * solib-target.c (library_list_start_segment): Likewise.
16231         (library_list_start_section): Likewise.
16232         (library_list_start_library): Likewise.
16233         (library_list_start_list): Likewise.
16234         * tracepoint.c (traceframe_info_start_memory): Likewise.
16235         (traceframe_info_start_tvar): Likewise.
16236         * xml-syscall.c (syscall_start_syscall): Likewise.
16237         * xml-tdesc.c (tdesc_start_target): Likewise.
16238         (tdesc_start_feature): Likewise.
16239         (tdesc_start_reg): Likewise.
16240         (tdesc_start_union): Likewise.
16241         (tdesc_start_struct): Likewise.
16242         (tdesc_start_flags): Likewise.
16243         (tdesc_start_enum): Likewise.
16244         (tdesc_start_field): Likewise.
16245         (tdesc_start_enum_value): Likewise.
16246         (tdesc_start_vector): Likewise.
16247
16248 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16249
16250         * extension.h (struct xmethod_worker) <clone>: Remove.
16251         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16252         Remove.
16253         (python_xmethod_worker::clone): Remove.
16254         * valops.c (find_overload_match): Use std::move instead of
16255         clone.
16256
16257 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16258
16259         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16260         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16261         <free_xmethod_worker_data>: Remove.
16262         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16263         <get_xmethod_arg_types>: Remove.
16264         <get_xmethod_result_type>: Remove.
16265         <invoke_xmethod>: Remove.
16266         * extension.c (new_xmethod_worker): Remove.
16267         (clone_xmethod_worker): Remove.
16268         (get_matching_xmethod_workers): Return void, pass std::vector by
16269         pointer.
16270         (get_xmethod_arg_types): Rename to...
16271         (xmethod_worker::get_arg_types): ... this, and adjust.
16272         (get_xmethod_result_type): Rename to...
16273         (xmethod_worker::get_result_type): ... this, and adjust.
16274         (invoke_xmethod): Remove.
16275         (free_xmethod_worker): Remove.
16276         (free_xmethod_worker_vec): Remove.
16277         * extension.h (enum ext_lang_rc): Move here from
16278         extension-priv.h.
16279         (struct xmethod_worker): Add constructor and destructor.
16280         <data>: Remove.
16281         <value>: Remove.
16282         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16283         virtual pure methods.
16284         <get_arg_types, get_result_type>: New methods.
16285         (xmethod_worker_ptr): Remove typedef.
16286         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16287         (xmethod_worker_vec): Remove typedef.
16288         (xmethod_worker_up): New typedef.
16289         (invoke_xmethod): Remove.
16290         (clone_xmethod_worker): Remove.
16291         (free_xmethod_worker): Remove.
16292         (free_xmethod_worker_vec): Remove.
16293         (get_xmethod_arg_types): Remove.
16294         (get_xmethod_result_type): Remove.
16295         * valops.c (find_method_list): Use std::vector, don't use
16296         intermediate vector.
16297         (value_find_oload_method_list): Use std::vector.
16298         (find_overload_match): Use std::vector.
16299         (find_oload_champ): Use std::vector.
16300         * value.c (value_free): Use operator delete.
16301         (value_of_xmethod): Rename to...
16302         (value_from_xmethod): ... this.  Don't assign
16303         xmethod_worker::value, take rvalue-reference.
16304         (result_type_of_xmethod): Adjust.
16305         (call_xmethod): Adjust.
16306         * value.h: Include extension.h.
16307         (struct xmethod_worker): Don't forward-declare.
16308         (value_of_xmethod): Rename to...
16309         (value_from_xmethod): ... this, take rvalue-reference.
16310         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16311         (struct python_xmethod_worker): ... this, add constructor and
16312         destructor.
16313         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16314         (gdbpy_free_xmethod_worker_data): Rename to...
16315         (python_xmethod_worker::~python_xmethod_worker): ... this and
16316         adjust.
16317         (gdbpy_clone_xmethod_worker_data): Rename to...
16318         (python_xmethod_worker::clone): ... this and adjust.
16319         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16320         temporary vector.
16321         (gdbpy_get_xmethod_arg_types): Rename to...
16322         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16323         (gdbpy_get_xmethod_result_type): Rename to...
16324         (python_xmethod_worker::do_get_result_type): ... this and
16325         adjust.
16326         (gdbpy_invoke_xmethod): Rename to...
16327         (python_xmethod_worker::invoke): ... this and adjust.
16328         (new_python_xmethod_worker): Rename to...
16329         (python_xmethod_worker::python_xmethod_worker): ... this and
16330         adjust.
16331         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16332         Remove.
16333         (gdbpy_free_xmethod_worker_data): Remove.
16334         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16335         (gdbpy_get_xmethod_arg_types): Remove.
16336         (gdbpy_get_xmethod_result_type): Remove.
16337         (gdbpy_invoke_xmethod): Remove.
16338         * python/python.c (python_extension_ops): Remove obsolete
16339         callbacks.
16340
16341 2018-01-05  Pedro Alves  <palves@redhat.com>
16342
16343         PR gdb/18653
16344         * common/signals-state-save-restore.c
16345         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16346         find a custom handler preinstalled, instead of internal erroring.
16347         But only warn if !quiet.
16348         * common/signals-state-save-restore.h
16349         (save_original_signals_state): New parameter 'quiet'.
16350         * main.c (captured_main_1): Move save_original_signals_state call
16351         after option handling, and pass QUIET.
16352
16353 2018-01-05  Pedro Alves  <palves@redhat.com>
16354
16355         * spu-tdep.c (spu_catch_start): Pass
16356         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16357
16358 2018-01-05  Pedro Alves  <palves@redhat.com>
16359
16360         PR gdb/22670
16361         * ada-lang.c (literal_symbol_name_matcher): New function.
16362         (ada_get_symbol_name_matcher): Use it for
16363         symbol_name_match_type::SEARCH_NAME.
16364         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16365         it down instead of assuming symbol_name_match_type::FULL.
16366         * block.h (block_lookup_symbol): New parameter 'match_type'.
16367         * c-valprint.c (print_unpacked_pointer): Use
16368         lookup_symbol_search_name instead of lookup_symbol.
16369         * compile/compile-object-load.c (get_out_value_type): Pass down
16370         symbol_name_match_type::SEARCH_NAME.
16371         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16372         symbol_name_match_type::FULL.
16373         * cp-support.c (cp_get_symbol_name_matcher): Handle
16374         symbol_name_match_type::SEARCH_NAME.
16375         * infrun.c (insert_exception_resume_breakpoint): Use
16376         lookup_symbol_search_name.
16377         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16378         * psymtab.c (maintenance_check_psymtabs): Use
16379         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16380         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16381         SYMBOL_SEARCH_NAME.
16382         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16383         if symbol_name_match_type::SEARCH_NAME.
16384         (lookup_symbol_in_language): Pass down
16385         symbol_name_match_type::FULL.
16386         (lookup_symbol_search_name): New.
16387         (lookup_language_this): Pass down
16388         symbol_name_match_type::SEARCH_NAME.
16389         (lookup_symbol_aux, lookup_local_symbol): New parameter
16390         'match_type'.  Pass it down.
16391         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16392         (lookup_symbol_search_name): New declaration.
16393         (lookup_symbol_in_block): New 'match_type' parameter.
16394
16395 2018-01-05  Pedro Alves  <palves@redhat.com>
16396
16397         PR gdb/22670
16398         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16399         ada_lookup_symbol.
16400         (ada_lookup_symbol): Reimplement in terms of
16401         ada_lookup_symbol_list, bits factored out from
16402         ada_lookup_encoded_symbol.
16403
16404 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16405
16406         * ada-exp.y (write_object_renaming): When subscripting an array
16407         using a symbol as the index, pass the block in call to
16408         ada_lookup_encoded_symbol when looking that symbol up.
16409
16410 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16411
16412         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16413         TYPE_INDEX_TYPE.
16414
16415 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16416
16417         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16418         the case where VALUE_LVAL (val0) is not lval_memory.
16419
16420 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16421
16422         * ada-valprint.c (print_optional_low_bound): Handle
16423         character-indexed array printing like boolean-indexed array
16424         printing.
16425
16426 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16427
16428         * NEWS: Create a new section for the next release branch.
16429         Rename the section of the current branch, now that it has
16430         been cut.
16431
16432 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16433
16434         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16435         * version.in: Bump version to 8.1.50.DATE-git.
16436
16437 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16438
16439         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16440         Add field.
16441         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16442         Add field.
16443         (default_exception_support_info) <catch_handlers_sym>: Add field.
16444         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16445         (ada_exception_name_addr_1): Add "catch handlers" handling.
16446         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16447         Update all callers.
16448         (create_excep_cond_exprs) <ex>: Add parameter.
16449         (re_set_exception): Update create_excep_cond_exprs call.
16450         (print_it_exception, print_one_exception, print_mention_exception)
16451         (print_recreate_exception): Add "catch handler" handling.
16452         (allocate_location_catch_handlers, re_set_catch_handlers)
16453         (check_status_catch_handlers, print_it_catch_handlers)
16454         (print_one_catch_handlers, print_mention_catch_handlers)
16455         (print_recreate_catch_handlers): New function.
16456         (catch_handlers_breakpoint_ops): New variable.
16457         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16458         Add parameter.  Add "catch handler" handling.
16459         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16460         Add "catch handler" handling.
16461         (ada_exception_catchpoint_cond_string): Add "catch handler"
16462         handling.
16463         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16464         call.
16465         (catch_ada_handlers_command): New function.
16466         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16467         operations structure.
16468         (_initialize_ada_language): Add "catch handlers" command entry.
16469         * NEWS: Document "catch handlers" feature.
16470
16471 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16472
16473         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16474         account when creating the array type of the slice.
16475         (ada_value_slice): Likewise.
16476
16477 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16478
16479         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16480         New enum value.
16481         (create_array_type_with_stride): Add byte_stride_prop parameter.
16482         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16483         New parameter.  Update all callers in this file.
16484         (array_type_has_dynamic_stride): New function.
16485         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16486         of arrays with dynamic byte strides.
16487         * dwarf2read.c (read_array_type): Add support for dynamic
16488         DW_AT_byte_stride attributes.
16489
16490 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16491
16492         * dwarf2read.c (read_unspecified_type): Treat
16493         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16494
16495 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16496
16497         Update copyright year range in all GDB files.
16498
16499 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16500
16501         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16502         and gdb/testsuite/gdb.base/step-line.c.
16503
16504 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16505
16506         * copyright.py (main): Dump the contents of
16507         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16508         even if BY_HAND is empty.
16509
16510 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16511
16512         * top.c (print_gdb_version): Update Copyright year in version
16513         message.
16514
16515 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16516
16517         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16518
16519 For older changes see ChangeLog-2017.
16520 \f
16521 Local Variables:
16522 mode: change-log
16523 left-margin: 8
16524 fill-column: 74
16525 version-control: never
16526 coding: utf-8
16527 End: