Convert default_child_has_foo functions to process_stratum_target methods
[external/binutils.git] / gdb / ChangeLog
1 2018-11-30  Pedro Alves  <palves@redhat.com>
2
3         * corelow.c (core_target) <has_all_memory, has_execution>: New
4         overrides.
5         * inf-child.c (inf_child_target::has_all_memory)
6         (inf_child_target::has_memory, inf_child_target::has_stack)
7         (inf_child_target::has_registers)
8         (inf_child_target::has_execution): Delete.
9         * inf-child.h (inf_child_target) <has_all_memory, has_memory,
10         has_stack, has_registers, has_execution>: Delete.
11         * process-stratum-target.c
12         (process_stratum_target::has_all_memory)
13         (process_stratum_target::has_memory)
14         (process_stratum_target::has_stack)
15         (process_stratum_target::has_registers)
16         (process_stratum_target::has_execution): New.
17         * process-stratum-target.h (process_stratum_target)
18         <has_all_memory, has_memory, has_stack, has_registers,
19         has_execution>: New method overrides.
20         * ravenscar-thread.c (ravenscar_thread_target) <has_all_memory,
21         has_memory, has_stack, has_registers, has_execution>: Delete.
22         * remote-sim.c (gdbsim_target) <has_stack, has_registers,
23         has_execution>: Delete.
24         * remote.c (remote_target) <has_all_memory, has_memory, has_stack,
25         has_registers, has_execution>: Delete.
26         * target.c (default_child_has_all_memory)
27         (default_child_has_memory, default_child_has_stack)
28         (default_child_has_registers, default_child_has_execution):
29         Delete.
30         * target.h (default_child_has_all_memory)
31         (default_child_has_memory, default_child_has_stack)
32         (default_child_has_registers, default_child_has_execution):
33         Delete.
34         * tracefile.h (tracefile_target) <has_execution>: New override.
35
36 2018-11-30  Pedro Alves  <palves@redhat.com>
37
38         * Makefile.in (COMMON_SFILES): Add process-stratum-target.c.
39         * bsd-kvm.c: Include "process-stratum-target.h".
40         (bsd_kvm_target): Now inherits from process_stratum_target.
41         (bsd_kvm_target::bsd_kvm_target): Default it.
42         * corelow.c: Include "process-stratum-target.h".
43         (core_target): Now inherits from process_stratum_target.
44         (core_target::core_target): Don't set to_stratum here.
45         * inf-child.c (inf_child_target::inf_child_target): Delete.
46         * inf-child.h: Include "process-stratum-target.h".
47         (inf_child_target): Inherit from process_stratum_target.
48         (inf_child_target) <inf_child_target>: Default it.
49         <can_async_p, supports_non_stop, supports_disable_randomization>:
50         Delete overrides.
51         * process-stratum-target.c: New file.
52         * process-stratum-target.h: New file.
53         * remote-sim.c: Include "process-stratum-target.h".
54         (gdbsim_target): Inherit from process_stratum_target.
55         <gdbsim_target>: Default it.
56         * remote.c: Include "process-stratum-target.h".
57         (remote_target): Inherit from process_stratum_target.
58         <remote_target>: Default it.
59         * target.c (default_thread_address_space)
60         (default_thread_architecture): Delete.
61         * target.h (target_ops) <thread_architecture>: Now returns NULL by
62         default.
63         <thread_address_space>: Ditto.
64         * test-target.h: Include "process-stratum-target.h" instead of
65         "target.h".
66         (test_target_ops): Inherit from process_stratum_target.
67         <test_target_ops>: Default it.
68         * tracefile.c (tracefile_target::tracefile_target): Delete.
69         * tracefile.h: Include "process-stratum-target.h".
70         (tracefile_target): Inherit from process_stratum_target.
71         <tracefile_target>: Default it.
72         * target-delegates.c: Regenerate.
73
74 2018-11-30  Pedro Alves  <palves@redhat.com>
75
76         * Makefile.in (COMMON_SFILES): Add test-target.c.
77         * gdbarch-selftests.c: Include "test-target.h".
78         * regcache.c: Include "test-target.h".
79         * target.c (test_target_info, test_target_ops::info): Move to ...
80         * test-target.c: ... this new file.
81         * target.h (test_target_ops): Move to ...
82         * test-target.h: ... this new file.
83
84 2018-11-29  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
85
86         * source.c (forward_search_command): Fix leak by using
87         xrealloc even for the first allocation in the loop, as buf
88         is static.
89
90 2018-11-29  Rajendra SY  <rajendra.sy@gmail.com>
91
92         PR gdb/23093
93         * gdb/fbsd-tdep.c (fbsd_gdb_signal_from_target)
94         (fbsd_gdb_signal_to_target): New.
95         (fbsd_init_abi): Install gdbarch "signal_from_target" and
96         "signal_to_target" methods.
97
98 2018-11-29  Tom Tromey  <tom@tromey.com>
99
100         * valarith.c (value_x_unop): Don't set argvec[3].
101
102 2018-11-26  Simon Marchi  <simon.marchi@ericsson.com>
103
104         PR gdb/23917
105         * sparc-linux-nat.c (sparc_linux_nat_target): Remove extraneous
106         semicolon.
107
108 2018-11-26  Pedro Alves  <palves@redhat.com>
109
110         * procfs.c (procfs_notice_thread): Replace uses of
111         in_thread_list/is_exited with find_thread_ptid/THREAD_EXITED.
112         * sol-thread.c (sol_thread_target::wait)
113         (sol_update_thread_list_callback): Likewise.
114
115 2018-11-25  Tom Tromey  <tom@tromey.com>
116
117         * ui-out.c (ui_out::field_fmt): Remove comment.
118         * tui/tui-out.c (tui_ui_out::do_field_fmt): Remove comment.
119         * mi/mi-out.c (mi_ui_out::do_field_fmt): Remove comment.
120
121 2018-11-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
122
123         * source.c (open_source_file): Leak fixed in '8e6a5953e1d Fix 4K
124         leak in open_source_file' has been partially undone by '2179fbc36d23
125         Return scoped_fd from open_source_file'. Re-add the transfer of
126         current s->fullname to the unique_xmalloc_ptr fullname given
127         to find_and_open_source.
128
129 2018-11-23  Pedro Alves  <palves@redhat.com>
130
131         * gdbthread.h (enum thread_state): Move comments here.
132         (is_running, is_stopped, is_exited): Remove declarations.
133
134 2018-11-22  Pedro Alves  <palves@redhat.com>
135
136         * Makefile.in (COMMON_SFILES): Add thread-iter.c.
137         * breakpoint.c (breakpoints_should_be_inserted_now): Replace
138         ALL_NON_EXITED_THREADS with all_non_exited_threads.
139         (print_one_breakpoint_location): Replace ALL_INFERIORS with
140         all_inferiors.
141         * bsd-kvm.c: Include inferior.h.
142         * btrace.c (btrace_free_objfile): Replace ALL_NON_EXITED_THREADS
143         with all_non_exited_threads.
144         * common/filtered-iterator.h: New.
145         * common/safe-iterator.h: New.
146         * corelow.c (core_target_open): Don't call init_thread_list here.
147         * darwin-nat.c (thread_info_from_private_thread_info): Replace
148         ALL_THREADS with all_threads.
149         * fbsd-nat.c (fbsd_nat_target::resume): Replace
150         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
151         * fbsd-tdep.c (fbsd_make_corefile_notes): Replace
152         ALL_NON_EXITED_THREADS with inf->non_exited_threads.
153         * fork-child.c (postfork_hook): Don't call init_thread_list here.
154         * gdbarch-selftests.c (register_to_value_test): Adjust.
155         * gdbthread.h: Don't include "inferior.h" here.
156         (struct inferior): Forward declare.
157         (enum step_over_calls_kind): Moved here from inferior.h.
158         (thread_info::deletable): Definition moved to thread.c.
159         (find_thread_ptid (inferior *, ptid_t)): Declare.
160         (ALL_THREADS, ALL_THREADS_BY_INFERIOR, ALL_THREADS_SAFE): Delete.
161         Include "thread-iter.h".
162         (all_threads, all_non_exited_threads, all_threads_safe): New.
163         (any_thread_p): Declare.
164         (thread_list): Delete.
165         * infcmd.c (signal_command): Replace ALL_NON_EXITED_THREADS with
166         all_non_exited_threads.
167         (proceed_after_attach_callback): Delete.
168         (proceed_after_attach): Take an inferior pointer instead of an
169         integer PID.  Adjust to use range-for.
170         (attach_post_wait): Pass down inferior pointer instead of pid.
171         Use range-for instead of ALL_NON_EXITED_THREADS.
172         (detach_command): Remove init_thread_list call.
173         * inferior-iter.h: New.
174         * inferior.c (struct delete_thread_of_inferior_arg): Delete.
175         (delete_thread_of_inferior): Delete.
176         (delete_inferior, exit_inferior_1): Use range-for with
177         inf->threads_safe() instead of iterate_over_threads.
178         (inferior_appeared): Call init_thread_list here.
179         (discard_all_inferiors): Use all_non_exited_inferiors.
180         (find_inferior_id, find_inferior_pid): Use all_inferiors.
181         (iterate_over_inferiors): Use all_inferiors_safe.
182         (have_inferiors, number_of_live_inferiors): Use
183         all_non_exited_inferiors.
184         (number_of_inferiors): Use all_inferiors and std::distance.
185         (print_inferior): Use all_inferiors.
186         * inferior.h: Include gdbthread.h.
187         (enum step_over_calls_kind): Moved to gdbthread.h.
188         (struct inferior) <thread_list>: New field.
189         <threads, non_exited_threads, threads_safe>: New methods.
190         (ALL_INFERIORS): Delete.
191         Include "inferior-iter.h".
192         (ALL_NON_EXITED_INFERIORS): Delete.
193         (all_inferiors_safe, all_inferiors, all_non_exited_inferiors): New
194         functions.
195         * inflow.c (child_interrupt, child_pass_ctrlc): Replace
196         ALL_NON_EXITED_THREADS with all_non_exited_threads.
197         * infrun.c (follow_exec): Use all_threads_safe.
198         (clear_proceed_status, proceed): Use all_non_exited_threads.
199         (init_wait_for_inferior): Don't clear inline frame state here.
200         (infrun_thread_stop_requested, for_each_just_stopped_thread): Use
201         all_threads instead of ALL_NON_EXITED_THREADS.
202         (random_pending_event_thread): Use all_non_exited_threads instead
203         of ALL_NON_EXITED_THREADS.  Use a lambda for repeated code.
204         (clean_up_just_stopped_threads_fsms): Use all_non_exited_threads
205         instead of ALL_NON_EXITED_THREADS.
206         (handle_no_resumed): Use all_non_exited_threads instead of
207         ALL_NON_EXITED_THREADS.  Use all_inferiors instead of
208         ALL_INFERIORS.
209         (restart_threads, switch_back_to_stepped_thread): Use
210         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
211         * linux-nat.c (check_zombie_leaders): Replace ALL_INFERIORS with
212         all_inferiors.
213         (kill_unfollowed_fork_children): Use inf->non_exited_threads
214         instead of ALL_NON_EXITED_THREADS.
215         * linux-tdep.c (linux_make_corefile_notes): Use
216         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
217         * linux-thread-db.c (thread_db_target::update_thread_list):
218         Replace ALL_INFERIORS with all_inferiors.
219         (thread_db_target::thread_handle_to_thread_info): Use
220         inf->non_exited_threads instead of ALL_NON_EXITED_THREADS.
221         * mi/mi-interp.c (multiple_inferiors_p): New.
222         (mi_on_resume_1): Simplify using all_non_exited_threads and
223         multiple_inferiors_p.
224         * mi/mi-main.c (mi_cmd_thread_list_ids): Use all_non_exited_threads
225         instead of ALL_NON_EXITED_THREADS.
226         * nto-procfs.c (nto_procfs_target::open): Don't call
227         init_thread_list here.
228         * record-btrace.c (record_btrace_target_open)
229         (record_btrace_target::stop_recording)
230         (record_btrace_target::close)
231         (record_btrace_target::record_is_replaying)
232         (record_btrace_target::resume, record_btrace_target::wait)
233         (record_btrace_target::record_stop_replaying): Use
234         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
235         * record-full.c (record_full_wait_1): Use all_non_exited_threads
236         instead of ALL_NON_EXITED_THREADS.
237         * regcache.c (cooked_read_test): Remove reference to global
238         thread_list.
239         * remote-sim.c (gdbsim_target::create_inferior): Don't call
240         init_thread_list here.
241         * remote.c (remote_target::update_thread_list): Use
242         all_threads_safe instead of ALL_NON_EXITED_THREADS.
243         (remote_target::process_initial_stop_replies): Replace
244         ALL_INFERIORS with all_non_exited_inferiors and use
245         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
246         (remote_target::open_1): Don't call init_thread_list here.
247         (remote_target::append_pending_thread_resumptions)
248         (remote_target::remote_resume_with_hc): Use all_non_exited_threads
249         instead of ALL_NON_EXITED_THREADS.
250         (remote_target::commit_resume)
251         (remote_target::remove_new_fork_children): Replace ALL_INFERIORS
252         with all_non_exited_inferiors and use all_non_exited_threads
253         instead of ALL_NON_EXITED_THREADS.
254         (remote_target::kill_new_fork_children): Use
255         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.  Remove
256         init_thread_list and init_wait_for_inferior calls.
257         (remote_target::remote_btrace_maybe_reopen)
258         (remote_target::thread_handle_to_thread_info): Use
259         all_non_exited_threads instead of ALL_NON_EXITED_THREADS.
260         * target.c (target_terminal::restore_inferior)
261         (target_terminal_is_ours_kind): Replace ALL_INFERIORS with
262         all_non_exited_inferiors.
263         * thread-iter.c: New file.
264         * thread-iter.h: New file.
265         * thread.c: Include "inline-frame.h".
266         (thread_list): Delete.
267         (clear_thread_inferior_resources): Call clear_inline_frame_state.
268         (init_thread_list): Use all_threads_safe instead of
269         ALL_THREADS_SAFE.  Adjust to per-inferior thread lists.
270         (new_thread): Adjust to per-inferior thread lists.
271         (add_thread_silent): Pass inferior to find_thread_ptid.
272         (thread_info::deletable): New, moved from the header.
273         (delete_thread_1): Adjust to per-inferior thread lists.
274         (find_thread_global_id): Use inf->threads().
275         (find_thread_ptid): Use find_inferior_ptid and pass inferior to
276         find_thread_ptid.
277         (find_thread_ptid(inferior*, ptid_t)): New overload.
278         (iterate_over_threads): Use all_threads_safe.
279         (any_thread_p): New.
280         (thread_count): Use all_threads and std::distance.
281         (live_threads_count): Use all_non_exited_threads and
282         std::distance.
283         (valid_global_thread_id): Use all_threads.
284         (in_thread_list): Use find_thread_ptid.
285         (first_thread_of_inferior): Adjust to per-inferior thread lists.
286         (any_thread_of_inferior, any_live_thread_of_inferior): Use
287         inf->non_exited_threads().
288         (prune_threads, delete_exited_threads): Use all_threads_safe.
289         (thread_change_ptid): Pass inferior pointer to find_thread_ptid.
290         (set_resumed, set_running): Use all_non_exited_threads.
291         (is_thread_state, is_stopped, is_exited, is_running)
292         (is_executing): Delete.
293         (set_executing, set_stop_requested, finish_thread_state): Use
294         all_non_exited_threads.
295         (print_thread_info_1): Use all_inferiors and all_threads.
296         (thread_apply_all_command): Use all_non_exited_threads.
297         (thread_find_command): Use all_threads.
298         (update_threads_executing): Use all_non_exited_threads.
299         * tid-parse.c (parse_thread_id): Use inf->threads.
300         * x86-bsd-nat.c (x86bsd_dr_set): Use inf->non_exited_threads ().
301
302 2018-11-22  Pedro Alves  <palves@redhat.com>
303
304         * infrun.c (follow_exec) <set follow-exec new>: Add thread and
305         switch to it before calling into try_open_exec_file.
306
307 2018-11-22  Pedro Alves  <palves@redhat.com>
308
309         * cli/cli-interp.c (cli_on_user_selected_context_changed): Use
310         inferior_thread instead of find_thread_ptid, and only when
311         inferior_ptid is not null_ptid.
312         * inferior.c (add_inferior): Don't include target_pid_to_str
313         output when the inferior is not started.
314         * python/py-inferior.c (python_on_normal_stop): Don't use
315         find_thread_ptid.
316         (tui_on_user_selected_context_changed): Use inferior_thread
317         instead of find_thread_ptid, and only when inferior_ptid is not
318         null_ptid.
319
320 2018-11-21  Benno Fünfstück  <benno.fuenfstueck@gmail.com>
321
322         PR python/23714
323         * gdb/python/python.c (execute_gdb_command): Call
324         prevent_dont_repeat earlier to avoid affecting dont_repeat.
325
326 2018-11-21  Andrew Burgess  <andrew.burgess@embecosm.com>
327
328         * Makefile.in (ALL_TARGET_OBS): Add arch/riscv.o.
329         (HFILES_NO_SRCDIR): Add arch/riscv.h.
330         * arch/riscv.c: New file.
331         * arch/riscv.h: New file.
332         * configure.tgt: Add cpu_obs list of riscv, move riscv-tdep.o into
333         this list, and add arch/riscv.o.
334         * features/Makefile: Add riscv features.
335         * features/riscv/32bit-cpu.c: New file.
336         * features/riscv/32bit-cpu.xml: New file.
337         * features/riscv/32bit-csr.c: New file.
338         * features/riscv/32bit-csr.xml: New file.
339         * features/riscv/32bit-fpu.c: New file.
340         * features/riscv/32bit-fpu.xml: New file.
341         * features/riscv/64bit-cpu.c: New file.
342         * features/riscv/64bit-cpu.xml: New file.
343         * features/riscv/64bit-csr.c: New file.
344         * features/riscv/64bit-csr.xml: New file.
345         * features/riscv/64bit-fpu.c: New file.
346         * features/riscv/64bit-fpu.xml: New file.
347         * features/riscv/rebuild-csr-xml.sh: New file.
348         * riscv-tdep.c: Add 'arch/riscv.h' include.
349         (riscv_gdb_reg_names): Delete.
350         (csr_reggroup): New global.
351         (struct riscv_register_alias): Delete.
352         (struct riscv_register_feature): New structure.
353         (riscv_register_aliases): Delete.
354         (riscv_xreg_feature): New global.
355         (riscv_freg_feature): New global.
356         (riscv_virtual_feature): New global.
357         (riscv_csr_feature): New global.
358         (riscv_create_csr_aliases): New function.
359         (riscv_read_misa_reg): Delete.
360         (riscv_has_feature): Delete.
361         (riscv_isa_xlen): Simplify, just return cached xlen.
362         (riscv_isa_flen): Simplify, just return cached flen.
363         (riscv_has_fp_abi): Update for changes in struct gdbarch_tdep.
364         (riscv_register_name): Update to make use of tdesc_register_name.
365         Look up xreg and freg names in the new globals riscv_xreg_feature
366         and riscv_freg_feature.  Don't supply csr aliases here.
367         (riscv_fpreg_q_type): Delete.
368         (riscv_register_type): Use tdesc_register_type in almost all
369         cases, override the returned type in a few specific cases only.
370         (riscv_print_one_register_info): Handle errors reading registers.
371         (riscv_register_reggroup_p): Use tdesc_register_in_reggroup_p for
372         registers that are otherwise unknown to GDB.  Also check the
373         csr_reggroup.
374         (riscv_print_registers_info): Remove assert about upper register
375         number, and use gdbarch_register_reggroup_p instead of
376         short-cutting.
377         (riscv_find_default_target_description): New function.
378         (riscv_check_tdesc_feature): New function.
379         (riscv_add_reggroups): New function.
380         (riscv_setup_register_aliases): New function.
381         (riscv_init_reggroups): New function.
382         (_initialize_riscv_tdep): Add calls to setup CSR aliases, and
383         setup register groups.  Register new riscv debug variable.
384         * riscv-tdep.h: Add 'arch/riscv.h' include.
385         (struct gdbarch_tdep): Remove abi union, and add
386         riscv_gdbarch_features field.  Remove cached quad floating point
387         type, and provide initialisation for double type field.
388         * target-descriptions.c (maint_print_c_tdesc_cmd): Add riscv to
389         the list of targets using the feature based target descriptions.
390         * NEWS: Mention target description support.
391
392 2018-11-21  Pedro Alves  <palves@redhat.com>
393
394         * valops.c (find_method_list, value_find_oload_method_list)
395         (find_overload_match, find_oload_champ): Rename parameters and
396         locals.
397
398 2018-11-21  Pedro Alves  <palves@redhat.com>
399
400         * valops.c (find_method_list): Replace pointer and length
401         parameters with an gdb::array_view.  Adjust.
402         (value_find_oload_method_list): Likewise.
403         (find_overload_match): Use gdb::array_view for methods list.
404         Adjust to find_oload_champ interface change.
405         (find_oload_champ): 'xm_worker_vec' parameter now a pointer/array.
406         'num_fns' parameter now a size_t.  Eliminate 'fn_count' local.
407
408 2018-11-21  Pedro Alves  <palves@redhat.com>
409
410         * gdbtypes.c (compare_badness): Change type of parameters to const
411         reference.  Adjust to badness_vector being a std::vector now.
412         (rank_function): Adjust to badness_vector being a std::vector now.
413         * gdbtypes.h (badness_vector): Now a typedef to std::vector.
414         (LENGTH_MATCH): Delete.
415         (compare_badness): Change type of parameters to const reference.
416         (rank_function): Return a badness_vector by value now.
417         (find_overload_match): Adjust to badness_vector being a
418         std::vector now.  Remove cleanups.
419         (find_oload_champ_namespace): 'oload_champ_bv' parameter now a
420         badness_vector pointer.
421         (find_oload_champ_namespace_loop): 'oload_champ_bv' parameter now
422         a badness_vector pointer.  Adjust to badness_vector being a
423         std::vector now.  Remove cleanups.
424         (find_oload_champ): 'oload_champ_bv' parameter now
425         a badness_vector pointer.  Adjust to badness_vector being a
426         std::vector now.  Remove cleanups.
427
428 2018-11-21  Pedro Alves  <palves@redhat.com>
429
430         * cp-support.c (sym_return_val_size, sym_return_val_index)
431         (sym_return_val): Delete.
432         (overload_list_add_symbol): Add std::vector parameter.  Adjust to
433         add to the vector.
434         (make_symbol_overload_list): Adjust to return a std::vector
435         instead of maintaining a global open coded vector.
436         (make_symbol_overload_list_block): Add std::vector parameter.
437         (make_symbol_overload_list_block): Rename to ...
438         (add_symbol_overload_list_block): ... this and add std::vector
439         parameter.
440         (make_symbol_overload_list_namespace): Rename to ...
441         (add_symbol_overload_list_namespace): ... this and add std::vector
442         parameter.
443         (make_symbol_overload_list_adl_namespace): Rename to ...
444         (add_symbol_overload_list_adl_namespace): ... this and add
445         std::vector parameter.
446         (make_symbol_overload_list_adl): Delete.
447         (add_symbol_overload_list_adl): New.
448         (make_symbol_overload_list_using): Rename to ...
449         (add_symbol_overload_list_using): ... this and add std::vector
450         parameter.
451         (make_symbol_overload_list_qualified): Rename to ...
452         (add_symbol_overload_list_qualified): ... this and add std::vector
453         parameter.
454         * cp-support.h: Include "common/array-view.h" and <vector>.
455         (make_symbol_overload_list): Change return type to std::vector.
456         (make_symbol_overload_list_adl): Delete declaration.
457         (add_symbol_overload_list_adl): New declaration.
458         * valops.c (find_overload_match): Local 'oload_syms' now a
459         std::vector.
460         (find_oload_champ_namespace): 'oload_syms' parameter now a
461         std::vector pointer.
462         (find_oload_champ_namespace_loop): 'oload_syms' parameter now a
463         std::vector pointer.  Adjust to new make_symbol_overload_list
464         interface.
465
466 2018-11-21  Pedro Alves  <palves@redhat.com>
467
468         * common/array-view.h (array_view::splice(size_type, size_t)): New.
469         (array_view::splice(size_type)): New.
470         * eval.c (eval_call, evaluate_funcall): Adjust to use array_view.
471         * extension.c (xmethod_worker::get_arg_types): Adjust to return an
472         std::vector.
473         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
474         * extension.h: Include "common/array-view.h".
475         (xmethod_worker::invoke): Adjust to use gdb::array_view.
476         (xmethod_worker::get_arg_types): Adjust to return an std::vector.
477         (xmethod_worker::get_result_type): Adjust to use gdb::array_view.
478         (xmethod_worker::do_get_arg_types): Adjust to use std::vector.
479         (xmethod_worker::do_get_result_type): Adjust to use
480         gdb::array_view.
481         * gdbtypes.c (rank_function): Adjust to use gdb::array_view.
482         * gdbtypes.h: Include "common/array-view.h".
483         (rank_function): Adjust to use gdb::array_view.
484         * python/py-xmethods.c (python_xmethod_worker::invoke)
485         (python_xmethod_worker::do_get_arg_types)
486         (python_xmethod_worker::do_get_result_type)
487         (python_xmethod_worker::invoke): Adjust to new interfaces.
488         * valarith.c (value_user_defined_cpp_op, value_user_defined_op)
489         (value_x_binop, value_x_unop): Adjust to use gdb::array_view.
490         * valops.c (find_overload_match, find_oload_champ_namespace)
491         (find_oload_champ_namespace_loop, find_oload_champ): Adjust to use
492         gdb:array_view and the new xmethod_worker interfaces.
493         * value.c (result_type_of_xmethod, call_xmethod): Adjust to use
494         gdb::array_view.
495         * value.h (find_overload_match, result_type_of_xmethod)
496         (call_xmethod): Adjust to use gdb::array_view.
497         * unittests/array-view-selftests.c: Add slicing tests.
498
499 2018-11-21  Pedro Alves  <palves@redhat.com>
500
501         * ada-lang.c (ada_evaluate_subexp): Adjust to pass an array_view.
502         * common/array-view.h (make_array_view): New.
503         * compile/compile-object-run.c (compile_object_run): Adjust to
504         pass an array_view.
505         * elfread.c (elf_gnu_ifunc_resolve_addr): Adjust.
506         * eval.c (eval_call): Adjust to pass an array_view.
507         (evaluate_subexp_standard): Adjust to pass an array_view.
508         * gcore.c (call_target_sbrk): Adjust to pass an array_view.
509         * guile/scm-value.c (gdbscm_value_call): Likewise.
510         * infcall.c (push_dummy_code): Replace pointer + size parameters
511         with an array_view parameter.
512         (call_function_by_hand, call_function_by_hand_dummy): Likewise and
513         adjust.
514         * infcall.h: Include "common/array-view.h".
515         (call_function_by_hand, call_function_by_hand_dummy): Replace
516         pointer + size parameters with an array_view parameter.
517         * linux-fork.c (inferior_call_waitpid): Adjust to use array_view.
518         * linux-tdep.c (linux_infcall_mmap): Likewise.
519         * objc-lang.c (lookup_objc_class, lookup_child_selector)
520         (value_nsstring, print_object_command): Likewise.
521         * python/py-value.c (valpy_call): Likewise.
522         * rust-lang.c (rust_evaluate_funcall): Likewise.
523         * spu-tdep.c (flush_ea_cache): Likewise.
524         * valarith.c (value_x_binop, value_x_unop): Likewise.
525         * valops.c (value_allocate_space_in_inferior): Likewise.
526         * unittests/array-view-selftests.c (run_tests): Add
527         gdb::make_array_view test.
528
529 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
530
531         * cli-out.c (cli_ui_out::do_field_int): Use string_printf rather
532         than a fixed size buffer.
533
534 2018-11-20  Andrew Burgess  <andrew.burgess@embecosm.com>
535
536         * breakpoint.c (print_one_breakpoint_location): Reduce whitespace,
537         and remove insertion of extra spaces in GDB's output.
538         * cli-out.c (cli_ui_out::do_field_fmt): Update header comment.
539         Layout field into a temporary buffer, and then output it as a
540         string field.
541
542 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
543
544         * NEWS: Document the language choice done by
545         'info [types|functions|variables]|rbreak'.
546
547 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
548
549         * symtab.c (treg_matches_sym_type_name): Use
550         scoped_switch_to_sym_language_if_auto instead of local logic.
551         (print_symbol_info): Use scoped_switch_to_sym_language_if_auto
552         to switch to SYM language when language mode is auto.
553
554 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
555
556         * language.h (scoped_switch_to_sym_language_if_auto): New class.
557
558 2018-11-20  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
559
560         * symtab.c (search_symbols): Properly check absence of type regexp
561         before entering the loop scanning the minimal symbols.
562
563 2018-11-20  John Darrington  <john@darrington.wattle.id.au>
564
565         * s12z-tdep.c (s12z_extract_return_value): New function.
566         (inv_reg_perm) New array.
567         (s12z_return_value): Populate readbuf if non-null.
568
569 2018-11-20  Eli Zaretskii  <eliz@gnu.org>
570
571         * common/filestuff.c (gdb_fopen_cloexec): Disable use of "e" mode
572         with 'fopen' also if O_CLOEXEC is equal to O_NOINHERIT, to cater
573         to MinGW fixed by Gnulib.
574         (O_NOINHERIT): Define if not defined.
575
576 2018-11-19  John Darrington  <john@darrington.wattle.id.au>
577
578         * s12z-tdep.c (s12z_frame_cache): Add an assertion.
579
580 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
581
582         * infrun.c (displaced_step_inferior_state) <next>: Remove.
583
584 2018-11-19  Tom Tromey  <tom@tromey.com>
585
586         * source.c (get_filename_and_charpos): Return void.
587
588 2018-11-19  Simon Marchi  <simon.marchi@polymtl.ca>
589
590         * skip.c (_initialize_step_skip): Fix "info skip" help.
591
592 2018-11-16  Tom Tromey  <tom@tromey.com>
593
594         PR rust/23625:
595         * rust-lang.c (rust_internal_print_type): Handle TYPE_CODE_PTR.
596
597 2018-11-19  Simon Marchi  <simon.marchi@ericsson.com>
598
599         * infrun.c (displaced_step_inferior_states): Change type to
600         std::forward_list.
601         (get_displaced_stepping_state): Adjust.
602         (displaced_step_in_progress_any_inferior): Adjust.
603         (add_displaced_stepping_state): Adjust.
604         (remove_displaced_stepping_state): Adjust.
605
606 2018-11-18  Tom Tromey  <tom@tromey.com>
607
608         PR build/23814:
609         * target-delegates.c: Rebuild.
610         * ia64-linux-nat.c (class ia64_linux_nat_target)
611         <have_steppable_watchpoint>: Use override.  Return true, not 1.
612         (ia64_linux_nat_target::can_use_hw_breakpoint): Rename.  Remove
613         "self" argument.
614         (ia64_linux_nat_target::low_new_thread): Rename.
615         (class ia64_linux_nat_target) <read_description>: Don't declare.
616         * target.h (struct target_ops) <have_steppable_watchpoint>: Return
617         bool.
618
619 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
620
621         PR gdb/22736:
622         * aarch64-tdep.c (aarch64_push_dummy_call): Remove
623         lang_struct_return code.
624
625 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
626
627         * aarch64-tdep.c (aarch64_push_dummy_call): Replace arg with
628         return_method.
629         * alpha-tdep.c (alpha_push_dummy_call): Likewise.
630         * amd64-tdep.c (amd64_push_arguments): Likewise.
631         (amd64_push_dummy_call): Likewise.
632         * amd64-windows-tdep.c (amd64_windows_push_arguments): Likewise.
633         * arc-tdep.c (arc_push_dummy_call): Likewise.
634         * arm-tdep.c (arm_push_dummy_call): Likewise.
635         * avr-tdep.c (avr_push_dummy_call): Likewise.
636         * bfin-tdep.c (bfin_push_dummy_call): Likewise.
637         * cris-tdep.c (cris_push_dummy_call): Likewise.
638         * csky-tdep.c (csky_push_dummy_call): Likewise.
639         * frv-tdep.c (frv_push_dummy_call): Likewise.
640         * gdbarch.c: Regenerate.
641         * gdbarch.h: Regenerate.
642         * gdbarch.sh (gdbarch_push_dummy_call): Replace arg with
643         return_method.
644         * h8300-tdep.c (h8300_push_dummy_call): Likewise.
645         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
646         (hppa64_push_dummy_call): Likewise.
647         * i386-darwin-tdep.c (i386_darwin_push_dummy_call): Likewise.
648         * i386-tdep.c (i386_push_dummy_call): Likewise.
649         * ia64-tdep.c (ia64_push_dummy_call): Likewise.
650         * infcall.c (call_function_by_hand_dummy): Likewise.
651         * iq2000-tdep.c (iq2000_push_dummy_call): Likewise.
652         * lm32-tdep.c (lm32_push_dummy_call): Likewise.
653         * m32c-tdep.c (m32c_push_dummy_call): Likewise.
654         * m32r-tdep.c (m32r_push_dummy_call): Likewise.
655         * m68hc11-tdep.c (m68hc11_push_dummy_call): Likewise.
656         * m68k-tdep.c (m68k_push_dummy_call): Likewise.
657         * mep-tdep.c (mep_push_dummy_call): Likewise.
658         * mips-tdep.c (mips_eabi_push_dummy_call): Likewise.
659         (mips_n32n64_push_dummy_call): Likewise.
660         (mips_o32_push_dummy_call): Likewise.
661         (mips_o64_push_dummy_call): Likewise.
662         * mn10300-tdep.c (mn10300_push_dummy_call): Likewise.
663         * msp430-tdep.c (msp430_push_dummy_call): Likewise.
664         * nds32-tdep.c (nds32_push_dummy_call): Likewise.
665         * nios2-tdep.c (nios2_push_dummy_call): Likewise.
666         * or1k-tdep.c (or1k_push_dummy_call): Likewise.
667         * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Likewise.
668         (ppc64_sysv_abi_push_dummy_call): Likewise.
669         * ppc-tdep.h (ppc_sysv_abi_push_dummy_call): Likewise.
670         (ppc64_sysv_abi_push_dummy_call): Likewise.
671         * riscv-tdep.c (riscv_push_dummy_call): Likewise.
672         * rl78-tdep.c (rl78_push_dummy_call): Likewise.
673         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
674         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
675         * rx-tdep.c (rx_push_dummy_call): Likewise.
676         * s390-tdep.c (s390_push_dummy_call): Likewise.
677         * score-tdep.c (score_push_dummy_call): Likewise.
678         * sh-tdep.c (sh_push_dummy_call_fpu): Likewise.
679         (sh_push_dummy_call_nofpu): Likewise.
680         * sparc-tdep.c (sparc32_store_arguments): Likewise.
681         (sparc32_push_dummy_call): Likewise.
682         * sparc64-tdep.c (sparc64_store_arguments): Likewise.
683         (sparc64_push_dummy_call): Likewise.
684         * spu-tdep.c (spu_push_dummy_call): Likewise.
685         * tic6x-tdep.c (tic6x_push_dummy_call): Likewise.
686         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
687         * v850-tdep.c (v850_push_dummy_call): Likewise.
688         * vax-tdep.c (vax_push_dummy_call): Likewise.
689         * xstormy16-tdep.c (xstormy16_push_dummy_call): Likewise.
690         * xtensa-tdep.c (xtensa_push_dummy_call): Likewise.
691
692 2018-11-16  Alan Hayward  <alan.hayward@arm.com>
693
694         * gdbarch.sh (enum function_call_return_method): Add enum.
695         * gdbarch.h: Regenerate.
696         * infcall.c (call_function_by_hand_dummy): Replace vars with enum.
697
698 2018-11-15  Joel Brobecker  <brobecker@adacore.com>
699
700         * unittests/copy_bitwise-selftests.c: New file.
701         * utils.c (selftests::bits_to_str, selftests::check_copy_bitwise)
702         (selftests::copy_bitwise_tests): Delete, moving this code to
703         unittests/copy_bitwise-selftests.c instead.
704         (_initialize_utils): Do not register copy_bitwise tests.
705         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
706         unittests/copy_bitwise-selftests.c.
707
708 2018-11-14  Joel Brobecker  <brobecker@adacore.com>
709
710         * ada-lang.c (move_bits): Delete. Update all callers to use
711         copy_bitwise instead.
712         * dwarf2loc.c (copy_bitwise, bits_to_str::bits_to_str)
713         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
714         Move from here to utils.c.
715         (_initialize_dwarf2loc): Remove call to register copy_bitwise
716         selftests.
717         * utils.h (copy_bitwise): Add declaration.
718         * utils.c (copy_bitwise, bits_to_str::bits_to_str)
719         (selftests::check_copy_bitwise, selftests::copy_bitwise_tests):
720         Moved here from dwarf2loc.c.
721         (_initialize_utils): Register copy_bitwise selftests.
722
723 2018-11-14  Jim Wilson  <jimw@sifive.com>
724
725         * riscv-tdep.c (struct riscv_arg_info): New field is_unnamed.
726         (riscv_call_arg_scalar_int): If unnamed arg with twice xlen alignment,
727         then increment next_regnum if odd.
728         (riscv_arg_location): New arg is_unnamed.  Set ainfo->is_unnamed.
729         (riscv_push_dummy_call): New local ftype.  Call check_typedef to set
730         function type.  Pass new arg to riscv_arg_location based on function
731         type.
732         (riscv_return_value): Pass new arg to riscv_arg_location.
733
734         * riscv-tdep.c (BIGGEST_ALIGNMENT): New.
735         (riscv_type_alignment) <TYPE_CODE_ARRAY>: If TYPE_VECTOR, return min
736         of TYPE_LENGTH and BIGGEST_ALIGNMENT.
737
738         * riscv-tdep.c (riscv_call_arg_scalar_int): Use std::min when
739         setting len.  New local align, set to max of arg align and xlen,
740         and pass to first riscv_assign_stack_location call.
741
742 2018-11-12  Simon Marchi  <simon.marchi@polymtl.ca>
743
744         * skip.c (complete_skip_number): New function.
745         (_initialize_step_skip): Add completers to some skip commands.
746
747 2018-11-09  Tom Tromey  <tom@tromey.com>
748
749         * remote.c (remote_g_packet_guess_s): Remove typedef and DEF_VEC.
750         (struct remote_g_packet_data): Derive from allocate_on_obstack.
751         <guesses>: Now a std::vector.
752         (remote_g_packet_data_init, register_remote_g_packet_guess):
753         Update.
754         (remote_read_description_p): Update.  Return bool.
755         (remote_target::read_description): Update.
756         (struct remote_g_packet_guess): Add constructor.
757
758 2018-11-09  Tom Tromey  <tom@tromey.com>
759
760         * common/scoped_fd.h (class scoped_fd): Add move constructor and
761         move assignment operator.
762         * psymtab.c (psymtab_to_fullname): Update.
763         * source.h (open_source_file): Return scoped_fd.
764         (find_and_open_source): Likewise.
765         * source.c (open_source_file): Return scoped_fd.
766         (get_filename_and_charpos): Update.
767         (print_source_lines_base): Update.  Use scoped_fd::to_file.
768         (forward_search_command): Likewise.
769         (reverse_search_command): Likewise.
770         (find_and_open_source): Return scoped_fd.
771         * tui/tui-source.c (tui_set_source_content): Update.  Use
772         gdb_file_up.
773
774 2018-11-09  John Baldwin  <jhb@FreeBSD.org>
775
776         * minsyms.c (minimal_symbol_reader::install): Fix unsigned
777         overflow.
778
779 2018-11-09  Hafiz Abid Qadeer  <abidh@codesourcery.com>
780
781         * configure: Regenerate.
782
783 2018-11-09  Tom de Vries  <tdevries@suse.de>
784
785         * symtab.c (symbol_set_names): Call symbol_find_demangled_name
786         unconditionally, to set the language of the symbol.  Manage freeing
787         returned pointer using gdb::unique_xmalloc_ptr.
788
789 2018-11-08  Tom Tromey  <tom@tromey.com>
790
791         * record.c (require_record_target): Upper-case "<TAB>".
792
793 2018-11-08  Tom Tromey  <tom@tromey.com>
794
795         * python/lib/gdb/command/pretty_printers.py
796         (InfoPrettyPrinter.invoke): Don't indent "objfile" heading.
797
798 2018-11-08  Tom Tromey  <tom@tromey.com>
799
800         PR gdb/23555:
801         PR gdb/23838:
802         * target.h (target_supports_terminal_ours): Return bool.
803         * target.c (target_supports_terminal_ours): Handle case where
804         current_top_target returns nullptr.  Return bool.
805
806 2018-11-08  Joel Brobecker  <brobecker@adacore.com>
807
808         * aarch64-tdep.c (aapcs_is_vfp_call_or_return_candidate_1):
809         return the correct count for potential HFAs.
810
811 2018-11-08  Jan Beulich  <jbeulich@suse.com>
812
813         * i387-tdep.c (i387_supply_xsave): Split handling of
814         X86_XSTATE_ZMM_H and X86_XSTATE_ZMM.
815         (i387_collect_xsave): Likewise.
816
817 2018-11-08  Andrew Burgess  <andrew.burgess@embecosm.com>
818
819         * riscv-tdep.c (riscv_insn::decode): Update header comment.
820         (riscv_frame_this_id): Catch errors thrown while building the
821         frame cache, leave the frame id as the default, which is the outer
822         frame id.
823
824 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
825
826         * ada-lang.c (read_atcb): Only set task_info->called_task if
827         task_info->state == Entry_Caller_Sleep.
828         (print_ada_task_info): Do not check task_info->state before
829         checking task_info->called_task.
830         (info_task): Likewise.
831
832 2018-11-07  Joel Brobecker  <brobecker@adacore.com>
833
834         * ada-tasks.c (read_atcb): Clear task_info before computing
835         the value of each of its fields.
836
837 2018-11-07  Andrew Burgess  <andrew.burgess@embecosm.com>
838
839         * dwarf2read.c (dwarf2_init_integer_type): Check for name being
840         NULL before dereferencing it.
841
842 2018-11-06  Tom de Vries  <tdevries@suse.de>
843
844         * linux-tdep.c (linux_vsyscall_range_raw): Use xmalloc to allocate
845         program headers.
846
847 2018-11-06  Max Filippov  <jcmvbkbc@gmail.com>
848
849         * configure.tgt (xtensa*-*-linux*): Change to xtensa*-*-*linux*
850         so that it applies to uclinux as well.
851
852 2018-11-06  Marius Muench  <marius.muench@eurecom.fr>
853
854         * arm-tdep.c (arm_scan_prologue): Don't dereference FP reg
855         when on AAPCS.
856
857 2018-11-06  John Baldwin  <jhb@FreeBSD.org>
858
859         * riscv-fbsd-nat.c (getregs_supplies): Return true for
860         RISCV_CSR_SSTATUS_REGNUM.
861
862 2018-11-04  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
863
864         * source.c (open_source_file): Fix leak by transferring the
865         current s->fullname to the unique_xmalloc_ptr fullname given
866         to find_and_open_source.
867
868 2018-11-04  Tom Tromey  <tom@tromey.com>
869
870         * varobj.c (install_default_visualizer): Update.
871         * python/python-internal.h (gdbpy_get_varobj_pretty_printer):
872         Return gdbpy_ref.
873         * python/py-prettyprint.c (search_pp_list): Return gdbpy_ref.
874         (find_pretty_printer_from_progspace)
875         (find_pretty_printer_from_gdb, find_pretty_printer)
876         (gdbpy_get_varobj_pretty_printer): Return gdbpy_ref.
877         (gdbpy_get_varobj_pretty_printer, gdbpy_default_visualizer):
878         Update.
879
880 2018-11-04  Tom Tromey  <tom@tromey.com>
881
882         * python/python.c (gdbpy_parameter_value): Update.
883         * python/python-internal.h (python_string_to_unicode)
884         (python_string_to_target_python_string)
885         (host_string_to_python_string): Return gdbpy_ref.
886         * python/py-utils.c (python_string_to_unicode)
887         (unicode_to_encoded_python_string)
888         (unicode_to_target_python_string)
889         (python_string_to_target_string)
890         (python_string_to_target_python_string): Return gdbpy_ref.
891         (python_string_to_host_string): Update.
892         (host_string_to_python_string): Return gdbpy_ref.
893         * python/py-symtab.c (stpy_get_filename, stpy_get_producer)
894         (stpy_fullname): Update.
895         * python/py-progspace.c (pspy_get_filename, pspy_solib_name):
896         Update.
897         * python/py-prettyprint.c (print_string_repr): Update.
898         * python/py-objfile.c (objfpy_get_filename, objfpy_get_username)
899         (objfpy_get_build_id): Update.
900         * python/py-breakpoint.c (bppy_get_location)
901         (bppy_get_expression, bppy_get_condition, bppy_get_commands):
902         Update.
903
904 2018-11-04  Tom Tromey  <tom@tromey.com>
905
906         * python/python-internal.h (gdb_py_object_from_longest)
907         (gdb_py_object_from_ulongest): Return gdbpy_ref.
908         * python/py-value.c (valpy_int): Update.
909         * python/py-utils.c (gdb_py_object_from_longest): Return
910         gdbpy_ref.
911         (gdb_py_object_from_ulongest): Likewise.
912         * python/py-type.c (typy_get_alignof): Update.
913         * python/py-linetable.c (ltpy_get_all_source_lines)
914         (ltpy_entry_get_line, ltpy_entry_get_pc): Update.
915         * python/py-block.c (blpy_get_start, blpy_get_end): Update.
916
917 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
918
919         * ada-lang.c (_initialize_ada_language): Fix typo.
920
921 2018-11-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
922
923         * language.c (type): Remove.
924         (_initialize_language): Remove assignment to type.
925
926 2018-11-02  Joel Brobecker  <brobecker@adacore.com>
927
928         * aarch64-ravenscar-thread.h, aarch64-ravenscar-thread.c: New files.
929         * aarch64-tdep.c: #include "aarch64-ravenscar-thread.h".
930         (aarch64_gdbarch_init): Add call to register_aarch64_ravenscar_ops.
931         * Makefile.in (ALL_64_TARGET_OBS): Add aarch64-ravenscar-thread.o.
932         (HFILES_NO_SRCDIR): Add aarch64-ravenscar-thread.h.
933         (ALLDEPFILES): Add aarch64-ravenscar-thread.c.
934         * configure.tgt (cpu_obs) [aarch64*-*-*]: Add ravenscar-thread.o
935         and aarch64-ravenscar-thread.o.
936         * NEWS: Add entry documenting Ravenscar tasking support
937         on AArch64 ELF.
938
939 2018-11-02  Matthew Malcomson  <matthew.malcomson@arm.com>
940
941         * symtab.c (info_functions_command): Initialize quiet flag.
942         * stack.c (info_args_command): Likewise.
943
944 2018-11-01  Jim Wilson  <jimw@sifive.com>
945
946         * riscv-tdep.c (riscv_breakpoint_kind_from_pc): New local unaligned_p.
947         Set if pcptr if unaligned.  Return 2 if unaligned_p true.  Update
948         debugging messages.
949
950 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
951
952         * ada-lang.c (ada_watch_location_expression): New function.
953         (ada_language_defn): Set la_watch_location_expression to
954         ada_watch_location_expression.
955
956 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
957
958         * print-utils.c (int_string): Remove unnecessary trailing spaces.
959
960 2018-11-01  Joel Brobecker  <brobecker@adacore.com>
961
962         * rs6000-tdep.c (skip_prologue): Fix potential negative left
963         shifting.
964
965 2018-11-01  Jerome Guitton  <guitton@adacore.com>
966             Joel Brobecker  <brobecker@adacore.com>
967
968         * defs.h (enum gdb_osabi): Add GDB_OSABI_PIKEOS.
969         * osabi.c (gdb_osabi_names): Add name for GDB_OSABI_PIKEOS.
970         * arm-pikeos-tdep.c: New file.
971         * configure.tgt: Add arm-pikeos-tdep.o to the case of ARM
972         embedded system.
973         * Makefile.in (ALL_TARGET_OBS): Add arm-pikeos-tdep.o.
974
975 2018-11-01  Simon Marchi  <simon.marchi@ericsson.com>
976
977         * common/pathstuff.c (get_standard_temp_dir): New.
978         * common/pathstuff.h (get_standard_temp_dir): New.
979         * config.in: Re-generate.
980         * configure: Re-generate.
981         * configure.ac: Don't check for mkdtemp.
982         * gnulib/aclocal-m4-deps.mk: Re-generate.
983         * gnulib/aclocal.m4: Re-generate.
984         * gnulib/config.in: Re-generate.
985         * gnulib/configure: Re-generate.
986         * gnulib/import/Makefile.am: Re-generate.
987         * gnulib/import/Makefile.in: Re-generate.
988         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
989         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
990         * gnulib/import/m4/mkdtemp.m4: New file.
991         * gnulib/import/mkdtemp.c: New file.
992         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES):
993         Add mkdtemp module.
994         * unittests/mkdir-recursive-selftests.c (test): Use
995         get_standard_temp_dir.
996         (_initialize_mkdir_recursive_selftests): Remove HAVE_MKDTEMP
997         ifdef.
998         * compile/compile.c (get_compile_file_tempdir): Likewise.
999
1000 2018-11-01  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1001
1002         * rs6000-aix-tdep.c: Include "trad-frame.h" and "frame-unwind.h".
1003         (SIG_FRAME_LR_OFFSET64): New define.
1004         (SIG_FRAME_FP_OFFSET64): New define.
1005         (aix_sighandle_frame_cache): New Function.
1006         (aix_sighandle_frame_this_id): New Function.
1007         (aix_sighandle_frame_prev_register): New Function.
1008         (aix_sighandle_frame_sniffer): New Function.
1009         (aix_sighandle_frame_unwind): New global variable.
1010         (rs6000_aix_init_osabi): Install new frame unwinder.
1011
1012 2018-10-31  Sergio Durigan Junior  <sergiodj@redhat.com>
1013
1014         PR gdb/23835
1015         * common/common-defs.h: Don't redefine _FORTIFY_SOURCE if it's
1016         already defined.
1017
1018 2018-10-31  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1019
1020         * ppc-linux-nat.c: Include nat/linux-ptrace.h.
1021
1022 2018-10-31  Andrew Burgess  <andrew.burgess@embecosm.com>
1023
1024         * dwarf2read.c (struct dwarf2_cu): Add producer_is_icc field.
1025         (producer_is_icc): New function.
1026         (check_producer): Set producer_is_icc field on dwarf2_cu.
1027         (dwarf2_init_integer_type): New function.
1028         (read_base_type): Call dwarf2_init_integer_type instead of
1029         init_integer_type in all cases.
1030         (dwarf2_cu::dwarf2_cu): Initialise producer_is_icc field.
1031         * valprint.c (maybe_negate_by_bytes): Add an assertion that the
1032         LEN is greater than 0.
1033
1034 2018-10-30  Tom Tromey  <tom@tromey.com>
1035
1036         * main.c (captured_main_1): Check return value of bfd_init.
1037
1038 2018-10-29  Sergio Durigan Junior  <sergiodj@redhat.com>
1039
1040         * common/offset-type.h (DEFINE_OFFSET_REL_OP): Delete.
1041         Adjust comments.
1042
1043 2018-10-29  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
1044
1045         * procfs.c: Include common/pathstuff.h.
1046
1047 2018-10-28  Andrew Burgess  <andrew.burgess@embecosm.com>
1048
1049         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1050         Add missing braces.  No functional change.
1051
1052 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1053
1054         * macrocmd.c (info_macro_command): Use report_unrecognized_option_error
1055         to report a bad option and fix indentation.
1056         * demangle.c (demangle_command): Use report_unrecognized_option_error
1057         to report a bad option and correctly report the bad option.
1058
1059 2018-10-27  Tom Tromey  <tom@tromey.com>
1060
1061         PR cli/23364:
1062         * darwin-nat.c (copied_shell): New global.
1063         (may_have_sip): Rename from should_disable_startup_with_shell.
1064         (copy_shell_to_cache, maybe_cache_shell): New functions.
1065         (darwin_nat_target::create_inferior): Update.  Use
1066         copied_shell.
1067
1068 2018-10-27  Tom Tromey  <tom@tromey.com>
1069
1070         * unittests/scoped_fd-selftests.c (test_to_file): New function.
1071         (run_tests): Call test_to_file.
1072         * dwarf-index-write.c (write_psymtabs_to_index): Do not reopen
1073         temporary files.
1074         * common/scoped_fd.h (scoped_fd::to_file): New method.
1075
1076 2018-10-27  Tom Tromey  <tom@tromey.com>
1077
1078         * unittests/scoped_mmap-selftests.c (test_normal): Use
1079         gdb_mkostemp_cloexec.
1080         * unittests/scoped_fd-selftests.c (test_destroy, test_release):
1081         Use gdb_mkostemp_cloexec.
1082         * gnulib/aclocal-m4-deps.mk, gnulib/aclocal.m4,
1083         gnulib/config.in, gnulib/configure,
1084         gnulib/import/Makefile.am, gnulib/import/Makefile.in,
1085         gnulib/import/m4/gnulib-cache.m4,
1086         gnulib/import/m4/gnulib-comp.m4: Update.
1087         * gnulib/import/m4/mkostemp.m4: New file.
1088         * gnulib/import/m4/mkstemp.m4: Remove.
1089         * gnulib/import/mkostemp.c: New file.
1090         * gnulib/import/mkstemp.m4: Remove.
1091         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Remove
1092         mkstemp, add mkostemp.  Apply new patch.
1093         * gnulib/import/stdlib.in.h: Apply patch.
1094         * gnulib/patches/0002-mkostemp-mkostemps-Fix-compilation-error-in-C-mode-o.patch:
1095         New file.
1096         * dwarf-index-write.c (write_psymtabs_to_index): Use
1097         gdb_mkostemp_cloexec.
1098         * common/filestuff.h (gdb_mkostemp_cloexec): New function.
1099
1100 2018-10-27  Tom Tromey  <tom@tromey.com>
1101
1102         * unittests/mkdir-recursive-selftests.c: New file.
1103         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
1104         unittests/mkdir-recursive-selftests.c.
1105         * dwarf-index-cache.c (mkdir_recursive): Move to
1106         common/filestuff.c.
1107         (index_cache::store): Check return value of mkdir_recursive.
1108         (create_dir_and_check, test_mkdir_recursive): Move to new file.
1109         (_initialize_index_cache): Don't register test.
1110         * common/filestuff.h (mkdir_recursive): Declare.
1111         * common/filestuff.c (mkdir_recursive): Move from
1112         dwarf-index-cache.c.  Return bool.
1113
1114 2018-10-27  Tom Tromey  <tom@tromey.com>
1115
1116         * dwarf-index-write.c (write_psymtabs_to_index): Move
1117         make_temp_filename to common/pathstuff.c.
1118         * common/pathstuff.h (make_temp_filename): Declare.
1119         * common/pathstuff.c (make_temp_filename): New function, moved
1120         from dwarf-index-write.c.
1121
1122 2018-10-27  Tom Tromey  <tom@tromey.com>
1123
1124         * procfs.c (procfs_target::create_inferior): Use get_shell.
1125         * cli/cli-cmds.c (shell_escape): Use get_shell.
1126         * windows-nat.c (windows_nat_target::create_inferior): Use
1127         get_shell.
1128         * common/pathstuff.c (get_shell): New function.
1129         * nat/fork-inferior.c (SHELL_FILE, get_startup_shell): Remove.
1130         (fork_inferior): Use get_shell.
1131         * common/pathstuff.h (get_shell): Declare.
1132
1133 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1134
1135         * NEWS: Mention changes to 'info [args|functions|locals|variables]'
1136
1137 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1138
1139         * stack.c (print_variable_and_value_data): Add preg and treg.
1140         (print_frame_local_vars): Add quiet, regexp and t_regexp arguments,
1141         and update callers.
1142         (print_frame_arg_vars): Likewise.
1143         (prepare_reg): New function.
1144         (info_locals_command): Extract info print args and use them.
1145         (info_args_command): Likewise.
1146         (_initialize_stack): Modify on-line help.
1147         * symtab.c (treg_matches_sym_type_name): New function.
1148         (search_symbols): New arg t_regexp.
1149         (symtab_symbol_info): New args quiet, regexp, t_regexp.
1150         (info_variables_command): Extract info print args and use them.
1151         (info_functions_command): Likewise.
1152         (info_types_command): Update call to symtab_symbol_info.
1153         (_initialize_symtab): Modify on-line help.
1154         * symtab.h (treg_matches_sym_type_name): New function.
1155         (search_symbols): New t_regexp arg.
1156
1157 2018-10-27  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1158
1159         * cli-utils.c (extract_arg_maybe_quoted): New function.
1160         (extract_info_print_args): New function.
1161         (info_print_args_help): New function.
1162         (report_unrecognized_option_error): New function.
1163         * cli-utils.h (extract_arg_maybe_quoted): New function.
1164         (extract_info_print_args): New function.
1165         (info_print_args_help): New function.
1166         (report_unrecognized_option_error): New function.
1167
1168 2018-10-26  Tom Tromey  <tom@tromey.com>
1169
1170         * dwarf2read.c (recursively_compute_inclusions): Use std::vector.
1171         (compute_compunit_symtab_includes): Update.
1172         * symtab.h: (symtab_ptr): Remove typedef.  Don't define a VEC.
1173         (compunit_symtab_ptr): Likewise.
1174
1175 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1176
1177         * fbsd-tdep.c (fbsd_print_auxv_entry): Only use
1178         default_print_auxv_entry for specific tag values.
1179
1180 2018-10-26  John Baldwin  <jhb@FreeBSD.org>
1181
1182         * fbsd-tdep.c (fbsd_print_auxv_entry): Handle AT_FREEBSD_HWCAP2.
1183
1184 2018-10-26  Jim Wilson  <jimw@sifive.com>
1185
1186         * riscv-linux-tdep.c: Include tramp-frame.h and trad-frame.h.
1187         (riscv_linux_sigframe_init): Declare.
1188         (RISCV_INST_LI_A7_SIGRETURN, RISCV_INT_ECALL): New.
1189         (riscv_linux_sigframe): New.
1190         (SIGFRAME_SIGINFO_SIZE, UCONTEXT_MCONTEXT_OFFSET): New.
1191         (riscv_linux_sigframe_init): Define.
1192         (riscv_linux_init_abi): Call tramp_frame_prepend_unwinder.
1193
1194         * riscv-tdep.c (riscv_isa_xlen): Refer to riscv-tdep.h comment.
1195         (riscv_isa_flen): Likewise.  Drop static.
1196         * riscv-tdep.h (riscv_isa_xlen): Move riscv-tdep.c comment to here.
1197         (riscv_isa_flen): Likewise.  Declare.
1198
1199 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1200             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1201
1202         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_htm_vsx32l)
1203         (tdesc_powerpc_isa207_htm_vsx64l): Declare.
1204         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TM_SPRREGSET)
1205         (PPC32_LINUX_SIZEOF_CGPRREGSET, PPC64_LINUX_SIZEOF_CGPRREGSET)
1206         (PPC_LINUX_SIZEOF_CFPRREGSET, PPC_LINUX_SIZEOF_CVMXREGSET)
1207         (PPC_LINUX_SIZEOF_CVSXREGSET, PPC_LINUX_SIZEOF_CPPRREGSET)
1208         (PPC_LINUX_SIZEOF_CDSCRREGSET, PPC_LINUX_SIZEOF_CTARREGSET):
1209         Define.
1210         (struct ppc_linux_features) <htm>: New field.
1211         (ppc_linux_no_features): Add initializer for htm field.
1212         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1213         new tdescs.
1214         * nat/ppc-linux.h (PPC_FEATURE2_HTM, NT_PPC_TM_CGPR)
1215         (NT_PPC_TM_CFPR, NT_PPC_TM_CVMX, NT_PPC_TM_CVSX)
1216         (NT_PPC_TM_SPR, NT_PPC_TM_CTAR, NT_PPC_TM_CPPR, NT_PPC_TM_CDSCR):
1217         Define if not already defined.
1218         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-htm-vsx32l
1219         and rs6000/powerpc-isa207-htm-vsx64l.
1220         (XMLTOC): Add rs6000/powerpc-isa207-htm-vsx32l.xml and
1221         rs6000/powerpc-isa207-htm-vsx64l.xml.
1222         * features/rs6000/power-htm-spr.xml: New file.
1223         * features/rs6000/power-htm-core.xml: New file.
1224         * features/rs6000/power64-htm-core.xml: New file.
1225         * features/rs6000/power-htm-fpu.xml: New file.
1226         * features/rs6000/power-htm-altivec.xml: New file.
1227         * features/rs6000/power-htm-vsx.xml: New file.
1228         * features/rs6000/power-htm-ppr.xml: New file.
1229         * features/rs6000/power-htm-dscr.xml: New file.
1230         * features/rs6000/power-htm-tar.xml: New file.
1231         * features/rs6000/powerpc-isa207-htm-vsx32l.xml: New file.
1232         * features/rs6000/powerpc-isa207-htm-vsx64l.xml: New file.
1233         * features/rs6000/powerpc-isa207-htm-vsx32l.c: Generate.
1234         * features/rs6000/powerpc-isa207-htm-vsx64l.c: Generate.
1235         * regformats/rs6000/powerpc-isa207-htm-vsx32l.dat: Generate.
1236         * regformats/rs6000/powerpc-isa207-htm-vsx64l.dat: Generate.
1237         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1238         fetch_regset with HTM regsets.
1239         (store_register, store_ppc_registers): Call store_regset with HTM
1240         regsets.
1241         (ppc_linux_nat_target::read_description): Set htm field in the
1242         features struct if needed.
1243         * ppc-linux-tdep.c: Include
1244         features/rs6000/powerpc-isa207-htm-vsx32l.c and
1245         features/rs6000/powerpc-isa207-htm-vsx64l.c.
1246         (ppc32_regmap_tm_spr, ppc32_regmap_cgpr, ppc64_le_regmap_cgpr)
1247         (ppc64_be_regmap_cgpr, ppc32_regmap_cfpr, ppc32_le_regmap_cvmx)
1248         (ppc32_be_regmap_cvmx, ppc32_regmap_cvsx, ppc32_regmap_cppr)
1249         (ppc32_regmap_cdscr, ppc32_regmap_ctar): New globals.
1250         (ppc32_linux_tm_sprregset, ppc32_linux_cgprregset)
1251         (ppc64_be_linux_cgprregset, ppc64_le_linux_cgprregset)
1252         (ppc32_linux_cfprregset, ppc32_le_linux_cvmxregset)
1253         (ppc32_be_linux_cvmxregset, ppc32_linux_cvsxregset)
1254         (ppc32_linux_cpprregset, ppc32_linux_cdscrregset)
1255         (ppc32_linux_ctarregset): New globals.
1256         (ppc_linux_cgprregset, ppc_linux_cvmxregset): New functions.
1257         (ppc_linux_collect_core_cpgrregset): New function.
1258         (ppc_linux_iterate_over_regset_sections): Call back with the htm
1259         regsets.
1260         (ppc_linux_core_read_description): Check if the tm spr section is
1261         present and set htm in the features struct.
1262         (_initialize_ppc_linux_tdep): Call
1263         initialize_tdesc_powerpc_isa207_htm_vsx32l and
1264         initialize_tdesc_powerpc_isa207_htm_vsx64l.
1265         * ppc-linux-tdep.h (ppc_linux_cgprregset, ppc_linux_cvmxregset):
1266         Declare.
1267         (ppc32_linux_tm_sprregset, ppc32_linux_cfprregset)
1268         (ppc32_linux_cvsxregset, ppc32_linux_cpprregset)
1269         (ppc32_linux_cdscrregset, ppc32_linux_ctarregset): Declare.
1270         * ppc-tdep.h (struct gdbarch_tdep) <have_htm_spr, have_htm_core>:
1271         New fields.
1272         <have_htm_fpu, have_htm_altivec, have_htm_vsx>:
1273         Likewise.
1274         <ppc_cppr_regnum, ppc_cdscr_regnum, ppc_ctar_regnum>: Likewise.
1275         <ppc_cdl0_regnum, ppc_cvsr0_regnum, ppc_cefpr0_regnum>: Likewise.
1276         (enum) <PPC_TFHAR_REGNUM, PPC_TEXASR_REGNUM, PPC_TFIAR_REGNUM>:
1277         New enum fields.
1278         <PPC_CR0_REGNUM, PPC_CCR_REGNUM, PPC_CXER_REGNUM>: Likewise.
1279         <PPC_CLR_REGNUM, PPC_CCTR_REGNUM, PPC_CF0_REGNUM>: Likewise.
1280         <PPC_CFPSCR_REGNUM, PPC_CVR0_REGNUM, PPC_CVSCR_REGNUM>: Likewise.
1281         <PPC_CVRSAVE_REGNUM, PPC_CVSR0_UPPER_REGNUM>: Likewise.
1282         <PPC_CPPR_REGNUM, PPC_CDSCR_REGNUM>: Likewise.
1283         <PPC_CTAR_REGNUM>: Likewise.
1284         (PPC_IS_TMSPR_REGNUM, PPC_IS_CKPTGP_REGNUM, PPC_IS_CKPTFP_REGNUM)
1285         (PPC_IS_CKPTVMX_REGNUM, PPC_IS_CKPTVSX_REGNUM): Define.
1286         * rs6000-tdep.c (IS_CDFP_PSEUDOREG, IS_CVSX_PSEUDOREG)
1287         (IS_CEFP_PSEUDOREG): Define.
1288         (rs6000_register_name): Hide the upper halves of checkpointed VSX
1289         registers.  Return names for the checkpointed DFP, VSX, and EFP
1290         pseudo registers.
1291         (rs6000_pseudo_register_type): Remove initial assert and raise an
1292         internal error in the else clause instead.  Return types for the
1293         checkpointed DFP, VSX, and EFP pseudo registers.
1294         (dfp_pseudo_register_read, dfp_pseudo_register_write): Handle
1295         checkpointed DFP pseudo registers.
1296         (vsx_pseudo_register_read, vsx_pseudo_register_write): Handle
1297         checkpointed VSX pseudo registers.
1298         (efp_pseudo_register_read, efp_pseudo_register_write): Rename
1299         from efpr_pseudo_register_read and
1300         efpr_pseudo_register_write.  Handle checkpointed EFP pseudo
1301         registers.
1302         (rs6000_pseudo_register_read, rs6000_pseudo_register_write):
1303         Handle checkpointed DFP, VSX, and EFP registers.
1304         (dfp_ax_pseudo_register_collect, vsx_ax_pseudo_register_collect)
1305         (efp_ax_pseudo_register_collect): New functions.
1306         (rs6000_ax_pseudo_register_collect): Move DFP, VSX and EFP pseudo
1307         register logic to new functions.  Handle checkpointed DFP, VSX,
1308         and EFP pseudo registers.
1309         (rs6000_gdbarch_init): Look for and validate the htm features.
1310         Include checkpointed DFP, VSX and EFP pseudo-registers.
1311         * NEWS: Mention access to PPR, DSCR, TAR, EBB/PMU registers and
1312         HTM registers.
1313
1314 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1315
1316         * rs6000-tdep.c (rs6000_gdbarch_init): Reject tdescs with vsx but
1317         without altivec or fpu.
1318
1319 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1320             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1321
1322         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_EBBREGSET)
1323         (PPC_LINUX_SIZEOF_PMUREGSET): Declare.
1324         * nat/ppc-linux.h (PPC_FEATURE2_EBB, NT_PPC_EBB, NT_PPC_PMU):
1325         Define if not already defined.
1326         * features/rs6000/power-ebb.xml: New file.
1327         * features/rs6000/power-linux-pmu.xml: New file.
1328         * features/rs6000/powerpc-isa207-vsx32l.xml: Include ebb and pmu
1329         features.
1330         * features/rs6000/powerpc-isa207-vsx64l.xml: Likewise.
1331         * features/rs6000/powerpc-isa207-vsx32l.c: Re-generate.
1332         * features/rs6000/powerpc-isa207-vsx64l.c: Re-generate.
1333         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Re-generate.
1334         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Re-generate.
1335         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1336         fetch_regset with ebb and pmu regsets.
1337         (store_register, store_ppc_registers): Call store_regset with ebb
1338         and pmu regsets.
1339         (ppc_linux_nat_target::read_description): Set isa207 field in the
1340         features struct if ebb and pmu are avaiable.
1341         * ppc-linux-tdep.c (ppc32_regmap_ebb, ppc32_regmap_pmu)
1342         (ppc32_linux_ebbregset, ppc32_linux_pmuregset): New globals.
1343         (ppc_linux_iterate_over_regset_sections): Call back with the ebb
1344         and pmu regsets.
1345         (ppc_linux_core_read_description): Check if the pmu section is
1346         present and set isa207 in the features struct.
1347         * ppc-linux-tdep.h (ppc32_linux_ebbregset)
1348         (ppc32_linux_pmuregset): Declare.
1349         * ppc-tdep.h (struct gdbarch_tdep) <ppc_mmcr0_regnum>: New field.
1350         <ppc_mmcr2_regnum, ppc_siar_regnum, ppc_sdar_regnum>: New fields.
1351         <ppc_sier_regnum>: New field.
1352         (enum): <PPC_BESCR_REGNUM, PPC_EBBHR_REGNUM, PPC_EBBRR_REGNUM>:
1353         New enum values.
1354         <PPC_MMCR0_REGNUM, PPC_MMCR2_REGNUM, PPC_SIAR_REGNUM>: New enum
1355         values.
1356         <PPC_SDAR_REGNUM, PPC_SIER_REGNUM>: New enum values.
1357         (PPC_IS_EBB_REGNUM, PPC_IS_PMU_REGNUM): Define.
1358         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate the
1359         ebb and pmu features.
1360
1361 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1362             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1363
1364         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa207_vsx32l)
1365         (tdesc_powerpc_isa207_vsx64l): Declare.
1366         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_TARREGSET): Define.
1367         (struct ppc_linux_features) <isa207>: New field.
1368         (ppc_linux_no_features): Add initializer for isa207 field.
1369         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1370         new tdescs.
1371         * nat/ppc-linux.h (PPC_FEATURE2_ARCH_2_07, PPC_FEATURE2_TAR)
1372         (NT_PPC_TAR): Define if not already defined.
1373         * features/Makefile (WHICH): Add rs6000/powerpc-isa207-vsx32l and
1374         rs6000/powerpc-isa207-vsx64l.
1375         (XMLTOC): Add rs6000/powerpc-isa207-vsx32l.xml and
1376         rs6000/powerpc-isa207-vsx64l.xml.
1377         * features/rs6000/power-tar.xml: New file.
1378         * features/rs6000/powerpc-isa207-vsx32l.xml: New file.
1379         * features/rs6000/powerpc-isa207-vsx64l.xml: New file.
1380         * features/rs6000/powerpc-isa207-vsx32l.c: Generate.
1381         * features/rs6000/powerpc-isa207-vsx64l.c: Generate.
1382         * regformats/rs6000/powerpc-isa207-vsx32l.dat: Generate.
1383         * regformats/rs6000/powerpc-isa207-vsx64l.dat: Generate.
1384         * ppc-linux-nat.c (fetch_register, fetch_ppc_registers): Call
1385         fetch_regset with the TAR regset.
1386         (store_register, store_ppc_registers): Call store_regset with the
1387         TAR regset.
1388         (ppc_linux_nat_target::read_description): Set isa207 field in the
1389         features struct if needed.
1390         * ppc-linux-tdep.c: Include
1391         features/rs6000/powerpc-isa207-vsx32l.c and
1392         features/rs6000/powerpc-isa207-vsx64l.c.
1393         (ppc32_regmap_tar, ppc32_linux_tarregset): New globals.
1394         (ppc_linux_iterate_over_regset_sections): Call back with the tar
1395         regset.
1396         (ppc_linux_core_read_description): Check if the tar section is
1397         present and set isa207 in the features struct.
1398         (_initialize_ppc_linux_tdep): Call
1399         initialize_tdesc_powerpc_isa207_vsx32l and
1400         initialize_tdesc_powerpc_isa207_vsx64l.
1401         * ppc-linux-tdep.h (ppc32_linux_tarregset): Declare.
1402         * ppc-tdep.h (gdbarch_tdep) <ppc_tar_regnum>: New field.
1403         (enum) <PPC_TAR_REGNUM>: New enum value.
1404         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate tar
1405         feature.
1406         (ppc_process_record_op31): Record changes to TAR.
1407
1408 2018-10-26  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
1409             Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1410
1411         * arch/ppc-linux-tdesc.h (tdesc_powerpc_isa205_ppr_dscr_vsx32l)
1412         (tdesc_powerpc_isa205_ppr_dscr_vsx64l): Declare.
1413         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_PPRREGSET)
1414         (PPC_LINUX_SIZEOF_DSCRREGSET): Define.
1415         (struct ppc_linux_features) <ppr_dscr>: New field.
1416         (ppc_linux_no_features): Add initializer for ppr_dscr field.
1417         * arch/ppc-linux-common.c (ppc_linux_match_description): Return
1418         new tdescs.
1419         * nat/ppc-linux.h (PPC_FEATURE2_DSCR, NT_PPC_PPR, NT_PPC_DSCR):
1420         Define if not already defined.
1421         * features/Makefile (WHICH): Add
1422         rs6000/powerpc-isa205-ppr-dscr-vsx32l and
1423         rs6000/powerpc-isa205-ppr-dscr-vsx64l.
1424         (XMLTOC): Add rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml and
1425         rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml.
1426         * features/rs6000/power-dscr.xml: New file.
1427         * features/rs6000/power-ppr.xml: New file.
1428         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.xml: New file.
1429         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.xml: New file.
1430         * features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c: Generate.
1431         * features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c: Generate.
1432         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx32l.dat: Generate.
1433         * regformats/rs6000/powerpc-isa205-ppr-dscr-vsx64l.dat: Generate.
1434         * ppc-linux-nat.c: Include <sys/uio.h>.
1435         (fetch_regset, store_regset, check_regset): New functions.
1436         (fetch_register, fetch_ppc_registers): Call fetch_regset with
1437         DSCR and PPR regsets.
1438         (store_register, store_ppc_registers): Call store_regset with
1439         DSCR and PPR regsets.
1440         (ppc_linux_get_hwcap2): New function.
1441         (ppc_linux_nat_target::read_description): Call
1442         ppc_linux_get_hwcap2 and check_regset, set ppr_dscr field in the
1443         features struct if needed.
1444         * ppc-linux-tdep.c: Include
1445         features/rs6000/powerpc-isa205-ppr-dscr-vsx32l.c and
1446         features/rs6000/powerpc-isa205-ppr-dscr-vsx64l.c.
1447         (ppc32_regmap_ppr, ppc32_regmap_dscr, ppc32_linux_pprregset)
1448         (ppc32_linux_dscrregset): New globals.
1449         (ppc_linux_iterate_over_regset_sections): Call back with the ppr
1450         and dscr regsets.
1451         (ppc_linux_core_read_description): Check if the ppr and dscr
1452         sections are present and set ppr_dscr in the features struct.
1453         (_initialize_ppc_linux_tdep): Call
1454         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx32l and
1455         initialize_tdesc_powerpc_isa205_ppr_dscr_vsx64l.
1456         * ppc-linux-tdep.h (ppc32_linux_pprregset)
1457         (ppc32_linux_dscrregset): Declare.
1458         * ppc-tdep.h (struct gdbarch_tdep) <ppc_ppr_regnum>: New field.
1459         <ppc_dscr_regnum>: New field.
1460         (enum) <PPC_PPR_REGNUM, PPC_DSCR_REGNUM>: New enum values.
1461         * rs6000-tdep.c (rs6000_gdbarch_init): Look for and validate ppr
1462         and dscr features.
1463         (ppc_process_record_op31): Record changes to PPR and DSCR.
1464
1465 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1466
1467         * rs6000-tdep.c (rs6000_gdbarch_init): Replace line wrapping by a
1468         second initializer line for the have_* variables.  Initialize
1469         have_fpu to 0 instead of 1.
1470
1471 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1472
1473         * arch/ppc-linux-common.c (ppc_linux_match_description):
1474         Parenthesize tdesc assignements and indent them properly.
1475
1476 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1477
1478         * ppc-linux-nat.c (fetch_register): Change if statement to else
1479         if.
1480         (store_register): Likewise.
1481
1482 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1483
1484         * rs6000-tdep.c: Remove reggroups.h include.
1485         (rs6000_pseudo_register_reggroup_p): Remove.
1486         (rs6000_gdbarch_init): Remove call to
1487         set_tdesc_pseudo_register_reggroup_p.
1488
1489 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1490
1491         * reggroups.c (default_register_reggroup_p): Return true for
1492         decfloat registers and float_reggroup.
1493
1494 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1495
1496         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): Remove.
1497         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): Replace
1498         ppc_linux_collect_vrregset by regcache_collect_regset.
1499
1500 2018-10-26  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
1501
1502         * linux-tdep.c (linux_collect_regset_section_cb): Use
1503         std::vector<gdb_byte> instead of char * and malloc for buf.
1504         Remove xfree.
1505
1506 2018-10-26  Sangamesh Mallayya <sangamesh.swamy@in.ibm.com>
1507
1508         * xcoffread.c (read_xcoff_symtab): Pass deduced language to
1509         symtab_start instead of always using language_unknown.
1510
1511 2018-10-26  Andrew Burgess  <andrew.burgess@embecosm.com>
1512
1513         * riscv-tdep.c (riscv_read_misa_reg): Update comment, remove
1514         READ_P parameter, catch and ignore register access errors from
1515         either the old or new MISA location.
1516         (riscv_has_feature): Update call to riscv_read_misa_reg.
1517
1518 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1519
1520         * python/py-function.c (convert_values_to_python): Return
1521         gdbpy_ref<>.  Add header comment.
1522         (fnpy_call): Adjust.
1523
1524 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1525
1526         * python/py-cmd.c (cmdpy_completer_helper): Return gdbpy_ref<>.
1527         (cmdpy_completer_handle_brkchars): Adjust.
1528         (cmdpy_completer): Adjust.
1529
1530 2018-10-25  Andrew Burgess  <andrew.burgess@embecosm.com>
1531
1532         * riscv-linux-nat.c (riscv_linux_nat_target::fetch_registers):
1533         Pass correct regnum to raw_supply_zeroed.
1534
1535 2018-10-23  Hafiz Abid Qadeer  <abidh@codesourcery.com>
1536
1537         * regcache.c (cooked_read_test): Add CSKY to the list of
1538         architectures with a save_reggroup
1539
1540 2018-10-23  Simon Marchi  <simon.marchi@polymtl.ca>
1541
1542         PR gdb/23368
1543         * infrun.c (follow_exec): In the follow_exec_mode_new case,
1544         transfer terminal state from old new new inferior.
1545         * terminal.h (swap_terminal_info): New function.
1546         * inflow.c (swap_terminal_info): New function.
1547
1548 2018-10-23  Tom Tromey  <tom@tromey.com>
1549
1550         * record-btrace.c (get_thread_current_frame_id): Rename from
1551         get_thread_current_frame.  Return a frame_id.
1552         (record_btrace_start_replaying): Update.
1553
1554 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1555
1556         * riscv-tdep.c (riscv_register_name): Use the user-friendly names
1557         for CSRs.
1558
1559 2018-10-23  Joel Brobecker  <brobecker@adacore.com>
1560
1561         * riscv-tdep.c (riscv_gdbarch_init): Set the gdbarch's
1562         have_nonsteppable_watchpoint attribute to 1.
1563
1564 2018-10-23  Andrew Burgess  <andrew.burgess@embecosm.com>
1565
1566         * riscv-tdep.c (riscv_gdb_reg_names): Update comment, and all
1567         register names.
1568         (struct register_alias): Rename to...
1569         (struct riscv_register_alias): ...this, and update comment.
1570         (riscv_register_aliases): Update type, and alias names.  Remove
1571         CSR names from this list.
1572         (riscv_register_name): Use riscv_gdb_reg_names for int and float
1573         register names.  Add an extra assertion.
1574         (riscv_is_regnum_a_named_csr): New function.
1575         (riscv_register_reggroup_p): Use riscv_is_regnum_a_named_csr.
1576
1577 2018-10-23  John Darrington  <john@darrington.wattle.id.au>
1578
1579         * configure.tgt: Add configuration for s12z.
1580         * s12z-tdep.c:  New file.
1581         * NEWS: Mention new target.
1582
1583 2018-10-22  Jim Wilson  <jimw@sifive.com>
1584
1585         * riscv-tdep.c (riscv_push_dummy_call) <in_reg>: Check for value in
1586         FP reg smaller than FP reg size, and fill with -1 instead of 0.
1587
1588         * riscv-tdep.c (riscv_fpreg_d_type, riscv_fpreg_q_type): New.
1589         (riscv_register_type): Use them.
1590         (riscv_print_one_register_info): Handle union of floats same as float.
1591         * riscv-tdep.h (struct gdbarch_tdep): Add riscv_fpreg_d_type and
1592         riscv_fpreg_q_type fields.
1593
1594 2018-10-21  Simon Marchi  <simon.marchi@ericsson.com>
1595
1596         * gdbarch.sh (gdbarch_num_cooked_regs): New.
1597         * gdbarch.h: Re-generate.
1598         * ax-gdb.c (gen_expr): Use gdbarch_num_cooked_regs.
1599         * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1600         * eval.c (evaluate_subexp_standard): Likewise.
1601         * findvar.c (value_of_register): Likewise.
1602         (value_of_register_lazy): Likewise.
1603         (address_from_register): Likewise.
1604         * frame.c (get_frame_register_bytes): Likewise.
1605         * gdbarch-selftests.c (register_to_value_test): Likewise.
1606         * h8300-tdep.c (h8300_register_type): Likewise.
1607         * i386-tdep.c (i386_dbx_reg_to_regnum): Likewise.
1608         (i386_svr4_reg_to_regnum): Likewise.
1609         * infcmd.c (default_print_registers_info): Likewise.
1610         (registers_info): Likewise.
1611         (print_vector_info): Likewise.
1612         (default_print_float_info): Likewise.
1613         * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
1614         * mdebugread.c (mdebug_reg_to_regnum): Likewise.
1615         * mi/mi-main.c (mi_cmd_data_list_register_names): Likewise.
1616         (mi_cmd_data_list_changed_registers): Likewise.
1617         (mi_cmd_data_list_register_values): Likewise.
1618         (mi_cmd_data_write_register_values): Likewise.
1619         (mi_cmd_trace_frame_collected): Likewise.
1620         * mips-tdep.c (print_gp_register_row): Likewise.
1621         (mips_print_registers_info): Likewise.
1622         * nds32-tdep.c (nds32_gdbarch_init): Likewise.
1623         * regcache.c (init_regcache_descr): Likewise.
1624         (register_size): Likewise.
1625         (register_dump::dump): Likewise.
1626         (cooked_read_test): Likewise.
1627         (cooked_write_test): Likewise.
1628         * rs6000-tdep.c (rs6000_register_sim_regno): Likewise.
1629         (rs6000_gdbarch_init): Likewise.
1630         * stabsread.c (stab_reg_to_regnum): Likewise.
1631         * stack.c (info_frame_command): Likewise.
1632         * target-descriptions.c (tdesc_register_name): Likewise.
1633         * trad-frame.c (trad_frame_alloc_saved_regs): Likewise.
1634         * tui/tui-regs.c (tui_show_register_group): Likewise.
1635         * user-regs.c (user_reg_map_name_to_regnum): Likewise.
1636         (user_reg_map_regnum_to_name): Likewise.
1637         (value_of_user_reg): Likewise.
1638         (maintenance_print_user_registers): Likewise.
1639         * xtensa-tdep.c (xtensa_find_register_by_name): Likewise.
1640         (xtensa_register_name): Likewise.
1641         (xtensa_register_type): Likewise.
1642         (xtensa_reg_to_regnum): Likewise.
1643         (xtensa_pseudo_register_read): Likewise.
1644         (xtensa_pseudo_register_write): Likewise.
1645
1646 2018-10-21  Simon Marchi  <simon.marchi@polymtl.ca>
1647
1648         * amd64-tdep.c (amd64_pseudo_register_read_value): Use
1649         correctly-sized buffer with raw_read.
1650         (amd64_pseudo_register_write): Use correctly-sized buffer for
1651         raw_read/raw_write.
1652
1653 2018-10-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
1654
1655         * typeprint.c (_initialize_typeprint): Fix wrong prefixname arg
1656         in add_prefix_cmd of set print type.
1657
1658 2018-10-19  Tom Tromey  <tom@tromey.com>
1659
1660         PR tui/18388:
1661         * NEWS: Mention tabset deprecation.
1662         * tui/tui-win.c (tui_tab_width, internal_tab_width): New globals.
1663         (update_tab_width): New function.
1664         (tui_set_tab_width, tui_show_tab_width): New functions.
1665         (tui_set_tab_width_command): Use update_tab_width.
1666         (_initialize_tui_win): Move to end of file.  Deprecate "tabset".
1667         Add new "set tui tab-width" command.
1668         * tui/tui-source.c (tui_set_source_content): Update.
1669         * tui/tui-disasm.c (tui_set_disassem_content): Update.
1670         * tui/tui-data.h (tui_default_tab_len, tui_set_default_tab_len):
1671         Don't declare.
1672         (tui_tab_width): Declare.
1673         * tui/tui-data.c (default_tab_len, tui_default_tab_len)
1674         (tui_set_default_tab_len): Remove.
1675
1676 2018-10-19  Tom Tromey  <tom@tromey.com>
1677
1678         * tui/tui-io.h (key_is_start_sequence, key_is_end_sequence)
1679         (key_is_backspace, tui_getc): Don't declare.
1680         * tui/tui-io.c (key_is_start_sequence): Now static.
1681         (key_is_end_sequence, key_is_backspace): Remove.
1682         (tui_getc): Now static.
1683
1684 2018-10-19  Tom Tromey  <tom@tromey.com>
1685
1686         * symfile.c (reread_symbols): Clear "static_links".
1687
1688 2018-10-19  Alan Hayward  <alan.hayward@arm.com>
1689
1690         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_SIZE): New
1691         define.
1692         (aarch64_linux_sigframe_init): Extra boundary checks.
1693
1694 2018-10-19  Andreas Arnez  <arnez@linux.ibm.com>
1695
1696         * s390-tdep.c (s390_pseudo_register_type): For v0-v15 don't yield
1697         the possibly non-existent tdesc type 'vec128', but the type of raw
1698         register v16 instead.
1699
1700 2018-10-19  Gary Benson <gbenson@redhat.com>
1701
1702         * cli/cli-interp.c (cli_interp::~cli_interp): New function.
1703
1704 2018-10-18  Sergio Durigan Junior  <sergiodj@redhat.com>
1705
1706         PR cli/23785
1707         * cli/cli-dump.c (restore_binary_file): Check if "file" is
1708         NULL.
1709
1710 2018-10-17  Paul Koning  <paul_koning@dell.com>
1711
1712         * charset.c (convert_between_encodings): Fix unsigned overflow.
1713
1714 2018-10-17  John Baldwin  <jhb@FreeBSD.org>
1715
1716         * fbsd-nat.c (fbsd_nat_target::info_proc) Use
1717         fbsd_info_proc_mappings_header and fbsd_info_proc_mappings_entry.
1718         * fbsd-tdep.c (fbsd_vm_map_entry_flags): Mark static.
1719         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1720         New functions.
1721         (fbsd_core_info_proc_mappings): Use fbsd_info_proc_mappings_header
1722         and fbsd_info_proc_mappings_header.
1723         * fbsd-tdep.h (fbsd_vm_map_entry_flags): Remove.
1724         (fbsd_info_proc_mappings_header, fbsd_info_proc_mappings_entry):
1725         New.
1726
1727 2018-10-17  Joel Brobecker  <brobecker@adacore.com>
1728
1729         * MAINTAINERS (Responsible Maintainers): Add Rainer Orth as
1730         Solaris Maintainer.
1731
1732 2018-10-15  Tom Tromey  <tom@tromey.com>
1733
1734         * tui/tui.c (strcat_to_buf): Remove casts.
1735         * tui/tui-winsource.c (tui_show_source_line)
1736         (tui_set_is_exec_point_at, tui_line_is_displayed): Remove casts.
1737         * tui/tui-wingeneral.c (tui_refresh_win, box_win): Remove casts.
1738         * tui/tui-windata.c (tui_first_data_item_displayed)
1739         (tui_delete_data_content_windows, tui_erase_data_content)
1740         (tui_display_all_data, tui_display_data_from)
1741         (tui_refresh_data_win, tui_vertical_data_scroll): Remove casts.
1742         * tui/tui-win.c (tui_set_win_height)
1743         (make_invisible_and_set_new_height, parse_scrolling_args): Remove
1744         casts.
1745         * tui/tui-win.c (tui_resize_all): Remove casts.
1746         (tui_scroll_backward_command, tui_set_focus)
1747         (tui_set_tab_width_command): Likewise.
1748         * tui/tui-source.c (tui_vertical_source_scroll): Remove cast.
1749         * tui/tui-regs.c (tui_show_register_group): Remove cast.
1750         * tui/tui-layout.c (tui_set_layout_by_name): Remove cast.
1751         * tui/tui-disasm.c (tui_vertical_disassem_scroll): Remove cast.
1752         * tui/tui-data.c (tui_partial_win_by_name, tui_free_win_content):
1753         Remove casts.
1754
1755 2018-10-15  Simon Marchi  <simon.marchi@ericsson.com>
1756
1757         * MAINTAINERS (Responsible Maintainers): Add Alan Hayward as
1758         AArch64/ARM maintainer.
1759
1760 2018-10-11  Gary Benson <gbenson@redhat.com>
1761
1762         * interps.h (interp::m_name): Make private and mutable.
1763         * interps.c (interp::~interp): Free m_name.
1764
1765 2018-10-10  Sergio Durigan Junior  <sergiodj@redhat.com>
1766             Simon Marchi <simark@simark.ca>
1767
1768         * README (`configure' options): Add documentation for new
1769         "--enable-unit-tests" option.
1770         * acinclude.m4: Include "selftest.m4".
1771         * configure: Regenerate.
1772         * configure.ac: Use "GDB_AC_SELFTEST".
1773         * maint.c (maintenance_selftest): Update message informing
1774         that selftests have been disabled.
1775         (maintenance_info_selftests): Likewise.
1776         * selftest.m4: New file.
1777
1778 2018-10-10  Gary Benson <gbenson@redhat.com>
1779
1780         * remote.c (remote_target::remote_send_printf): Add
1781         missing va_end found by Coverity.
1782
1783 2018-10-10  Markus Metzger  <markus.t.metzger@intel.com>
1784
1785         * btrace.c (ftrace_update_function): Add indirect jump heuristic.
1786
1787 2018-10-09  Tom Tromey  <tom@tromey.com>
1788
1789         * configure: Rebuild.
1790         * sanitize.m4 (AM_GDB_UBSAN): Default to no.
1791         * NEWS: Update --enable-ubsan documentation.
1792
1793 2018-10-09  Gary Benson <gbenson@redhat.com>
1794
1795         * dwarf2read.c (create_dwp_hash_table): Fix buffer overrun
1796         found by Coverity.
1797
1798 2018-10-08  Tom Tromey  <tom@tromey.com>
1799
1800         * riscv-fbsd-tdep.c (riscv_fbsd_sigframe_init): Remove unused
1801         variable.
1802         (riscv_fbsd_init_abi): Likewise.
1803
1804 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1805         * valops.c (value_struct_elt_for_reference): Rename local variable
1806         to work around the shadowing a previous local warning.
1807
1808 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1809
1810         * Makefile.in (ALLDEPFILES): Add riscv-fbsd-nat.c.
1811         * NEWS: Mention new FreeBSD/riscv native configuration.
1812         * configure.host: Add riscv*-*-freebsd*.
1813         * configure.nat: Likewise.
1814         * riscv-fbsd-nat.c: New file.
1815
1816 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1817
1818         * Makefile.in (ALL_TARGET_OBS): Add riscv-fbsd-tdep.o.
1819         (HFILES_NO_SRCDIR): Add riscv-fbsd-tdep.h.
1820         (ALLDEPFILES): Add riscv-fbsd-tdep.c.
1821         * NEWS: Mention new FreeBSD/riscv target.
1822         * configure.tgt: Add riscv*-*-freebsd*.
1823         * riscv-fbsd-tdep.c: New file.
1824         * riscv-fbsd-tdep.h: New file.
1825
1826 2018-10-08  John Baldwin  <jhb@FreeBSD.org>
1827
1828         * regcache.h (struct regcache_map_entry): Note that this type can
1829         be used with traditional frame caches.
1830         * trad-frame.c (trad_frame_set_reg_regmap): New.
1831         * trad-frame.h (trad_frame_set_reg_regmap): New.
1832
1833 2018-10-08  Weimin Pan  <weimin.pan@oracle.com>
1834
1835         PR c++/16841
1836         * valops.c (get_virtual_base_offset): New function.
1837         (value_struct_elt_for_reference): Use it to get virtual base offset
1838         and add it in calculating class member address.
1839
1840 2018-10-08  John Darrington  <john@darrington.wattle.id.au>
1841
1842         * dwarf2read.c (dwarf2_cu) <producer_is_codewarrior>: New field.
1843         (check_producer): Check if the producer is codewarrior.
1844         (producer_is_codewarrior): New function.
1845         (lnp_state_machine::record_line): Ignore is_stmt flag for records
1846         produced by codewarrior.
1847         (dwarf2_cu::dwarf2_cu): Initialize producer_is_codewarrior.
1848
1849 2018-10-06  Tom Tromey  <tom@tromey.com>
1850
1851         PR python/19399:
1852         * python/py-inferior.c: Add "architecture" entry.
1853         (infpy_architecture): New function.
1854
1855 2018-10-06  Tom Tromey  <tom@tromey.com>
1856
1857         PR python/21765:
1858         * python/py-symbol.c (gdbpy_initialize_symbols): Redefine
1859         SYMBOL_VARIABLES_DOMAIN, SYMBOL_FUNCTIONS_DOMAIN,
1860         SYMBOL_TYPES_DOMAIN.  Define SYMBOL_MODULE_DOMAIN,
1861         SYMBOL_COMMON_BLOCK_DOMAIN, SYMBOL_LOC_COMMON_BLOCK.
1862
1863 2018-10-06  Tom Tromey  <tom@tromey.com>
1864
1865         PR build/17077:
1866         * Makefile.in (OPCODES_CFLAGS): Remove "-I$(OPCODES_SRC)/..".
1867         * arc-tdep.c, frv-tdep.c, lm32-tdep.c, mep-tdep.c,
1868         microblaze-tdep.c, or1k-tdep.h: Use ../opcodes, not opcodes, in
1869         #include.
1870
1871 2018-10-06  Tom Tromey  <tom@tromey.com>
1872
1873         * python/py-breakpoint.c (bppy_get_location): Handle a
1874         bp_breakpoint without a location.
1875
1876 2018-10-06  Tom Tromey  <tom@tromey.com>
1877
1878         * python/lib/gdb/function/strfns.py (_MemEq, _StrLen, _StrEq)
1879         (_RegEx): Reformat help text.
1880         * python/lib/gdb/function/caller_is.py (CallerIs, CallerMatches)
1881         (AnyCallerIs, AnyCallerMatches): Reformat help text.
1882         * python/lib/gdb/function/as_string.py (_AsString): Reformat help
1883         text.
1884         * python/lib/gdb/command/xmethods.py (InfoXMethod)
1885         (EnableXMethod, DisableXMethod): Remove help indentation.
1886         Capitalize meta-syntactic variables.
1887         * python/lib/gdb/command/unwinders.py (InfoUnwinder)
1888         (EnableUnwinder, DisableUnwinder): Remove help indentation.
1889         Capitalize meta-syntactic variables.
1890         * python/lib/gdb/command/explore.py (ExploreCommand)
1891         (ExploreValueCommand, ExploreTypeCommand): Reformat help text.
1892         * python/lib/gdb/command/type_printers.py (InfoTypePrinter)
1893         (EnableTypePrinter, DisableTypePrinter): Remove help indentation.
1894         * python/lib/gdb/command/pretty_printers.py (InfoPrettyPrinter):
1895         Remove help indentation.
1896         (EnablePrettyPrinter, DisablePrettyPrinter): Likewise.
1897         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter)
1898         (DisableFrameFilter, SetFrameFilterPriority)
1899         (ShowFrameFilterPriority, InfoFrameFilter): Reword help text.
1900
1901 2018-10-06  Tom Tromey  <tom@tromey.com>
1902
1903         PR tui/28819:
1904         * tui/tui-io.c (gdb_wgetch): New function.
1905         (tui_mld_getc, tui_getc): Use it.
1906
1907 2018-10-05  Tom Tromey  <tom@tromey.com>
1908
1909         * sol-thread.c (sol_thread_target::wait): Rename inner
1910         "save_ptid".
1911
1912 2018-10-04  Tom Tromey  <tom@tromey.com>
1913
1914         * configure: Rebuild.
1915         * warning.m4 (AM_GDB_WARNINGS): Add -Wshadow=local.
1916
1917 2018-10-04  Tom Tromey  <tom@tromey.com>
1918
1919         * guile/scm-frame.c (gdbscm_frame_read_var): Remove inner
1920         declaration of "block".
1921
1922 2018-10-04  Tom Tromey  <tom@tromey.com>
1923
1924         * common/filestuff.c (fdwalk): Remove inner declaration of
1925         "result".
1926
1927 2018-10-04  Tom Tromey  <tom@tromey.com>
1928
1929         * msp430-tdep.c (msp430_push_dummy_call): Rename inner
1930         "structs_addr" and hoist declaration.
1931
1932 2018-10-04  Tom Tromey  <tom@tromey.com>
1933
1934         * linux-tdep.c (linux_make_mappings_corefile_notes): Introduce new
1935         variable "size".
1936
1937 2018-10-04  Tom Tromey  <tom@tromey.com>
1938
1939         * mdebugread.c (parse_partial_symbols): Use std::string.
1940
1941 2018-10-04  Tom Tromey  <tom@tromey.com>
1942
1943         * ctf.c (SET_ARRAY_FIELD): Rename "u32".
1944         * p-valprint.c (pascal_val_print): Split inner "i" variable.
1945         * xtensa-tdep.c (xtensa_push_dummy_call): Declare "i" in loop
1946         header.
1947         * xstormy16-tdep.c (xstormy16_push_dummy_call): Declare "val" in
1948         more inner scope.
1949         * xcoffread.c (read_xcoff_symtab): Rename inner "symbol".
1950         * varobj.c (varobj_update): Rename inner "newobj",
1951         "type_changed".
1952         * valprint.c (generic_emit_char): Rename inner "buf".
1953         * valops.c (find_overload_match): Rename inner "temp".
1954         (value_struct_elt_for_reference): Declare "v" in more inner
1955         scope.
1956         * v850-tdep.c (v850_push_dummy_call): Rename "len".
1957         * unittests/array-view-selftests.c (run_tests): Rename inner
1958         "vec".
1959         * tui/tui-stack.c (tui_show_frame_info): Declare "i" in loop
1960         header.
1961         * tracepoint.c (merge_uploaded_trace_state_variables): Declare
1962         "tsv" in more inner scope.
1963         (print_one_static_tracepoint_marker): Rename inner
1964         "tuple_emitter".
1965         * tic6x-tdep.c (tic6x_analyze_prologue): Declare "inst" lower.
1966         (tic6x_push_dummy_call): Don't redeclare "addr".
1967         * target-float.c: Declare "dto" lower.
1968         * symtab.c (lookup_local_symbol): Rename inner "sym".
1969         (find_pc_sect_line): Rename inner "pc".
1970         * stack.c (print_frame): Don't redeclare "gdbarch".
1971         (return_command): Rename inner "gdbarch".
1972         * s390-tdep.c (s390_prologue_frame_unwind_cache): Renam inner
1973         "sp".
1974         * rust-lang.c (rust_internal_print_type): Declare "i" in loop
1975         header.
1976         * rs6000-tdep.c (ppc_process_record): Rename inner "addr".
1977         * riscv-tdep.c (riscv_push_dummy_call): Declare "info" in inner
1978         scope.
1979         * remote.c (remote_target::update_thread_list): Don't redeclare
1980         "tp".
1981         (remote_target::process_initial_stop_replies): Rename inner
1982         "thread".
1983         (remote_target::remote_parse_stop_reply): Don't redeclare "p".
1984         (remote_target::wait_as): Don't redeclare "stop_reply".
1985         (remote_target::get_thread_local_address): Rename inner
1986         "result".
1987         (remote_target::get_tib_address): Likewise.
1988
1989         * regcache.c (cooked_read_test): Rename "regnum".
1990         * record-btrace.c (cmd_record_btrace_start): Rename inner
1991         "exception".
1992         * ppc-sysv-tdep.c (ppc64_sysv_abi_return_value): Declare "i" in
1993         loop header.
1994         * ppc-linux-tdep.c (ppc_linux_syscall_record): Declare "i" in loop
1995         header.
1996         (ppu2spu_sniffer): Rename inner "buf".
1997         * parse.c (operator_check_standard): Rename inner "type",
1998         "objfile".
1999         * p-valprint.c (pascal_val_print): Introduce new scope for
2000         "low_bound", "high_bound".
2001         * p-exp.y (yylex): Declare "i" in loop header.
2002         * objfiles.c (objfile_relocate1): Declare "i" in loop header.
2003         Lower declaration of "s".
2004         * nios2-tdep.c (nios2_analyze_prologue): Declare "i" in loop
2005         header.
2006         (nios2_push_dummy_call): Rename "len".
2007         * nat/linux-osdata.c (linux_xfer_osdata_cpus): Rename static
2008         "buf".
2009         (linux_xfer_osdata_fds, linux_xfer_osdata_shm)
2010         (linux_xfer_osdata_sem, linux_xfer_osdata_msg)
2011         (linux_xfer_osdata_modules): Likewise.
2012         * mips-tdep.c (mips_eabi_push_dummy_call): Rename outer "len".
2013         (mips_n32n64_push_dummy_call, mips_o32_push_dummy_call)
2014         (mips_o64_push_dummy_call): Likewise.
2015         * microblaze-tdep.c (microblaze_analyze_prologue): Rename inner
2016         "op".
2017         * mi/mi-main.c (list_available_thread_groups): Rename inner
2018         "tuple_emitter".
2019         (mi_cmd_data_read_memory): Rename inner "opts".
2020         * mi/mi-cmd-var.c (varobj_update_one): Rename inner
2021         "tuple_emitter".
2022         * mep-tdep.c (mep_analyze_prologue): Declare "rn" in loop header.
2023         * mdebugread.c (parse_symbol): Rename inner "b".  Declare "f" in
2024         more inner scope.
2025         (parse_partial_symbols): Rename inner "pst", "p", "name"
2026         * main.c (captured_main_1): Rename inner "i"s.
2027         * machoread.c (macho_symfile_read_all_oso): Don't redeclare
2028         "oso2".
2029         * linux-tdep.c (linux_info_proc): Rename inner "filename".
2030         * linespec.c (linespec_lexer_lex_string): Rename inner "p".
2031         * infrun.c (handle_no_resumed): Don't redeclare "thread".
2032         (handle_signal_stop): Rename inner "gdbarch".
2033         (handle_command): Declare "signum" in loop header.
2034         * ia64-tdep.c (ia64_pseudo_register_read): Don't redeclare
2035         "status".
2036         (examine_prologue): Rename inner "sol" and "sof".
2037         (ia64_extract_return_value): Rename inner "val".  Declare another
2038         "val" in a more inner scope.
2039         * hppa-bsd-tdep.c (hppabsd_find_global_pointer): Declare "buf" in
2040         inner scope.
2041         * guile/scm-symbol.c (gdbscm_lookup_symbol): Rename inner
2042         "except".
2043         * findvar.c (default_read_var_value): Don't redeclare "addr".
2044         * f-exp.y (yylex): Declare "i" in loop header.
2045         * eval.c (evaluate_subexp_standard): Don't redeclare "type".
2046         Rename inner "type", "expect_type".
2047         (evaluate_subexp_for_sizeof): Rename inner "pc".
2048         * elfread.c (elf_symfile_read): Rename inner "abfd".
2049         * dwarf2read.c (read_debug_names_from_section): Don't redeclare
2050         "bytes_read".
2051         (process_psymtab_comp_unit_reader): Don't redeclare "gdbarch".
2052         (add_partial_subprogram): Rename inner "lowpc" and "highpc".
2053         (dwarf_decode_line_header): Rename inner "lh".
2054         * dwarf2loc.c (dwarf2_compile_expr_to_ax): Don't redeclare
2055         "offset".  Declare "i" in loop header.
2056         (disassemble_dwarf_expression): Rename inner "addr_size".
2057         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Rename
2058         inner "result".
2059         (dwarf_expr_context::execute_stack_op): Rename inner "offset".
2060         * dwarf2-frame.c (decode_frame_entry_1): Rename inner "length"s.
2061         * disasm.c (do_mixed_source_and_assembly_deprecated): Rename inner
2062         "inner_list_emitter".
2063         (do_mixed_source_and_assembly): Rename inner "tuple_emitter".
2064         * disasm-selftests.c (print_one_insn_test): Wrap "bplen"
2065         declaration in a block.
2066         * csky-tdep.c (csky_analyze_prologue): Declare "offset" lower.
2067         * cp-valprint.c (cp_print_value_fields): Don't redeclare
2068         "obstack_final_size".
2069         * cp-support.c (inspect_type): Declare "i" in loop header.
2070         * compile/compile.c (compile_instance::insert_symbol_error):
2071         Rename inner "e".
2072         * common/agent.c (agent_run_command): Remove inner "ret"
2073         declaration.
2074         * coffread.c (coff_symfile_read): Rename inner "name".
2075         (coff_symfile_read): Rename inner "abfd".
2076         * cli/cli-utils.c (get_number_trailer): Rename inner "val".
2077         * cli/cli-cmds.c (print_disassembly): Rename inner "low" and
2078         "high".
2079         * c-exp.y (lex_one_token): Move "len" declaration lower.
2080         * breakpoint.c (create_longjmp_master_breakpoint): Don't redeclare
2081         "gdbarch".
2082         (create_exception_master_breakpoint): Likewise.  Don't redeclare
2083         "b".
2084         (watch_command_1): Declare "mark" later.
2085         (clear_command): Don't shadow "a" or "b".
2086         (delete_command): Rename inner "b".
2087         (delete_trace_command): Likewise.
2088         * arm-tdep.c (thumb_process_displaced_32bit_insn): Rename inner
2089         "op".
2090         (arm_gdbarch_init): Remove inner "e_flags".
2091         * arch/arm-get-next-pcs.c (thumb_get_next_pcs_raw): Declare
2092         "offset" in inner blocks.
2093
2094 2018-10-04  Simon Marchi  <simon.marchi@ericsson.com>
2095
2096         * dwarf-index-write.c (file_write): Don't write if the vector is
2097         empty.
2098
2099 2018-10-05  Tom de Vries  <tdevries@suse.de>
2100
2101         * python/py-progspace.c (pspy_solib_name): Fix type mismatch in
2102         PyArg_ParseTuple call.
2103
2104 2018-10-05  Tom de Vries  <tdevries@suse.de>
2105
2106         * python/py-record-btrace.c (recpy_bt_goto): Fix type mismatch in
2107         PyArg_ParseTuple call.
2108
2109 2018-10-04  Joel Brobecker  <brobecker@adacore.com>
2110
2111         * psymtab.c (recursively_search_psymtabs): Reformat parameters
2112         to avoid exceeding 80 characters per line limit.
2113
2114 2018-10-04  Tom Tromey  <tom@tromey.com>
2115
2116         * symfile.c (syms_from_objfile_1, finish_new_objfile)
2117         (reread_symbols): Update.
2118         * complaints.h (clear_complaints): Remove argument.
2119         * complaints.c (enum complaint_series): Remove.
2120         (series): Remove global.
2121         (complaint_internal): Update.
2122         (clear_complaints): Remove argument.
2123
2124 2018-10-04  Tom Tromey  <tom@tromey.com>
2125
2126         * symfile.c (symbol_file_add_with_addrs): Do not print "no
2127         debugging symbols" message if there is a separate debug objfile.
2128
2129 2018-10-04  Tom Tromey  <tom@tromey.com>
2130
2131         PR cli/19551:
2132         * symfile.c (symbol_file_add_with_addrs): Update output.
2133         * psymtab.c (require_partial_symbols): Update output.
2134
2135 2018-10-04  Tom Tromey  <tom@tromey.com>
2136
2137         PR cli/22234:
2138         * complaints.c: Emit \n.
2139
2140 2018-10-04  Tom Tromey  <tom@tromey.com>
2141
2142         * symfile.c (symbol_file_add_with_addrs, symbol_file_clear)
2143         (separate_debug_file_exists, find_separate_debug_file)
2144         (add_symbol_file_command, reread_symbols, allocate_symtab)
2145         (allocate_compunit_symtab): Use filtered printing, not
2146         unfiltered.
2147         * psymtab.c (require_partial_symbols, dump_psymtab)
2148         (allocate_psymtab): Use filtered printing, not unfiltered.
2149
2150 2018-10-04  Tom Tromey  <tom@tromey.com>
2151
2152         * complaints.c (complaint_internal): Correctly check complaint
2153         count.
2154
2155 2018-10-04  Tom Tromey  <tom@tromey.com>
2156
2157         * complaints.h (struct complaints): Remove declaration.
2158         * complaints.c (clear_complaints): Remove an unused variable.
2159
2160 2018-10-04  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2161
2162         * MAINTAINERS (Write After Approval): Add self.
2163
2164 2018-10-03  Tom Tromey  <tom@tromey.com>
2165
2166         * guile/scm-value.c (gdbscm_value_to_string): Initialize
2167         "buffer_contents".
2168         * coffread.c (coff_symtab_read): Initialize "newobj".
2169
2170 2018-10-03  Simon Marchi  <simon.marchi@polymtl.ca>
2171
2172         * dwarf2read.c (read_func_scope): Remove struct keyword in
2173         range-based for.
2174
2175 2018-10-03  Tom Tromey  <tom@tromey.com>
2176
2177         * README: Mention --enable-ubsan.
2178         * NEWS: Mention --enable-ubsan.
2179         * acinclude.m4: Include sanitize.m4.
2180         * configure: Rebuild.
2181         * configure.ac: Call AM_GDB_UBSAN.
2182         * sanitize.m4: New file.
2183
2184 2018-10-03  Tom Tromey  <tom@tromey.com>
2185
2186         * expression.h (enum exp_opcode): Use uint8_t as base type.
2187         * expprint.c (op_name): Handle invalid opcodes.
2188
2189 2018-10-03  Tom Tromey  <tom@tromey.com>
2190
2191         * parse.c (prefixify_expression): Add assert.
2192         (parse_exp_in_context_1): Throw exception if the expression is
2193         empty.
2194
2195 2018-10-03  Tom Tromey  <tom@tromey.com>
2196
2197         * dwarf2read.c (read_signed_leb128): Work in ULONGEST.
2198
2199 2018-10-03  Tom Tromey  <tom@tromey.com>
2200
2201         * c-exp.y (parse_number): Work in unsigned.  Remove casts.
2202
2203 2018-10-03  Tom Tromey  <tom@tromey.com>
2204
2205         * dwarf2read.c (read_subrange_type): Make "negative_mask"
2206         unsigned.
2207
2208 2018-10-03  Tom Tromey  <tom@tromey.com>
2209
2210         * findvar.c (extract_integer): Do work in an unsigned type.
2211
2212 2018-10-03  Tom Tromey  <tom@tromey.com>
2213
2214         * common/enum-flags.h (enum_flags::operator~): Add static assert.
2215         * symfile-add-flags.h (enum symfile_add_flag): Use unsigned as
2216         base type.
2217         * objfile-flags.h (enum objfile_flag): Use unsigned as base type.
2218         * gdbtypes.h (enum type_instance_flag_value): Use unsigned as base
2219         type.
2220         * c-lang.h (enum c_string_type_values): Use unsigned as base
2221         type.
2222         * btrace.h (enum btrace_thread_flag): Use unsigned as base type.
2223
2224 2018-10-03  Tom Tromey  <tom@tromey.com>
2225
2226         * dwarf2-frame.h (dwarf2_frame_state_reg_info)
2227         <~dwarf2_frame_state_reg_info>: Update.
2228         <dwarf2_frame_state_reg_info>: Update.
2229         <alloc_regs>: Add assertion.  Update.
2230         <reg>: Now a std::vector.
2231         <num_regs>: Remove.
2232         <swap>: Update.
2233         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
2234         (execute_cfa_program_test, dwarf2_frame_cache): Update.
2235
2236 2018-10-03  Tom Tromey  <tom@tromey.com>
2237
2238         * namespace.c (add_using_directive): Don't pass NULL to memcpy.
2239
2240 2018-10-03  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2241
2242         * tid-parse.c (tid_is_in_list): Fix wrong 'See' comment.
2243
2244 2018-10-02  Tom Tromey  <tom@tromey.com>
2245
2246         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Use pulongest.
2247
2248 2018-10-02  John Darrington  <john@darrington.wattle.id.au>
2249
2250         * NEWS: Mention changed commands.
2251         * ser-uds.c: New file.
2252         * configure.ac (SER_HARDWIRE): Add ser-uds.o.
2253         * configure: Regenerate.
2254         * Makefile.in: Add new file.
2255         * serial.c (serial_open): Check if filename is a socket
2256         and lookup the appropriate interface accordingly.
2257
2258 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2259
2260         * aarch64-linux-tdep.c (AARCH64_SIGCONTEXT_RESERVED_OFFSET): Add
2261         define.
2262         (AARCH64_EXTRA_MAGIC): Likewise.
2263         (AARCH64_FPSIMD_MAGIC): Likewise.
2264         (AARCH64_SVE_MAGIC): Likewise.
2265         (AARCH64_EXTRA_DATAP_OFFSET): Likewise.
2266         (AARCH64_FPSIMD_FPSR_OFFSET): Likewise.
2267         (AARCH64_FPSIMD_FPCR_OFFSET): Likewise.
2268         (AARCH64_FPSIMD_V0_OFFSET): Likewise.
2269         (AARCH64_FPSIMD_VREG_SIZE): Likewise.
2270         (AARCH64_SVE_CONTEXT_VL_OFFSET): Likewise.
2271         (AARCH64_SVE_CONTEXT_REGS_OFFSET): Likewise.
2272         (AARCH64_SVE_CONTEXT_P_REGS_OFFSET): Likewise.
2273         (AARCH64_SVE_CONTEXT_FFR_OFFSET): Likewise.
2274         (AARCH64_SVE_CONTEXT_SIZE): Likewise.
2275         (read_aarch64_ctx): Add function.
2276         (aarch64_linux_sigframe_init): Detect FP registers.
2277
2278 2018-10-01  Alan Hayward  <alan.hayward@arm.com>
2279
2280         * aarch64-tdep.c (AARCH64_Q0_REGNUM): Move to here.
2281         (AARCH64_D0_REGNUM): Likewise.
2282         (AARCH64_S0_REGNUM): Likewise.
2283         (AARCH64_H0_REGNUM): Likewise.
2284         (AARCH64_B0_REGNUM): Likewise.
2285         (AARCH64_SVE_V0_REGNUM): Likewise.
2286         * arch/aarch64.h (AARCH64_Q0_REGNUM): Move from here.
2287         (AARCH64_D0_REGNUM): Likewise.
2288         (AARCH64_S0_REGNUM): Likewise.
2289         (AARCH64_H0_REGNUM): Likewise.
2290         (AARCH64_B0_REGNUM): Likewise.
2291         (AARCH64_SVE_V0_REGNUM): Likewise.
2292
2293 2018-10-01  Gary Benson <gbenson@redhat.com>
2294
2295         * gdb_proc_service.h (gdb_prfpregset_t): Remove typedef.
2296         * proc-service.c (ps_lgetfpregs, ps_lsetfpregs): Use
2297         prfpregset_t instead of gdb_prfpregset_t.
2298         * configure.ac (PRFPREGSET_T_BROKEN): Remove check.
2299         * configure, config.in: Rebuild.
2300
2301 2018-10-01  Gary Benson <gbenson@redhat.com>
2302
2303         * common/gdb_proc_service.h: New file, factored out from...
2304         * gdb_proc_service.h: Moved common code to the above file.
2305         * Makefile.in (HFILES_NO_SRCDIR): Add the above new file.
2306
2307 2018-10-01  Gary Benson <gbenson@redhat.com>
2308
2309         * gdb_proc_service.h: Use elf_gregset_t if prgregset_t is
2310         undefined.  Use elf_fpregset_t if prfpregset_t is undefined.
2311
2312 2018-10-01  Gary Benson <gbenson@redhat.com>
2313
2314         * configure.ac: Check if sys/procfs.h defines elf_fpregset_t.
2315         (AC_CHECK_HEADERS): Check for linux/elf.h.
2316         * configure, config.in: Rebuild.
2317         * gdb_proc_service.h: Include linux/elf.h if sys/procfs.h
2318         doesn't define elf_fpregset_t.
2319
2320 2018-10-01  Gary Benson <gbenson@redhat.com>
2321
2322         * gdb_proc_service.h: Whitespace change.
2323
2324 2018-10-01  Tom Tromey  <tom@tromey.com>
2325
2326         * unittests/scoped_mmap-selftests.c: Don't check HAVE_UNISTD_H.
2327         * unittests/scoped_fd-selftests.c: Don't check HAVE_UNISTD_H.
2328         * common/scoped_fd.h: Don't check HAVE_UNISTD_H.
2329
2330 2018-10-01  Tom Tromey  <tom@tromey.com>
2331
2332         * README: Minor change.
2333
2334 2018-09-30  Pedro Alves  <palves@redhat.com>
2335
2336         * darwin-nat-info.c (darwin_debug_regions_recurse)
2337         (info_mach_exceptions_command): Remove unused local variables.
2338         * darwin-nat.c (darwin_decode_notify_message)
2339         (darwin_nat_target::resume, darwin_nat_target::mourn_inferior)
2340         (darwin_stop_inferior, darwin_setup_exceptions)
2341         (darwin_nat_target::kill, darwin_attach_pid, darwin_ptrace_him)
2342         (darwin_nat_target::attach, darwin_nat_target::detach)
2343         (darwin_read_write_inferior, darwin_read_dyld_info): Remove unused
2344         local variables.
2345         * i386-darwin-nat.c (i386_darwin_dr_set): Remove unused local
2346         variables.
2347
2348 2018-09-29  Tom Tromey  <tom@tromey.com>
2349
2350         * README: Remove some leftover text.
2351
2352 2018-09-29  Tom Tromey  <tom@tromey.com>
2353
2354         * PROBLEMS: Rewrite.
2355         * README: Update.
2356
2357 2018-09-28  John Baldwin  <jhb@FreeBSD.org>
2358
2359         * disasm-selftests.c (print_one_insn_test): Add bfd_arch_riscv to
2360         case with explicit breakpoint kind.
2361         * riscv-tdep.c (show_use_compressed_breakpoints): Remove
2362         'additional_info' and related logic.
2363         (riscv_debug_breakpoints): New variable.
2364         (riscv_breakpoint_kind_from_pc): Use the length of the existing
2365         instruction to determine the breakpoint kind.
2366         (_initialize_riscv_tdep): Add 'set/show debug riscv breakpoints'
2367         flag.  Update description of 'set/show riscv
2368         use-compressed-breakpoints' flag.
2369
2370 2018-09-28  Andrew Burgess  <andrew.burgess@embecosm.com>
2371
2372         (NEWS): Mention changes to frame related commands.
2373         * cli/cli-decode.c (add_cmd_suppress_notification): New function.
2374         (add_prefix_cmd_suppress_notification): New function.
2375         (add_com_suppress_notification): Call
2376         add_cmd_suppress_notification.
2377         * command.h (add_cmd_suppress_notification): Declare.
2378         (add_prefix_cmd_suppress_notification): Declare.
2379         * mi/mi-cmd-stack.c: Add 'safe-ctype.h' include.
2380         (parse_frame_specification): Moved from stack.c, with
2381         simplification to handle a single argument.
2382         (mi_cmd_stack_select_frame): Use parse_frame_specification, the
2383         switch to the selected frame.  Add a header comment.
2384         * stack.c: Remove 'safe-ctype.h' include.
2385         (find_frame_for_function): Add declaration.
2386         (find_frame_for_address): New function.
2387         (parse_frame_specification): Moved into mi/mi-cmd-stack.c.
2388         (frame_selection_by_function_completer): New function.
2389         (info_frame_command): Rename to...
2390         (info_frame_command_core): ...this, and update parameter types.
2391         (select_frame_command): Rename to...
2392         (select_frame_command_core): ...this, and update parameter types.
2393         (frame_command): Rename to...
2394         (frame_command_core): ...this, and update parameter types.
2395         (class frame_command_helper): New class to wrap implementations of
2396         frame related sub-commands.
2397         (frame_apply_cmd_list): New static global.
2398         (frame_cmd_list): Make static.
2399         (select_frame_cmd_list): New global for sub-commands.
2400         (info_frame_cmd_list): New global for sub-commands.
2401         (_initialize_stack): Register sub-commands for 'frame',
2402         'select-frame', and 'info frame'.  Update 'frame apply' commands
2403         to use frame_apply_cmd_list.  Move function local static
2404         frame_apply_list to file static frame_apply_cmd_list for
2405         consistency.
2406         * stack.h (select_frame_command): Delete declarationn.
2407         (select_frame_for_mi): Declare new function.
2408
2409 2018-09-26  Andrew Burgess  <andrew.burgess@embecosm.com>
2410
2411         * riscv-tdep.c (riscv_insn::decode): Decode c.lui.
2412         (riscv_scan_prologue): Split handling of AUIPC, LUI, ADD, ADDI,
2413         and NOP.
2414
2415 2018-09-26  Simon Marchi  <simon.marchi@ericsson.com>
2416
2417         * elf32-nds32.c (elf32_nds32_allocate_dynrelocs): Remove.
2418
2419 2018-09-26  Tom Tromey  <tom@tromey.com>
2420
2421         * valops.c (auto_abandon): Remove dead code.
2422
2423 2018-09-26  Tom Tromey  <tom@tromey.com>
2424
2425         * tui/tui-win.c (WIN_HEIGHT_USAGE): Remove extra ">"s.
2426
2427 2018-09-24  Tom Tromey  <tom@tromey.com>
2428
2429         * common/pathstuff.c (get_standard_cache_dir): Make
2430         "xdg_cache_home" and "home" const.
2431         * top.c (init_history): Make "tmpenv" const.
2432         * main.c (get_init_files): Make "homedir" const.
2433
2434 2018-09-23  Tom Tromey  <tom@tromey.com>
2435
2436         PR python/18852:
2437         * python/py-param.c (get_set_value): Use gdbpy_handle_exception.
2438
2439 2018-09-23  Tom Tromey  <tom@tromey.com>
2440
2441         * python/py-function.c (fnpy_call): Use gdbpy_handle_exception.
2442         * python/py-cmd.c (cmdpy_function): Use gdbpy_handle_exception.
2443         * python/python-internal.h (gdbpy_handle_exception): Declare.
2444         * python/py-utils.c (gdbpy_handle_exception): New function.
2445
2446 2018-09-23  Tom Tromey  <tom@tromey.com>
2447
2448         PR python/17284:
2449         * python/py-type.c (typy_template_argument): Check for negative
2450         argument number.
2451
2452 2018-09-23  Tom Tromey  <tom@tromey.com>
2453
2454         PR python/14062:
2455         * python/python.c (gdbpy_run_events): Do not ignore exceptions.
2456
2457 2018-09-23  Tom Tromey  <tom@tromey.com>
2458
2459         PR python/18170:
2460         * python/py-value.c (valpy_int): Allow conversion from pointer
2461         type.
2462
2463 2018-09-23  Tom Tromey  <tom@tromey.com>
2464
2465         PR python/20126:
2466         * python/py-value.c (valpy_int): Respect type sign.
2467
2468 2018-09-23  Tom Tromey  <tom@tromey.com>
2469
2470         PR python/18352;
2471         * python/py-value.c (valpy_float): Allow conversions from int or
2472         char.
2473         (valpy_int, valpy_long): Allow conversions from float.
2474
2475 2018-09-23  Tom Tromey  <tom@tromey.com>
2476
2477         * ctf.c (ctf_start): Use gdb_fopen_cloexec.
2478         * common/scoped_mmap.c (mmap_file): Use gdb_open_cloexec.
2479
2480 2018-09-23  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2481
2482         * amd64-sol2-tdep.c (amd64_sol2_sigtramp_p): Also recognize
2483         __sighndlr.
2484         * i386-sol2-tdep.c (i386_sol2_sigtramp_p): Likewise.
2485
2486 2018-08-02  Jon Turney  <jon.turney@dronecode.org.uk>
2487
2488         * windows-nat.c (windows_nat_target::wait): Remove a spurious
2489         target_terminal::ours().
2490
2491 2018-09-23  Simon Marchi  <simon.marchi@ericsson.com>
2492
2493         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): Change type
2494         of vl to ULONGEST.
2495
2496 2018-09-21  Yacov Simhony  <ysimhony@gmail.com>
2497
2498         * breakpoint.c (update_inserted_breakpoint_locations): Remove
2499         redundant condition.
2500
2501 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2502
2503         * proc-utils.h (PROC_CTL_WORD_TYPE): Remove.
2504
2505         * procfs.c: Don't check for PR_MODEL_NATIVE definition.
2506         * sparc-sol2-nat.c: Likewise.  Remove Linux, __arch64__ references.
2507         * sol-thread.c (ps_pdmodel): Don't guard definition.
2508
2509         * procfs.c: Fix formatting.
2510
2511         * procfs.c (sysset_t_alloc): Remove.
2512         (create_procinfo): Use XNEW instead of sysset_t_alloc.
2513         (procfs_debug_inferior): Likewise.
2514         (procfs_set_exec_trap): Likewise.
2515         (proc_set_traced_sysentry): Don't allocate argp dynamically.
2516         (proc_set_traced_sysexit): Likewise.
2517
2518         * procfs.c (create_procinfo): Use xsnprintf to fix ARI warning.
2519         (dead_procinfo): Likewise.
2520         (proc_warn): Likewise.
2521         (proc_error): Likewise.
2522         (proc_get_LDT_entry): Likewise.
2523         (do_attach): Likewise.
2524         (procfs_target::pid_to_str): Likewise.
2525         (iterate_over_mappings): Likewise.
2526
2527         * procfs.c (create_procinfo): Fix ARI warning.
2528         (proc_get_status): Likewise.
2529         (proc_stop_process): Likewise.
2530         (proc_run_process): Likewise.
2531         (proc_kill): Likewise.
2532         (proc_get_LDT_entry): Likewise.
2533         (procfs_find_LDT_entry): Likewise.
2534         (proc_update_threads): Likewise.
2535         (proc_iterate_over_threads): Likewise.
2536         (do_attach): Likewise.
2537         (procfs_xfer_memory): Likewise.
2538         (invalidate_cache): Likewise.
2539         (procfs_target::resume): Likewise.
2540         (procfs_init_inferior): Likewise.
2541         (procfs_set_exec_trap): Likewise.
2542         (procfs_target::thread_alive): Likewise.
2543         (procfs_target::pid_to_exec_file): Likewise.
2544         (iterate_over_mappings): Likewise.
2545         (procfs_target::make_corefile_notes): Likewise.
2546         * sol-thread.c (sol_thread_target::thread_alive): Likewise.
2547
2548         * procfs.c (procfs_find_LDT_entry): Silence ARI warning.
2549         (procfs_find_LDT_entry): Likewise.
2550         * sol-thread.c (ps_lgetLDT): Likewise.
2551
2552 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2553
2554         PR tdep/17903
2555         * procfs.c (procfs_target): Declare pid_to_exec_file.
2556         (procfs_target::pid_to_exec_file): New.
2557
2558 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2559
2560         * auxv.c (default_print_auxv_entry): Reflect AT_SUN_CAP_HW1
2561         renaming.
2562         Handle AT_SUN_EMULATOR, AT_SUN_BRANDNAME, AT_SUN_BRAND_AUX1,
2563         AT_SUN_BRAND_AUX2, AT_SUN_BRAND_AUX3, AT_SUN_CAP_HW2.
2564
2565 2018-09-20  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2566
2567         * i386-v4-nat.c (regmap, supply_gregset, fill_gregset)
2568         (supply_fpregset, fill_fpregset): Move ...
2569         * i386-sol2-nat.c [PR_MODEL_NATIVE != PR_MODEL_LP64]: ... here.
2570         Remove HAVE_GREGSET_T, HAVE_FPREGET_T guards.
2571         Remove references to ioctl-based procfs.
2572         Include <sys/reg.h>.
2573         Remove PR_MODEL_NATIVE guards.
2574         * configure.nat <sol2, i386> (NATDEPFILES): Remove i386-v4-nat.o.
2575         * Makefile.in (ALLDEPFILES): Remove i386-v4-nat.c.
2576
2577 2018-09-19  Xavier Roirand  <roirand@adacore.com>
2578
2579         PR gdb/20981:
2580         * solib-darwin.c (darwin_get_dyld_bfd): New function.
2581         (darwin_solib_get_all_image_info_addr_at_init): Update call.
2582         (darwin_solib_create_inferior_hook): Handle unrelocated dyld.
2583
2584 2018-09-19  John Baldwin  <jhb@FreeBSD.org>
2585
2586         * fbsd-tdep.c (fbsd_print_sockaddr_in): Style fix.
2587         (fbsd_print_sockaddr_in6): Likewise.
2588
2589 2018-09-19  Richard Bunt  <richard.bunt@arm.com>
2590             Chris January  <chris.january@arm.com>
2591
2592         * eval.c (skip_undetermined_arglist): Skip argument list helper.
2593         (evaluate_subexp_standard): Return a dummy type when
2594         honoring EVAL_SKIP in OP_VAR_VALUE and handle skipping in the
2595         OP_F77_UNDETERMINED_ARGLIST case.
2596         * expression.h (enum noside): Update comment.
2597
2598 2018-09-19  George Vasick <george.vasick@oracle.com>
2599
2600         * solib-svr4.c (svr4_same_1): Also handle amd64 ld.so.1.
2601
2602 2018-09-19  Stefan Teleman <stefan.teleman@oracle.com>
2603             April Chin <april.chin@oracle.com>
2604             Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2605
2606         * procfs.c (MAX_PROC_NAME_SIZE): Allow for 6-digit PID_MAX and
2607         uint_t lwpid_t.
2608         (create_procinfo): Print pids in /proc without leading zeros.
2609
2610 2018-09-18  Sandra Loosemore  <sandra@codesourcery.com>
2611
2612         * nios2-tdep.c (nios2_gcc_target_options): New.
2613         (nios2_gdb_arch_init): Install new hook.
2614
2615 2018-09-18  Simon Marchi  <simon.marchi@ericsson.com>
2616
2617         * patches/0001-Fix-PR-gdb-23558-Use-system-s-getcwd-when-cross-comp.patch:
2618         New file.
2619         * update-gnulib.sh: Apply patch.
2620         * configure: Re-generate.
2621
2622 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2623
2624         * infcmd.c (_initialize_infcmd): Remove "running" from "info proc"
2625         description.  Make "info proc" command descriptions more
2626         consistent.
2627
2628 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2629
2630         * NEWS: Mention 'info proc files' command.
2631
2632 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2633
2634         * fbsd-nat.c (fbsd_nat_target::info_proc): List open file
2635         descriptors for IP_FILES and IP_ALL.
2636
2637 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2638
2639         * fbsd-tdep.c (KF_FLAGS, KF_OFFSET, KF_VNODE_TYPE, KF_SOCK_DOMAIN)
2640         (KF_SOCK_TYPE, KF_SOCK_PROTOCOL, KF_SA_LOCAL, KF_SA_PEER)
2641         (KINFO_FILE_TYPE_SOCKET, KINFO_FILE_TYPE_PIPE)
2642         (KINFO_FILE_TYPE_FIFO, KINFO_FILE_TYPE_KQUEUE)
2643         (KINFO_FILE_TYPE_CRYPTO, KINFO_FILE_TYPE_MQUEUE)
2644         (KINFO_FILE_TYPE_SHM, KINFO_FILE_TYPE_SEM, KINFO_FILE_TYPE_PTS)
2645         (KINFO_FILE_TYPE_PROCDESC, KINFO_FILE_FD_TYPE_ROOT)
2646         (KINFO_FILE_FD_TYPE_JAIL, KINFO_FILE_FD_TYPE_TRACE)
2647         (KINFO_FILE_FD_TYPE_CTTY, KINFO_FILE_FLAG_READ)
2648         (KINFO_FILE_FLAG_WRITE, KINFO_FILE_FLAG_APPEND)
2649         (KINFO_FILE_FLAG_ASYNC, KINFO_FILE_FLAG_FSYNC)
2650         (KINFO_FILE_FLAG_NONBLOCK, KINFO_FILE_FLAG_DIRECT)
2651         (KINFO_FILE_FLAG_HASLOCK, KINFO_FILE_FLAG_EXEC)
2652         (KINFO_FILE_VTYPE_VREG, KINFO_FILE_VTYPE_VDIR)
2653         (KINFO_FILE_VTYPE_VCHR, KINFO_FILE_VTYPE_VLNK)
2654         (KINFO_FILE_VTYPE_VSOCK, KINFO_FILE_VTYPE_VFIFO, FBSD_AF_UNIX)
2655         (FBSD_AF_INET, FBSD_AF_INET6, FBSD_SOCK_STREAM, FBSD_SOCK_DGRAM)
2656         (FBSD_SOCK_SEQPACKET, FBSD_IPPROTO_ICMP, FBSD_IPPROTO_TCP)
2657         (FBSD_IPPROTO_UDP, FBSD_IPPROTO_SCTP): New defines.
2658         (struct fbsd_sockaddr_in, struct fbsd_sockaddr_in6)
2659         (struct fbsd_sockaddr_un): New types.
2660         (fbsd_file_fd, fbsd_file_type, fbsd_file_flags, fbsd_ipproto)
2661         (fbsd_print_sockaddr_in, fbsd_print_sockaddr_in6)
2662         (fbsd_info_proc_files_header, fbsd_info_proc_files_entry)
2663         (fbsd_core_info_proc_files): New functions.
2664         (fbsd_core_info_proc): List open file descriptors for IP_FILES and
2665         IP_ALL.
2666         * fbsd-tdep.h (fbsd_info_proc_files_header)
2667         (fbsd_info_proc_files_entry): New.
2668
2669 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2670
2671         * defs.h (enum info_proc_what) [IP_FILES]: New value.
2672         * infcmd.c (info_proc_cmd_files): New function.
2673         (_initialize_infcmd): Register 'info proc files' command.
2674
2675 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2676
2677         * gnulib/aclocal-m4-deps.mk: Re-generate.
2678         * gnulib/aclocal.m4: Re-generate.
2679         * gnulib/config.in: Re-generate.
2680         * gnulib/configure: Re-generate.
2681         * gnulib/import/Makefile.am: Re-generate.
2682         * gnulib/import/Makefile.in: Re-generate.
2683         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
2684         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
2685         * gnulib/import/arpa_inet.in.h: New file.
2686         * gnulib/import/inet_ntop.c: New file.
2687         * gnulib/import/m4/arpa_inet_h.m4: New file.
2688         * gnulib/import/m4/inet_ntop.m4: New file.
2689         * gnulib/import/m4/netinet_in_h.m4: New file.
2690         * gnulib/import/m4/socklen.m4: New file.
2691         * gnulib/import/m4/sockpfaf.m4: New file.
2692         * gnulib/import/m4/stdalign.m4: New file.
2693         * gnulib/import/m4/sys_uio_h.m4: New file.
2694         * gnulib/import/netinet_in.in.h: New file.
2695         * gnulib/import/stdalign.in.h: New file.
2696         * gnulib/import/sys_socket.c: New file.
2697         * gnulib/import/sys_socket.in.h: New file.
2698         * gnulib/import/sys_uio.in.h: New file.
2699         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add inet_ntop
2700         module.
2701
2702 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2703
2704         * gnulib/aclocal-m4-deps.mk: New file.
2705         * gnulib/update-gnulib.sh: Generate "aclocal-m4-deps.mk"
2706         deterministically.
2707
2708 2018-09-18  John Baldwin  <jhb@FreeBSD.org>
2709
2710         * fbsd-tdep.c (fbsd_core_vnode_path): Use KF_PATH instead of
2711         KVE_PATH.
2712
2713 2018-09-18  Tom Tromey  <tom@tromey.com>
2714
2715         * compile/compile-object-load.c (struct
2716         link_hash_table_cleanup_data): Add constructor and destructor.
2717         Use DISABLE_COPY_AND_ASSIGN.
2718         (~link_hash_table_cleanup_data): Rename from
2719         link_hash_table_free.  Now a destructor.
2720         (copy_sections): Use gdb::unique_xmalloc_ptr.  Remove cleanups.
2721
2722 2018-09-18  Tom Tromey  <tom@tromey.com>
2723
2724         * compile/compile-object-run.c (do_module_cleanup): Use delete.
2725         * compile/compile-object-load.c (struct munmap_list): Move to
2726         header file.
2727         (munmap_list::add): Rename from munmap_list_add; rewrite.
2728         (munmap_list::~munmap_list): Rename from munmap_list_free.
2729         (munmap_listp_free_cleanup): Remove.
2730         (compile_object_load): Update.
2731         * compile/compile-object-load.h (struct munmap_list): Move from
2732         compile-object-load.c.  Rewrite.
2733
2734 2018-09-18  Alan Hayward  <alan.hayward@arm.com>
2735
2736         * aarch64-tdep.c (pass_in_v): Use register size.
2737         (aarch64_extract_return_value): Likewise.
2738         (aarch64_store_return_value): Likewise.
2739
2740 2018-09-18  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
2741
2742         * utils.c (dump_core) [HAVE_SETRLIMIT]: Cast RLIM_INFINITY to
2743         rlim_t.
2744
2745 2018-09-17  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
2746
2747         * python/lib/gdb/command/frame_filters.py (EnableFrameFilter):
2748         Fix short help line.
2749
2750 2018-09-17  Tom Tromey  <tom@tromey.com>
2751
2752         PR python/20445:
2753         * configure: Rebuild.
2754         * configure.ac: Conditionally use -DNDEBUG for Python.
2755
2756 2018-09-17  Tom Tromey  <tom@tromey.com>
2757
2758         * configure: Rebuild.
2759         * configure.ac: Use gmp as a library dependency when checking for
2760         mpfr.
2761
2762 2018-09-17  Pedro Alves  <palves@redhat.com>
2763
2764         * python/py-inferior.c (find_inferior_object): Delete.
2765
2766 2018-09-17  Simon Marchi  <simon.marchi@ericsson.com>
2767
2768         * compile/compile-cplus-types.c
2769         (compile_cplus_instance::enter_scope): Don't use new_scope after
2770         std::move.
2771
2772 2018-09-17  Tom Tromey  <tom@tromey.com>
2773
2774         * common/pathstuff.c (get_standard_cache_dir): Use
2775         ~/Library/Caches on macOS.
2776         * common/pathstuff.h (get_standard_cache_dir): Update comment.
2777
2778 2018-09-17  Simon Marchi  <simon.marchi@polymtl.ca>
2779
2780         PR python/23669
2781         * breakpoint.c (commands_cmd_element): New.
2782         (_initialize_breakpoint): Assign commands_cmd_element.
2783         * breakpoint.h (commands_cmd_element): New.
2784         * cli/cli-script.c (while_cmd_element, if_command,
2785         define_cmd_element): New.
2786         (command_name_equals): Remove.
2787         (process_next_line): Compare commands by pointer, not by name.
2788         (_initialize_cli_script): Assign the various cmd_list_element
2789         variables.
2790         * compile/compile.c (compile_cmd_element): New.
2791         (_initialize_compile): Assign compile_cmd_element.
2792         * compile/compile.h (compile_cmd_element): New.
2793         * guile/guile.c (guile_cmd_element): New.
2794         (install_gdb_commands): Assign guile_cmd_element.
2795         * guile/guile.h (guile_cmd_element): New.
2796         * python/python.c (python_cmd_element): New.
2797         (_initialize_python): Assign python_cmd_element.
2798         * python/python.h (python_cmd_element): New.
2799         * tracepoint.c (while_stepping_cmd_element): New.
2800         (_initialize_tracepoint): Assign while_stepping_cmd_element.
2801         * tracepoint.h (while_stepping_cmd_element): New.
2802
2803 2018-09-17  Tom Tromey  <tom@tromey.com>
2804
2805         * infrun.c (save_infcall_suspend_state): Return
2806         infcall_suspend_state_up.
2807         (save_infcall_control_state): Return infcall_control_state_up.
2808         * inferior.h (save_infcall_suspend_state)
2809         (save_infcall_control_state): Declare later.  Return unique
2810         pointers.
2811
2812 2018-09-17  Tom Tromey  <tom@tromey.com>
2813
2814         * infrun.c (struct stop_context): Declare constructor,
2815         destructor, "changed" method.
2816         (stop_context::stop_context): Rename from save_stop_context.
2817         (stop_context::~stop_context): Rename from
2818         release_stop_context_cleanup.
2819         (normal_stop): Update.
2820         (stop_context::changed): Rename from stop_context_changed.  Return
2821         bool.
2822
2823 2018-09-17  Tom Tromey  <tom@tromey.com>
2824
2825         * inferior.h (struct infcall_suspend_state_deleter): New.
2826         (infcall_suspend_state_up): New typedef.
2827         (struct infcall_control_state_deleter): New.
2828         (infcall_control_state_up): New typedef.
2829         (make_cleanup_restore_infcall_suspend_state)
2830         (make_cleanup_restore_infcall_control_state): Don't declare.
2831         * infcall.c (call_function_by_hand_dummy): Update.
2832         * infrun.c (do_restore_infcall_suspend_state_cleanup)
2833         (make_cleanup_restore_infcall_suspend_state): Remove.
2834         (do_restore_infcall_control_state_cleanup)
2835         (make_cleanup_restore_infcall_control_state): Remove.
2836
2837 2018-09-17  Tom Tromey  <tom@tromey.com>
2838
2839         * gdbthread.h (struct thread_control_state): Add initializer.
2840         (class thread_info) <control>: Remove initializer.
2841         * inferior.h (struct inferior_control_state): Add initializer.
2842         (class inferior) <control>: Remove initializer.
2843         (exit_inferior_1): Update.
2844         * infrun.c (struct infcall_control_state): Add constructors.
2845         (save_infcall_control_state): Use new.
2846         (restore_infcall_control_state, discard_infcall_control_state):
2847         Use delete.
2848
2849 2018-09-17  Tom Tromey  <tom@tromey.com>
2850
2851         * infrun.c (struct infcall_suspend_state) <registers>: Now a
2852         unique_ptr.
2853         <siginfo_data>: Now a unique_xmalloc_ptr.
2854         (save_infcall_suspend_state, restore_infcall_suspend_state)
2855         (discard_infcall_suspend_state)
2856         (get_infcall_suspend_state_regcache): Update.
2857
2858 2018-09-17  Tom Tromey  <tom@tromey.com>
2859
2860         * gdbthread.h (struct thread_suspend_state): Add initializers.
2861         (class thread_info) <suspend>: Remove initializer.
2862         * infrun.c (struct infcall_suspend_state): Add initializers.
2863         (save_infcall_suspend_state): Use new.
2864         (discard_infcall_suspend_state): Use delete.
2865
2866 2018-09-16  Tom Tromey  <tom@tromey.com>
2867
2868         * python/python-internal.h (CPYCHECKER_STEALS_REFERENCE_TO_ARG):
2869         Remove.
2870         * python/py-varobj.c (py_varobj_iter_ctor): Change pyiter to
2871         rvalue reference.  Remove CPYCHECKER_STEALS_REFERENCE_TO_ARG.
2872         (py_varobj_iter_new): Likewise.
2873         (py_varobj_get_iterator): Use gdbpy_ref.
2874
2875 2018-09-16  Tom Tromey  <tom@tromey.com>
2876
2877         * python/py-threadevent.c (py_get_event_thread): Simplify.
2878         * python/py-inferior.c (infpy_thread_from_thread_handle):
2879         Return immediately after calling thread_to_thread_object.  Use
2880         Py_RETURN_NONE.
2881         (thread_to_thread_object): Set the exception on a NULL return.
2882
2883 2018-09-16  Simon Marchi  <simon.marchi@polymtl.ca>
2884
2885         * Makefile.in (LIBGDB_OBS): Sort COMMON_OBS.
2886
2887 2018-09-16  Tom Tromey  <tom@tromey.com>
2888
2889         * python/python-internal.h (CPYCHECKER_RETURNS_BORROWED_REF):
2890         Remove.
2891
2892 2018-09-16  Tom Tromey  <tom@tromey.com>
2893
2894         * python/python-internal.h (thread_to_thread_object): Change
2895         return type.
2896         * python/py-inferior.c (thread_to_thread_object): Return a new
2897         reference.
2898         (infpy_thread_from_thread_handle): Update.
2899         * python/py-infthread.c (gdbpy_selected_thread): Update.
2900         * python/py-stopevent.c (create_stop_event_object): Update.
2901         * python/py-threadevent.c (py_get_event_thread): Return a new
2902         reference.
2903         (py_get_event_thread): Update.
2904         * python/py-event.h (py_get_event_thread): Change return type.
2905         * python/py-continueevent.c (create_continue_event_object):
2906         Update.
2907
2908 2018-09-16  Tom Tromey  <tom@tromey.com>
2909
2910         * python/py-progspace.c (pspy_get_objfiles): Update.
2911         * python/python-internal.h (objfile_to_objfile_object): Change
2912         return type.
2913         * python/py-newobjfileevent.c (create_new_objfile_event_object):
2914         Update.
2915         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2916         Update.
2917         * python/python.c (gdbpy_get_current_objfile): Update.
2918         (gdbpy_objfiles): Update.
2919         * python/py-objfile.c (objfpy_get_owner, gdbpy_lookup_objfile):
2920         Update.
2921         (objfile_to_objfile_object): Return a new reference.
2922         * python/py-symtab.c (stpy_get_objfile): Update.
2923         * python/py-prettyprint.c (find_pretty_printer_from_objfiles):
2924         Update.
2925
2926 2018-09-16  Tom Tromey  <tom@tromey.com>
2927
2928         * python/py-inferior.c (infpy_get_progspace): Update.
2929         * python/python-internal.h (pspace_to_pspace_object): Change
2930         return type.
2931         * python/py-newobjfileevent.c
2932         (create_clear_objfiles_event_object): Update.
2933         * python/py-xmethods.c (gdbpy_get_matching_xmethod_workers):
2934         Update.
2935         * python/python.c (gdbpy_get_current_progspace): Update.
2936         (gdbpy_progspaces): Update.
2937         * python/py-progspace.c (pspace_to_pspace_object): Return a new
2938         reference.
2939         * python/py-objfile.c (objfpy_get_progspace): Update.
2940         * python/py-prettyprint.c (find_pretty_printer_from_progspace):
2941         Update.
2942
2943 2018-09-16  Tom Tromey  <tom@tromey.com>
2944
2945         * python/lib/gdb/__init__.py (current_progspace, objfiles)
2946         (solib_name, block_for_pc, find_pc_line): New functions.
2947         (execute_unwinders): Update.
2948         * python/py-block.c (gdbpy_block_for_pc): Remove.
2949         * python/py-inferior.c (infpy_get_progspace): New function.
2950         (inferior_object_getset) <progspace>: Add.
2951         * python/py-progspace.c (pspy_objfiles): Rewrite.
2952         (pspy_solib_name, pspy_block_for_pc)
2953         (pspy_find_pc_line, pspy_is_valid): New functions.
2954         (progspace_object_methods): Add entries for solib_name,
2955         block_for_pc, find_pc_line, is_valid.
2956         * python/python-internal.h (gdbpy_block_for_pc)
2957         (build_objfiles_list): Don't declare.
2958         * python/python.c: Don't include solib.h.
2959         (gdbpy_solib_name, gdbpy_find_pc_line)
2960         (gdbpy_get_current_progspace, build_objfiles_list)
2961         (gdbpy_objfiles): Remove.
2962         (GdbMethods) <current_progspace, objfiles, block_for_pc,
2963         solib_name, find_pc_line>: Remove entries.
2964
2965 2018-09-16  Tom Tromey  <tom@tromey.com>
2966
2967         * top.c (new_ui_command): Use GNU style for metasyntactic
2968         variables.
2969         * breakpoint.c (stopat_command): Use GNU style for metasyntactic
2970         variables.
2971         * maint.c (maintenance_translate_address): Remove "<>" around
2972         text.
2973         * interps.c (interpreter_exec_cmd): Use GNU style for
2974         metasyntactic variables.
2975         * nto-procfs.c (nto_procfs_target_info): Use GNU style for
2976         metasyntactic variables.
2977         * tracepoint.c (tfind_range_command): Use GNU style for
2978         metasyntactic variables.
2979         (tfind_outside_command): Likewise.
2980         (_initialize_tracepoint): Likewise.
2981         * remote.c (extended_remote_target::create_inferior): Use GNU
2982         style for metasyntactic variables.
2983         * sparc64-tdep.c (adi_examine_command): Use GNU style for
2984         metasyntactic variables.
2985         (adi_assign_command): Likewise.
2986
2987 2018-09-16  Tom Tromey  <tom@tromey.com>
2988
2989         * disasm.c (show_disassembler_options_sfunc): Use GNU style for
2990         metasyntactic variables.  Print message if no disassembler options
2991         are available.
2992
2993 2018-09-15  Tom Tromey  <tom@tromey.com>
2994
2995         * infcmd.c (get_inferior_args): Return const char *.
2996         * inferior.h (get_inferior_args): Return type now const.
2997         * linux-tdep.c (linux_fill_prpsinfo): Update.
2998         * procfs.c (procfs_target::make_corefile_notes): Update.
2999
3000 2018-09-07  Tom Tromey  <tom@tromey.com>
3001
3002         * python/python.c (execute_gdb_command): Call bpstat_do_actions
3003         inside the TRY.
3004
3005 2018-09-14  Sandra Loosemore  <sandra@codesourcery.com>
3006
3007         * nios2-tdep.c (nios2_type_align): New.
3008         (nios2_gdb_arch_init): Install type_align hook.
3009
3010 2018-09-10  Andrew Burgess  <andrew.burgess@embecosm.com>
3011
3012         * eval.c (fake_method::fake_method): Call xzalloc directly for a
3013         type that is neither object file owned, nor gdbarch owned.
3014         * gdbtypes.c (get_type_gdbarch): Add an assert that returned
3015         gdbarch is non-NULL.
3016         (alloc_type_instance): Allocate non-objfile owned types on the
3017         gdbarch obstack.
3018         (copy_type_recursive): Allocate TYPE_FIELDS and TYPE_RANGE_DATA
3019         using TYPE_ALLOC to ensure memory is allocated on the correct
3020         obstack.
3021         * gdbtypes.h (TYPE_ALLOC): Allocate space on either the objfile
3022         obstack, or the gdbarch obstack.
3023         (TYPE_ZALLOC): Rewrite using TYPE_ALLOC.
3024
3025 2018-09-14  Tom Tromey  <tom@tromey.com>
3026
3027         * infcall.c (call_function_by_hand_dummy): Remove unnecessary
3028         block.
3029
3030 2018-09-14  Tom Tromey  <tom@tromey.com>
3031
3032         * nat/fork-inferior.c (get_startup_shell): Remove "static".
3033
3034 2018-09-13  Tom Tromey  <tom@tromey.com>
3035
3036         * python/py-inferior.c (infpy_thread_from_thread_handle): Now
3037         static.
3038
3039 2018-09-13  Tom Tromey  <tom@tromey.com>
3040
3041         * exec.c (try_open_exec_file): Use std::string.
3042
3043 2018-09-13  Tom Tromey  <tom@tromey.com>
3044
3045         * utils.h (gdb_bfd_errmsg): Return std::string.
3046         * exec.c (exec_file_attach): Update.
3047         * compile/compile-object-load.c (compile_object_load): Update.
3048         * utils.c (gdb_bfd_errmsg): Return std::string.
3049
3050 2018-09-13  Tom Tromey  <tom@tromey.com>
3051
3052         * procfs.c (struct procinfo_deleter): New.
3053         (procinfo_up): New typedef.
3054         (do_destroy_procinfo_cleanup): Remove.
3055         (procfs_target::info_proc): Use procinfo_up.  Remove cleanups.
3056
3057 2018-09-13  Tom Tromey  <tom@tromey.com>
3058
3059         * source.c (add_path): Use gdb::unique_xmalloc_ptr.
3060
3061 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3062 2018-09-13  Tom Tromey  <tom@tromey.com>
3063
3064         * python/py-progspace.c (PSPY_REQUIRE_VALID): New macro.
3065         (pspy_get_objfiles): New function.
3066         (progspace_object_methods): New.
3067         (pspace_object_type): Add tp_methods callback.
3068         * python/python-internal.h (build_objfiles_list): New
3069         declaration.
3070         * python/python.c (build_objfiles_list): New function.
3071         (gdbpy_objfiles): Implement using build_objfiles_list.
3072         * NEWS: Mention the Progspace.objfiles method.
3073
3074 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3075
3076         * python/py-inferior.c (infpy_get_progspace): New function.
3077         (inferior_object_getset): Add progspace property.
3078         * NEWS: Mention the new property.
3079
3080 2018-09-13  Tom Tromey  <tom@tromey.com>
3081
3082         PR rust/23650:
3083         * rust-lang.c (rust_evaluate_subexp): Use field name, not "foo".
3084
3085 2018-09-13  Tom Tromey  <tom@tromey.com>
3086
3087         PR rust/23626:
3088         * rust-lang.c (rust_enum_variant): Now static.
3089         (rust_empty_enum_p): New function.
3090         (rust_print_enum, rust_evaluate_subexp, rust_print_struct_def):
3091         Handle empty enum.
3092
3093 2018-09-13  Simon Marchi  <simon.marchi@ericsson.com>
3094
3095         * python/py-inferior.c (infpy_repr): New.
3096         (inferior_object_type): Register infpy_repr.
3097         * python/py-objfile.c (objfpy_repr): New.
3098         (objfile_object_type): Register objfpy_repr.
3099
3100 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3101
3102         * fbsd-nat.c (fbsd_nat_target::info_proc): Remove unused variable.
3103
3104 2018-09-12  John Baldwin  <jhb@FreeBSD.org>
3105
3106         * aarch64-fbsd-tdep.h (AARCH64_FBSD_SIZEOF_GREGSET): Fix comment
3107         typo.
3108
3109 2018-09-12  Sergio Durigan Junior  <sergiodj@redhat.com>
3110
3111         * common/common-utils.c: Don't include '<sys/stat.h>'.
3112         (is_regular_file): Move to...
3113         * common/filestuff.c (is_regular_file): ... here.
3114         * common/common-utils.h (is_regular_file): Move to...
3115         * common/filestuff.h (is_regular_file): ... here.
3116
3117 2018-09-12  Simon Marchi  <simon.marchi@ericsson.com>
3118
3119         * skip.c (debug_skip): New variable.
3120         (skiplist_entry::do_skip_file_p): Add debug output.
3121         (skiplist_entry::do_skip_gfile_p): Likewise.
3122         (skiplist_entry::skip_function_p): Likewise.
3123         (_initialize_step_skip): Create debug command.
3124         * NEWS: Mention set/show debug skip.
3125
3126 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3127
3128         * darwin-nat.c (should_disable_startup_with_shell):
3129         New function.
3130         (darwin_nat_target::create_inferior): Add call.
3131
3132 2018-09-11  Xavier Roirand  <roirand@adacore.com>
3133
3134         * darwin-nat.h (struct darwin_thread_info) <gdb_port,
3135         inf_port, msg_state>: Initialize.
3136         (struct darwin_thread_info) <signaled, single_step>: Change
3137         type and initialize.
3138         (struct darwin_thread_info) <event>: Initialize.
3139
3140 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3141
3142         PR gdb/23555
3143         PR gdb/23558
3144         * gnulib/import/m4/getcwd-path-max.m4: Add cross-compilation
3145         guesses.
3146
3147 2018-09-10  Sergio Durigan Junior  <sergiodj@redhat.com>
3148
3149         Revert:
3150         2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3151
3152         PR gdb/23555
3153         PR gdb/23558
3154         * gnulib/aclocal.m4: Regenerate.
3155         * gnulib/config.in: Regenerate.
3156         * gnulib/configure: Regenerate.
3157         * gnulib/import/Makefile.am: Update.
3158         * gnulib/import/Makefile.in: Update.
3159         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3160         * gnulib/import/_Noreturn.h: ... this.
3161         * gnulib/import/alloca.in.h: Update.
3162         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3163         * gnulib/import/arg-nonnull.h: ... this.
3164         * gnulib/import/assure.h: Update.
3165         * gnulib/import/at-func.c: Update.
3166         * gnulib/import/basename-lgpl.c: Update.
3167         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3168         * gnulib/import/c++defs.h: ... this.
3169         * gnulib/import/canonicalize-lgpl.c: Update.
3170         * gnulib/import/cdefs.h: Update.
3171         * gnulib/import/chdir-long.c: Update.
3172         * gnulib/import/chdir-long.h: Update.
3173         * gnulib/import/cloexec.c: Update.
3174         * gnulib/import/cloexec.h: Update.
3175         * gnulib/import/close.c: Update.
3176         * gnulib/import/closedir.c: Update.
3177         * gnulib/import/config.charset: Update.
3178         * gnulib/import/dirent-private.h: Update.
3179         * gnulib/import/dirent.in.h: Update.
3180         * gnulib/import/dirfd.c: Update.
3181         * gnulib/import/dirname-lgpl.c: Update.
3182         * gnulib/import/dirname.h: Update.
3183         * gnulib/import/dosname.h: Update.
3184         * gnulib/import/dup-safer-flag.c: Update.
3185         * gnulib/import/dup-safer.c: Update.
3186         * gnulib/import/dup.c: Update.
3187         * gnulib/import/dup2.c: Update.
3188         * gnulib/import/errno.in.h: Update.
3189         * gnulib/import/error.c: Update.
3190         * gnulib/import/error.h: Update.
3191         * gnulib/import/exitfail.c: Update.
3192         * gnulib/import/exitfail.h: Update.
3193         * gnulib/import/extra/update-copyright: Update.
3194         * gnulib/import/fchdir.c: Update.
3195         * gnulib/import/fcntl.c: Update.
3196         * gnulib/import/fcntl.in.h: Update.
3197         * gnulib/import/fd-hook.c: Update.
3198         * gnulib/import/fd-hook.h: Update.
3199         * gnulib/import/fd-safer-flag.c: Update.
3200         * gnulib/import/fd-safer.c: Update.
3201         * gnulib/import/fdopendir.c: Update.
3202         * gnulib/import/filename.h: Update.
3203         * gnulib/import/filenamecat-lgpl.c: Update.
3204         * gnulib/import/filenamecat.h: Update.
3205         * gnulib/import/flexmember.h: Update.
3206         * gnulib/import/float+.h: Update.
3207         * gnulib/import/float.c: Update.
3208         * gnulib/import/float.in.h: Update.
3209         * gnulib/import/fnmatch.c: Update.
3210         * gnulib/import/fnmatch.in.h: Update.
3211         * gnulib/import/fnmatch_loop.c: Update.
3212         * gnulib/import/fpucw.h: Update.
3213         * gnulib/import/frexp.c: Update.
3214         * gnulib/import/frexpl.c: Update.
3215         * gnulib/import/fstat.c: Update.
3216         * gnulib/import/fstatat.c: Update.
3217         * gnulib/import/getcwd-lgpl.c: Update.
3218         * gnulib/import/getcwd.c: Update.
3219         * gnulib/import/getdtablesize.c: Update.
3220         * gnulib/import/getlogin_r.c: Update.
3221         * gnulib/import/getprogname.c: Update.
3222         * gnulib/import/getprogname.h: Update.
3223         * gnulib/import/gettext.h: Update.
3224         * gnulib/import/gettimeofday.c: Update.
3225         * gnulib/import/glob-libc.h: Update.
3226         * gnulib/import/glob.c: Update.
3227         * gnulib/import/glob.in.h: Update.
3228         * gnulib/import/glob_internal.h: Update.
3229         * gnulib/import/glob_pattern_p.c: Update.
3230         * gnulib/import/globfree.c: Update.
3231         * gnulib/import/hard-locale.c: Update.
3232         * gnulib/import/hard-locale.h: Update.
3233         * gnulib/import/intprops.h: Update.
3234         * gnulib/import/inttypes.in.h: Update.
3235         * gnulib/import/isnan.c: Update.
3236         * gnulib/import/isnand-nolibm.h: Update.
3237         * gnulib/import/isnand.c: Update.
3238         * gnulib/import/isnanl-nolibm.h: Update.
3239         * gnulib/import/isnanl.c: Update.
3240         * gnulib/import/itold.c: Update.
3241         * gnulib/import/libc-config.h: Update.
3242         * gnulib/import/limits.in.h: Update.
3243         * gnulib/import/localcharset.c: Update.
3244         * gnulib/import/localcharset.h: Update.
3245         * gnulib/import/localtime-buffer.c: Update.
3246         * gnulib/import/localtime-buffer.h: Update.
3247         * gnulib/import/lstat.c: Update.
3248         * gnulib/import/m4/00gnulib.m4: Update.
3249         * gnulib/import/m4/__inline.m4: Update.
3250         * gnulib/import/m4/absolute-header.m4: Update.
3251         * gnulib/import/m4/alloca.m4: Update.
3252         * gnulib/import/m4/builtin-expect.m4: Update.
3253         * gnulib/import/m4/canonicalize.m4: Update.
3254         * gnulib/import/m4/chdir-long.m4: Update.
3255         * gnulib/import/m4/close.m4: Update.
3256         * gnulib/import/m4/closedir.m4: Update.
3257         * gnulib/import/m4/configmake.m4: Update.
3258         * gnulib/import/m4/d-ino.m4: Update.
3259         * gnulib/import/m4/d-type.m4: Update.
3260         * gnulib/import/m4/dirent_h.m4: Update.
3261         * gnulib/import/m4/dirfd.m4: Update.
3262         * gnulib/import/m4/dirname.m4: Update.
3263         * gnulib/import/m4/double-slash-root.m4: Update.
3264         * gnulib/import/m4/dup.m4: Update.
3265         * gnulib/import/m4/dup2.m4: Update.
3266         * gnulib/import/m4/eealloc.m4: Update.
3267         * gnulib/import/m4/environ.m4: Update.
3268         * gnulib/import/m4/errno_h.m4: Update.
3269         * gnulib/import/m4/error.m4: Update.
3270         * gnulib/import/m4/exponentd.m4: Update.
3271         * gnulib/import/m4/exponentl.m4: Update.
3272         * gnulib/import/m4/extensions.m4: Update.
3273         * gnulib/import/m4/extern-inline.m4: Update.
3274         * gnulib/import/m4/fchdir.m4: Update.
3275         * gnulib/import/m4/fcntl-o.m4: Update.
3276         * gnulib/import/m4/fcntl.m4: Update.
3277         * gnulib/import/m4/fcntl_h.m4: Update.
3278         * gnulib/import/m4/fdopendir.m4: Update.
3279         * gnulib/import/m4/filenamecat.m4: Update.
3280         * gnulib/import/m4/flexmember.m4: Update.
3281         * gnulib/import/m4/float_h.m4: Update.
3282         * gnulib/import/m4/fnmatch.m4: Update.
3283         * gnulib/import/m4/fnmatch_h.m4: Update.
3284         * gnulib/import/m4/fpieee.m4: Update.
3285         * gnulib/import/m4/frexp.m4: Update.
3286         * gnulib/import/m4/frexpl.m4: Update.
3287         * gnulib/import/m4/fstat.m4: Update.
3288         * gnulib/import/m4/fstatat.m4: Update.
3289         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
3290         * gnulib/import/m4/getcwd-path-max.m4: Update.
3291         * gnulib/import/m4/getcwd.m4: Update.
3292         * gnulib/import/m4/getdtablesize.m4: Update.
3293         * gnulib/import/m4/getlogin.m4: Update.
3294         * gnulib/import/m4/getlogin_r.m4: Update.
3295         * gnulib/import/m4/getpagesize.m4: Update.
3296         * gnulib/import/m4/getprogname.m4: Update.
3297         * gnulib/import/m4/gettimeofday.m4: Update.
3298         * gnulib/import/m4/glibc21.m4: Update.
3299         * gnulib/import/m4/glob.m4: Update.
3300         * gnulib/import/m4/glob_h.m4: Update.
3301         * gnulib/import/m4/gnulib-cache.m4: Update.
3302         * gnulib/import/m4/gnulib-common.m4: Update.
3303         * gnulib/import/m4/gnulib-comp.m4: Update.
3304         * gnulib/import/m4/gnulib-tool.m4: Update.
3305         * gnulib/import/m4/hard-locale.m4: Update.
3306         * gnulib/import/m4/include_next.m4: Update.
3307         * gnulib/import/m4/inttypes-pri.m4: Update.
3308         * gnulib/import/m4/inttypes.m4: Update.
3309         * gnulib/import/m4/isnand.m4: Update.
3310         * gnulib/import/m4/isnanl.m4: Update.
3311         * gnulib/import/m4/largefile.m4: Update.
3312         * gnulib/import/m4/limits-h.m4: Update.
3313         * gnulib/import/m4/localcharset.m4: Update.
3314         * gnulib/import/m4/locale-fr.m4: Update.
3315         * gnulib/import/m4/locale-ja.m4: Update.
3316         * gnulib/import/m4/locale-zh.m4: Update.
3317         * gnulib/import/m4/localtime-buffer.m4: Update.
3318         * gnulib/import/m4/longlong.m4: Update.
3319         * gnulib/import/m4/lstat.m4: Update.
3320         * gnulib/import/m4/malloc.m4: Update.
3321         * gnulib/import/m4/malloca.m4: Update.
3322         * gnulib/import/m4/math_h.m4: Update.
3323         * gnulib/import/m4/mbrtowc.m4: Update.
3324         * gnulib/import/m4/mbsinit.m4: Update.
3325         * gnulib/import/m4/mbsrtowcs.m4: Update.
3326         * gnulib/import/m4/mbstate_t.m4: Update.
3327         * gnulib/import/m4/memchr.m4: Update.
3328         * gnulib/import/m4/memmem.m4: Update.
3329         * gnulib/import/m4/mempcpy.m4: Update.
3330         * gnulib/import/m4/memrchr.m4: Update.
3331         * gnulib/import/m4/mkdir.m4: Update.
3332         * gnulib/import/m4/mkstemp.m4: Update.
3333         * gnulib/import/m4/mmap-anon.m4: Update.
3334         * gnulib/import/m4/mode_t.m4: Update.
3335         * gnulib/import/m4/msvc-inval.m4: Update.
3336         * gnulib/import/m4/msvc-nothrow.m4: Update.
3337         * gnulib/import/m4/multiarch.m4: Update.
3338         * gnulib/import/m4/nocrash.m4: Update.
3339         * gnulib/import/m4/off_t.m4: Update.
3340         * gnulib/import/m4/onceonly.m4: Update.
3341         * gnulib/import/m4/open-cloexec.m4: Update.
3342         * gnulib/import/m4/open.m4: Update.
3343         * gnulib/import/m4/openat.m4: Update.
3344         * gnulib/import/m4/opendir.m4: Update.
3345         * gnulib/import/m4/pathmax.m4: Update.
3346         * gnulib/import/m4/rawmemchr.m4: Update.
3347         * gnulib/import/m4/readdir.m4: Update.
3348         * gnulib/import/m4/readlink.m4: Update.
3349         * gnulib/import/m4/realloc.m4: Update.
3350         * gnulib/import/m4/rename.m4: Update.
3351         * gnulib/import/m4/rewinddir.m4: Update.
3352         * gnulib/import/m4/rmdir.m4: Update.
3353         * gnulib/import/m4/save-cwd.m4: Update.
3354         * gnulib/import/m4/secure_getenv.m4: Update.
3355         * gnulib/import/m4/setenv.m4: Update.
3356         * gnulib/import/m4/signal_h.m4: Update.
3357         * gnulib/import/m4/ssize_t.m4: Update.
3358         * gnulib/import/m4/stat-time.m4: Update.
3359         * gnulib/import/m4/stat.m4: Update.
3360         * gnulib/import/m4/std-gnu11.m4: Update.
3361         * gnulib/import/m4/stdbool.m4: Update.
3362         * gnulib/import/m4/stddef_h.m4: Update.
3363         * gnulib/import/m4/stdint.m4: Update.
3364         * gnulib/import/m4/stdio_h.m4: Update.
3365         * gnulib/import/m4/stdlib_h.m4: Update.
3366         * gnulib/import/m4/strchrnul.m4: Update.
3367         * gnulib/import/m4/strdup.m4: Update.
3368         * gnulib/import/m4/strerror.m4: Update.
3369         * gnulib/import/m4/string_h.m4: Update.
3370         * gnulib/import/m4/strstr.m4: Update.
3371         * gnulib/import/m4/strtok_r.m4: Update.
3372         * gnulib/import/m4/sys_socket_h.m4: Update.
3373         * gnulib/import/m4/sys_stat_h.m4: Update.
3374         * gnulib/import/m4/sys_time_h.m4: Update.
3375         * gnulib/import/m4/sys_types_h.m4: Update.
3376         * gnulib/import/m4/tempname.m4: Update.
3377         * gnulib/import/m4/time_h.m4: Update.
3378         * gnulib/import/m4/unistd-safer.m4: Update.
3379         * gnulib/import/m4/unistd_h.m4: Update.
3380         * gnulib/import/m4/warn-on-use.m4: Update.
3381         * gnulib/import/m4/wchar_h.m4: Update.
3382         * gnulib/import/m4/wchar_t.m4: Update.
3383         * gnulib/import/m4/wctype_h.m4: Update.
3384         * gnulib/import/m4/wint_t.m4: Update.
3385         * gnulib/import/malloc.c: Update.
3386         * gnulib/import/malloc/scratch_buffer.h: Update.
3387         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
3388         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
3389         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
3390         * gnulib/import/malloca.c: Update.
3391         * gnulib/import/malloca.h: Update.
3392         * gnulib/import/malloca.valgrind: Update.
3393         * gnulib/import/math.in.h: Update.
3394         * gnulib/import/mbrtowc.c: Update.
3395         * gnulib/import/mbsinit.c: Update.
3396         * gnulib/import/mbsrtowcs-impl.h: Update.
3397         * gnulib/import/mbsrtowcs-state.c: Update.
3398         * gnulib/import/mbsrtowcs.c: Update.
3399         * gnulib/import/memchr.c: Update.
3400         * gnulib/import/memmem.c: Update.
3401         * gnulib/import/mempcpy.c: Update.
3402         * gnulib/import/memrchr.c: Update.
3403         * gnulib/import/mkdir.c: Update.
3404         * gnulib/import/mkstemp.c: Update.
3405         * gnulib/import/msvc-inval.c: Update.
3406         * gnulib/import/msvc-inval.h: Update.
3407         * gnulib/import/msvc-nothrow.c: Update.
3408         * gnulib/import/msvc-nothrow.h: Update.
3409         * gnulib/import/open.c: Update.
3410         * gnulib/import/openat-die.c: Update.
3411         * gnulib/import/openat-priv.h: Update.
3412         * gnulib/import/openat-proc.c: Update.
3413         * gnulib/import/openat.c: Update.
3414         * gnulib/import/openat.h: Update.
3415         * gnulib/import/opendir.c: Update.
3416         * gnulib/import/pathmax.h: Update.
3417         * gnulib/import/pipe-safer.c: Update.
3418         * gnulib/import/rawmemchr.c: Update.
3419         * gnulib/import/readdir.c: Update.
3420         * gnulib/import/readlink.c: Update.
3421         * gnulib/import/realloc.c: Update.
3422         * gnulib/import/ref-add.sin: Update.
3423         * gnulib/import/ref-del.sin: Update.
3424         * gnulib/import/rename.c: Update.
3425         * gnulib/import/rewinddir.c: Update.
3426         * gnulib/import/rmdir.c: Update.
3427         * gnulib/import/same-inode.h: Update.
3428         * gnulib/import/save-cwd.c: Update.
3429         * gnulib/import/save-cwd.h: Update.
3430         * gnulib/import/scratch_buffer.h: Update.
3431         * gnulib/import/secure_getenv.c: Update.
3432         * gnulib/import/setenv.c: Update.
3433         * gnulib/import/signal.in.h: Update.
3434         * gnulib/import/stat-time.c: Update.
3435         * gnulib/import/stat-time.h: Update.
3436         * gnulib/import/stat-w32.c: Update.
3437         * gnulib/import/stat-w32.h: Update.
3438         * gnulib/import/stat.c: Update.
3439         * gnulib/import/stdbool.in.h: Update.
3440         * gnulib/import/stddef.in.h: Update.
3441         * gnulib/import/stdint.in.h: Update.
3442         * gnulib/import/stdio.in.h: Update.
3443         * gnulib/import/stdlib.in.h: Update.
3444         * gnulib/import/str-two-way.h: Update.
3445         * gnulib/import/strchrnul.c: Update.
3446         * gnulib/import/strdup.c: Update.
3447         * gnulib/import/streq.h: Update.
3448         * gnulib/import/strerror-override.c: Update.
3449         * gnulib/import/strerror-override.h: Update.
3450         * gnulib/import/strerror.c: Update.
3451         * gnulib/import/string.in.h: Update.
3452         * gnulib/import/stripslash.c: Update.
3453         * gnulib/import/strnlen1.c: Update.
3454         * gnulib/import/strnlen1.h: Update.
3455         * gnulib/import/strstr.c: Update.
3456         * gnulib/import/strtok_r.c: Update.
3457         * gnulib/import/sys_stat.in.h: Update.
3458         * gnulib/import/sys_time.in.h: Update.
3459         * gnulib/import/sys_types.in.h: Update.
3460         * gnulib/import/tempname.c: Update.
3461         * gnulib/import/tempname.h: Update.
3462         * gnulib/import/time.in.h: Update.
3463         * gnulib/import/unistd--.h: Update.
3464         * gnulib/import/unistd-safer.h: Update.
3465         * gnulib/import/unistd.in.h: Update.
3466         * gnulib/import/unsetenv.c: Update.
3467         * gnulib/import/verify.h: Update.
3468         * gnulib/import/extra/snippet/warn-on-use.h: Update.
3469         * gnulib/import/wchar.in.h: Update.
3470         * gnulib/import/wctype.in.h: Update.
3471         * gnulib/import/xalloc-oversized.h: Update.
3472         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
3473         "53e2c179f26a890fa6685af4b6c1397ee370433b".
3474
3475 2018-09-10  Simon Marchi  <simon.marchi@ericsson.com>
3476
3477         * record-btrace.c (get_thread_current_frame): Remove
3478         old_inferior_ptid.
3479
3480 2018-09-10  Jerome Guitton  <guitton@adacore.com>
3481
3482         * ada-lang.c (ada_value_struct_elt): Call ada_to_fixed_type
3483         with check_tag to 1 if and only if the type is tagged and the
3484         component being searched cannot been found in the current
3485         view. Otherwise, always call ada_to_fixed_type with
3486         check_tag to 0.
3487
3488 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3489
3490         * ada-lang.c (ada_is_access_to_unconstrained_array): Remove static
3491         declaration.
3492         * ada-lang.h: add ada_is_access_to_unconstrained_array prototype.
3493         * ada-varobj.c (ada_varobj_get_number_of_children,
3494         ada_varobj_describe_child, ada_value_is_changeable_p): Cleanup code.
3495
3496 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3497
3498         * ada-valprint.c (ada_value_print): Use type instead of
3499         enclosing type.
3500
3501 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3502
3503         * ada-lang.c (ada_value_subscript): Handle case when parameter is
3504         an array of access to unconstrained array.
3505
3506 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3507
3508         * ada-lang.c (ada_is_access_to_unconstrained_array): New function.
3509         (ada_check_typedef): Use it.
3510
3511 2018-09-10  Xavier Roirand  <roirand@adacore.com>
3512
3513         * ada-varobj.c (ada_varobj_describe_struct_child)
3514         (ada_varobj_describe_child): Handle union case like struct one.
3515
3516 2018-09-10  Tom Tromey  <tom@tromey.com>
3517
3518         PR python/18380:
3519         * python/python.c (_initialize_python): Make example in "python"
3520         help work in Python 3.
3521
3522 2018-09-10  Eli Zaretskii  <eliz@gnu.org>
3523
3524         * Makefile.in (transformed_name): Use INSTALL_SCRIPT instead of
3525         INSTALL_PROGRAM to install gdb-add-index.sh.  Don't append
3526         $(EXEEXT) to the script, as it is not a program.
3527
3528 2018-09-09  Simon Marchi  <simon.marchi@ericsson.com>
3529
3530         * python/py-prettyprint.c (pretty_print_one_value): Return
3531         gdbpy_ref<>.
3532         (print_string_repr): Adjust.
3533         (apply_varobj_pretty_printer): Return gdbpy_ref<>.
3534         * python/python-internal.h (apply_varobj_pretty_printer): Return
3535         gdbpy_ref<>.
3536         * varobj.c (varobj_value_get_print_value): Adjust.
3537
3538 2018-09-08  Tom Tromey  <tom@tromey.com>
3539
3540         PR python/16047:
3541         * python/py-prettyprint.c (pretty_print_one_value): Check for
3542         to_string method.
3543
3544 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3545
3546         * ada-lang.c (resolve_subexp): Pass correct OPLEN in call to
3547         replace_operator_with_call.
3548
3549 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3550
3551         * ada-lang.c (ada_value_cast): Remove unnecessary parentheses.
3552
3553 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3554
3555         * ada-typeprint.c (print_range): Print the bounds using TYPE
3556         rather than its TYPE_TARGET_TYPE.
3557
3558 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3559
3560         * ada-lang.c (ada_to_fixed_value): Minor reformatting in
3561         call to ada_to_fixed_value_create.
3562
3563 2018-09-08  Jerome Guitton  <guitton@adacore.com>
3564
3565         * ada-lang.c (ada_decode): strip dot prefix in symbol name.
3566
3567 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3568
3569         * ada-lang.c (ada_exception_sal): Replace gdb_assert calls
3570         by calls to error.
3571
3572 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3573
3574         * ada-lang.c (ada_unhandled_exception_name_addr_from_raise):
3575         Move update of loop variable "fi".
3576
3577 2018-09-08  Joel Brobecker  <brobecker@adacore.com>
3578
3579         * ada-lang.c (value_assign_to_component): In the case of
3580         big-endian targets, extract the bits of the given VAL
3581         using an src_offset of zero if container is not a scalar.
3582
3583 2018-09-06  Simon Ser  <contact@emersion.fr>
3584
3585         PR gdb/23105
3586         * fbsd-nat.c (fbsd_nat_target::xfer_partial): Add support for
3587         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3588         * fbsd-tdep.c (fbsd_make_note_desc): New.
3589         (fbsd_make_corefile_notes): Write NT_PROCSTAT_AUXV,
3590         NT_PROCSTAT_VMMAP and NT_PROCSTAT_PS_STRINGS notes.
3591         * target.h (enum target_object) Add FreeBSD-specific
3592         TARGET_OBJECT_FREEBSD_VMMAP and TARGET_OBJECT_FREEBSD_PS_STRINGS.
3593
3594 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3595
3596         * compile/compile-c.h (generate_c_for_variable_locations):
3597         Change reference to pointer.
3598         * compile/compile-c-support.c (compile_program) <compute>:
3599         Likewise.
3600         * compile/compile-c-symbols.c (generate_vla_size): Likewise.
3601         (generate_c_for_for_one_variable): Likewise
3602         (generate_c_for_variable_locations): Likewise
3603         * compile/compile-c-types.c (compile_c_instance::convert_type):
3604         Likewise
3605         * compile/compile-cplus-symbols.c (convert_one_symbol):
3606         std::move the scope passed to enter_scope.
3607         * compile/compile-cplus-types.c
3608         (compile_cplus_instance::enter_scope): Make parameter
3609         rvalue-reference.
3610         (compile_cplus_instance::new_scope): Change reference to
3611         pointer.
3612         (compile_cplus_instance::convert_type): Likewise
3613         (compile_cplus_convert_typedef): std::move the scope passed to
3614         enter_scope.
3615         (compile_cplus_convert_struct_or_union): Likewise.
3616         (compile_cplus_convert_enum): Likewise.
3617         (compile_cplus_convert_namespace): Likewise.
3618         * compile/compile-cplus.h (compile_cplus_instance)
3619         <enter_scope>: Make parameter rvalue-reference.
3620         * compile/compile-internal.h (compile_instance)
3621         <get_cached_type>: Likewise
3622         * compile/compile-loc2c.c (push): Likewise
3623         (pushf): Likewise
3624         (unary): Likewise
3625         (binary): Likewise
3626         (print_label): Likewise
3627         (pushf_register_address): Likewise
3628         (pushf_register): Likewise
3629         (do_compile_dwarf_expr_to_c): Likewise
3630         (compile_dwarf_expr_to_c): Likewise
3631         (compile_dwarf_bounds_to_c): Likewise
3632         * compile/compile.c (compile_instance::get_cached_type):
3633         Likewise
3634         * compile/compile.h (compile_dwarf_expr_to_c): Likewise.
3635         (compile_dwarf_bounds_to_c): Likewise
3636         * dwarf2loc.c (locexpr_generate_c_location): Likewise.
3637         (dwarf2_compile_property_to_c): Likewise
3638         * dwarf2loc.h (dwarf2_compile_property_to_c): Likewise
3639         * symtab.h (struct symbol_computed_ops) <generate_c_location>:
3640         Likewise
3641
3642 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3643
3644         * tui/tui-data.h (struct tui_win_element) <highlight>: Remove.
3645         * tui/tui-data.c (init_content_element): Don't initialize it.
3646
3647 2018-09-06  Simon Marchi  <simon.marchi@ericsson.com>
3648
3649         * tui/tui-data.h (struct tui_win_info)
3650         <detail::opaque>: Remove.
3651         * tui/tui-data.c (init_win_info): Remove assignment.
3652
3653 2018-09-05  Tom Tromey  <tom@tromey.com>
3654
3655         * warning.m4 (AM_GDB_WARNINGS): Add -Wformat when testing
3656         -Wformat-nonliteral.
3657         * target-float.c (host_float_ops<T>::to_string)
3658         (host_float_ops<T>::from_string): Use
3659         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3660         * configure: Rebuild.
3661
3662 2018-09-05  Simon Marchi  <simon.marchi@ericsson.com>
3663
3664         * printcmd.c (printf_c_string): Use
3665         DIAGNOSTIC_IGNORE_FORMAT_NONLITERAL.
3666         (printf_wide_c_string, printf_pointer, ui_printf): Likewise.
3667
3668 2018-09-05  Tom Tromey  <tom@tromey.com>
3669
3670         * cli/cli-cmds.c (shell_escape, edit_command): Remove cast.
3671
3672 2018-09-05  Tom de Vries  <tdevries@suse.de>
3673
3674         * dwarf2loc.c (sect_variable_value): Call indirect_synthetic_pointer
3675         with resolve_abstract_p == true.
3676         (indirect_synthetic_pointer): Add resolve_abstract_p parameter,
3677         defaulting to false. Propagate resolve_abstract_p to
3678         dwarf2_fetch_die_loc_sect_off.
3679         * dwarf2loc.h (dwarf2_fetch_die_loc_sect_off): Add resolve_abstract_p
3680         parameter, defaulting to false.
3681         * dwarf2read.c (read_variable): Add variable to abstract_to_concrete.
3682         (dwarf2_fetch_die_loc_sect_off): Add and handle resolve_abstract_p
3683         parameter.
3684         * dwarf2read.h (struct die_info): Forward-declare.
3685         (die_info_ptr): New typedef.
3686         (struct dwarf2_per_objfile): Add abstract_to_concrete field.
3687
3688 2018-09-05  Joel Brobecker  <brobecker@adacore.com>
3689
3690         GDB 8.2 released.
3691
3692 2018-09-04  Sergio Durigan Junior  <sergiodj@redhat.com>
3693             Pedro Alves  <palves@redhat.com>
3694
3695         * gnulib/Makefile.in (aclocal_m4_deps): Move to
3696         "aclocal-m4-deps.mk".  Include file here.
3697         $(srcdir)/aclocal.m4: Add "configure.ac".
3698         * gnulib/aclocal-m4-deps.mk: New file.
3699         * gnulib/update-gnulib.sh: Automatically update
3700         "aclocal-m4-deps.mk".
3701
3702 2018-09-04  Tom Tromey  <tom@tromey.com>
3703
3704         * configure: Rebuild.
3705         * configure.ac: Remove multi-ice code.
3706
3707 2018-09-04  Tom Tromey  <tom@tromey.com>
3708
3709         * Makefile.in (GDB_WARN_CFLAGS_NO_DEFS): Remove.
3710         (ada-exp.o): Update.
3711
3712 2018-09-04  Tom Tromey  <tom@tromey.com>
3713
3714         * Makefile.in (printcmd.o, target-float.o): Remove.
3715         (GDB_WARN_CFLAGS_NO_FORMAT): Remove.
3716
3717 2018-09-04  Tom Tromey  <tom@tromey.com>
3718
3719         * gnulib/Makefile.in: Remove obsolete comment.
3720         * Makefile.in: Remove obsolete comment.
3721
3722 2018-09-04  Andrew Burgess  <andrew.burgess@embecosm.com>
3723
3724         * riscv-tdep.c (riscv_frame_cache): Fix ARI warning, don't end a
3725         line with '+'.
3726
3727 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3728
3729         * riscv-tdep.c: Add 'prologue-value.h' include.
3730         (struct riscv_unwind_cache): New struct.
3731         (riscv_debug_unwinder): New global.
3732         (riscv_scan_prologue): Update arguments, capture register details
3733         from prologue scan.
3734         (riscv_skip_prologue): Reformat arguments line, move end of
3735         prologue calculation into riscv_scan_prologue.
3736         (riscv_frame_cache): Update return type, create
3737         riscv_unwind_cache, scan the prologue, and fill in remaining cache
3738         details.
3739         (riscv_frame_this_id): Use frame id computed in riscv_frame_cache.
3740         (riscv_frame_prev_register): Use the trad_frame within the
3741         riscv_unwind_cache.
3742         (_initialize_riscv_tdep): Add 'set/show debug riscv unwinder'
3743         flag.
3744
3745 2018-09-03  Andrew Burgess  <andrew.burgess@embecosm.com>
3746
3747         * trad-frame.h (trad_frame_set_realreg): Declare.
3748         (trad_frame_set_addr): Declare.
3749         * trad-frame.c (trad_frame_set_realreg): Define new function.
3750         (trad_frame_set_addr): Define new function.
3751         (trad_frame_set_reg_realreg): Use new function.
3752         (trad_frame_set_reg_addr): Use new function.
3753
3754 2018-09-01  Keith Seitz  <keiths@redhat.com>
3755
3756         * compile/compile-cplus-types.c (compile_cplus_debug_output_1): Use
3757         pulongest instead of "%lld".
3758         * compile/compile-cplus-symbols.c (gcc_cplus_convert_symbol): Remove
3759         ATTRIBUTE_UNUSED.
3760
3761 2018-08-31  Tom Tromey  <tom@tromey.com>
3762
3763         * dwarf2read.c (dwarf2_add_field): Set the TYPE_LENGTH of the
3764         variant part type.
3765
3766 2018-08-31  Pedro Alves  <palves@redhat.com>
3767
3768         * gdbarch.h: Regenerate.
3769
3770 2018-08-31  Pedro Alves  <palves@redhat.com>
3771
3772         * gdbarch.sh (have_nonsteppable_watchpoint): Add comment.
3773         * target.h (Hardware watchpoint interfaces): Describe
3774         continuable/steppable/non-steppable watchpoints.
3775         * gdbarch.h, gdbarch.c: Regenerate.
3776
3777 2018-08-31  Pedro Alves  <palves@redhat.com>
3778
3779         * nto-procfs.c (nto_procfs_target::have_continuable_watchpoint):
3780         Delete.
3781         * s390-linux-nat.c
3782         (s390_linux_nat_target::have_continuable_watchpoint): Delete.
3783         * target.h (target_ops::have_continuable_watchpoint): Delete.
3784         (target_have_continuable_watchpoint): Delete.
3785         * x86-nat.h (x86_nat_target::have_continuable_watchpoint): Delete.
3786         * target-delegates.c: Regenerate.
3787
3788 2018-08-31  Sergio Durigan Junior  <sergiodj@redhat.com>
3789
3790         * gnulib/Makefile.in (aclocal_m4_deps): Update according to
3791         the files present in "gnulib/import/m4/".
3792
3793 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3794
3795         * riscv-tdep.c (riscv_insn::decode): Decode c.addi4spn, c.sd,
3796         c.sw, c.swsp, and c.sdsp.
3797
3798 2018-08-30  Andrew Burgess  <andrew.burgess@embecosm.com>
3799
3800         * riscv-tdep.c (struct riscv_inferior_data): Delete.
3801         (riscv_read_misa_reg): Don't cache value read into inferior data.
3802         (riscv_new_inferior_data): Delete.
3803         (riscv_inferior_data_cleanup): Delete.
3804         (riscv_inferior_data): Delete.
3805         (riscv_invalidate_inferior_data): Delete.
3806         (_initialize_riscv_tdep): Remove initialisation of inferior data.
3807
3808 2018-08-30  Simon Marchi  <simon.marchi@ericsson.com>
3809
3810         * compile/compile-cplus-types.c
3811         (compile_cplus_instance::leave_scope): Take the address of scope
3812         object.
3813         (compile_cplus_instance::convert_qualified_base): Compare quals
3814         to 0.
3815
3816 2018-08-30  Keith Seitz  <keiths@redhat.com>
3817
3818         * compile/compile-cplus-types.c (compile_cplus_instance::enter_scope):
3819         Use "%s" and host_address_to_string instead of "%p" in printf.
3820
3821 2018-08-29  Keith Seitz  <keiths@redhat.com>
3822
3823         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Add compile-cplus-symbols.c
3824         and compile-cplus-types.c.
3825         (HFILES_NO_SRCDIR): Add gcc-cp-plugin.h.
3826         * c-lang.c (cplus_language_defn): Set C++ compile functions.
3827         * c-lang.h (cplus_get_compile_context, cplus_compute_program):
3828         Declare.
3829         * compile/compile-c-support.c: Include compile-cplus.h.
3830         (load_libcompile): Templatize.
3831         (get_compile_context): "New" function.
3832         (c_get_compile_context): Use get_compile_context.
3833         (cplus_get_compile_context): New function.
3834         (cplus_push_user_expression, cplus_pop_user_expression)
3835         (cplus_add_code_header, cplus_add_input, cplus_compile_program)
3836         (cplus_compute_program): Define new structs/functions.
3837         * compile/compile-cplus-symmbols.c: New file.
3838         * compile/compile-cplus-types.c: New file.
3839         * compile/compile-cplus.h: New file.
3840         * compile/compile-internal.h (debug_compile_oracle, GCC_TYPE_NONE):
3841         Declare.
3842         * compile/compile-object-load.c (get_out_value_type): Use
3843         strncmp_iw when comparing symbol names.
3844         (compile_object_load): Add mst_bss and mst_data.
3845         * compile/compile.c (_initialize_compile): Remove
3846         -Wno-implicit-function-declaration from `compile_args'.
3847         * compile/gcc-cp-plugin.h: New file.
3848         * NEWS: Mention C++ compile support and new debug options.
3849
3850 2018-08-29  Keith Seitz  <keiths@redhat.com>
3851
3852         * linespec.c (collect_info::add_symbol): Make virtual.
3853         (struct symbol_searcher_collect_info): New struct.
3854         (symbol_searcher::find_all_symbols): New method.
3855         * symtab.h (class symbol_searcher): New class.
3856
3857 2018-08-29  Keith Seitz  <keiths@redhat.com>
3858
3859         * linespec.c (struct linespec) <function_symbols, label_symbols>:
3860         Change to vector of block_symbol.  Update all users.
3861         (struct collect_info) <symbols>: Likewise.
3862         (collect_info::add_symbol): Take block_symbol as argument.
3863         Update all callers.
3864         (decode_compound_collector) <m_symbols>: Change type to vector
3865         of block_symbol.  Update all users.
3866         (decode_compound_collector::operator ()): Change parameter type
3867         to block_symbol.
3868         (find_method, find_function_symbols, find_linespec_symbols)
3869         (find_label_symbols_in_block, find_label_symbols): Change symbol
3870         vectors to block_symbol vectors.
3871         * symtab.h (symbol_found_callback_ftype): Change parameter type to
3872         block_symbol.
3873
3874 2018-08-29  Keith Seitz  <keiths@redhat.com>
3875
3876         * linespec.c (symbolp): Remove typedef and VEC definitions.
3877         (bound_minimal_symbol_d): Likewise.
3878
3879 2018-08-29  Keith Seitz  <keiths@redhat.com>
3880
3881         * linespec.c (decode_compound_collector::decode_compound_collector):
3882         Remove initialization for `m_symtabs'.
3883         (decode_compound_collector::release_symbols): Change return type
3884         to std::vector.  Update all callers.
3885         (class decode_compound_collector) <m_symbols>: Change type to
3886         std::vector.
3887         (lookup_prefix_sym): Change return type to std::vector.  Update all
3888         callers.
3889         (compare_symbols): Remove.
3890         (std_compare_symbols): Rename to `compare_symbols'.
3891         (find_method): Change `sym_classes' parameter to std::vector.
3892         Update all callers.  Use std::sort to sort sym_classes.
3893         (find_linespec_symbols): Remove cleanup.
3894
3895 2018-08-29  Keith Seitz  <keiths@redhat.com>
3896
3897         * linespec.c (struct linespec) <minimal_symbols>: Change type to
3898         std::vector.  Update all users.
3899         (convert_linespec_to_sals): Use std::sort to sort minimal symbols.
3900         (struct collect_info) <minimal_symbols>: Likewise.
3901         (compare_msymbols): Return bool.  Change parameters to const
3902         bound_minimal_symbol references.
3903         (find_method, find_function_symbols, find_linespec_symbols): Change
3904         `minsyms' parameter to std::vector.  Update all callers.
3905
3906 2018-08-29  Keith Seitz  <keiths@redhat.com>
3907
3908         * linespec.c (struct linespec) <label_symbols>: Change type to
3909         std::vector.  Update all users.
3910         (find_label_symbols_in_block): Change `result' parameter to
3911         std::vector.  Update all callers.
3912         (find_label_symbols): Return std::vector.  Update all callers.
3913
3914 2018-08-29  Keith Seitz  <keiths@redhat.com>
3915
3916         * linespec.c (struct linespec) <function_symbols>: Change type to
3917         std::vector.  Update all users.
3918         (struct collect_info) <function_symbols>: Likewise.
3919         (convert_linespec_to_sals): Use std::sort to sort function_symbols.
3920         (std_compare_symbols): New function.
3921         (find_method, find_function_symbols, find_linespec_symbols)
3922         (find_label_symbols_in_block): Change `symbols' parameter to
3923         std::vector.  Update all callers.
3924         (find_label_symbols): Likewise for `function_symbols' and
3925         `label_funcs_ret'.
3926
3927 2018-08-29  Keith Seitz  <keiths@redhat.com>
3928
3929         * linespec.c (symtab_vector_up): Define.
3930         (struct linespec) <file_symtabs>: Change type to std::vector *.
3931         Update all uses.
3932         (struct collect_info) <file_symtabs>: Likewise.
3933         (collect_symtabs_from_filename): Return symtab_vector_up.
3934         Update all callers.
3935         (decode_objc): Remove cleanup.
3936         (symtab_collector::symtab_collector): Initialize `m_symtabs'.
3937         (symtab_collector::release_symtabs): Return symtab_vector_up.
3938         Update all callers.
3939         (class symtab_collector) <m_symtabs>: Change type to symtab_vector_up.
3940         Update all users.
3941         (collect_symtabs_from_filename, symtabs_from_filename): Return
3942         symtab_vector_up.  Update all callers.
3943
3944 2018-08-29  Tom Tromey  <tom@tromey.com>
3945
3946         * csky-tdep.c (csky_analyze_prologue): Use
3947         core_addr_to_string_nz.
3948
3949 2018-08-29  Tom Tromey  <tom@tromey.com>
3950
3951         * windows-nat.c (struct xlate_exception) <them>: Change type to
3952         DWORD.
3953         (xlate): Fix formatting.  Remove last entry.
3954         (struct xlate_exception, xlate): Comment out.
3955         (windows_nat_target::resume): Use ranged for.
3956
3957 2018-08-29  Jim Wilson  <jimw@sifive.com>
3958
3959         * riscv-linux-nat.c: Include elf/common.h instead of elf.h.
3960         (riscv_linux_nat_target::fetch_registers): Use NT_FPREGSET instead
3961         of NT_PRFPREG.
3962         (riscv_linux_nat_target::store_registers): Likewise.
3963
3964 2018-08-29  Sergio Durigan Junior  <sergiodj@redhat.com>
3965
3966         PR gdb/23555
3967         PR gdb/23558
3968         * gnulib/aclocal.m4: Regenerate.
3969         * gnulib/config.in: Regenerate.
3970         * gnulib/configure: Regenerate.
3971         * gnulib/import/Makefile.am: Update.
3972         * gnulib/import/Makefile.in: Update.
3973         * gnulib/import/extra/snippet/_Noreturn.h: Rename to...
3974         * gnulib/import/_Noreturn.h: ... this.
3975         * gnulib/import/alloca.in.h: Update.
3976         * gnulib/import/extra/snippet/arg-nonnull.h: Rename to...
3977         * gnulib/import/arg-nonnull.h: ... this.
3978         * gnulib/import/assure.h: Update.
3979         * gnulib/import/at-func.c: Update.
3980         * gnulib/import/basename-lgpl.c: Update.
3981         * gnulib/import/extra/snippet/c++defs.h: Rename to...
3982         * gnulib/import/c++defs.h: ... this.
3983         * gnulib/import/canonicalize-lgpl.c: Update.
3984         * gnulib/import/cdefs.h: Update.
3985         * gnulib/import/chdir-long.c: Update.
3986         * gnulib/import/chdir-long.h: Update.
3987         * gnulib/import/cloexec.c: Update.
3988         * gnulib/import/cloexec.h: Update.
3989         * gnulib/import/close.c: Update.
3990         * gnulib/import/closedir.c: Update.
3991         * gnulib/import/config.charset: Update.
3992         * gnulib/import/dirent-private.h: Update.
3993         * gnulib/import/dirent.in.h: Update.
3994         * gnulib/import/dirfd.c: Update.
3995         * gnulib/import/dirname-lgpl.c: Update.
3996         * gnulib/import/dirname.h: Update.
3997         * gnulib/import/dosname.h: Update.
3998         * gnulib/import/dup-safer-flag.c: Update.
3999         * gnulib/import/dup-safer.c: Update.
4000         * gnulib/import/dup.c: Update.
4001         * gnulib/import/dup2.c: Update.
4002         * gnulib/import/errno.in.h: Update.
4003         * gnulib/import/error.c: Update.
4004         * gnulib/import/error.h: Update.
4005         * gnulib/import/exitfail.c: Update.
4006         * gnulib/import/exitfail.h: Update.
4007         * gnulib/import/extra/update-copyright: Update.
4008         * gnulib/import/fchdir.c: Update.
4009         * gnulib/import/fcntl.c: Update.
4010         * gnulib/import/fcntl.in.h: Update.
4011         * gnulib/import/fd-hook.c: Update.
4012         * gnulib/import/fd-hook.h: Update.
4013         * gnulib/import/fd-safer-flag.c: Update.
4014         * gnulib/import/fd-safer.c: Update.
4015         * gnulib/import/fdopendir.c: Update.
4016         * gnulib/import/filename.h: Update.
4017         * gnulib/import/filenamecat-lgpl.c: Update.
4018         * gnulib/import/filenamecat.h: Update.
4019         * gnulib/import/flexmember.h: Update.
4020         * gnulib/import/float+.h: Update.
4021         * gnulib/import/float.c: Update.
4022         * gnulib/import/float.in.h: Update.
4023         * gnulib/import/fnmatch.c: Update.
4024         * gnulib/import/fnmatch.in.h: Update.
4025         * gnulib/import/fnmatch_loop.c: Update.
4026         * gnulib/import/fpucw.h: Update.
4027         * gnulib/import/frexp.c: Update.
4028         * gnulib/import/frexpl.c: Update.
4029         * gnulib/import/fstat.c: Update.
4030         * gnulib/import/fstatat.c: Update.
4031         * gnulib/import/getcwd-lgpl.c: Update.
4032         * gnulib/import/getcwd.c: Update.
4033         * gnulib/import/getdtablesize.c: Update.
4034         * gnulib/import/getlogin_r.c: Update.
4035         * gnulib/import/getprogname.c: Update.
4036         * gnulib/import/getprogname.h: Update.
4037         * gnulib/import/gettext.h: Update.
4038         * gnulib/import/gettimeofday.c: Update.
4039         * gnulib/import/glob-libc.h: Update.
4040         * gnulib/import/glob.c: Update.
4041         * gnulib/import/glob.in.h: Update.
4042         * gnulib/import/glob_internal.h: Update.
4043         * gnulib/import/glob_pattern_p.c: Update.
4044         * gnulib/import/globfree.c: Update.
4045         * gnulib/import/hard-locale.c: Update.
4046         * gnulib/import/hard-locale.h: Update.
4047         * gnulib/import/intprops.h: Update.
4048         * gnulib/import/inttypes.in.h: Update.
4049         * gnulib/import/isnan.c: Update.
4050         * gnulib/import/isnand-nolibm.h: Update.
4051         * gnulib/import/isnand.c: Update.
4052         * gnulib/import/isnanl-nolibm.h: Update.
4053         * gnulib/import/isnanl.c: Update.
4054         * gnulib/import/itold.c: Update.
4055         * gnulib/import/libc-config.h: Update.
4056         * gnulib/import/limits.in.h: Update.
4057         * gnulib/import/localcharset.c: Update.
4058         * gnulib/import/localcharset.h: Update.
4059         * gnulib/import/localtime-buffer.c: Update.
4060         * gnulib/import/localtime-buffer.h: Update.
4061         * gnulib/import/lstat.c: Update.
4062         * gnulib/import/m4/00gnulib.m4: Update.
4063         * gnulib/import/m4/__inline.m4: Update.
4064         * gnulib/import/m4/absolute-header.m4: Update.
4065         * gnulib/import/m4/alloca.m4: Update.
4066         * gnulib/import/m4/builtin-expect.m4: Update.
4067         * gnulib/import/m4/canonicalize.m4: Update.
4068         * gnulib/import/m4/chdir-long.m4: Update.
4069         * gnulib/import/m4/close.m4: Update.
4070         * gnulib/import/m4/closedir.m4: Update.
4071         * gnulib/import/m4/configmake.m4: Update.
4072         * gnulib/import/m4/d-ino.m4: Update.
4073         * gnulib/import/m4/d-type.m4: Update.
4074         * gnulib/import/m4/dirent_h.m4: Update.
4075         * gnulib/import/m4/dirfd.m4: Update.
4076         * gnulib/import/m4/dirname.m4: Update.
4077         * gnulib/import/m4/double-slash-root.m4: Update.
4078         * gnulib/import/m4/dup.m4: Update.
4079         * gnulib/import/m4/dup2.m4: Update.
4080         * gnulib/import/m4/eealloc.m4: Update.
4081         * gnulib/import/m4/environ.m4: Update.
4082         * gnulib/import/m4/errno_h.m4: Update.
4083         * gnulib/import/m4/error.m4: Update.
4084         * gnulib/import/m4/exponentd.m4: Update.
4085         * gnulib/import/m4/exponentl.m4: Update.
4086         * gnulib/import/m4/extensions.m4: Update.
4087         * gnulib/import/m4/extern-inline.m4: Update.
4088         * gnulib/import/m4/fchdir.m4: Update.
4089         * gnulib/import/m4/fcntl-o.m4: Update.
4090         * gnulib/import/m4/fcntl.m4: Update.
4091         * gnulib/import/m4/fcntl_h.m4: Update.
4092         * gnulib/import/m4/fdopendir.m4: Update.
4093         * gnulib/import/m4/filenamecat.m4: Update.
4094         * gnulib/import/m4/flexmember.m4: Update.
4095         * gnulib/import/m4/float_h.m4: Update.
4096         * gnulib/import/m4/fnmatch.m4: Update.
4097         * gnulib/import/m4/fnmatch_h.m4: Update.
4098         * gnulib/import/m4/fpieee.m4: Update.
4099         * gnulib/import/m4/frexp.m4: Update.
4100         * gnulib/import/m4/frexpl.m4: Update.
4101         * gnulib/import/m4/fstat.m4: Update.
4102         * gnulib/import/m4/fstatat.m4: Update.
4103         * gnulib/import/m4/getcwd-abort-bug.m4: Update.
4104         * gnulib/import/m4/getcwd-path-max.m4: Update.
4105         * gnulib/import/m4/getcwd.m4: Update.
4106         * gnulib/import/m4/getdtablesize.m4: Update.
4107         * gnulib/import/m4/getlogin.m4: Update.
4108         * gnulib/import/m4/getlogin_r.m4: Update.
4109         * gnulib/import/m4/getpagesize.m4: Update.
4110         * gnulib/import/m4/getprogname.m4: Update.
4111         * gnulib/import/m4/gettimeofday.m4: Update.
4112         * gnulib/import/m4/glibc21.m4: Update.
4113         * gnulib/import/m4/glob.m4: Update.
4114         * gnulib/import/m4/glob_h.m4: Update.
4115         * gnulib/import/m4/gnulib-cache.m4: Update.
4116         * gnulib/import/m4/gnulib-common.m4: Update.
4117         * gnulib/import/m4/gnulib-comp.m4: Update.
4118         * gnulib/import/m4/gnulib-tool.m4: Update.
4119         * gnulib/import/m4/hard-locale.m4: Update.
4120         * gnulib/import/m4/include_next.m4: Update.
4121         * gnulib/import/m4/inttypes-pri.m4: Update.
4122         * gnulib/import/m4/inttypes.m4: Update.
4123         * gnulib/import/m4/isnand.m4: Update.
4124         * gnulib/import/m4/isnanl.m4: Update.
4125         * gnulib/import/m4/largefile.m4: Update.
4126         * gnulib/import/m4/limits-h.m4: Update.
4127         * gnulib/import/m4/localcharset.m4: Update.
4128         * gnulib/import/m4/locale-fr.m4: Update.
4129         * gnulib/import/m4/locale-ja.m4: Update.
4130         * gnulib/import/m4/locale-zh.m4: Update.
4131         * gnulib/import/m4/localtime-buffer.m4: Update.
4132         * gnulib/import/m4/longlong.m4: Update.
4133         * gnulib/import/m4/lstat.m4: Update.
4134         * gnulib/import/m4/malloc.m4: Update.
4135         * gnulib/import/m4/malloca.m4: Update.
4136         * gnulib/import/m4/math_h.m4: Update.
4137         * gnulib/import/m4/mbrtowc.m4: Update.
4138         * gnulib/import/m4/mbsinit.m4: Update.
4139         * gnulib/import/m4/mbsrtowcs.m4: Update.
4140         * gnulib/import/m4/mbstate_t.m4: Update.
4141         * gnulib/import/m4/memchr.m4: Update.
4142         * gnulib/import/m4/memmem.m4: Update.
4143         * gnulib/import/m4/mempcpy.m4: Update.
4144         * gnulib/import/m4/memrchr.m4: Update.
4145         * gnulib/import/m4/mkdir.m4: Update.
4146         * gnulib/import/m4/mkstemp.m4: Update.
4147         * gnulib/import/m4/mmap-anon.m4: Update.
4148         * gnulib/import/m4/mode_t.m4: Update.
4149         * gnulib/import/m4/msvc-inval.m4: Update.
4150         * gnulib/import/m4/msvc-nothrow.m4: Update.
4151         * gnulib/import/m4/multiarch.m4: Update.
4152         * gnulib/import/m4/nocrash.m4: Update.
4153         * gnulib/import/m4/off_t.m4: Update.
4154         * gnulib/import/m4/onceonly.m4: Update.
4155         * gnulib/import/m4/open-cloexec.m4: Update.
4156         * gnulib/import/m4/open.m4: Update.
4157         * gnulib/import/m4/openat.m4: Update.
4158         * gnulib/import/m4/opendir.m4: Update.
4159         * gnulib/import/m4/pathmax.m4: Update.
4160         * gnulib/import/m4/rawmemchr.m4: Update.
4161         * gnulib/import/m4/readdir.m4: Update.
4162         * gnulib/import/m4/readlink.m4: Update.
4163         * gnulib/import/m4/realloc.m4: Update.
4164         * gnulib/import/m4/rename.m4: Update.
4165         * gnulib/import/m4/rewinddir.m4: Update.
4166         * gnulib/import/m4/rmdir.m4: Update.
4167         * gnulib/import/m4/save-cwd.m4: Update.
4168         * gnulib/import/m4/secure_getenv.m4: Update.
4169         * gnulib/import/m4/setenv.m4: Update.
4170         * gnulib/import/m4/signal_h.m4: Update.
4171         * gnulib/import/m4/ssize_t.m4: Update.
4172         * gnulib/import/m4/stat-time.m4: Update.
4173         * gnulib/import/m4/stat.m4: Update.
4174         * gnulib/import/m4/std-gnu11.m4: Update.
4175         * gnulib/import/m4/stdbool.m4: Update.
4176         * gnulib/import/m4/stddef_h.m4: Update.
4177         * gnulib/import/m4/stdint.m4: Update.
4178         * gnulib/import/m4/stdio_h.m4: Update.
4179         * gnulib/import/m4/stdlib_h.m4: Update.
4180         * gnulib/import/m4/strchrnul.m4: Update.
4181         * gnulib/import/m4/strdup.m4: Update.
4182         * gnulib/import/m4/strerror.m4: Update.
4183         * gnulib/import/m4/string_h.m4: Update.
4184         * gnulib/import/m4/strstr.m4: Update.
4185         * gnulib/import/m4/strtok_r.m4: Update.
4186         * gnulib/import/m4/sys_socket_h.m4: Update.
4187         * gnulib/import/m4/sys_stat_h.m4: Update.
4188         * gnulib/import/m4/sys_time_h.m4: Update.
4189         * gnulib/import/m4/sys_types_h.m4: Update.
4190         * gnulib/import/m4/tempname.m4: Update.
4191         * gnulib/import/m4/time_h.m4: Update.
4192         * gnulib/import/m4/unistd-safer.m4: Update.
4193         * gnulib/import/m4/unistd_h.m4: Update.
4194         * gnulib/import/m4/warn-on-use.m4: Update.
4195         * gnulib/import/m4/wchar_h.m4: Update.
4196         * gnulib/import/m4/wchar_t.m4: Update.
4197         * gnulib/import/m4/wctype_h.m4: Update.
4198         * gnulib/import/m4/wint_t.m4: Update.
4199         * gnulib/import/malloc.c: Update.
4200         * gnulib/import/malloc/scratch_buffer.h: Update.
4201         * gnulib/import/malloc/scratch_buffer_grow.c: Update.
4202         * gnulib/import/malloc/scratch_buffer_grow_preserve.c: Update.
4203         * gnulib/import/malloc/scratch_buffer_set_array_size.c: Update.
4204         * gnulib/import/malloca.c: Update.
4205         * gnulib/import/malloca.h: Update.
4206         * gnulib/import/malloca.valgrind: Update.
4207         * gnulib/import/math.in.h: Update.
4208         * gnulib/import/mbrtowc.c: Update.
4209         * gnulib/import/mbsinit.c: Update.
4210         * gnulib/import/mbsrtowcs-impl.h: Update.
4211         * gnulib/import/mbsrtowcs-state.c: Update.
4212         * gnulib/import/mbsrtowcs.c: Update.
4213         * gnulib/import/memchr.c: Update.
4214         * gnulib/import/memmem.c: Update.
4215         * gnulib/import/mempcpy.c: Update.
4216         * gnulib/import/memrchr.c: Update.
4217         * gnulib/import/mkdir.c: Update.
4218         * gnulib/import/mkstemp.c: Update.
4219         * gnulib/import/msvc-inval.c: Update.
4220         * gnulib/import/msvc-inval.h: Update.
4221         * gnulib/import/msvc-nothrow.c: Update.
4222         * gnulib/import/msvc-nothrow.h: Update.
4223         * gnulib/import/open.c: Update.
4224         * gnulib/import/openat-die.c: Update.
4225         * gnulib/import/openat-priv.h: Update.
4226         * gnulib/import/openat-proc.c: Update.
4227         * gnulib/import/openat.c: Update.
4228         * gnulib/import/openat.h: Update.
4229         * gnulib/import/opendir.c: Update.
4230         * gnulib/import/pathmax.h: Update.
4231         * gnulib/import/pipe-safer.c: Update.
4232         * gnulib/import/rawmemchr.c: Update.
4233         * gnulib/import/readdir.c: Update.
4234         * gnulib/import/readlink.c: Update.
4235         * gnulib/import/realloc.c: Update.
4236         * gnulib/import/ref-add.sin: Update.
4237         * gnulib/import/ref-del.sin: Update.
4238         * gnulib/import/rename.c: Update.
4239         * gnulib/import/rewinddir.c: Update.
4240         * gnulib/import/rmdir.c: Update.
4241         * gnulib/import/same-inode.h: Update.
4242         * gnulib/import/save-cwd.c: Update.
4243         * gnulib/import/save-cwd.h: Update.
4244         * gnulib/import/scratch_buffer.h: Update.
4245         * gnulib/import/secure_getenv.c: Update.
4246         * gnulib/import/setenv.c: Update.
4247         * gnulib/import/signal.in.h: Update.
4248         * gnulib/import/stat-time.c: Update.
4249         * gnulib/import/stat-time.h: Update.
4250         * gnulib/import/stat-w32.c: Update.
4251         * gnulib/import/stat-w32.h: Update.
4252         * gnulib/import/stat.c: Update.
4253         * gnulib/import/stdbool.in.h: Update.
4254         * gnulib/import/stddef.in.h: Update.
4255         * gnulib/import/stdint.in.h: Update.
4256         * gnulib/import/stdio.in.h: Update.
4257         * gnulib/import/stdlib.in.h: Update.
4258         * gnulib/import/str-two-way.h: Update.
4259         * gnulib/import/strchrnul.c: Update.
4260         * gnulib/import/strdup.c: Update.
4261         * gnulib/import/streq.h: Update.
4262         * gnulib/import/strerror-override.c: Update.
4263         * gnulib/import/strerror-override.h: Update.
4264         * gnulib/import/strerror.c: Update.
4265         * gnulib/import/string.in.h: Update.
4266         * gnulib/import/stripslash.c: Update.
4267         * gnulib/import/strnlen1.c: Update.
4268         * gnulib/import/strnlen1.h: Update.
4269         * gnulib/import/strstr.c: Update.
4270         * gnulib/import/strtok_r.c: Update.
4271         * gnulib/import/sys_stat.in.h: Update.
4272         * gnulib/import/sys_time.in.h: Update.
4273         * gnulib/import/sys_types.in.h: Update.
4274         * gnulib/import/tempname.c: Update.
4275         * gnulib/import/tempname.h: Update.
4276         * gnulib/import/time.in.h: Update.
4277         * gnulib/import/unistd--.h: Update.
4278         * gnulib/import/unistd-safer.h: Update.
4279         * gnulib/import/unistd.in.h: Update.
4280         * gnulib/import/unsetenv.c: Update.
4281         * gnulib/import/verify.h: Update.
4282         * gnulib/import/extra/snippet/warn-on-use.h: Update.
4283         * gnulib/import/wchar.in.h: Update.
4284         * gnulib/import/wctype.in.h: Update.
4285         * gnulib/import/xalloc-oversized.h: Update.
4286         * gnulib/update-gnulib.sh (GNULIB_COMMIT_SHA1): Set to
4287         "53e2c179f26a890fa6685af4b6c1397ee370433b".
4288
4289 2018-08-16  Gary Benson <gbenson@redhat.com>
4290
4291         PR gdb/13000:
4292         * gdb/main.c (captured_main_1): Exit with nonzero status
4293         in batch mode if the last command to be executed failed.
4294         * NEWS: Mention the above.
4295
4296 2018-08-29  Simon Marchi  <simon.marchi@ericsson.com>
4297
4298         * csky-tdep.c (csky_memory_insert_breakpoint): Remove newline at
4299         end of warning message.
4300
4301 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4302
4303         PR gdb/22943:
4304         * aarch64-tdep.c (is_hfa_or_hva): Remove function.
4305         (aarch64_extract_return_value): Use
4306         aapcs_is_vfp_call_or_return_candidate.
4307         (aarch64_return_in_memory): Likewise.
4308         (aarch64_store_return_value): Likewise.
4309
4310 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4311
4312         * aarch64-tdep.c
4313         (aapcs_is_vfp_call_or_return_candidate): Make static
4314         (pass_in_v_or_stack): Remove function.
4315         (pass_in_v_vfp_candidate): New function.
4316         (aarch64_push_dummy_call): Check for float register candidates.
4317
4318 2018-08-29  Alan Hayward  <alan.hayward@arm.com>
4319
4320         * aarch64-tdep.c (HA_MAX_NUM_FLDS): New macro.
4321         (aapcs_is_vfp_call_or_return_candidate_1): New function.
4322         (aapcs_is_vfp_call_or_return_candidate): Likewise.
4323
4324 2018-08-28  Simon Marchi  <simon.marchi@polymtl.ca>
4325
4326         PR build/23399
4327         * common/agent.c (IPA_SYM_STRUCT_NAME): Define.
4328         (struct ipa_sym_addresses): Rename to...
4329         (struct ipa_sym_addresses_common): ... this.
4330         * common/agent.h (IPA_SYM): Use IPA_SYM_STRUCT_NAME.
4331
4332 2018-08-28  Tom Tromey  <tom@tromey.com>
4333
4334         * c-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4335         (token_fifo): Now a std::vector.
4336         (yylex, c_parse): Update.
4337         * d-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4338         (token_fifo): Now a std::vector.
4339         (yylex, d_parse): Update.
4340         * go-exp.y (struct token_and_value): Remove typedef and DEF_VEC.
4341         (token_fifo): Now a std::vector.
4342         (yylex, go_parse): Update.
4343
4344 2018-08-28  Simon Marchi  <simon.marchi@ericsson.com>
4345
4346         * parser-defs.h (struct type_stack) <elements>: Change type to
4347         std::vector<union type_stack_elt>.
4348         <depth, size>: Remove.
4349         * parse.c (parse_exp_in_context_1): Adjust.
4350         (type_stack_reserve): Remove.
4351         (check_type_stack_depth): Remove.
4352         (insert_into_type_stack): Adjust to std::vector.
4353         (insert_type): Likewise.
4354         (push_type): Likewise.
4355         (push_type_int): Likewise.
4356         (insert_type_address_space): Likewise.
4357         (pop_type): Likewise.
4358         (pop_type_int): Likewise.
4359         (pop_typelist): Likewise.
4360         (pop_type_stack): Likewise.
4361         (append_type_stack): Likewise.
4362         (push_type_stack): Likewise.
4363         (get_type_stack): Likewise.
4364         (type_stack_cleanup): Likewise.
4365         (push_typelist): Likewise.
4366         (follow_types): Likewise.
4367         (_initialize_parse): Likewise.
4368
4369 2018-08-28  Hafiz Abid Qadeer  <abidh@codesourcery.com>
4370
4371         * NEWS: Mention csky target.
4372
4373 2018-08-28  Jiangshuai Li  <jiangshuai_li@c-sky.com>
4374             Hafiz Abid Qadeer  <abidh@codesourcery.com>
4375             Don Breazeal  <donb@codesourcery.com>
4376
4377         * csky-linux-tdep.c: New file.
4378         * csky-tdep.c: Likewise.
4379         * csky-tdep.h: Likewise.
4380         * Makefile.in (ALL_TARGET_OBS): Add csky-linux-tdep.o and
4381         csky-tdep.o.
4382         (HFILES_NO_SRCDIR): Add csky-tdep.h.
4383         (ALLDEPFILES): Add csky-linux-tdep.c and csky-tdep.c
4384         * configure.tgt: Add csky support.
4385
4386 2018-08-27  Jan Vrany  <jan.vrany@fit.cvut.cz>
4387
4388         * python/py-framefilter.c (py_print_frame): Print frame architecture
4389         when printing on an MI output.
4390
4391 2018-08-27  Tom Tromey  <tom@tromey.com>
4392
4393         PR build/23087:
4394         * configure: Rebuild.
4395         * warning.m4 (AM_GDB_WARNINGS): Remove -Wno-narrowing.
4396
4397 2018-08-27  Tom Tromey  <tom@tromey.com>
4398
4399         * aarch64-linux-tdep.c
4400         (aarch64_linux_iterate_over_regset_sections) <sve_regmap>: Add
4401         casts to int.
4402
4403 2018-08-27  Tom Tromey  <tom@tromey.com>
4404
4405         * ppc64-tdep.c (insn_d, insn_ds, insn_xfx): Add casts to
4406         unsigned.
4407         (ppc64_standard_linkage1, ppc64_standard_linkage2)
4408         (ppc64_standard_linkage3, ppc64_standard_linkage4)
4409         (ppc64_standard_linkage5, ppc64_standard_linkage6)
4410         (ppc64_standard_linkage7, ppc64_standard_linkage8): Add casts to
4411         unsigned.
4412
4413 2018-08-27  Tom Tromey  <tom@tromey.com>
4414
4415         * xtensa-tdep.h (XTREG_END): Add cast to unsigned.
4416         (XTENSA_GDBARCH_TDEP_INSTANTIATE): Likewise.
4417
4418 2018-08-27  Tom Tromey  <tom@tromey.com>
4419
4420         * tramp-frame.h (TRAMP_SENTINEL_INSN): Redefine.
4421         * tilegx-linux-tdep.c (tilegx_linux_rt_sigframe): Use
4422         ULONGEST_MAX.
4423         * tic6x-linux-tdep.c (tic6x_linux_rt_sigreturn_tramp_frame): Use
4424         ULONGEST_MAX.
4425         * sparc64-linux-tdep.c (sparc64_linux_rt_sigframe): Use
4426         ULONGEST_MAX.
4427         * sparc-linux-tdep.c (sparc32_linux_sigframe)
4428         (sparc32_linux_rt_sigframe): Use ULONGEST_MAX.
4429         * ppc-nbsd-tdep.c (ppcnbsd_sigtramp, ppcnbsd2_sigtramp): Use
4430         ULONGEST_MAX.
4431         * ppc-linux-tdep.c (ppc32_linux_sigaction_tramp_frame)
4432         (ppc64_linux_sigaction_tramp_frame)
4433         (ppc32_linux_sighandler_tramp_frame)
4434         (ppc64_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4435         * nios2-linux-tdep.c (nios2_r1_linux_rt_sigreturn_tramp_frame)
4436         (nios2_r2_linux_rt_sigreturn_tramp_frame): Use ULONGEST_MAX.
4437         * mn10300-linux-tdep.c (am33_linux_sigframe)
4438         (am33_linux_rt_sigframe): Use ULONGEST_MAX.
4439         * mips64-obsd-tdep.c (mips64obsd_sigframe): Use ULONGEST_MAX.
4440         * mips-linux-tdep.c (mips_linux_o32_sigframe)
4441         (mips_linux_o32_rt_sigframe, mips_linux_n32_rt_sigframe)
4442         (mips_linux_n64_rt_sigframe, micromips_linux_o32_sigframe)
4443         (micromips_linux_o32_rt_sigframe, micromips_linux_n32_rt_sigframe)
4444         (micromips_linux_n64_rt_sigframe): Use ULONGEST_MAX.
4445         * mips-fbsd-tdep.c (mips_fbsd_sigframe, mipsn32_fbsd_sigframe)
4446         (mips64_fbsd_sigframe): Use ULONGEST_MAX.
4447         * microblaze-linux-tdep.c
4448         (microblaze_linux_sighandler_tramp_frame): Use ULONGEST_MAX.
4449         * i386-nbsd-tdep.c (i386nbsd_sigtramp_sc16, i386nbsd_sigtramp_sc2)
4450         (i386nbsd_sigtramp_si2, i386nbsd_sigtramp_si31)
4451         (i386nbsd_sigtramp_si4): Use ULONGEST_MAX.
4452         * hppa-nbsd-tdep.c (hppanbsd_sigtramp_si4): Use ULONGEST_MAX.
4453         * common/common-types.h (ULONGEST_MAX): New define.
4454         (CORE_ADDR_MAX): Fix formatting.
4455         * bfin-linux-tdep.c (bfin_linux_sigframe): Use ULONGEST_MAX.
4456         * arm-obsd-tdep.c (armobsd_sigframe): Use ULONGEST_MAX.
4457         * arm-linux-tdep.c (arm_linux_sigreturn_tramp_frame)
4458         (arm_linux_rt_sigreturn_tramp_frame)
4459         (arm_eabi_linux_sigreturn_tramp_frame)
4460         (arm_eabi_linux_rt_sigreturn_tramp_frame)
4461         (thumb2_eabi_linux_sigreturn_tramp_frame)
4462         (thumb2_eabi_linux_rt_sigreturn_tramp_frame)
4463         (arm_linux_restart_syscall_tramp_frame)
4464         (arm_kernel_linux_restart_syscall_tramp_frame): Use ULONGEST_MAX.
4465         * arm-fbsd-tdep.c (arm_fbsd_sigframe): Use ULONGEST_MAX.
4466         * aarch64-linux-tdep.c (aarch64_linux_rt_sigframe): Use
4467         ULONGEST_MAX.
4468         * aarch64-fbsd-tdep.c (aarch64_fbsd_sigframe): Use ULONGEST_MAX.
4469
4470 2018-08-27  Tom Tromey  <tom@tromey.com>
4471
4472         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Use
4473         CORE_ADDR_MAX.
4474         * mips-tdep.c (mips_deal_with_atomic_sequence)
4475         (micromips_deal_with_atomic_sequence): Use CORE_ADDR_MAX.
4476         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw)
4477         (arm_deal_with_atomic_sequence_raw): Use CORE_ADDR_MAX.
4478         * alpha-tdep.c (alpha_deal_with_atomic_sequence): Use
4479         CORE_ADDR_MAX.
4480         * aarch64-tdep.c (aarch64_software_single_step): Use
4481         CORE_ADDR_MAX.
4482
4483 2018-08-27  Tom Tromey  <tom@tromey.com>
4484
4485         * linespec.c (complete_linespec_component): Add cast to "char".
4486         * completer.c (completion_tracker::build_completion_result): Add
4487         cast to "char".
4488
4489 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4490
4491         * solist.h (struct solist, struct target_so_ops): Fix
4492         indentation.
4493
4494 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4495
4496         * ada-tasks.c (ada_task_info_s): Remove typedef.
4497         (DEF_VEC_O(ada_task_info_s)): Remove.
4498         (struct ada_tasks_inferior_data): Initialize fields.
4499         <task_list>: Make an std::vector.
4500         (get_ada_tasks_inferior_data): Allocate with new.
4501         (ada_get_task_number): Adjust.
4502         (get_task_number_from_id): Likewise.
4503         (valid_task_id): Likewise.
4504         (ada_get_task_info_from_ptid): Likewise.
4505         (iterate_over_live_ada_tasks): Likewise.
4506         (add_ada_task): Likewise.
4507         (read_known_tasks): Likewise.
4508         (ada_build_task_list): Likewise.
4509         (print_ada_task_info): Likewise.
4510         (info_task): Likewise.
4511         (task_command_1): Likewise.
4512
4513 2018-08-26  Simon Marchi  <simon.marchi@polymtl.ca>
4514
4515         * ada-lang.c (add_angle_brackets): Return std::string.
4516
4517 2018-08-25  Simon Marchi  <simon.marchi@polymtl.ca>
4518
4519         * python/py-threadevent.c (py_get_event_thread): Initialize
4520         pythread.
4521
4522 2018-08-24  Pedro Alves  <palves@redhat.com>
4523
4524         * python/py-bpevent.c (create_breakpoint_event_object): Use
4525         copy-initialization.
4526         * python/py-continueevent.c (emit_continue_event): Use
4527         copy-initialization.
4528         * python/py-exitedevent.c (create_exited_event_object): Return a
4529         gdbpy_ref<>.
4530         (emit_exited_event): Use copy-initialization.
4531         * python/py-inferior.c (python_new_inferior)
4532         (python_inferior_deleted, add_thread_object): Use
4533         copy-initialization.
4534         * python/py-infevents.c (create_inferior_call_event_object)
4535         (create_register_changed_event_object)
4536         (create_memory_changed_event_object): Return a gdbpy_ref<>.
4537         (emit_inferior_call_event, emit_memory_changed_event)
4538         (emit_register_changed_event): Use copy-initialization.
4539         * python/py-newobjfileevent.c (create_new_objfile_event_object):
4540         Return a gdbpy_ref<>.
4541         (emit_new_objfile_event): Use copy-initialization.
4542         (create_clear_objfiles_event_object): Return a gdbpy_ref<>.
4543         (emit_clear_objfiles_event): Use copy-initialization.
4544         * python/py-signalevent.c (create_signal_event_object): Use
4545         copy-initialization.
4546         * python/py-threadevent.c (create_thread_event_object): Use
4547         copy-initialization.
4548
4549 2018-08-24  Pedro Alves  <palves@redhat.com>
4550             Simon Marchi  <simon.marchi@ericsson.com>
4551
4552         PR gdb/23379
4553         * python/py-continueevent.c: Include "gdbthread.h".
4554         (create_continue_event_object): Add intro comment.  Add 'ptid'
4555         parameter.  Use it to find thread to pass to
4556         create_thread_event_object.
4557         (emit_continue_event): Pass PTID down to
4558         create_continue_event_object.
4559         * python/py-event.h (py_get_event_thread): Declare.
4560         (create_thread_event_object): Remove default from 'thread'
4561         parameter.
4562         * python/py-stopevent.c (create_stop_event_object): Use
4563         py_get_event_thread.
4564         * python/py-threadevent.c (get_event_thread): Rename to ...
4565         (py_get_event_thread): ... this, make extern, add 'ptid' parameter
4566         and use it to find the thread.
4567         (create_thread_event_object): Assert that THREAD isn't null.
4568         Don't find the event thread here.
4569
4570 2018-08-23  Kevin Buettner  <kevinb@redhat.com>
4571
4572         * block.h (blockrange, blockranges): New struct declarations.
4573         (struct block): Add new field named `ranges'.
4574         (BLOCK_RANGES, BLOCK_NRANGES, BLOCK_RANGE, BLOCK_CONTIGUOUS_P)
4575         (BLOCK_RANGE_START, BLOCK_RANGE_END, BLOCK_ENTRY_PC): New
4576         macros for accessing ranges in struct block.
4577         (make_blockranges): New declaration.
4578         block.c (make_blockranges): New function.
4579         * dwarf2read.c (dwarf2_record_block_ranges): Fill in BLOCK_RANGES
4580         for block.
4581         * symtab.h (find_pc_partial_function): Add new parameter `block'.
4582         * blockframe.c (cache_pc_function_block): New static global.
4583         (clear_pc_function_cache): Clear cache_pc_function_block.
4584         (find_pc_partial_function): Move comment to symtab.h.  Add
4585         support for non-contiguous blocks.
4586         * cli/cli-cmds.c (block.h): Include.
4587         (print_disassembly): Handle printing of non-contiguous blocks.
4588         (disassemble_current_function): Likewise.
4589         (disassemble_command): Likewise.
4590
4591         * ax-gdb.c (gen_var_ref): Use BLOCK_ENTRY_PC in place of
4592         BLOCK_START.
4593         * blockframe.c (get_pc_function_start): Likewise.
4594         * compile/compile-c-symbols.c (convert_one_symbol): Likewise.
4595         (gcc_symbol_address): Likewise.
4596         * compile/compile-object-run.c (compile_object_run): Likewise.
4597         * compile/compile.c (get_expr_block_and_pc): Likewise.
4598         * dwarf2loc.c (dwarf2_find_location_expression): Likewise.
4599         (func_addr_to_tail_call_list): Likewise.
4600         * findvar.c (default_read_var_value): Likewise.
4601         * inline-frame.c (inline_frame_this_id): Likewise.
4602         (skip-inline_frames): Likewise.
4603         * infcmd.c (until_next_command): Likewise.
4604         * linespec.c (convert_linespec_to_sals): Likewise.
4605         * parse.c (parse_exp_in_context_1): Likewise.
4606         * printcmd.c (build_address_symbolic): likewise.
4607         (info_address_command): Likewise.
4608         symtab.c (find_function_start_sal): Likewise.
4609         (skip_prologue_sal): Likewise.
4610         (find_function_alias_target): Likewise.
4611         (find_gnu_ifunc): Likewise.
4612         * stack.c (find_frame_funname): Likewise.
4613         * symtab.c (fixup_symbol_section): Likewise.
4614         (find_function_start_sal): Likewise.
4615         (skip_prologue_sal): Likewsie.
4616         (find_function_alias_target): Likewise.
4617         (find_gnu_ifunc): Likewise.
4618         * tracepoint.c (info_scope_command): Likewise.
4619         * value.c (value_fn_field): Likewise.
4620
4621         * infrun.c (fill_in_stop_func): Use find_function_entry_range_from_pc
4622         in place of find_pc_partial_function.
4623         * blockframe.c (find_function_entry_range_from_pc): New function.
4624         * symtab.h (find_function_entry_range_from_pc): Declare and document.
4625         * objfiles.c (objfile_relocate1): Relocate start and end addresses
4626         for each range in a block.
4627
4628
4629 2018-08-23  Xavier Roirand  <roirand@adacore.com>
4630
4631         * machoread.c (macho_symfile_read_all_oso): Remove uneeded
4632         incrementation.
4633
4634 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4635
4636         * solib-svr4.c (read_program_headers_from_bfd): Return
4637         gdb::optional<gdb::byte_vector>.
4638         (svr4_exec_displacement): Adjust.
4639
4640 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4641
4642         * solib-svr4.c (read_program_header): Return
4643         gdb::optional<gdb::byte_vector>, remove p_sect_size param.
4644         (find_program_interpreter): Return
4645         gdb::optional<gdb::byte_vector>.
4646         (scan_dyntag_auxv): Adjust.
4647         (enable_break): Adjust.
4648         (svr4_exec_displacement): Adjust.
4649
4650 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4651
4652         * inf-child.h (inf_child_target) <terminal_save_inferior>: New.
4653         * inf-child.c (inf_child_target::terminal_save_inferior): New.
4654
4655 2018-08-22  Simon Marchi  <simon.marchi@polymtl.ca>
4656
4657         * guile/scm-string.c (gdbscm_scm_from_printf): Use
4658         string_vprintf.
4659         * guile/scm-utils.c (gdbscm_printf): Likewise.
4660         * serial.c (serial_printf): Likewise.
4661         * xml-support.c (gdb_xml_parser::vdebug): Likewise.
4662
4663 2018-08-22  Jan Vrany  <jan.vrany@fit.cvut.cz>
4664
4665         * stack.c (print_frame): Print frame architecture when printing on
4666         an MI output.
4667         * NEWS: Mention new "arch" attribute in frame output.
4668
4669 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4670
4671         * arch/aarch64.h (aarch64_regnum): Update comment.
4672
4673 2018-08-21  Alan Hayward  <alan.hayward@arm.com>
4674
4675         * NEWS: Add SVE to 8.2 section.
4676
4677 2018-08-21  Pedro Alves  <palves@redhat.com>
4678
4679         * guile/scm-utils.c (gdbscm_parse_function_args_1): New, factored
4680         out from gdbscm_parse_function_args.
4681         (gdbscm_parse_function_args): Rework to use gdbscm_wrap and
4682         gdbscm_parse_function_args_1.
4683
4684 2018-08-21  Simon Marchi  <simon.marchi@ericsson.com>
4685
4686         PR gdb/17816
4687         * m32c-tdep.c (m32c_decode_srcdest4): Remove unnecessary ternary
4688         operator.
4689
4690 2018-08-19  Simon Marchi  <simon.marchi@polymtl.ca>
4691
4692         * solib-svr4.c (svr4_exec_displacement): Fix formatting.
4693
4694 2018-08-19  Michael Spang  <spang@google.com>
4695
4696         PR gdb/11786
4697         * solib-svr4.c (svr4_exec_displacement): Ignore memsz fields
4698         for PT_TLS segments.
4699
4700 2018-08-18  Kevin Buettner  <kevinb@redhat.com>
4701
4702         * dwarf2expr.h (struct dwarf_expr_context): Add virtual method
4703         dwarf_variable_value.
4704         * dwarf2-frame.c (class dwarf_expr_executor):
4705         Add override for dwarf_variable_value.
4706         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Likewise.
4707         (class symbol_needs_eval_context): Likewise.
4708         (indirect_synthetic_pointer): Add forward declaration.
4709         (sect_variable_value): New function.
4710         (dwarf2_compile_expr_to_ax): Add case for DW_OP_GNU_variable_value.
4711         * dwarf2expr.c (dwarf_expr_context::execute_stack_op): Add case
4712         for DW_OP_GNU_variable_value.
4713
4714 2018-08-16  Tom Tromey  <tom@tromey.com>
4715
4716         * top.c (read_command_file): Update.
4717         (command_line_input): Remove "repeat" argument.
4718         * ada-lang.c (get_selections): Update.
4719         * linespec.c (decode_line_2): Update.
4720         * defs.h (command_line_input): Remove argument.
4721         * cli/cli-script.c (read_next_line): Update.
4722         * python/py-gdb-readline.c: Update.
4723
4724 2018-08-17  Tom Tromey  <tom@tromey.com>
4725
4726         * cli/cli-script.c (read_next_line): Pass 0 as repeat argument to
4727         command_line_input.
4728
4729 2018-08-15  Tom Tromey  <tom@tromey.com>
4730
4731         * aarch64-linux-tdep.c (aarch64_linux_core_read_vq): Use pulongest.
4732
4733 2018-08-14  Jan Vrany  <jan.vrany@fit.cvut.cz>
4734
4735         * mi/mi-cmd-disas.c (mi_cmd_disassemble): Add -a option.
4736         If used, use find_pc_partial_function to find address range
4737         to disassemble.
4738         * mi/mi-main.c (mi_cmd_list_features): Report
4739         "data-disassemble-a-option" feature.
4740         * NEWS: Mention new -data-disassemble option -a.
4741
4742 2018-08-13  Tom Tromey  <tom@tromey.com>
4743
4744         * common/common-defs.h (_FORTIFY_SOURCE): Define.
4745
4746 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4747
4748         * aarch64-linux-tdep.c (aarch64_linux_supply_sve_regset): New function.
4749         (aarch64_linux_collect_sve_regset): Likewise.
4750         (aarch64_linux_iterate_over_regset_sections): Check for SVE.
4751         * regcache.h (regcache_map_entry_size): New function.
4752
4753 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4754
4755         * aarch64-linux-tdep.c (SVE_HEADER_SIZE_LENGTH): Add define.
4756         (SVE_HEADER_MAX_SIZE_LENGTH): Likewise.
4757         (SVE_HEADER_VL_LENGTH): Likewise.
4758         (SVE_HEADER_MAX_VL_LENGTH): Likewise.
4759         (SVE_HEADER_FLAGS_LENGTH): Likewise.
4760         (SVE_HEADER_RESERVED_LENGTH): Likewise.
4761         (SVE_HEADER_SIZE_OFFSET): Likewise.
4762         (SVE_HEADER_MAX_SIZE_OFFSET): Likewise.
4763         (SVE_HEADER_VL_OFFSET): Likewise.
4764         (SVE_HEADER_MAX_VL_OFFSET): Likewise.
4765         (SVE_HEADER_FLAGS_OFFSET): Likewise.
4766         (SVE_HEADER_RESERVED_OFFSET): Likewise.
4767         (SVE_HEADER_SIZE): Likewise.
4768         (aarch64_linux_core_read_vq): Add function.
4769         (aarch64_linux_core_read_description): Check for SVE section.
4770
4771 2018-08-13  Alan Hayward  <alan.hayward@arm.com>
4772
4773         * aarch64-fbsd-tdep.c
4774         (aarch64_fbsd_iterate_over_regset_sections): Add supply_size and
4775         collect_size.
4776         * aarch64-linux-tdep.c
4777         (aarch64_linux_iterate_over_regset_sections): Likewise.
4778         * alpha-linux-tdep.c
4779         (alpha_linux_iterate_over_regset_sections):
4780         * alpha-nbsd-tdep.c
4781         (alphanbsd_iterate_over_regset_sections): Likewise.
4782         * amd64-fbsd-tdep.c
4783         (amd64fbsd_iterate_over_regset_sections): Likewise.
4784         * amd64-linux-tdep.c
4785         (amd64_linux_iterate_over_regset_sections): Likewise.
4786         * arm-bsd-tdep.c
4787         (armbsd_iterate_over_regset_sections): Likewise.
4788         * arm-fbsd-tdep.c
4789         (arm_fbsd_iterate_over_regset_sections): Likewise.
4790         * arm-linux-tdep.c
4791         (arm_linux_iterate_over_regset_sections): Likewise.
4792         * corelow.c (get_core_registers_cb): Likewise.
4793         (core_target::fetch_registers): Likewise.
4794         * fbsd-tdep.c (fbsd_collect_regset_section_cb): Likewise.
4795         * frv-linux-tdep.c (frv_linux_iterate_over_regset_sections): Likewise.
4796         * gdbarch.h (void): Regenerate.
4797         * gdbarch.sh: Add supply_size and collect_size.
4798         * hppa-linux-tdep.c (hppa_linux_iterate_over_regset_sections): Likewise.
4799         * hppa-nbsd-tdep.c (hppanbsd_iterate_over_regset_sections): Likewise.
4800         * hppa-obsd-tdep.c (hppaobsd_iterate_over_regset_sections): Likewise.
4801         * i386-fbsd-tdep.c (i386fbsd_iterate_over_regset_sections): Likewise.
4802         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections): Likewise.
4803         * i386-tdep.c (i386_iterate_over_regset_sections): Likewise.
4804         * ia64-linux-tdep.c (ia64_linux_iterate_over_regset_sections): Likewise.
4805         * linux-tdep.c (linux_collect_regset_section_cb): Likewise.
4806         * m32r-linux-tdep.c (m32r_linux_iterate_over_regset_sections): Likewise.
4807         * m68k-bsd-tdep.c (m68kbsd_iterate_over_regset_sections): Likewise.
4808         * m68k-linux-tdep.c (m68k_linux_iterate_over_regset_sections): Likewise.
4809         * mips-fbsd-tdep.c (mips_fbsd_iterate_over_regset_sections): Likewise.
4810         * mips-linux-tdep.c (mips_linux_iterate_over_regset_sections): Likewise.
4811         * mips-nbsd-tdep.c (mipsnbsd_iterate_over_regset_sections): Likewise.
4812         * mips64-obsd-tdep.c (mips64obsd_iterate_over_regset_sections):
4813         Likewise.
4814         * mn10300-linux-tdep.c (am33_iterate_over_regset_sections): Likewise.
4815         * nios2-linux-tdep.c (nios2_iterate_over_regset_sections): Likewise.
4816         * ppc-fbsd-tdep.c (ppcfbsd_iterate_over_regset_sections): Likewise.
4817         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections): Likewise.
4818         * ppc-nbsd-tdep.c (ppcnbsd_iterate_over_regset_sections): Likewise.
4819         * ppc-obsd-tdep.c (ppcobsd_iterate_over_regset_sections): Likewise.
4820         * riscv-linux-tdep.c (riscv_linux_iterate_over_regset_sections):
4821         Likewise.
4822         * rs6000-aix-tdep.c (rs6000_aix_iterate_over_regset_sections): Likewise.
4823         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Likewise.
4824         * score-tdep.c (score7_linux_iterate_over_regset_sections): Likewise.
4825         * sh-tdep.c (sh_iterate_over_regset_sections): Likewise.
4826         * sparc-tdep.c (sparc_iterate_over_regset_sections): Likewise.
4827         * tilegx-linux-tdep.c (tilegx_iterate_over_regset_sections): Likewise.
4828         * vax-tdep.c (vax_iterate_over_regset_sections): Likewise.
4829         * xtensa-tdep.c (xtensa_iterate_over_regset_sections): Likewise.
4830
4831 2018-08-10  Simon Marchi  <simon.marchi@ericsson.com>
4832
4833         * nat/linux-osdata.c (commandline_from_pid): Replace xstrprintf
4834         with string_printf.
4835
4836 2018-08-10  Keith Seitz  <keiths@redhat.com>
4837
4838         * compile/compile-c-support.c (add_code_header, add_code_footer):
4839         Move into policy class.
4840         (c_push_user_expression, pop_user_expression_nop)
4841         (c_add_code_header, c_add_code_footer, c_add_input): New policy class.
4842         (compile_program): New host class.
4843         (c_compile_program): New typedef.
4844         (c_compute_porgram): Use c_compile_program.
4845
4846 2018-08-10  Keith Seitz  <keiths@redhat.com>
4847
4848         * compile/compile-internal.h (compile_instance::~compile_instance):
4849         Remove calls to htab_delete.
4850         <m_type_map, m_symbol_err_map>: Switch type to htab_up.
4851         * compile.c (compile_instance::compile_instance): Initialize
4852         htab unique pointers.
4853         (compile_instance::get_cached_type, compile_instance::insert_type)
4854         (compile_instance::error_symbol_once): Update for unique_ptr.
4855
4856 2018-08-10  Keith Seitz  <keiths@redhat.com>
4857
4858         * compile/compile-c-symbols.c (struct symbol_error)
4859         (hash_symbol_error, eq_symbol_error, del_symbol_error)
4860         (compile_instance::insert_symbol_error)
4861         (compile_instance::error_symbol_once): Move to ...
4862         * compile/compile.c: ... here.
4863
4864 2018-08-10  Keith Seitz  <keiths@redhat.com>
4865
4866         * compile/compile-c-support.c (c_get_compile_context): Use `new'
4867         instead of `new_compile_instance'.
4868         * compile/compile-c-symbols.c (compile_instance::insert_symbol_error):
4869         Update description.
4870         If the symbol error map is not initialized, create it.
4871         (generate_c_for_for_one_symbol): Do not check/initialize
4872         the symbol error map.
4873         * compile/compile-c-types.c (compile_c_instance): Make a class.
4874         Update all callers.
4875         (compile_instance::compile_instance): Initialize the type cache.
4876         (get_cached_type): New function.
4877         (insert_type): Update description.
4878         (compile_c_instance::m_default_cflags): Define.
4879         (convert_type): Update description.  Use get_cached_type.
4880         (delete_instance): Moved to destructor.
4881         (new_compile_instance): Moved to constructor.
4882         * compile/compile-c.h (compile_c_instance): Make class inheriting
4883         from compile_instance.
4884         <base>: Remove field.
4885         <type_map, symbol_err_map>: Move to base class.
4886         <c_plugin>: Rename to `m_plugin' and remove pointer type.
4887         * compile/compile-internal.h (compile_instance): Make class.
4888         <type_map_t, symbol_err_map_t>: Define.
4889         <fe>: Rename to `m_gcc_fe'.
4890         <scope, block, gcc_target_options>: Add `m_' prefix.
4891         <m_type_map, m_symbol_err_map>: New fields, moved from
4892         compile_c_instance.
4893         <destroy>: Remove.
4894         (convert_type, new_compile_instance): Remove.
4895         * compile/compile.c (cleanup_compile_instance): Remove.
4896         (compile_to_object): Use unique_ptr to eliminate cleanups.
4897         (compile_instance::set_print_callback, compile_instance::version)
4898         (compile_instance::set_verbose)
4899         (compile_instance::set_driver_filename)
4900         (compile_instance::set_triplet_regexp)
4901         (compile_instance::set_arguments)
4902         (compile_instance::set_source_file)
4903         (compile_instance::compile): Define.
4904
4905 2018-08-10  Keith Seitz  <keiths@redhat.com>
4906
4907         * Makefile.in (HFILES_NO_SRCDIR): Add compile/gcc-c-plugin.h.
4908         * compile/compile-c-types.c: Define GCC_METHODN macros and include
4909         gcc-c-fe.def to define C plugin.
4910         (delete_instance): Delete `c_plugin'.
4911         (new_compile_instance): Initialize `c_plugin'.
4912         * compile/compile-c.h: Include gcc_c_plugin.h.
4913         (struct compile_c_instance) <c_plugin>: New member.
4914         * gcc-c-plugin.h: New file.
4915         Update all callers with API change.
4916
4917 2018-08-10  Keith Seitz  <keiths@redhat.com>
4918
4919         * Makefile.in (SUBDIR_GCC_COMPILE_SRCS): Move header files ...
4920         (HFILES_NO_SRCDIR): ... to here.
4921         Add compile-internal.h and compile-c.h.
4922         * compile/compile-c-support.c: Include compile-c.h.
4923         * compile/compile-c-symbols.c: Include compile-c.h.
4924         (generate_c_for_variable_locations): Update comment.
4925         * compile/compile-c-types.c: Include compile-c.h.
4926         * compile/compile-c.h: New file -- moved C language declarations
4927         from other files here.
4928         * compile/compile-internal.h: Do not include hashtab.h or
4929         common/enum-flags.h.
4930         (gcc_qualifiers_flags, struct compile_c_instance, C_CTX)
4931         (gcc_convert_symbol, gcc_symbol_address)
4932         (generate_c_for_variable_locations, c_get_mode_for_size)
4933         (c_get_range_decl_name): Definitions moved to compile-c.h.
4934         * compile/compile-loc2c.c: Include compile-c.h.
4935
4936 2018-08-10  Keith Seitz  <keiths@redhat.com>
4937
4938         * compile/compile-c-symbols.c (symbol_substitution_name): Rename to ...
4939         (c_symbol_substitution_name): ... this.
4940         Update all callers.
4941
4942 2018-08-10  Keith Seitz  <keiths@redhat.com>
4943
4944         * compile/compile-c-support.c (c_compute_program): Use
4945         unique_xmalloc_ptr to eliminate cleanup.
4946         * compile/compile-c-symbols.c (generate_c_for_variable_locations):
4947         Return a unique_xmalloc_ptr and eliminate cleanup.
4948         * compile/compile-internal.h (generate_c_for_variable_locations):
4949         Return unique_xmalloc_ptr and update description.
4950
4951 2018-08-10  Alan Hayward  <alan.hayward@arm.com>
4952
4953         * corelow.c (core_target::get_core_register_section): Rename
4954         min_size to section_min_size.
4955
4956 2018-08-09  Jim Wilson  <jimw@sifive.com>
4957
4958         * Makefile.in (ALL_TARGET_OBS): Add riscv-linux-tdep.c.
4959         (ALLDEPFILES): Add riscv-linux-nat.c, and riscv-linux-tdep.c.
4960         * NEWS: Mention new GNU/Linux RISC-V target.
4961         * configure.host: Add riscv*-*-linux*.
4962         * configure.nat: Add riscv*.
4963         * configure.tgt: Add riscv*-*-linux*.
4964         * riscv-linux-nat.c: New file.
4965         * riscv-linux-tdep.c: New file.
4966
4967 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4968
4969         * infrun.c (resume): Make static, add forward declaration.
4970         (proceed): Update header comment.
4971         * infrun.h (resume): Delete declaration.
4972
4973 2018-08-09  Tom Tromey  <tom@tromey.com>
4974
4975         * riscv-tdep.h: Minor formatting fixes.
4976
4977 2018-08-09  Simon Marchi  <simon.marchi@ericsson.com>
4978
4979         * common/scoped_mmap.c (mmap_file): Silence ARI warning.
4980         * dwarf-index-cache.c (create_dir_and_check): Likewise.
4981         (test_mkdir_recursive): Likewise.
4982         * dwarf-index-write.c (write_psymtabs_to_index): Likewise.
4983
4984 2018-08-09  Andrew Burgess  <andrew.burgess@embecosm.com>
4985
4986         * valarith.c (value_subscripted_rvalue): If an array is not in
4987         memory, and we don't know the upper bound, then we can't know that
4988         the requested element exists or not.
4989
4990 2018-08-08  Simon Marchi  <simon.marchi@ericsson.com>
4991
4992         * target.c (str_comma_list_concat_elem): Fix typo in comment.
4993         (target_options_to_string): Add comment.
4994
4995 2018-08-08  Tom Tromey  <tom@tromey.com>
4996
4997         * unittests/scoped_mmap-selftests.c: Check result of "write".
4998
4999 2018-08-08  Jim Wilson  <jimw@sifive.com>
5000
5001         * riscv-tdep.c (enum opcode): Add jump, branch, lr, and sc opcodes.
5002         (decode_register_index_short): New.
5003         (decode_j_type_insn, decode_cj_type_insn): New.
5004         (decode_b_type_insn, decode_cb_type_insn): New.
5005         (riscv_insn::decode): Add support for jumps, branches, lr, and sc.  New
5006         local xlen.  Check xlen when decoding ambiguous compressed insns.  In
5007         compressed decode, use is_c_lui_insn instead of is_lui_insn, and
5008         is_c_sw_insn instead of is_sw_insn.
5009         (riscv_next_pc, riscv_next_pc_atomic_sequence): New.
5010         (riscv_software_single_step): New.
5011         * riscv-tdep.h (riscv_software_single_step): Declare.
5012
5013         * riscv-tdep.c (riscv_isa_xlen): Drop static.
5014         * riscv-tdep.h (riscv_isa_xlen): Add extern declaration.
5015
5016 2018-08-08  Andrew Burgess  <andrew.burgess@embecosm.com>
5017
5018         PR gdb/18050:
5019         * target.c (dispose_inferior): Don't dispose of inferiors that are
5020         already killed.
5021
5022 2018-08-08  Szabolcs Nagy  <szabolcs.nagy@arm.com>
5023
5024         * remote.c (remote_target::download_tracepoint): Change char* to
5025         const char*.
5026
5027 2018-08-07  Simon Marchi  <simon.marchi@polymtl.ca>
5028
5029         * target.h (target_options_to_string): Return an std::string.
5030         * target.c (str_comma_list_concat_elem): Return void, use
5031         std::string.
5032         (do_option): Likewise.
5033         (target_options_to_string): Return an std::string.
5034         * linux-nat.c (linux_nat_target::wait): Adjust.
5035         * target-debug.h (target_debug_print_options): Adjust.
5036
5037 2018-08-07  Tom Tromey  <tom@tromey.com>
5038
5039         * Makefile.in (CPPFLAGS): New variable.
5040         (INTERNAL_CPPFLAGS): Use it.
5041
5042 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5043
5044         * NEWS: Mention the index cache.
5045
5046 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5047
5048         * common/pathstuff.h (get_standard_cache_dir): New.
5049         * common/pathstuff.c (get_standard_cache_dir): New.
5050         * build-id.h (build_id_to_string): New.
5051         * dwarf-index-common.h (INDEX4_SUFFIX, INDEX5_SUFFIX,
5052         DEBUG_STR_SUFFIX): Move to here.
5053         * dwarf-index-write.c (INDEX4_SUFFIX, INDEX5_SUFFIX,
5054         DEBUG_STR_SUFFIX): Move from there.
5055         (write_psymtabs_to_index): Make non-static, add basename
5056         parameter.  Write to temporary files, rename when done.
5057         (save_gdb_index_command): Adjust call to
5058         write_psymtabs_to_index.
5059         * dwarf2read.h (dwarf2_per_objfile) <index_cache_res>: New
5060         field.
5061         * dwarf2read.c (dwz_file) <index_cache_res>: New field.
5062         (get_gdb_index_contents_from_cache): New.
5063         (get_gdb_index_contents_from_cache_dwz): New.
5064         (dwarf2_initialize_objfile): Read index from cache.
5065         (dwarf2_build_psymtabs): Save to index.
5066         * dwarf-index-cache.h: New file.
5067         * dwarf-index-cache.c: New file.
5068         * dwarf-index-write.h: New file.
5069
5070 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5071
5072         * gnulib/aclocal.m4: Re-generate.
5073         * gnulib/config.in: Re-generate.
5074         * gnulib/configure: Re-generate.
5075         * gnulib/import/Makefile.am: Re-generate.
5076         * gnulib/import/Makefile.in: Re-generate.
5077         * gnulib/import/m4/gnulib-cache.m4: Re-generate.
5078         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5079         * gnulib/import/m4/mkdir.m4: New file.
5080         * gnulib/import/mkdir.c: New file.
5081         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkdir
5082         module.
5083
5084 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5085
5086         * Makefile.in (COMMON_SFILES): Add common/scoped_mmap.c.
5087         * common/scoped_mmap.c: New file.
5088         * common/scoped_mmap.h (destroy): New method.
5089         (~scoped_mmap, reset): Use destroy.
5090         (scoped_mmap): New move constructor.
5091         (mmap_file): New declaration.
5092         * unittests/scoped_mmap-selftests.c (test_normal,
5093         test_invalid_filename, run_tests): New functions.
5094         (_initialize_scoped_mmap_selftests): Register selftest.
5095
5096 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5097
5098         * dwarf2read.c (read_gdb_index_from_section): Rename to...
5099         (read_gdb_index_from_buffer): ... this.  Remove section
5100         parameter, add buffer parameter.
5101         (get_gdb_index_contents_ftype,
5102         get_gdb_index_contents_dwz_ftype): New typedefs.
5103         (dwarf2_read_gdb_index): Add callback parameters to get the
5104         index contents.
5105         (get_gdb_index_contents_from_section): New.
5106         (dwarf2_initialize_objfile): Update call to
5107         dwarf2_read_gdb_index.
5108
5109 2018-08-07  Simon Marchi  <simon.marchi@ericsson.com>
5110
5111         * common/filestuff.h (gdb_fopen_cloexec): New overload.
5112         (gdb_open_cloexec): Likewise.
5113         * nat/linux-osdata.c (command_from_pid): Use string_printf.
5114         (commandline_from_pid): Likewise.
5115         (linux_xfer_osdata_threads): Likewise.
5116         (linux_xfer_osdata_fds): Likewise.
5117         * ada-lang.c (is_package_name): Likewise.
5118         * auxv.c (procfs_xfer_auxv): Likewise.
5119         * breakpoint.c (print_one_breakpoint_location): Use
5120         uiout::field_fmt.
5121         (print_one_catch_solib): Use string_printf.
5122         * coff-pe-read.c (add_pe_exported_sym): Likewise.
5123         (add_pe_forwarded_sym): Likewise.
5124         * dwarf2read.c (create_type_unit_group): Likewise.
5125         (build_error_marker_type): Likewise.
5126         * infcall.c (get_function_name): Likewise.
5127         * valprint.c (print_converted_chars_to_obstack): Likewise.
5128         * xtensa-tdep.c (xtensa_register_type): Likewise.
5129
5130 2018-08-06  Simon Marchi  <simon.marchi@ericsson.com>
5131
5132         * remote.c (remote_target::download_tracepoint): Fix format
5133         string errors.
5134
5135 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5136
5137         * tracefile.c: Include common/byte-vector.h.
5138         (trace_save): Change type of buf to gdb::byte_vector.  Initialize
5139         with trace_regblock_size if needed.  Update uses of buf.
5140
5141 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5142
5143         * tracepoint.h (collection_list) <m_regs_mask>: Change type to
5144         std::vector<unsigned char>.
5145         * tracepoint.c (collection_list::collection_list): Remove
5146         m_regs_mask initializer from initializer list.  Resize
5147         m_regs_mask using the largest remote register number.
5148         (collection_list::add_remote_register): Remove size check on
5149         m_regs_mask.  Use at to access element.
5150         (collection_list::stringify): Change type of temp_buf to
5151         gdb::char_vector.  Update uses of temp_buf.  Resize if needed to
5152         stringify the register mask.  Use pack_hex_byte for the register
5153         mask.
5154
5155 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5156
5157         * tracepoint.h (class collection_list) <add_register>: Remove.
5158         <add_remote_register, add_ax_registers, add_local_register>:
5159         Declare.
5160         <add_memrange>: Add scope parameter.
5161         * tracepoint.c (encode_actions_1): Likewise.
5162         (collection_list::add_register): Rename to ...
5163         (collection_list::add_remote_register): ... this.  Update
5164         comment.
5165         (collection_list::add_ax_registers, add_local_register): New
5166         methods.
5167         (collection_list::add_memrange): Add scope parameter.  Call
5168         add_local_register instead of add_register.
5169         (finalize_tracepoint_aexpr): New function.
5170         (collection_list::collect_symbol): Update calls to add_memrange.
5171         Call add_local_register instead of add_register.  Call
5172         add_ax_registers.  Call finalize_tracepoint_aexpr.
5173         (encode_actions_1): Get remote regnos for $reg action.  Call
5174         add_remote_register, add_ax_registers, and add_local_register.
5175         Update call to add_memrange.  Call finalize_tracepoint_aexpr.
5176         (validate_actionline): Call finalize_tracepoint_aexpr.
5177
5178 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5179
5180         * remote.c (remote_target::download_tracepoint): Remove BUF_SIZE.
5181         Replace array buf with gdb::char_vector buf, of size
5182         get_remote_packet_size ().  Replace references to buf and
5183         BUF_SIZE to buf.data () and buf.size ().  Replace strcpy, strcat
5184         and xsnprintf with snprintf.  Raise errors if the buffer is too
5185         small.
5186
5187 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5188
5189         * remote.c (remote_target::download_tracepoint): Fix the has_more
5190         predicate in the QTDP action list iteration.
5191
5192 2018-08-06  Pedro Franco de Carvalho  <pedromfc@linux.ibm.com>
5193
5194         * remote.c (remote_target::download_tracepoint): Fix indentation
5195         in for block.
5196
5197 2018-08-06  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
5198
5199         * proc-api.c (_initialize_proc_api): Remove c, unused.
5200         * procfs.c (procfs_init_inferior): Remove signals, unused.
5201         (procfs_target::make_corefile_notes): Remove old_chain, fpregs,
5202         unused.
5203
5204 2018-08-06  Sergey Korolev  <s.korolev@ndmsystems.com>
5205             Andrew Burgess  <andrew.burgess@embecosm.com>
5206
5207         * linux-nat.c (linux_nat_target::follow_fork): Avoid using
5208         'W_STOPCODE (0)' as this could be ambiguous.
5209
5210 2018-08-03  Sergio Durigan Junior  <sergiodj@redhat.com>
5211
5212         * ser-tcp.c (net_open): Fix thinko when deciding whether to
5213         disable TCP's Nagle algorithm (use "ai_protocol" instead of
5214         "ai_socktype").
5215
5216 2018-08-02  Tom Tromey  <tom@tromey.com>
5217
5218         PR symtab/16842.
5219         * dwarf2read.c (read_func_scope): Set symtab on template parameter
5220         symbols.
5221         (process_structure_scope): Likewise.
5222
5223 2018-08-02  Xavier Roirand  <roirand@adacore.com>
5224
5225         PR gdb/22629:
5226         * darwin-nat.c (darwin_kill_inferior): Fix handling of
5227         kill inferior.
5228
5229 2018-08-02  Tom Tromey  <tom@tromey.com>
5230
5231         * darwin-nat.c (find_inferior_task_it, darwin_find_thread)
5232         (darwin_suspend_inferior, darwin_resume_inferior)
5233         (darwin_decode_notify_message, darwin_resume_inferior_threads)
5234         (darwin_check_new_threads): Check result of get_darwin_inferior.
5235
5236 2018-07-31  Joel Brobecker  <brobecker@adacore.com>
5237
5238         GDB 8.1.1 released.
5239
5240 2018-07-31  Jan Vrany  <jan.vrany@fit.cvut.cz>
5241
5242         * varobj.c (varobj_get_path_expr_parent): Report an error if
5243         parent is a dynamic varobj.
5244
5245 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5246
5247         * gnulib/aclocal.m4: Re-generate.
5248         * gnulib/config.in: Re-generate.
5249         * gnulib/configure: Re-generate.
5250         * gnulib/import/Makefile.in: Re-generate.
5251         * gnulib/import/m4/gnulib-comp.m4: Re-generate.
5252         * gnulib/import/m4/onceonly.m4: Re-generate.
5253
5254 2018-07-31  Simon Marchi  <simon.marchi@ericsson.com>
5255
5256         * target-descriptions.c (struct xml_test_tdesc): New.
5257         (xml_tdesc): Change type to std::vector<xml_test_tdesc>.
5258         (record_xml_tdesc): Update.
5259         (maintenance_check_xml_descriptions): Update.
5260         * target-descriptions.h (record_xml_tdesc): Update comment.
5261
5262 2018-07-30  Andrew Burgess  <andrew.burgess@embecosm.com>
5263
5264         * eval.c (evaluate_subexp_for_sizeof): Check for array type before
5265         checking array bounds are defined.
5266
5267 2018-07-30  Tom Tromey  <tom@tromey.com>
5268
5269         * nat/linux-osdata.c (pid_pgid_entry::operator<): Fix
5270         irreflexivity violation.
5271
5272 2018-07-30  Tom Tromey  <tom@tromey.com>
5273
5274         * cli/cli-decode.c (lookup_cmd): Remove lint code.
5275         * value.c (unpack_long): Remove lint code.
5276         * valops.c (value_ind): Remove lint code.
5277         * valarith.c (value_x_binop, value_x_unop, value_equal)
5278         (value_pos): Remove lint code.
5279
5280 2018-07-28  Tom de Vries  <tdevries@suse.de>
5281
5282         * eval.c (evaluate_subexp_for_sizeof): Interpret size of dynamic type
5283         with undefined upper bound as <optimized out>.
5284
5285 2018-07-27  Sergio Durigan Junior  <sergiodj@redhat.com>
5286
5287         * gcore.in: Rename variable "name" to "prefix".  Expand
5288         "usage" text.
5289
5290 2018-07-14  Jon Turney  <jon.turney@dronecode.org.uk>
5291
5292         * windows-nat.c (windows_nat_target::create_inferior): Update to
5293         call close() in global namespace.
5294
5295 2018-07-26  Tom Tromey  <tom@tromey.com>
5296
5297         * dwarf-index-write.c (add_address_entry): Don't add objfile
5298         offsets.
5299         * dbxread.c (find_stab_function): Rename from
5300         find_stab_function_addr.  Return a bound_minimal_symbol.
5301         (read_dbx_symtab): Use raw_text_low, raw_text_high.
5302         Don't add objfile offsets.
5303         (end_psymtab): Use raw_text_low, raw_text_high,
5304         MSYMBOL_VALUE_RAW_ADDRESS.
5305         (read_ofile_symtab): Update.
5306         (process_one_symbol): Update.
5307         * dwarf2read.c (create_addrmap_from_index): Don't add objfile
5308         offsets.
5309         (dw2_relocate): Remove.
5310         (dw2_find_pc_sect_symtab): Bias PC by the text offset before
5311         searching addrmap.
5312         (dwarf2_gdb_index_functions, dwarf2_debug_names_functions):
5313         Update.
5314         (process_psymtab_comp_unit_reader, add_partial_symbol)
5315         (add_partial_subprogram, dwarf2_ranges_read): Update.
5316         (load_partial_dies): Update.
5317         (add_address_entry): Don't add objfile offsets.
5318         (dwarf2_build_include_psymtabs): Update.
5319         (create_addrmap_from_aranges): Don't add objfile offsets.
5320         (dw2_find_pc_sect_compunit_symtab): Update.
5321         * mdebugread.c (parse_symbol): Don't add objfile offsets.
5322         (parse_lines): Remove 'pst' parameter, replace with 'textlow'.
5323         Update.
5324         (parse_partial_symbols): Don't add objfile offsets.  Use
5325         raw_text_low, raw_text_high.  Update.
5326         (handle_psymbol_enumerators, psymtab_to_symtab_1): Update.
5327         * objfiles.c (objfile_relocate1): Don't relocate psymtabs_addrmap
5328         or call 'relocate' quick function.  Clear psymbol_map.
5329         * psympriv.h (struct partial_symbol) <address>: Add section
5330         offset.
5331         <set_unrelocated_address>: Rename from set_address.
5332         <raw_text_low, raw_text_high>: New methods.
5333         <text_low, text_high>: Add objfile parameter.
5334         (add_psymbol_to_bcache): Add 'section' parameter.  Call
5335         set_unrelocated_address.
5336         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5337         (find_pc_psymbol): Update.
5338         (fixup_psymbol_section, relocate_psymtabs): Remove.
5339         (dump_psymtab, psym_functions): Update.
5340         (add_psymbol_to_bcache, add_psymbol_to_list): Add 'section'
5341         parameter.
5342         (maintenance_info_psymtabs, maintenance_check_psymtabs): Update.
5343         (start_psymtab_common): Update.
5344         * symfile-debug.c (debug_qf_relocate): Remove.
5345         (debug_sym_quick_functions): Update.
5346         * symfile.h (struct quick_symbol_functions) <relocate>: Remove.
5347         * xcoffread.c (scan_xcoff_symtab): Don't add objfile offsets.
5348         Update.
5349
5350 2018-07-26  Tom Tromey  <tromey@redhat.com>
5351
5352         * dbxread.c (end_psymtab): Use text_high_valid and
5353         text_low_valid.
5354         * mdebugread.c (parse_partial_symbols): Use text_low_valid.
5355         (psymtab_to_symtab_1): Use text_high_valid and text_low_valid.
5356         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5357         Update comment.
5358         <text_low_valid, text_high_valid>: New fields.
5359         <set_text_low, set_text_high>: Update.
5360         * xcoffread.c (scan_xcoff_symtab): Use text_low_valid.
5361
5362 2018-07-26  Tom Tromey  <tom@tromey.com>
5363
5364         * dbxread.c (read_dbx_symtab, end_psymtab, read_ofile_symtab):
5365         Update.
5366         * dwarf2read.c (dwarf2_create_include_psymtab): Don't initialize
5367         textlow and texthigh fields.
5368         (process_psymtab_comp_unit_reader, dwarf2_build_include_psymtabs):
5369         Update.
5370         * mdebugread.c (parse_lines, parse_partial_symbols)
5371         (psymtab_to_symtab_1): Update.
5372         * psympriv.h (struct partial_symtab) <m_text_low, m_text_high>:
5373         Rename fields.  Update comment.  Now private.
5374         <text_low, text_high, set_text_low, set_text_high>: New methods.
5375         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5376         (find_pc_sect_psymbol, relocate_psymtabs, dump_psymtab)
5377         (start_psymtab_common, maintenance_info_psymtabs)
5378         (maintenance_check_psymtabs): Update.
5379         * xcoffread.c (xcoff_end_psymtab): Don't initialize textlow and
5380         texthigh fields.
5381         (scan_xcoff_symtab): Update.
5382
5383 2018-07-26  Tom Tromey  <tromey@redhat.com>
5384
5385         * psympriv.h (struct partial_symbol) <unrelocated_address,
5386         address, set_address>: New methods.
5387         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymbol)
5388         (fixup_psymbol_section, relocate_psymtabs): Update.
5389         (print_partial_symbols): Add 'objfile' parameter.  Update.
5390         (dump_psymtab, add_psymbol_to_bcache, psym_fill_psymbol_map):
5391         Update.
5392
5393 2018-07-26  Tom Tromey  <tom@tromey.com>
5394
5395         * dwarf-index-write.c (write_psymbols, debug_names::insert)
5396         (debug_names::write_psymbols): Update.
5397         * psympriv.h (struct partial_symbol): Derive from
5398         general_symbol_info.
5399         <obj_section>: New method.
5400         (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.n
5401         * psymtab.c (find_pc_sect_psymtab_closer, find_pc_sect_psymtab)
5402         (find_pc_sect_psymbol, fixup_psymbol_section)
5403         (match_partial_symbol, lookup_partial_symbol, relocate_psymtabs)
5404         (print_partial_symbols, recursively_search_psymtabs)
5405         (compare_psymbols, psymbol_hash, psymbol_compare)
5406         (add_psymbol_to_bcache, maintenance_check_psymtabs)
5407         (psymbol_name_matches, psym_fill_psymbol_map): Update.
5408
5409 2018-07-26  Tom Tromey  <tromey@redhat.com>
5410
5411         * dbxread.c (end_psymtab): Remove dead code.
5412
5413 2018-07-26  Andrew Burgess  <andrew.burgess@embecosm.com>
5414
5415         * dwarf2-frame-tailcall.c (tailcall_frame_sniffer): Exit early if
5416         DWARF unwinders are disabled.
5417         * dwarf2-frame.c: Add dwarf2read.h include.
5418         (dwarf2_frame_sniffer): Exit early if DWARF unwinders are
5419         disabled.
5420         (dwarf2_frame_unwinders_enabled_p): Define.
5421         (show_dwarf_unwinders_enabled_p): New function.
5422         (_initialize_dwarf2_frame): Register switch to control DWARF
5423         unwinder use.
5424         * dwarf2-frame.h (dwarf2_frame_unwinders_enabled_p): Declare.
5425         * dwarf2read.c (set_dwarf_cmdlist): Remove static keyword.
5426         (show_dwarf_cmdlist): Remove static keyword.
5427         * dwarf2read.h (set_dwarf_cmdlist): Declare.
5428         (show_dwarf_cmdlist): Declare.
5429         * NEWS: Document new feature.
5430
5431 2018-07-26  Tom de Vries  <tdevries@suse.de>
5432
5433         PR breakpoints/23366
5434         * infcmd.c (info_program_command): Handle ptid == minus_one_ptid.
5435
5436 2018-07-26  Tom de Vries  <tdevries@suse.de>
5437
5438         * dwarf2read.c (read_subrange_type): Warn if DW_AT_upper_bound or
5439         DW_AT_count can't be translated to a dynamic prop.
5440
5441 2018-07-25  Tom de Vries  <tdevries@suse.de>
5442
5443         * dwarf2loc.c (dwarf2_locexpr_baton_eval): Wrap ctx.eval call in
5444         try/catch.
5445
5446 2018-07-25  Jan Vrany  <jan.vrany@fit.cvut.cz>
5447
5448         * breakpoint.c (enable_disable_bp_num_loc): Notify observers.
5449
5450 2018-07-25  Joel Brobecker  <brobecker@adacore.com>
5451
5452         * MAINTAINERS (Global Maintainers): Add Tom Tromey.
5453
5454 2018-07-24  Keith Seitz  <keiths@redhat.comt
5455
5456         PR symtab/23010
5457         * dwarf2read.c (dw2_add_symbol_to_list): New function.
5458         (fixup_go_packaging, new_symbol): Use dw2_add_symbol_to_list
5459         instead of add_symbol_to_list.
5460         (read_file_scope): Call prepare_one_comp_unit before reading
5461         any other DIEs.
5462
5463 2018-07-24  Simon Marchi  <simon.marchi@ericsson.com>
5464
5465         * common/scoped_mmap.h (class scoped_mmap): Fix indentation.
5466
5467 2018-07-24  Tom Tromey  <tom@tromey.com>
5468
5469         * utils.c (malloc, realloc, free): Don't declare.
5470         * configure, config.in: Rebuild.
5471         * configure.ac: Don't check for declarations of free, malloc, or
5472         realloc.
5473
5474 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5475
5476         * aarch64-linux-nat.c
5477         (aarch64_linux_nat_target::stopped_data_address): Remove unused
5478         variable.
5479         * arm-linux-nat.c (fetch_regs): Likewise.
5480         (store_regs): Likewise.
5481         (fetch_vfp_regs): Likewise.
5482         (store_vfp_regs): Likewise.
5483         (arm_linux_nat_target::insert_hw_breakpoint): Likewise.
5484         (arm_linux_nat_target::remove_hw_breakpoint): Likewise.
5485         (arm_linux_nat_target::insert_watchpoint): Likewise.
5486         (arm_linux_nat_target::remove_watchpoint): Likewise.
5487         * mips-linux-nat.c (mips_linux_nat_target::insert_watchpoint):
5488         Likewise.
5489         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs):
5490         Likewise.
5491         * ppc-linux-nat.c (fetch_register): Likewise.
5492         (fetch_all_gp_regs): Likewise.
5493         (fetch_ppc_registers): Likewise.
5494         (store_all_gp_regs): Likewise.
5495         (store_ppc_registers): Likewise.
5496         (hwdebug_insert_point): Likewise.
5497         (can_use_watchpoint_cond_accel): Likewise.
5498         * remote-sim.c (gdb_os_write_stdout): Likewise.
5499
5500 2018-07-22  Simon Marchi  <simon.marchi@polymtl.ca>
5501             Tom Tromey  <tom@tromey.com>
5502
5503         * warning.m4 (AM_GDB_WARNINGS): Add -Wunused-variable and special
5504         test for it.
5505         * configure: Rebuild.
5506
5507 2018-07-22  Tom Tromey  <tom@tromey.com>
5508
5509         * regformats/regdat.sh: Define xmltarget_${name} inside
5510         #ifndef IN_PROCESS_AGENT.
5511
5512 2018-07-22  Tom Tromey  <tom@tromey.com>
5513
5514         * value.c (value_fetch_lazy_bitfield): Remove unused variable.
5515
5516 2018-07-22  Tom Tromey  <tom@tromey.com>
5517
5518         * symfile.c (reread_symbols): Notify iter, not objfile.
5519
5520 2018-07-22  Tom Tromey  <tom@tromey.com>
5521
5522         * ravenscar-thread.c (ravenscar_thread_target::store_registers):
5523         Use arch_ops.
5524         (ravenscar_thread_target::prepare_to_store): Likewise.
5525
5526 2018-07-22  Tom Tromey  <tom@tromey.com>
5527
5528         * python/py-prettyprint.c (gdbpy_apply_val_pretty_printer): Remove
5529         unused variable.  Call value_fetch_lazy when needed.
5530         * guile/scm-pretty-print.c (gdbscm_apply_val_pretty_printer):
5531         Remove unused variable.  Call value_fetch_lazy when needed.
5532
5533 2018-07-22  Tom Tromey  <tom@tromey.com>
5534
5535         * m32c-tdep.c (mark_dma): Return void.
5536         (make_regs): Remove unused declarations.
5537
5538 2018-07-22  Tom Tromey  <tom@tromey.com>
5539
5540         * guile/scm-cmd.c (gdbscm_dont_repeat): Call
5541         cmdscm_get_valid_command_smob_arg_unsafe for effect.
5542         * guile/scm-block.c (gdbscm_make_block_syms_iter): Call
5543         bkscm_get_valid_block_smob_arg_unsafe for effect.
5544
5545 2018-07-22  Tom Tromey  <tom@tromey.com>
5546
5547         * bfin-tdep.c (bfin_push_dummy_call): Use arg_type, not
5548         value_type.
5549
5550 2018-07-22  Tom Tromey  <tom@tromey.com>
5551
5552         * windows-nat.c (saved_context): Conditionally define.
5553         * remote.c (remote_target::remote_btrace_maybe_reopen):
5554         Conditionally declare "warned".
5555         * inflow.c (sigquit_ours): Conditionally define.
5556         (new_tty): Move "tty" declaration inside #if.
5557         * guile/guile.c (guile_datadir): Conditionally define.
5558         * charset.c (set_be_le_names): Move some declarations inside #if.
5559         * btrace.c (parse_xml_btrace): Move "errcode" declaration inside
5560         #if.
5561         (parse_xml_btrace_conf): Likewise.
5562
5563 2018-07-22  Tom Tromey  <tom@tromey.com>
5564
5565         * spu-tdep.c (spu_get_overlay_table): Remove unused variable.
5566
5567 2018-07-22  Tom Tromey  <tom@tromey.com>
5568
5569         * guile/scm-value.c (gdbscm_value_call): Remove unused variables.
5570         * guile/scm-math.c (vlscm_unop_gdbthrow, vlscm_binop_gdbthrow)
5571         (vlscm_convert_typed_value_from_scheme): Remove unused variable.
5572         * buildsym-legacy.c (get_macro_table): Remove unused variable.
5573         * stack.c (frame_apply_level_command): Remove unused variable.
5574         * tic6x-tdep.c (tic6x_push_dummy_call): Remove unused variable.
5575         * sparc64-tdep.c (adi_examine_command): Remove unused variable.
5576         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Remove
5577         unused variable.
5578         * nios2-tdep.c (nios2_push_dummy_call): Remove unused variable.
5579         * mep-tdep.c (mep_push_dummy_call): Remove unused variable.
5580         * ada-lang.c (ada_lookup_symbol_list_worker): Remove unused
5581         variable.
5582         * amd64-tdep.c (amd64_supply_xsave): Remove unused variable.
5583         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Remove unused
5584         variable.
5585         * breakpoint.c (check_no_tracepoint_commands, update_watchpoint):
5586         Remove unused variable.
5587         * cli/cli-script.c (recurse_read_control_structure): Remove unused
5588         variable.
5589         * common/tdesc.c (print_xml_feature::visit): Remove unused
5590         variable.
5591         * compile/compile-object-load.c (store_regs): Remove unused
5592         variables.
5593         * complaints.c (clear_complaints): Remove unused variable.
5594         * corelow.c (core_target_open): Remove unused variable.
5595         * fbsd-tdep.c (fbsd_core_info_proc_status): Remove unused
5596         variable.
5597         * guile/scm-frame.c (gdbscm_frame_read_var): Remove unused
5598         variable.
5599         * guile/scm-symtab.c (stscm_print_sal_smob): Remove unused
5600         variable.
5601         * guile/scm-type.c (gdbscm_field_baseclass_p): Remove unused
5602         variable.
5603         * guile/scm-utils.c (gdbscm_parse_function_args): Remove unused
5604         variable.
5605         * hppa-tdep.c (hppa_stub_frame_unwind_cache): Remove unused
5606         variable.
5607         * ia64-tdep.c (examine_prologue): Remove unused variable.
5608         * infcall.c (run_inferior_call): Remove unused variable.
5609         * inferior.c (exit_inferior): Remove unused variable.
5610         * infrun.c (infrun_thread_ptid_changed): Remove unused variable.
5611         * linespec.c (decode_line_2): Remove unused variable.
5612         * linux-nat.c (super_close): Remove.
5613         * linux-tdep.c (linux_info_proc): Remove unused variable.
5614         * mi/mi-main.c (mi_execute_command): Remove unused variable.
5615         * microblaze-linux-tdep.c (microblaze_linux_sigtramp_cache):
5616         Remove unused variable.
5617         * parse.c (find_minsym_type_and_address): Remove unused variable.
5618         * printcmd.c (info_symbol_command, printf_floating): Remove unused
5619         variable.
5620         * python/py-breakpoint.c (bppy_set_commands): Remove unused
5621         variable.
5622         * python/py-unwind.c (unwind_infopy_dealloc): Remove unused
5623         variables.
5624         * record-btrace.c (record_btrace_target::store_registers): Remove
5625         unused variable.
5626         (cmd_show_record_btrace_cpu): Remove unused variable.
5627         * riscv-tdep.c (riscv_register_reggroup_p)
5628         (riscv_push_dummy_call, riscv_return_value): Remove unused
5629         variable.
5630         * rust-exp.y (literal): Remove unused variable.
5631         * rust-lang.c (rust_evaluate_subexp) <OP_RUST_ARARAY>: Remove
5632         unused variable.
5633         <STRUCTOP_ANONYMOUS>: Likewise.
5634         * s390-linux-tdep.c (s390_linux_init_abi_31)
5635         (s390_linux_init_abi_64): Remove unused variable.
5636         * ser-ming2.c (ser_windows_read_prim, pipe_select_thread)
5637         (file_select_thread, net_windows_open, _initialize_ser_windows):
5638         Remove unused variables.
5639         * symtab.c (find_pc_sect_line): Remove unused variable.
5640         * target-memory.c (compute_garbled_blocks): Remove unused
5641         variable.
5642         (target_write_memory_blocks): Remove unused variable.
5643         * target.c (target_stack::unpush): Remove unused variables.
5644         * tracepoint.c (start_tracing, all_tracepoint_actions)
5645         (merge_uploaded_trace_state_variables)
5646         (print_one_static_tracepoint_marker): Remove unused variable.
5647         * unittests/basic_string_view/element_access/char/1.cc (test01):
5648         Remove unused variable.
5649         * windows-nat.c (windows_continue, windows_add_all_dlls)
5650         (do_initial_windows_stuff, windows_nat_target::create_inferior):
5651         Remove unused variables.
5652
5653 2018-07-21  Simon Marchi  <simon.marchi@polymtl.ca>
5654
5655         * arm-tdep.c (arm_gdbarch_init): Declare attr_arch and
5656         attr_profile in HAVE_ELF.
5657         * rs6000-tdep.c (bfd_uses_spe_extensions): Declare vector_abi in
5658         HAVE_ELF.
5659
5660 2018-07-20  Simon Marchi  <simon.marchi@polymtl.ca>
5661
5662         * frame.c (frame_register_unwind): Change parameter name.
5663         (frame_unwind_register): Likewise.
5664         (frame_unwind_register_value): Likewise.
5665         (frame_unwind_register_signed): Likewise.
5666         (frame_unwind_register_unsigned): Likewise.
5667         * frame.h (frame_register_unwind): Likewise.
5668         (frame_unwind_register): Likewise.
5669         (frame_unwind_register_value): Likewise.
5670         (frame_unwind_register_signed): Likewise.
5671         (frame_unwind_register_unsigned): Likewise.
5672         (frame_unwind_arch): Likewise.
5673
5674 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5675
5676         * MAINTAINERS: Update my e-mail address, downgrade to MIPS I-IV
5677         ISA maintenance.
5678
5679 2018-07-20  Maciej W. Rozycki  <macro@mips.com>
5680
5681         * mips-linux-nat.c (mips_linux_nat_target::read_description):
5682         Call `get_ptrace_pid' rather than extracting the ptrace PID by
5683         hand.
5684
5685 2018-07-20  Keith Seitz  <keiths@redhat.com>
5686
5687         * buildsym.h (struct buildsym_compunit) <m_objfile, m_subfiles,
5688         m_main_subfile, m_comp_dir, m_producer, m_debugformat,
5689         m_compunit_symtab, m_language>: Add "m_" prefix.
5690         Update all uses.
5691         * buildsym.c: Update all uses.
5692
5693 2018-07-20  Tom Tromey  <tom@tromey.com>
5694
5695         * buildsym-legacy.h (record_line): Don't use record_line_ftype.
5696         * buildsym.h (record_line_ftype): Remove typedef.
5697
5698 2018-07-20  Tom Tromey  <tom@tromey.com>
5699
5700         * buildsym-legacy.h (augment_type_symtab): Don't declare.
5701         (end_expandable_symtab): Likewise.
5702         (end_symtab_get_static_block): Likewise.
5703         (end_symtab_from_static_block): Likewise.
5704         * buildsym-legacy.c (augment_type_symtab): Remove.
5705         (end_expandable_symtab): Remove.
5706         (end_symtab_get_static_block): Remove.
5707         (end_symtab_from_static_block): Remove.
5708
5709 2018-07-20  Tom Tromey  <tom@tromey.com>
5710
5711         * dwarf2read.c: Include buildsym.h.
5712         (struct dwarf2_cu) <builder>: New method.
5713         (fixup_go_packaging): Update.
5714         (process_full_comp_unit, process_full_type_unit): Update.  Don't
5715         use scoped_free_pendings.
5716         (using_directives): Add "cu" parameter, remove "language".
5717         (read_import_statement, setup_type_unit_groups, )
5718         (read_func_scope, read_lexical_block_scope)
5719         (dwarf2_record_block_ranges, read_namespace): Update.
5720         (lnp_state_machine::lnp_state_machine): Add cu parameter.
5721         (lnp_state_machine::handle_end_sequence): Update.
5722         (class lnp_state_machine) <m_cu>: New member.
5723         <m_record_line_callback>: Remove.
5724         <m_currently_recording_lines>: New member.
5725         (lnp_state_machine::handle_set_file): Update.
5726         (noop_record_line): Remove.
5727         (dwarf_record_line_p): Add cu parameter.
5728         (dwarf_record_line_1, dwarf_finish_line): Likewise.
5729         (lnp_state_machine::record_line)
5730         (lnp_state_machine::lnp_state_machine)
5731         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
5732         (dwarf_decode_lines): Update.
5733         (dwarf2_start_subfile): Add cu parameter.
5734         (dwarf2_start_symtab, new_symbol): Update.
5735         (macro_start_file, dwarf_decode_macro_bytes): Add cu parameter.
5736         Remove dwarf2_per_objfile parameter.
5737         (dwarf_decode_macros): Update.
5738
5739 2018-07-20  Tom Tromey  <tom@tromey.com>
5740
5741         * stabsread.c (define_symbol): Update.
5742         * buildsym-legacy.h (get_buildsym_compunit): Declare.
5743         * dwarf2read.c (new_symbol): Update.
5744         * cp-support.h (cp_scan_for_anonymous_namespaces): Update.
5745         * cp-namespace.c: Include buildsym.h.
5746         (cp_scan_for_anonymous_namespaces): Add "compunit" parameter.
5747         * buildsym-legacy.c (get_buildsym_compunit): New function.
5748
5749 2018-07-20  Tom Tromey  <tom@tromey.com>
5750
5751         * xcoffread.c: Include buildsym-legacy.h.
5752         * windows-nat.c: Include buildsym-legacy.h.
5753         * stabsread.c: Include buildsym-legacy.h.
5754         * mdebugread.c: Include buildsym-legacy.h.
5755         * buildsym-legacy.h: New file.
5756         * buildsym-legacy.c: New file, from buildsym.c.
5757         * go32-nat.c: Include buildsym-legacy.h.
5758         * dwarf2read.c: Include buildsym-legacy.h.
5759         * dbxread.c: Include buildsym-legacy.h.
5760         * cp-namespace.c: Include buildsym-legacy.h.
5761         * coffread.c: Include buildsym-legacy.h.
5762         * buildsym.h: Move some contents to buildsym-legacy.h.
5763         * buildsym.c: Include buildsym-legacy.h.  Move many functions to
5764         buildsym-legacy.c.
5765         * Makefile.in (HFILES_NO_SRCDIR): Add buildsym-legacy.h.
5766
5767 2018-07-20  Tom Tromey  <tom@tromey.com>
5768
5769         * buildsym.h (struct buildsym_compunit): Move from buildsym.c.
5770         * buildsym.c (struct buildsym_compunit): Move to buildsym.h.
5771         (buildsym_compunit::buildsym_compunit)
5772         (buildsym_compunit::~buildsym_compunit)
5773         (buildsym_compunit::get_macro_table): Define.
5774
5775 2018-07-20  Tom Tromey  <tom@tromey.com>
5776
5777         * buildsym.c (reset_symtab_globals): Remove.
5778         (buildsym_compunit::end_symtab_from_static_block): Update.
5779         (buildsym_compunit::augment_type_symtab): Update.
5780         (end_symtab_from_static_block): Call free_buildsym_compunit.
5781         (augment_type_symtab, end_symtab, end_expandable_symtab):
5782         Likewise.
5783
5784 2018-07-20  Tom Tromey  <tom@tromey.com>
5785
5786         * arch-utils.c: Do not include buildsym.h.
5787         * mipsread.c: Do not include buildsym.h.
5788         * machoread.c: Do not include buildsym.h.
5789         * elfread.c: Do not include buildsym.h.
5790
5791 2018-07-20  Tom Tromey  <tom@tromey.com>
5792
5793         * buildsym.c (buildsym_compunit::buildsym_compunit): Do more
5794         initialization.
5795         (buildsym_compunit): Add new constructor.
5796         (struct buildsym_compunit) <get_last_source_file, finish_block,
5797         record_block_range, start_subfile, patch_subfile_names,
5798         push_subfile, pop_subfile, record_line, get_compunit_symtab,
5799         set_last_source_start_addr, get_last_source_start_addr,
5800         get_local_using_directives, set_local_using_directives,
5801         get_global_using_directives, outermost_context_p,
5802         get_current_context_stack, get_context_stack_depth,
5803         get_current_subfile, get_local_symbols, get_file_symbols,
5804         get_global_symbols, record_debugformat, record_producer,
5805         push_context, pop_context, end_symtab_get_static_block,
5806         end_symtab_from_static_block, end_symtab, end_expandable_symtab>:
5807         New public methods.
5808         <record_pending_block, finish_block_internal, make_blockvector,
5809         watch_main_source_file_lossage, end_symtab_with_blockvector>: New
5810         private methods.
5811         Update all users.
5812
5813 2018-05-22  Tom Tromey  <tom@tromey.com>
5814
5815         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5816         parameter.
5817         (finish_block_internal): Update.
5818
5819 2018-07-20  Tom Tromey  <tom@tromey.com>
5820
5821         * buildsym.c (record_pending_block): Move earlier.  Remove objfile
5822         parameter.
5823         (finish_block_internal): Update.
5824
5825 2018-07-20  Tom Tromey  <tom@tromey.com>
5826
5827         * buildsym.h (EXTERN): Don't define or undef.
5828         * buildsym.c (EXTERN): Don't define.
5829
5830 2018-07-20  Tom Tromey  <tom@tromey.com>
5831
5832         * buildsym.c: Remove TODO comment.
5833
5834 2018-07-20  Tom Tromey  <tom@tromey.com>
5835
5836         * coffread.c (coff_symtab_read): Update.
5837         * xcoffread.c (xcoff_psymtab_to_symtab_1): Update.
5838         (xcoff_new_init): Update.
5839         * mipsread.c (mipscoff_new_init): Update.
5840         * mdebugread.c (mdebug_build_psymtabs): Update.
5841         * elfread.c (elf_new_init): Update.
5842         * dwarf2read.c (process_full_comp_unit, process_full_type_unit):
5843         Update.
5844         * dbxread.c (dbx_new_init, dbx_psymtab_to_symtab_1)
5845         (coffstab_build_psymtabs, elfstab_build_psymtabs)
5846         (stabsect_build_psymtabs): Update.
5847         * buildsym.h (buildsym_init): Don't declare.
5848         * buildsym.c: Update comment.
5849         (prepare_for_building): Remove.
5850         (start_symtab, restart_symtab): Update.
5851         (reset_symtab_globals): Update comment.
5852         (buildsym_init): Remove.
5853
5854 2018-07-20  Tom Tromey  <tom@tromey.com>
5855
5856         * xcoffread.c (read_xcoff_symtab, process_xcoff_symbol): Update.
5857         * stabsread.c (patch_block_stabs, define_symbol, read_type)
5858         (read_enum_type, common_block_start, common_block_end)
5859         (cleanup_undefined_types_1, finish_global_stabs): Update.
5860         * mdebugread.c (psymtab_to_symtab_1): Update.
5861         * dwarf2read.c (fixup_go_packaging, read_func_scope)
5862         (read_lexical_block_scope, new_symbol): Update.
5863         * dbxread.c (process_one_symbol): Update.
5864         * coffread.c (coff_symtab_read, process_coff_symbol)
5865         (coff_read_enum_type): Update.
5866         * buildsym.h (file_symbols, global_symbols, local_symbols): Don't
5867         declare.
5868         (get_local_symbols, get_file_symbols, get_global_symbols): New
5869         functions.
5870         * buildsym.c (~buildsym_compunit): Clean up m_file_symbols and
5871         m_global_symbols.
5872         <m_file_symbols, m_local_symbols, m_global_symbols>: New members.
5873         (~scoped_free_pendings): Update.
5874         (finish_block, prepare_for_building, reset_symtab_globals)
5875         (end_symtab_get_static_block, end_symtab_with_blockvector)
5876         (augment_type_symtab, push_context): Update.
5877         (get_local_symbols, get_file_symbols, get_global_symbols): New
5878         functions.
5879         (buildsym_init): Update.
5880
5881 2018-07-20  Tom Tromey  <tom@tromey.com>
5882
5883         * dwarf2read.c (process_full_comp_unit): Do not set list_in_scope.
5884         (process_full_type_unit): Likewise.
5885         (dwarf2_start_symtab): Set list_in_scope.
5886
5887 2018-07-20  Tom Tromey  <tom@tromey.com>
5888
5889         * dwarf2read.c (process_psymtab_comp_unit_reader)
5890         (build_type_psymtabs_reader): Do not set list_in_scope.
5891
5892 2018-07-20  Tom Tromey  <tom@tromey.com>
5893
5894         * buildsym.c (free_pendings): Remove.
5895         (add_symbol_to_list, scoped_free_pendings)
5896         (finish_block_internal, buildsym_init): Update.
5897
5898 2018-07-20  Tom Tromey  <tom@tromey.com>
5899
5900         * xcoffread.c (read_xcoff_symtab): Update.
5901         * dwarf2read.c (read_func_scope, read_lexical_block_scope):
5902         Update.
5903         * dbxread.c (process_one_symbol): Update.
5904         * coffread.c (coff_symtab_read): Update.
5905         * buildsym.h (finish_block): Update.
5906         * buildsym.c (finish_block): Remove "listhead" argument.
5907         (end_symtab_get_static_block): Update.
5908
5909 2018-07-20  Tom Tromey  <tom@tromey.com>
5910
5911         * buildsym.h (class scoped_free_pendings): Remove constructor.
5912         * buildsym.c (struct buildsym_compunit) <free_pending_blocks>: New
5913         method.
5914         <m_pending_block_obstack, m_pending_blocks>: New members.
5915         (pending_block_obstack, pending_blocks): Remove.
5916         (scoped_free_pendings::scoped_free_pendings): Default.
5917         (~scoped_free_pendings): Update.
5918         (free_pending_blocks): Remove.
5919         (finish_block_internal, record_pending_block, make_blockvector)
5920         (end_symtab_get_static_block, augment_type_symtab, push_context)
5921         (buildsym_init): Update.
5922
5923 2018-07-20  Tom Tromey  <tom@tromey.com>
5924
5925         * buildsym.c (struct buildsym_compunit) <m_pending_addrmap,
5926         m_pending_addrmap_obstack, m_pending_addrmap_interesting>: New
5927         members.
5928         (pending_addrmap, pending_addrmap_obstack)
5929         (pending_addrmap_interesting): Remove.
5930         (scoped_free_pendings, record_block_range, make_blockvector)
5931         (prepare_for_building, reset_symtab_globals, buildsym_init):
5932         Update.
5933
5934 2018-07-20  Tom Tromey  <tom@tromey.com>
5935
5936         * xcoffread.c (process_linenos): Update.
5937         * stabsread.c (define_symbol, read_type, read_enum_type): Update.
5938         * mdebugread.c (psymtab_to_symtab_1): Update.
5939         * dwarf2read.c (setup_type_unit_groups)
5940         (lnp_state_machine::handle_set_file, dwarf_record_line_p)
5941         (lnp_state_machine::record_line, dwarf_decode_lines): Update.
5942         * dbxread.c (process_one_symbol): Update.
5943         * coffread.c (coff_symtab_read, enter_linenos)
5944         (process_coff_symbol): Update.
5945         * buildsym.h (current_subfile): Don't declare.
5946         (get_current_subfile): Declare.
5947         * buildsym.c (struct buildsym_compunit) <m_current_subfile>: New
5948         member.
5949         (start_subfile, free_buildsym_compunit, push_subfile)
5950         (prepare_for_building, start_symtab): Update.
5951         (get_current_subfile): New function.
5952
5953 2018-07-20  Tom Tromey  <tom@tromey.com>
5954
5955         * coffread.c (coff_symtab_read): Update.
5956         * xcoffread.c (read_xcoff_symtab): Update.
5957         * dwarf2read.c (new_symbol): Update.
5958         (read_func_scope, read_lexical_block_scope): Update.
5959         * dbxread.c (process_one_symbol): Update.
5960         * buildsym.h (context_stack, context_stack_depth): Don't declare.
5961         (outermost_context_p): Remove macro.
5962         (outermost_context_p, get_current_context_stack)
5963         (get_context_stack_depth): Declare.
5964         (pop_context): Return struct context_stack.
5965         * buildsym.c (struct buildsym_compunit) <m_context_stack: New
5966         member.
5967         (context_stack_size): Remove.
5968         (INITIAL_CONTEXT_STACK_SIZE): Remove.
5969         (prepare_for_building, end_symtab_get_static_block)
5970         (augment_type_symtab, push_context): Update.
5971         (pop_context): Return struct context_stack.
5972         (outermost_context_p, get_current_context_stack)
5973         (get_context_stack_depth): New functions.
5974         (buildsym_init): Update.
5975
5976 2018-07-20  Tom Tromey  <tom@tromey.com>
5977
5978         * rust-exp.y: Now a pure parser.  Update all rules.
5979         (%union): Move earlier.
5980         (current_parser, work_obstack): Remove globals.
5981         (rust_parser, ~rust_parser): Update.
5982         (class rust_parser) <copy_name, concat3, crate_name, super_name,
5983         lex_character, lex_number, lex_string, lex_identifier,
5984         rust_lookup_type, convert_params_to_types, convert_ast_to_type,
5985         convert_name, convert_params_to_expression,
5986         convert_ast_to_expression, ast_basic_type, ast_operation,
5987         ast_compound_assignment, rust_op, ast_literal, ast_dliteral,
5988         ast_structop, ast_structop_anonymous, ast_unary, ast_cast,
5989         ast_call_ish, ast_path, ast_string, ast_struct, ast_range,
5990         ast_array_type, ast_slice_type, ast_reference_type,
5991         ast_pointer_type, ast_function_type, ast_tuple_type>: New methods.
5992         (rust_parse): Update.
5993         (rustyyerror, rustyylex): Add parser parameter.
5994         (rust_lex_test_one, rust_lex_int_test, rust_lex_exception_test)
5995         (rust_lex_stringish_test, rust_lex_test_sequence)
5996         (rust_lex_test_trailing_dot, rust_lex_test_completion)
5997         (rust_lex_test_push_back, rust_lex_tests): Update.
5998
5999 2018-07-19  Pedro Alves  <palves@redhat.com>
6000
6001         * guile/guile-internal.h (gdbscm_scm_to_c_string): Now returns a
6002         gdb::unique_xmalloc_ptr.
6003         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_condition_x):
6004         Adjust to use dbscm_wrap and gdb::unique_xmalloc_ptr.
6005         * guile/scm-exception.c (gdbscm_exception_message_to_string): Use
6006         copy-initialization.
6007         * guile/scm-pretty-print.c (ppscm_print_children): Use
6008         gdb::unique_xmalloc_ptr instead of cleanups.
6009         (gdbscm_apply_val_pretty_printer): Remove cleanups.
6010         * guile/scm-string.c (gdbscm_scm_to_c_string): Now returns a
6011         gdb::unique_xmalloc_ptr.
6012         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6013         Adjust to use gdb::unique_xmalloc_ptr.
6014         * guile/scm-utils.c (extract_arg): Adjust.
6015         * guile/scm-value.c (gdbscm_value_field): Adjust to use
6016         gdb::unique_xmalloc_ptr instead of a cleanup.
6017
6018 2018-07-19  Tom Tromey  <tom@tromey.com>
6019
6020         * utils.c (do_value_free_to_mark)
6021         (make_cleanup_value_free_to_mark): Remove.
6022         * utils.h (make_cleanup_value_free_to_mark): Remove.
6023
6024 2018-07-19  Pedro Alves  <palves@redhat.com>
6025
6026         * guile/guile-internal.h (gdbscm_wrap): Really make 'args' a
6027         forwarding reference.
6028
6029 2018-07-18  Pedro Alves  <palves@redhat.com>
6030
6031         * guile/guile.c (gdbscm_execute_gdb_command): Adjust to use
6032         gdbscm_wrap.  Use gdb::unique_xmalloc_ptr<char> instead of a
6033         cleanup.
6034
6035 2018-07-18  Pedro Alves  <palves@redhat.com>
6036
6037         * guile/guile-internal.h: Add comment about mixing GDB and Scheme
6038         exceptions.
6039         (GDBSCM_HANDLE_GDB_EXCEPTION_WITH_CLEANUPS): Delete.
6040         (gdbscm_wrap): New.
6041         * guile/scm-frame.c (gdbscm_frame_read_register): Use xfree
6042         directly instead of a cleanup.
6043         * guile/scm-math.c (vlscm_unop_gdbthrow): New, factored out from ...
6044         (vlscm_unop): ... this.  Reimplement using gdbscm_wrap.
6045         (vlscm_binop_gdbthrow): New, factored out from ...
6046         (vlscm_binop): ... this.  Reimplement using gdbscm_wrap.
6047         (vlscm_rich_compare): Use gdbscm_wrap.
6048         * guile/scm-symbol.c (gdbscm_lookup_symbol): Use xfree directly
6049         instead of a cleanup.
6050         (gdbscm_lookup_global_symbol): Use xfree directly instead of a
6051         cleanup.
6052         * guile/scm-type.c (gdbscm_type_field, gdbscm_type_has_field_p):
6053         Use xfree directly instead of a cleanup.
6054         * guile/scm-value.c (gdbscm_make_value, gdbscm_make_lazy_value):
6055         Adjust to use gdbscm_wrap and scoped_value_mark.
6056         (gdbscm_value_optimized_out_p): Adjust to use gdbscm_wrap.
6057         (gdbscm_value_address, gdbscm_value_dereference)
6058         (gdbscm_value_referenced_value): Adjust to use gdbscm_wrap and
6059         scoped_value_mark.
6060         (gdbscm_value_dynamic_type): Use scoped_value_mark.
6061         (vlscm_do_cast, gdbscm_value_field): Adjust to use gdbscm_wrap and
6062         scoped_value_mark.
6063         (gdbscm_value_subscript, gdbscm_value_call): Adjust to use
6064         gdbscm_wrap and scoped_value_mark.
6065         (gdbscm_value_to_string): Use xfree directly instead of a
6066         cleanup.  Move 'buffer' unique_ptr to TRY scope.
6067         (gdbscm_value_to_lazy_string): Use xfree directly instead of a
6068         cleanup.  Move 'buffer' unique_ptr to TRY scope.  Use
6069         scoped_value_mark.
6070         (gdbscm_value_fetch_lazy_x): Use gdbscm_wrap.
6071         (gdbscm_parse_and_eval): Adjust to use gdbscm_wrap and
6072         scoped_value_mark.
6073         (gdbscm_history_ref, gdbscm_history_append_x): Adjust to use
6074         gdbscm_wrap.
6075
6076 2018-07-18  Tom de Vries  <tdevries@suse.de>
6077
6078         * findvar.c (default_read_var_value): Also resolve dynamic type for
6079         LOC_OPTIMIZED_OUT vars.
6080
6081 2018-07-18  Maciej W. Rozycki  <macro@mips.com>
6082
6083         * mips-tdep.c (micromips_next_pc): Add SYSCALL instruction
6084         decoding.
6085
6086 2018-07-17  Tom Tromey  <tom@tromey.com>
6087
6088         * guile/scm-param.c (pascm_set_func, pascm_show_func)
6089         (compute_enum_list, pascm_set_param_value_x)
6090         (gdbscm_parameter_value): Update.
6091         * guile/guile-internal.h (gdbscm_scm_to_string): Update.
6092         (gdbscm_scm_to_host_string): Update.
6093         * guile/scm-math.c (vlscm_convert_typed_value_from_scheme):
6094         Update.
6095         * guile/scm-cmd.c (cmdscm_add_completion): Update.
6096         * guile/scm-pretty-print.c (ppscm_print_string_repr): Update.
6097         * guile/scm-string.c (gdbscm_scm_to_string): Return
6098         unique_xmalloc_ptr.
6099         (gdbscm_scm_to_host_string): Likewise.
6100
6101 2018-07-17  Tom Tromey  <tom@tromey.com>
6102
6103         * guile/guile.c (gdbscm_eval_from_control_command): Update.
6104         * guile/guile-internal.h (gdbscm_safe_eval_string): Update.
6105         * guile/scm-objfile.c (gdbscm_execute_objfile_script): Update.
6106         * guile/scm-safe-call.c (gdbscm_safe_eval_string): Return
6107         unique_xmalloc_ptr.
6108
6109 2018-07-17  Tom Tromey  <tom@tromey.com>
6110
6111         * guile/scm-param.c (pascm_signal_setshow_error): Update.
6112         * guile/guile-internal.h (gdbscm_exception_message_to_string):
6113         Update.
6114         * guile/scm-cmd.c (cmdscm_function): Update.
6115         * guile/scm-pretty-print.c
6116         (ppscm_print_exception_unless_memory_error): Update.
6117         * guile/scm-exception.c (gdbscm_exception_message_to_string):
6118         Return unique_xmalloc_ptr.
6119
6120 2018-07-17  Tom Tromey  <tom@tromey.com>
6121
6122         * guile/scm-pretty-print.c (ppscm_make_pp_type_error_exception):
6123         Use string_printf.
6124
6125 2018-07-17  Jim Wilson  <jimw@sifive.com>
6126
6127         * riscv-tdep.c (riscv_has_feature): Delete comment that refers to
6128         set_gdbarch_decr_pc_after_break.  Call riscv_read_misa_reg always.
6129         (riscv_gdbarch_init): Delete local has_compressed_isa.  Delete now
6130         unecessary braces after EF_RISCV_RVC test.  Delete call to
6131         set_gdbarch_decr_pc_after_break.
6132
6133         * riscv-tdep.h (DECLARE_CSR): Use RISCV_FIRST_CSR_REGNUM instead of
6134         RISCV_LAST_FP_REGNUM + 1.
6135         (RSICV_CSR_LEGACY_MISA_REGNUM): Add RISCV_FIRST_CSR_REGNUM.
6136
6137 2018-07-17  Tom Tromey  <tom@tromey.com>
6138
6139         * configure.ac: Remove --disable-gdbcli.
6140         * configure: Rebuild.
6141         * Makefile.in (SUBDIR_CLI_DEPS, SUBDIR_CLI_LDFLAGS)
6142         (SUBDIR_CLI_CFLAGS): Remove.
6143         (SFILES): Use SUBDIR_CLI_SRCS.
6144         (COMMON_OBS): Use SUBDIR_CLI_OBS.
6145
6146 2018-07-17  Tom Tromey  <tom@tromey.com>
6147
6148         PR gdb/18624:
6149         * coffread.c (coff_symtab_read): Use scoped_free_pendings.
6150
6151 2018-07-16  Jim Wilson  <jimw@sifive.com>
6152
6153         * riscv-tdep.c (riscv_gdbarch_init): Call gdbarch_init_osabi.
6154
6155 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6156
6157         * ia64-libunwind-tdep.c (libunwind_frame_cache): Remove unused
6158         variable.
6159         (libunwind_frame_sniffer): Likewise.
6160         (libunwind_frame_prev_register): Likewise.
6161         (libunwind_sigtramp_frame_sniffer): Likewise.
6162         * ia64-tdep.c (ia64_access_reg): Likewise.
6163         (ia64_access_rse_reg): Likewise.
6164         (ia64_libunwind_sigtramp_frame_this_id): Likewise.
6165         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Likewise.
6166
6167 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6168
6169         * ia64-vms-tdep.c (ia64_vms_find_proc_info_x): Add cast.
6170
6171 2018-07-16  Simon Marchi  <simon.marchi@ericsson.com>
6172
6173         * remote-sim.c (gdbsim_target::close,
6174         gdbsim_target::mourn_inferior): Remove unused variables.
6175
6176 2018-07-16  Simon Marchi  <simon.marchi@polymtl.ca>
6177
6178         * ia64-tdep.c (ktab_buf): New global.
6179         (getunwind_table): Return a gdb::optional<gdb::byte_vector>.
6180         (get_kernel_table): Adjust.
6181
6182 2018-07-16  Tom Tromey  <tom@tromey.com>
6183
6184         * xcoffread.c (read_xcoff_symtab): Use outermost_context_p.
6185         * dwarf2read.c (using_directives, new_symbol): Use
6186         outermost_context_p.
6187         * dbxread.c (process_one_symbol): Use outermost_context_p.
6188         * coffread.c (coff_symtab_read): Use outermost_context_p.
6189
6190 2018-07-16  Tom Tromey  <tom@tromey.com>
6191
6192         * dwarf2read.c (using_directives, read_func_scope)
6193         (read_lexical_block_scope): Update.
6194         * cp-namespace.c (cp_scan_for_anonymous_namespaces): Update.
6195         * buildsym.h (local_using_directives, global_using_directives):
6196         Don't declare.
6197         (get_local_using_directives, set_local_using_directives)
6198         (get_global_using_directives): Declare.
6199         * buildsym.c (struct buildsym_compunit) <m_local_using_directives,
6200         m_global_using_directives>: New members.
6201         (finish_block_internal, prepare_for_building)
6202         (reset_symtab_globals, end_symtab_get_static_block)
6203         (push_context): Update.
6204         (get_local_using_directives, set_local_using_directives)
6205         (get_global_using_directives): New functions.
6206         (buildsym_init): Update.
6207
6208 2018-07-16  Tom Tromey  <tom@tromey.com>
6209
6210         * xcoffread.c (xcoff_initial_scan): Don't call
6211         free_pending_blocks.
6212         * dbxread.c (dbx_symfile_read): Don't call free_pending_blocks.
6213         * buildsym.h (class scoped_free_pendings): Add constructor.
6214         (free_pending_blocks): Don't declare.
6215         * buildsym.c (scoped_free_pendings::scoped_free_pendings): New.
6216         (free_pending_blocks): Now static.
6217
6218 2018-07-16  Tom Tromey  <tom@tromey.com>
6219
6220         * buildsym.h (push_subfile, pop_subfile): Update declarations.
6221         * buildsym.c (struct buildsym_compunit) <m_subfile_stack>: New
6222         member.
6223         (struct subfile_stack): Remove.
6224         (subfile_stack): Remove.
6225         (push_subfile, pop_subfile, buildsym_init): Update.
6226
6227 2018-07-16  Tom Tromey  <tom@tromey.com>
6228
6229         * buildsym.c (push_subfile): Use gdb_assert.
6230         (pop_subfile): Use gdb_assert.
6231
6232 2018-07-16  Tom Tromey  <tom@tromey.com>
6233
6234         * buildsym.h (merge_symbol_lists): Remove.
6235         * buildsym.c (merge_symbol_lists): Remove.
6236
6237 2018-07-16  Tom Tromey  <tom@tromey.com>
6238
6239         * stabsread.c (scan_file_globals): Update comment.
6240         * stabsread.h (scan_file_globals): Move from buildsym.h.
6241         * buildsym.h (scan_file_globals): Move to stabsread.h.
6242
6243 2018-07-16  Tom Tromey  <tom@tromey.com>
6244
6245         * xcoffread.c (xcoff_new_init): Update.
6246         * mipsread.c (mipscoff_new_init): Update.
6247         * mdebugread.c (mdebug_build_psymtabs): Update.
6248         * elfread.c (elf_new_init): Update.
6249         * dbxread.c (dbx_new_init, coffstab_build_psymtabs)
6250         (elfstab_build_psymtabs, stabsect_build_psymtabs): Update.
6251         * buildsym.h (buildsym_new_init): Don't declare.
6252         * buildsym.c (buildsym_new_init): Remove.
6253
6254 2018-07-16  Tom Tromey  <tom@tromey.com>
6255
6256         * stabsread.h (within_function): Move from buildsym.h.
6257         * stabsread.c (start_stabs): Clear within_function.
6258         * coffread.c (coff_start_symtab): Clear within_function.
6259         * buildsym.h (within_function): Move to stabsread.h.
6260         * buildsym.c (prepare_for_building): Update.
6261
6262 2018-07-16  Tom Tromey  <tom@tromey.com>
6263
6264         * stabsread.h (processing_gcc_compilation): Move from buildsym.h.
6265         * dwarf2read.c (dwarf2_start_symtab): Don't set
6266         processing_gcc_compilation.
6267         * buildsym.h (processing_gcc_compilation): Move to stabsread.h.
6268
6269 2018-07-16  Tom Tromey  <tom@tromey.com>
6270
6271         * stabsread.h (HASHSIZE, hashname, symnum, next_symbol_text)
6272         (next_symbol_text_func): Move from buildsym.h.
6273         * stabsread.c (hashname): Move from buildsym.c.
6274         * buildsym.h (HASHSIZE, symnum, next_symbol_text)
6275         (next_symbol_text_func, hashname): Move to stabsread.h.
6276         * buildsym.c: Don't include bcache.h
6277         (hashname): Move to stasbread.c.
6278
6279 2018-07-16  Tom Tromey  <tom@tromey.com>
6280
6281         * buildsym.h (context_stack_size): Don't declare.
6282         * buildsym.c (context_stack_size): New global.
6283
6284 2018-07-16  Tom Tromey  <tom@tromey.com>
6285
6286         * dbxread.c (processing_acc_compilation): New global.
6287         * buildsym.h (processing_acc_compilation): Don't declare.
6288
6289 2018-07-16  Tom Tromey  <tom@tromey.com>
6290
6291         * xcoffread.c (aix_process_linenos, complete_symtab): Update.
6292         * dbxread.c (read_ofile_symtab): Update.
6293         * coffread.c (coff_start_symtab, coff_end_symtab): Update.
6294         * buildsym.h (last_source_start_addr): Remove.
6295         (set_last_source_start_addr, get_last_source_start_addr):
6296         Declare.
6297         * buildsym.c (buildsym_compunit::buildsym_compunit): Add last_addr
6298         parameter.
6299         (struct buildsym_compunit) <m_last_source_start_addr>: New
6300         member.
6301         (prepare_for_building): Remove start_addr parameter.
6302         (start_symtab, restart_symtab, end_symtab_get_static_block)
6303         (end_symtab_with_blockvector): Update.
6304         (set_last_source_start_addr, get_last_source_start_addr): New
6305         functions.
6306
6307 2018-07-16  Tom Tromey  <tom@tromey.com>
6308
6309         * buildsym.c (struct buildsym_compunit) <m_have_line_numbers>: New
6310         member.
6311         (have_line_numbers): Remove.
6312         (record_line, prepare_for_building, end_symtab_get_static_block)
6313         (augment_type_symtab): Update.
6314
6315 2018-07-16  Tom Tromey  <tom@tromey.com>
6316
6317         * buildsym.c (~buildsym_compunit): Free the macro table.
6318         (struct buildsym_compunit) <get_macro_table, release_macros>: New
6319         methods.
6320         <m_pending_macros>: New member.
6321         (pending_macros): Remove.
6322         (~scoped_free_pendings, get_macro_table, prepare_for_building)
6323         (reset_symtab_globals, end_symtab_get_static_block)
6324         (end_symtab_with_blockvector, augment_type_symtab)
6325         (buildsym_init): Update.
6326
6327 2018-07-16  Tom Tromey  <tom@tromey.com>
6328
6329         * buildsym.c (buildsym_compunit::buildsym_compunit): Add name
6330         parameter.
6331         (buildsym_compunit::set_last_source_file): New method.
6332         <m_last_source_file>: New member.
6333         (prepare_for_building): Remove "name" parameter.
6334         (start_symtab, restart_symtab, reset_symtab_globals): Update.
6335         (last_source_file): Remove.
6336         (set_last_source_file, get_last_source_file): Update.
6337
6338 2018-07-16  Tom Tromey  <tom@tromey.com>
6339
6340         * buildsym.c (prepare_for_building): Add assert.
6341
6342 2018-07-16  Tom Tromey  <tom@tromey.com>
6343
6344         * buildsym.c (~buildsym_compunit): Update.
6345         (struct buildsym_compunit) <comp_unit>: Now a unique_xmalloc_ptr.
6346         (start_subfile, patch_subfile_names)
6347         (end_symtab_with_blockvector): Update.
6348
6349 2018-07-16  Tom Tromey  <tom@tromey.com>
6350
6351         * buildsym.c (struct buildsym_compunit): Add constructor,
6352         destructor, initializers.
6353         (start_buildsym_compunit): Remove.
6354         (free_buildsym_compunit): Use "delete".
6355         (start_symtab, restart_symtab): Use "new".
6356
6357 2018-07-13  Simon Marchi  <simon.marchi@polymtl.ca>
6358
6359         * symfile.c (set_objfile_default_section_offset): Remove struct
6360         keyword.
6361
6362 2018-07-14  Stafford Horne  <shorne@gmail.com>
6363
6364         * (Responsible Maintainers): Add myself as or1k maintainer.
6365
6366 2018-07-13  Tom Tromey  <tom@tromey.com>
6367
6368         * symfile.c (set_objfile_default_section_offset): Use extra braces
6369         around initializer.
6370
6371 2018-07-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
6372
6373         * s390-tdep.c (s390_displaced_step_fixup): Adjust PC for a
6374         non-branching basr.
6375
6376 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6377
6378         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6379         unittests/cli-utils-selftests.c
6380         * unittests/cli-utils-selftests.c: New file.
6381
6382 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6383
6384         * NEWS: Mention new commands. Mention change to 'thread apply'.
6385
6386 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6387
6388         * thread.c (thr_try_catch_cmd): New function.
6389         (thread_apply_all_command): Handle qcs flags.
6390         (thread_apply_command): Handle qcs flags.
6391         (taas_command): New function.
6392         (tfaas_command): New function.
6393         (_initialize_thread): Update to setup the new commands 'taas
6394         and 'tfaas'. Change doc string for 'thread apply'.
6395
6396 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6397
6398         * stack.c: (trailing_outermost_frame): New function, mostly
6399         extracted from backtrace_command_1.
6400         (leading_innermost_frame): New function.
6401         (backtrace_command_1): Update to call trailing_outermost_frame.
6402         (frame_apply_command_count): New function.
6403         (frame_apply_level_command): New function.
6404         (frame_apply_all_command): New function.
6405         (frame_apply_command): New function.
6406         (faas_command): New function.
6407         (frame_cmd_list): New variable.
6408         (_initialize_stack): Update to setup the new commands 'frame apply'
6409         and 'faas'.
6410
6411 2018-07-12  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
6412
6413         * cli-utils.c (number_or_range_parser::get_number): Only handle
6414         numbers or convenience var as numbers.
6415         (parse_flags): New function.
6416         (parse_flags_qcs): New function.
6417         (number_or_range_parser::finished): Ensure parsing end is detected
6418         before end of string.
6419         * cli-utils.h (parse_flags): New function.
6420         (parse_flags_qcs): New function.
6421         (number_or_range_parser): Remove m_finished bool.
6422         (number_or_range_parser::skip_range): Set m_in_range to false.
6423
6424 2018-07-12  Sergio Durigan Junior  <sergiodj@redhat.com>
6425
6426         * ser-tcp.c (try_connect): Declare 'ioarg' as 'u_long' if building
6427         on Windows.
6428
6429 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6430             Jan Kratochvil  <jan.kratochvil@redhat.com>
6431             Paul Fertser  <fercerpav@gmail.com>
6432             Tsutomu Seki  <sekiriki@gmail.com>
6433             Pedro Alves  <palves@redhat.com>
6434
6435         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
6436         'unittests/parse-connection-spec-selftests.c'.
6437         (COMMON_SFILES): Add 'common/netstuff.c'.
6438         (HFILES_NO_SRCDIR): Add 'common/netstuff.h'.
6439         * NEWS (Changes since GDB 8.2): Mention IPv6 support.
6440         * common/netstuff.c: New file.
6441         * common/netstuff.h: New file.
6442         * ser-tcp.c: Include 'netstuff.h' and 'wspiapi.h'.
6443         (wait_for_connect): Update comment.  New parameter
6444         'gdb::optional<int> sock' instead of 'struct serial *scb'.
6445         Use 'sock' directly instead of 'scb->fd'.
6446         (try_connect): New function, with code from 'net_open'.
6447         (net_open): Rewrite main loop to deal with multiple
6448         sockets/addresses.  Handle IPv6-style hostnames; implement
6449         support for IPv6 connections.
6450         * unittests/parse-connection-spec-selftests.c: New file.
6451
6452 2018-07-11  Pedro Alves  <palves@redhat.com>
6453
6454         PR gdb/23377
6455         * remote.c (remote_target::remote_detach_pid): Call
6456         set_current_process.
6457
6458 2018-07-11  Pedro Alves  <palves@redhat.com>
6459
6460         * h8300-tdep.c (h8300_gdbarch_init): Remove
6461         set_gdbarch_ecoff_reg_to_regnum calls.
6462
6463 2018-07-11  Sergio Durigan Junior  <sergiodj@redhat.com>
6464
6465         PR c++/23373
6466         * c-typeprint.c (c_type_print_base_struct_union): Don't print
6467         offsets/sizes for static members of a class/struct.
6468
6469 2018-07-11  Alan Hayward  <alan.hayward@arm.com>
6470
6471         * target-descriptions.c (tdesc_register_bitsize): Rename.
6472         * target-descriptions.h (tdesc_register_bitsize): Likewise.
6473         * rs6000-tdep.c (rs6000_gdbarch_init): Use new name.
6474         * aarch64-tdep.c (aarch64_get_tdesc_vq): Convert size.
6475
6476 2018-07-10  Tom Tromey  <tom@tromey.com>
6477
6478         * breakpoint.c (moribund_locations): Now static and a
6479         std::vector.
6480         (breakpoint_init_inferior, moribund_breakpoint_here_p)
6481         (build_bpstat_chain, update_global_location_list)
6482         (breakpoint_retire_moribund): Update.
6483         * breakpoint.h (bp_location_p): Remove typedef.  Don't declare
6484         VEC.
6485
6486 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6487
6488         * riscv-tdep.c (riscv_is_fp_regno_p): New function.
6489         (riscv_register_reggroup_p): Use new function, remove unneeded
6490         parenthesis.
6491         (riscv_push_dummy_call): Extend assert to compare against xlen or
6492         flen based on register type.
6493
6494 2018-07-10  Andrew Burgess  <andrew.burgess@embecosm.com>
6495
6496         * riscv-tdep.c (riscv_print_arg_location): Use TYPE_SAFE_NAME.
6497
6498 2018-07-09  Andrew Burgess  <andrew.burgess@embecosm.com>
6499
6500         * remote.c (show_hardware_watchpoint_limit): New function.
6501         (show_hardware_watchpoint_length_limit): New function.
6502         (show_hardware_breakpoint_limit): New function.
6503         (_initialize_remote): Use add_setshow_zuinteger_unlimited_cmd
6504         where appropriate, update help text.
6505
6506 2018-07-09  Tom Tromey  <tom@tromey.com>
6507
6508         * Makefile.in (CDEPS): Don't mention XM_CDEPS.
6509         (CLIBS): Don't mention NAT_CLIBS.
6510
6511 2018-07-09  Tom Tromey  <tom@tromey.com>
6512
6513         * Makefile.in (ADD_FILES, ADD_DEPS): Remove.
6514         (LIBGDB_OBS, clean mostlyclean): Update.
6515         (gdb$(EXEEXT), insight$(EXEEXT)): Update.
6516
6517 2018-07-09  Tom Tromey  <tom@tromey.com>
6518
6519         * Makefile.in (%.c: %.y): Use ECHO_YACC.
6520         (%.c: %.l): Use ECHO_LEX.  Just fail if flex not available.
6521         * silent-rules.mk (ECHO_YACC, ECHO_LEX): New variables.
6522
6523 2018-07-09  Tom Tromey  <tom@tromey.com>
6524
6525         * Makefile.in (ALLDEPFILES): Remove exec.c.
6526         (COMMON_OBS): Remove exec.o.
6527         (COMMON_SFILES): Add exec.c.
6528
6529 2018-07-09  Tom Tromey  <tom@tromey.com>
6530
6531         * Makefile.in (LINT, LINTFLAGS, LINTFILES, lint): Remove.
6532
6533 2018-07-09  Tom Tromey  <tom@tromey.com>
6534
6535         * Makefile.in (clean mostlyclean): Remove stamp-version.
6536         (version.c): Depend on stamp-version.
6537         (stamp-version): New rule, from version.c rule.
6538
6539 2018-07-09  Tom Tromey  <tom@tromey.com>
6540
6541         * Makefile.in (init.c): Depend on stamp-init.
6542         (stamp-init): New rule, from init.c rule.
6543         (clean mostlyclean): Remove stamp-init.
6544
6545 2018-07-09  Tom Tromey  <tom@tromey.com>
6546
6547         * Makefile.in (INIT_FILES): Remove CONFIG_SRCS,
6548         SUBDIR_GCC_COMPILE_SRCS.
6549
6550 2018-07-09  Tom Tromey  <tom@tromey.com>
6551
6552         * Makefile.in (init.c): Remove some unused sed rules.
6553
6554 2018-07-09  Tom Tromey  <tom@tromey.com>
6555
6556         * Makefile.in (TSOBS): Remove.
6557         (INIT_FILES): Update.
6558         (LIBGDB_OBS): Update.
6559         (COMMON_SFILES): Add inflow.c.
6560         (SFILES): Remove inflow.c.
6561
6562 2018-07-07  Jan Kratochvil  <jan.kratochvil@redhat.com>
6563
6564         * contrib/gdb-add-index.sh ($dwarf5): New, use it.
6565
6566 2018-07-07  Simon Marchi  <simon.marchi@polymtl.ca>
6567
6568         * ia64-libunwind-tdep.c (get_reg_name, get_fpreg_name,
6569         get_saveloc_name, is_signal_frame_name, step_name,
6570         init_remote_name, create_addr_space_name,
6571         destroy_addr_space_name, search_unwind_table_name,
6572         find_dyn_list_name): Constify.
6573
6574 2018-07-05  Simon Marchi  <simon.marchi@polymtl.ca>
6575
6576         * darwin-nat.c (darwin_pthread_kill): New function.
6577         (darwin_resume_thread): Use darwin_pthread_kill.
6578
6579 2018-07-05  Tom de Vries  <tdevries@suse.de>
6580
6581         * macroexp.c (macro_buffer) <operator=>: New member function.
6582
6583 2018-07-04  Tom Tromey  <tom@tromey.com>
6584
6585         * darwin-nat.c (darwin_attach_pid): Use exit_inferior.
6586
6587 2018-07-04  Simon Marchi  <simon.marchi@polymtl.ca>
6588
6589         * common/common-defs.h (HAVE_USEFUL_SBRK): Define.
6590         * main.c: Use HAVE_USEFUL_SBRK instead of HAVE_SBRK.
6591         * maint.c: Likewise.
6592         * top.c: Likewise.
6593
6594 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6595
6596         * NEWS: Create a new section for the next release branch.
6597         Rename the section of the current branch, now that it has
6598         been cut.
6599
6600 2018-07-04  Joel Brobecker  <brobecker@adacore.com>
6601
6602         GDB 8.2 branch created (1b919490e8ba30bf1d6941df0ed112b0e557017e):
6603         * version.in: Bump version to 8.2.50.DATE-git.
6604
6605 2018-07-04  Vyacheslav Barinov  <v.barinov@samsung.com>
6606             Pedro Alves  <palves@redhat.com>
6607
6608         * linux-nat.c (linux_init_ptrace): Rename to ...
6609         (linux_init_ptrace_procfs): ... this.  Call
6610         linux_proc_init_warnings.
6611         (linux_nat_target::post_attach)
6612         (linux_nat_target::post_startup_inferior): Adjust.
6613         * nat/linux-procfs.c (linux_proc_init_warnings): Define function.
6614         * nat/linux-procfs.h (linux_proc_init_warnings): Declare function.
6615
6616 2018-07-04  Tom de Vries  <tdevries@suse.de>
6617
6618         * dwarf2read.c (error_check_comp_unit_head): Move dwarf version
6619         check ...
6620         (read_comp_unit_head): ... here.
6621
6622 2018-07-03  Tom Tromey  <tom@tromey.com>
6623
6624         * tracepoint.c (process_tracepoint_on_disconnect, start_tracing)
6625         (stop_tracing, tstatus_command)
6626         (find_matching_tracepoint_location, merge_uploaded_tracepoints)
6627         (print_one_static_tracepoint_marker): Update.
6628         * breakpoint.c (static_tracepoints_here, all_tracepoints): Return
6629         std::vector.
6630         * breakpoint.h (breakpoint_p): Remove typedef.  Don't declare
6631         VEC.
6632         (all_tracepoints, static_tracepoints_here): Return std::vector.
6633
6634 2018-07-03  Tom Tromey  <tom@tromey.com>
6635
6636         * common/ptid.c (ptid_equal): Remove.
6637         * common/ptid.h (ptid_equal): Don't declare.
6638         * ada-tasks.c: Update.
6639         * breakpoint.c: Update.
6640         * common/agent.c: Update.
6641         * corelow.c: Update.
6642         * darwin-nat-info.c: Update.
6643         * darwin-nat.c: Update.
6644         * dcache.c: Update.
6645         * dtrace-probe.c: Update.
6646         * dummy-frame.c: Update.
6647         * fbsd-nat.c: Update.
6648         * frame.c: Update.
6649         * gdbthread.h: Update.
6650         * gnu-nat.c: Update.
6651         * go32-nat.c: Update.
6652         * inf-loop.c: Update.
6653         * inf-ptrace.c: Update.
6654         * infcall.c: Update.
6655         * infcmd.c: Update.
6656         * inflow.c: Update.
6657         * infrun.c: Update.
6658         * linux-fork.c: Update.
6659         * linux-nat.c: Update.
6660         * linux-thread-db.c: Update.
6661         * mi/mi-cmd-var.c: Update.
6662         * mi/mi-interp.c: Update.
6663         * mi/mi-main.c: Update.
6664         * nto-procfs.c: Update.
6665         * ppc-linux-tdep.c: Update.
6666         * procfs.c: Update.
6667         * python/py-inferior.c: Update.
6668         * python/py-record-btrace.c: Update.
6669         * python/py-record.c: Update.
6670         * ravenscar-thread.c: Update.
6671         * regcache.c: Update.
6672         * remote-sim.c: Update.
6673         * remote.c: Update.
6674         * sol-thread.c: Update.
6675         * solib.c: Update.
6676         * target.c: Update.
6677         * tui/tui-stack.c: Update.
6678         * varobj.c: Update.
6679         * windows-nat.c: Update.
6680         * windows-tdep.c: Update.
6681
6682 2018-07-03  Tom Tromey  <tom@tromey.com>
6683
6684         * common/ptid.c (ptid_match): Remove.
6685         * common/ptid.h (ptid_match): Don't declare.
6686         * fbsd-nat.c: Update.
6687         * infcmd.c: Update.
6688         * infrun.c: Update.
6689         * linux-nat.c: Update.
6690         * record-btrace.c: Update.
6691         * regcache.c: Update.
6692         * remote.c: Update.
6693
6694 2018-07-03  Tom Tromey  <tom@tromey.com>
6695
6696         * common/ptid.c (ptid_tid_p): Remove.
6697         * common/ptid.h (ptid_tid_p): Don't declare.
6698         * sol-thread.c: Update.
6699
6700 2018-07-03  Tom Tromey  <tom@tromey.com>
6701
6702         * common/ptid.c (ptid_lwp_p): Remove.
6703         * common/ptid.h (ptid_lwp_p): Don't declare.
6704         * fbsd-nat.c: Update.
6705         * linux-nat.c: Update.
6706         * nat/linux-procfs.c: Update.
6707         * nat/x86-linux-dregs.c: Update.
6708         * sol-thread.c: Update.
6709
6710 2018-07-03  Tom Tromey  <tom@tromey.com>
6711
6712         * common/ptid.c (ptid_is_pid): Remove.
6713         * common/ptid.h (ptid_is_pid): Don't declare.
6714         * infrun.c: Update.
6715         * linux-nat.c: Update.
6716         * mi/mi-interp.c: Update.
6717         * remote.c: Update.
6718         * thread.c: Update.
6719
6720 2018-07-03  Tom Tromey  <tom@tromey.com>
6721
6722         * common/ptid.c (ptid_get_tid): Remove.
6723         * common/ptid.h (ptid_get_tid): Don't declare.
6724         * ada-tasks.c: Update.
6725         * aix-thread.c: Update.
6726         * bsd-uthread.c: Update.
6727         * darwin-nat.c: Update.
6728         * fbsd-nat.c: Update.
6729         * i386-darwin-nat.c: Update.
6730         * infrun.c: Update.
6731         * linux-tdep.c: Update.
6732         * nto-procfs.c: Update.
6733         * ppc-ravenscar-thread.c: Update.
6734         * python/py-infthread.c: Update.
6735         * ravenscar-thread.c: Update.
6736         * sol-thread.c: Update.
6737         * sparc-ravenscar-thread.c: Update.
6738         * windows-nat.c: Update.
6739
6740 2018-07-03  Tom Tromey  <tom@tromey.com>
6741
6742         * common/ptid.c (ptid_get_lwp): Remove.
6743         * common/ptid.h (ptid_get_lwp): Don't declare.
6744         * aarch64-linux-nat.c: Update.
6745         * ada-tasks.c: Update.
6746         * aix-thread.c: Update.
6747         * amd64-linux-nat.c: Update.
6748         * arm-linux-nat.c: Update.
6749         * corelow.c: Update.
6750         * fbsd-nat.c: Update.
6751         * fbsd-tdep.c: Update.
6752         * gnu-nat.c: Update.
6753         * i386-cygwin-tdep.c: Update.
6754         * i386-gnu-nat.c: Update.
6755         * i386-linux-nat.c: Update.
6756         * ia64-linux-nat.c: Update.
6757         * inf-ptrace.c: Update.
6758         * infrun.c: Update.
6759         * linux-fork.c: Update.
6760         * linux-nat.c: Update.
6761         * linux-tdep.c: Update.
6762         * linux-thread-db.c: Update.
6763         * mips-linux-nat.c: Update.
6764         * nat/aarch64-linux-hw-point.c: Update.
6765         * nat/aarch64-linux.c: Update.
6766         * nat/linux-btrace.c: Update.
6767         * nat/linux-osdata.c: Update.
6768         * nat/linux-procfs.c: Update.
6769         * nat/x86-linux-dregs.c: Update.
6770         * obsd-nat.c: Update.
6771         * ppc-fbsd-nat.c: Update.
6772         * ppc-linux-nat.c: Update.
6773         * procfs.c: Update.
6774         * python/py-infthread.c: Update.
6775         * ravenscar-thread.c: Update.
6776         * remote.c: Update.
6777         * s390-linux-nat.c: Update.
6778         * sol-thread.c: Update.
6779         * sol2-tdep.c: Update.
6780         * spu-linux-nat.c: Update.
6781         * x86-linux-nat.c: Update.
6782         * xtensa-linux-nat.c: Update.
6783
6784 2018-07-03  Tom Tromey  <tom@tromey.com>
6785
6786         * common/ptid.c (ptid_get_pid): Remove.
6787         * common/ptid.h (ptid_get_pid): Don't declare.
6788         * aarch64-linux-nat.c: Update.
6789         * ada-lang.c: Update.
6790         * aix-thread.c: Update.
6791         * alpha-bsd-nat.c: Update.
6792         * amd64-fbsd-nat.c: Update.
6793         * amd64-linux-nat.c: Update.
6794         * arm-linux-nat.c: Update.
6795         * arm-nbsd-nat.c: Update.
6796         * auxv.c: Update.
6797         * break-catch-syscall.c: Update.
6798         * breakpoint.c: Update.
6799         * bsd-uthread.c: Update.
6800         * corelow.c: Update.
6801         * ctf.c: Update.
6802         * darwin-nat.c: Update.
6803         * fbsd-nat.c: Update.
6804         * fbsd-tdep.c: Update.
6805         * gcore.c: Update.
6806         * gnu-nat.c: Update.
6807         * hppa-nbsd-nat.c: Update.
6808         * hppa-obsd-nat.c: Update.
6809         * i386-fbsd-nat.c: Update.
6810         * ia64-linux-nat.c: Update.
6811         * inf-ptrace.c: Update.
6812         * infcmd.c: Update.
6813         * inferior.c: Update.
6814         * inferior.h: Update.
6815         * inflow.c: Update.
6816         * infrun.c: Update.
6817         * linux-fork.c: Update.
6818         * linux-nat.c: Update.
6819         * linux-tdep.c: Update.
6820         * linux-thread-db.c: Update.
6821         * m68k-bsd-nat.c: Update.
6822         * mi/mi-interp.c: Update.
6823         * mi/mi-main.c: Update.
6824         * mips-linux-nat.c: Update.
6825         * mips-nbsd-nat.c: Update.
6826         * mips64-obsd-nat.c: Update.
6827         * nat/aarch64-linux-hw-point.c: Update.
6828         * nat/aarch64-linux.c: Update.
6829         * nat/linux-btrace.c: Update.
6830         * nat/linux-osdata.c: Update.
6831         * nat/linux-procfs.c: Update.
6832         * nat/x86-linux-dregs.c: Update.
6833         * nto-procfs.c: Update.
6834         * obsd-nat.c: Update.
6835         * ppc-linux-nat.c: Update.
6836         * ppc-nbsd-nat.c: Update.
6837         * ppc-obsd-nat.c: Update.
6838         * proc-service.c: Update.
6839         * procfs.c: Update.
6840         * python/py-inferior.c: Update.
6841         * python/py-infthread.c: Update.
6842         * ravenscar-thread.c: Update.
6843         * record.c: Update.
6844         * remote-sim.c: Update.
6845         * remote.c: Update.
6846         * rs6000-nat.c: Update.
6847         * s390-linux-nat.c: Update.
6848         * sh-nbsd-nat.c: Update.
6849         * sol-thread.c: Update.
6850         * sparc-nat.c: Update.
6851         * sparc64-tdep.c: Update.
6852         * spu-linux-nat.c: Update.
6853         * spu-tdep.c: Update.
6854         * target-debug.h: Update.
6855         * target.c: Update.
6856         * thread.c: Update.
6857         * tid-parse.c: Update.
6858         * tracefile-tfile.c: Update.
6859         * vax-bsd-nat.c: Update.
6860         * windows-nat.c: Update.
6861         * x86-linux-nat.c: Update.
6862         * x86-nat.c: Update.
6863
6864 2018-07-03  Tom Tromey  <tom@tromey.com>
6865
6866         * common/ptid.c (pid_to_ptid): Remove.
6867         * common/ptid.h (pid_to_ptid): Don't declare.
6868         * aix-thread.c: Update.
6869         * arm-linux-nat.c: Update.
6870         * common/ptid.c: Update.
6871         * common/ptid.h: Update.
6872         * corelow.c: Update.
6873         * ctf.c: Update.
6874         * darwin-nat.c: Update.
6875         * fbsd-nat.c: Update.
6876         * fork-child.c: Update.
6877         * gnu-nat.c: Update.
6878         * go32-nat.c: Update.
6879         * inf-ptrace.c: Update.
6880         * infcmd.c: Update.
6881         * inferior.c: Update.
6882         * infrun.c: Update.
6883         * linux-fork.c: Update.
6884         * linux-nat.c: Update.
6885         * nat/aarch64-linux-hw-point.c: Update.
6886         * nat/fork-inferior.c: Update.
6887         * nat/x86-linux-dregs.c: Update.
6888         * nto-procfs.c: Update.
6889         * obsd-nat.c: Update.
6890         * procfs.c: Update.
6891         * progspace.c: Update.
6892         * remote.c: Update.
6893         * rs6000-nat.c: Update.
6894         * s390-linux-nat.c: Update.
6895         * sol-thread.c: Update.
6896         * spu-linux-nat.c: Update.
6897         * target.c: Update.
6898         * top.c: Update.
6899         * tracefile-tfile.c: Update.
6900         * windows-nat.c: Update.
6901
6902 2018-07-03  Tom Tromey  <tom@tromey.com>
6903
6904         * common/ptid.h (ptid_build): Don't declare.
6905         * common/ptid.c (ptid_build): Remove.
6906         * aix-thread.c: Update.
6907         * bsd-kvm.c: Update.
6908         * bsd-uthread.c: Update.
6909         * common/agent.c: Update.
6910         * common/ptid.c: Update.
6911         * common/ptid.h: Update.
6912         * corelow.c: Update.
6913         * darwin-nat.c: Update.
6914         * fbsd-nat.c: Update.
6915         * gnu-nat.c: Update.
6916         * linux-fork.c: Update.
6917         * linux-nat.c: Update.
6918         * linux-thread-db.c: Update.
6919         * nat/linux-osdata.c: Update.
6920         * nat/linux-procfs.c: Update.
6921         * nto-procfs.c: Update.
6922         * obsd-nat.c: Update.
6923         * proc-service.c: Update.
6924         * procfs.c: Update.
6925         * ravenscar-thread.c: Update.
6926         * remote-sim.c: Update.
6927         * remote.c: Update.
6928         * sol-thread.c: Update.
6929         * target.c: Update.
6930         * windows-nat.c: Update.
6931
6932 2018-07-03  Tom Tromey  <tom@tromey.com>
6933
6934         * infrun.c (follow_exec): Use exit_inferior_silent.
6935         * inferior.c (exit_inferior_num_silent): Remove.
6936         * inferior.h (exit_inferior_num_silent): Don't declare.
6937
6938 2018-07-03  Tom Tromey  <tom@tromey.com>
6939
6940         PR cli/23340:
6941         * darwin-nat.c (darwin_attach_pid): Reset inferior and
6942         inferior_ptid on error.
6943
6944 2018-07-02  Maciej W. Rozycki  <macro@mips.com>
6945             Simon Marchi  <simon.marchi@polymtl.ca>
6946
6947         PR tdep/8282
6948         * disasm.h (gdb_disassembler): Add
6949         `m_disassembler_options_holder'. member
6950         * disasm.c (get_all_disassembler_options): New function.
6951         (gdb_disassembler::gdb_disassembler): Use it.
6952         (gdb_buffered_insn_length_init_dis): Likewise.
6953         (gdb_buffered_insn_length): Adjust accordingly.
6954         (set_disassembler_options): Handle options with arguments.
6955         (show_disassembler_options_sfunc): Likewise.  Add a leading new
6956         line if showing options with descriptions.
6957         (disassembler_options_completer): Adapt to using the
6958         `disasm_options_and_args_t' structure.
6959         * mips-tdep.c (mips_disassembler_options): New variable.
6960         (mips_disassembler_options_o32): Likewise.
6961         (mips_disassembler_options_n32): Likewise.
6962         (mips_disassembler_options_n64): Likewise.
6963         (gdb_print_insn_mips): Don't set `disassembler_options'.
6964         (gdb_print_insn_mips_n32, gdb_print_insn_mips_n64): Remove
6965         functions.
6966         (mips_gdbarch_init): Always set `gdbarch_print_insn' to
6967         `gdb_print_insn_mips'.  Set `gdbarch_disassembler_options',
6968         `gdbarch_disassembler_options_implicit' and
6969         `gdbarch_valid_disassembler_options'.
6970         * arm-tdep.c (_initialize_arm_tdep): Adapt to using the
6971         `disasm_options_and_args_t' structure.
6972         * gdbarch.sh (disassembler_options_implicit): New `gdbarch'
6973         method.
6974         (valid_disassembler_options): Switch from `disasm_options_t' to
6975         the `disasm_options_and_args_t' structure.
6976         * NEWS: Document `set disassembler-options' support for the MIPS
6977         target.
6978         * gdbarch.h: Regenerate.
6979         * gdbarch.c: Regenerate.
6980
6981 2018-07-02  Sebastian Huber  <sebastian.huber@embedded-brains.de>
6982
6983         * riscv-tdep.c (riscv_register_aliases): Swap "fp" and "s0" entries.
6984
6985 2018-06-29  Joel Brobecker  <brobecker@adacore.com>
6986
6987         * amd64-darwin-tdep.c (x86_darwin_init_abi_64): Add missing
6988         parameter in call to amd64_target_description.
6989         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
6990         * amd64-fbsd-tdep.c (amd64fbsd_core_read_description)
6991         (amd64fbsd_init_abi): Likewise.
6992         * amd64-nbsd-tdep.c (amd64nbsd_init_abi): Likewise.
6993         * amd64-obsd-tdep.c (amd64obsd_init_abi): Likewise.
6994         * amd64-sol2-tdep.c (amd64_sol2_init_abi): Likewise.
6995         * amd64-fbsd-nat.c (amd64_fbsd_nat_target): Likewise.
6996
6997 2018-06-29  Pedro Alves  <palves@redhat.com>
6998
6999         * gdb/amd64-tdep.h (amd64_create_target_description): Add
7000         "segments" parameter.
7001         * gdb/amd64-tdep.c (amd64_none_init_abi, amd64_x32_none_init_abi)
7002         (_initialize_amd64_tdep): Update call to
7003         amd64_create_target_description.
7004         (amd64_target_description): Add "segments" parameter.  Adjust
7005         the implementation to use it.
7006         * gdb/amd64-linux-tdep.c (amd64_linux_read_description): Update
7007         call to amd64_create_target_description.
7008         * gdb/amd64-windows-tdep.c (amd64_windows_init_abi): Likewise.
7009         * gdb/arch/amd64.h (amd64_create_target_description): Add
7010         "segments" register.
7011         * gdb/arch/amd64.c (amd64_create_target_description): Add
7012         "segments" parameter.  Call create_feature_i386_64bit_segments
7013         only if SEGMENTS is true.
7014         * gdb/gdbserver/win32-i386-low.c (i386_arch_setup): Update
7015         call to amd64_create_target_description.
7016
7017 2018-06-29  Pedro Alves  <palves@redhat.com>
7018
7019         * thread.c (thread_target_id_str): New, factored out from ...
7020         (print_thread_info_1): ... here.  Use it to compute the max
7021         "Target Id" column width.
7022
7023 2018-06-29  Pedro Alves  <palves@redhat.com>
7024
7025         * remote.c (remote_target::extra_thread_info): Delete
7026         'display_buf' and 'n' locals.  from the cache, regardless of
7027         packet mechanims is in use.  Use cache for qThreadExtra and qP
7028         methods too.
7029
7030 2018-06-29  Pedro Alves  <palves@redhat.com>
7031
7032         * blockframe.c (find_pc_sect_containing_function): New function.
7033         * breakpoint.c (print_breakpoint_location): Don't call
7034         find_pc_sect_function.
7035         * linespec.c (create_sals_line_offset): Record the location's
7036         symbol in the sal.
7037         * linespec.c (convert_address_location_to_sals): Fill in sal's
7038         symbol with find_pc_sect_containing_function.
7039         * symtab.c (find_function_start_sal): Rename to ...
7040         (find_function_start_sal_1): ... this.
7041         (find_function_start_sal): Reimplement as wrapper around
7042         find_function_start_sal_1, and use
7043         find_pc_sect_containing_function to fill in the sal's symbol.
7044         (find_function_start_sal(symbol*, bool)): Adjust.
7045         * symtab.h (find_pc_function, find_pc_sect_function): Adjust
7046         comments.
7047         (find_pc_sect_containing_function): Declare.
7048
7049 2018-06-29  Pedro Alves  <palves@redhat.com>
7050
7051         * inline-frame.c (stopped_by_user_bp_inline_frame): Return
7052         true if the the location has no symbol.
7053
7054 2018-06-28  Tom Tromey  <tom@tromey.com>
7055
7056         * NEWS: Mention --enable-codesign.
7057         * silent-rules.mk (ECHO_SIGN): New variable.
7058         * configure.ac: Add --enable-codesign.
7059         * configure: Rebuild.
7060         * Makefile.in (CODESIGN, CODESIGN_CERT): New variables.
7061         (gdb$(EXEEXT)): Optionally invoke codesign.
7062
7063 2018-06-28  Pedro Alves  <palves@redhat.com>
7064
7065         * gdbthread.h (struct thread_suspend_state) <stop_pc>: Extend
7066         comments.
7067         (switch_to_thread_no_regs): Adjust comment.
7068         * infcmd.c (stop_pc): Delete.
7069         (post_create_inferior, info_program_command): Replace references
7070         to stop_pc with references to thread_info->suspend.stop_pc.
7071         * inferior.h (stop_pc): Delete declaration.
7072         * infrun.c (proceed, handle_syscall_event, fill_in_stop_func)
7073         (handle_inferior_event_1, handle_signal_stop)
7074         (process_event_stop_test, keep_going_stepped_thread)
7075         (handle_step_into_function, handle_step_into_function_backward)
7076         (print_stop_location): Replace references to stop_pc with
7077         references to thread_info->suspend.stop_pc.
7078         (struct infcall_suspend_state) <stop_pc>: Delete field.
7079         (save_infcall_suspend_state, restore_infcall_suspend_state):
7080         Remove references to inf_stat->stop_pc.
7081         * linux-fork.c (fork_load_infrun_state): Likewise.
7082         * record-btrace.c (record_btrace_set_replay): Likewise.
7083         * record-full.c (record_full_goto_entry): Likewise.
7084         * remote.c (print_one_stopped_thread): Likewise.
7085         * target.c (target_resume): Extend comment.
7086         * thread.c (set_executing_thread): New.
7087         (set_executing): Use it.
7088         (switch_to_thread_no_regs, switch_to_no_thread, switch_to_thread):
7089         Remove references to stop_pc.
7090
7091 2018-06-28  Pedro Alves  <palves@redhat.com>
7092
7093         * infrun.c (handle_inferior_event_1) <TARGET_WAITKIND_EXECD>:
7094         Moving fetching stop_pc until after ecs->event_thread is refreshed.
7095
7096 2018-06-28  Tom Tromey  <tom@tromey.com>
7097
7098         * coffread.c (coff_symfile_finish): Update.
7099         * xcoffread.c (xcoff_symfile_finish): Update.
7100         * elfread.c (elf_symfile_finish): Update.
7101         * symfile.h (dwarf2_free_objfile): Don't declare.
7102         * dwarf2read.c (_initialize_dwarf2_read): Use
7103         register_objfile_data_with_cleanup.
7104         (dwarf2_free_objfile): Now static.  Change signature.
7105
7106 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7107
7108         * symfile.c (add_symbol_file_command, _initialize_symfile): Add
7109         option "-o" to add-symbol-file-load to add an offset to each
7110         section's load address.
7111         * symfile.c (set_objfile_default_section_offset): New function.
7112
7113 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7114
7115         * symfile.c (add_symbol_file_command): Make sure that sections
7116         with the same name are sorted in the same order.
7117
7118 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7119
7120         * symfile.c (add_symbol_file_command, _initialize_symfile): Do not
7121         require the second argument.  If omitted, load sections at the
7122         addresses specified in the file.
7123
7124 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7125
7126         * symfile.c (symbol_file_command, symbol_file_add_main_1)
7127         (_initialize_symfile): Add option "-o" to symbol-file to add an
7128         offset to each section of the symbol file.
7129
7130 2018-06-28  Petr Tesarik  <ptesarik@suse.cz>
7131
7132         * MAINTAINERS (Write After Approval): Add Petr Tesarik.
7133
7134 2018-06-27  Tom Tromey  <tom@tromey.com>
7135
7136         * stack.c (_initialize_stack): Update "func" help text.
7137
7138 2018-06-27  Tom Tromey  <tom@tromey.com>
7139
7140         * python/py-unwind.c (unwind_info_object) <saved_regs>: Now a
7141         std::vector.
7142         (unwind_infopy_str, pyuw_create_unwind_info)
7143         (unwind_infopy_add_saved_register, pyuw_sniffer)
7144         (unwind_infopy_dealloc, unwind_infopy_add_saved_register):
7145         Update.
7146         (struct saved_reg): Add constructor.
7147         <value>: Now a gdbpy_ref<>.
7148
7149 2018-06-27  Tom Tromey  <tom@tromey.com>
7150
7151         * machoread.c (macho_symfile_read): Define "symbol_table" earlier.
7152
7153 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7154
7155         * gdb-gdb.py.in: Format using autopep8.
7156
7157 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7158
7159         * gdb-gdb.py.in (CoreAddrPrettyPrinter): New class.
7160         (type_lookup_function): Recognize CORE_ADDR values.
7161
7162 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7163
7164         * gdb-gdb.py.in (StructMainTypePrettyPrinter) <to_string>: Don't
7165         print tag_name.
7166
7167 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7168
7169         * gdb-gdb.py.in (TypeFlag) <__cmp__>: Remove.
7170         <__lt__>: Add.
7171
7172 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7173
7174         * gdb-gdb.py: Move to...
7175         * gdb-gdb.py.in: ... here.
7176         * configure.ac (AC_CONFIG_FILES): Add gdb-gdb.py.
7177         * Makefile.in (all): Add gdb-gdb.gdb and gdb-gdb.py as
7178         dependencies.
7179         (distclean): Remove gdb-gdb.py when cleaning.
7180         (gdb-gdb.py, gdb-gdb.gdb): New rules.
7181         * configure: Re-generate.
7182
7183 2018-06-27  Pedro Alves  <palves@redhat.com>
7184
7185         * proc-service.c (get_ps_regcache): New.
7186         (ps_lgetregs, ps_lsetregs, ps_lgetfpregs)
7187         (ps_lsetfpregs): Use it.
7188
7189 2018-06-27  Omair Javaid  <omair.javaid@linaro.org>
7190
7191         PR gdb/21695
7192         * dwarf2read.c (lnp_state_machine::check_line_address): Update
7193         declaration.
7194         (dwarf_decode_lines_1): Adjust.
7195
7196 2018-06-27  Simon Marchi  <simon.marchi@ericsson.com>
7197
7198         * fbsd-nat.h (class fbsd_nat_target) <find_memory_regions>: Add
7199         override.
7200         <info_proc>: Likewise.
7201
7202 2018-06-26  Joel Brobecker  <brobecker@adacore.com>
7203
7204         * windows-nat.c (do_windows_fetch_inferior_registers): Rename
7205         to windows_fetch_one_register, and only handle the case of
7206         fetching one register.  Move the code that reloads the context
7207         and iterates over all registers if R is negative to...
7208         (windows_nat_target::fetch_registers): ... here.
7209         (do_windows_store_inferior_registers): Rename to
7210         windows_store_one_register, and only handle the case of storing
7211         one register.  Move the code that handles the case where r is
7212         negative to...
7213         (windows_nat_target::store_registers) ... here.
7214
7215 2018-06-26  Tom Tromey  <tom@tromey.com>
7216
7217         PR rust/22574:
7218         * typeprint.c (whatis_exp): Allow ptype/o for Rust.
7219         * rust-lang.c (rust_print_struct_def): Add podata parameter.
7220         Update.
7221         (rust_internal_print_type): Add podata parameter.
7222         (rust_print_type): Update.
7223
7224 2018-06-26  Tom Tromey  <tom@tromey.com>
7225
7226         * typeprint.h (struct print_offset_data) <update, finish,
7227         maybe_print_hole>: New methods.
7228         <indentation>: New constant.
7229         * typeprint.c (print_offset_data::indentation): Define.
7230         (print_offset_data::maybe_print_hole, print_offset_data::update)
7231         (print_offset_data::finish): Move from c-typeprint.c and rename.
7232         * c-typeprint.c (OFFSET_SPC_LEN): Remove.
7233         (print_spaces_filtered_with_print_options): Update.
7234         (c_print_type_union_field_offset, maybe_print_hole)
7235         (c_print_type_struct_field_offset): Move to typeprint.c and
7236         rename.
7237         (c_type_print_base_struct_union): Update.
7238
7239 2018-06-25  Pedro Alves  <palves@redhat.com>
7240
7241         * gdbthread.h (thread_info_ref, delete_thread)
7242         (delete_thread_silent, first_thread_of_inferior)
7243         (any_thread_of_inferior, switch_to_thread)
7244         (enable_thread_stack_temporaries)
7245         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7246         (get_last_thread_stack_temporary)
7247         (value_in_thread_stack_temporaries, can_access_registers_thread):
7248         Spell out "struct thread_info" instead of just "thread_info".
7249         * inferior.h (notice_new_inferior): Likewise.
7250
7251 2018-06-25  Pedro Alves  <palves@redhat.com>
7252
7253         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7254         pass thread_info pointer to delete_thread.
7255         (windows_nat_target::detach): Pass inferior pointer to
7256         detach_inferior.
7257         * aix-thread.c (sync_threadlists): Pass thread_info pointer to
7258         delete_thread.
7259         * bsd-kvm.c (bsd_kvm_target::close): Use discard_all_inferiors.
7260         * darwin-nat.c (darwin_check_new_threads): Use find_thread_ptid
7261         and pass a thread_info pointer to delete_thread.
7262         * fbsd-nat.c (fbsd_nat_target::wait): Use find_thread_ptid and
7263         pass thread_info pointer to delete_thread.
7264         * go32-nat.c (go32_nat_target::mourn_inferior): Remove
7265         delete_thread_silent call.
7266         * procfs.c (procfs_target::detach): Pass inferior pointer to
7267         detach_inferior.
7268         (procfs_target::wait): Pass thread_info pointer to delete_thread.
7269         * remote-sim.c (gdbsim_target::mourn_inferior): Remove
7270         delete_thread_silent call.
7271         * windows-nat.c (windows_delete_thread): Use find_thread_ptid and
7272         pass thread_info pointer to delete_thread.
7273         (windows_nat_target::detach): Pass inferior pointer to
7274         delete_inferior.
7275
7276 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7277
7278         * regcache.c (readable_regcache::read_part): Fix asserts.
7279         (reg_buffer::raw_collect_part): New function.
7280         (regcache::write_part): Fix asserts.
7281         (reg_buffer::raw_supply_part): New function.
7282         (regcache::transfer_regset_register): New helper function.
7283         (regcache::transfer_regset): Call new functions.
7284         (regcache_supply_regset): Use gdb_byte*.
7285         (regcache::supply_regset): Likewise.
7286         (regcache_collect_regset): Likewise.
7287         (regcache::collect_regset): Likewise.
7288         * regcache.h (reg_buffer::raw_collect_part): New declaration.
7289         (reg_buffer::raw_supply_part): Likewise.
7290         (regcache::transfer_regset_register): Likewise.
7291         (regcache::transfer_regset): Use gdb_byte*.
7292
7293 2018-06-22  Alan Hayward  <alan.hayward@arm.com>
7294
7295         * nat/aarch64-sve-linux-ptrace.h (HAS_SVE_STATE): Use &.
7296
7297 2018-06-21  Pedro Alves  <palves@redhat.com>
7298
7299         * ada-lang.h (ada_get_task_number): Take a thread_info pointer
7300         instead of a ptid_t.  All callers adjusted.
7301         * ada-tasks.c (ada_get_task_number): Likewise.  All callers
7302         adjusted.
7303         (print_ada_task_info, display_current_task_id, task_command_1):
7304         Adjust.
7305         * breakpoint.c (watchpoint_in_thread_scope): Adjust to use
7306         inferior_thread.
7307         (breakpoint_kind): Adjust.
7308         (remove_breakpoints_pid): Rename to ...
7309         (remove_breakpoints_inf): ... this.  Adjust to take an inferior
7310         pointer.  All callers adjusted.
7311         (bpstat_clear_actions): Use inferior_thread.
7312         (get_bpstat_thread): New.
7313         (bpstat_do_actions): Use it.
7314         (bpstat_check_breakpoint_conditions, bpstat_stop_status): Adjust
7315         to take a thread_info pointer.  All callers adjusted.
7316         (set_longjmp_breakpoint_for_call_dummy, set_momentary_breakpoint)
7317         (breakpoint_re_set_thread): Use inferior_thread.
7318         * breakpoint.h (struct inferior): Forward declare.
7319         (bpstat_stop_status): Update.
7320         (remove_breakpoints_pid): Delete.
7321         (remove_breakpoints_inf): New.
7322         * bsd-uthread.c (bsd_uthread_target::wait)
7323         (bsd_uthread_target::update_thread_list): Use find_thread_ptid.
7324         * btrace.c (btrace_add_pc, btrace_enable, btrace_fetch)
7325         (maint_btrace_packet_history_cmd)
7326         (maint_btrace_clear_packet_history_cmd): Adjust.
7327         (maint_btrace_clear_cmd, maint_info_btrace_cmd): Adjust to use
7328         inferior_thread.
7329         * cli/cli-interp.c: Include "inferior.h".
7330         * common/refcounted-object.h (struct
7331         refcounted_object_ref_policy): New.
7332         * compile/compile-object-load.c: Include gdbthread.h.
7333         (store_regs): Use inferior_thread.
7334         * corelow.c (core_target::close): Use current_inferior.
7335         (core_target_open): Adjust to use first_thread_of_inferior and use
7336         the current inferior.
7337         * ctf.c (ctf_target::close): Adjust to use current_inferior.
7338         * dummy-frame.c (dummy_frame_id) <ptid>: Delete, replaced by ...
7339         <thread>: ... this new field.  All references adjusted.
7340         (dummy_frame_pop, dummy_frame_discard, register_dummy_frame_dtor):
7341         Take a thread_info pointer instead of a ptid_t.
7342         * dummy-frame.h (dummy_frame_push, dummy_frame_pop)
7343         (dummy_frame_discard, register_dummy_frame_dtor): Take a
7344         thread_info pointer instead of a ptid_t.
7345         * elfread.c: Include "inferior.h".
7346         (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop):
7347         Use inferior_thread.
7348         * eval.c (evaluate_subexp): Likewise.
7349         * frame.c (frame_pop, has_stack_frames, find_frame_sal): Use
7350         inferior_thread.
7351         * gdb_proc_service.h (struct thread_info): Forward declare.
7352         (struct ps_prochandle) <ptid>: Delete, replaced by ...
7353         <thread>: ... this new field.  All references adjusted.
7354         * gdbarch.h, gdbarch.c: Regenerate.
7355         * gdbarch.sh (get_syscall_number): Replace 'ptid' parameter with a
7356         'thread' parameter.  All implementations and callers adjusted.
7357         * gdbthread.h (thread_info) <set_running>: New method.
7358         (delete_thread, delete_thread_silent): Take a thread_info pointer
7359         instead of a ptid.
7360         (global_thread_id_to_ptid, ptid_to_global_thread_id): Delete.
7361         (first_thread_of_process): Delete, replaced by ...
7362         (first_thread_of_inferior): ... this new function.  All callers
7363         adjusted.
7364         (any_live_thread_of_process): Delete, replaced by ...
7365         (any_live_thread_of_inferior): ... this new function.  All callers
7366         adjusted.
7367         (switch_to_thread, switch_to_no_thread): Declare.
7368         (is_executing): Delete.
7369         (enable_thread_stack_temporaries): Update comment.
7370         <enable_thread_stack_temporaries>: Take a thread_info pointer
7371         instead of a ptid_t.  Incref the thread.
7372         <~enable_thread_stack_temporaries>: Decref the thread.
7373         <m_ptid>: Delete
7374         <m_thr>: New.
7375         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7376         (get_last_thread_stack_temporary)
7377         (value_in_thread_stack_temporaries, can_access_registers_thread):
7378         Take a thread_info pointer instead of a ptid_t.  All callers
7379         adjusted.
7380         * infcall.c (get_call_return_value): Use inferior_thread.
7381         (run_inferior_call): Work with thread pointers instead of ptid_t.
7382         (call_function_by_hand_dummy): Work with thread pointers instead
7383         of ptid_t.  Use thread_info_ref.
7384         * infcmd.c (proceed_thread_callback): Access thread's state
7385         directly.
7386         (ensure_valid_thread, ensure_not_running): Use inferior_thread,
7387         access thread's state directly.
7388         (continue_command): Use inferior_thread.
7389         (info_program_command): Use find_thread_ptid and access thread
7390         state directly.
7391         (proceed_after_attach_callback): Use thread state directly.
7392         (notice_new_inferior): Take a thread_info pointer instead of a
7393         ptid_t.  All callers adjusted.
7394         (exit_inferior): Take an inferior pointer instead of a pid.  All
7395         callers adjusted.
7396         (exit_inferior_silent): New.
7397         (detach_inferior): Delete.
7398         (valid_gdb_inferior_id, pid_to_gdb_inferior_id)
7399         (gdb_inferior_id_to_pid, in_inferior_list): Delete.
7400         (detach_inferior_command, kill_inferior_command): Use
7401         find_inferior_id instead of valid_gdb_inferior_id and
7402         gdb_inferior_id_to_pid.
7403         (inferior_command): Use inferior and thread pointers.
7404         * inferior.h (struct thread_info): Forward declare.
7405         (notice_new_inferior): Take a thread_info pointer instead of a
7406         ptid_t.  All callers adjusted.
7407         (detach_inferior): Delete declaration.
7408         (exit_inferior, exit_inferior_silent): Take an inferior pointer
7409         instead of a pid.  All callers adjusted.
7410         (gdb_inferior_id_to_pid, pid_to_gdb_inferior_id, in_inferior_list)
7411         (valid_gdb_inferior_id): Delete.
7412         * infrun.c (follow_fork_inferior, proceed_after_vfork_done)
7413         (handle_vfork_child_exec_or_exit, follow_exec): Adjust.
7414         (struct displaced_step_inferior_state) <pid>: Delete, replaced by
7415         ...
7416         <inf>: ... this new field.
7417         <step_ptid>: Delete, replaced by ...
7418         <step_thread>: ... this new field.
7419         (get_displaced_stepping_state): Take an inferior pointer instead
7420         of a pid.  All callers adjusted.
7421         (displaced_step_in_progress_any_inferior): Adjust.
7422         (displaced_step_in_progress_thread): Take a thread pointer instead
7423         of a ptid_t.  All callers adjusted.
7424         (displaced_step_in_progress, add_displaced_stepping_state): Take
7425         an inferior pointer instead of a pid.  All callers adjusted.
7426         (get_displaced_step_closure_by_addr): Adjust.
7427         (remove_displaced_stepping_state): Take an inferior pointer
7428         instead of a pid.  All callers adjusted.
7429         (displaced_step_prepare_throw, displaced_step_prepare)
7430         (displaced_step_fixup): Take a thread pointer instead of a ptid_t.
7431         All callers adjusted.
7432         (start_step_over): Adjust.
7433         (infrun_thread_ptid_changed): Remove bit updating ptids in the
7434         displaced step queue.
7435         (do_target_resume): Adjust.
7436         (fetch_inferior_event): Use inferior_thread.
7437         (context_switch, get_inferior_stop_soon): Take an
7438         execution_control_state pointer instead of a ptid_t.  All callers
7439         adjusted.
7440         (switch_to_thread_cleanup): Delete.
7441         (stop_all_threads): Use scoped_restore_current_thread.
7442         * inline-frame.c: Include "gdbthread.h".
7443         (inline_state) <inline_state>: Take a thread pointer instead of a
7444         ptid_t.  All callers adjusted.
7445         <ptid>: Delete, replaced by ...
7446         <thread>: ... this new field.
7447         (find_inline_frame_state): Take a thread pointer instead of a
7448         ptid_t.  All callers adjusted.
7449         (skip_inline_frames, step_into_inline_frame)
7450         (inline_skipped_frames, inline_skipped_symbol): Take a thread
7451         pointer instead of a ptid_t.  All callers adjusted.
7452         * inline-frame.h (skip_inline_frames, step_into_inline_frame)
7453         (inline_skipped_frames, inline_skipped_symbol): Likewise.
7454         * linux-fork.c (delete_checkpoint_command): Adjust to use thread
7455         pointers directly.
7456         * linux-nat.c (get_detach_signal): Likewise.
7457         * linux-thread-db.c (thread_from_lwp): New 'stopped' parameter.
7458         (thread_db_notice_clone): Adjust.
7459         (thread_db_find_new_threads_silently)
7460         (thread_db_find_new_threads_2, thread_db_find_new_threads_1): Take
7461         a thread pointer instead of a ptid_t.  All callers adjusted.
7462         * mi/mi-cmd-var.c: Include "inferior.h".
7463         (mi_cmd_var_update_iter): Update to use thread pointers.
7464         * mi/mi-interp.c (mi_new_thread): Update to use the thread's
7465         inferior directly.
7466         (mi_output_running_pid, mi_inferior_count): Delete, bits factored
7467         out to ...
7468         (mi_output_running): ... this new function.
7469         (mi_on_resume_1): Adjust to use it.
7470         (mi_user_selected_context_changed): Adjust to use inferior_thread.
7471         * mi/mi-main.c (proceed_thread): Adjust to use thread pointers
7472         directly.
7473         (interrupt_thread_callback): : Adjust to use thread and inferior
7474         pointers.
7475         * proc-service.c: Include "gdbthread.h".
7476         (ps_pglobal_lookup): Adjust to use the thread's inferior directly.
7477         * progspace-and-thread.c: Include "inferior.h".
7478         * progspace.c: Include "inferior.h".
7479         * python/py-exitedevent.c (create_exited_event_object): Adjust to
7480         hold a reference to an inferior_object.
7481         * python/py-finishbreakpoint.c (bpfinishpy_init): Adjust to use
7482         inferior_thread.
7483         * python/py-inferior.c (struct inferior_object): Give the type a
7484         tag name instead of a typedef.
7485         (python_on_normal_stop): No need to check if the current thread is
7486         listed.
7487         (inferior_to_inferior_object): Change return type to
7488         inferior_object.  All callers adjusted.
7489         (find_thread_object): Delete, bits factored out to ...
7490         (thread_to_thread_object): ... this new function.
7491         * python/py-infthread.c (create_thread_object): Use
7492         inferior_to_inferior_object.
7493         (thpy_is_stopped): Use thread pointer directly.
7494         (gdbpy_selected_thread): Use inferior_thread.
7495         * python/py-record-btrace.c (btpy_list_object) <ptid>: Delete
7496         field, replaced with ...
7497         <thread>: ... this new field.  All users adjusted.
7498         (btpy_insn_or_gap_new): Drop const.
7499         (btpy_list_new): Take a thread pointer instead of a ptid_t.  All
7500         callers adjusted.
7501         * python/py-record.c: Include "gdbthread.h".
7502         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7503         a ptid_t.  All callers adjusted.
7504         (gdbpy_current_recording): Use inferior_thread.
7505         * python/py-record.h (recpy_record_object) <ptid>: Delete
7506         field, replaced with ...
7507         <thread>: ... this new field.  All users adjusted.
7508         (recpy_element_object) <ptid>: Delete
7509         field, replaced with ...
7510         <thread>: ... this new field.  All users adjusted.
7511         (recpy_insn_new, recpy_func_new): Take a thread pointer instead of
7512         a ptid_t.  All callers adjusted.
7513         * python/py-threadevent.c: Include "gdbthread.h".
7514         (get_event_thread): Use thread_to_thread_object.
7515         * python/python-internal.h (struct inferior_object): Forward
7516         declare.
7517         (find_thread_object, find_inferior_object): Delete declarations.
7518         (thread_to_thread_object, inferior_to_inferior_object): New
7519         declarations.
7520         * record-btrace.c: Include "inferior.h".
7521         (require_btrace_thread): Use inferior_thread.
7522         (record_btrace_frame_sniffer)
7523         (record_btrace_tailcall_frame_sniffer): Use inferior_thread.
7524         (get_thread_current_frame): Use scoped_restore_current_thread and
7525         switch_to_thread.
7526         (get_thread_current_frame): Use thread pointer directly.
7527         (record_btrace_replay_at_breakpoint): Use thread's inferior
7528         pointer directly.
7529         * record-full.c: Include "inferior.h".
7530         * regcache.c: Include "gdbthread.h".
7531         (get_thread_arch_regcache): Use the inferior's address space
7532         directly.
7533         (get_thread_regcache, registers_changed_thread): New.
7534         * regcache.h (get_thread_regcache(thread_info *thread)): New
7535         overload.
7536         (registers_changed_thread): New.
7537         (remote_target) <remote_detach_1>: Swap order of parameters.
7538         (remote_add_thread): <remote_add_thread>: Return the new thread.
7539         (get_remote_thread_info(ptid_t)): New overload.
7540         (remote_target::remote_notice_new_inferior): Use thread pointers
7541         directly.
7542         (remote_target::process_initial_stop_replies): Use
7543         thread_info::set_running.
7544         (remote_target::remote_detach_1, remote_target::detach)
7545         (extended_remote_target::detach): Adjust.
7546         * stack.c (frame_show_address): Use inferior_thread.
7547         * target-debug.h (target_debug_print_thread_info_pp): New.
7548         * target-delegates.c: Regenerate.
7549         * target.c (default_thread_address_space): Delete.
7550         (memory_xfer_partial_1): Use current_inferior.
7551         (target_detach): Use current_inferior.
7552         (target_thread_address_space): Delete.
7553         (generic_mourn_inferior): Use current_inferior.
7554         * target.h (struct target_ops) <thread_address_space>: Delete.
7555         (target_thread_address_space): Delete.
7556         * thread.c (init_thread_list): Use ALL_THREADS_SAFE.  Use thread
7557         pointers directly.
7558         (delete_thread_1, delete_thread, delete_thread_silent): Take a
7559         thread pointer instead of a ptid_t.  Adjust all callers.
7560         (ptid_to_global_thread_id, global_thread_id_to_ptid): Delete.
7561         (first_thread_of_process): Delete, replaced by ...
7562         (first_thread_of_inferior): ... this new function.  All callers
7563         adjusted.
7564         (any_thread_of_process): Rename to ...
7565         (any_thread_of_inferior): ... this, and take an inferior pointer.
7566         (any_live_thread_of_process): Rename to ...
7567         (any_live_thread_of_inferior): ... this, and take an inferior
7568         pointer.
7569         (thread_stack_temporaries_enabled_p, push_thread_stack_temporary)
7570         (value_in_thread_stack_temporaries)
7571         (get_last_thread_stack_temporary): Take a thread pointer instead
7572         of a ptid_t.  Adjust all callers.
7573         (thread_info::set_running): New.
7574         (validate_registers_access): Use inferior_thread.
7575         (can_access_registers_ptid): Rename to ...
7576         (can_access_registers_thread): ... this, and take a thread
7577         pointer.
7578         (print_thread_info_1): Adjust to compare thread pointers instead
7579         of ptids.
7580         (switch_to_no_thread, switch_to_thread): Make extern.
7581         (scoped_restore_current_thread::~scoped_restore_current_thread):
7582         Use m_thread pointer directly.
7583         (scoped_restore_current_thread::scoped_restore_current_thread):
7584         Use inferior_thread.
7585         (thread_command): Use thread pointer directly.
7586         (thread_num_make_value_helper): Use inferior_thread.
7587         * top.c (execute_command): Use inferior_thread.
7588         * tui/tui-interp.c: Include "inferior.h".
7589         * varobj.c (varobj_create): Use inferior_thread.
7590         (value_of_root_1): Use find_thread_global_id instead of
7591         global_thread_id_to_ptid.
7592
7593 2018-06-21  Alan Hayward  <alan.hayward@arm.com>
7594
7595         * regcache.c (readable_regcache::read_part): Avoid memcpy when
7596         possible.
7597         (regcache::write_part): Likewise.
7598         (readable_regcache::cooked_read_part): Update comment.
7599         (readable_regcache::cooked_write_part): Likewise.
7600         * regcache.h: (readable_regcache::read_part): Likewise.
7601         (regcache::write_part): Likewise.
7602
7603 2018-06-21  Richard Bunt  <richard.bunt@arm.com>
7604             Dirk Schubert  <dirk.schubert@arm.com>
7605
7606         * aarch64-linux-nat.c (post_attach): New.
7607         (aarch64_linux_nat_target::post_attach): Override post_attach to
7608         record the number of hardware debug registers.
7609
7610 2018-06-20  Tom Tromey  <tom@tromey.com>
7611
7612         * python/py-param.c (add_setshow_generic): Make parameters const.
7613         (parmpy_init): Update.
7614
7615 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7616
7617         * regcache.h (regcache_cooked_read_ftype): Rename to...
7618         (register_read_ftype): ...this, change type to function_view.
7619         (class reg_buffer) <save>: Remove src parameter.
7620         (readonly_detached_regcache) <readonly_detached_regcache>: Make
7621         parameter non-const in first overload.  Remove src parameter in
7622         second overload.
7623         * regcache.c (do_cooked_read): Remove.
7624         (readonly_detached_regcache::readonly_detached_regcache): Make
7625         parameter non-const, adjust call to other constructor.
7626         (reg_buffer::save): Remove src parameter.
7627         * frame.c (do_frame_register_read): Remove.
7628         (frame_save_as_regcache): Use lambda function.
7629         * ppc-linux-tdep.c (ppu2spu_unwind_register): Change type of src
7630         parameter to ppu2spu_data *.
7631         (ppu2spu_sniffer): Use lambda function.
7632
7633 2018-06-20  Simon Marchi  <simon.marchi@polymtl.ca>
7634
7635         * record-full.c (record_full_target::insert_breakpoint): Remove
7636         "struct" keyword, add const.
7637
7638 2018-06-19  Simon Marchi  <simon.marchi@ericsson.com>
7639
7640         * common/common-defs.h (PACKAGE_NAME, PACKAGE_VERSION,
7641         PACKAGE_STRING, PACKAGE_TARNAME): Undefine.
7642         * configure.ac: Remove AC_PREREQ, add missing quoting.
7643         * gnulib/configure.ac: Modernize usage of
7644         AC_INIT/AM_INIT_AUTOMAKE.  Remove AC_PREREQ.
7645         * gnulib/update-gnulib.sh (AUTOCONF_VERSION): Bump to 2.69.
7646         (AUTOMAKE_VERSION): Bump to 1.15.1.
7647         * configure: Re-generate.
7648         * config.in: Re-generate.
7649         * aclocal.m4: Re-generate.
7650         * gnulib/aclocal.m4: Re-generate.
7651         * gnulib/config.in: Re-generate.
7652         * gnulib/configure: Re-generate.
7653         * gnulib/import/Makefile.in: Re-generate.
7654
7655 2018-06-19  Pedro Alves  <palves@redhat.com>
7656
7657         * minsyms.c (msym_prefer_to_msym_type): New, factored out from ...
7658         (lookup_minimal_symbol_by_pc_section): ... here with
7659         gdb_assert_not_reached added.
7660
7661 2018-06-19  Pedro Alves  <palves@redhat.com>
7662
7663         * inline-frame.c (stopped_by_user_bp_inline_frame): Replace PC
7664         parameter with a block parameter.  Compare location's block symbol
7665         with the frame's block instead of addresses.
7666         (skip_inline_frames): Pass the current block instead of the
7667         frame's address.  Break out as soon as we determine the frame
7668         should not be skipped.
7669
7670 2018-06-18  Tom Tromey  <tom@tromey.com>
7671
7672         * solib-aix.c (solib_aix_get_section_offsets): Return
7673         unique_xmalloc_ptr.
7674         (solib_aix_solib_create_inferior_hook): Update.
7675
7676 2018-06-18  Tom Tromey  <tom@tromey.com>
7677
7678         * solib-darwin.c (darwin_current_sos): Use unique_xmalloc_ptr.
7679
7680 2018-06-18  Tom Tromey  <tom@tromey.com>
7681
7682         * solib-frv.c (frv_relocate_main_executable): Use
7683         unique_xmalloc_ptr.
7684         * solib-dsbt.c (dsbt_relocate_main_executable): Use
7685         unique_xmalloc_ptr.
7686
7687 2018-06-18  Tom Tromey  <tom@tromey.com>
7688
7689         * objfiles.h (inhibit_section_map_updates): Update.
7690         (resume_section_map_updates, resume_section_map_updates_cleanup):
7691         Remove.
7692         * solib-svr4.c (svr4_handle_solib_event): Update.
7693         * objfiles.c (inhibit_section_map_updates): Return
7694         scoped_restore_tmpl<int>.
7695         (resume_section_map_updates, resume_section_map_updates_cleanup):
7696         Remove.
7697
7698 2018-06-18  Tom Tromey  <tom@tromey.com>
7699
7700         * valprint.h (read_string): Update.
7701         * valprint.c (read_string): Change type of "buffer".
7702         (val_print_string): Update.
7703         * python/py-value.c (valpy_string): Update.
7704         * language.h (struct language_defn) <la_get_string>: Change
7705         type of "buffer".
7706         (default_get_string, c_get_string): Update.
7707         * language.c (default_get_string): Change type of "buffer".
7708         * guile/scm-value.c (gdbscm_value_to_string): Update.
7709         * c-lang.c (c_get_string): Change type of "buffer".
7710
7711 2018-06-18  Tom Tromey  <tom@tromey.com>
7712
7713         * ser-mingw.c (struct pipe_state_destroyer): New.
7714         (pipe_state_up): New typedef.
7715         (cleanup_pipe_state): Remove.
7716         (pipe_windows_open): Use pipe_state_up.  Don't release argv.
7717
7718 2018-06-18  Tom Tromey  <tom@tromey.com>
7719
7720         * rust-lang.h (rust_yyerror): Don't declare.
7721         * rust-lang.c (rust_language_defn): Update.
7722         * rust-exp.y (yyerror): Now static.
7723         * parse.c (parse_exp_in_context_1): Update.
7724         * p-lang.h (p_yyerror): Don't declare.
7725         * p-lang.c (p_language_defn): Update.
7726         * p-exp.y (yyerror): Now static.
7727         * opencl-lang.c (opencl_language_defn): Update.
7728         * objc-lang.c (objc_language_defn): Update.
7729         * m2-lang.h (m2_yyerror): Don't declare.
7730         * m2-lang.c (m2_language_defn): Update.
7731         * m2-exp.y (yyerror): Now static.
7732         * language.h (struct language_defn) <la_error>: Remove.
7733         * language.c (unk_lang_error): Remove.
7734         (unknown_language_defn, auto_language_defn): Remove.
7735         * go-lang.h (go_yyerror): Don't declare.
7736         * go-lang.c (go_language_defn): Update.
7737         * go-exp.y (yyerror): Now static.
7738         * f-lang.h (f_yyerror): Don't declare.
7739         * f-lang.c (f_language_defn): Update.
7740         * f-exp.y (yyerror): Now static.
7741         * d-lang.h (d_yyerror): Don't declare.
7742         * d-lang.c (d_language_defn): Update.
7743         * d-exp.y (yyerror): Now static.
7744         * c-lang.h (c_yyerror): Don't declare.
7745         * c-lang.c (c_language_defn, cplus_language_defn)
7746         (asm_language_defn, minimal_language_defn): Update.
7747         * c-exp.y (yyerror): Now static.
7748         * ada-lang.h (ada_yyerror): Don't declare.
7749         * ada-lang.c (ada_language_defn): Update.
7750         * ada-exp.y (yyerror): Now static.
7751
7752 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7753
7754         * aarch64-linux-nat.c (fetch_sveregs_from_thread): New function.
7755         (store_sveregs_to_thread): Likewise.
7756         (aarch64_linux_fetch_inferior_registers): Check for SVE.
7757         (aarch64_linux_store_inferior_registers): Likewise.
7758         * nat/aarch64-sve-linux-ptrace.c (aarch64_sve_get_sveregs): New
7759         function.
7760         (aarch64_sve_regs_copy_to_regcache): Likewise.
7761         (aarch64_sve_regs_copy_from_regcache): Likewise.
7762         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_sveregs): New
7763         declaration.
7764         (aarch64_sve_regs_copy_to_regcache): Likewise.
7765         (aarch64_sve_regs_copy_from_regcache): Likewise.
7766         (sve_context): Structure from Linux headers.
7767         (SVE_SIG_ZREGS_SIZE): Define from Linux headers.
7768         (SVE_SIG_ZREG_SIZE): Likewise.
7769         (SVE_SIG_PREG_SIZE): Likewise.
7770         (SVE_SIG_FFR_SIZE): Likewise.
7771         (SVE_SIG_REGS_OFFSET): Likewise.
7772         (SVE_SIG_ZREGS_OFFSET): Likewise.
7773         (SVE_SIG_ZREG_OFFSET): Likewise.
7774         (SVE_SIG_ZREGS_SIZE): Likewise.
7775         (SVE_SIG_PREGS_OFFSET): Likewise.
7776         (SVE_SIG_PREG_OFFSET): Likewise.
7777         (SVE_SIG_PREGS_SIZE): Likewise.
7778         (SVE_SIG_FFR_OFFSET): Likewise.
7779         (SVE_SIG_REGS_SIZE): Likewise.
7780         (SVE_SIG_CONTEXT_SIZE): Likewise.
7781         (SVE_PT_REGS_MASK): Likewise.
7782         (SVE_PT_REGS_FPSIMD): Likewise.
7783         (SVE_PT_REGS_SVE): Likewise.
7784         (SVE_PT_VL_INHERIT): Likewise.
7785         (SVE_PT_VL_ONEXEC): Likewise.
7786         (SVE_PT_REGS_OFFSET): Likewise.
7787         (SVE_PT_FPSIMD_OFFSET): Likewise.
7788         (SVE_PT_FPSIMD_SIZE): Likewise.
7789         (SVE_PT_SVE_ZREG_SIZE): Likewise.
7790         (SVE_PT_SVE_PREG_SIZE): Likewise.
7791         (SVE_PT_SVE_FFR_SIZE): Likewise.
7792         (SVE_PT_SVE_FPSR_SIZE): Likewise.
7793         (SVE_PT_SVE_FPCR_SIZE): Likewise.
7794         (__SVE_SIG_TO_PT): Likewise.
7795         (SVE_PT_SVE_OFFSET): Likewise.
7796         (SVE_PT_SVE_ZREGS_OFFSET): Likewise.
7797         (SVE_PT_SVE_ZREG_OFFSET): Likewise.
7798         (SVE_PT_SVE_ZREGS_SIZE): Likewise.
7799         (SVE_PT_SVE_PREGS_OFFSET): Likewise.
7800         (SVE_PT_SVE_PREG_OFFSET): Likewise.
7801         (SVE_PT_SVE_PREGS_SIZE): Likewise.
7802         (SVE_PT_SVE_FFR_OFFSET): Likewise.
7803         (SVE_PT_SVE_FPSR_OFFSET): Likewise.
7804         (SVE_PT_SVE_FPCR_OFFSET): Likewise.
7805         (SVE_PT_SVE_SIZE): Likewise.
7806         (SVE_PT_SIZE): Likewise.
7807         (HAS_SVE_STATE): New define.
7808
7809 2018-06-18  Alan Hayward  <alan.hayward@arm.com>
7810
7811         * nat/aarch64-sve-linux-sigcontext.h: New file.
7812         * nat/aarch64-sve-linux-ptrace.h (SVE_VQ_BYTES): Move to
7813         new files.
7814         (SVE_VQ_MIN): Likewise.
7815         (SVE_VQ_MAX): Likewise.
7816         (SVE_VL_MIN): Likewise.
7817         (SVE_VL_MAX): Likewise.
7818         (SVE_NUM_ZREGS): Likewise.
7819         (SVE_NUM_PREGS): Likewise.
7820         (sve_vl_valid): Likewise.
7821         (struct user_sve_header): Likewise.
7822
7823 2018-06-16  Andrew Burgess  <andrew.burgess@embecosm.com>
7824             Richard Bunt <Richard.Bunt@arm.com>
7825
7826         * linux-nat.c (stop_wait_callback): Don't discard SIGSTOP if it
7827         was requested by GDB.
7828
7829 2018-06-15  Tom de Vries  <tdevries@suse.de>
7830
7831         * MAINTAINERS (Write After Approval): Add Tom de Vries.
7832
7833 2018-06-14  Simon Marchi  <simon.marchi@polymtl.ca>
7834
7835         * gnulib/update-gnulib.sh: Print expected versions of
7836         autoconf/aclocal.
7837
7838 2018-06-14  Simon Marchi  <simon.marchi@ericsson.com>
7839
7840         * arch-utils.c (default_type_align): Use type_length_units.
7841         * gdbtypes.c (type_align): Use type_length_units.
7842
7843 2018-06-14  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
7844
7845         * cli/cli-script.c (_initialize_cli_script): Fix online documentation
7846         of 'define' command.
7847
7848 2018-06-14  Tom de Vries  <tdevries@suse.de>
7849
7850         PR cli/22573
7851         * infcmd.c (print_return_value_1): Use get_user_print_options instead of
7852         get_no_prettyformat_print_options.
7853
7854 2018-06-13  Simon Marchi  <simon.marchi@ericsson.com>
7855
7856         * sparc-nat.h: Include target.h.
7857         * sparc64-linux-nat.c (class sparc64_linux_nat_target)
7858         <fetch_registers>: Remove this argument in function call.
7859         <store_registers>: Remove this argument in function call, remove
7860         extra semicolon.
7861         <low_forget_process>: Call sparc64_forget_process instead of
7862         sparc_forget_process.
7863
7864 2018-06-13  Rainer Orth  <ro@CeBiTec.Uni-Bielefeld.DE>
7865
7866         * procfs.c (_initialize_procfs): Use add_inf_child_target.
7867         (procfs_target::make_corefile_notes): Adjust to new
7868         target_read_alloc return type.
7869
7870 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7871             Stephen Roberts  <stephen.roberts@arm.com>
7872
7873         PR gdb/22882
7874         * infrun.c (fetch_inferior_event): If GDB is not proceeding then
7875         run INF_EXEC_COMPLETE handler, even when not calling normal_stop.
7876         Move should_notify_stop local into more inner scope.
7877
7878 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7879             Stephen Roberts  <stephen.roberts@arm.com>
7880
7881         PR gdb/22882
7882         * infrun.c (resume_1): Add call to mark_async_event_handler.
7883
7884 2018-06-12  Andrew Burgess  <andrew.burgess@embecosm.com>
7885
7886         * infrun.c (do_target_wait): Change old version of $pc printed.
7887
7888 2018-06-11  Simon Marchi  <simon.marchi@ericsson.com>
7889
7890         * dwarf2read.c (read_index_from_section): Rename to...
7891         (read_gdb_index_from_section): ... this, update all callers.
7892         (dwarf2_read_index): Rename to...
7893         (dwarf2_read_gdb_index): ... this, update all callers.
7894
7895 2018-06-11  John David Anglin  <danglin@gcc.gnu.org>
7896
7897         * hppa-linux-nat.c
7898         (hppa_linux_nat_target::fetch_inferior_registers): Rename to
7899         hppa_linux_nat_target::fetch_registers.
7900
7901 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7902
7903         * aarch64-tdep.c (aarch64_dwarf_reg_to_regnum): Add mappings.
7904         * aarch64-tdep.h (AARCH64_DWARF_SVE_VG): Add define.
7905         (AARCH64_DWARF_SVE_FFR): Likewise.
7906         (AARCH64_DWARF_SVE_P0): Likewise.
7907         (AARCH64_DWARF_SVE_Z0): Likewise.
7908
7909 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7910
7911         * common/common-regcache.h (raw_compare): New function.
7912         * regcache.c (regcache::raw_compare): Likewise.
7913         * regcache.h (regcache::raw_compare): New declaration.
7914
7915 2018-06-11  Alan Hayward  <alan.hayward@arm.com>
7916
7917         * common/common-regcache.h (reg_buffer_common): New structure.
7918         * regcache.c (reg_buffer::invalidate): Move from detached_regcache.
7919         (reg_buffer::raw_supply): Likewise.
7920         (reg_buffer::raw_supply_integer): Likewise.
7921         (reg_buffer::raw_supply_zeroed): Likewise.
7922         (reg_buffer::raw_collect): Likewise.
7923         (reg_buffer::raw_collect_integer): Likewise.
7924         * regcache.h (reg_buffer::invalidate): Move from detached_regcache.
7925         (reg_buffer::raw_supply): Likewise.
7926         (reg_buffer::raw_supply_integer): Likewise.
7927         (reg_buffer::raw_supply_zeroed): Likewise.
7928         (reg_buffer::raw_collect): Likewise.
7929         (reg_buffer::raw_collect_integer): Likewise.
7930
7931 2018-06-10  Tom Tromey  <tom@tromey.com>
7932
7933         * remote.c (stop_reply_p): Remove typedef.  Don't declare queue.
7934         (class remote_state) <stop_reply_queue>: Now std::vector.
7935         (remote_state::~remote_state)
7936         (remote_target::stop_reply_queue_length): Update.
7937         (struct queue_iter_param, remove_child_of_pending_fork)
7938         (struct check_pending_event_prevents_wildcard_vcont_callback_data)
7939         (check_pending_event_prevents_wildcard_vcont_callback)
7940         (remove_stop_reply_for_inferior)
7941         (remove_stop_reply_of_remote_state)
7942         (remote_notif_remove_once_on_match)
7943         (stop_reply_match_ptid_and_ws)
7944         (remote_kill_child_of_pending_fork): Remove.
7945         (remote_target::remove_new_fork_children)
7946         (remote_target::check_pending_events_prevent_wildcard_vcont)
7947         (remote_target::discard_pending_stop_replies)
7948         (remote_target::discard_pending_stop_replies_in_queue)
7949         (remote_target::remote_notif_remove_queued_reply)
7950         (remote_target::queued_stop_reply)
7951         (remote_target::push_stop_reply, remote_target::peek_stop_reply)
7952         (remote_target::wait, remote_target::kill_new_fork_children)
7953         (remote_target::async): Update.
7954
7955 2018-06-10  Tom Tromey  <tom@tromey.com>
7956
7957         * record-full.c (record_full_arch_list_cleanups): Remove.
7958         (record_full_message): Use try/catch.
7959         (record_full_wait_cleanups): Remove.
7960         (record_full_wait_1): Use try/catch.
7961         (record_full_restore): Likewise.
7962
7963 2018-06-10  Tom Tromey  <tom@tromey.com>
7964
7965         * record-full.c (record_full_breakpoint_p): Remove typedef.  Don't
7966         declare VEC.  Add constructor.
7967         <in_target_beneath>: Now bool.
7968         (record_full_breakpoints): Now a std::vector, static.
7969         (record_full_sync_record_breakpoints)
7970         (record_full_init_record_breakpoints)
7971         (record_full_target::insert_breakpoint)
7972         (record_full_target::remove_breakpoint): Update.  Don't use XNEW.
7973
7974 2018-06-10  Simon Marchi  <simon.marchi@polymtl.ca>
7975
7976         * dwarf2read.c (process_cu_includes): Remove struct keyword.
7977         * serial.c (serial_interface_lookup): Remove struct keyword.
7978
7979 2018-06-10  Tom Tromey  <tom@tromey.com>
7980
7981         * procfs.c (procfs_target::xfer_partial): Use "beneath" as a
7982         method.
7983         * nto-procfs.c (nto_procfs_target::xfer_partial): Use "beneath" as
7984         a method.
7985         * go32-nat.c (go32_nat_target::xfer_partial): Use "beneath" as a
7986         method.
7987         * arm-linux-nat.c (arm_linux_nat_target::read_description): Use
7988         "beneath" as a method.
7989         * arm-fbsd-nat.c (arm_fbsd_nat_target::read_description):
7990         Use "beneath" as a method.
7991
7992 2018-06-10  Tom Tromey  <tom@tromey.com>
7993
7994         * tracefile.c (struct trace_file_writer_deleter): New.
7995         <operator()>: Rename from trace_file_writer_xfree.
7996         (trace_file_writer_up): New typedef.
7997         (tsave_command, trace_save_tfile, trace_save_ctf): Update.
7998
7999 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8000
8001         * regcache.h (reg_buffer) <~reg_buffer>: Use default destructor.
8002         <m_registers, m_register_status>: Change type to
8003         std::unique_ptr.
8004         * regcache.c (reg_buffer::reg_buffer): Use new instead of
8005         XCNEWVEC.
8006
8007 2018-06-09  Simon Marchi  <simon.marchi@ericsson.com>
8008
8009         * common/common-regcache.h (enum register_status): Add
8010         underlying type "signed char".
8011         * regcache.h (reg_buffer) <m_register_status>: Change type to
8012         register_status *.
8013         * regcache.c (reg_buffer::reg_buffer): Alocate arrays of
8014         register_status instead of signed char.
8015         (reg_buffer::save): Use REG_UNKNOWN instead of 0.
8016         (reg_buffer::get_register_status): Remove cast.
8017         (readable_regcache::raw_read): Remove cast.
8018         (readable_regcache::cooked_read): Remove cast.
8019
8020 2018-06-09  Tom Tromey  <tom@tromey.com>
8021
8022         * source.c (reverse_search_command, forward_search_command): Use
8023         scoped_fd.
8024
8025 2018-06-09  Tom Tromey  <tom@tromey.com>
8026
8027         * serial.c (serial_ops_p): Remove typedef.  Don't declare VEC.
8028         (serial_ops_list): Now static, std::vector.
8029         (serial_interface_lookup, serial_add_interface): Update.
8030
8031 2018-06-09  Tom Tromey  <tom@tromey.com>
8032
8033         * dwarf2read.c (process_cu_includes): Update.
8034         (process_full_comp_unit): Update.
8035         * dwarf2read.h (struct dwarf2_per_objfile) <just_read_cus>: Now a
8036         std::vector.
8037
8038 2018-06-08  Paul Koning  <paul_koning@dell.com>
8039
8040         PR gdb/23252
8041
8042         * python/python.c (do_start_initialization):
8043         Avoid call to internal Python API.
8044         (init__gdb_module): New function.
8045
8046 2018-06-08  Gary Benson <gbenson@redhat.com>
8047
8048         * linux-thread-db.c (valprint.h): New include.
8049         (struct check_thread_db_info): New structure.
8050         (check_thread_db_on_load, tdb_testinfo): New static globals.
8051         (check_thread_db, check_thread_db_callback): New functions.
8052         (try_thread_db_load_1): Run integrity checks if requested.
8053         (maintenance_check_libthread_db): New function.
8054         (_initialize_thread_db): Register "maint check libthread-db"
8055         and "maint set/show check-libthread-db".
8056         * NEWS: Mention the above new commands.
8057
8058 2018-06-08  Tom Tromey  <tom@tromey.com>
8059
8060         * windows-nat.c (windows_nat_target::xfer_partial): "beneath" is
8061         now a method.
8062
8063 2018-06-08  Tom Tromey  <tom@tromey.com>
8064
8065         * btrace.c (parse_xml_raw): Use gdb::unique_xmalloc_ptr.
8066
8067 2018-06-08  Tom Tromey  <tom@tromey.com>
8068
8069         * common/btrace-common.h (struct btrace_data): Add constructor,
8070         destructor, move assignment operator.
8071         <empty, clear, fini>: New methods.
8072         <format>: Initialize.
8073         (btrace_data_init, btrace_data_fini, btrace_data_clear)
8074         (btrace_data_empty): Don't declare.
8075         * common/btrace-common.c (btrace_data_init): Remove.
8076         (btrace_data::fini): Rename from btrace_data_fini.
8077         (btrace_data::empty): Rename from btrace_data_empty.
8078         (btrace_data::clear): Rename from btrace_data_clear.  Return
8079         bool.
8080         * btrace.h (make_cleanup_btrace_data): Don't declare.
8081         * btrace.c (btrace_add_pc, btrace_stitch_trace, btrace_clear)
8082         (parse_xml_btrace): Update.
8083         (do_btrace_data_cleanup, make_cleanup_btrace_data): Remove.
8084         (maint_btrace_clear_packet_history_cmd): Update.
8085
8086 2018-06-07  Pedro Alves  <palves@redhat.com>
8087
8088         * target.h (target_ops) <beneath>: Now a method.  All references
8089         updated.
8090         (class target_stack): New.
8091         * target.c (g_target_stack): New.
8092         (g_current_top_target): Delete.
8093         (current_top_target): Get the top target out of g_target_stack.
8094         (target_stack::push, target_stack::unpush): New.
8095         (push_target, unpush_target): Reimplement.
8096         (target_is_pushed): Reimplement in terms of g_target_stack.
8097         (target_ops::beneath, target_stack::find_beneath): New.
8098
8099 2018-06-07  Pedro Alves  <palves@redhat.com>
8100
8101         * target.h (find_target_beneath): Delete declaration.
8102         * target.c (find_target_beneath): Delete definition.
8103         * aix-thread.c: All callers of find_target_beneath adjusted to
8104         call target_ops::beneath instead.
8105         * bsd-uthread.c: Likewise.
8106         * linux-thread-db.c: Likewise.
8107         * ravenscar-thread.c: Likewise.
8108         * sol-thread.c: Likewise.
8109         * spu-multiarch.c: Likewise.
8110
8111 2018-06-07  Pedro Alves  <palves@redhat.com>
8112
8113         * target.h (target_ops) <beneath>: Now a method.  All references
8114         updated.
8115         (target_ops) <m_beneath>: New.
8116         * target.c (target_ops::beneath): New.
8117         * corelow.c: Adjust all references to target_ops::beneath.
8118         * linux-thread-db.c: Likewise.
8119         * make-target-delegates: Likewise.
8120         * record-btrace.c: Likewise.
8121         * record-full.c: Likewise.
8122         * remote.c: Likewise.
8123         * target.c: Likewise.
8124         * target-delegates.c: Regenerate.
8125
8126 2018-06-07  Pedro Alves  <palves@redhat.com>
8127
8128         * target.h (target_stack): Delete.
8129         (current_top_target): Declare function.
8130         * target.c (target_stack): Delete.
8131         (g_current_top_target): New.
8132         (current_top_target): New function.
8133         * auxv.c: Use current_top_target instead of target_stack
8134         throughout.
8135         * avr-tdep.c: Likewise.
8136         * breakpoint.c: Likewise.
8137         * corefile.c: Likewise.
8138         * elfread.c: Likewise.
8139         * eval.c: Likewise.
8140         * exceptions.c: Likewise.
8141         * frame.c: Likewise.
8142         * gdbarch-selftests.c: Likewise.
8143         * gnu-v3-abi.c: Likewise.
8144         * ia64-tdep.c: Likewise.
8145         * ia64-vms-tdep.c: Likewise.
8146         * infcall.c: Likewise.
8147         * infcmd.c: Likewise.
8148         * infrun.c: Likewise.
8149         * linespec.c: Likewise.
8150         * linux-tdep.c: Likewise.
8151         * minsyms.c: Likewise.
8152         * ppc-linux-nat.c: Likewise.
8153         * ppc-linux-tdep.c: Likewise.
8154         * procfs.c: Likewise.
8155         * regcache.c: Likewise.
8156         * remote.c: Likewise.
8157         * rs6000-tdep.c: Likewise.
8158         * s390-linux-nat.c: Likewise.
8159         * s390-tdep.c: Likewise.
8160         * solib-aix.c: Likewise.
8161         * solib-darwin.c: Likewise.
8162         * solib-dsbt.c: Likewise.
8163         * solib-spu.c: Likewise.
8164         * solib-svr4.c: Likewise.
8165         * solib-target.c: Likewise.
8166         * sparc-tdep.c: Likewise.
8167         * sparc64-tdep.c: Likewise.
8168         * spu-tdep.c: Likewise.
8169         * symfile.c: Likewise.
8170         * symtab.c: Likewise.
8171         * target-descriptions.c: Likewise.
8172         * target-memory.c: Likewise.
8173         * target.c: Likewise.
8174         * target.h: Likewise.
8175         * tracefile-tfile.c: Likewise.
8176         * tracepoint.c: Likewise.
8177         * valops.c: Likewise.
8178         * valprint.c: Likewise.
8179         * value.c: Likewise.
8180         * windows-tdep.c: Likewise.
8181         * mi/mi-main.c: Likewise.
8182
8183 2018-06-07  Tom Tromey  <tom@tromey.com>
8184
8185         * valprint.h (build_address_symbolic): Declare.
8186         * printcmd.c (print_address_symbolic): Update.
8187         (build_address_symbolic): Change "name" and "filename" to
8188         std::string.
8189         * disasm.c (gdb_pretty_print_disassembler::pretty_print_insn):
8190         Update.
8191         * defs.h (build_address_symbolic): Remove declaration.
8192
8193 2018-06-07  Alan Hayward  <alan.hayward@arm.com>
8194
8195         * aarch64-tdep.c (AARCH64_SVE_V0_REGNUM): Add define.
8196         (aarch64_vnv_type): Add function.
8197         (aarch64_pseudo_register_name): Add V regs for SVE.
8198         (aarch64_pseudo_register_type): Likewise.
8199         (aarch64_pseudo_register_reggroup_p): Likewise.
8200         (aarch64_pseudo_read_value_2): Use V0 offset for SVE
8201         (aarch64_pseudo_read_value): Add V regs for SVE.
8202         (aarch64_pseudo_write_2): Use V0 offset for SVE
8203         (aarch64_pseudo_write): Add V regs for SVE.
8204         * aarch64-tdep.h (struct gdbarch_tdep): Add vnv_type.
8205
8206 2018-06-06  Sergio Durigan Junior  <sergiodj@redhat.com>
8207
8208         * arch/aarch64.h (sve_vq_from_vl): Guard with #ifndef.
8209         (sve_vl_from_vq): Likewise.
8210
8211 2018-06-05  Tom Tromey  <tom@tromey.com>
8212
8213         * cli/cli-cmds.c (show_version): Update.
8214         * top.c (print_gdb_version): Add "interactive" parameter.
8215         Update.
8216         * main.c (captured_main_1): Update.
8217         * top.h (print_gdb_version): Add "interactive" parameter and a
8218         comment.
8219
8220 2018-06-05  David Malcolm  <dmalcolm@redhat.com>
8221
8222         * common/enum-flags.h: Add trailing semicolon to example in
8223         comment.
8224
8225 2018-06-05  Tom Tromey  <tom@tromey.com>
8226
8227         PR cli/12326:
8228         * NEWS: Add entry about pager.
8229         * utils.c (pagination_disabled_for_command): New global.
8230         (prompt_for_continue): Allow "c" response to prompt.
8231         (reinitialize_more_filter): Clear
8232         pagination_disabled_for_command.
8233         (fputs_maybe_filtered): Check pagination_disabled_for_command.
8234
8235 2018-06-04  Tom Tromey  <tom@tromey.com>
8236
8237         * ada-lang.h (ada_lookup_symbol_list): Update.
8238         * ada-lang.c (resolve_subexp): Update.
8239         (symbols_are_identical_enums): Change type of syms.  Remove nsyms
8240         parameter.
8241         (remove_extra_symbols, remove_irrelevant_renamings): Likewise.
8242         (ada_lookup_symbol_list_worker, ada_lookup_symbol_list): Change
8243         results parameter to std::vector.
8244         (ada_iterate_over_symbols, ada_lookup_symbol, get_var_value):
8245         Update.
8246         * ada-exp.y (block_lookup): Update.
8247         (select_possible_type_sym): Change type of syms.  Remove nsyms
8248         parameter.
8249         (write_var_or_type, write_name_assoc): Update.
8250
8251 2018-06-04  Joel Brobecker  <brobecker@adacore.com>
8252
8253         * windows-nat.c (windows_nat_target::xfer_partial): Return
8254         TARGET_XFER_E_IO if we need to delegate to the target beneath
8255         but BENEATH is NULL.
8256
8257 2018-06-04  Simon Marchi  <simon.marchi@ericsson.com>
8258
8259         * Makefile.in (config.status): Add configure.nat as a
8260         dependency.
8261
8262 2018-06-04  Tom Tromey  <tom@tromey.com>
8263
8264         * cp-name-parser.y (cpname_state): Add method declarations.
8265         (HANDLE_QUAL): Update.
8266         (cpname_state::d_grab, cpname_state::fill_comp)
8267         (cpname_state::make_operator, cpname_state::make_dtor)
8268         (cpname_state::make_builtin_type, cpname_state::make_name)
8269         (cpname_state::d_qualify, cpname_state::d_int_type)
8270         (cpname_state::d_unary, cpname_state::d_binary): Now methods.
8271         (%union): Move earlier.
8272
8273 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8274
8275         * elfread.c (elf_symfile_segments): Use ELF_SECTION_IN_SEGMENT.
8276
8277 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8278
8279         * aarch64-tdep.c (aarch64_pseudo_read_value_1): New helper func.
8280         (aarch64_pseudo_write_1): Likewise.
8281         (aarch64_pseudo_read_value): Use helper.
8282         (aarch64_pseudo_write): Likewise.
8283
8284 2018-06-04  Pedro Alves  <palves@redhat.com>
8285
8286         * darwin-nat.c (darwin_ops): Delete.
8287         (darwin_attach_pid): Use get_native_target.
8288
8289 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8290
8291         * aarch64-tdep.c (aarch64_get_tdesc_vq): Use uint64_t for VQ.
8292         * aarch64-tdep.h (struct gdbarch_tdep): Likewise.
8293
8294 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8295
8296         * aarch64-linux-nat.c (aarch64_linux_read_description): Support SVE.
8297         * aarch64-tdep.c (aarch64_get_tdesc_vq): New function.
8298         (aarch64_gdbarch_init): Check for SVE.
8299         * aarch64-tdep.h (gdbarch_tdep::has_sve): New function.
8300
8301 2018-06-04  Alan Hayward  <alan.hayward@arm.com>
8302
8303         * aarch64-tdep.c (aarch64_read_description): Use uint64_t for VQ.
8304         * aarch64-tdep.h (aarch64_read_description): Likewise.
8305         * arch/aarch64.c (aarch64_create_target_description): Likewise.
8306         * arch/aarch64.h (aarch64_create_target_description): Likewise.
8307         * features/aarch64-sve.c (create_feature_aarch64_sve): Likewise.
8308         * nat/aarch64-sve-linux-ptrace.c(aarch64_sve_get_vq): Likewise.
8309         * nat/aarch64-sve-linux-ptrace.h (aarch64_sve_get_vq): Likewise.
8310
8311 2018-06-02  Simon Marchi  <simon.marchi@ericsson.com>
8312
8313         * value.c (value_fetch_lazy_bitfield): New.
8314         (value_fetch_lazy_memory): New.
8315         (value_fetch_lazy_register): New.
8316         (value_fetch_lazy): Factor out to smaller functions.
8317
8318 2018-06-01  Tom Tromey  <tom@tromey.com>
8319
8320         * cp-name-parser.y (backslashable, represented): Now const.
8321
8322 2018-06-01  Tom Tromey  <tom@tromey.com>
8323
8324         * cp-name-parser.y: Include parser-defs.h.
8325         (parser_fprintf): Remove declaration.
8326
8327 2018-06-01  Tom Tromey  <tom@tromey.com>
8328
8329         * cp-name-parser.y: Use %pure-parser, %lex-param, and
8330         %parse-param.
8331         (lexptr, prev_lexptr, error_lexptr, global_errmsg, demangle_info)
8332         (global_result): Remove globals.
8333         (struct cpname_state): New.
8334         (yyparse): Don't declare.
8335         (yylex, yyerror): Move declarations after %union.
8336         (d_grab, fill_comp, make_operator, make_dtor, make_builtin_type)
8337         (make_name): Add state parameter.
8338         Update all callers.
8339         (d_qualify, d_int_type, d_unary, d_binary, parse_number) Add state
8340         parameter.
8341         (HANDLE_QUAL, HANDLE_SPECIAL, HANDLE_TOKEN2, HANDLE_TOKEN3):
8342         Update.
8343         (yylex): Add lvalp, state parameters.
8344         (yyerror): Add state parameter.
8345         (cp_demangled_name_to_comp): Update.
8346
8347 2018-06-01  Tom Tromey  <tom@tromey.com>
8348
8349         * cp-name-parser.y (parser_fprintf): Declare.
8350         (GDB_YY_REMAP_PREFIX): Define.
8351         Include yy-remap.h.  Don't redefine yy* identifiers.
8352
8353 2018-06-01  Tom Tromey  <tom@tromey.com>
8354
8355         * python/py-type.c (typy_legacy_template_argument): Update.
8356         * cp-support.h (cp_demangled_name_to_comp): Update.
8357         * cp-name-parser.y (cp_demangled_name_to_comp): Change errmsg
8358         parameter to be a "std::string *".
8359         (main): Update.
8360
8361 2018-06-01  H.J. Lu  <hongjiu.lu@intel.com>
8362
8363         * ada-lex.l: Include "diagnostics.h" instead of
8364         "common/diagnostics.h".
8365         * unittests/environ-selftests.c: Likewise.
8366         * common/diagnostics.h: Moved to ../include.
8367
8368 2018-06-01  Joel Brobecker  <brobecker@adacore.com>
8369
8370         * breakpoint.c (breakpoint_re_set): Temporarily force language_mode
8371         to language_mode_manual while calling breakpoint_re_set_one.
8372
8373 2018-06-01  Tom Tromey  <tom@tromey.com>
8374
8375         * valops.c (value_cast_structs, destructor_name_p): Update.
8376         * symtab.c (gdb_mangle_name): Update.
8377         * stabsread.c (define_symbol, read_cpp_abbrev, read_baseclasses):
8378         Update.
8379         * p-valprint.c (pascal_object_is_vtbl_ptr_type)
8380         (pascal_object_print_value_fields, pascal_object_print_value):
8381         Update.
8382         * p-typeprint.c (pascal_type_print_derivation_info): Update.
8383         * linespec.c (find_methods): Update.
8384         * gdbtypes.h (type_name_no_tag): Remove.
8385         (type_name_or_error): Rename from type_name_no_tag_or_error.
8386         * gdbtypes.c (type_name_no_tag): Remove.
8387         (type_name_or_error): Rename from type_name_no_tag_or_error.
8388         (lookup_struct_elt_type, check_typedef): Update.
8389         * expprint.c (print_subexp_standard): Update.
8390         * dwarf2read.c (dwarf2_add_field, load_partial_dies): Update.
8391         * d-namespace.c (d_lookup_nested_symbol): Update.
8392         * cp-valprint.c (cp_is_vtbl_ptr_type, cp_print_value_fields)
8393         (cp_print_class_member): Update.
8394         * cp-namespace.c (cp_lookup_nested_symbol): Update.
8395         * completer.c (add_struct_fields): Update.
8396         * c-typeprint.c (cp_type_print_derivation_info)
8397         (c_type_print_varspec_prefix, c_type_print_base_struct_union):
8398         Update.
8399         * ada-lang.c (parse_old_style_renaming, xget_renaming_scope)
8400         (ada_prefer_type, ada_is_exception_sym): Update.
8401
8402 2018-06-01  Tom Tromey  <tom@tromey.com>
8403
8404         * valops.c (enum_constant_from_type, value_namespace_elt)
8405         (value_maybe_namespace_elt): Update.
8406         * valarith.c (find_size_for_pointer_math): Update.
8407         * target-descriptions.c (make_gdb_type): Update.
8408         * symmisc.c (print_symbol): Update.
8409         * stabsread.c (define_symbol, read_type)
8410         (complain_about_struct_wipeout, add_undefined_type)
8411         (cleanup_undefined_types_1): Update.
8412         * rust-lang.c (rust_tuple_type_p, rust_slice_type_p)
8413         (rust_range_type_p, val_print_struct, rust_print_struct_def)
8414         (rust_internal_print_type, rust_composite_type)
8415         (rust_evaluate_funcall, rust_evaluate_subexp)
8416         (rust_inclusive_range_type_p): Update.
8417         * python/py-type.c (typy_get_tag): Update.
8418         * p-typeprint.c (pascal_type_print_base): Update.
8419         * mdebugread.c (parse_symbol, parse_type): Update.
8420         * m2-typeprint.c (m2_long_set, m2_record_fields, m2_enum):
8421         Update.
8422         * guile/scm-type.c (gdbscm_type_tag): Update.
8423         * go-lang.c (sixg_string_p): Update.
8424         * gnu-v3-abi.c (build_gdb_vtable_type, build_std_type_info_type):
8425         Update.
8426         * gdbtypes.h (struct main_type) <tag_name>: Remove.
8427         (TYPE_TAG_NAME): Remove.
8428         * gdbtypes.c (type_name_no_tag): Simplify.
8429         (check_typedef, check_types_equal, recursive_dump_type)
8430         (copy_type_recursive, arch_composite_type): Update.
8431         * f-typeprint.c (f_type_print_base): Update.  Print "Type" prefix
8432         in summary mode when needed.
8433         * eval.c (evaluate_funcall): Update.
8434         * dwarf2read.c (fixup_go_packaging, read_structure_type)
8435         (process_structure_scope, read_enumeration_type)
8436         (read_namespace_type, read_module_type, determine_prefix): Update.
8437         * cp-support.c (inspect_type): Update.
8438         * coffread.c (process_coff_symbol, decode_base_type): Update.
8439         * c-varobj.c (c_is_path_expr_parent): Update.
8440         * c-typeprint.c (c_type_print_base_struct_union): Update.
8441         (c_type_print_base_1): Update.  Print struct/class/union/enum in
8442         summary when using C language.
8443         * ax-gdb.c (gen_struct_ref, gen_namespace_elt)
8444         (gen_maybe_namespace_elt): Update.
8445         * ada-lang.c (ada_type_name): Simplify.
8446         (empty_record, ada_template_to_fixed_record_type_1)
8447         (template_to_static_fixed_type)
8448         (to_record_with_fixed_variant_part, ada_check_typedef): Update.
8449
8450 2018-06-01  Tom Tromey  <tom@tromey.com>
8451
8452         * dwarf2read.c (dwarf2_compute_name): Pass CU's language to
8453         c_print_type.
8454         * c-typeprint.c (c_print_type_1): Add "language" parameter.
8455         (c_print_type): Update.
8456         (c_print_type): New overload.
8457         (c_type_print_varspec_prefix, c_type_print_args)
8458         (c_type_print_varspec_suffix, c_print_type_no_offsets)
8459         (c_type_print_base_struct_union, c_type_print_base_1)
8460         (cp_type_print_method_args): Add "language" parameter.
8461         (c_type_print_base): Update.
8462         * c-lang.h (c_print_type): Add new overload.
8463
8464 2018-06-01  Tom Tromey  <tom@tromey.com>
8465
8466         * typeprint.h (c_type_print_varspec_suffix): Don't declare.
8467         * c-typeprint.c (c_type_print_varspec_suffix): Now static.
8468
8469 2018-06-01  Alan Hayward  <alan.hayward@arm.com>
8470
8471         * aarch64-tdep.c (aarch64_sve_register_names): New const
8472         var.
8473         * arch/aarch64.h (enum aarch64_regnum): Add SVE entries.
8474         (AARCH64_SVE_Z_REGS_NUM): New define.
8475         (AARCH64_SVE_P_REGS_NUM): Likewise.
8476         (AARCH64_SVE_NUM_REGS): Likewise.
8477
8478 2018-05-31  Uros Bizjak  <ubizjak@gmail.com>
8479
8480         * nat/linux-ptrace.h [__alpha__]
8481         (GDB_ARCH_IS_TRAP_BRKPT, GDB_ARCH_IS_TRAP_HWBKPT): Remove
8482         definitions.
8483
8484 2018-05-31  Maciej W. Rozycki  <macro@mips.com>
8485
8486         * arch-utils.c (gdbarch_info_fill): Set `default_byte_order' to
8487         the endianness selected.
8488         * NEWS: Document `set endian auto' mode operation update.
8489
8490 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8491
8492         * Makefile.in: Add new header.
8493         * gdb/arch/aarch64.h (sve_vg_from_vl): New macro.
8494         (sve_vl_from_vg): Likewise.
8495         (sve_vq_from_vl): Likewise.
8496         (sve_vl_from_vq): Likewise.
8497         (sve_vq_from_vg): Likewise.
8498         (sve_vg_from_vq): Likewise.
8499         * configure.nat: Add new c file.
8500         * nat/aarch64-sve-linux-ptrace.c: New file.
8501         * nat/aarch64-sve-linux-ptrace.h: New file.
8502
8503 2018-05-31  Alan Hayward  <alan.hayward@arm.com>
8504
8505         * aarch64-linux-nat.c (aarch64_linux_read_description):
8506         Add parmeter zero.
8507         * aarch64-linux-tdep.c (aarch64_linux_core_read_description):
8508         Likewise.
8509         * aarch64-tdep.c (tdesc_aarch64_list): Add.
8510         (aarch64_read_description): Use VQ to index tdesc_aarch64_list.
8511         (aarch64_gdbarch_init): Add parmeter zero.
8512         * aarch64-tdep.h (aarch64_read_description): Add VQ parmeter.
8513         * arch/aarch64.c (aarch64_create_target_description): Check VQ.
8514         * arch/aarch64.h (aarch64_create_target_description): Add VQ.
8515         parmeter.
8516         * doc/gdb.texinfo: Describe SVE feature
8517         * features/aarch64-sve.c: New file.
8518
8519 2018-05-31  Omair Javaid  <omair.javaid@linaro.org>
8520
8521         PR gdb/23210
8522         * gdbarch.sh (significant_addr_bit): Default to zero when
8523         not set by target architecture.
8524         * gdbarch.c: Re-generated.
8525         * utils.c (address_significant): Update.
8526
8527 2018-05-30  Joel Brobecker  <brobecker@adacore.com>
8528
8529         * stack.c (func_command): Remove trailing newline in call to error.
8530
8531 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8532
8533         * regcache.h (regcache_raw_collect): Remove, update callers to
8534         use regcache::raw_collect.
8535         * regcache.c (regcache_raw_collect): Remove.
8536
8537 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8538
8539         * regcache.h (regcache_raw_supply): Remove, update callers to
8540         use detached_regcache::raw_supply.
8541         * regcache.c (regcache_raw_supply): Remove.
8542
8543 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8544
8545         * regcache.h (regcache_cooked_write_part): Remove, update
8546         callers to use regcache::cooked_write_part.
8547         * regcache.c (regcache_cooked_write_part): Remove.
8548
8549 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8550
8551         * regcache.h (regcache_cooked_read_part): Remove, update callers
8552         to use readable_regcache::cooked_read_part.
8553         * regcache.c (regcache_cooked_read_part): Remove.
8554
8555 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8556
8557         * regcache.h (regcache_cooked_read_value): Remove, update
8558         callers to use readable_regcache::cooked_read_value.
8559         * regcache.c (regcache_cooked_read_value): Remove.
8560
8561 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8562
8563         * regcache.h (regcache_cooked_write): Remove, update callers to
8564         use regcache::cooked_write.
8565         * regcache.c (regcache_cooked_write): Remove.
8566
8567 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8568
8569         * regcache.h (regcache_invalidate): Remove, update callers to
8570         use detached_regcache::invalidate instead.
8571         * regcache.c (regcache_invalidate): Remove.
8572
8573 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8574
8575         * regcache.h (regcache_raw_write_part): Remove, update callers
8576         to use regcache::raw_write_part instead.
8577         * regcache.c (regcache_raw_write_part): Remove.
8578
8579 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8580
8581         * regcache.h (regcache_raw_read_part): Remove, update callers to
8582         use readable_regcache::raw_read_part instead.
8583         * regcache.c (regcache_raw_read_part): Remove.
8584
8585 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8586
8587         * regcache.h (regcache_cooked_read): Remove, update callers to
8588         use readable_regcache::cooked_read instead.
8589         * regcache.c (regcache_cooked_read): Remove.
8590
8591 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8592
8593         * regcache.h (regcache_raw_write): Remove, update callers to use
8594         regcache::raw_write instead.
8595         * regcache.c (regcache_raw_write): Remove.
8596
8597 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8598
8599         * regcache.h (regcache_raw_read): Remove, update callers to use
8600         readable_regcache::raw_read instead.
8601         * regcache.c (regcache_raw_read): Remove.
8602
8603 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8604
8605         * regcache.h (regcache_raw_update): Remove, update callers to
8606         use readable_regcache::raw_update instead.
8607         * regcache.c (regcache_raw_update): Remove.
8608
8609 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8610
8611         * regcache.h (regcache_register_status): Remove, update callers
8612         to use reg_buffer::get_register_status directly instead.
8613         * regcache.c (regcache_register_status): Remove.
8614
8615 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8616
8617         * regcache.h (regcache_get_ptid): Remove, update all callers to
8618         call regcache::ptid instead.
8619         * regcache.c (regcache_get_ptid): Remove.
8620
8621 2018-05-30  Simon Marchi  <simon.marchi@ericsson.com>
8622
8623         * Makefile.in (ALL_TARGET_OBS): Add or1k-tdep.o.
8624
8625 2018-05-30  Pedro Alves  <palves@redhat.com>
8626
8627         * common/common-exceptions.h (exception_rethrow): Use
8628         ATTRIBUTE_NORETURN.
8629
8630 2018-05-29  Simon Marchi  <simon.marchi@polymtl.ca>
8631
8632         * breakpoint.c (print_solib_event, check_status_catch_solib):
8633         Remove struct keyword in range-based for loops.
8634         * dbxread.c (find_corresponding_bincl_psymtab): Likewise.
8635         * dwarf2read.c (compute_delayed_physnames, rust_union_quirks);
8636         Likewise.
8637         * linespec.c (find_superclass_methods, search_minsyms_for_name):
8638         Likewise.
8639         * symfile.c (addr_info_make_relative): Likewise.
8640         * thread.c (value_in_thread_stack_temporaries): Likewise.
8641
8642 2018-06-12  Weimin Pan  <weimin.pan@oracle.com>
8643
8644         PR gdb/16841
8645         * valops.c (value_struct_elt_for_reference): Call check_typedef on
8646         aggregate type to get its real type before accessing it.
8647
8648 2018-05-29  Weimin Pan  <weimin.pan@oracle.com>
8649
8650         * minsyms.h (lookup_minimal_symbol_and_objfile): Remove declaration.
8651         * minsyms.c (lookup_minimal_symbol_and_objfile): Remove definition.
8652         * coff-pe-read.c (add_pe_forwarded_sym): Replace
8653         lookup_minimal_symbol_and_objfile with lookup_bound_minimal_symbol.
8654         * glibc-tdep.c (glibc_skip_solib_resolver): Likewise.
8655         * jit.c (jit_breakpoint_re_set_internal): Likewise.
8656         * printcmd.c (info_address_command): Likewise.
8657
8658 2018-05-29  Tom Tromey  <tom@tromey.com>
8659
8660         * windows-nat.c (handle_exception): Update fall-through comment.
8661
8662 2018-05-29  Tom Tromey  <tom@tromey.com>
8663
8664         * progspace.h (so_list_ptr): Remove typedef.  Don't declare VEC.
8665         (struct program_space) <added_solibs>: Now a std::vector.
8666         * breakpoint.c (print_solib_event): Update.
8667         (check_status_catch_solib): Update.
8668         * progspace.c (clear_program_space_solib_cache): Update.
8669         * solib.c (update_solib_list): Update.
8670
8671 2018-05-29  Tom Tromey  <tom@tromey.com>
8672
8673         * python/py-type.c (typy_richcompare): Update.
8674         * guile/scm-type.c (tyscm_equal_p_type_smob): Update.
8675         * gdbtypes.h (types_deeply_equal): Return bool.
8676         (types_equal): Likewise.
8677         * gdbtypes.c (type_equality_entry_d): Remove typedef.  Don't
8678         declare VEC.
8679         (check_types_equal): Change worklist to std::vector.  Return
8680         bool.
8681         (struct type_equality_entry): Add constructor.
8682         (compare_maybe_null_strings): Return bool.
8683         (check_types_worklist): Return bool.  Change worklist to
8684         std::vector.
8685         (types_deeply_equal): Use std::vector.
8686         (types_equal): Return bool.
8687         (compare_maybe_null_strings): Simplify.
8688
8689 2018-05-29  Tom Tromey  <tom@tromey.com>
8690
8691         * record-btrace.c (tp_t): Remove typedef.  Don't declare VEC.
8692
8693 2018-05-29  Tom Tromey  <tom@tromey.com>
8694
8695         * objc-lang.h: Don't include cp-support.h.
8696         * common/gdb_vecs.h (const_char_ptr): Remove typedef.  Don't
8697         declare VEC.
8698
8699 2018-05-27  Tom Tromey  <tom@tromey.com>
8700
8701         * Makefile.in (DEPFILES): Don't reference REMOTE_OBS.
8702
8703 2018-05-25  Tom Tromey  <tom@tromey.com>
8704
8705         * value.c (value::location): Initialize.
8706
8707 2018-05-25  Tom Tromey  <tom@tromey.com>
8708
8709         * dbxread.c (init_bincl_list): Remove.
8710         (bincl_list): Now a std::vector.
8711         (bincls_allocated, next_bincl): Remove.
8712         (free_bincl_list, do_free_bincl_list_cleanup)
8713         (make_cleanup_free_bincl_list): Remove.
8714         (dbx_read_symtab, elfstab_build_psymtabs): Use scoped_restore,
8715         unique_xmalloc_ptr.
8716         (find_corresponding_bincl_psymtab, read_dbx_symtab): Update.
8717         (struct header_file_location): Add constructor.
8718         (add_bincl_to_list): Remove.
8719
8720 2018-05-25  Tom Tromey  <tom@tromey.com>
8721
8722         * tui/tui.c (tui_enable): Update.
8723         * mi/mi-interp.c (mi_interp::init): Update.
8724         * interps.h (class interp) <name>: New method.
8725         <m_name>: Rename from name.
8726         (~scoped_restore_interp): Update.
8727         * interps.c (interp::interp): Update.
8728         (interp_add, interp_set, interp_lookup_existing)
8729         (current_interp_named_p): Update.
8730
8731 2018-05-25  Tom Tromey  <tom@tromey.com>
8732
8733         * interps.c (interp_name): Remove.
8734         * mi/mi-interp.c (mi_interp::init): Update.
8735         * interps.h (interp_name): Remove.
8736         (~scoped_restore_interp): Update.
8737         * tui/tui.c (tui_enable): Update.
8738
8739 2018-05-25  Tom Tromey  <tom@tromey.com>
8740
8741         * utils.c (fputs_maybe_filtered): Update.
8742         * linespec.c (decode_line_full): Update.
8743         * mi/mi-interp.c (mi_on_normal_stop_1, mi_tsv_modified)
8744         (mi_print_breakpoint_for_event, mi_solib_loaded)
8745         (mi_solib_unloaded, mi_command_param_changed, mi_memory_changed)
8746         (mi_user_selected_context_changed): Update.
8747         * mi/mi-main.c (mi_execute_command): Update.
8748         * cli/cli-script.c (execute_control_command): Update.
8749         * python/python.c (execute_gdb_command): Update.
8750         * solib.c (info_sharedlibrary_command): Update.
8751         * interps.c (interp_ui_out): Remove.
8752         * interps.h (interp_ui_out): Remove.
8753
8754 2018-05-25  Tom Tromey  <tom@tromey.com>
8755
8756         * tui/tui-interp.c (as_tui_interp): Use dynamic_cast.
8757         * mi/mi-interp.c (as_mi_interp): Use dynamic_cast.
8758         * cli/cli-interp.c (as_cli_interp): Use dynamic_cast.
8759
8760 2018-05-25  Tom Tromey  <tom@tromey.com>
8761
8762         * cli/cli-interp.c (safe_execute_command): Use scoped_restore.
8763         * interps.c (interp_exec): Use scoped_restore.
8764
8765 2018-05-25  Tom Tromey  <tom@tromey.com>
8766
8767         * remote.c (remote_target::remote_file_get): Use
8768         gdb::byte_vector.
8769         (remote_target::remote_file_put): Likewise.
8770
8771 2018-05-25  Tom Tromey  <tom@tromey.com>
8772
8773         * coff-pe-read.c (struct read_pe_section_data) <section_name>: Now
8774         a std::string.
8775         (get_pe_section_index, add_pe_exported_sym): Update.
8776         (read_pe_exported_syms): Use gdb::def_vector.
8777
8778 2018-05-25  Tom Tromey  <tom@tromey.com>
8779
8780         * frame.c (remove_prev_frame): Remove.
8781         (get_prev_frame_if_no_cycle): Use TRY/CATCH.
8782
8783 2018-05-25  Maciej W. Rozycki  <macro@mips.com>
8784
8785         * mips-linux-tdep.h (mips_supply_fpregset, mips_fill_fpregset):
8786         Remove prototypes.
8787         * mips-linux-nat.c (supply_fpregset): Always call
8788         `mips64_supply_fpregset' rather than `mips_supply_fpregset'.
8789         (fill_fpregset): Always call `mips64_fill_fpregset' rather than
8790         `mips_fill_fpregset'.
8791         * mips-linux-tdep.c (mips_supply_fpregset)
8792         (mips_supply_fpregset_wrapper, mips_fill_fpregset)
8793         (mips_fill_fpregset_wrapper): Remove functions.
8794         (mips64_supply_fpregset, mips64_fill_fpregset): Update comments.
8795         (mips_linux_fpregset): Remove variable.
8796         (mips_linux_iterate_over_regset_sections): Use
8797         `mips64_linux_fpregset' in place of `mips_linux_fpregset'.
8798         (mips_linux_o32_sigframe_init): Remove comment.
8799
8800 2018-05-25  Pedro Alves  <palves@redhat.com>
8801
8802         * remote.c (struct vCont_action_support, MAXTHREADLISTRESULTS)
8803         (struct readahead_cache, struct packet_reg, struct
8804         remote_arch_state, class remote_state): Move higher up in the
8805         file.
8806         (remote_target::m_remote_state): Now an object instead of a pointer.
8807         (remote_target::get_remote_state): Adjust.
8808
8809 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8810
8811         * stack.c (select_and_print_frame): Delete.
8812         (struct function_bounds): Move struct within function.
8813         (func_command): Most content moved into new function
8814         find_frame_for_function, use new function, print result, add
8815         function comment.
8816         (find_frame_for_function): New function, now returns a result.
8817
8818 2018-05-24  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
8819
8820         * stack.c (iterate_over_block_arg_vars): Fix comment.
8821         (print_frame_arg_vars): Pass stream in cb_data, not gdb_stdout.
8822
8823 2018-05-24  Andrew Burgess  <andrew.burgess@embecosm.com>
8824
8825         PR gdb/23203
8826         * frame.c
8827         (scoped_restore_selected_frame::scoped_restore_selected_frame):
8828         Define.
8829         (scoped_restore_selected_frame::~scoped_restore_selected_frame):
8830         Define.
8831         * frame.h (class scoped_restore_selected_frame): New class.
8832         * stack.c (print_frame_local_vars): Remove catching and rethrowing
8833         of any exception, use scoped_restore_selected_frame to restore the
8834         frame instead.
8835
8836 2018-05-24  Pedro Alves  <palves@redhat.com>
8837
8838         * darwin-nat.h (darwin_nat_target::create_inferior): Mark with
8839         override.
8840
8841 2018-05-23  Tom Tromey  <tom@tromey.com>
8842
8843         * complaints.c (struct complaints): Remove.
8844         (symfile_complaint_book): Remove.
8845         (series): New global.
8846         (complaint_internal): Update.
8847         (clear_complaints): Update.
8848
8849 2018-05-23  Tom Tromey  <tom@tromey.com>
8850
8851         * complaints.c (counters): New global.
8852         (struct complain): Remove.
8853         (struct complaints) <root>: Remove.
8854         (complaint_sentinel): Remove.
8855         (symfile_complaint_book): Update.
8856         (find_complaint) Remove.
8857         (complaint_internal, clear_complaints): Update.
8858
8859 2018-05-23  Tom Tromey  <tom@tromey.com>
8860
8861         * complaints.c (struct complain) <file, line>: Remove.
8862         (find_complaint): Remove file, line parameters.
8863         (complaint_internal): Update.
8864
8865 2018-05-23  Tom Tromey  <tom@tromey.com>
8866
8867         * complaints.c (vcomplaint): Remove.
8868         (complaint_internal) Merge in contents of vcomplaint.
8869
8870 2018-05-23  Tom Tromey  <tom@tromey.com>
8871
8872         * complaints.c (struct complaints) <explanation>: Remove.
8873         (symfile_explanations): Remove.
8874         (symfile_complaint_book): Update.
8875         (vcomplaint): Update.
8876         (struct explanation): Remove.
8877
8878 2018-05-23  Tom Tromey  <tom@tromey.com>
8879
8880         * complaints.c (symfile_complaints): Remove.
8881         (complaint_internal): Remove "complaints" parameter.
8882         (clear_complaints, vcomplaint): Remove "c" parameter.
8883         (get_complaints): Remove.
8884         * dwarf2read.c (dwarf2_statement_list_fits_in_line_number_section_complaint)
8885         (dwarf2_debug_line_missing_file_complaint)
8886         (dwarf2_debug_line_missing_end_sequence_complaint)
8887         (dwarf2_complex_location_expr_complaint)
8888         (dwarf2_const_value_length_mismatch_complaint)
8889         (dwarf2_section_buffer_overflow_complaint)
8890         (dwarf2_macro_malformed_definition_complaint)
8891         (dwarf2_invalid_attrib_class_complaint)
8892         (create_addrmap_from_index, dw2_symtab_iter_next)
8893         (dw2_expand_marked_cus)
8894         (dw2_debug_names_iterator::find_vec_in_debug_names)
8895         (dw2_debug_names_iterator::next, dw2_debug_names_iterator::next)
8896         (create_debug_type_hash_table, init_cutu_and_read_dies)
8897         (partial_die_parent_scope, add_partial_enumeration)
8898         (skip_one_die, fixup_go_packaging, quirk_rust_enum, process_die)
8899         (dwarf2_compute_name, dwarf2_physname, read_namespace_alias)
8900         (read_import_statement, read_file_scope, create_dwo_cu_reader)
8901         (create_cus_hash_table, create_dwp_hash_table)
8902         (inherit_abstract_dies, read_func_scope, read_call_site_scope)
8903         (dwarf2_rnglists_process, dwarf2_ranges_process)
8904         (dwarf2_add_type_defn, dwarf2_attach_fields_to_type)
8905         (dwarf2_add_member_fn, get_alignment, maybe_set_alignment)
8906         (handle_struct_member_die, process_structure_scope)
8907         (read_array_type, read_common_block, read_module_type)
8908         (read_tag_pointer_type, read_typedef, read_base_type)
8909         (read_subrange_type, load_partial_dies, partial_die_info::read)
8910         (partial_die_info::read, partial_die_info::read)
8911         (partial_die_info::read, read_checked_initial_length_and_offset)
8912         (dwarf2_string_attr, read_formatted_entries)
8913         (dwarf_decode_line_header)
8914         (lnp_state_machine::check_line_address, dwarf_decode_lines_1)
8915         (new_symbol, dwarf2_const_value_attr, lookup_die_type)
8916         (read_type_die_1, determine_prefix, dwarf2_get_ref_die_offset)
8917         (dwarf2_get_attr_constant_value, dwarf2_fetch_constant_bytes)
8918         (get_signatured_type, get_DW_AT_signature_type)
8919         (decode_locdesc, file_file_name, consume_improper_spaces)
8920         (skip_form_bytes, skip_unknown_opcode, dwarf_parse_macro_header)
8921         (dwarf_decode_macro_bytes, dwarf_decode_macros)
8922         (dwarf2_symbol_mark_computed, set_die_type)
8923         (read_attribute_value): Update.
8924         * stap-probe.c (handle_stap_probe, get_stap_base_address):
8925         Update.
8926         * dbxread.c (unknown_symtype_complaint)
8927         (lbrac_mismatch_complaint, repeated_header_complaint)
8928         (set_namestring, function_outside_compilation_unit_complaint)
8929         (read_dbx_symtab, process_one_symbol): Update.
8930         * gdbtypes.c (stub_noname_complaint): Update.
8931         * windows-nat.c (handle_unload_dll): Update.
8932         * coffread.c (coff_symtab_read, enter_linenos, decode_type)
8933         (decode_base_type): Update.
8934         * xcoffread.c (bf_notfound_complaint, ef_complaint)
8935         (eb_complaint, record_include_begin, record_include_end)
8936         (enter_line_range, xcoff_next_symbol_text, read_xcoff_symtab)
8937         (process_xcoff_symbol, read_symbol)
8938         (function_outside_compilation_unit_complaint)
8939         (scan_xcoff_symtab): Update.
8940         * machoread.c (macho_symtab_read, macho_add_oso_symfile): Update.
8941         * buildsym.c (finish_block_internal, make_blockvector)
8942         (end_symtab_get_static_block, augment_type_symtab): Update.
8943         * dtrace-probe.c (dtrace_process_dof)
8944         (dtrace_static_probe_ops::get_probes): Update.
8945         * complaints.h (struct complaint): Don't declare.
8946         (symfile_complaints): Remove.
8947         (complaint_internal): Remove "complaints" parameter.
8948         (complaint): Likewise.
8949         (clear_complaints): Likewise.
8950         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8951         (reread_symbols): Update.
8952         * dwarf2-frame.c (dwarf2_restore_rule, execute_cfa_program)
8953         (dwarf2_frame_cache, decode_frame_entry): Update.
8954         * dwarf2loc.c (dwarf_reg_to_regnum): Update.
8955         * objc-lang.c (lookup_objc_class, lookup_child_selector)
8956         (info_selectors_command): Update.
8957         * macrotab.c (macro_include, check_for_redefinition)
8958         (macro_undef): Update.
8959         * objfiles.c (filter_overlapping_sections): Update.
8960         * stabsread.c (invalid_cpp_abbrev_complaint)
8961         (reg_value_complaint, stabs_general_complaint, dbx_lookup_type)
8962         (define_symbol, error_type, read_type, rs6000_builtin_type)
8963         (stabs_method_name_from_physname, read_member_functions)
8964         (read_cpp_abbrev, read_baseclasses, read_tilde_fields)
8965         (attach_fields_to_type, complain_about_struct_wipeout)
8966         (read_range_type, read_args, common_block_start)
8967         (common_block_end, cleanup_undefined_types_1, scan_file_globals):
8968         Update.
8969         * mdebugread.c (index_complaint, unknown_ext_complaint)
8970         (basic_type_complaint, bad_tag_guess_complaint)
8971         (bad_rfd_entry_complaint, unexpected_type_code_complaint)
8972         (reg_value_complaint, parse_symbol, parse_type, upgrade_type)
8973         (parse_procedure, parse_lines)
8974         (function_outside_compilation_unit_complaint)
8975         (parse_partial_symbols, psymtab_to_symtab_1, cross_ref)
8976         (bad_tag_guess_complaint, reg_value_complaint): Update.
8977         * cp-support.c (demangled_name_complaint): Update.
8978         * macroscope.c (sal_macro_scope): Update.
8979         * dwarf-index-write.c (class debug_names): Update.
8980
8981 2018-05-23  Tom Tromey  <tom@tromey.com>
8982
8983         * complaints.c (clear_complaints): Remove "noisy" parameter.
8984         * complaints.h (clear_complaints): Update.
8985         * symfile.c (syms_from_objfile_1, finish_new_objfile)
8986         (reread_symbols): Update.
8987
8988 2018-05-23  Tom Tromey  <tom@tromey.com>
8989
8990         * complaints.c (enum complaint_series): Remove FIRST_MESSAGE,
8991         SUBSEQUENT_MESSAGE.
8992         (vcomplaint, clear_complaints): Update.
8993         (symfile_explanations): Remove some messages.
8994
8995 2018-05-23  Tom Tromey  <tom@tromey.com>
8996
8997         * complaints.c (internal_complaint): Remove.
8998         * complaints.h (internal_complaint): Remove.
8999
9000 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9001
9002         * i387-tdep.c (i387_collect_xsave): Make `i' unsigned.
9003
9004 2018-05-22  Pedro Alves  <palves@redhat.com>
9005
9006         * remote-fileio.c (remote_fileio_reply, remote_fileio_ioerror)
9007         (remote_fileio_badfd, remote_fileio_return_errno)
9008         (remote_fileio_return_success, remote_fileio_func_open)
9009         (remote_fileio_func_open, remote_fileio_func_close)
9010         (remote_fileio_func_read, remote_fileio_func_write)
9011         (remote_fileio_func_lseek, remote_fileio_func_rename)
9012         (remote_fileio_func_unlink, remote_fileio_func_stat)
9013         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
9014         (remote_fileio_func_isatty, remote_fileio_func_system): Add
9015         remote_target parameter.
9016         (remote_fio_func_map) <func>: Add remote_target parameter.
9017         (do_remote_fileio_request, remote_fileio_request):
9018         * remote-fileio.h (remote_fileio_request):
9019         * remote-notif.c (remote_notif_ack, remote_notif_parse, ): Add
9020         remote_target parameter.
9021         (remote_notif_process, handle_notification): Adjust to pass down
9022         the remote.
9023         (remote_notif_state_allocate): Add remote_target parameter.  Save
9024         it.
9025         * remote-notif.h (struct remote_target): Forward declare.
9026         (struct notif_client) <parse, ack, can_get_pending_events>: Add
9027         remote_target parameter.
9028         (struct remote_notif_state) <remote>: New field.
9029         (remote_notif_ack, remote_notif_parse): Add remote_target
9030         parameter.
9031         (remote_notif_state_allocate, remote_notif_state_allocate): Add
9032         remote_target parameter.
9033         * remote.c (OPAQUETHREADBYTES, threadref, gdb_ext_thread_info)
9034         (threads_listing_context, rmt_thread_action, protocol_feature)
9035         (packet_reg, stop_reply, stop_reply_p, enum packet_support)
9036         (packet_result, struct threads_listing_context, remote_state):
9037         Move definitions and declarations higher up.
9038         (remote_target) <~remote_target>: Declare.
9039         (remote_download_command_source, remote_file_put, remote_file_get)
9040         (remote_file_delete, remote_hostio_pread, remote_hostio_pwrite)
9041         (remote_hostio_pread_vFile, remote_hostio_send_command)
9042         (remote_hostio_set_filesystem, remote_hostio_open)
9043         (remote_hostio_close, remote_hostio_unlink, remote_state)
9044         (get_remote_state, get_remote_packet_size, get_memory_packet_size)
9045         (get_memory_write_packet_size, get_memory_read_packet_size)
9046         (append_pending_thread_resumptions, remote_detach_1)
9047         (append_resumption, remote_resume_with_vcont)
9048         (add_current_inferior_and_thread, wait_ns, wait_as)
9049         (process_stop_reply, remote_notice_new_inferior)
9050         (process_initial_stop_replies, remote_add_thread)
9051         (btrace_sync_conf, remote_btrace_maybe_reopen)
9052         (remove_new_fork_children, kill_new_fork_children)
9053         (discard_pending_stop_replies, stop_reply_queue_length)
9054         (check_pending_events_prevent_wildcard_vcont)
9055         (discard_pending_stop_replies_in_queue, stop_reply)
9056         (remote_notif_remove_queued_reply, stop_reply *queued_stop_reply)
9057         (peek_stop_reply, remote_parse_stop_reply, remote_stop_ns)
9058         (remote_interrupt_as, remote_interrupt_ns)
9059         (remote_get_noisy_reply, remote_query_attached)
9060         (remote_add_inferior, remote_current_thread, get_current_thread)
9061         (set_thread, set_general_thread, set_continue_thread)
9062         (set_general_process, write_ptid)
9063         (remote_unpack_thread_info_response, remote_get_threadinfo)
9064         (parse_threadlist_response, remote_get_threadlist)
9065         (remote_threadlist_iterator, remote_get_threads_with_ql)
9066         (remote_get_threads_with_qxfer)
9067         (remote_get_threads_with_qthreadinfo, extended_remote_restart)
9068         (get_offsets, remote_check_symbols, remote_supported_packet)
9069         (remote_query_supported, remote_packet_size)
9070         (remote_serial_quit_handler, remote_detach_pid)
9071         (remote_vcont_probe, remote_resume_with_hc)
9072         (send_interrupt_sequence, interrupt_query)
9073         (remote_notif_get_pending_events, fetch_register_using_p)
9074         (send_g_packet, process_g_packet, fetch_registers_using_g)
9075         (store_register_using_P, store_registers_using_G)
9076         (set_remote_traceframe, check_binary_download)
9077         (remote_write_bytes_aux, remote_write_bytes, remote_read_bytes_1)
9078         (remote_xfer_live_readonly_partial, remote_read_bytes)
9079         (remote_send_printf, remote_flash_write, readchar)
9080         (remote_serial_write, putpkt, putpkt_binary, skip_frame)
9081         (read_frame, getpkt, getpkt_or_notif_sane_1, getpkt_sane)
9082         (getpkt_or_notif_sane, remote_vkill, remote_kill_k)
9083         (extended_remote_disable_randomization, extended_remote_run)
9084         (send_environment_packet, extended_remote_environment_support)
9085         (extended_remote_set_inferior_cwd, remote_write_qxfer)
9086         (remote_read_qxfer, push_stop_reply, vcont_r_supported)
9087         (packet_command): Now methods of ...
9088         (remote_target): ... this class.
9089         (m_remote_state) <remote_target>: New field.
9090         (struct remote_state) <stop_reply_queue,
9091         remote_async_inferior_event_token, wait_forever_enabled_p>: New
9092         fields.
9093         (remote_state::remote_state): Allocate stop_reply_queue.
9094         (remote_state): Delete global.
9095         (get_remote_state_raw): Delete.
9096         (remote_target::get_remote_state): Allocate m_remote_state on
9097         demand.
9098         (get_current_remote_target): New.
9099         (remote_ops, extended_remote_ops): Delete.
9100         (wait_forever_enabled_p, remote_async_inferior_event_token):
9101         Delete, moved to struct remote_state.
9102         (remote_target::close): Delete self.  Destruction bits split to
9103         ...
9104         (remote_target::~remote_target): ... this.
9105         (show_memory_packet_size): Adjust to use
9106         get_current_remote_target.
9107         (struct protocol_feature) <func>: Add remote_target parameter.
9108         All callers adjusted.
9109         (curr_quit_handler_target): New.
9110         (remote_serial_quit_handler): Reimplement.
9111         (remote_target::open_1): Adjust to use get_current_remote_target.
9112         Heap-allocate remote_target/extended_remote_target instances.
9113         (vcont_builder::vcont_builder): Add remote_target parameter, and
9114         save it in m_remote.  All callers adjusted.
9115         (vcont_builder::m_remote): New field.
9116         (vcont_builder::restart, vcont_builder::flush)
9117         (vcont_builder::push_action): Use it.
9118         (remote_target::commit_resume): Use it.
9119         (struct queue_iter_param) <remote>: New field.
9120         (remote_target::remove_new_fork_children): Fill in 'remote' field.
9121         (check_pending_event_prevents_wildcard_vcont_callback_data): New.
9122         (check_pending_event_prevents_wildcard_vcont_callback)
9123         (remote_target::check_pending_events_prevent_wildcard_vcont)
9124         (remote_target::discard_pending_stop_replies)
9125         (remote_target::discard_pending_stop_replies_in_queue)
9126         (remote_target::remote_notif_remove_queued_reply): Fill in
9127         'remote' field.
9128         (remote_notif_get_pending_events): New.
9129         (remote_target::readchar, remote_target::remote_serial_write):
9130         Save/restore curr_quit_handler_target.
9131         (putpkt): New.
9132         (kill_new_fork_children): Fill in 'remote' field.
9133         (packet_command): Use get_current_remote_target, defer to
9134         remote_target method of same name.
9135         (scoped_remote_fd::scoped_remote_fd): Add 'remote_target'
9136         parameter, and save it in m_remote.  All callers adjusted.
9137         (scoped_remote_fd::release): Use m_remote.
9138         (scoped_remote_fd::m_remote): New field.
9139         (remote_file_put, remote_file_get, remote_file_delete): Use
9140         get_current_remote_target, defer to remote_target method of same
9141         name.
9142         (remote_btrace_reset): Add remote_state paremeter.  Update all
9143         callers.
9144         (remote_async_inferior_event_handler). Pass down 'data'.
9145         (remote_new_objfile): Use get_current_remote_target.
9146         (remote_target::vcont_r_supported): New.
9147         (set_range_stepping): Use get_current_remote_target and
9148         remote_target::vcont_r_supported.
9149         (_initialize_remote): Don't allocate 'remote_state' and
9150         'stop_reply_queue' globals.
9151         * remote.h (struct remote_target): Forward declare.
9152         (getpkt, putpkt, remote_notif_get_pending_events): Add
9153         'remote_target' parameter.
9154
9155 2018-05-22  Pedro Alves  <palves@redhat.com>
9156
9157         * remote.c (vcont_builder): Now a class.  Make all data members
9158         private.
9159         (vcont_builder) <vcont_builder, restart, flush, push_action>:
9160         Declare methods.
9161         (vcont_builder_restart): Rename to ...
9162         (vcont_builder::restart): ... this.
9163         (vcont_builder_flush): Rename to ...
9164         (vcont_builder::flush): ... this.
9165         (vcont_builder_push_action): Rename to ...
9166         (vcont_builder::push_action): ... this.
9167         (remote_target::commit_resume): Adjust.
9168
9169 2018-05-22  Pedro Alves  <palves@redhat.com>
9170
9171         * remote.c (DEFAULT_MAX_MEMORY_PACKET_SIZE): Rename to ...
9172         (DEFAULT_MAX_MEMORY_PACKET_SIZE_FIXED): ... this.
9173         (get_fixed_memory_packet_size): New.
9174         (get_memory_packet_size): Use it.
9175         (set_memory_packet_size): Don't override the config size with
9176         DEFAULT_MAX_MEMORY_PACKET_SIZE.
9177         (show_memory_packet_size): Use get_fixed_memory_packet_size.
9178         Don't refer to get_memory_packet_size if not connected to a remote
9179         target.  Show "(default)" if configured size is 0.
9180
9181 2018-05-22  Pedro Alves  <palves@redhat.com>
9182
9183         * remote.c (remote_target::mourn_inferior): Move
9184         discard_pending_stop_replies call here from ...
9185         (_initialize_remote): ... here.
9186
9187 2018-05-22  Pedro Alves  <palves@redhat.com>
9188
9189         * remote.c (compare_section_command): Remove set_general_process
9190         call.
9191
9192 2018-05-22  Pedro Alves  <palves@redhat.com>
9193
9194         * remote.c (struct packet_reg, struct remote_arch_state):
9195         Move higher up in the file.
9196         (remote_state) <m_arch_states>: Store remote_arch_state values
9197         instead of remote_arch_state pointers.
9198         (remote_state::get_remote_arch_state): Adjust.
9199
9200 2018-05-22  Pedro Alves  <palves@redhat.com>
9201
9202         * remote.c: Include <unordered_map>.
9203         (remote_state): Now a class.
9204         (remote_state) <get_remote_arch_state>: Declare method.
9205         <get_remote_arch_state>: New field.
9206         (remote_arch_state) <remote_arch_state>: Declare ctor.
9207         <regs>: Now a unique_ptr.
9208         (remote_gdbarch_data_handle): Delete.
9209         (get_remote_arch_state): Delete.
9210         (remote_state::get_remote_arch_state): New.
9211         (get_remote_state): Adjust to call remote_state's
9212         get_remote_arch_state method.
9213         (init_remote_state): Delete, bits factored out to ...
9214         (remote_arch_state::remote_arch_state): ... this new method.
9215         (get_remote_packet_size, get_memory_packet_size)
9216         (process_g_packet, remote_target::fetch_registers)
9217         (remote_target::prepare_to_store, store_registers_using_G)
9218         (remote_target::store_registers, remote_target::get_trace_status):
9219         Adjust to call remote_state's method.
9220         (_initialize_remote): Remove reference to
9221         remote_gdbarch_data_handle.
9222
9223 2018-05-22  Pedro Alves  <palves@redhat.com>
9224
9225         * remote.c (struct readahead_cache) <invalidate, invalidate_fd,
9226         pread>: New method declarations.
9227         (remote_target::open_1): Adjust.
9228         (readahead_cache_invalidate): Rename to ...
9229         (readahead_cache::invalidate): ... this, and adjust to be a class
9230         method.
9231         (readahead_cache_invalidate_fd): Rename to ...
9232         (readahead_cache::invalidate_fd): ... this, and adjust to be a
9233         class method.
9234         (remote_hostio_pwrite): Adjust.
9235         (remote_hostio_pread_from_cache): Rename to ...
9236         (readahead_cache::pread): ... this, and adjust to be a class
9237         method.
9238         (remote_hostio_close): Adjust.
9239
9240 2018-05-22  Pedro Alves  <palves@redhat.com>
9241
9242         * remote.c (remote_hostio_close_cleanup): Delete.
9243         (class scoped_remote_fd): New.
9244         (remote_file_put, remote_file_get): Use it.
9245
9246 2018-05-22  Pedro Alves  <palves@redhat.com>
9247
9248         (struct vCont_action_support): Use bool and initialize all fields.
9249         (struct readahead_cache): Initialize all fields.
9250         (remote_state): Use bool and initialize all fields.
9251         (remote_state::remote_state, remote_state::~remote_state): New.
9252         (new_remote_state): Delete.
9253         (_initialize_remote): Use new to allocate remote_state.
9254
9255 2018-05-22  Pedro Alves  <palves@redhat.com>
9256             張俊芝  <zjz@zjz.name>
9257
9258         PR gdb/22973
9259         * c-exp.y: Include "c-support.h".
9260         (parse_number, c_parse_escape, lex_one_token): Use TOLOWER instead
9261         of tolower.  Use c_ident_is_alpha to scan names.
9262         * c-lang.c: Include "c-support.h".
9263         (convert_ucn, convert_octal, convert_hex, convert_escape): Use
9264         ISXDIGIT instead of isxdigit and ISDIGIT instead of isdigit.
9265         * c-support.h: New file, with bits factored out from ...
9266         * cp-name-parser.y: ... this file.
9267         Include "c-support.h".
9268         (cp_ident_is_alpha, cp_ident_is_alnum): Deleted, moved to
9269         c-support.h and renamed.
9270         (symbol_end, yylex): Adjust.
9271
9272 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9273
9274         * arch/ppc-linux-common.c (ppc_linux_has_isa205): Change the
9275         parameter type to CORE_ADDR.
9276         * arch/ppc-linux-common.h (ppc_linux_has_isa205): Change the
9277         parameter type in declaration to CORE_ADDR.
9278         * ppc-linux-tdep.c (ppc_linux_core_read_description): Call
9279         target_auxv_search to get AT_HWCAP and use the result to get the
9280         target description.
9281         * ppc-linux-nat.c (ppc_linux_get_hwcap): Change the return type
9282         to CORE_ADDR. Remove the cast of the return value to unsigned
9283         long. Fix error predicate of target_auxv_search.
9284         (ppc_linux_nat_target::read_description): Change the type of the
9285         hwcap variable to CORE_ADDR.
9286
9287 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9288
9289         * rs6000-tdep.c (rs6000_gdbarch_init): Assign 1 to have_dfp only
9290         if the size of fpscr is larger than 32 bits.
9291
9292 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9293
9294         * ppc-linux-tdep.c (ppc_linux_vsxregset): New function.
9295         (ppc32_linux_vsxregmap): New global.
9296         (ppc32_linux_vsxregset): Initialize with ppc32_linux_vsxregmap,
9297         regcache_supply_regset, and regcache_collect_regset.
9298         * ppc-linux-tdep.h (ppc_linux_vsxregset): Declare.
9299         * ppc-linux-nat.c (supply_vsxregset, fill_vsxregset): Remove.
9300         (fetch_vsx_register, store_vsx_register): Remove.
9301         (fetch_vsx_registers): Add regno parameter. Get regset using
9302         ppc_linux_vsxregset. Use regset to supply registers.
9303         (store_vsx_registers): Add regno parameter. Get regset using
9304         ppc_linux_vsxregset. Use regset to collect registers.
9305         (fetch_register): Call fetch_vsx_registers instead of
9306         fetch_vsx_register.
9307         (store_register): Call store_vsx_registers instead of
9308         store_vsx_register.
9309         (fetch_ppc_registers): Call fetch_vsx_registers with -1 for the
9310         new regno parameter.
9311         (store_ppc_registers): Call store_vsx_registers with -1 for the
9312         new regno parameter.
9313         * rs6000-tdep.c (ppc_vsx_support_p, ppc_supply_vsxreget)
9314         (ppc_collect_vsxregset): Remove.
9315
9316 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9317
9318         * ppc-tdep.h (struct ppc_reg_offsets): Remove vector register
9319         offset fields.
9320         * ppc-fbsd-tdep.c (ppc32_fbsd_reg_offsets): Remove initializers
9321         for vector register offset fields.
9322         (ppc64_fbsd_reg_offsets): Likewise.
9323         * ppc-nbsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9324         to vector register offset fields.
9325         * ppc-obsd-tdep.c (_initialize_ppcnbsd_tdep): Remove assignment
9326         to vector register offset fields.
9327         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Remove assignment to
9328         vector register offset fields.
9329         * rs6000-aix-tdep.c (rs6000_aix32_reg_offsets): Remove
9330         initializers for vector register offset fields.
9331         (rs6000_aix64_reg_offsets): Likewise.
9332         * rs6000-tdep.c (ppc_vrreg_offset): Remove.
9333         (ppc_supply_vrregset): Remove.
9334         (ppc_collect_vrregset): Remove.
9335         * ppc-linux-tdep.c (ppc_linux_collect_vrregset): New function.
9336         (ppc_linux_vrregset) : New function.
9337         (ppc32_le_linux_vrregmap, ppc32_be_linux_vrregmap)
9338         (ppc32_le_linux_vrregset, ppc32_be_linux_vrregset): New globals.
9339         (ppc32_linux_vrregset): Remove.
9340         (ppc_linux_iterate_over_regset_sections): Call ppc_linux_vrregset
9341         and use result instead of ppc32_linux_vrregset.
9342         (ppc32_linux_reg_offsets): Remove initializers for vector register
9343         offset fields.
9344         (ppc64_linux_reg_offsets): Likewise.
9345         * ppc-linux-tdep.h (ppc_linux_vrregset): New declaration.
9346         * ppc-linux-nat.c: Include regset.h.
9347         (gdb_vrregset_t): Adjust comment to account for little-endian
9348         mode.
9349         (supply_vrregset, fill_vrregset): Remove.
9350         (fetch_altivec_register, store_altivec_register): Remove.
9351         (fetch_altivec_registers): Add regno parameter. Get regset using
9352         ppc_linux_vrregset. Use regset to supply registers.
9353         (store_altivec_registers): Add regno parameter. Get regset using
9354         ppc_linux_vrregset. Use regset to collect registers.
9355         (fetch_register): Call fetch_altivec_registers instead of
9356         fetch_altivec_register.
9357         (store_register): Call store_altivec_registers instead of
9358         store_altivec_register.
9359         (fetch_ppc_registers): Call fetch_altivec_registers with -1 for
9360         the new regno parameter.
9361         (store_ppc_registers): Call store_altivec_registers with -1 for
9362         the new regno parameter.
9363
9364 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9365
9366         * arch/ppc-linux-common.h (PPC_LINUX_SIZEOF_VRREGSET)
9367         (PPC_LINUX_SIZEOF_VSXREGSET): Define.
9368         * ppc-linux-nat.c (SIZEOF_VSXREGS, SIZEOF_VRREGS): Remove.
9369         (gdb_vrregset_t): Change array type size to
9370         PPC_LINUX_SIZEOF_VRREGSET.
9371         (gdb_vsxregset_t): Change array type size to
9372         PPC_LINUX_SIZEOF_VSXREGSET.
9373         * ppc-linux-tdep.c (ppc_linux_iterate_over_regset_sections):
9374         Change integer literals to PPC_LINUX_SIZEOF_VRREGSET and
9375         PPC_LINUX_SIZEOF_VSXREGSET.
9376
9377 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9378
9379         * configure.nat <linux powerpc>: Add ppc-linux.o to NATDEPFILES.
9380         * ppc-linux-nat.c (ppc_linux_target_wordsize): Move to
9381         nat/ppc-linux.c.
9382         (ppc_linux_nat_target::auxv_parse): Get thread id tid. Call
9383         ppc_linux_target_wordsize with tid.
9384         (ppc_linux_nat_target::read_description): Call ppc_linux_target
9385         wordsize with tid.
9386         * nat/ppc-linux.c: Include nat/gdb_ptrace.h.
9387         (ppc64_64bit_inferior_p): Add static and inline specifiers.
9388         (ppc_linux_target_wordsize): Move here from ppc-linux-nat.c. Add
9389         tid parameter. Remove static specifier.
9390         * nat/ppc-linux.h (ppc64_64bit_inferior_p): Remove declaration.
9391         (ppc_linux_target_wordsize): New declaration.
9392
9393 2018-05-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
9394
9395         * arch/ppc-linux-common.c: New file.
9396         * arch/ppc-linux-common.h: New file.
9397         * arch/ppc-linux-tdesc.h: New file.
9398         * configure.tgt (powerpc*-*-linux*): Add arch/ppc-linux-common.o.
9399         * Makefile.in (ALL_TARGET_OBS): Add arch/ppc-linux-common.o.
9400         (HFILES_NO_SRCDIR): Add arch/ppc-linux-common.h and
9401         arch/ppc-linux-tdesc.h.
9402         * ppc-linux-nat.c: Include arch/ppc-linux-common.h and
9403         arch/ppc-linux-tdesc.h.
9404         (ppc_linux_nat_target::read_description): Remove target
9405         description matching code. Fill a ppc_linux_features struct and
9406         call ppc_linux_match_description with it. Move comment about ISA
9407         2.05 to ppc-linux-common.c.
9408         * ppc-linux-tdep.c: Include arch/ppc-linux-common.h and
9409         arch/ppc-linux-tdesc.h.
9410         (ppc_linux_core_read_description): Remove target description
9411         matching code. Fill a ppc_linux_features struct and call
9412         ppc_linux_match_description with it.
9413         * ppc-linux-tdep.h (tdesc_powerpc_32l, tdesc_powerpc_64l)
9414         (tdesc_powerpc_altivec32l, tdesc_powerpc_altivec64l)
9415         (tdesc_powerpc_cell32l, tdesc_powerpc_cell64l)
9416         (tdesc_powerpc_vsx32l, tdesc_powerpc_vsx64l)
9417         (tdesc_powerpc_isa205_32l, tdesc_powerpc_isa205_64l)
9418         (tdesc_powerpc_isa205_altivec32l, tdesc_powerpc_isa205_altivec64l)
9419         (tdesc_powerpc_isa205_vsx32l, tdesc_powerpc_isa205_vsx64l)
9420         (tdesc_powerpc_e500l): Remove.
9421
9422 2018-05-22  Joel Brobecker  <brobecker@adacore.com>
9423
9424         * ada-lang.c (catch_assert_command): Pass empty string instead
9425         of NULL for excep_string argument.
9426
9427 2018-05-22  Maciej W. Rozycki  <macro@mips.com>
9428
9429         * mips-linux-nat.c (mips64_linux_register_addr): Return -1 if
9430         the width of the requested register exceeds the width of the
9431         `ptrace' data type.
9432
9433 2018-05-21  Tom Tromey  <tom@tromey.com>
9434
9435         * printcmd.c (output_command): Remove.
9436         (output_command_const): Rename to output_command.
9437         * valprint.h (output_command): Rename from output_command_const.
9438         * tracepoint.c (trace_dump_actions): Call output_command.
9439
9440 2018-05-21  Tom Tromey  <tom@tromey.com>
9441
9442         * mi/mi-cmd-catch.c (mi_cmd_catch_assert)
9443         (mi_cmd_catch_exception, mi_cmd_catch_handlers): Update.
9444         * ada-lang.h (create_ada_exception_catchpoint): Update.
9445         * ada-lang.c (struct ada_catchpoint) <excep_string>: Now a
9446         std::string.
9447         (create_excep_cond_exprs, ~ada_catchpoint)
9448         (should_stop_exception, print_one_exception)
9449         (print_mention_exception, print_recreate_exception): Update.
9450         (ada_get_next_arg): Remove.
9451         (catch_ada_exception_command_split): Use std::string.  Change type
9452         of "excep_string", "cond_string".
9453         (catch_ada_exception_command): Update.
9454         (create_ada_exception_catchpoint): Change type of excep_string.
9455         (ada_exception_sal): Remove excep_string parameter.
9456         (~ada_catchpoint): Remove.
9457
9458 2018-05-21  Tom Tromey  <tom@tromey.com>
9459
9460         * ada-lang.c (ada_collect_symbol_completion_matches): Remove
9461         cleanup.
9462
9463 2018-05-21  Tom Tromey  <tom@tromey.com>
9464
9465         * ada-lang.c (ada_exception_message_1, ada_exception_message):
9466         Return unique_xmalloc_ptr.
9467         (print_it_exception): Update.
9468
9469 2018-05-21  Tom Tromey  <tom@tromey.com>
9470
9471         * tracepoint.c (trace_dump_actions): Use std::string.
9472
9473 2018-05-21  Tom Tromey  <tom@tromey.com>
9474
9475         * symfile.c (reread_symbols): Use std::string for original_name.
9476
9477 2018-05-21  Tom Tromey  <tom@tromey.com>
9478
9479         * dwarf2read.c (dwarf2_read_debug_names): Use std::unique_ptr.
9480         (mapped_index_base): Use DISABLE_COPY_AND_ASSIGN.  Default
9481         constructor.
9482
9483 2018-05-20  Simon Marchi  <simon.marchi@polymtl.ca>
9484
9485         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Rename the wrong
9486         instance to...
9487         (HAVE_IS_TRIVIALLY_CONSTRUCTIBLE): ... this.
9488         * objfiles.c (get_objfile_bfd_data): Allocate
9489         objfile_per_bfd_storage with obstack_new when allocating on
9490         obstack.
9491
9492 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9493
9494         * ada-lang.c (cache_symbol): Use XOBNEW and/or XOBNEWVEC and/or
9495         OBSTACK_ZALLOC.
9496         * dwarf2-frame.c (dwarf2_build_frame_info): Likewise.
9497         * hppa-tdep.c (hppa_init_objfile_priv_data): Likewise.
9498         * mdebugread.c (mdebug_build_psymtabs): Likewise.
9499         (add_pending): Likewise.
9500         (parse_symbol): Likewise.
9501         (parse_partial_symbols): Likewise.
9502         (psymtab_to_symtab_1): Likewise.
9503         (new_psymtab): Likewise.
9504         (elfmdebug_build_psymtabs): Likewise.
9505         * minsyms.c (terminate_minimal_symbol_table): Likewise.
9506         * objfiles.c (get_objfile_bfd_data): Likewise.
9507         (objfile_register_static_link): Likewise.
9508         * psymtab.c (allocate_psymtab): Likewise.
9509         * stabsread.c (read_member_functions): Likewise.
9510         * xcoffread.c (xcoff_end_psymtab): Likewise.
9511
9512 2018-05-20  Simon Marchi  <simon.marchi@ericsson.com>
9513
9514         * common/traits.h (HAVE_IS_TRIVIALLY_COPYABLE): Define if
9515         compiler supports std::is_trivially_constructible.
9516         * common/poison.h: Include obstack.h.
9517         (IsMallocable): Define to is_trivially_constructible if the
9518         compiler supports it, define to true_type otherwise.
9519         (xobnew): New.
9520         (XOBNEW): Redefine.
9521         (xobnewvec): New.
9522         (XOBNEWVEC): Redefine.
9523         * gdb_obstack.h (obstack_zalloc): New.
9524         (OBSTACK_ZALLOC): Redefine.
9525         (obstack_calloc): New.
9526         (OBSTACK_CALLOC): Redefine.
9527         (obstack_new): New.
9528         * gdbarch.sh: Include gdb_obstack in gdbarch.h.
9529         (gdbarch_obstack): New declaration in gdbarch.h, definition in
9530         gdbarch.c.
9531         (GDBARCH_OBSTACK_CALLOC, GDBARCH_OBSTACK_ZALLOC): Use
9532         obstack_calloc/obstack_zalloc.
9533         (gdbarch_obstack_zalloc): Remove.
9534         * target-descriptions.c (tdesc_data_init): Use obstack_new.
9535
9536 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9537
9538         * stack.c (backtrace_command_1): Remove useless variable int i.
9539
9540 2018-05-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
9541
9542         * stack.c (print_frame_info): Fix comment.
9543
9544 2018-05-18  Tom Tromey  <tom@tromey.com>
9545
9546         * dwarf2read.c (struct dwz_file): Add constructor, initializers.
9547         <dwz_bfd>: Now a gdb_bfd_ref_ptr.
9548         (~dwarf2_per_objfile): Update
9549         (dwarf2_get_dwz_file): Use new.
9550         * dwarf2read.h (struct dwarf2_per_objfile) <dwz_file>: Now a
9551         unique_ptr.
9552
9553 2018-05-18  Tom Tromey  <tom@tromey.com>
9554
9555         * dwarf2read.h (struct dwarf2_per_objfile) <dwp_file>: Now a
9556         unique_ptr.
9557         * dwarf2read.c (struct dwp_file): Add constructor and
9558         initializers.
9559         (open_and_init_dwp_file): Return a unique_ptr.
9560         (dwarf2_per_objfile, create_dwp_hash_table)
9561         (create_dwo_unit_in_dwp_v1, create_dwo_unit_in_dwp_v2)
9562         (lookup_dwo_unit_in_dwp): Update.
9563         (open_and_init_dwp_file, get_dwp_file): Update.
9564
9565 2018-05-18  Tom Tromey  <tom@tromey.com>
9566
9567         * dwarf2read.c (dwarf2_per_objfile): Update.
9568         (struct mapped_index): Add initializers.
9569         (dwarf2_read_index): Use new.
9570         (dw2_symtab_iter_init): Update.
9571         * dwarf2read.h (struct dwarf2_per_objfile) <index_table>: Now a
9572         unique_ptr.
9573
9574 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9575
9576         * dwarf2read.c (mapped_index) <total_size>: Remove.
9577
9578 2018-05-18  Simon Marchi  <simon.marchi@ericsson.com>
9579
9580         * unittests/format_pieces-selftests.c (test_format_specifier):
9581         Add ARI comments.
9582
9583 2018-05-18  Tom Tromey  <tom@tromey.com>
9584
9585         * c-typeprint.c (maybe_print_hole): New function.
9586         (c_print_type_struct_field_offset): Update.
9587         (c_type_print_base_struct_union): Call maybe_print_hole.
9588
9589 2018-05-17  Keith Seitz  <keiths@redhat.com>
9590
9591         * breakpoint.c (build_bpstat_chain): New function, moved from
9592         bpstat_stop_status.
9593         (bpstat_stop_status): Add optional parameter, `stop_chain'.
9594         If no stop chain is passed, call build_bpstat_chain to build it.
9595         * breakpoint.h (build_bpstat_chain): Declare.
9596         (bpstat_stop_status): Move documentation here from breakpoint.c.
9597         * infrun.c (handle_signal_stop): Before eliding inlined frames,
9598         build the stop chain and pass it to skip_inline_frames.
9599         Pass this stop chain to bpstat_stop_status.
9600         * inline-frame.c: Include breakpoint.h.
9601         (stopped_by_user_bp_inline_frame): New function.
9602         (skip_inline_frames): Add parameter `stop_chain'.
9603         Move documention to inline-frame.h.
9604         If non-NULL, use stopped_by_user_bp_inline_frame to determine
9605         whether the frame should be elided.
9606         * inline-frame.h (skip_inline_frames): Add parameter `stop_chain'.
9607         Add moved documentation and update for new parameter.
9608
9609 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9610
9611         PR cli/14975
9612         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
9613         unittests/format_pieces-selftests.c.
9614         * common/format.h (format_piece) <operator==>: New.
9615         (format_pieces) <operator[]>: Remove.
9616         * common/format.c (format_pieces::format_pieces): Handle \e.
9617         * unittests/format_pieces-selftests.c: New.
9618
9619 2018-05-17  Tom Tromey  <tom@tromey.com>
9620
9621         PR symtab/23010:
9622         * dwarf2read.c (load_cu, dw2_do_instantiate_symtab)
9623         (dw2_instantiate_symtab): Add skip_partial parameter.
9624         (dw2_find_last_source_symtab, dw2_map_expand_apply)
9625         (dw2_lookup_symbol, dw2_expand_symtabs_for_function)
9626         (dw2_expand_all_symtabs, dw2_expand_symtabs_with_fullname)
9627         (dw2_expand_symtabs_matching_one)
9628         (dw2_find_pc_sect_compunit_symtab)
9629         (dw2_debug_names_lookup_symbol)
9630         (dw2_debug_names_expand_symtabs_for_function): Update.
9631         (init_cutu_and_read_dies): Add skip_partial parameter.
9632         (process_psymtab_comp_unit, build_type_psymtabs_1)
9633         (process_skeletonless_type_unit, load_partial_comp_unit)
9634         (psymtab_to_symtab_1): Update.
9635         (load_full_comp_unit): Add skip_partial parameter.
9636         (process_imported_unit_die, dwarf2_read_addr_index)
9637         (follow_die_offset, dwarf2_fetch_die_loc_sect_off)
9638         (dwarf2_fetch_constant_bytes, dwarf2_fetch_die_type_sect_off)
9639         (read_signatured_type): Update.
9640
9641 2018-05-17  Simon Marchi  <simon.marchi@ericsson.com>
9642
9643         * value.c (release_value): Remove unused variable.
9644         (record_latest_value): Likewise.
9645         (access_value_history): Likewise.
9646         (preserve_values): Likewise.
9647
9648 2018-05-17  Tom Tromey  <tom@tromey.com>
9649
9650         * extension.h (struct ext_lang_type_printers) <py_type_printers>:
9651         Initialize.
9652
9653 2018-05-16  Maciej W. Rozycki  <macro@mips.com>
9654
9655         PR gdb/22286
9656         * linux-nat-trad.c (linux_nat_trad_target::fetch_register):
9657         Also handle registers whose width is not a multiple of
9658         PTRACE_TYPE_RET.
9659         (linux_nat_trad_target::store_register): Likewise.
9660
9661 2018-05-16  Tom Tromey  <tom@tromey.com>
9662
9663         * gdbcore.h (core_bfd): Redefine.
9664         * corelow.c (core_target::close): Update.
9665         (core_target_open): Update.
9666         * progspace.h (struct program_space) <cbfd>: Now a
9667         gdb_bfd_ref_ptr.
9668
9669 2018-05-16  Tom Tromey  <tom@tromey.com>
9670
9671         PR cli/19551:
9672         * symfile-add-flags.h (enum symfile_add_flags)
9673         <SYMFILE_NOT_FILENAME>: New constant.
9674         * symfile.c (read_symbols): Use SYMFILE_NOT_FILENAME.  Get
9675         objfile name from BFD.
9676         (symbol_file_add_with_addrs): Check SYMFILE_NOT_FILENAME.
9677         * minidebug.c (find_separate_debug_file_in_section): Put
9678         ".gnu_debugdata" into BFD's file name.
9679
9680 2018-05-16  Simon Marchi  <simon.marchi@ericsson.com>
9681
9682         * regcache.c (regcache_read_ftype, regcache_write_ftype):
9683         Remove.
9684
9685 2018-05-15  Tamar Christina  <tamar.christina@arm.com>
9686
9687         PR binutils/21446
9688         * aarch64-tdep.c (aarch64_analyze_prologue,
9689         aarch64_software_single_step, aarch64_displaced_step_copy_insn):
9690         Indicate not interested in errors.
9691
9692 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9693
9694         * mips-linux-nat.c (mips_linux_nat_target::fetch_registers):
9695         Supply the MIPS_ZERO_REGNUM register.
9696
9697 2018-05-15  Maciej W. Rozycki  <macro@mips.com>
9698
9699         * mips-tdep.c (mask_address_var): Make variable static.
9700
9701 2018-05-14  Tom Tromey  <tom@tromey.com>
9702
9703         * dwarf2read.c (rust_union_quirks): Clear rust_unions.
9704
9705 2018-05-11  Andrew Burgess  <andrew.burgess@embecosm.com>
9706
9707         * i387-tdep.c (i387_collect_xsave): Use FXSAVE_MXCSR_ADDR not
9708         FXSAVE_ADDR for the mxcsr register.
9709
9710 2018-05-11  Max Filippov  <jcmvbkbc@gmail.com>
9711
9712         * configure.tgt (xtensa*-*-linux*): Drop gdb_target definition.
9713
9714 2018-05-11  Pedro Alves  <palves@redhat.com>
9715
9716         * corelow.c (core_target) <core_target>: No longer inline.
9717         Initialize m_core_gdbarch, m_core_vec and build the section table
9718         here.
9719         <~core_target>: New.
9720         <core_gdbarch, get_core_register_section>: New methods.
9721         <m_core_section_table, m_core_vec, m_core_gdbarch>: New fields,
9722         factored out from ...
9723         <core_data, core_vec, core_gdbarch>: ... these deleted globals.
9724         (core_ops): Delete.
9725         (sniff_core_bfd): Add gdbarch parameter.
9726         (core_close): Delete, merged into ...
9727         (core_target::close): ... here.  Delete self.
9728         (core_close_cleanup): Delete.
9729         (core_target_open): Allocate a core_target on the heap.  Use a
9730         unique_ptr instead of a cleanup.  Bits moved into the core_target
9731         ctor.  Adjust to use core_target methods instead of globals.
9732         (get_core_register_section): Rename to ...
9733         (core_target::get_core_register_section): ... this and adjust.
9734         (struct get_core_registers_cb_data): New.
9735         (get_core_registers_cb): Use it.  Use bool.
9736         (core_target::fetch_registers, core_target::files_info)
9737         (core_target::xfer_partial, core_target::read_description)
9738         (core_target::pid_to, core_target::thread_name): Adjust to
9739         reference class fields instead of globals.
9740         * target.h (struct target_ops_deleter, target_ops_up): New.
9741
9742 2018-05-11  Pedro Alves  <palves@redhat.com>
9743
9744         * corefile.c (core_file_command): Move to corelow.c.
9745         * corelow.c (the_core_target): Delete.
9746         (core_file_command): Moved from corefile.c.  Check exec_bfd
9747         instead of the_core_target.  Use target_detach instead of calling
9748         into the_core_target directly.
9749         (maybe_say_no_core_file_now): New.
9750         (core_target::detach): Use it.
9751         (_initialize_corelow): Remove references to the_core_target.
9752         * gdbcore.h (the_core_target): Delete.
9753
9754 2018-05-11  Tom Tromey  <tromey@redhat.com>
9755             Pedro Alves  <palves@redhat.com>
9756
9757         * corefile.c (core_bfd): Remove.
9758         * gdbcore.h (core_bfd): Now a macro.
9759         * progspace.h (struct program_space) <cbfd>: New field.
9760
9761 2018-05-11  Tom Tromey  <tom@tromey.com>
9762
9763         * mdebugread.c (parse_partial_symbols, psymtab_to_symtab_1): Use
9764         gdb::def_vector.
9765
9766 2018-05-10  Tom Tromey  <tom@tromey.com>
9767
9768         * configure: Rebuild.
9769         * warning.m4 (AM_GDB_WARNINGS): Use -Wimplicit-fallthrough=3.
9770
9771 2018-05-10  Joel Brobecker  <brobecker@adacore.com>
9772
9773         PR server/23158:
9774         * regformats/regdat.sh: Adjust script, following the addition
9775         of the new expedite_regs parameter to init_target_desc.
9776
9777 2018-05-10  Omair Javaid  <omair.javaid@linaro.org>
9778     
9779         PR gdb/23127
9780         * aarch64-linux-tdep.c (aarch64_linux_init_abi): Add call to
9781         set_gdbarch_significant_addr_bit.
9782         * aarch64-tdep.c (aarch64_gdbarch_init): Remove call to
9783         set_gdbarch_significant_addr_bit.
9784         * utils.c (address_significant): Update to sign extend addr.
9785
9786 2018-05-09  Max Filippov  <jcmvbkbc@gmail.com>
9787
9788         * xtensa-linux-tdep.c (xtensa-tdep.h): New include.
9789         (xtensa_linux_init_abi): Limit tdep->num_regs by
9790         tdep->num_nopriv_regs.
9791         * xtensa-tdep.c (xtensa_derive_tdep): Calculate
9792         tdep->num_nopriv_regs and only copy it to tdep->num_regs if it's
9793         not initialized.
9794
9795 2018-05-08  Simon Marchi  <simon.marchi@ericsson.com>
9796
9797         * unittests/string_view-selftests.c: Define GNULIB_NAMESPACE.
9798
9799 2018-05-08  Andrew Burgess  <andrew.burgess@embecosm.com>
9800
9801         * common/x86-xstate.h (I387_FCTRL_INIT_VAL): New constant.
9802         (I387_MXCSR_INIT_VAL): New constant.
9803         * amd64-tdep.c (amd64_supply_xsave): Only read state from xsave
9804         buffer if it was supplied by the inferior.
9805         * i387-tdep.c (i387_supply_fsave): Use I387_MXCSR_INIT_VAL.
9806         (i387_xsave_get_clear_bv): New function.
9807         (i387_supply_xsave): Only read x87 control registers from the
9808         xsave buffer if the feature is enabled, and the state will have
9809         been written, otherwise, provide a suitable default.
9810         (i387_collect_xsave): Pre-clear all registers in xsave buffer,
9811         including x87 control registers.  Update control registers if they
9812         have changed from the default value, and mark features as enabled
9813         as required.
9814         * i387-tdep.h (i387_xsave_get_clear_bv): Declare.
9815
9816 2018-05-08  Ulrich Weigand  <uweigand@de.ibm.com>
9817
9818         * spu-tdep.c (info_spu_event_command): Fix output formatting.
9819
9820 2018-05-07  Tom Tromey  <tom@tromey.com>
9821
9822         * configure: Rebuild.
9823         * warning.m4 (AM_GDB_WARNINGS): Add -Wduplicated-cond.
9824
9825 2018-05-07  Tom Tromey  <tom@tromey.com>
9826
9827         PR tdep/20362:
9828         * arm-tdep.c (arm_record_vfp_data_proc_insn): Properly mask off D
9829         bit.  Use correct value for VDIV.
9830
9831 2018-05-04  Tom Tromey  <tom@tromey.com>
9832
9833         * configure: Rebuild.
9834         * warning.m4 (AM_GDB_WARNINGS): Add -Wimplicit-fallthrough.
9835
9836 2018-05-04  Tom Tromey  <tom@tromey.com>
9837
9838         * linux-record.c (record_linux_system_call) <case
9839         RECORD_SYS_RECVFROM>: Add "break".
9840
9841 2018-05-04  Tom Tromey  <tom@tromey.com>
9842
9843         * mi/mi-main.c (mi_cmd_trace_frame_collected) <REGISTERS_FORMAT>:
9844         Add missing "break".
9845         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals) <NO_FRAME_FILTERS>:
9846         Add missing "break".
9847
9848 2018-05-04  Tom Tromey  <tom@tromey.com>
9849
9850         * rs6000-tdep.c (ppc_process_record_op4)
9851         (ppc_process_record_op63): Add fall-through comment.
9852
9853 2018-05-04  Tom Tromey  <tom@tromey.com>
9854
9855         * i386-tdep.c (i386_process_record): Add fall-through comment.
9856
9857 2018-05-04  Tom Tromey  <tom@tromey.com>
9858
9859         * stabsread.c (define_symbol) <case 'p'>: Add fall-through
9860         comment.
9861
9862 2018-05-04  Tom Tromey  <tom@tromey.com>
9863
9864         * riscv-tdep.c (riscv_isa_xlen): Add fall-through comment.
9865         * utils.c (can_dump_core) <LIMIT_CUR>: Add fall-through comment.
9866         * eval.c (fetch_subexp_value) <MEMORY_ERROR>: Add fall-through
9867         comment.
9868         * d-valprint.c (d_val_print) <TYPE_CODE_STRUCT>: Add fall-through
9869         comment.
9870         * coffread.c (coff_symtab_read) <C_LABEL>: Add fall-through
9871         comment.
9872
9873 2018-05-04  Tom Tromey  <tom@tromey.com>
9874
9875         * dwarf2loc.c (unimplemented): Add ATTRIBUTE_NORETURN.
9876
9877 2018-05-04  Tom Tromey  <tom@tromey.com>
9878
9879         * s390-tdep.c (s390_process_record): Fix fall-through comments.
9880         * xcoffread.c (scan_xcoff_symtab): Move comment later.
9881         * symfile.c (section_is_mapped): Fix fall-through comment.
9882         * stabsread.c (define_symbol, read_member_functions): Fix
9883         fall-through comment.
9884         * s390-linux-tdep.c (s390_process_record): Fix fall-through
9885         comment.
9886         * remote.c (remote_wait_as): Fix fall-through comment.
9887         * p-exp.y (yylex): Fix fall-through comment.
9888         * nat/x86-dregs.c (x86_length_and_rw_bits): Fix fall-through
9889         comment.
9890         * msp430-tdep.c (msp430_gdbarch_init): Fix fall-through comment.
9891         * mdebugread.c (parse_partial_symbols): Fix fall-through comment.
9892         * jv-exp.y (yylex): Fix fall-through comment.
9893         * go-exp.y (lex_one_token): Fix fall-through comment.
9894         * gdbtypes.c (get_discrete_bounds, rank_one_type): Fix
9895         fall-through comment.
9896         * f-exp.y (yylex): Fix fall-through comment.
9897         * dwarf2read.c (process_die): Fix fall-through comments.
9898         * dbxread.c (process_one_symbol): Fix fall-through comment.
9899         * d-exp.y (lex_one_token): Fix fall-through comment.
9900         * cp-name-parser.y (yylex): Fix fall-through comment.
9901         * coffread.c (coff_symtab_read): Fix fall-through comment.
9902         * c-exp.y (lex_one_token): Fix fall-through comment.
9903         * arm-tdep.c (arm_decode_miscellaneous): Fix fall-through
9904         comment.
9905         * arch/arm.c (arm_instruction_changes_pc): Fix fall-through
9906         comment.
9907
9908 2018-05-04  Tom Tromey  <tom@tromey.com>
9909
9910         PR python/22730:
9911         * NEWS: Mention gdb.execute change.
9912         * gdbcmd.h (execute_control_command): Don't declare.
9913         * python/python.c (execute_gdb_command): Use read_command_lines_1,
9914         execute_control_commands, execute_control_commands_to_string.
9915         * cli/cli-script.h (execute_control_commands)
9916         (execute_control_commands_to_string): Declare.
9917         (execute_control_command): Add from_tty parameter.
9918         * cli/cli-script.c (execute_control_commands)
9919         (execute_control_commands_to_string): New functions.
9920         (execute_user_command): Use execute_control_commands.
9921         (execute_control_command_1): Add "from_tty" parameter.  Update.
9922         (execute_control_command): Likewise.
9923
9924 2018-05-04  Tom Tromey  <tom@tromey.com>
9925
9926         PR python/22731:
9927         * NEWS: Mention that breakpoint commands are writable.
9928         * python/py-breakpoint.c (bppy_set_commands): New function.
9929         (breakpoint_object_getset) <"commands">: Use it.
9930
9931 2018-05-04  Tom Tromey  <tom@tromey.com>
9932
9933         * tracepoint.c (actions_command): Update.
9934         * mi/mi-cmd-break.c (mi_command_line_array)
9935         (mi_command_line_array_cnt, mi_command_line_array_ptr)
9936         (mi_read_next_line): Remove.
9937         (mi_cmd_break_commands): Update.
9938         * cli/cli-script.h (read_command_lines, read_command_lines_1): Use
9939         function_view.
9940         * cli/cli-script.c (get_command_line): Update.
9941         (process_next_line): Use function_view.  Constify.
9942         (recurse_read_control_structure, read_command_lines)
9943         (read_command_lines_1): Change argument types to function_view.
9944         (do_define_command, document_command): Update.
9945         * breakpoint.h (check_tracepoint_command): Don't declare.
9946         * breakpoint.c (check_tracepoint_command): Remove.
9947         (commands_command_1, create_tracepoint_from_upload): Update.
9948
9949 2018-05-04  Tom Tromey  <tom@tromey.com>
9950
9951         PR gdb/11750:
9952         * cli/cli-script.h (enum command_control_type) <define_control>:
9953         New constant.
9954         * cli/cli-script.c (multi_line_command_p): Handle define_control.
9955         (build_command_line, execute_control_command_1)
9956         (process_next_line): Likewise.
9957         (do_define_command): New function, extracted from define_command.
9958         (define_command): Use it.
9959
9960 2018-05-04  Tom Tromey  <tom@tromey.com>
9961
9962         * tracepoint.c (actions_command): Update.
9963         * cli/cli-script.h (read_command_lines): Update.
9964         * cli/cli-script.c (read_command_lines): Constify prompt_arg.
9965         (MAX_TMPBUF): Remove define.
9966         (define_command): Use string_printf.
9967         (document_command): Likewise.
9968         * breakpoint.c (commands_command_1): Update.
9969
9970 2018-05-04  Tom Tromey  <tom@tromey.com>
9971
9972         * top.c (execute_command): Update.
9973         * cli/cli-script.h (print_command_lines): Now varargs.
9974         * cli/cli-script.c (print_command_lines): Now varargs.
9975         (execute_control_command_1) <case while_control, case if_control>:
9976         Update.
9977
9978 2018-05-04  Tom Tromey  <tom@tromey.com>
9979
9980         * tracepoint.c (all_tracepoint_actions): Rename from
9981         all_tracepoint_actions_and_cleanup.  Change return type.
9982         (actions_command, encode_actions_1, encode_actions)
9983         (trace_dump_actions, tdump_command): Update.
9984         * remote.c (remote_download_command_source): Update.
9985         * python/python.c (gdbpy_eval_from_control_command)
9986         (python_command, python_interactive_command): Update.
9987         * mi/mi-cmd-break.c (mi_cmd_break_commands): Update.
9988         * guile/guile.c (guile_command)
9989         (gdbscm_eval_from_control_command, guile_command): Update.
9990         * compile/compile.c (compile_code_command)
9991         (compile_print_command, compile_to_object): Update.
9992         * cli/cli-script.h (struct command_lines_deleter): New.
9993         (counted_command_line): New typedef.
9994         (struct command_line): Add constructor, destructor.
9995         <body_list>: Remove.
9996         <body_list_0, body_list_1>: New members.
9997         (command_line_up): Remove typedef.
9998         (read_command_lines, read_command_lines_1, get_command_line):
9999         Update.
10000         (copy_command_lines): Don't declare.
10001         * cli/cli-script.c (build_command_line): Use "new".
10002         (get_command_line): Return counted_command_line.
10003         (print_command_lines, execute_user_command)
10004         (execute_control_command_1, while_command, if_command): Update.
10005         (realloc_body_list): Remove.
10006         (process_next_line, recurse_read_control_structure): Update.
10007         (read_command_lines, read_command_lines_1): Return counted_command_line.
10008         (free_command_lines): Use "delete".
10009         (copy_command_lines): Remove.
10010         (define_command, document_command, show_user_1): Update.
10011         * cli/cli-decode.h (struct cmd_list_element) <user_commands>: Now
10012         a counted_command_line.
10013         * breakpoint.h (counted_command_line): Remove typedef.
10014         (breakpoint_set_commands): Update.
10015         * breakpoint.c (check_no_tracepoint_commands)
10016         (validate_commands_for_breakpoint): Update.
10017         (breakpoint_set_commands): Change commands to be a
10018         counted_command_line.
10019         (commands_command_1, update_dprintf_command_list)
10020         (create_tracepoint_from_upload): Update.
10021
10022 2018-05-04  Tom Tromey  <tom@tromey.com>
10023
10024         * cli/cli-decode.h (cmd_list_element): New constructor.
10025         (~cmd_list_element): New destructor.
10026         (struct cmd_list_element): Add initializers.
10027         * cli/cli-decode.c (do_add_cmd): Use "new".
10028         (delete_cmd): Use "delete".
10029
10030 2018-05-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
10031             Pedro Alves <palves@redhat.com>
10032
10033         PR breakpoints/19806 and support for PR external/20207.
10034         * NEWS: Mention Aarch64 watchpoint improvements.
10035         * aarch64-linux-nat.c (aarch64_linux_stopped_data_address): Fix missed
10036         watchpoints and PR external/20207 watchpoints.
10037         * nat/aarch64-linux-hw-point.c
10038         (kernel_supports_any_contiguous_range): New.
10039         (aarch64_watchpoint_offset): New.
10040         (aarch64_watchpoint_length): Support PR external/20207 watchpoints.
10041         (aarch64_point_encode_ctrl_reg): New parameter offset, new asserts.
10042         (aarch64_point_is_aligned): Support PR external/20207 watchpoints.
10043         (aarch64_align_watchpoint): New parameters aligned_offset_p and
10044         next_addr_orig_p.  Support PR external/20207 watchpoints.
10045         (aarch64_downgrade_regs): New.
10046         (aarch64_dr_state_insert_one_point): New parameters offset and
10047         addr_orig.
10048         (aarch64_dr_state_remove_one_point): Likewise.
10049         (aarch64_handle_breakpoint): Update caller.
10050         (aarch64_handle_aligned_watchpoint): Likewise.
10051         (aarch64_handle_unaligned_watchpoint): Support addr_orig and
10052         aligned_offset.
10053         (aarch64_linux_set_debug_regs): Remove const from state.  Call
10054         aarch64_downgrade_regs.
10055         (aarch64_show_debug_reg_state): Print also dr_addr_orig_wp.
10056         * nat/aarch64-linux-hw-point.h (DR_CONTROL_LENGTH): Rename to ...
10057         (DR_CONTROL_MASK): ... this.
10058         (struct aarch64_debug_reg_state): New field dr_addr_orig_wp.
10059         (unsigned int aarch64_watchpoint_offset): New prototype.
10060         (aarch64_linux_set_debug_regs): Remove const from state.
10061         * utils.c (align_up, align_down): Move to ...
10062         * common/common-utils.c (align_up, align_down): ... here.
10063         * utils.h (align_up, align_down): Move to ...
10064         * common/common-utils.h (align_up, align_down): ... here.
10065
10066 2018-05-04  Joel Brobecker  <brobecker@adacore.com>
10067
10068         * sparc-tdep.c (sparc_structure_return_p): Re-implement to
10069         match the ABI as summarized in GCC's gcc/config/sparc/sparc.c.
10070         (sparc_arg_by_memory_p): Renamed from sparc_arg_on_registers_p.
10071         Re-implement to match the ABI as summarized in GCC's
10072         gcc/config/sparc/sparc.c.  All callers updated.
10073         (sparc32_store_arguments): Remove assertion.
10074
10075 2018-05-04  Tom Tromey  <tom@tromey.com>
10076
10077         * printcmd.c: Don't include tui.h.
10078         (decode_format): Use skip_spaces.
10079
10080 2018-05-04  Tom Tromey  <tom@tromey.com>
10081
10082         PR gdb/22619:
10083         * printcmd.c (last_count): New global.
10084         (x_command): Use saved count when repeating.
10085
10086 2018-05-04  Tom Tromey  <tom@tromey.com>
10087
10088         * nto-procfs.c (do_closedir_cleanup): Remove.
10089         (procfs_pidlist): Use gdb_dir_up.
10090         * procfs.c (do_closedir_cleanup): Remove.
10091         (proc_update_threads): Use gdb_dir_up.
10092         * common/filestuff.h (struct gdb_dir_deleter): New.
10093         (gdb_dir_up): New typedef.
10094
10095 2018-05-04  Tom Tromey  <tom@tromey.com>
10096
10097         * ada-lang.c (print_mention_exception): Use std::string.
10098
10099 2018-05-04  Tom Tromey  <tom@tromey.com>
10100
10101         * ada-lang.c (create_excep_cond_exprs): Update.
10102         (ada_exception_catchpoint_cond_string): Use std::string.
10103
10104 2018-05-04  Tom Tromey  <tom@tromey.com>
10105
10106         * ada-lang.c (xget_renaming_scope): Return std::string.
10107         (old_renaming_is_invisible): Update.
10108
10109 2018-05-04  Tom Tromey  <tom@tromey.com>
10110
10111         * bfd-target.c (target_bfd::m_bfd): Now a gdb_bfd_ref_ptr.
10112         (target_bfd::target_bfd, target_bfd::~target_bfd): Update.
10113
10114 2018-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
10115
10116         * spu-linux-nat.c (spu_linux_nat_target::wait): Fix syntax error.
10117
10118 2018-05-04  Tom Tromey  <tom@tromey.com>
10119
10120         * remote.c (remote_query_supported_append): Change type.
10121         (remote_check_symbols): Update.
10122
10123 2018-05-04  Paul Pluzhnikov  <ppluzhnikov@google.com>
10124
10125         PR gdb/11420
10126         * configure.ac: Prepend libpython.
10127         * python/python-config.py: Likewise.
10128         * configure: Regenerate.
10129
10130 2018-05-03  Simon Marchi  <simon.marchi@ericsson.com>
10131
10132         * Makefile.in (%.c: %.l): Use -t instead of --stdout.
10133
10134 2018-05-03  Pedro Alves  <palves@redhat.com>
10135
10136         * s390-linux-nat.c
10137         (s390_linux_nat_target::have_continuable_watchpoint): Mark with
10138         override.  Write 'true' instead of '1'.
10139         (s390_linux_nat_target::watchpoint_addr_within_range): Remove
10140         declaration.
10141
10142 2018-05-02  Pedro Alves  <palves@redhat.com>
10143
10144         * aarch64-fbsd-nat.c (_initialize_aarch64_fbsd_nat): Use
10145         add_inf_child_target.
10146         * aarch64-linux-nat.c (_initialize_aarch64_linux_nat): Use
10147         add_inf_child_target.
10148         * aix-thread.c (aix_thread_target_info): New.
10149         (aix_thread_target) <shortname, longname, doc>: Delete.
10150         <info>: New.
10151         * alpha-bsd-nat.c (_initialize_alphabsd_nat): Use
10152         add_inf_child_target.
10153         * alpha-linux-nat.c (_initialize_alpha_linux_nat): Use
10154         add_inf_child_target.
10155         * amd64-fbsd-nat.c (_initialize_amd64fbsd_nat): Use
10156         add_inf_child_target.
10157         * amd64-linux-nat.c (_initialize_amd64_linux_nat): Use
10158         add_inf_child_target.
10159         * amd64-nbsd-nat.c (_initialize_amd64nbsd_nat): Use
10160         add_inf_child_target.
10161         * amd64-obsd-nat.c (_initialize_amd64obsd_nat): Use
10162         add_inf_child_target.
10163         * arm-fbsd-nat.c (_initialize_arm_fbsd_nat): Use
10164         add_inf_child_target.
10165         * arm-linux-nat.c (_initialize_arm_linux_nat): Use
10166         add_inf_child_target.
10167         * arm-nbsd-nat.c (_initialize_arm_netbsd_nat): Use
10168         add_inf_child_target.
10169         * bfd-target.c (target_bfd_target_info): New.
10170         (target_bfd) <shortname, longname, doc>: Delete.
10171         <info>: New.
10172         * bsd-kvm.c (bsd_kvm_target_info): New.
10173         (bsd_kvm_target) <shortname, longname, doc>: Delete.
10174         <info>: New.
10175         (bsd_kvm_target::open): Rename to ...
10176         (bsd_kvm_target_open): ... this.  Adjust.
10177         * bsd-uthread.c (bsd_uthread_target_info): New.
10178         (bsd_uthread_target) <shortname, longname, doc>: Delete.
10179         <info>: New.
10180         * corefile.c (core_file_command): Adjust.
10181         * corelow.c (core_target_info): New.
10182         (core_target) <shortname, longname, doc>: Delete.
10183         <info>: New.
10184         (core_target::open): Rename to ...
10185         (core_target_open): ... this.  Adjust.
10186         * ctf.c (ctf_target_info): New.
10187         (ctf_target) <shortname, longname, doc>: Delete.
10188         <info>: New.
10189         (ctf_target::open): Rename to ...
10190         (ctf_target_open): ... this.
10191         (_initialize_ctf): Adjust.
10192         * exec.c (exec_target_info): New.
10193         (exec_target) <shortname, longname, doc>: Delete.
10194         <info>: New.
10195         (exec_target::open): Rename to ...
10196         (exec_target_open): ... this.
10197         * gdbcore.h (core_target_open): Declare.
10198         * go32-nat.c (_initialize_go32_nat): Use add_inf_child_target.
10199         * hppa-linux-nat.c (_initialize_hppa_linux_nat): Use
10200         add_inf_child_target.
10201         * hppa-nbsd-nat.c (_initialize_hppanbsd_nat): Use
10202         add_inf_child_target.
10203         * hppa-obsd-nat.c (_initialize_hppaobsd_nat): Use
10204         add_inf_child_target.
10205         * i386-darwin-nat.c (_initialize_i386_darwin_nat): Use
10206         add_inf_child_target.
10207         * i386-fbsd-nat.c (_initialize_i386fbsd_nat): Use
10208         add_inf_child_target.
10209         * i386-gnu-nat.c (_initialize_i386gnu_nat): Use
10210         add_inf_child_target.
10211         * i386-linux-nat.c (_initialize_i386_linux_nat): Use
10212         add_inf_child_target.
10213         * i386-nbsd-nat.c (_initialize_i386nbsd_nat): Use
10214         add_inf_child_target.
10215         * i386-obsd-nat.c (_initialize_i386obsd_nat): Use
10216         add_inf_child_target.
10217         * ia64-linux-nat.c (_initialize_ia64_linux_nat): Use
10218         add_inf_child_target.
10219         * inf-child.c (inf_child_target_info): New.
10220         (inf_child_target::info): New.
10221         (inf_child_open_target): Remove 'target' parameter.  Use
10222         get_native_target instead.
10223         (inf_child_target::open): Delete.
10224         (add_inf_child_target): New.
10225         * inf-child.h (inf_child_target) <shortname, longname, doc, open>:
10226         Delete.
10227         <info>: New.
10228         (add_inf_child_target): Declare.
10229         (inf_child_open_target): Declare.
10230         * linux-thread-db.c (thread_db_target_info): New.
10231         (thread_db_target) <shortname, longname, doc>: Delete.
10232         <info>: New.
10233         * m32r-linux-nat.c (_initialize_m32r_linux_nat): Use
10234         add_inf_child_target.
10235         * m68k-bsd-nat.c (_initialize_m68kbsd_nat): Use
10236         add_inf_child_target.
10237         * m68k-linux-nat.c (_initialize_m68k_linux_nat): Use
10238         add_inf_child_target.
10239         * m88k-bsd-nat.c (_initialize_m88kbsd_nat): Use
10240         add_inf_child_target.
10241         * make-target-delegates (print_class): Adjust.
10242         * mips-fbsd-nat.c (_initialize_mips_fbsd_nat): Use
10243         add_inf_child_target.
10244         * mips-linux-nat.c (_initialize_mips_linux_nat): Use
10245         add_inf_child_target.
10246         * mips-nbsd-nat.c (_initialize_mipsnbsd_nat): Use
10247         add_inf_child_target.
10248         * mips64-obsd-nat.c (_initialize_mips64obsd_nat): Use
10249         add_inf_child_target.
10250         * nto-procfs.c (nto_native_target_info): New.
10251         (nto_procfs_target_native) <shortname, longname, doc>:
10252         Delete.
10253         <info>: New.
10254         (nto_procfs_target_info): New.
10255         (nto_procfs_target_procfs) <shortname, longname, doc>:
10256         Delete.
10257         <info>: New.
10258         (init_procfs_targets): Adjust.
10259         * ppc-fbsd-nat.c (_initialize_ppcfbsd_nat): Use
10260         add_inf_child_target.
10261         * ppc-linux-nat.c (_initialize_ppc_linux_nat): Use
10262         add_inf_child_target.
10263         * ppc-nbsd-nat.c (_initialize_ppcnbsd_nat): Use
10264         add_inf_child_target.
10265         * ppc-obsd-nat.c (_initialize_ppcobsd_nat): Use
10266         add_inf_child_target.
10267         * ravenscar-thread.c (ravenscar_target_info): New.
10268         (ravenscar_thread_target) <shortname, longname, doc>:
10269         Delete.
10270         <info>: New.
10271         * record-btrace.c (record_btrace_target_info):
10272         (record_btrace_target) <shortname, longname, doc>: Delete.
10273         <info>: New.
10274         (record_btrace_target::open): Rename to ...
10275         (record_btrace_target_open): ... this.  Adjust.
10276         * record-full.c (record_longname, record_doc): New.
10277         (record_full_base_target) <shortname, longname, doc>: Delete.
10278         <info>: New.
10279         (record_full_target_info): New.
10280         (record_full_target): <shortname>: Delete.
10281         <info>: New.
10282         (record_full_core_open_1, record_full_open_1): Update comments.
10283         (record_full_base_target::open): Rename to ...
10284         (record_full_open): ... this.
10285         (cmd_record_full_restore): Update.
10286         (_initialize_record_full): Update.
10287         * remote-sim.c (remote_sim_target_info): New.
10288         (gdbsim_target) <shortname, longname, doc>: Delete.
10289         <info>: New.
10290         (gdbsim_target::open): Rename to ...
10291         (gdbsim_target_open): ... this.
10292         (_initialize_remote_sim): Adjust.
10293         * remote.c (remote_doc): New.
10294         (remote_target_info): New.
10295         (remote_target) <shortname, longname, doc>: Delete.
10296         <info>: New.
10297         (extended_remote_target_info): New.
10298         (extended_remote_target) <shortname, longname, doc>: Delete.
10299         <info>: New.
10300         (remote_target::open_1): Make static.  Adjust.
10301         * rs6000-nat.c (_initialize_rs6000_nat): Use add_inf_child_target.
10302         * s390-linux-nat.c (_initialize_s390_nat): Use
10303         add_inf_child_target.
10304         * sh-nbsd-nat.c (_initialize_shnbsd_nat): Use
10305         add_inf_child_target.
10306         * sol-thread.c (thread_db_target_info): New.
10307         (sol_thread_target) <shortname, longname, doc>: Delete.
10308         <info>: New.
10309         * sparc-linux-nat.c (_initialize_sparc_linux_nat): Use
10310         add_inf_child_target.
10311         * sparc-nbsd-nat.c (_initialize_sparcnbsd_nat): Use
10312         add_inf_child_target.
10313         * sparc64-fbsd-nat.c (_initialize_sparc64fbsd_nat): Use
10314         add_inf_child_target.
10315         * sparc64-linux-nat.c (_initialize_sparc64_linux_nat): Use
10316         add_inf_child_target.
10317         * sparc64-nbsd-nat.c (_initialize_sparc64nbsd_nat): Use
10318         add_inf_child_target.
10319         * sparc64-obsd-nat.c (_initialize_sparc64obsd_nat): Use
10320         add_inf_child_target.
10321         * spu-linux-nat.c (_initialize_spu_nat): Use
10322         add_inf_child_target.
10323         * spu-multiarch.c (spu_multiarch_target_info): New.
10324         (spu_multiarch_target) <shortname, longname, doc>: Delete.
10325         <info>: New.
10326         * target-delegates.c: Regenerate.
10327         * target.c: Include <unordered_map>.
10328         (target_ops_p): Delete.
10329         (DEF_VEC_P(target_ops_p)): Delete.
10330         (target_factories): New.
10331         (test_target_info): New.
10332         (test_target_ops::info): New.
10333         (open_target): Adjust to use target_factories.
10334         (add_target_with_completer): Rename to ...
10335         (add_target): ... this.  Change prototype.  Register target_info
10336         and open callback in target_factories.  Register target_info in
10337         command context instead of target_ops.
10338         (add_target): Delete old implementation.
10339         (add_deprecated_target_alias): Change prototype.  Adjust.
10340         (the_native_target): New.
10341         (set_native_target, get_native_target): New.
10342         (find_default_run_target): Use the_native_target.
10343         (find_attach_target, find_run_target): Simplify.
10344         (target_ops::open): Delete.
10345         (dummy_target_info): New.
10346         (dummy_target::shortname, dummy_target::longname)
10347         (dummy_target::doc): Delete.
10348         (dummy_target::info): New.
10349         (debug_target::shortname, debug_target::longname)
10350         (debug_target::doc): Delete.
10351         (debug_target::info): New.
10352         * target.h (struct target_info): New.
10353         (target_ops::~target_ops): Add comment.
10354         (target_ops::info): New.
10355         (target_ops::shortname, target_ops::longname, target_ops::doc): No
10356         longer virtual.  Implement in terms of target_info.
10357         (set_native_target, get_native_target): Declare.
10358         (target_open_ftype): New.
10359         (add_target, add_target_with_completer)
10360         (add_deprecated_target_alias): Change prototype.
10361         (test_target) <shortname, longname, doc>: Delete.
10362         <info>: New.
10363         * tilegx-linux-nat.c (_initialize_tile_linux_nat): Use
10364         add_inf_child_target.
10365         * tracefile-tfile.c (tfile_target_info): New.
10366         (tfile_target) <shortname, longname, doc>: Delete.
10367         <info>: New.
10368         (tfile_target::open): Rename to ...
10369         (tfile_target_open): ... this.
10370         (_initialize_tracefile_tfile): Adjust.
10371         * vax-bsd-nat.c (_initialize_vaxbsd_nat): Use
10372         add_inf_child_target.
10373         * windows-nat.c (_initialize_windows_nat): Use
10374         add_inf_child_target.
10375         * xtensa-linux-nat.c (_initialize_xtensa_linux_nat): Use
10376         add_inf_child_target.
10377
10378 2018-05-02  Pedro Alves  <palves@redhat.com>
10379
10380         * linux-nat.h (linux_nat_target) <low_new_thread,
10381         low_delete_thread, low_new_fork, low_forget_process,
10382         low_prepare_to_resume, low_siginfo_fixup, low_status_is_event>:
10383         New virtual methods.
10384         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10385         (linux_nat_new_fork_ftype, linux_nat_set_new_fork)
10386         (linux_nat_forget_process_ftype, linux_nat_set_forget_process)
10387         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10388         (linux_nat_set_prepare_to_resume, linux_nat_set_status_is_event):
10389         Delete.
10390         * linux-fork.c (delete_fork): Adjust to call low method.
10391         * linux-nat.c (linux_nat_new_thread, linux_nat_delete_thread)
10392         (linux_nat_new_fork, linux_nat_forget_process_hook)
10393         (linux_nat_prepare_to_resume, linux_nat_siginfo_fixup)
10394         (linux_nat_status_is_event):
10395         (linux_nat_target::follow_fork, lwp_free, add_lwp, detach_one_lwp)
10396         (linux_resume_one_lwp_throw, linux_handle_extended_wait): Adjust
10397         to call low method.
10398         (sigtrap_is_event): Rename to ...
10399         (linux_nat_target::low_status_is_event): ... this.
10400         (linux_nat_set_status_is_event): Delete.
10401         (save_stop_reason, linux_nat_wait_1)
10402         (linux_nat_target::mourn_inferior, siginfo_fixup): Adjust to call
10403         low methods.
10404         (linux_nat_set_new_thread, linux_nat_set_delete_thread)
10405         (linux_nat_set_new_fork, linux_nat_set_forget_process)
10406         (linux_nat_forget_process, linux_nat_set_siginfo_fixup)
10407         (linux_nat_set_prepare_to_resume): Delete.
10408         * aarch64-linux-nat.c: All linux_nat_set_* callbacks converted to
10409         low virtual methods.
10410         * amd64-linux-nat.c: Likewise.
10411         * arm-linux-nat.c: Likewise.
10412         * i386-linux-nat.c: Likewise.
10413         * ia64-linux-nat.c: Likewise.
10414         * mips-linux-nat.c: Likewise.
10415         * ppc-linux-nat.c: Likewise.
10416         * s390-linux-nat.c: Likewise.
10417         * sparc64-linux-nat.c: Likewise.
10418         * x86-linux-nat.c: Likewise.
10419         * x86-linux-nat.h: Include "nat/x86-linux.h".
10420         (x86_linux_nat_target) <low_new_fork, low_forget_process,
10421         low_prepare_to_resume, low_new_thread, low_delete_thread>:
10422         Override methods.
10423
10424 2018-05-02  Pedro Alves  <palves@redhat.com>
10425
10426         * target.h (target_ops)
10427         <stopped_by_sw_breakpoint, supports_stopped_by_sw_breakpoint,
10428         stopped_by_hw_breakpoint, supports_stopped_by_hw_breakpoint,
10429         stopped_by_watchpoint, have_continuable_watchpoint,
10430         stopped_data_address, watchpoint_addr_within_range,
10431         can_accel_watchpoint_condition, can_run, thread_alive,
10432         has_all_memory, has_memory, has_stack, has_registers,
10433         has_execution, can_async_p, is_async_p, supports_non_stop,
10434         always_non_stop_p, can_execute_reverse, supports_multi_process,
10435         supports_enable_disable_tracepoint,
10436         supports_disable_randomization, supports_string_tracing,
10437         supports_evaluation_of_breakpoint_conditions,
10438         can_run_breakpoint_commands, filesystem_is_local,
10439         can_download_tracepoint, get_trace_state_variable_value,
10440         set_trace_notes, get_tib_address, use_agent, can_use_agent,
10441         record_is_replaying, record_will_replay,
10442         augmented_libraries_svr4_read>: Adjust to return bool.
10443         * aarch64-linux-nat.c: All implementations adjusted.
10444         * aix-thread.c: All implementations adjusted.
10445         * arm-linux-nat.c: All implementations adjusted.
10446         * breakpoint.c: All implementations adjusted.
10447         * bsd-kvm.c: All implementations adjusted.
10448         * bsd-uthread.c: All implementations adjusted.
10449         * corelow.c: All implementations adjusted.
10450         * ctf.c: All implementations adjusted.
10451         * darwin-nat.c: All implementations adjusted.
10452         * darwin-nat.h: All implementations adjusted.
10453         * exec.c: All implementations adjusted.
10454         * fbsd-nat.c: All implementations adjusted.
10455         * fbsd-nat.h: All implementations adjusted.
10456         * gnu-nat.c: All implementations adjusted.
10457         * gnu-nat.h: All implementations adjusted.
10458         * go32-nat.c: All implementations adjusted.
10459         * ia64-linux-nat.c: All implementations adjusted.
10460         * inf-child.c: All implementations adjusted.
10461         * inf-child.h: All implementations adjusted.
10462         * inf-ptrace.c: All implementations adjusted.
10463         * inf-ptrace.h: All implementations adjusted.
10464         * linux-nat.c: All implementations adjusted.
10465         * linux-nat.h: All implementations adjusted.
10466         * mips-linux-nat.c: All implementations adjusted.
10467         * nto-procfs.c: All implementations adjusted.
10468         * ppc-linux-nat.c: All implementations adjusted.
10469         * procfs.c: All implementations adjusted.
10470         * ravenscar-thread.c: All implementations adjusted.
10471         * record-btrace.c: All implementations adjusted.
10472         * record-full.c: All implementations adjusted.
10473         * remote-sim.c: All implementations adjusted.
10474         * remote.c: All implementations adjusted.
10475         * s390-linux-nat.c: All implementations adjusted.
10476         * sol-thread.c: All implementations adjusted.
10477         * spu-multiarch.c: All implementations adjusted.
10478         * target-delegates.c: All implementations adjusted.
10479         * target.c: All implementations adjusted.
10480         * target.h: All implementations adjusted.
10481         * tracefile-tfile.c: All implementations adjusted.
10482         * tracefile.c: All implementations adjusted.
10483         * tracefile.h: All implementations adjusted.
10484         * windows-nat.c: All implementations adjusted.
10485         * x86-linux-nat.h: All implementations adjusted.
10486         * x86-nat.h: All implementations adjusted.
10487
10488 2018-05-02  Pedro Alves  <palves@redhat.com>
10489
10490         * make-target-delegates (scan_target_h): Don't trim lines here.
10491         Replace sequences of tabs and/or whitespace with a single
10492         whitespace.
10493         (top level, parsing methods): Trim each line before processing it
10494         here.
10495
10496 2018-05-02  Pedro Alves  <palves@redhat.com>
10497             John Baldwin  <jhb@freebsd.org>
10498
10499         * target.h (enum strata) <debug_stratum>: New.
10500         (struct target_ops) <all delegation methods>: Replace by C++
10501         virtual methods, and drop "to_" prefix.  All references updated
10502         throughout.
10503         <to_shortname, to_longname, to_doc, to_data,
10504         to_have_steppable_watchpoint, to_have_continuable_watchpoint,
10505         to_has_thread_control, to_attach_no_wait>: Delete, replaced by
10506         virtual methods.  All references updated throughout.
10507         <can_attach, supports_terminal_ours, can_create_inferior,
10508         get_thread_control_capabilities, attach_no_wait>: New
10509         virtual methods.
10510         <insert_breakpoint, remove_breakpoint>: Now
10511         TARGET_DEFAULT_NORETURN methods.
10512         <info_proc>: Now returns bool.
10513         <to_magic>: Delete.
10514         (OPS_MAGIC): Delete.
10515         (current_target): Delete.  All references replaced by references
10516         to ...
10517         (target_stack): ... this.  New.
10518         (target_shortname, target_longname): Adjust.
10519         (target_can_run): Now a function declaration.
10520         (default_child_has_all_memory, default_child_has_memory)
10521         (default_child_has_stack, default_child_has_registers)
10522         (default_child_has_execution): Remove target_ops parameter.
10523         (complete_target_initialization): Delete.
10524         (memory_breakpoint_target): New template class.
10525         (test_target_ops): Refactor as a C++ class with virtual methods.
10526         * make-target-delegates (NAME_PART): Tighten.
10527         (POINTER_PART, CP_SYMBOL): New.
10528         (SIMPLE_RETURN_PART): Reimplement.
10529         (VEC_RETURN_PART): Expect less.
10530         (RETURN_PART, VIRTUAL_PART): New.
10531         (METHOD): Adjust to C++ virtual methods.
10532         (scan_target_h): Remove reference to C99.
10533         (dname): Output "target_ops::" prefix.
10534         (write_function_header): Adjust to output a C++ class method.
10535         (write_declaration): New.
10536         (write_delegator): Adjust to output a C++ class method.
10537         (tdname): Output "dummy_target::" prefix.
10538         (write_tdefault, write_debugmethod): Adjust to output a C++ class
10539         method.
10540         (tdefault_names, debug_names): Delete.
10541         (return_types, tdefaults, styles, argtypes_array): New.
10542         (top level): All methods are delegators.
10543         (print_class): New.
10544         (top level): Print dummy_target and debug_target classes.
10545         * target-delegates.c: Regenerate.
10546         * target-debug.h (target_debug_print_enum_info_proc_what)
10547         (target_debug_print_thread_control_capabilities)
10548         (target_debug_print_thread_info_p): New.
10549         * target.c (dummy_target): Delete.
10550         (the_dummy_target, the_debug_target): New.
10551         (target_stack): Now extern.
10552         (set_targetdebug): Push/unpush debug target.
10553         (default_child_has_all_memory, default_child_has_memory)
10554         (default_child_has_stack, default_child_has_registers)
10555         (default_child_has_execution): Remove target_ops parameter.
10556         (complete_target_initialization): Delete.
10557         (add_target_with_completer): No longer call
10558         complete_target_initialization.
10559         (target_supports_terminal_ours): Use regular delegation.
10560         (update_current_target): Delete.
10561         (push_target): No longer check magic number.  Don't call
10562         update_current_target.
10563         (unpush_target): Don't call update_current_target.
10564         (target_is_pushed): No longer check magic number.
10565         (target_require_runnable): Skip for all stratums over
10566         process_stratum.
10567         (target_ops::info_proc): New.
10568         (target_info_proc): Use find_target_at and
10569         find_default_run_target.
10570         (target_supports_disable_randomization): Use regular delegation.
10571         (target_get_osdata): Use find_target_at.
10572         (target_ops::open, target_ops::close, target_ops::can_attach)
10573         (target_ops::attach, target_ops::can_create_inferior)
10574         (target_ops::create_inferior, target_ops::can_run)
10575         (target_can_run): New.
10576         (default_fileio_target): Use regular delegation.
10577         (target_ops::fileio_open, target_ops::fileio_pwrite)
10578         (target_ops::fileio_pread, target_ops::fileio_fstat)
10579         (target_ops::fileio_close, target_ops::fileio_unlink)
10580         (target_ops::fileio_readlink): New.
10581         (target_fileio_open_1, target_fileio_unlink)
10582         (target_fileio_readlink): Always call the target method.  Handle
10583         FILEIO_ENOSYS.
10584         (return_zero, return_zero_has_execution): Delete.
10585         (init_dummy_target): Delete.
10586         (dummy_target::dummy_target, dummy_target::shortname)
10587         (dummy_target::longname, dummy_target::doc)
10588         (debug_target::debug_target, debug_target::shortname)
10589         (debug_target::longname, debug_target::doc): New.
10590         (target_supports_delete_record): Use regular delegation.
10591         (setup_target_debug): Delete.
10592         (maintenance_print_target_stack): Skip debug_stratum.
10593         (initialize_targets): Instantiate the_dummy_target and
10594         the_debug_target.
10595         * auxv.c (target_auxv_parse): Remove 'ops' parameter.  Adjust to
10596         use target_stack.
10597         (target_auxv_search, fprint_target_auxv): Adjust.
10598         (info_auxv_command): Adjust to use target_stack.
10599         * auxv.h (target_auxv_parse): Remove 'ops' parameter.
10600         * exceptions.c (print_flush): Handle a NULL target_stack.
10601         * regcache.c (target_ops_no_register): Refactor as class with
10602         virtual methods.
10603
10604         * exec.c (exec_target): New class.
10605         (exec_ops): Now an exec_target.
10606         (exec_open, exec_close_1, exec_get_section_table)
10607         (exec_xfer_partial, exec_files_info, exec_has_memory)
10608         (exec_make_note_section): Refactor as exec_target methods.
10609         (exec_file_clear, ignore, exec_remove_breakpoint, init_exec_ops):
10610         Delete.
10611         (exec_target::find_memory_regions): New.
10612         (_initialize_exec): Don't call init_exec_ops.
10613         * gdbcore.h (exec_file_clear): Delete.
10614
10615         * corefile.c (core_target): Delete.
10616         (core_file_command): Adjust.
10617         * corelow.c (core_target): New class.
10618         (the_core_target): New.
10619         (core_close): Remove target_ops parameter.
10620         (core_close_cleanup): Adjust.
10621         (core_target::close): New.
10622         (core_open, core_detach, get_core_registers, core_files_info)
10623         (core_xfer_partial, core_thread_alive, core_read_description)
10624         (core_pid_to_str, core_thread_name, core_has_memory)
10625         (core_has_stack, core_has_registers, core_info_proc): Rework as
10626         core_target methods.
10627         (ignore, core_remove_breakpoint, init_core_ops): Delete.
10628         (_initialize_corelow): Initialize the_core_target.
10629         * gdbcore.h (core_target): Delete.
10630         (the_core_target): New.
10631
10632         * ctf.c: (ctf_target): New class.
10633         (ctf_ops): Now a ctf_target.
10634         (ctf_open, ctf_close, ctf_files_info, ctf_fetch_registers)
10635         (ctf_xfer_partial, ctf_get_trace_state_variable_value)
10636         (ctf_trace_find, ctf_traceframe_info): Refactor as ctf_target
10637         methods.
10638         (init_ctf_ops): Delete.
10639         (_initialize_ctf): Don't call it.
10640         * tracefile-tfile.c (tfile_target): New class.
10641         (tfile_ops): Now a tfile_target.
10642         (tfile_open, tfile_close, tfile_files_info)
10643         (tfile_get_tracepoint_status, tfile_trace_find)
10644         (tfile_fetch_registers, tfile_xfer_partial)
10645         (tfile_get_trace_state_variable_value, tfile_traceframe_info):
10646         Refactor as tfile_target methods.
10647         (tfile_xfer_partial_features): Remove target_ops parameter.
10648         (init_tfile_ops): Delete.
10649         (_initialize_tracefile_tfile): Don't call it.
10650         * tracefile.c (tracefile_has_all_memory, tracefile_has_memory)
10651         (tracefile_has_stack, tracefile_has_registers)
10652         (tracefile_thread_alive, tracefile_get_trace_status): Refactor as
10653         tracefile_target methods.
10654         (init_tracefile_ops): Delete.
10655         (tracefile_target::tracefile_target): New.
10656         * tracefile.h: Include "target.h".
10657         (tracefile_target): New class.
10658         (init_tracefile_ops): Delete.
10659
10660         * spu-multiarch.c (spu_multiarch_target): New class.
10661         (spu_ops): Now a spu_multiarch_target.
10662         (spu_thread_architecture, spu_region_ok_for_hw_watchpoint)
10663         (spu_fetch_registers, spu_store_registers, spu_xfer_partial)
10664         (spu_search_memory, spu_mourn_inferior): Refactor as
10665         spu_multiarch_target methods.
10666         (init_spu_ops): Delete.
10667         (_initialize_spu_multiarch): Remove references to init_spu_ops,
10668         complete_target_initialization.
10669
10670         * ravenscar-thread.c (ravenscar_thread_target): New class.
10671         (ravenscar_ops): Now a ravenscar_thread_target.
10672         (ravenscar_resume, ravenscar_wait, ravenscar_update_thread_list)
10673         (ravenscar_thread_alive, ravenscar_pid_to_str)
10674         (ravenscar_fetch_registers, ravenscar_store_registers)
10675         (ravenscar_prepare_to_store, ravenscar_stopped_by_sw_breakpoint)
10676         (ravenscar_stopped_by_hw_breakpoint)
10677         (ravenscar_stopped_by_watchpoint, ravenscar_stopped_data_address)
10678         (ravenscar_mourn_inferior, ravenscar_core_of_thread)
10679         (ravenscar_get_ada_task_ptid): Refactor as ravenscar_thread_target
10680         methods.
10681         (init_ravenscar_thread_ops): Delete.
10682         (_initialize_ravenscar): Remove references to
10683         init_ravenscar_thread_ops and complete_target_initialization.
10684
10685         * bsd-uthread.c (bsd_uthread_ops_hack): Delete.
10686         (bsd_uthread_target): New class.
10687         (bsd_uthread_ops): Now a bsd_uthread_target.
10688         (bsd_uthread_activate): Adjust to refer to bsd_uthread_ops.
10689         (bsd_uthread_close, bsd_uthread_mourn_inferior)
10690         (bsd_uthread_fetch_registers, bsd_uthread_store_registers)
10691         (bsd_uthread_wait, bsd_uthread_resume, bsd_uthread_thread_alive)
10692         (bsd_uthread_update_thread_list, bsd_uthread_extra_thread_info)
10693         (bsd_uthread_pid_to_str): Refactor as bsd_uthread_target methods.
10694         (bsd_uthread_target): Delete function.
10695         (_initialize_bsd_uthread): Remove reference to
10696         complete_target_initialization.
10697
10698         * bfd-target.c (target_bfd_data): Delete.  Fields folded into ...
10699         (target_bfd): ... this new class.
10700         (target_bfd_xfer_partial, target_bfd_get_section_table)
10701         (target_bfd_close): Refactor as target_bfd methods.
10702         (target_bfd::~target_bfd): New.
10703         (target_bfd_reopen): Adjust.
10704         (target_bfd::close): New.
10705
10706         * record-btrace.c (record_btrace_target): New class.
10707         (record_btrace_ops): Now a record_btrace_target.
10708         (record_btrace_open, record_btrace_stop_recording)
10709         (record_btrace_disconnect, record_btrace_close)
10710         (record_btrace_async, record_btrace_info)
10711         (record_btrace_insn_history, record_btrace_insn_history_range)
10712         (record_btrace_insn_history_from, record_btrace_call_history)
10713         (record_btrace_call_history_range)
10714         (record_btrace_call_history_from, record_btrace_record_method)
10715         (record_btrace_is_replaying, record_btrace_will_replay)
10716         (record_btrace_xfer_partial, record_btrace_insert_breakpoint)
10717         (record_btrace_remove_breakpoint, record_btrace_fetch_registers)
10718         (record_btrace_store_registers, record_btrace_prepare_to_store)
10719         (record_btrace_to_get_unwinder)
10720         (record_btrace_to_get_tailcall_unwinder, record_btrace_resume)
10721         (record_btrace_commit_resume, record_btrace_wait)
10722         (record_btrace_stop, record_btrace_can_execute_reverse)
10723         (record_btrace_stopped_by_sw_breakpoint)
10724         (record_btrace_supports_stopped_by_sw_breakpoint)
10725         (record_btrace_stopped_by_hw_breakpoint)
10726         (record_btrace_supports_stopped_by_hw_breakpoint)
10727         (record_btrace_update_thread_list, record_btrace_thread_alive)
10728         (record_btrace_goto_begin, record_btrace_goto_end)
10729         (record_btrace_goto, record_btrace_stop_replaying_all)
10730         (record_btrace_execution_direction)
10731         (record_btrace_prepare_to_generate_core)
10732         (record_btrace_done_generating_core): Refactor as
10733         record_btrace_target methods.
10734         (init_record_btrace_ops): Delete.
10735         (_initialize_record_btrace): Remove reference to
10736         init_record_btrace_ops.
10737         * record-full.c (RECORD_FULL_IS_REPLAY): Adjust to always refer to
10738         the execution_direction global.
10739         (record_full_base_target, record_full_target)
10740         (record_full_core_target): New classes.
10741         (record_full_ops): Now a record_full_target.
10742         (record_full_core_ops): Now a record_full_core_target.
10743         (record_full_target::detach, record_full_target::disconnect)
10744         (record_full_core_target::disconnect)
10745         (record_full_target::mourn_inferior, record_full_target::kill):
10746         New.
10747         (record_full_open, record_full_close, record_full_async): Refactor
10748         as methods of the record_full_base_target class.
10749         (record_full_resume, record_full_commit_resume): Refactor
10750         as methods of the record_full_target class.
10751         (record_full_wait, record_full_stopped_by_watchpoint)
10752         (record_full_stopped_data_address)
10753         (record_full_stopped_by_sw_breakpoint)
10754         (record_full_supports_stopped_by_sw_breakpoint)
10755         (record_full_stopped_by_hw_breakpoint)
10756         (record_full_supports_stopped_by_hw_breakpoint): Refactor as
10757         methods of the record_full_base_target class.
10758         (record_full_store_registers, record_full_xfer_partial)
10759         (record_full_insert_breakpoint, record_full_remove_breakpoint):
10760         Refactor as methods of the record_full_target class.
10761         (record_full_can_execute_reverse, record_full_get_bookmark)
10762         (record_full_goto_bookmark, record_full_execution_direction)
10763         (record_full_record_method, record_full_info, record_full_delete)
10764         (record_full_is_replaying, record_full_will_replay)
10765         (record_full_goto_begin, record_full_goto_end, record_full_goto)
10766         (record_full_stop_replaying): Refactor as methods of the
10767         record_full_base_target class.
10768         (record_full_core_resume, record_full_core_kill)
10769         (record_full_core_fetch_registers)
10770         (record_full_core_prepare_to_store)
10771         (record_full_core_store_registers, record_full_core_xfer_partial)
10772         (record_full_core_insert_breakpoint)
10773         (record_full_core_remove_breakpoint)
10774         (record_full_core_has_execution): Refactor
10775         as methods of the record_full_core_target class.
10776         (record_full_base_target::supports_delete_record): New.
10777         (init_record_full_ops): Delete.
10778         (init_record_full_core_ops): Delete.
10779         (record_full_save): Refactor as method of the
10780         record_full_base_target class.
10781         (_initialize_record_full): Remove references to
10782         init_record_full_ops and init_record_full_core_ops.
10783
10784         * remote.c (remote_target, extended_remote_target): New classes.
10785         (remote_ops): Now a remote_target.
10786         (extended_remote_ops): Now an extended_remote_target.
10787         (remote_insert_fork_catchpoint, remote_remove_fork_catchpoint)
10788         (remote_insert_vfork_catchpoint, remote_remove_vfork_catchpoint)
10789         (remote_insert_exec_catchpoint, remote_remove_exec_catchpoint)
10790         (remote_pass_signals, remote_set_syscall_catchpoint)
10791         (remote_program_signals, )
10792         (remote_thread_always_alive): Remove target_ops parameter.
10793         (remote_thread_alive, remote_thread_name)
10794         (remote_update_thread_list, remote_threads_extra_info)
10795         (remote_static_tracepoint_marker_at)
10796         (remote_static_tracepoint_markers_by_strid)
10797         (remote_get_ada_task_ptid, remote_close, remote_start_remote)
10798         (remote_open): Refactor as methods of remote_target.
10799         (extended_remote_open, extended_remote_detach)
10800         (extended_remote_attach, extended_remote_post_attach):
10801         (extended_remote_supports_disable_randomization)
10802         (extended_remote_create_inferior): : Refactor as method of
10803         extended_remote_target.
10804         (remote_set_permissions, remote_open_1, remote_detach)
10805         (remote_follow_fork, remote_follow_exec, remote_disconnect)
10806         (remote_resume, remote_commit_resume, remote_stop)
10807         (remote_interrupt, remote_pass_ctrlc, remote_terminal_inferior)
10808         (remote_terminal_ours, remote_wait, remote_fetch_registers)
10809         (remote_prepare_to_store, remote_store_registers)
10810         (remote_flash_erase, remote_flash_done, remote_files_info)
10811         (remote_kill, remote_mourn, remote_insert_breakpoint)
10812         (remote_remove_breakpoint, remote_insert_watchpoint)
10813         (remote_watchpoint_addr_within_range)
10814         (remote_remove_watchpoint, remote_region_ok_for_hw_watchpoint)
10815         (remote_check_watch_resources, remote_stopped_by_sw_breakpoint)
10816         (remote_supports_stopped_by_sw_breakpoint)
10817         (remote_stopped_by_hw_breakpoint)
10818         (remote_supports_stopped_by_hw_breakpoint)
10819         (remote_stopped_by_watchpoint, remote_stopped_data_address)
10820         (remote_insert_hw_breakpoint, remote_remove_hw_breakpoint)
10821         (remote_verify_memory): Refactor as methods of remote_target.
10822         (remote_write_qxfer, remote_read_qxfer): Remove target_ops
10823         parameter.
10824         (remote_xfer_partial, remote_get_memory_xfer_limit)
10825         (remote_search_memory, remote_rcmd, remote_memory_map)
10826         (remote_pid_to_str, remote_get_thread_local_address)
10827         (remote_get_tib_address, remote_read_description): Refactor as
10828         methods of remote_target.
10829         (remote_target::fileio_open, remote_target::fileio_pwrite)
10830         (remote_target::fileio_pread, remote_target::fileio_close): New.
10831         (remote_hostio_readlink, remote_hostio_fstat)
10832         (remote_filesystem_is_local, remote_can_execute_reverse)
10833         (remote_supports_non_stop, remote_supports_disable_randomization)
10834         (remote_supports_multi_process, remote_supports_cond_breakpoints)
10835         (remote_supports_enable_disable_tracepoint)
10836         (remote_supports_string_tracing)
10837         (remote_can_run_breakpoint_commands, remote_trace_init)
10838         (remote_download_tracepoint, remote_can_download_tracepoint)
10839         (remote_download_trace_state_variable, remote_enable_tracepoint)
10840         (remote_disable_tracepoint, remote_trace_set_readonly_regions)
10841         (remote_trace_start, remote_get_trace_status)
10842         (remote_get_tracepoint_status, remote_trace_stop)
10843         (remote_trace_find, remote_get_trace_state_variable_value)
10844         (remote_save_trace_data, remote_get_raw_trace_data)
10845         (remote_set_disconnected_tracing, remote_core_of_thread)
10846         (remote_set_circular_trace_buffer, remote_traceframe_info)
10847         (remote_get_min_fast_tracepoint_insn_len)
10848         (remote_set_trace_buffer_size, remote_set_trace_notes)
10849         (remote_use_agent, remote_can_use_agent, remote_enable_btrace)
10850         (remote_disable_btrace, remote_teardown_btrace)
10851         (remote_read_btrace, remote_btrace_conf)
10852         (remote_augmented_libraries_svr4_read, remote_load)
10853         (remote_pid_to_exec_file, remote_can_do_single_step)
10854         (remote_execution_direction, remote_thread_handle_to_thread_info):
10855         Refactor as methods of remote_target.
10856         (init_remote_ops, init_extended_remote_ops): Delete.
10857         (remote_can_async_p, remote_is_async_p, remote_async)
10858         (remote_thread_events, remote_upload_tracepoints)
10859         (remote_upload_trace_state_variables): Refactor as methods of
10860         remote_target.
10861         (_initialize_remote): Remove references to init_remote_ops and
10862         init_extended_remote_ops.
10863
10864         * remote-sim.c (gdbsim_target): New class.
10865         (gdbsim_fetch_register, gdbsim_store_register, gdbsim_kill)
10866         (gdbsim_load, gdbsim_create_inferior, gdbsim_open, gdbsim_close)
10867         (gdbsim_detach, gdbsim_resume, gdbsim_interrupt)
10868         (gdbsim_wait, gdbsim_prepare_to_store, gdbsim_xfer_partial)
10869         (gdbsim_files_info, gdbsim_mourn_inferior, gdbsim_thread_alive)
10870         (gdbsim_pid_to_str, gdbsim_has_all_memory, gdbsim_has_memory):
10871         Refactor as methods of gdbsim_target.
10872         (gdbsim_ops): Now a gdbsim_target.
10873         (init_gdbsim_ops): Delete.
10874         (gdbsim_cntrl_c): Adjust.
10875         (_initialize_remote_sim): Remove reference to init_gdbsim_ops.
10876
10877         * amd64-linux-nat.c (amd64_linux_nat_target): New class.
10878         (the_amd64_linux_nat_target): New.
10879         (amd64_linux_fetch_inferior_registers)
10880         (amd64_linux_store_inferior_registers): Refactor as methods of
10881         amd64_linux_nat_target.
10882         (_initialize_amd64_linux_nat): Adjust.  Set linux_target.
10883         * i386-linux-nat.c: Don't include "linux-nat.h".
10884         (i386_linux_nat_target): New class.
10885         (the_i386_linux_nat_target): New.
10886         (i386_linux_fetch_inferior_registers)
10887         (i386_linux_store_inferior_registers, i386_linux_resume): Refactor
10888         as methods of i386_linux_nat_target.
10889         (_initialize_i386_linux_nat): Adjust.  Set linux_target.
10890         * inf-child.c (inf_child_ops): Delete.
10891         (inf_child_fetch_inferior_registers)
10892         (inf_child_store_inferior_registers): Delete.
10893         (inf_child_post_attach, inf_child_prepare_to_store): Refactor as
10894         methods of inf_child_target.
10895         (inf_child_target::supports_terminal_ours)
10896         (inf_child_target::terminal_init)
10897         (inf_child_target::terminal_inferior)
10898         (inf_child_target::terminal_ours_for_output)
10899         (inf_child_target::terminal_ours, inf_child_target::interrupt)
10900         (inf_child_target::pass_ctrlc, inf_child_target::terminal_info):
10901         New.
10902         (inf_child_open, inf_child_disconnect, inf_child_close)
10903         (inf_child_mourn_inferior, inf_child_maybe_unpush_target)
10904         (inf_child_post_startup_inferior, inf_child_can_run)
10905         (inf_child_pid_to_exec_file): Refactor as methods of
10906         inf_child_target.
10907         (inf_child_follow_fork): Delete.
10908         (inf_child_target::can_create_inferior)
10909         (inf_child_target::can_attach): New.
10910         (inf_child_target::has_all_memory, inf_child_target::has_memory)
10911         (inf_child_target::has_stack, inf_child_target::has_registers)
10912         (inf_child_target::has_execution): New.
10913         (inf_child_fileio_open, inf_child_fileio_pwrite)
10914         (inf_child_fileio_pread, inf_child_fileio_fstat)
10915         (inf_child_fileio_close, inf_child_fileio_unlink)
10916         (inf_child_fileio_readlink, inf_child_use_agent)
10917         (inf_child_can_use_agent): Refactor as methods of
10918         inf_child_target.
10919         (return_zero, inf_child_target): Delete.
10920         (inf_child_target::inf_child_target): New.
10921         * inf-child.h: Include "target.h".
10922         (inf_child_target): Delete function prototype.
10923         (inf_child_target): New class.
10924         (inf_child_open_target, inf_child_mourn_inferior)
10925         (inf_child_maybe_unpush_target): Delete.
10926         * inf-ptrace.c (inf_ptrace_target::~inf_ptrace_target): New.
10927         (inf_ptrace_follow_fork, inf_ptrace_insert_fork_catchpoint)
10928         (inf_ptrace_remove_fork_catchpoint, inf_ptrace_create_inferior)
10929         (inf_ptrace_post_startup_inferior, inf_ptrace_mourn_inferior)
10930         (inf_ptrace_attach, inf_ptrace_post_attach, inf_ptrace_detach)
10931         (inf_ptrace_detach_success, inf_ptrace_kill, inf_ptrace_resume)
10932         (inf_ptrace_wait, inf_ptrace_xfer_partial)
10933         (inf_ptrace_thread_alive, inf_ptrace_files_info)
10934         (inf_ptrace_pid_to_str, inf_ptrace_auxv_parse): Refactor as
10935         methods of inf_ptrace_target.
10936         (inf_ptrace_target): Delete function.
10937         * inf-ptrace.h: Include "inf-child.h".
10938         (inf_ptrace_target): Delete function declaration.
10939         (inf_ptrace_target): New class.
10940         (inf_ptrace_trad_target, inf_ptrace_detach_success): Delete.
10941         * linux-nat.c (linux_target): New.
10942         (linux_ops, linux_ops_saved, super_xfer_partial): Delete.
10943         (linux_nat_target::~linux_nat_target): New.
10944         (linux_child_post_attach, linux_child_post_startup_inferior)
10945         (linux_child_follow_fork, linux_child_insert_fork_catchpoint)
10946         (linux_child_remove_fork_catchpoint)
10947         (linux_child_insert_vfork_catchpoint)
10948         (linux_child_remove_vfork_catchpoint)
10949         (linux_child_insert_exec_catchpoint)
10950         (linux_child_remove_exec_catchpoint)
10951         (linux_child_set_syscall_catchpoint, linux_nat_pass_signals)
10952         (linux_nat_create_inferior, linux_nat_attach, linux_nat_detach)
10953         (linux_nat_resume, linux_nat_stopped_by_watchpoint)
10954         (linux_nat_stopped_data_address)
10955         (linux_nat_stopped_by_sw_breakpoint)
10956         (linux_nat_supports_stopped_by_sw_breakpoint)
10957         (linux_nat_stopped_by_hw_breakpoint)
10958         (linux_nat_supports_stopped_by_hw_breakpoint, linux_nat_wait)
10959         (linux_nat_kill, linux_nat_mourn_inferior)
10960         (linux_nat_xfer_partial, linux_nat_thread_alive)
10961         (linux_nat_update_thread_list, linux_nat_pid_to_str)
10962         (linux_nat_thread_name, linux_child_pid_to_exec_file)
10963         (linux_child_static_tracepoint_markers_by_strid)
10964         (linux_nat_is_async_p, linux_nat_can_async_p)
10965         (linux_nat_supports_non_stop, linux_nat_always_non_stop_p)
10966         (linux_nat_supports_multi_process)
10967         (linux_nat_supports_disable_randomization, linux_nat_async)
10968         (linux_nat_stop, linux_nat_close, linux_nat_thread_address_space)
10969         (linux_nat_core_of_thread, linux_nat_filesystem_is_local)
10970         (linux_nat_fileio_open, linux_nat_fileio_readlink)
10971         (linux_nat_fileio_unlink, linux_nat_thread_events): Refactor as
10972         methods of linux_nat_target.
10973         (linux_nat_wait_1, linux_xfer_siginfo, linux_proc_xfer_partial)
10974         (linux_proc_xfer_spu, linux_nat_xfer_osdata): Remove target_ops
10975         parameter.
10976         (check_stopped_by_watchpoint): Adjust.
10977         (linux_xfer_partial): Delete.
10978         (linux_target_install_ops, linux_target, linux_nat_add_target):
10979         Delete.
10980         (linux_nat_target::linux_nat_target): New.
10981         * linux-nat.h: Include "inf-ptrace.h".
10982         (linux_nat_target): New.
10983         (linux_target, linux_target_install_ops, linux_nat_add_target):
10984         Delete function declarations.
10985         (linux_target): Declare global.
10986         * linux-thread-db.c (thread_db_target): New.
10987         (thread_db_target::thread_db_target): New.
10988         (thread_db_ops): Delete.
10989         (the_thread_db_target): New.
10990         (thread_db_detach, thread_db_wait, thread_db_mourn_inferior)
10991         (thread_db_update_thread_list, thread_db_pid_to_str)
10992         (thread_db_extra_thread_info)
10993         (thread_db_thread_handle_to_thread_info)
10994         (thread_db_get_thread_local_address, thread_db_get_ada_task_ptid)
10995         (thread_db_resume): Refactor as methods of thread_db_target.
10996         (init_thread_db_ops): Delete.
10997         (_initialize_thread_db): Remove reference to init_thread_db_ops.
10998         * x86-linux-nat.c: Don't include "linux-nat.h".
10999         (super_post_startup_inferior): Delete.
11000         (x86_linux_nat_target::~x86_linux_nat_target): New.
11001         (x86_linux_child_post_startup_inferior)
11002         (x86_linux_read_description, x86_linux_enable_btrace)
11003         (x86_linux_disable_btrace, x86_linux_teardown_btrace)
11004         (x86_linux_read_btrace, x86_linux_btrace_conf): Refactor as
11005         methods of x86_linux_nat_target.
11006         (x86_linux_create_target): Delete.  Bits folded ...
11007         (x86_linux_add_target): ... here.  Now takes a linux_nat_target
11008         pointer.
11009         * x86-linux-nat.h: Include "linux-nat.h" and "x86-nat.h".
11010         (x86_linux_nat_target): New class.
11011         (x86_linux_create_target): Delete.
11012         (x86_linux_add_target): Now takes a linux_nat_target pointer.
11013         * x86-nat.c (x86_insert_watchpoint, x86_remove_watchpoint)
11014         (x86_region_ok_for_watchpoint, x86_stopped_data_address)
11015         (x86_stopped_by_watchpoint, x86_insert_hw_breakpoint)
11016         (x86_remove_hw_breakpoint, x86_can_use_hw_breakpoint)
11017         (x86_stopped_by_hw_breakpoint): Remove target_ops parameter and
11018         make extern.
11019         (x86_use_watchpoints): Delete.
11020         * x86-nat.h: Include "breakpoint.h" and "target.h".
11021         (x86_use_watchpoints): Delete.
11022         (x86_can_use_hw_breakpoint, x86_region_ok_for_hw_watchpoint)
11023         (x86_stopped_by_watchpoint, x86_stopped_data_address)
11024         (x86_insert_watchpoint, x86_remove_watchpoint)
11025         (x86_insert_hw_breakpoint, x86_remove_hw_breakpoint)
11026         (x86_stopped_by_hw_breakpoint): New declarations.
11027         (x86_nat_target): New template class.
11028
11029         * ppc-linux-nat.c (ppc_linux_nat_target): New class.
11030         (the_ppc_linux_nat_target): New.
11031         (ppc_linux_fetch_inferior_registers)
11032         (ppc_linux_can_use_hw_breakpoint)
11033         (ppc_linux_region_ok_for_hw_watchpoint)
11034         (ppc_linux_ranged_break_num_registers)
11035         (ppc_linux_insert_hw_breakpoint, ppc_linux_remove_hw_breakpoint)
11036         (ppc_linux_insert_mask_watchpoint)
11037         (ppc_linux_remove_mask_watchpoint)
11038         (ppc_linux_can_accel_watchpoint_condition)
11039         (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint)
11040         (ppc_linux_stopped_data_address, ppc_linux_stopped_by_watchpoint)
11041         (ppc_linux_watchpoint_addr_within_range)
11042         (ppc_linux_masked_watch_num_registers)
11043         (ppc_linux_store_inferior_registers, ppc_linux_auxv_parse)
11044         (ppc_linux_read_description): Refactor as methods of
11045         ppc_linux_nat_target.
11046         (_initialize_ppc_linux_nat): Adjust.  Set linux_target.
11047
11048         * procfs.c (procfs_xfer_partial): Delete forward declaration.
11049         (procfs_target): New class.
11050         (the_procfs_target): New.
11051         (procfs_target): Delete function.
11052         (procfs_auxv_parse, procfs_attach, procfs_detach)
11053         (procfs_fetch_registers, procfs_store_registers, procfs_wait)
11054         (procfs_xfer_partial, procfs_resume, procfs_pass_signals)
11055         (procfs_files_info, procfs_kill_inferior, procfs_mourn_inferior)
11056         (procfs_create_inferior, procfs_update_thread_list)
11057         (procfs_thread_alive, procfs_pid_to_str)
11058         (procfs_can_use_hw_breakpoint, procfs_stopped_by_watchpoint)
11059         (procfs_stopped_data_address, procfs_insert_watchpoint)
11060         (procfs_remove_watchpoint, procfs_region_ok_for_hw_watchpoint)
11061         (proc_find_memory_regions, procfs_info_proc)
11062         (procfs_make_note_section): Refactor as methods of procfs_target.
11063         (_initialize_procfs): Adjust.
11064         * sol-thread.c (sol_thread_target): New class.
11065         (sol_thread_ops): Now a sol_thread_target.
11066         (sol_thread_detach, sol_thread_resume, sol_thread_wait)
11067         (sol_thread_fetch_registers, sol_thread_store_registers)
11068         (sol_thread_xfer_partial, sol_thread_mourn_inferior)
11069         (sol_thread_alive, solaris_pid_to_str, sol_update_thread_list)
11070         (sol_get_ada_task_ptid): Refactor as methods of sol_thread_target.
11071         (init_sol_thread_ops): Delete.
11072         (_initialize_sol_thread): Adjust.  Remove references to
11073         init_sol_thread_ops and complete_target_initialization.
11074
11075         * windows-nat.c (windows_nat_target): New class.
11076         (windows_fetch_inferior_registers)
11077         (windows_store_inferior_registers, windows_resume, windows_wait)
11078         (windows_attach, windows_detach, windows_pid_to_exec_file)
11079         (windows_files_info, windows_create_inferior)
11080         (windows_mourn_inferior, windows_interrupt, windows_kill_inferior)
11081         (windows_close, windows_pid_to_str, windows_xfer_partial)
11082         (windows_get_tib_address, windows_get_ada_task_ptid)
11083         (windows_thread_name, windows_thread_alive): Refactor as
11084         windows_nat_target methods.
11085         (do_initial_windows_stuff): Adjust.
11086         (windows_target): Delete function.
11087         (_initialize_windows_nat): Adjust.
11088
11089         * darwin-nat.c (darwin_resume, darwin_wait_to, darwin_interrupt)
11090         (darwin_mourn_inferior, darwin_kill_inferior)
11091         (darwin_create_inferior, darwin_attach, darwin_detach)
11092         (darwin_pid_to_str, darwin_thread_alive, darwin_xfer_partial)
11093         (darwin_pid_to_exec_file, darwin_get_ada_task_ptid)
11094         (darwin_supports_multi_process): Refactor as darwin_nat_target
11095         methods.
11096         (darwin_resume_to, darwin_files_info): Delete.
11097         (_initialize_darwin_inferior): Rename to ...
11098         (_initialize_darwin_nat): ... this.  Adjust to C++ification.
11099         * darwin-nat.h: Include "inf-child.h".
11100         (darwin_nat_target): New class.
11101         (darwin_complete_target): Delete.
11102         * i386-darwin-nat.c (i386_darwin_nat_target): New class.
11103         (darwin_target): New.
11104         (i386_darwin_fetch_inferior_registers)
11105         (i386_darwin_store_inferior_registers): Refactor as methods of
11106         darwin_nat_target.
11107         (darwin_complete_target): Delete, with ...
11108         (_initialize_i386_darwin_nat): ... bits factored out here.
11109
11110         * alpha-linux-nat.c (alpha_linux_nat_target): New class.
11111         (the_alpha_linux_nat_target): New.
11112         (alpha_linux_register_u_offset): Refactor as
11113         alpha_linux_nat_target method.
11114         (_initialize_alpha_linux_nat): Adjust.
11115         * linux-nat-trad.c (inf_ptrace_register_u_offset): Delete.
11116         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11117         (inf_ptrace_store_register, inf_ptrace_store_registers): Refact as
11118         methods of linux_nat_trad_target.
11119         (linux_trad_target): Delete.
11120         * linux-nat-trad.h (linux_trad_target): Delete function.
11121         (linux_nat_trad_target): New class.
11122         * mips-linux-nat.c (mips_linux_nat_target): New class.
11123         (super_fetch_registers, super_store_registers, super_close):
11124         Delete.
11125         (the_mips_linux_nat_target): New.
11126         (mips64_linux_regsets_fetch_registers)
11127         (mips64_linux_regsets_store_registers)
11128         (mips64_linux_fetch_registers, mips64_linux_store_registers)
11129         (mips_linux_register_u_offset, mips_linux_read_description)
11130         (mips_linux_can_use_hw_breakpoint)
11131         (mips_linux_stopped_by_watchpoint)
11132         (mips_linux_stopped_data_address)
11133         (mips_linux_region_ok_for_hw_watchpoint)
11134         (mips_linux_insert_watchpoint, mips_linux_remove_watchpoint)
11135         (mips_linux_close): Refactor as methods of mips_linux_nat.
11136         (_initialize_mips_linux_nat): Adjust to C++ification.
11137
11138         * aix-thread.c (aix_thread_target): New class.
11139         (aix_thread_ops): Now an aix_thread_target.
11140         (aix_thread_detach, aix_thread_resume, aix_thread_wait)
11141         (aix_thread_fetch_registers, aix_thread_store_registers)
11142         (aix_thread_xfer_partial, aix_thread_mourn_inferior)
11143         (aix_thread_thread_alive, aix_thread_pid_to_str)
11144         (aix_thread_extra_thread_info, aix_thread_get_ada_task_ptid):
11145         Refactor as methods of aix_thread_target.
11146         (init_aix_thread_ops): Delete.
11147         (_initialize_aix_thread): Remove references to init_aix_thread_ops
11148         and complete_target_initialization.
11149         * rs6000-nat.c (rs6000_xfer_shared_libraries): Delete.
11150         (rs6000_nat_target): New class.
11151         (the_rs6000_nat_target): New.
11152         (rs6000_fetch_inferior_registers, rs6000_store_inferior_registers)
11153         (rs6000_xfer_partial, rs6000_wait, rs6000_create_inferior)
11154         (rs6000_xfer_shared_libraries): Refactor as rs6000_nat_target methods.
11155         (super_create_inferior): Delete.
11156         (_initialize_rs6000_nat): Adjust to C++ification.
11157
11158         * arm-linux-nat.c (arm_linux_nat_target): New class.
11159         (the_arm_linux_nat_target): New.
11160         (arm_linux_fetch_inferior_registers)
11161         (arm_linux_store_inferior_registers, arm_linux_read_description)
11162         (arm_linux_can_use_hw_breakpoint, arm_linux_insert_hw_breakpoint)
11163         (arm_linux_remove_hw_breakpoint)
11164         (arm_linux_region_ok_for_hw_watchpoint)
11165         (arm_linux_insert_watchpoint, arm_linux_remove_watchpoint)
11166         (arm_linux_stopped_data_address, arm_linux_stopped_by_watchpoint)
11167         (arm_linux_watchpoint_addr_within_range): Refactor as methods of
11168         arm_linux_nat_target.
11169         (_initialize_arm_linux_nat): Adjust to C++ification.
11170
11171         * aarch64-linux-nat.c (aarch64_linux_nat_target): New class.
11172         (the_aarch64_linux_nat_target): New.
11173         (aarch64_linux_fetch_inferior_registers)
11174         (aarch64_linux_store_inferior_registers)
11175         (aarch64_linux_child_post_startup_inferior)
11176         (aarch64_linux_read_description)
11177         (aarch64_linux_can_use_hw_breakpoint)
11178         (aarch64_linux_insert_hw_breakpoint)
11179         (aarch64_linux_remove_hw_breakpoint)
11180         (aarch64_linux_insert_watchpoint, aarch64_linux_remove_watchpoint)
11181         (aarch64_linux_region_ok_for_hw_watchpoint)
11182         (aarch64_linux_stopped_data_address)
11183         (aarch64_linux_stopped_by_watchpoint)
11184         (aarch64_linux_watchpoint_addr_within_range)
11185         (aarch64_linux_can_do_single_step): Refactor as methods of
11186         aarch64_linux_nat_target.
11187         (super_post_startup_inferior): Delete.
11188         (_initialize_aarch64_linux_nat): Adjust to C++ification.
11189
11190         * hppa-linux-nat.c (hppa_linux_nat_target): New class.
11191         (the_hppa_linux_nat_target): New.
11192         (hppa_linux_fetch_inferior_registers)
11193         (hppa_linux_store_inferior_registers): Refactor as methods of
11194         hppa_linux_nat_target.
11195         (_initialize_hppa_linux_nat): Adjust to C++ification.
11196
11197         * ia64-linux-nat.c (ia64_linux_nat_target): New class.
11198         (the_ia64_linux_nat_target): New.
11199         (ia64_linux_insert_watchpoint, ia64_linux_remove_watchpoint)
11200         (ia64_linux_stopped_data_address)
11201         (ia64_linux_stopped_by_watchpoint, ia64_linux_fetch_registers)
11202         (ia64_linux_store_registers, ia64_linux_xfer_partial): Refactor as
11203         ia64_linux_nat_target methods.
11204         (super_xfer_partial): Delete.
11205         (_initialize_ia64_linux_nat): Adjust to C++ification.
11206
11207         * m32r-linux-nat.c (m32r_linux_nat_target): New class.
11208         (the_m32r_linux_nat_target): New.
11209         (m32r_linux_fetch_inferior_registers)
11210         (m32r_linux_store_inferior_registers): Refactor as
11211         m32r_linux_nat_target methods.
11212         (_initialize_m32r_linux_nat): Adjust to C++ification.
11213
11214         * m68k-linux-nat.c (m68k_linux_nat_target): New class.
11215         (the_m68k_linux_nat_target): New.
11216         (m68k_linux_fetch_inferior_registers)
11217         (m68k_linux_store_inferior_registers): Refactor as
11218         m68k_linux_nat_target methods.
11219         (_initialize_m68k_linux_nat): Adjust to C++ification.
11220
11221         * s390-linux-nat.c (s390_linux_nat_target): New class.
11222         (the_s390_linux_nat_target): New.
11223         (s390_linux_fetch_inferior_registers)
11224         (s390_linux_store_inferior_registers, s390_stopped_by_watchpoint)
11225         (s390_insert_watchpoint, s390_remove_watchpoint)
11226         (s390_can_use_hw_breakpoint, s390_insert_hw_breakpoint)
11227         (s390_remove_hw_breakpoint, s390_region_ok_for_hw_watchpoint)
11228         (s390_auxv_parse, s390_read_description): Refactor as methods of
11229         s390_linux_nat_target.
11230         (_initialize_s390_nat): Adjust to C++ification.
11231
11232         * sparc-linux-nat.c (sparc_linux_nat_target): New class.
11233         (the_sparc_linux_nat_target): New.
11234         (_initialize_sparc_linux_nat): Adjust to C++ification.
11235         * sparc-nat.c (sparc_fetch_inferior_registers)
11236         (sparc_store_inferior_registers): Remove target_ops parameter.
11237         * sparc-nat.h (sparc_fetch_inferior_registers)
11238         (sparc_store_inferior_registers): Remove target_ops parameter.
11239         * sparc64-linux-nat.c (sparc64_linux_nat_target): New class.
11240         (the_sparc64_linux_nat_target): New.
11241         (_initialize_sparc64_linux_nat): Adjust to C++ification.
11242
11243         * spu-linux-nat.c (spu_linux_nat_target): New class.
11244         (the_spu_linux_nat_target): New.
11245         (spu_child_post_startup_inferior, spu_child_post_attach)
11246         (spu_child_wait, spu_fetch_inferior_registers)
11247         (spu_store_inferior_registers, spu_xfer_partial)
11248         (spu_can_use_hw_breakpoint): Refactor as spu_linux_nat_target
11249         methods.
11250         (_initialize_spu_nat): Adjust to C++ification.
11251
11252         * tilegx-linux-nat.c (tilegx_linux_nat_target): New class.
11253         (the_tilegx_linux_nat_target): New.
11254         (fetch_inferior_registers, store_inferior_registers):
11255         Refactor as methods.
11256         (_initialize_tile_linux_nat): Adjust to C++ification.
11257
11258         * xtensa-linux-nat.c (xtensa_linux_nat_target): New class.
11259         (the_xtensa_linux_nat_target): New.
11260         (xtensa_linux_fetch_inferior_registers)
11261         (xtensa_linux_store_inferior_registers): Refactor as
11262         xtensa_linux_nat_target methods.
11263         (_initialize_xtensa_linux_nat): Adjust to C++ification.
11264
11265         * fbsd-nat.c (USE_SIGTRAP_SIGINFO): Delete.
11266         (fbsd_pid_to_exec_file, fbsd_find_memory_regions)
11267         (fbsd_find_memory_regions, fbsd_info_proc, fbsd_xfer_partial)
11268         (fbsd_thread_alive, fbsd_pid_to_str, fbsd_thread_name)
11269         (fbsd_update_thread_list, fbsd_resume, fbsd_wait)
11270         (fbsd_stopped_by_sw_breakpoint)
11271         (fbsd_supports_stopped_by_sw_breakpoint, fbsd_follow_fork)
11272         (fbsd_insert_fork_catchpoint, fbsd_remove_fork_catchpoint)
11273         (fbsd_insert_vfork_catchpoint, fbsd_remove_vfork_catchpoint)
11274         (fbsd_post_startup_inferior, fbsd_post_attach)
11275         (fbsd_insert_exec_catchpoint, fbsd_remove_exec_catchpoint)
11276         (fbsd_set_syscall_catchpoint)
11277         (super_xfer_partial, super_resume, super_wait)
11278         (fbsd_supports_stopped_by_hw_breakpoint): Delete.
11279         (fbsd_handle_debug_trap): Remove target_ops parameter.
11280         (fbsd_nat_add_target): Delete.
11281         * fbsd-nat.h: Include "inf-ptrace.h".
11282         (fbsd_nat_add_target): Delete.
11283         (USE_SIGTRAP_SIGINFO): Define.
11284         (fbsd_nat_target): New class.
11285
11286         * amd64-bsd-nat.c (amd64bsd_fetch_inferior_registers)
11287         (amd64bsd_store_inferior_registers): Remove target_ops parameter.
11288         (amd64bsd_target): Delete.
11289         * amd64-bsd-nat.h: New file.
11290         * amd64-fbsd-nat.c: Include "amd64-bsd-nat.h" instead of
11291         "x86-bsd-nat.h".
11292         (amd64_fbsd_nat_target): New class.
11293         (the_amd64_fbsd_nat_target): New.
11294         (amd64fbsd_read_description): Refactor as method of
11295         amd64_fbsd_nat_target.
11296         (amd64_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11297         (_initialize_amd64fbsd_nat): Adjust to C++ification.
11298         * amd64-nat.h (amd64bsd_target): Delete function declaration.
11299         * i386-bsd-nat.c (i386bsd_fetch_inferior_registers)
11300         (i386bsd_store_inferior_registers): Remove target_ops parameter.
11301         (i386bsd_target): Delete.
11302         * i386-bsd-nat.h (i386bsd_target): Delete function declaration.
11303         (i386bsd_fetch_inferior_registers)
11304         (i386bsd_store_inferior_registers): Declare.
11305         (i386_bsd_nat_target): New class.
11306         * i386-fbsd-nat.c (i386_fbsd_nat_target): New class.
11307         (the_i386_fbsd_nat_target): New.
11308         (i386fbsd_resume, i386fbsd_read_description): Refactor as
11309         i386_fbsd_nat_target methods.
11310         (i386_fbsd_nat_target::supports_stopped_by_hw_breakpoint): New.
11311         (_initialize_i386fbsd_nat): Adjust to C++ification.
11312         * x86-bsd-nat.c (super_mourn_inferior): Delete.
11313         (x86bsd_mourn_inferior, x86bsd_target): Delete.
11314         (_initialize_x86_bsd_nat): Adjust to C++ification.
11315         * x86-bsd-nat.h: Include "x86-nat.h".
11316         (x86bsd_target): Delete declaration.
11317         (x86bsd_nat_target): New class.
11318
11319         * aarch64-fbsd-nat.c (aarch64_fbsd_nat_target): New class.
11320         (the_aarch64_fbsd_nat_target): New.
11321         (aarch64_fbsd_fetch_inferior_registers)
11322         (aarch64_fbsd_store_inferior_registers): Refactor as methods of
11323         aarch64_fbsd_nat_target.
11324         (_initialize_aarch64_fbsd_nat): Adjust to C++ification.
11325         * alpha-bsd-nat.c (alpha_bsd_nat_target): New class.
11326         (the_alpha_bsd_nat_target): New.
11327         (alphabsd_fetch_inferior_registers)
11328         (alphabsd_store_inferior_registers): Refactor as
11329         alpha_bsd_nat_target methods.
11330         (_initialize_alphabsd_nat): Refactor as methods of
11331         alpha_bsd_nat_target.
11332         * amd64-nbsd-nat.c: Include "amd64-bsd-nat.h".
11333         (the_amd64_nbsd_nat_target): New.
11334         (_initialize_amd64nbsd_nat): Adjust to C++ification.
11335         * amd64-obsd-nat.c: Include "amd64-bsd-nat.h".
11336         (the_amd64_obsd_nat_target): New.
11337         (_initialize_amd64obsd_nat): Adjust to C++ification.
11338         * arm-fbsd-nat.c (arm_fbsd_nat_target): New.
11339         (the_arm_fbsd_nat_target): New.
11340         (arm_fbsd_fetch_inferior_registers)
11341         (arm_fbsd_store_inferior_registers, arm_fbsd_read_description):
11342         (_initialize_arm_fbsd_nat): Refactor as methods of
11343         arm_fbsd_nat_target.
11344         (_initialize_arm_fbsd_nat): Adjust to C++ification.
11345         * arm-nbsd-nat.c (arm_netbsd_nat_target): New class.
11346         (the_arm_netbsd_nat_target): New.
11347         (armnbsd_fetch_registers, armnbsd_store_registers): Refactor as
11348         arm_netbsd_nat_target.
11349         (_initialize_arm_netbsd_nat): Adjust to C++ification.
11350         * hppa-nbsd-nat.c (hppa_nbsd_nat_target): New class.
11351         (the_hppa_nbsd_nat_target): New.
11352         (hppanbsd_fetch_registers, hppanbsd_store_registers): Refactor as
11353         hppa_nbsd_nat_target methods.
11354         (_initialize_hppanbsd_nat): Adjust to C++ification.
11355         * hppa-obsd-nat.c (hppa_obsd_nat_target): New class.
11356         (the_hppa_obsd_nat_target): New.
11357         (hppaobsd_fetch_registers, hppaobsd_store_registers): Refactor as
11358         methods of hppa_obsd_nat_target.
11359         (_initialize_hppaobsd_nat): Adjust to C++ification.  Use
11360         add_target.
11361         * i386-nbsd-nat.c (the_i386_nbsd_nat_target): New.
11362         (_initialize_i386nbsd_nat): Adjust to C++ification.  Use
11363         add_target.
11364         * i386-obsd-nat.c (the_i386_obsd_nat_target): New.
11365         (_initialize_i386obsd_nat): Use add_target.
11366         * m68k-bsd-nat.c (m68k_bsd_nat_target): New class.
11367         (the_m68k_bsd_nat_target): New.
11368         (m68kbsd_fetch_inferior_registers)
11369         (m68kbsd_store_inferior_registers): Refactor as methods of
11370         m68k_bsd_nat_target.
11371         (_initialize_m68kbsd_nat): Adjust to C++ification.
11372         * mips-fbsd-nat.c (mips_fbsd_nat_target): New class.
11373         (the_mips_fbsd_nat_target): New.
11374         (mips_fbsd_fetch_inferior_registers)
11375         (mips_fbsd_store_inferior_registers): Refactor as methods of
11376         mips_fbsd_nat_target.
11377         (_initialize_mips_fbsd_nat): Adjust to C++ification.  Use
11378         add_target.
11379         * mips-nbsd-nat.c (mips_nbsd_nat_target): New class.
11380         (the_mips_nbsd_nat_target): New.
11381         (mipsnbsd_fetch_inferior_registers)
11382         (mipsnbsd_store_inferior_registers): Refactor as methods of
11383         mips_nbsd_nat_target.
11384         (_initialize_mipsnbsd_nat): Adjust to C++ification.
11385         * mips64-obsd-nat.c (mips64_obsd_nat_target): New class.
11386         (the_mips64_obsd_nat_target): New.
11387         (mips64obsd_fetch_inferior_registers)
11388         (mips64obsd_store_inferior_registers): Refactor as methods of
11389         mips64_obsd_nat_target.
11390         (_initialize_mips64obsd_nat): Adjust to C++ification.  Use
11391         add_target.
11392         * nbsd-nat.c (nbsd_pid_to_exec_file): Refactor as method of
11393         nbsd_nat_target.
11394         * nbsd-nat.h: Include "inf-ptrace.h".
11395         (nbsd_nat_target): New class.
11396         * obsd-nat.c (obsd_pid_to_str, obsd_update_thread_list)
11397         (obsd_wait): Refactor as methods of obsd_nat_target.
11398         (obsd_add_target): Delete.
11399         * obsd-nat.h: Include "inf-ptrace.h".
11400         (obsd_nat_target): New class.
11401         * ppc-fbsd-nat.c (ppc_fbsd_nat_target): New class.
11402         (the_ppc_fbsd_nat_target): New.
11403         (ppcfbsd_fetch_inferior_registers)
11404         (ppcfbsd_store_inferior_registers): Refactor as methods of
11405         ppc_fbsd_nat_target.
11406         (_initialize_ppcfbsd_nat): Adjust to C++ification.  Use
11407         add_target.
11408         * ppc-nbsd-nat.c (ppc_nbsd_nat_target): New class.
11409         (the_ppc_nbsd_nat_target): New.
11410         (ppcnbsd_fetch_inferior_registers)
11411         (ppcnbsd_store_inferior_registers): Refactor as methods of
11412         ppc_nbsd_nat_target.
11413         (_initialize_ppcnbsd_nat): Adjust to C++ification.
11414         * ppc-obsd-nat.c (ppc_obsd_nat_target): New class.
11415         (the_ppc_obsd_nat_target): New.
11416         (ppcobsd_fetch_registers, ppcobsd_store_registers): Refactor as
11417         methods of ppc_obsd_nat_target.
11418         (_initialize_ppcobsd_nat): Adjust to C++ification.  Use
11419         add_target.
11420         * sh-nbsd-nat.c (sh_nbsd_nat_target): New class.
11421         (the_sh_nbsd_nat_target): New.
11422         (shnbsd_fetch_inferior_registers)
11423         (shnbsd_store_inferior_registers): Refactor as methods of
11424         sh_nbsd_nat_target.
11425         (_initialize_shnbsd_nat): Adjust to C++ification.
11426         * sparc-nat.c (sparc_xfer_wcookie): Make extern.
11427         (inf_ptrace_xfer_partial): Delete.
11428         (sparc_xfer_partial, sparc_target): Delete.
11429         * sparc-nat.h (sparc_fetch_inferior_registers)
11430         (sparc_store_inferior_registers, sparc_xfer_wcookie): Declare.
11431         (sparc_target): Delete function declaration.
11432         (sparc_target): New template class.
11433         * sparc-nbsd-nat.c (the_sparc_nbsd_nat_target): New.
11434         (_initialize_sparcnbsd_nat): Adjust to C++ification.
11435         * sparc64-fbsd-nat.c (the_sparc64_fbsd_nat_target): New.
11436         (_initialize_sparc64fbsd_nat): Adjust to C++ification.  Use
11437         add_target.
11438         * sparc64-nbsd-nat.c (the_sparc64_nbsd_nat_target): New.
11439         (_initialize_sparc64nbsd_nat): Adjust to C++ification.
11440         * sparc64-obsd-nat.c (the_sparc64_obsd_nat_target): New.
11441         (_initialize_sparc64obsd_nat): Adjust to C++ification.  Use
11442         add_target.
11443         * vax-bsd-nat.c (vax_bsd_nat_target): New class.
11444         (the_vax_bsd_nat_target): New.
11445         (vaxbsd_fetch_inferior_registers)
11446         (vaxbsd_store_inferior_registers): Refactor as vax_bsd_nat_target
11447         methods.
11448         (_initialize_vaxbsd_nat): Adjust to C++ification.
11449
11450         * bsd-kvm.c (bsd_kvm_target): New class.
11451         (bsd_kvm_ops): Now a bsd_kvm_target.
11452         (bsd_kvm_open, bsd_kvm_close, bsd_kvm_xfer_partial)
11453         (bsd_kvm_files_info, bsd_kvm_fetch_registers)
11454         (bsd_kvm_thread_alive, bsd_kvm_pid_to_str): Refactor as methods of
11455         bsd_kvm_target.
11456         (bsd_kvm_return_one): Delete.
11457         (bsd_kvm_add_target): Adjust to C++ification.
11458
11459         * nto-procfs.c (nto_procfs_target, nto_procfs_target_native)
11460         (nto_procfs_target_procfs): New classes.
11461         (procfs_open_1, procfs_thread_alive, procfs_update_thread_list)
11462         (procfs_files_info, procfs_pid_to_exec_file, procfs_attach)
11463         (procfs_post_attach, procfs_wait, procfs_fetch_registers)
11464         (procfs_xfer_partial, procfs_detach, procfs_insert_breakpoint)
11465         (procfs_remove_breakpoint, procfs_insert_hw_breakpoint)
11466         (procfs_remove_hw_breakpoint, procfs_resume)
11467         (procfs_mourn_inferior, procfs_create_inferior, procfs_interrupt)
11468         (procfs_kill_inferior, procfs_store_registers)
11469         (procfs_pass_signals, procfs_pid_to_str, procfs_can_run): Refactor
11470         as methods of nto_procfs_target.
11471         (nto_procfs_ops): Now an nto_procfs_target_procfs.
11472         (nto_native_ops): Delete.
11473         (procfs_open, procfs_native_open): Delete.
11474         (nto_native_ops): Now an nto_procfs_target_native.
11475         (init_procfs_targets): Adjust to C++ification.
11476         (procfs_can_use_hw_breakpoint, procfs_remove_hw_watchpoint)
11477         (procfs_insert_hw_watchpoint, procfs_stopped_by_watchpoint):
11478         Refactor as methods of nto_procfs_target.
11479
11480         * go32-nat.c (go32_nat_target): New class.
11481         (the_go32_nat_target): New.
11482         (go32_attach, go32_resume, go32_wait, go32_fetch_registers)
11483         (go32_store_registers, go32_xfer_partial, go32_files_info)
11484         (go32_kill_inferior, go32_create_inferior, go32_mourn_inferior)
11485         (go32_terminal_init, go32_terminal_info, go32_terminal_inferior)
11486         (go32_terminal_ours, go32_pass_ctrlc, go32_thread_alive)
11487         (go32_pid_to_str): Refactor as methods of go32_nat_target.
11488         (go32_target): Delete.
11489         (_initialize_go32_nat): Adjust to C++ification.
11490
11491         * gnu-nat.c (gnu_wait, gnu_resume, gnu_kill_inferior)
11492         (gnu_mourn_inferior, gnu_create_inferior, gnu_attach, gnu_detach)
11493         (gnu_stop, gnu_thread_alive, gnu_xfer_partial)
11494         (gnu_find_memory_regions, gnu_pid_to_str): Refactor as methods of
11495         gnu_nat_target.
11496         (gnu_target): Delete.
11497         * gnu-nat.h (gnu_target): Delete.
11498         (gnu_nat_target): New class.
11499         * i386-gnu-nat.c (gnu_base_target): New.
11500         (i386_gnu_nat_target): New class.
11501         (the_i386_gnu_nat_target): New.
11502         (_initialize_i386gnu_nat): Adjust to C++ification.
11503
11504 2018-05-02  Pedro Alves  <palves@redhat.com>
11505
11506         * bfd-target.c (target_bfd_xclose): Rename to ...
11507         (target_bfd_close): ... this.
11508         (target_bfd_reopen): Adjust.
11509         * target.c (target_close): Remove references to to_xclose.
11510         * target.h (target_ops::to_xclose): Delete.
11511         (target_ops::to_close): Update comments.
11512
11513 2018-05-02  Pedro Alves  <palves@redhat.com>
11514
11515         * alpha-linux-nat.c: Include "linux-nat-trad.h" instead of
11516         "linux-nat.h".
11517         * configure.nat (alpha-linux, linux-mips): Add linux-nat-trad.o.
11518         * inf-ptrace.c (inf_ptrace_register_u_offset)
11519         (inf_ptrace_fetch_register, inf_ptrace_fetch_registers)
11520         (inf_ptrace_store_register, inf_ptrace_store_registers)
11521         (inf_ptrace_trad_target): Move to ...
11522         * linux-nat-trad.c: ... this new file.
11523         * linux-nat-trad.h: New file.
11524         * linux-nat.c (linux_target_install_ops): Make extern.
11525         (linux_trad_target): Delete.
11526         * linux-nat.h (linux_trad_target): Delete declaration.
11527         (linux_target_install_ops): Declare.
11528         * mips-linux-nat.c: Include "linux-nat-trad.h" instead of
11529         "linux-nat.h".
11530
11531 2018-05-02  Pedro Alves  <palves@redhat.com>
11532
11533         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11534         procfs_target/add_target here.
11535         * procfs.c (procfs_target): Make static.
11536         (_initialize_procfs): Call add_target here.
11537         * procfs.h (struct target_ops): Remove forward declaration.
11538         (procfs_target): Remove declaration.
11539         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Delete.
11540
11541 2018-05-02  Pedro Alves  <palves@redhat.com>
11542
11543         * procfs.c (procfs_stopped_by_watchpoint)
11544         (procfs_insert_watchpoint, procfs_remove_watchpoint)
11545         (procfs_region_ok_for_hw_watchpoint, procfs_stopped_data_address):
11546         Forward declare.
11547         (procfs_use_watchpoints): Delete, move contents...
11548         (procfs_target): ... here.
11549         * procfs.h (procfs_use_watchpoints): Delete declaration.
11550         * i386-sol2-nat.c (_initialize_amd64_sol2_nat): Don't call
11551         procfs_use_watchpoints.
11552         * sparc-sol2-nat.c (_initialize_sparc_sol2_nat): Don't call
11553         procfs_use_watchpoints.
11554
11555 2018-05-02  Tom Tromey  <tom@tromey.com>
11556
11557         PR python/20084:
11558         * python/python.c (gdbpy_parameter_value): Handle var_zuinteger
11559         and var_zuinteger_unlimited.
11560         * python/py-param.c (struct parm_constant): Add PARAM_ZUINTEGER
11561         and PARAM_ZUINTEGER_UNLIMITED.
11562         (set_parameter_value): Handle var_zuinteger and
11563         var_zuinteger_unlimited.
11564         (add_setshow_generic): Likewise.
11565         (parmpy_init): Likewise.
11566
11567 2018-04-28  Dan Robertson  <danlrobertson89@gmail.com>
11568
11569         PR rust/23124
11570         * gdb/rust-exp.y (convert_params_to_types): Ensure that the params
11571         pointer is not null before dereferencing it.
11572
11573 2018-04-30  Tom Tromey  <tom@tromey.com>
11574
11575         * darwin-nat-info.c (darwin_debug_regions_recurse): Remove use of
11576         is_mi_like_p.
11577
11578 2018-04-30  Tom Tromey  <tom@tromey.com>
11579
11580         * breakpoint.c (mention): Remove use of is_mi_like_p.
11581         (print_mention_ranged_breakpoint): Likewise.
11582         * break-catch-throw.c (print_it_exception_catchpoint): Remove use
11583         of is_mi_like_p.
11584
11585 2018-04-30  Tom Tromey  <tom@tromey.com>
11586
11587         * tracepoint.c (tvariables_info_1): Remove use of is_mi_like_p.
11588
11589 2018-04-30  Tom Tromey  <tom@tromey.com>
11590
11591         * spu-tdep.c (info_spu_mailbox_list, info_spu_dma_cmdlist)
11592         (info_spu_event_command): Remove some uses of is_mi_like_p.
11593
11594 2018-04-30  Tom Tromey  <tom@tromey.com>
11595
11596         * python/py-framefilter.c (py_print_single_arg)
11597         (enumerate_locals, py_print_args, py_print_frame): Remove some
11598         uses of is_mi_like_p.
11599
11600 2018-04-30  Tom Tromey  <tom@tromey.com>
11601
11602         * ui-out.c: Update.
11603         * cli-out.h (cli_ui_out::do_is_mi_like_p): Update.
11604         * ui-out.h (ui_out::is_mi_like_p): Now const.
11605         (ui_out::do_is_mi_like_p): Now const.
11606         * mi/mi-out.h (mi_ui_out::do_is_mi_like_p): Update.
11607
11608 2018-04-30  Tom Tromey  <tom@tromey.com>
11609
11610         * varobj.c (varobj_set_visualizer): Use new_reference.
11611         * python/python.c (gdbpy_decode_line): Use new_reference.
11612         * python/py-cmd.c (cmdpy_function, cmdpy_completer_helper): Use
11613         new_reference.
11614
11615 2018-04-30  Tom Tromey  <tom@tromey.com>
11616
11617         * varobj.c (install_new_value): Use new_reference.
11618         * value.h (value_incref): Return void.  Swap intro comment with
11619         value_decref.
11620         * value.c (set_value_parent): Use new_reference.
11621         (value_incref): Return void.  Update intro comment.
11622         (release_value): Use new_reference.
11623         * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use new_reference.
11624
11625 2018-04-30  Tom Tromey  <tom@tromey.com>
11626
11627         * symfile-mem.c (symbol_file_add_from_memory): Use new_reference.
11628         * gdb_bfd.h (new_bfd_ref): Remove.
11629         (gdb_bfd_open): Update comment.
11630         * gdb_bfd.c (gdb_bfd_open, gdb_bfd_fopen, gdb_bfd_openr)
11631         (gdb_bfd_openw, gdb_bfd_openr_iovec, gdb_bfd_record_inclusion)
11632         (gdb_bfd_fdopenr): Use new_reference.
11633         * exec.c (exec_file_attach): Use new_reference.
11634
11635 2018-04-30  Tom Tromey  <tom@tromey.com>
11636
11637         * common/gdb_ref_ptr.h (ref_ptr::new_reference): New static
11638         method.
11639
11640 2018-04-30  Tom Tromey  <tom@tromey.com>
11641
11642         * jit.c (jit_read_code_entry): Use type_align.
11643         * i386-tdep.c (i386_gdbarch_init): Don't call
11644         set_gdbarch_long_long_align_bit.
11645         * gdbarch.sh: Remove long_long_align_bit.
11646         * gdbarch.c, gdbarch.h: Rebuild.
11647         * arc-tdep.c (arc_type_align): New function.
11648         (arc_gdbarch_init): Use arc_type_align.  Don't call
11649         set_gdbarch_long_long_align_bit.
11650
11651 2018-04-30  Tom Tromey  <tom@tromey.com>
11652
11653         * rust-lang.c (rust_type_alignment): Remove.
11654         (rust_composite_type): Use type_align.
11655
11656 2018-04-30  Tom Tromey  <tom@tromey.com>
11657
11658         * NEWS: Mention Type.align.
11659         * python/py-type.c (typy_get_alignof): New function.
11660         (type_object_getset): Add "alignof".
11661
11662 2018-04-30  Tom Tromey  <tom@tromey.com>
11663
11664         PR exp/17095:
11665         * NEWS: Update.
11666         * std-operator.def (UNOP_ALIGNOF): New operator.
11667         * expprint.c (dump_subexp_body_standard) <case UNOP_ALIGNOF>:
11668         New.
11669         * eval.c (evaluate_subexp_standard) <case UNOP_ALIGNOF>: New.
11670         * c-lang.c (c_op_print_tab): Add alignof.
11671         * c-exp.y (ALIGNOF): New token.
11672         (exp): Add "ALIGNOF" production.
11673         (ident_tokens): Add _Alignof and alignof.
11674
11675 2018-04-30  Tom Tromey  <tom@tromey.com>
11676
11677         * i386-tdep.c (i386_type_align): New function.
11678         (i386_gdbarch_init): Update.
11679         * gdbarch.sh (type_align): New method.
11680         * gdbarch.c, gdbarch.h: Rebuild.
11681         * arch-utils.h (default_type_align): Declare.
11682         * arch-utils.c (default_type_align): New function.
11683         * gdbtypes.h (TYPE_ALIGN_BITS): New define.
11684         (struct type) <align_log2>: New field.
11685         <instance_flags>: Now a bitfield.
11686         (TYPE_RAW_ALIGN): New macro.
11687         (type_align, type_raw_align, set_type_align): Declare.
11688         * gdbtypes.c (type_align, type_raw_align, set_type_align): New
11689         functions.
11690         * dwarf2read.c (quirk_rust_enum): Set type alignment.
11691         (get_alignment, maybe_set_alignment): New functions.
11692         (read_structure_type, read_enumeration_type, read_array_type)
11693         (read_set_type, read_tag_pointer_type, read_tag_reference_type)
11694         (read_subrange_type, read_base_type): Set type alignment.
11695
11696 2018-04-30  Simon Marchi  <simon.marchi@ericsson.com>
11697
11698         * dwarf2read.c (read_index_from_section): Use bool.
11699
11700 2018-04-29  Fabian Groffen  <grobian@gentoo.org>
11701
11702         PR gdb/22950
11703         * proc-events.c (init_syscall_table): Guard usage os SYS_uuidsys
11704         with #ifdef.
11705
11706 2018-04-29  John Reiser  <jreiser@BitWagon.com>
11707
11708         PR build/22873
11709         * gdb/Makefile.in: (.c:.l, .c:.y): Write the target only in the
11710         last step, and do it atomically.
11711
11712 2018-04-27  Alexandre Oliva  <aoliva@redhat.com>
11713
11714         * compile/compile-c-types.c (convert_int, convert_float):
11715         Update for C FE v1.
11716
11717 2018-04-27  Tom Tromey  <tom@tromey.com>
11718
11719         PR rust/22545:
11720         * rust-lang.c (rust_inclusive_range_type_p): New function.
11721         (rust_range): Handle inclusive ranges.
11722         (rust_compute_range): Likewise.
11723         * rust-exp.y (struct rust_op) <inclusive>: New field.
11724         (DOTDOTEQ): New constant.
11725         (range_expr): Add "..=" productions.
11726         (operator_tokens): Add "..=" token.
11727         (ast_range): Add "inclusive" parameter.
11728         (convert_ast_to_expression) <case OP_RANGE>: Handle inclusive
11729         ranges.
11730         * parse.c (operator_length_standard) <case OP_RANGE>: Handle new
11731         bounds values.
11732         * expression.h (enum range_type) <NONE_BOUND_DEFAULT_EXCLUSIVE,
11733         LOW_BOUND_DEFAULT_EXCLUSIVE>: New constants.
11734         Update comments.
11735         * expprint.c (print_subexp_standard): Handle new bounds values.
11736         (dump_subexp_body_standard): Likewise.
11737
11738 2018-04-27  Tom Tromey  <tom@tromey.com>
11739
11740         * configure: Rebuild.
11741         * warning.m4 (AM_GDB_WARNINGS): Add -Wsuggest-override.
11742         * dwarf2loc.c (class dwarf_evaluate_loc_desc): Use "override", not
11743         "OVERRIDE".
11744         (class symbol_needs_eval_context): Likewise.
11745         * dwarf2read.c (mock_mapped_index::symbol_name_count)
11746         (mock_mapped_index::symbol_name_at): Use "override".  Remove
11747         "virtual".
11748         * dwarf2-frame.c (dwarf_expr_executor::get_addr_index): Use
11749         "override".
11750         (class dwarf_expr_executor): Use "override", not "OVERRIDE".
11751         * aarch64-tdep.c (instruction_reader::read): Use "override".
11752         (instruction_reader_test::read): Likewise.
11753         * arm-tdep.c (instruction_reader::read): Use "override".
11754         (instruction_reader_thumb::read): Likewise.
11755
11756 2018-04-26  Andrzej Kaczmarek  <andrzej.kaczmarek@codecoup.pl>
11757
11758         PR remote/9665
11759         * remote.c (send_g_packet): Use putpkt/getpkt/packet_check_result
11760         instead of remote_send.
11761         (remote_send): Remove.
11762
11763 2018-04-26  Pedro Alves  <palves@redhat.com>
11764
11765         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Use
11766         find_function_start_sal instead of find_pc_line.
11767
11768 2018-04-26  Pedro Alves  <palves@redhat.com>
11769
11770         * breakpoint.c (set_breakpoint_location_function): Handle
11771         mst_data_gnu_ifunc.
11772         * c-exp.y (variable production): Handle mst_data_gnu_ifunc.
11773         * elfread.c (elf_symtab_read): Give data symbols with
11774         BSF_GNU_INDIRECT_FUNCTION set mst_data_gnu_ifunc type.
11775         (elf_rel_plt_read): Update comment.
11776         * linespec.c (convert_linespec_to_sals): Handle
11777         mst_data_gnu_ifunc.
11778         (minsym_found): Handle mst_data_gnu_ifunc.
11779         * minsyms.c (msymbol_is_function, minimal_symbol_reader::record)
11780         (find_solib_trampoline_target): Handle mst_data_gnu_ifunc.
11781         * parse.c (find_minsym_type_and_address): Handle
11782         mst_data_gnu_ifunc.
11783         * symmisc.c (dump_msymbols): Handle mst_data_gnu_ifunc.
11784         * symtab.c (find_gnu_ifunc): Handle mst_data_gnu_ifunc.
11785         * symtab.h (minimal_symbol_type) <mst_text_gnu_ifunc>: Update
11786         comment.
11787         <mst_data_gnu_ifunc>: New enumerator.
11788
11789 2018-04-26  Pedro Alves  <palves@redhat.com>
11790
11791         * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Rename to ...
11792         (lookup_minimal_symbol_by_pc_section): ... this.  Replace
11793         'want_trampoline' parameter by a lookup_msym_prefer parameter.
11794         Handle it.
11795         (lookup_minimal_symbol_by_pc_section): Delete old implementation.
11796         (lookup_minimal_symbol_by_pc): Adjust.
11797         (in_gnu_ifunc_stub): Prefer GNU ifunc symbols.
11798         (lookup_solib_trampoline_symbol_by_pc): Adjust.
11799         * minsyms.h (lookup_msym_prefer): New enum.
11800         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11801         parameter by a lookup_msym_prefer parameter.
11802
11803 2018-04-26  Pedro Alves  <palves@redhat.com>
11804
11805         * elfread.c (elf_gnu_ifunc_record_cache): Check if the symbol name
11806         ends in "@plt" instead of looking at the symbol's section.
11807
11808 2018-04-26  Pedro Alves  <palves@redhat.com>
11809
11810         * blockframe.c (cache_pc_function_is_gnu_ifunc): Delete.  Remove
11811         all references.
11812         (find_pc_partial_function_gnu_ifunc): Rename to ...
11813         (find_pc_partial_function): ... this, and remove references to
11814         'is_gnu_ifunc_p'.
11815         (find_pc_partial_function): Delete old implementation.
11816         * symtab.h (find_pc_partial_function_gnu_ifunc): Delete.
11817
11818 2018-04-26  Pedro Alves  <palves@redhat.com>
11819
11820         * linespec.c (struct bound_minimal_symbol_search_key): New.
11821         (convert_linespec_to_sals): Sort minimal symbols earlier.  Don't
11822         skip first line if we found a GNU ifunc minimal symbol by name.
11823         (compare_msymbols): Change parameters to work with a destructured
11824         lhs minsym.
11825         (compare_msymbols_for_qsort, compare_msymbols_for_bsearch): New
11826         functions.
11827
11828 2018-04-26  Pedro Alves  <palves@redhat.com>
11829
11830         * breakpoint.c (set_breakpoint_location_function): Don't resolve
11831         ifunc targets here.  Instead, if we have an ifunc minsym, use its
11832         address/name.
11833         (add_location_to_breakpoint): Store the minsym and the objfile in
11834         the breakpoint location.
11835         * breakpoint.h (bp_location) <msymbol, objfile>: New fields.
11836         * linespec.c (minsym_found): Resolve GNU ifunc targets here.
11837         Record the minsym in the sal.
11838         * symtab.h (symtab_and_line) <msymbol>: New field.
11839
11840 2018-04-26  Pedro Alves  <palves@redhat.com>
11841
11842         * elfread.c (elf_gnu_ifunc_resolve_by_got): Don't write to *ADDR_P
11843         unless we actually resolved the ifunc.
11844
11845 2018-04-26  Pedro Alves  <palves@redhat.com>
11846
11847         * c-exp.y (variable production): Prefer ifunc minsyms over
11848         regular function symbols.
11849         * symtab.c (find_gnu_ifunc): New function.
11850         * minsyms.h (lookup_msym_prefer): New enum.
11851         (lookup_minimal_symbol_by_pc_section): Replace 'want_trampoline'
11852         parameter by a lookup_msym_prefer parameter.
11853         * symtab.h (find_gnu_ifunc): New declaration.
11854
11855 2018-04-26  Pedro Alves  <palves@redhat.com>
11856
11857         * blockframe.c (find_gnu_ifunc_target_type): New function.
11858         (find_function_type): New.
11859         * eval.c (evaluate_var_msym_value): For GNU ifunc types, always
11860         return a value with a memory address.
11861         (eval_call): For calls to GNU ifunc functions, try to find the
11862         type of the target function from the type that the resolver
11863         returns.
11864         * gdbtypes.c (objfile_type): Don't install a return type for ifunc
11865         symbols.
11866         * infcall.c (find_function_return_type): Delete.
11867         (find_function_addr): Add 'function_type' parameter.  For calls to
11868         GNU ifunc functions, try to find the type of the target function
11869         from the type that the resolver returns, and return it via
11870         FUNCTION_TYPE.
11871         (call_function_by_hand_dummy): Adjust to use the function type
11872         returned by find_function_addr.
11873         (find_function_addr): Add 'function_type' parameter and move
11874         description here.
11875         * symtab.h (find_function_type, find_gnu_ifunc_target_type): New
11876         declarations.
11877
11878 2018-04-26  Pedro Alves  <palves@redhat.com>
11879
11880         * c-exp.y (variable production): Skip finding an alias for ifunc
11881         symbols.
11882
11883 2018-04-26  Pedro Alves  <palves@redhat.com>
11884
11885         * elfread.c (elf_rel_plt_read): Look for relocations for .got.plt too.
11886
11887 2018-04-25  Pedro Alves  <palves@redhat.com>
11888
11889         * infcmd.c (kill_command): Print the pid as string, not the whole
11890         thread's ptid.  Add comment.  s/has been killed/killed/ in output
11891         message.
11892         * remote.c (remote_detach_1): Print the pid as string, not the
11893         whole thread's ptid.
11894
11895 2018-04-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
11896             Sergio Durigan Junior  <sergiodj@redhat.com>
11897             Pedro Alves  <palves@redhat.com>
11898
11899         * infcmd.c (kill_command): Print message when inferior has
11900         been killed.
11901         * inferior.c (print_inferior_events): Remove 'static'.  Set as
11902         '1'.
11903         (add_inferior): Improve message printed when
11904         'print_inferior_events' is on.
11905         (exit_inferior): Remove message printed when
11906         'print_inferior_events' is on.
11907         (detach_inferior): Improve message printed when
11908         'print_inferior_events' is on.
11909         (initialize_inferiors): Use 'add_inferior_silent' to set
11910         'current_inferior_'.
11911         * inferior.h (print_inferior_events): Declare here as
11912         'extern'.
11913         * infrun.c (follow_fork_inferior): Print '[Attaching...]' or
11914         '[Detaching...]' messages when 'print_inferior_events' is on.
11915         Use 'add_thread_silent' instead of 'add_thread'.  Add '[' and ']'
11916         as prefix/suffix for messages.  Remove periods.  Fix erroneous
11917         'Detaching after fork from child...', replace it by '... from
11918         parent...'.
11919         (handle_vfork_child_exec_or_exit): Add '[' and ']' as
11920         prefix/suffix when printing 'Detaching...' messages.  Print
11921         them when 'print_inferior_events' is on.
11922         * remote.c (remote_detach_1): Print message when detaching
11923         from inferior and '!is_fork_parent'.
11924
11925 2018-04-24  Tom Tromey  <tom@tromey.com>
11926
11927         * cli-out.h: Reindent.
11928
11929 2018-04-24  Tom Tromey  <tom@tromey.com>
11930
11931         * cli-out.c (cli_ui_out::out_field_fmt): Remove.
11932         (cli_ui_out::do_field_string): Use fputs_filtered.
11933         * cli-out.h (class cli_ui_out) <out_field_fmt>: Remove.
11934
11935 2018-04-23  Tom Tromey  <tom@tromey.com>
11936
11937         * guile/scm-frame.c (gdbscm_frame_read_var): Use
11938         gdb::unique_xmalloc_ptr.
11939
11940 2018-04-23  Tom Tromey  <tom@tromey.com>
11941
11942         * configure: Rebuild.
11943
11944 2018-04-22  Rajendra SY  <rajendra.sy@gmail.com>
11945
11946         PR gdb/23095
11947         * gdb/testsuite/gdb.base/break-probes.exp: Pass shlib_load to
11948         prepare_for_testing.  Set normal_bp to r_debug_state if target
11949         is bsd.
11950
11951 2018-04-21  Pedro Alves  <palves@redhat.com>
11952             Rajendra SY  <rajendra.sy@gmail.com>
11953
11954         * inf-ptrace.c (inf_ptrace_attach): Mark the thread as executing.
11955         * remote.c (extended_remote_attach): In all-stop mode, mark the
11956         thread as executing.
11957
11958 2018-04-19  Philippe Waroquiers  <philippe.waroquiers@skynet.be>
11959
11960         * thread.c (thread_apply_all_command): Fix comment.
11961         (thread_command): Fix comment.
11962
11963 2018-04-10  Alan Hayward  <alan.hayward@arm.com>
11964
11965         * common/tdesc.h (tdesc_create_feature): Remove xml filename
11966         parameter.
11967         * features/aarch64-core.c (create_feature_aarch64_core):
11968         Regenerate.
11969         * features/aarch64-fpu.c (create_feature_aarch64_fpu):
11970         Likewise.
11971         * features/i386/32bit-avx.c (create_feature_i386_32bit_avx):
11972         Likewise.
11973         * features/i386/32bit-avx512.c
11974         (create_feature_i386_32bit_avx512): Likewise.
11975         * features/i386/32bit-core.c (create_feature_i386_32bit_core):
11976         Likewise.
11977         * features/i386/32bit-linux.c (create_feature_i386_32bit_linux):
11978         Likewise.
11979         * features/i386/32bit-mpx.c (create_feature_i386_32bit_mpx):
11980         Likewise.
11981         * features/i386/32bit-pkeys.c (create_feature_i386_32bit_pkeys):
11982         Likewise.
11983         * features/i386/32bit-sse.c (create_feature_i386_32bit_sse):
11984         Likewise.
11985         * features/i386/64bit-avx.c (create_feature_i386_64bit_avx):
11986         Likewise.
11987         * features/i386/64bit-avx512.c
11988         (create_feature_i386_64bit_avx512): Likewise.
11989         * features/i386/64bit-core.c (create_feature_i386_64bit_core):
11990         Likewise.
11991         * features/i386/64bit-linux.c (create_feature_i386_64bit_linux):
11992         Likewise.
11993         * features/i386/64bit-mpx.c (create_feature_i386_64bit_mpx):
11994         Likewise.
11995         * features/i386/64bit-pkeys.c (create_feature_i386_64bit_pkeys):
11996         Likewise.
11997         * features/i386/64bit-segments.c
11998         (create_feature_i386_64bit_segments): Likewise.
11999         * features/i386/64bit-sse.c (create_feature_i386_64bit_sse):
12000         Likewise.
12001         * features/i386/x32-core.c
12002         (create_feature_i386_x32_core): Likewise.
12003         * features/tic6x-c6xp.c (create_feature_tic6x_c6xp): Likewise.
12004         * features/tic6x-core.c (create_feature_tic6x_core): Likewise.
12005         * features/tic6x-gp.c (create_feature_tic6x_gp): Likewise.
12006         * target-descriptions.c: In generated code, don't pass xml
12007         filename.
12008
12009 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12010
12011         * common/tdesc.c (print_xml_feature::visit_pre): Add xml parsing.
12012         (print_xml_feature::visit_post): Likewise.
12013         (print_xml_feature::visit): Likewise.
12014         * common/tdesc.h (tdesc_get_features_xml): Use const tdesc.
12015         (print_xml_feature): Add new class.
12016         * regformats/regdat.sh: Null xmltarget on feature targets.
12017         * target-descriptions.c (struct target_desc): Add xmltarget.
12018         (maintenance_check_tdesc_xml_convert): Add unittest function.
12019         (tdesc_get_features_xml): Add function to get xml.
12020         (maintenance_check_xml_descriptions): Test xml generation.
12021         * xml-tdesc.c (string_read_description_xml): Add function.
12022         * xml-tdesc.h (string_read_description_xml): Add declaration.
12023
12024 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12025
12026         * features/Makefile: Add feature marker to targets with new style
12027         target descriptions.
12028         * regformats/aarch64.dat: Regenerate.
12029         * regformats/i386/amd64-avx-avx512-linux.dat: Likewise.
12030         * regformats/i386/amd64-avx-linux.dat: Likewise.
12031         * regformats/i386/amd64-avx-mpx-avx512-pku-linux.dat: Likewise.
12032         * regformats/i386/amd64-avx-mpx-linux.dat: Likewise.
12033         * regformats/i386/amd64-linux.dat: Likewise.
12034         * regformats/i386/amd64-mpx-linux.dat: Likewise.
12035         * regformats/i386/amd64.dat: Likewise.
12036         * regformats/i386/i386-avx-avx512-linux.dat: Likewise.
12037         * regformats/i386/i386-avx-linux.dat: Likewise.
12038         * regformats/i386/i386-avx-mpx-avx512-pku-linux.dat: Likewise.
12039         * regformats/i386/i386-avx-mpx-linux.dat: Likewise.
12040         * regformats/i386/i386-linux.dat: Likewise.
12041         * regformats/i386/i386-mmx-linux.dat: Likewise.
12042         * regformats/i386/i386-mpx-linux.dat: Likewise.
12043         * regformats/i386/i386.dat: Likewise.
12044         * regformats/i386/x32-avx-avx512-linux.dat: Likewise.
12045         * regformats/i386/x32-avx-linux.dat: Likewise.
12046         * regformats/i386/x32-linux.dat: Likewise.
12047         * regformats/tic6x-c62x-linux.dat: Likewise.
12048         * regformats/tic6x-c64x-linux.dat: Likewise.
12049         * regformats/tic6x-c64xp-linux.dat: Likewise.
12050         * regformats/regdat.sh: Parse feature marker.
12051
12052 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12053
12054         * common/tdesc.h (tdesc_architecture_name): Add new declaration.
12055         (tdesc_osabi_name): Likewise.
12056         * target-descriptions.c (tdesc_architecture_name): Add new
12057         function.
12058         (tdesc_osabi_name): Likewise.
12059
12060 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12061
12062         * common/tdesc.c (tdesc_predefined_type): Move to here.
12063         (tdesc_named_type): Likewise.
12064         (tdesc_create_vector): Likewise.
12065         (tdesc_create_struct): Likewise.
12066         (tdesc_set_struct_size): Likewise.
12067         (tdesc_create_union): Likewise.
12068         (tdesc_create_flags): Likewise.
12069         (tdesc_create_enum): Likewise.
12070         (tdesc_add_field): Likewise.
12071         (tdesc_add_typed_bitfield): Likewise.
12072         (tdesc_add_bitfield): Likewise.
12073         (tdesc_add_flag): Likewise.
12074         (tdesc_add_enum_value): Likewise.
12075         * common/tdesc.h (struct tdesc_type_builtin): Likewise.
12076         (struct tdesc_type_vector): Likewise.
12077         (struct tdesc_type_field): Likewise.
12078         (struct tdesc_type_with_fields): Likewise.
12079         (tdesc_create_enum): Add declaration.
12080         (tdesc_add_typed_bitfield): Likewise.
12081         (tdesc_add_enum_value): Likewise.
12082         * target-descriptions.c (tdesc_type_field): Move from here.
12083         (tdesc_type_builtin): Likewise.
12084         (tdesc_type_vector): Likewise.
12085         (tdesc_type_with_fields): Likewise.
12086         (tdesc_predefined_types): Likewise.
12087         (tdesc_named_type): Likewise.
12088         (tdesc_create_vector): Likewise.
12089         (tdesc_create_struct): Likewise.
12090         (tdesc_set_struct_size): Likewise.
12091         (tdesc_create_union): Likewise.
12092         (tdesc_create_flags): Likewise.
12093         (tdesc_create_enum): Likewise.
12094         (tdesc_add_field): Likewise.
12095         (tdesc_add_typed_bitfield): Likewise.
12096         (tdesc_add_bitfield): Likewise.
12097         (tdesc_add_flag): Likewise.
12098         (tdesc_add_enum_value): Likewise.
12099         * gdb/target-descriptions.h (tdesc_create_enum): Likewise.
12100         (tdesc_add_typed_bitfield): Likewise.
12101         (tdesc_add_enum_value): Likewise.
12102
12103 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12104
12105         * common/tdesc.c (tdesc_feature::accept): Move to here.
12106         (tdesc_feature::operator==): Likewise.
12107         (tdesc_create_reg): Likewise.
12108         * common/tdesc.h (tdesc_type_kind): Likewise.
12109         (struct tdesc_type): Likewise.
12110         (struct tdesc_feature): Likewise.
12111         * regformats/regdat.sh: Create a feature.
12112         * target-descriptions.c (tdesc_type_kind): Move from here.
12113         (tdesc_type): Likewise.
12114         (tdesc_type_up): Likewise.
12115         (tdesc_feature): Likewise.
12116         (tdesc_create_reg): Likewise.
12117
12118 2018-04-18  Alan Hayward  <alan.hayward@arm.com>
12119
12120         * Makefile.in: Add arch/tdesc.c
12121         * common/tdesc.c: New file.
12122         * common/tdesc.h (tdesc_element_visitor): Move to here.
12123         (tdesc_element): Likewise.
12124         (tdesc_reg): Likewise.
12125         (tdesc_reg_up): Likewise.
12126         * regformats/regdef.h (reg): Add offset to constructors.
12127         * target-descriptions.c (tdesc_element_visitor): Move from here.
12128         (tdesc_element): Likewise.
12129         (tdesc_reg): Likewise.
12130         (tdesc_reg_up): Likewise.
12131
12132 2018-04-17  Tom Tromey  <tom@tromey.com>
12133
12134         * dwarf2read.c (quirk_rust_enum): Conditionally drop the
12135         discriminant field.
12136
12137 2018-04-17  Tom Tromey  <tom@tromey.com>
12138
12139         * dwarf2read.c (quirk_rust_enum): Handle unions correctly.
12140
12141 2018-04-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12142
12143         * symtab.c (print_symbol_info): Skip printing filename and line
12144         number when `last' is NULL.
12145         (symtab_symbol_info): Use empty string instead of NULL for first
12146         invocation of print_symbol_info.
12147         (rbreak_command): Pass NULL to `last' parameter of
12148         print_symbol_info.
12149
12150 2018-04-16  Simon Marchi  <simon.marchi@ericsson.com>
12151
12152         * linux-tdep.c (linux_spu_make_corefile_notes): Return note_data
12153         instead of nullptr.
12154
12155 2018-04-16  Pedro Alves  <palves@redhat.com>
12156
12157         * MAINTAINERS (sh): Remove.
12158         * Makefile.in (ALL_TARGET_OBS): Remove sh64-tdep.o.
12159         (HFILES_NO_SRCDIR): Remove sh64-tdep.h.
12160         (ALLDEPFILES): Remove sh64-tdep.c.
12161         * NEWS: Mentions that support for SH-5/SH64 is removed.
12162         * configure.tgt (sh*-*-linux*): Remove reference to sh64-tdep.o.
12163         (sh*-*-openbsd*): Ditto.
12164         (sh64-*-elf*): Remove.
12165         (sh*): Remove.
12166         * regcache.c (cooked_write_test): Remove bfd_mach_sh5 case.
12167         * sh-linux-tdep.c: Remove reference to bfd_mach_sh5.
12168         * sh-tdep.c: No longer include "sh64-tdep.h".
12169         (sh_gdbarch_init): Remove reference to bfd_mach_sh5.
12170         * sh64-tdep.c, sh64-tdep.h: Remove files.
12171
12172 2018-04-16  Pedro Alves  <palves@redhat.com>
12173
12174         * MAINTAINERS: Remove m88k.
12175         * Makefile.in (ALL_TARGET_OBS): Remove m88k-tdep.o.
12176         (HFILES_NO_SRCDIR): Remove m88k-tdep.h.
12177         (ALLDEPFILES): Remove m88k-bsd-nat.c and m88k-tdep.c.
12178         * NEWS: Mention that support for m88k was removed.
12179         * configure.host (m88*-*-*): Remove support.
12180         * configure.nat (m88k-*-*): Remove support.
12181         * configure.tgt (m88*-*-openbsd*): Remove.
12182         * m88k-bsd-nat.c, m88k-tdep.c, m88k-tdep.h: Delete.
12183
12184 2018-04-15  Simon Marchi  <simon.marchi@polymtl.ca>
12185
12186         * configure.tgt (x86_tobjs): New variable.
12187         (amd64_tobjs, i386_tobjs): Use it.
12188
12189 2018-04-13  Andreas Arnez  <arnez@linux.vnet.ibm.com>
12190
12191         * symtab.c (print_symbol_info): Precede the symbol definition by
12192         the line number when available.
12193         * NEWS: Advertise this enhancement.
12194
12195 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12196
12197         * NEWS (New options): announce set/show record btrace cpu.
12198         * btrace.c: Include record-btrace.h.
12199         (btrace_compute_ftrace_pt): Skip enabling errata workarounds if
12200         the vendor is unknown.
12201         (btrace_compute_ftrace_1): Add cpu parameter.  Update callers.
12202         Maybe overwrite the btrace configuration's cpu.
12203         (btrace_compute_ftrace): Add cpu parameter.  Update callers.
12204         (btrace_fetch): Add cpu parameter.  Update callers.
12205         (btrace_maint_update_pt_packets): Call record_btrace_get_cpu.
12206         Maybe overwrite the btrace configuration's cpu.  Skip enabling
12207         errata workarounds if the vendor is unknown.
12208         * python/py-record-btrace.c: Include record-btrace.h.
12209         (recpy_bt_begin, recpy_bt_end, recpy_bt_instruction_history)
12210         (recpy_bt_function_call_history): Call record_btrace_get_cpu.
12211         * record-btrace.c (record_btrace_cpu_state_kind): New.
12212         (record_btrace_cpu): New.
12213         (set_record_btrace_cpu_cmdlist): New.
12214         (record_btrace_get_cpu): New.
12215         (require_btrace_thread, record_btrace_info)
12216         (record_btrace_resume_thread): Call record_btrace_get_cpu.
12217         (cmd_set_record_btrace_cpu_none): New.
12218         (cmd_set_record_btrace_cpu_auto): New.
12219         (cmd_set_record_btrace_cpu): New.
12220         (cmd_show_record_btrace_cpu): New.
12221         (_initialize_record_btrace): Initialize set/show record btrace cpu
12222         commands.
12223         * record-btrace.h (record_btrace_get_cpu): New.
12224
12225 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12226
12227         * record.c (set_record_command): Fix typo in message.
12228
12229 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12230
12231         * record-btrace.c (cmd_set_record_btrace): Print sub-commands.
12232
12233 2018-04-13  Markus Metzger  <markus.t.metzger@intel.com>
12234
12235         * infrun.c (process_event_stop_test): Call
12236         gdbarch_in_indirect_branch_thunk.
12237         * gdbarch.sh (in_indirect_branch_thunk): New.
12238         * gdbarch.c: Regenerated.
12239         * gdbarch.h: Regenerated.
12240         * x86-tdep.h: New.
12241         * x86-tdep.c: New.
12242         * Makefile.in (ALL_TARGET_OBS): Add x86-tdep.o.
12243         (HFILES_NO_SRCDIR): Add x86-tdep.h.
12244         (ALLDEPFILES): Add x86-tdep.c.
12245         * arch-utils.h (default_in_indirect_branch_thunk): New.
12246         * arch-utils.c (default_in_indirect_branch_thunk): New.
12247         * i386-tdep: Include x86-tdep.h.
12248         (i386_in_indirect_branch_thunk): New.
12249         (i386_elf_init_abi): Set in_indirect_branch_thunk gdbarch
12250         function.
12251         * amd64-tdep: Include x86-tdep.h.
12252         (amd64_in_indirect_branch_thunk): New.
12253         (amd64_init_abi): Set in_indirect_branch_thunk gdbarch function.
12254
12255 2018-04-12  Jan Kratochvil  <jan.kratochvil@redhat.com>
12256
12257         PR gdb/23053
12258         * dwarf-index-write.c (data_buf::grow) (write_one_signatured_type)
12259         (recursively_write_psymbols) (debug_names::recursively_write_psymbols)
12260         (debug_names::write_one_signatured_type): Fix -D_GLIBCXX_DEBUG
12261         regression.
12262
12263 2018-04-12  Tom Tromey  <tom@tromey.com>
12264
12265         * rust-lang.c (rust_print_struct_def): Remove univariant code.
12266         (rust_evaluate_subexp): Likewise.
12267
12268 2018-04-12  Pedro Alves  <palves@redhat.com>
12269
12270         * procfs.c (procfs_detach): Make forward declaration's prototype
12271         match definition's protototype.
12272         (proc_get_LDT_entry): Remove stale do_cleanups call.
12273
12274 2018-04-12  Pedro Alves  <palves@redhat.com>
12275
12276         * target.h (target_ops::to_has_exited): Delete.
12277         (target_has_exited): Delete.
12278         * target-delegates.c: Regenerate.
12279
12280 2018-04-11  Pedro Alves  <palves@redhat.com>
12281
12282         * target.c (fileio_fh_t::t): Add comment.
12283         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12284         (target_fileio_close): Handle a NULL target.
12285         (invalidate_fileio_fh): New.
12286         (target_close): Call it.
12287         * remote.c (remote_hostio_send_command): No longer check whether
12288         remote_desc is open.
12289
12290 2018-04-11  Pedro Alves  <palves@redhat.com>
12291
12292         * target.c (fileio_fh_t): Make it a named struct instead of a
12293         typedef.
12294         (fileio_fh_t::is_closed): New method.
12295         (DEF_VEC_O (fileio_fh_t)): Remove.
12296         (fileio_fhandles): Now a std::vector.
12297         (is_closed_fileio_fh): Delete.
12298         (acquire_fileio_fd): Adjust.  Rename parameters.
12299         (release_fileio_fd): Adjust.
12300         (fileio_fd_to_fh): Reimplement as a function instead of a macro.
12301         (target_fileio_pwrite, target_fileio_pread, target_fileio_fstat)
12302         (target_fileio_close): Adjust.
12303
12304 2018-04-10  Simon Marchi  <simon.marchi@ericsson.com>
12305
12306         * auto-load.c (auto_load_safe_path_vec_update): Iterate by
12307         index.
12308
12309 2018-04-10  Pedro Alves  <palves@redhat.com>
12310
12311         * gdbthread.h (finish_thread_state_cleanup): Delete declaration.
12312         (scoped_finish_thread_state): New class.
12313         * infcmd.c (run_command_1): Use it instead of finish_thread_state
12314         cleanup.
12315         * infrun.c (proceed, prepare_for_detach, wait_for_inferior)
12316         (fetch_inferior_event, normal_stop): Likewise.
12317         * thread.c (finish_thread_state_cleanup): Delete.
12318
12319 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12320             Pedro Alves  <palves@redhat.com>
12321
12322         * value.c: Include "selftest.h" and "common/array-view.h".
12323         (struct range) <operator ==>: New.
12324         (test_ranges_contain): New.
12325         (check_ranges_vector): New.
12326         (test_insert_into_bit_range_vector): New.
12327         (_initialize_values): Register selftests.
12328         * common/array-view.h (operator==, operator!=): New.
12329
12330 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12331
12332         * common/gdb_vecs.h (unordered_remove): Add overload that takes
12333         an iterator.
12334         * inline-frame.c: Include <algorithm>.
12335         (struct inline_state): Add constructor.
12336         (inline_state_s): Remove.
12337         (DEF_VEC_O(inline_state_s)): Remove.
12338         (inline_states): Change type to std::vector.
12339         (find_inline_frame_state): Adjust to std::vector.
12340         (allocate_inline_frame_state): Remove.
12341         (clear_inline_frame_state): Adjust to std::vector.
12342         (skip_inline_frames): Adjust to std::vector.
12343
12344 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12345
12346         * tracepoint.h (struct trace_state_variable): Add constructor.
12347         <name>: Change type to std::string.
12348         * tracepoint.c (tsv_s): Remove.
12349         (DEF_VEC_O(tsv_s)): Remove.
12350         (tvariables): Change to std::vector.
12351         (create_trace_state_variable): Adjust to std::vector.
12352         (find_trace_state_variable): Likewise.
12353         (find_trace_state_variable_by_number): Likewise.
12354         (delete_trace_state_variable): Likewise.
12355         (trace_variable_command): Adjust to std::string.
12356         (delete_trace_variable_command): Likewise.
12357         (tvariables_info_1): Adjust to std::vector.
12358         (save_trace_state_variables): Likewise.
12359         (start_tracing): Likewise.
12360         (merge_uploaded_trace_state_variables): Adjust to std::vector
12361         and std::string.
12362         * target.h (struct target_ops)
12363         <to_download_trace_state_variable>: Pass reference to
12364         trace_state_variable.
12365         * target-debug.h (target_debug_print_const_trace_state_variable_r): New.
12366         * target-delegates.c: Re-generate.
12367         * mi/mi-interp.c (mi_tsv_created): Adjust to std::string.
12368         (mi_tsv_deleted): Likewise.
12369         * mi/mi-main.c (mi_cmd_trace_frame_collected): Likewise.
12370         * remote.c (remote_download_trace_state_variable): Change
12371         pointer to reference and adjust.
12372         * make-target-delegates (parse_argtypes): Handle references.
12373         (write_function_header): Likewise.
12374         (munge_type): Likewise.
12375
12376 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12377
12378         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
12379         string_view-selftests.c.
12380         * unittests/basic_string_view/capacity/1.cc: Adapt to GDB
12381         testsuite.
12382         * unittests/basic_string_view/cons/char/1.cc: Likewise.
12383         * unittests/basic_string_view/cons/char/2.cc: Likewise.
12384         * unittests/basic_string_view/cons/char/3.cc: Likewise.
12385         * unittests/basic_string_view/element_access/char/1.cc:
12386         Likewise.
12387         * unittests/basic_string_view/element_access/char/empty.cc:
12388         Likewise.
12389         * unittests/basic_string_view/element_access/char/front_back.cc:
12390         Likewise.
12391         * unittests/basic_string_view/inserters/char/2.cc: Likewise.
12392         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc:
12393         Likewise.
12394         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc:
12395         Likewise.
12396         * unittests/basic_string_view/modifiers/swap/char/1.cc:
12397         Likewise.
12398         * unittests/basic_string_view/operations/compare/char/1.cc:
12399         Likewise.
12400         * unittests/basic_string_view/operations/compare/char/13650.cc:
12401         Likewise.
12402         * unittests/basic_string_view/operations/copy/char/1.cc:
12403         Likewise.
12404         * unittests/basic_string_view/operations/data/char/1.cc:
12405         Likewise.
12406         * unittests/basic_string_view/operations/find/char/1.cc:
12407         Likewise.
12408         * unittests/basic_string_view/operations/find/char/2.cc:
12409         Likewise.
12410         * unittests/basic_string_view/operations/find/char/3.cc:
12411         Likewise.
12412         * unittests/basic_string_view/operations/find/char/4.cc:
12413         Likewise.
12414         * unittests/basic_string_view/operations/rfind/char/1.cc:
12415         Likewise.
12416         * unittests/basic_string_view/operations/rfind/char/2.cc:
12417         Likewise.
12418         * unittests/basic_string_view/operations/rfind/char/3.cc:
12419         Likewise.
12420         * unittests/basic_string_view/operations/substr/char/1.cc:
12421         Likewise.
12422         * unittests/basic_string_view/operators/char/2.cc: Likewise.
12423         * unittests/string_view-selftests.c: New file.
12424
12425 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12426
12427         * unittests/basic_string_view/capacity/1.cc: New file.
12428         * unittests/basic_string_view/capacity/empty_neg.cc: New file.
12429         * unittests/basic_string_view/cons/char/1.cc: New file.
12430         * unittests/basic_string_view/cons/char/2.cc: New file.
12431         * unittests/basic_string_view/cons/char/3.cc: New file.
12432         * unittests/basic_string_view/cons/wchar_t/1.cc: New file.
12433         * unittests/basic_string_view/cons/wchar_t/2.cc: New file.
12434         * unittests/basic_string_view/cons/wchar_t/3.cc: New file.
12435         * unittests/basic_string_view/element_access/char/1.cc: New file.
12436         * unittests/basic_string_view/element_access/char/2.cc: New file.
12437         * unittests/basic_string_view/element_access/char/empty.cc: New file.
12438         * unittests/basic_string_view/element_access/char/front_back.cc: New file.
12439         * unittests/basic_string_view/element_access/wchar_t/1.cc: New file.
12440         * unittests/basic_string_view/element_access/wchar_t/2.cc: New file.
12441         * unittests/basic_string_view/element_access/wchar_t/empty.cc: New file.
12442         * unittests/basic_string_view/element_access/wchar_t/front_back.cc: New file.
12443         * unittests/basic_string_view/include.cc: New file.
12444         * unittests/basic_string_view/inserters/char/1.cc: New file.
12445         * unittests/basic_string_view/inserters/char/2.cc: New file.
12446         * unittests/basic_string_view/inserters/char/3.cc: New file.
12447         * unittests/basic_string_view/inserters/pod/10081-out.cc: New file.
12448         * unittests/basic_string_view/inserters/wchar_t/1.cc: New file.
12449         * unittests/basic_string_view/inserters/wchar_t/2.cc: New file.
12450         * unittests/basic_string_view/inserters/wchar_t/3.cc: New file.
12451         * unittests/basic_string_view/literals/types.cc: New file.
12452         * unittests/basic_string_view/literals/values.cc: New file.
12453         * unittests/basic_string_view/modifiers/remove_prefix/char/1.cc: New file.
12454         * unittests/basic_string_view/modifiers/remove_prefix/wchar_t/1.cc: New file.
12455         * unittests/basic_string_view/modifiers/remove_suffix/char/1.cc: New file.
12456         * unittests/basic_string_view/modifiers/remove_suffix/wchar_t/1.cc: New file.
12457         * unittests/basic_string_view/modifiers/swap/char/1.cc: New file.
12458         * unittests/basic_string_view/modifiers/swap/wchar_t/1.cc: New file.
12459         * unittests/basic_string_view/operations/compare/char/1.cc: New file.
12460         * unittests/basic_string_view/operations/compare/char/13650.cc: New file.
12461         * unittests/basic_string_view/operations/compare/char/2.cc: New file.
12462         * unittests/basic_string_view/operations/compare/char/70483.cc: New file.
12463         * unittests/basic_string_view/operations/compare/wchar_t/1.cc: New file.
12464         * unittests/basic_string_view/operations/compare/wchar_t/13650.cc: New file.
12465         * unittests/basic_string_view/operations/compare/wchar_t/2.cc: New file.
12466         * unittests/basic_string_view/operations/copy/char/1.cc: New file.
12467         * unittests/basic_string_view/operations/copy/wchar_t/1.cc: New file.
12468         * unittests/basic_string_view/operations/data/char/1.cc: New file.
12469         * unittests/basic_string_view/operations/data/wchar_t/1.cc: New file.
12470         * unittests/basic_string_view/operations/find/char/1.cc: New file.
12471         * unittests/basic_string_view/operations/find/char/2.cc: New file.
12472         * unittests/basic_string_view/operations/find/char/3.cc: New file.
12473         * unittests/basic_string_view/operations/find/char/4.cc: New file.
12474         * unittests/basic_string_view/operations/find/wchar_t/1.cc: New file.
12475         * unittests/basic_string_view/operations/find/wchar_t/2.cc: New file.
12476         * unittests/basic_string_view/operations/find/wchar_t/3.cc: New file.
12477         * unittests/basic_string_view/operations/find/wchar_t/4.cc: New file.
12478         * unittests/basic_string_view/operations/rfind/char/1.cc: New file.
12479         * unittests/basic_string_view/operations/rfind/char/2.cc: New file.
12480         * unittests/basic_string_view/operations/rfind/char/3.cc: New file.
12481         * unittests/basic_string_view/operations/rfind/wchar_t/1.cc: New file.
12482         * unittests/basic_string_view/operations/rfind/wchar_t/2.cc: New file.
12483         * unittests/basic_string_view/operations/rfind/wchar_t/3.cc: New file.
12484         * unittests/basic_string_view/operations/string_conversion/1.cc: New file.
12485         * unittests/basic_string_view/operations/substr/char/1.cc: New file.
12486         * unittests/basic_string_view/operations/substr/wchar_t/1.cc: New file.
12487         * unittests/basic_string_view/operators/char/2.cc: New file.
12488         * unittests/basic_string_view/operators/wchar_t/2.cc: New file.
12489         * unittests/basic_string_view/range_access/char/1.cc: New file.
12490         * unittests/basic_string_view/range_access/wchar_t/1.cc: New file.
12491         * unittests/basic_string_view/requirements/explicit_instantiation/1.cc: New file.
12492         * unittests/basic_string_view/requirements/explicit_instantiation/char/1.cc: New file.
12493         * unittests/basic_string_view/requirements/explicit_instantiation/char16_t/1.cc: New file.
12494         * unittests/basic_string_view/requirements/explicit_instantiation/char32_t/1.cc: New file.
12495         * unittests/basic_string_view/requirements/explicit_instantiation/wchar_t/1.cc: New file.
12496         * unittests/basic_string_view/requirements/typedefs.cc: New file.
12497         * unittests/basic_string_view/typedefs.cc: New file.
12498         * unittests/basic_string_view/types/1.cc: New file.
12499
12500 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12501
12502         * common/gdb_string_view.h: Remove libstdc++ implementation
12503         details, adjust to gdb reality.
12504         * common/gdb_string_view.tcc: Likewise.
12505         * cli/cli-script.c (struct string_view): Remove.
12506         (user_args) <m_args>: Change element type to gdb::string_view.
12507         (user_args::insert_args): Adjust.
12508
12509 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12510
12511         * common/gdb_string_view.h: New file.
12512         * common/gdb_string_view.tcc: New file.
12513
12514 2018-04-09  Simon Marchi  <simon.marchi@polymtl.ca>
12515
12516         * ax_cxx_compile_stdcxx.m4: Sync with upstream.
12517         * configure: Re-generate.
12518
12519 2018-04-09  Pedro Alves  <palves@redhat.com>
12520
12521         * gdbarch.sh: Include "observable.h" instead of "observer.h".
12522         (set_target_gdbarch): Call
12523         gdb::observers::architecture_changed.notify instead of
12524         observer_notify_architecture_changed.
12525
12526 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12527
12528         * tracepoint.c (struct current_traceframe_cleanup): Remove.
12529         (do_restore_current_traceframe_cleanup): Remove.
12530         (restore_current_traceframe_cleanup_dtor): Remove.
12531         (make_cleanup_restore_current_traceframe): Remove.
12532         (scoped_restore_current_traceframe::scoped_restore_current_traceframe):
12533         New.
12534         * tracepoint.h (struct scoped_restore_current_traceframe): New.
12535         * infrun.c (fetch_inferior_event): Use
12536         scoped_restore_current_traceframe.
12537
12538 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12539
12540         * dwarf2read.h (struct dwarf2_per_objfile) <n_type_units>:
12541         Remove.
12542         <n_allocated_type_units>: Remove.
12543         <all_type_units>: Change to std::vector.
12544         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12545         to std::vector change.
12546         (dwarf2_per_objfile::get_cutu): Likewise.
12547         (dwarf2_per_objfile::get_tu): Likewise.
12548         (create_signatured_type_table_from_index): Likewise.
12549         (create_signatured_type_table_from_debug_names): Likewise.
12550         (dw2_symtab_iter_next): Likewise.
12551         (dw2_print_stats): Likewise.
12552         (dw2_expand_all_symtabs): Likewise.
12553         (dw2_expand_marked_cus): Likewise.
12554         (dw2_debug_names_iterator::next): Likewise.
12555         (dwarf2_initialize_objfile): Likewise.
12556         (add_signatured_type_cu_to_table): Likewise.
12557         (create_all_type_units): Likewise.
12558         (add_type_unit): Likewise.
12559         (struct tu_abbrev_offset): Add constructor.
12560         (build_type_psymtabs_1): Adjust to std::vector change.
12561         (print_tu_stats): Likewise.
12562         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12563         (write_debug_names): Likewise.
12564
12565 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12566
12567         * dwarf2read.h (struct dwarf2_per_objfile) <all_comp_units>: Likewise.
12568         Make an std::vector.
12569         <n_comp_units>: Remove.
12570         * dwarf2read.c (dwarf2_per_objfile::~dwarf2_per_objfile): Adjust
12571         to std::vector change.
12572         (dwarf2_per_objfile::get_cutu): Likewise.
12573         (dwarf2_per_objfile::get_cu): Likewise.
12574         (create_cus_from_index): Likewise.
12575         (create_addrmap_from_index): Likewise.
12576         (create_addrmap_from_aranges): Likewise.
12577         (dwarf2_read_index): Likewise.
12578         (dw2_find_last_source_symtab): Likewise.
12579         (dw2_map_symtabs_matching_filename): Likewise.
12580         (dw2_symtab_iter_next): Likewise.
12581         (dw2_print_stats): Likewise.
12582         (dw2_expand_all_symtabs): Likewise.
12583         (dw2_expand_symtabs_with_fullname): Likewise.
12584         (dw2_expand_marked_cus): Likewise.
12585         (dw2_map_symbol_filenames): Likewise.
12586         (create_cus_from_debug_names): Likewise.
12587         (dwarf2_read_debug_names): Likewise.
12588         (dw2_debug_names_iterator::next): Likewise.
12589         (dwarf2_initialize_objfile): Likewise.
12590         (set_partial_user): Likewise.
12591         (dwarf2_build_psymtabs_hard): Likewise.
12592         (read_comp_units_from_section): Remove arguments, adjust to
12593         std::vector change.
12594         (create_all_comp_units): Adjust to std::vector and
12595         read_comp_units_from_section changes.
12596         (dwarf2_find_containing_comp_unit): Adjust to std::vector
12597         change.
12598         * dwarf-index-write.c (check_dwarf64_offsets): Likewise.
12599         (psyms_seen_size): Likewise.
12600         (write_gdbindex): Likewise.
12601         (write_debug_names): Likewise.
12602
12603 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12604
12605         * dwarf2read.c (create_cus_from_index_list): Replace objfile arg
12606         with dwarf2_per_objfile.
12607         (create_cus_from_index): Likewise.
12608         (create_signatured_type_table_from_index): Likewise.
12609         (dwarf2_read_index): Likewise.
12610         (dwarf2_initialize_objfile): Likewise.
12611         (dwarf2_fetch_die_loc_sect_off):  Get dwarf2_per_objfile from
12612         per_cu rather than get_dwarf2_per_objfile.
12613
12614 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12615
12616         * dwarf2read.h (struct signatured_type): Forward declare.
12617         (struct dwarf2_per_objfile) <get_cutu, get_cu, get_tu>:
12618         New methods.
12619         * dwarf2read.c (dwarf2_per_objfile::get_cutu): Rename from...
12620         (dw2_get_cutu): ...this.
12621         (dwarf2_per_objfile::get_cu): Rename from...
12622         (dw2_get_cu): ...this.
12623         (dwarf2_per_objfile::get_tu): New.
12624         (create_addrmap_from_index): Adjust.
12625         (create_addrmap_from_aranges): Adjust.
12626         (dw2_find_last_source_symtab): Adjust.
12627         (dw2_map_symtabs_matching_filename): Adjust.
12628         (dw2_symtab_iter_next): Adjust.
12629         (dw2_print_stats): Adjust.
12630         (dw2_expand_all_symtabs): Adjust.
12631         (dw2_expand_symtabs_with_fullname): Adjust.
12632         (dw2_expand_marked_cus): Adjust.
12633         (dw_expand_symtabs_matching_file_matcher): Adjust.
12634         (dw2_map_symbol_filenames): Adjust.
12635         (dw2_debug_names_iterator::next): Adjust.
12636         (dwarf2_initialize_objfile): Adjust.
12637         (set_partial_user): Adjust.
12638         (dwarf2_build_psymtabs_hard): Adjust.
12639
12640 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12641
12642         * dwarf2read.c (create_signatured_type_table_from_debug_names):
12643         Remove unused variables.
12644         (dw2_map_symtabs_matching_filename): Likewise.
12645         (dwarf2_record_block_ranges): Likewise.
12646         (dwarf2_read_addr_index): Likewise.
12647         (follow_die_offset): Likewise.
12648
12649 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12650
12651         * progspace.c (clone_program_space): Pass SYMFILE_DEFER_BP_RESET
12652         to symbol_file_add_main.
12653
12654 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12655
12656         PR mi/22299
12657         * mi/mi-console.c (do_fputc_async_safe): New.
12658         (mi_console_file::write_async_safe): New.
12659         (mi_console_file::flush): Adjust calls to fputstrn_unfiltered.
12660         * mi/mi-console.h (class mi_console_file) <write_async_safe>:
12661         New.
12662         * ui-file.c (ui_file::putstrn): Adjust call to
12663         fputstrn_unfiltered.
12664         * utils.c (printchar): Replace do_fputs and do_fprintf
12665         parameters by do_fputc.
12666         (fputstr_filtered): Adjust call to printchar.
12667         (fputstr_unfiltered): Likewise.
12668         (fputstrn_filtered): Likewise.
12669         (fputstrn_unfiltered): Add do_fputc parameter, pass to
12670         printchar.
12671         * utils.h (do_fputc_ftype): New typedef.
12672         (fputstrn_unfiltered): Add do_fputc parameter.
12673
12674 2018-04-07  Simon Marchi  <simon.marchi@polymtl.ca>
12675
12676         * regformats/i386/i386-avx.dat: Remove.
12677
12678 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12679
12680         PR gdb/22979
12681         * amd64-tdep.c (amd64_none_init_abi): New function.
12682         (amd64_x32_none_init_abi): New function.
12683         (_initialize_amd64_tdep): Register handlers for x86-64 and
12684         x64_32 with GDB_OSABI_NONE.
12685         * osabi.c (gdbarch_init_osabi): Allow running handlers for the
12686         GDB_OSABI_NONE osabi.
12687
12688 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12689
12690         PR gdb/22980
12691         * defs.h (enum gdb_osabi): Remove GDB_OSABI_UNINITIALIZED, add
12692         GDB_OSABI_NONE.
12693         * arch-utils.c (gdbarch_info_init): Don't set info->osabi.
12694         * osabi.c (gdb_osabi_names): Add "unknown" entry.
12695
12696 2018-04-07  Simon Marchi  <simon.marchi@ericsson.com>
12697
12698         * common/byte-vector.h (char_vector): New type.
12699         * target.h (target_read_alloc): Return
12700         gdb::optional<byte_vector>.
12701         (target_read_stralloc): Return gdb::optional<char_vector>.
12702         (target_get_osdata): Return gdb::optional<char_vector>.
12703         * target.c (target_read_alloc_1): Templatize.  Replacement
12704         manual memory management with vector.
12705         (target_read_alloc): Change return type, adjust.
12706         (target_read_stralloc): Change return type, adjust.
12707         (target_get_osdata): Change return type, adjust.
12708         * auxv.c (struct auxv_info) <length>: Remove.
12709         <data>: Change type to gdb::optional<byte_vector>.
12710         (auxv_inferior_data_cleanup): Free auxv_info with delete.
12711         (get_auxv_inferior_data): Allocate auxv_info with new, adjust.
12712         (target_auxv_search): Adjust.
12713         (fprint_target_auxv): Adjust.
12714         * avr-tdep.c (avr_io_reg_read_command): Adjust.
12715         * linux-tdep.c (linux_spu_make_corefile_notes): Adjust.
12716         (linux_make_corefile_notes): Adjust.
12717         * osdata.c (get_osdata): Adjust.
12718         * remote.c (remote_get_threads_with_qxfer): Adjust.
12719         (remote_memory_map): Adjust.
12720         (remote_traceframe_info): Adjust.
12721         (btrace_read_config): Adjust.
12722         (remote_read_btrace): Adjust.
12723         (remote_pid_to_exec_file): Adjust.
12724         * solib-aix.c (solib_aix_get_library_list): Adjust.
12725         * solib-dsbt.c (decode_loadmap): Don't free buf.
12726         (dsbt_get_initial_loadmaps): Adjust.
12727         * solib-svr4.c (svr4_current_sos_via_xfer_libraries): Adjust.
12728         * solib-target.c (solib_target_current_sos): Adjust.
12729         * tracepoint.c (sdata_make_value): Adjust.
12730         * xml-support.c (xinclude_start_include): Adjust.
12731         (xml_fetch_content_from_file): Adjust.
12732         * xml-support.h (xml_fetch_another): Change return type.
12733         (xml_fetch_content_from_file): Change return type.
12734         * xml-syscall.c (xml_init_syscalls_info): Adjust.
12735         * xml-tdesc.c (file_read_description_xml): Adjust.
12736         (fetch_available_features_from_target): Change return type.
12737         (target_fetch_description_xml): Adjust.
12738         (target_read_description_xml): Adjust.
12739
12740 2018-04-06  Tom Tromey  <tom@tromey.com>
12741
12742         * value.c (~value): Update.
12743         (struct value) <contents>: Now unique_xmalloc_ptr.
12744         (value_contents_bits_eq, allocate_value_contents)
12745         (value_contents_raw, value_contents_all_raw)
12746         (value_contents_for_printing, value_contents_for_printing_const)
12747         (set_value_enclosing_type): Update.
12748
12749 2018-04-06  Tom Tromey  <tom@tromey.com>
12750
12751         * value.c (range_s): Remove typedef, VEC.
12752         (struct range): Add operator<.
12753         (range_lessthan): Remove.
12754         (ranges_contain): Change type.
12755         (~value): Update.
12756         (struct value) <unavailable, optimized_out>: Now std::vector.
12757         (value_entirely_available)
12758         (value_entirely_covered_by_range_vector)
12759         (value_entirely_unavailable, value_entirely_optimized_out):
12760         Update.
12761         (insert_into_bit_range_vector): Change argument type.
12762         (find_first_range_overlap): Likewise.
12763         (struct ranges_and_idx, value_contents_bits_eq)
12764         (require_not_optimized_out, require_available): Update.
12765         (ranges_copy_adjusted): Change argument types.
12766         (value_optimized_out, value_copy, value_fetch_lazy): Update.
12767
12768 2018-04-06  Tom Tromey  <tom@tromey.com>
12769
12770         * value.c (~value): Update.
12771         (struct value) <parent>: Now a value_ref_ptr.
12772         (value_parent, set_value_parent, value_address, value_copy):
12773         Update.
12774
12775 2018-04-06  Tom Tromey  <tom@tromey.com>
12776
12777         * value.c (struct value): Add constructor, destructor, and member
12778         initializers.
12779         (allocate_value_lazy, value_decref): Update.
12780
12781 2018-04-06  Tom Tromey  <tom@tromey.com>
12782
12783         * value.c (struct value) <released, next>: Remove.
12784         (all_values): Now a std::vector.
12785         (allocate_value_lazy): Update.
12786         (value_next): Remove.
12787         (value_mark, value_free_to_mark, release_value)
12788         (value_release_to_mark): Update.
12789
12790 2018-04-06  Tom Tromey  <tom@tromey.com>
12791
12792         * value.h (fetch_subexp_value, value_release_to_mark): Update.
12793         (free_value_chain): Remove.
12794         * value.c (free_value_chain): Remove.
12795         (value_release_to_mark): Return a std::vector.
12796         * ppc-linux-nat.c (num_memory_accesses): Change "chain" to a
12797         std::vector.
12798         (check_condition): Update.
12799         * eval.c (fetch_subexp_value): Change "val_chain" to a
12800         std::vector.
12801         * breakpoint.c (update_watchpoint): Update.
12802         (can_use_hardware_watchpoint): Change "vals" to a std::vector.
12803
12804 2018-04-06  Tom Tromey  <tom@tromey.com>
12805
12806         * value.h (free_all_values): Remove.
12807         * value.c (free_all_values): Remove.
12808
12809 2018-04-06  Tom Tromey  <tom@tromey.com>
12810
12811         * value.c (VALUE_HISTORY_CHUNK, struct value_history_chunk)
12812         (value_history_chain, value_history_count): Remove.
12813         (value_history): New global.
12814         (record_latest_value, access_value_history, show_values)
12815         (preserve_values): Update.
12816
12817 2018-04-06  Tom Tromey  <tom@tromey.com>
12818
12819         * varobj.h (struct varobj) <value>: Now a value_ref_ptr.
12820         * varobj.c (varobj_set_display_format, varobj_set_value)
12821         (install_default_visualizer, construct_visualizer)
12822         (install_new_value, ~varobj, varobj_get_value_type)
12823         (my_value_of_variable, varobj_editable_p): Update.
12824         * c-varobj.c (c_describe_child, c_value_of_variable)
12825         (cplus_number_of_children, cplus_describe_child): Update.
12826         * ada-varobj.c (ada_number_of_children, ada_name_of_child)
12827         (ada_path_expr_of_child, ada_value_of_child, ada_type_of_child)
12828         (ada_value_of_variable, ada_value_is_changeable_p): Update.
12829
12830 2018-04-06  Tom Tromey  <tom@tromey.com>
12831
12832         * printcmd.c (last_examine_address): Change type to
12833         value_ref_ptr.
12834         (do_examine, x_command): Update.
12835
12836 2018-04-06  Tom Tromey  <tom@tromey.com>
12837
12838         * value.c (release_value): Update.
12839         * breakpoint.h (struct watchpoint) <val>: Now a value_ref_ptr.
12840         (struct bpstats) <val>: Now a value_ref_ptr.
12841         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12842         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12843         (~watchpoint, print_it_watchpoint, watch_command_1)
12844         (invalidate_bp_value_on_memory_change): Update.
12845
12846 2018-04-06  Tom Tromey  <tom@tromey.com>
12847
12848         * varobj.c (varobj_clear_saved_item)
12849         (update_dynamic_varobj_children, install_new_value, ~varobj):
12850         Update.
12851         * value.h (value_incref): Move declaration earlier.
12852         (value_decref): Rename from value_free.
12853         (struct value_ref_policy): New.
12854         (value_ref_ptr): New typedef.
12855         (struct value_deleter): Remove.
12856         (gdb_value_up): Remove typedef.
12857         (release_value): Change return type.
12858         (release_value_or_incref): Remove.
12859         * value.c (set_value_parent): Update.
12860         (value_incref): Change return type.
12861         (value_decref): Rename from value_free.
12862         (value_free_to_mark, free_all_values, free_value_chain): Update.
12863         (release_value): Return value_ref_ptr.
12864         (release_value_or_incref): Remove.
12865         (record_latest_value, set_internalvar, clear_internalvar):
12866         Update.
12867         * stack.c (info_frame_command): Don't call value_free.
12868         * python/py-value.c (valpy_dealloc, valpy_new)
12869         (value_to_value_object): Update.
12870         * printcmd.c (do_examine): Update.
12871         * opencl-lang.c (lval_func_free_closure): Update.
12872         * mi/mi-main.c (register_changed_p): Don't call value_free.
12873         * mep-tdep.c (mep_frame_prev_register): Don't call value_free.
12874         * m88k-tdep.c (m88k_frame_prev_register): Don't call value_free.
12875         * m68hc11-tdep.c (m68hc11_frame_prev_register): Don't call
12876         value_free.
12877         * guile/scm-value.c (vlscm_free_value_smob)
12878         (vlscm_scm_from_value): Update.
12879         * frame.c (frame_register_unwind, frame_unwind_register_signed)
12880         (frame_unwind_register_unsigned, get_frame_register_bytes)
12881         (put_frame_register_bytes): Don't call value_free.
12882         * findvar.c (address_from_register): Don't call value_free.
12883         * dwarf2read.c (dwarf2_compute_name): Don't call value_free.
12884         * dwarf2loc.c (entry_data_value_free_closure)
12885         (value_of_dwarf_reg_entry, free_pieced_value_closure)
12886         (dwarf2_evaluate_loc_desc_full): Update.
12887         * breakpoint.c (update_watchpoint, breakpoint_init_inferior)
12888         (~bpstats, bpstats, bpstat_clear_actions, watchpoint_check)
12889         (~watchpoint, watch_command_1)
12890         (invalidate_bp_value_on_memory_change): Update.
12891         * alpha-tdep.c (alpha_register_to_value): Don't call value_free.
12892
12893 2018-04-06  Simon Marchi  <simon.marchi@polymtl.ca>
12894
12895         PR gdb/23022
12896         * warning.m4: Add -Wno-error=deprecated-register.
12897         * configure: Re-generate.
12898
12899 2018-04-05  Tom Tromey  <tom@tromey.com>
12900
12901         * linespec.h: Remove include of "vec.h".
12902
12903 2018-04-05  Tom Tromey  <tom@tromey.com>
12904
12905         * linespec.c (typep): Remove typedef.
12906         (find_methods, find_superclass_methods): Take a std::vector.
12907         (find_method): Use std::vector.
12908
12909 2018-04-05  Tom Tromey  <tom@tromey.com>
12910
12911         * utils.c (compare_strings): Remove.
12912         * utils.h (compare_strings): Remove.
12913         * objc-lang.h (find_imps): Update.
12914         * objc-lang.c (find_methods): Take a std::vector.
12915         (uniquify_strings, find_imps): Likewise.
12916         * linespec.c (find_methods): Take a std::vector.
12917         (decode_objc): Use std::vector.
12918         (add_all_symbol_names_from_pspace, find_superclass_methods): Take
12919         a std::vector.
12920         (find_method, find_function_symbols): Use std::vector.
12921
12922 2018-04-05  Tom Tromey  <tom@tromey.com>
12923
12924         * completer.c (completion_tracker::completion_tracker): Remove
12925         cast.
12926         (completion_tracker::discard_completions): Likewise.
12927         * breakpoint.c (ambiguous_names_p): Remove cast.
12928         * ada-lang.c (_initialize_ada_language): Remove cast.
12929         * utils.h (streq): Update.
12930         (streq_hash): Add new declaration.
12931         * utils.c (streq): Return bool.
12932         (streq_hash): New function.
12933
12934 2018-04-05  Tom Tromey  <tom@tromey.com>
12935
12936         * linespec.c (event_location_to_sals) <case ADDRESS_LOCATION>:
12937         Remove a string copy.
12938
12939 2018-04-05  Tom Tromey  <tom@tromey.com>
12940
12941         * linespec.c (filter_results): Use std::vector.
12942         (decode_line_2, decode_line_full): Update.
12943
12944 2018-04-05  Tom Tromey  <tom@tromey.com>
12945
12946         * linespec.c (canonical_to_fullform): Return std::string.
12947         (filter_results): Update.
12948         (struct decode_line_2_item): Add constructor.
12949         <fullform, displayform>: Now std::string.
12950         (decode_line_2_compare_items): Now a std::sort comparator.
12951         (decode_line_2): Update.
12952
12953 2018-04-05  Tom Tromey  <tom@tromey.com>
12954
12955         * linespec.c (copy_token_string): Return a unique_xmalloc_ptr.
12956         (unexpected_linespec_error): Update.
12957         (linespec_parse_basic, parse_linespec): Update.
12958
12959 2018-04-05  Tom Tromey  <tom@tromey.com>
12960
12961         * linespec.c (linespec_parse_basic): Reindent.
12962
12963 2018-04-05  Tom Tromey  <tom@tromey.com>
12964
12965         * minsyms.h (iterate_over_minimal_symbols): Update.
12966         * minsyms.c (iterate_over_minimal_symbols): Take a
12967         gdb::function_view.
12968         * linespec.c (struct collect_minsyms): Remove.
12969         (compare_msyms): Now a std::sort comparator.
12970         (add_minsym): Add parameters.
12971         (search_minsyms_for_name): Update.  Use std::vector.
12972
12973 2018-04-03  Tom Tromey  <tom@tromey.com>
12974
12975         * mipsread.c (read_alphacoff_dynamic_symtab): Use
12976         gdb::byte_vector.
12977
12978 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12979
12980         * MAINTAINERS (Write After Approval): Add Weimin Pan.
12981
12982 2018-04-02  Weimin Pan  <weimin.pan@oracle.com>
12983
12984         PR gdb/16959
12985         * cp-valprint.c: (cp_print_static_field) Fix infinite recursion when 
12986         printing static type.
12987
12988 2018-04-01  Tom Tromey  <tom@tromey.com>
12989
12990         * rs6000-nat.c (rs6000_ptrace_ldinfo): Return a byte_vector.
12991         (rs6000_xfer_shared_libraries): Update.
12992
12993 2018-04-01  Simon Marchi  <simon.marchi@polymtl.ca>
12994
12995         * common/gdb_vecs.h (char_ptr): Remove.
12996         * tracepoint.c (encode_actions_1): Remove usage of char_ptr.
12997
12998 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
12999
13000         * guile/scm-utils.c (gdbscm_parse_function_args): Replace VEC
13001         with std::vector.
13002         * common/gdb_vecs.h (DEF_VEC_P (char_ptr)): Remove.
13003
13004 2018-03-30  Simon Marchi  <simon.marchi@polymtl.ca>
13005
13006         * tracepoint.h (struct uploaded_tp): Initialize fields.
13007         <actions, step_actions, cmd_strings>: Change type to
13008         std::vector<char *>.
13009         * tracepoint.c (get_uploaded_tp): Allocate with new.
13010         (free_uploaded_tps): Free with delete.
13011         (parse_tracepoint_definition): Adjust to std::vector change.
13012         * breakpoint.c (read_uploaded_action): Likewise.
13013         (create_tracepoint_from_upload): Likewise.
13014         * ctf.c (ctf_write_uploaded_tp): Likewise.
13015         (SET_ARRAY_FIELD): Likewise.
13016         * tracefile-tfile.c (tfile_write_uploaded_tp): Likewise.
13017
13018 2018-03-30  Tom Tromey  <tom@tromey.com>
13019
13020         * solib-svr4.c (lm_info_read): Use gdb::byte_vector.  Return
13021         std::unique_ptr.
13022         (svr4_keep_data_in_core): Update.
13023         (svr4_read_so_list): Update.
13024
13025 2018-03-30  Tom Tromey  <tom@tromey.com>
13026
13027         * windows-nat.c (handle_output_debug_string, handle_exception):
13028         Update.
13029         * target.h (target_read_string): Update.
13030         * target.c (target_read_string): Change "string" to
13031         unique_xmalloc_ptr.
13032         * solib-svr4.c (open_symbol_file_object, svr4_read_so_list):
13033         Update.
13034         * solib-frv.c (frv_current_sos): Update.
13035         * solib-dsbt.c (dsbt_current_sos): Update.
13036         * solib-darwin.c (darwin_current_sos): Update.
13037         * linux-thread-db.c (inferior_has_bug): Update.
13038         * expprint.c (print_subexp_standard) <case OP_OBJC_MSGCALL>:
13039         Update.  Remove alloca.
13040         * ada-lang.c (ada_main_name): Update.
13041
13042 2018-03-30  Tom Tromey  <tom@tromey.com>
13043
13044         * dwarf2read.c (struct free_dwo_file_cleanup_data): Remove.
13045         (struct dwo_file_deleter): New.
13046         (dwo_file_up): New typedef.
13047         (open_and_init_dwo_file): Use dwo_file_up.
13048         (free_dwo_file_cleanup): Remove.
13049
13050 2018-03-30  Tom Tromey  <tom@tromey.com>
13051
13052         * dwarf2read.c (free_dwo_file): Remove "objfile" parameter.
13053         (free_dwo_file_cleanup, free_dwo_file_from_slot): Update.
13054
13055 2018-03-30  Tom Tromey  <tom@tromey.com>
13056
13057         * dwarf2read.c (class free_cached_comp_units): New class.
13058         (dw2_instantiate_symtab, dwarf2_build_psymtabs_hard): Use it.
13059         (free_cached_comp_units): Remove function.
13060
13061 2018-03-30  Tom Tromey  <tom@tromey.com>
13062
13063         * utils.h (make_cleanup_unpush_target): Remove.
13064         * inf-ptrace.c (struct target_unpusher): New.
13065         (target_unpush_up) New typedef.
13066         (inf_ptrace_create_inferior, inf_ptrace_attach): Use
13067         target_unpush_up.
13068         * utils.c (do_unpush_target, make_cleanup_unpush_target): Remove.
13069
13070 2018-03-27  Tom Tromey  <tom@tromey.com>
13071
13072         * utils.c (prompt_for_continue): Use unique_xmalloc_ptr.
13073
13074 2018-03-27  Pedro Alves  <palves@redhat.com>
13075             Tom Tromey  <tom@tromey.com>
13076
13077         * top.c (class gdb_readline_wrapper_cleanup): Add constructor,
13078         destructor.  Now a class.
13079         (gdb_readline_wrapper_cleanup): Remove function.
13080         (gdb_readline_wrapper): Remove cleanups.
13081
13082 2018-03-27  Tom Tromey  <tom@tromey.com>
13083
13084         * typeprint.h (struct type_print_options) <local_typedefs,
13085         global_typedefs>: Remove "struct" keyword.
13086         (class typedef_hash_table): New class.
13087         (recursively_update_typedef_hash, add_template_parameters)
13088         (create_typedef_hash, free_typedef_hash, copy_typedef_hash)
13089         (find_typedef_in_hash): Don't declare.
13090         * typeprint.c (struct typedef_hash_table): Move to typeprint.h.
13091         (typedef_hash_table::recursively_update): Rename from
13092         recursively_update_typedef_hash.  Now a member.
13093         (typedef_hash_table::add_template_parameters): Rename from
13094         add_template_parameters.  Now a member.
13095         (typedef_hash_table::typedef_hash_table): Now a constructor;
13096         rename from create_typedef_hash.
13097         (typedef_hash_table::~typedef_hash_table): Now a destructor;
13098         rename from free_typedef_hash.
13099         (do_free_typedef_hash, make_cleanup_free_typedef_hash)
13100         (do_free_global_table): Remove.
13101         (typedef_hash_table::typedef_hash_table): New constructor; renamed
13102         from copy_type_recursive.
13103         (create_global_typedef_table): Remove.
13104         (typedef_hash_table::find_global_typedef): Now a member of
13105         typedef_hash_table.
13106         (typedef_hash_table::find_typedef): Rename from
13107         find_typedef_in_hash; now a member.
13108         (whatis_exp): Update.
13109         * extension.h (struct ext_lang_type_printers): Add constructor and
13110         destructor.
13111         (start_ext_lang_type_printers, free_ext_lang_type_printers): Don't
13112         declare.
13113         * extension.c (ext_lang_type_printers::ext_lang_type_printers):
13114         Now a constructor; rename from start_ext_lang_type_printers.
13115         (ext_lang_type_printers): Now a destructor; rename from
13116         free_ext_lang_type_printers.
13117         * c-typeprint.c (find_typedef_for_canonicalize, c_print_type_1):
13118         Update.
13119         (c_type_print_base_struct_union): Update.  Remove cleanups.
13120
13121 2018-03-27  Tom Tromey  <tom@tromey.com>
13122
13123         * dwarf-index-write.c: Include <cmath>.
13124
13125 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13126
13127         * NEWS: Add entry describing new "set|show varsize-limit" command.
13128         * ada-lang.c (_initialize_ada_language): Add "set/show varsize-limit"
13129         command.
13130         * printcmd.c (_initialize_printcmd): Add "set var" alias of
13131         "set variable".
13132
13133 2018-03-27  Simon Marchi  <simon.marchi@ericsson.com>
13134
13135         * Makefile.in (COMMON_SFILES): Add dwarf-index-common.c and
13136         dwarf-index-write.c
13137         (HFILES_NO_SRCDIR): Add dwarf-index-common.h and dwarf2read.h.
13138         * dwarf-index-common.c: New file.
13139         * dwarf-index-common.h: New file.
13140         * dwarf-index-write.c: New file.
13141         * dwarf2read.c: Include dwarf2read.h and dwarf-index-common.h.
13142         (struct dwarf2_section_info): Move from here.
13143         (dwarf2_section_info_def): Likewise.
13144         (DEF_VEC_O (dwarf2_section_info_def)): Likewise.
13145         (offset_type): Likewise.
13146         (DW2_GDB_INDEX_SYMBOL_STATIC_SET_VALUE): Likewise.
13147         (DW2_GDB_INDEX_SYMBOL_KIND_SET_VALUE): Likewise.
13148         (DW2_GDB_INDEX_CU_SET_VALUE): Likewise.
13149         (byte_swap): Likewise.
13150         (MAYBE_SWAP): Likewise.
13151         (dwarf2_per_cu_ptr): Likewise.
13152         (DEF_VEC_P (dwarf2_per_cu_ptr)): Likewise.
13153         (struct tu_stats): Likewise.
13154         (struct dwarf2_per_objfile): Likewise.
13155         (struct dwarf2_per_cu_data): Likewise.
13156         (struct signatured_type): Likewise.
13157         (sig_type_ptr): Likewise.
13158         (DEF_VEC_P (sig_type_ptr)): Likewise.
13159         (INDEX4_SUFFIX): Likewise.
13160         (INDEX5_SUFFIX): Likewise.
13161         (DEBUG_STR_SUFFIX): Likewise.
13162         (dwarf2_read_section): Make non-static.
13163         (mapped_index_string_hash): Move from here.
13164         (dwarf5_djb_hash): Likewise.
13165         (file_write): Likewise.
13166         (class data_buf): Likewise.
13167         (struct symtab_index_entry): Likewise.
13168         (struct mapped_symtab): Likewise.
13169         (find_slot): Likewise.
13170         (hash_expand): Likewise.
13171         (add_index_entry): Likewise.
13172         (uniquify_cu_indices): Likewise.
13173         (class c_str_view): Likewise.
13174         (class c_str_view_hasher): Likewise.
13175         (class vector_hasher): Likewise.
13176         (write_hash_table): Likewise.
13177         (psym_index_map): Likewise.
13178         (struct addrmap_index_data): Likewise.
13179         (add_address_entry): Likewise.
13180         (add_address_entry_worker): Likewise.
13181         (write_address_map): Likewise.
13182         (symbol_kind): Likewise.
13183         (write_psymbols): Likewise.
13184         (struct signatured_type_index_data): Likewise.
13185         (write_one_signatured_type): Likewise.
13186         (recursively_count_psymbols): Likewise.
13187         (recursively_write_psymbols): Likewise.
13188         (class debug_names): Likewise.
13189         (check_dwarf64_offsets): Likewise.
13190         (psyms_seen_size): Likewise.
13191         (write_gdbindex): Likewise.
13192         (write_debug_names): Likewise.
13193         (assert_file_size): Likewise.
13194         (write_psymtabs_to_index): Likewise.
13195         (save_gdb_index_command): Likewise.
13196         (_initialize_dwarf2_read): Don't register the "save gdb-index"
13197         command.
13198         * dwarf2read.h: New file.
13199
13200 2018-03-27  Joel Brobecker  <brobecker@adacore.com>
13201
13202         PR gdb/22670
13203         * dwarf2read.c (dwarf2_physname): Do not return the demangled
13204         symbol name if the CU's language stores symbol names in linkage
13205         format.
13206         * language.h (struct language_defn)
13207         <la_store_sym_names_in_linkage_form_p>: New field.  Adjust
13208         all instances of this struct.
13209
13210 2018-03-26  Tom Tromey  <tom@tromey.com>
13211
13212         * stack.c (backtrace_command_1): Remove verbose code.
13213
13214 2018-03-26  Tom Tromey  <tom@tromey.com>
13215
13216         * python/py-framefilter.c (py_print_type): Don't catch
13217         exceptions.  Return void.
13218         (py_print_value): Likewise.
13219         (py_print_single_arg): Likewise.
13220         (enumerate_args): Don't catch exceptions.
13221         (py_print_args): Likewise.
13222         (py_print_frame): Likewise.
13223         (gdbpy_apply_frame_filter): Catch exceptions here.
13224
13225 2018-03-26  Tom Tromey  <tom@tromey.com>
13226
13227         * stack.c (_initialize_stack): Remove trailing newlines from help
13228         text.  Add "Usage" line to "backtrace" help.
13229
13230 2018-03-26  Tom Tromey  <tom@tromey.com>
13231
13232         PR python/16486:
13233         * python/py-framefilter.c (py_print_args): Call wrap_hint.
13234
13235 2018-03-26  Tom Tromey  <tom@tromey.com>
13236
13237         * python/py-framefilter.c (py_print_single_arg): Return
13238         EXT_LANG_BT_ERROR from catch.
13239
13240 2018-03-26  Tom Tromey  <tom@tromey.com>
13241
13242         PR backtrace/15584:
13243         * stack.c (backtrace_command_1): Move some code into no-filters
13244         "if".
13245
13246 2018-03-26  Tom Tromey  <tom@tromey.com>
13247
13248         * python/py-framefilter.c (throw_quit_or_print_exception): New
13249         function.
13250         (gdbpy_apply_frame_filter): Use it.
13251
13252 2018-03-26  Tom Tromey  <tom@tromey.com>
13253
13254         PR cli/17716:
13255         * python/py-framefilter.c (py_print_type, py_print_value)
13256         (enumerate_args, py_print_args, gdbpy_apply_frame_filter): Use
13257         RETURN_MASK_ERROR.
13258
13259 2018-03-26  Tom Tromey  <tom@tromey.com>
13260
13261         * python/py-framefilter.c (enumerate_args): Use
13262         gdb::unique_xmalloc_ptr.
13263
13264 2018-03-26  Tom Tromey  <tom@tromey.com>
13265
13266         * python/py-framefilter.c (py_print_frame): Return
13267         EXT_LANG_BT_OK.
13268         (gdbpy_apply_frame_filter): Update comment.
13269         * extension.h (enum ext_lang_bt_status) <EXT_LANG_BT_COMPLETED>:
13270         Remove.
13271         <EXT_LANG_BT_NO_FILTERS>: Change value.
13272
13273 2018-03-26  Tom Tromey  <tom@tromey.com>
13274
13275         PR backtrace/15582:
13276         * stack.c (backtrace_command): Parse "hide" argument.
13277         * python/py-framefilter.c (py_print_frame): Handle PRINT_HIDE.
13278         * extension.h (enum frame_filter_flags) <PRINT_HIDE>: New
13279         constant.
13280
13281 2018-03-26  Tom Tromey  <tom@tromey.com>
13282
13283         * stack.c (backtrace_command_1): Remove "show_locals" parameter,
13284         add "flags".
13285         (backtrace_command): Remove "fulltrace", add "flags".
13286
13287 2018-03-26  Tom Tromey  <tom@tromey.com>
13288
13289         * stack.c (backtrace_command): Rewrite command line parsing.
13290
13291 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13292
13293         * dwarf2read.c (DEF_VEC_I(offset_type)): Remove.
13294
13295 2018-03-26  Simon Marchi  <simon.marchi@ericsson.com>
13296
13297         * filename-seen-cache.h: Add include guard.
13298
13299 2018-03-26  Keith Seitz  <keiths@redhat.com>
13300
13301         * symfile.c (place_section): Remove "struct" from section_addr_info
13302         in comment.
13303         * windows-nat.c (struct safe_symbol_file_add_args) <addrs>: Remove
13304         "struct" keyword from section_addr_info.
13305
13306 2018-03-26  Alan Hayward  <alan.hayward@arm.com>
13307
13308         * regformats/regdef.h (reg): Add constructors.
13309
13310 2018-03-25  Pedro Alves  <palves@redhat.com>
13311
13312         * eval.c (evaluate_funcall): Swap OP_VAR_MSYM_VALUE/OP_VAR_VALUE
13313         if then/else bodies in var_func_name extraction.
13314
13315 2018-03-23  Weimin Pan  <weimin.pan@oracle.com>
13316
13317         * minsyms.c (lookup_minimal_symbol_and_objfile): Use
13318         lookup_minimal_symbol() to find symbol entry.
13319         * minsyms.h (lookup_minimal_symbol_and_objfile): Update comment.
13320
13321 2018-03-23  Keith Seitz  <keiths@redhat.com>
13322
13323         PR c++/22968
13324         * dwarf2read.c (scan_partial_symbols): Scan structs/classes for
13325         nested type definitions for C++, too.
13326
13327 2018-03-23  Tom Tromey  <tom@tromey.com>
13328
13329         * machoread.c (struct oso_el): Add a constructor.  Don't define as
13330         a typedef.
13331         (macho_register_oso): Remove.
13332         (macho_symtab_read): Take a std::vector.
13333         (oso_el_compare_name): Now a std::sort comparator.
13334         (macho_symfile_read_all_oso): Take a std::vector.
13335         (macho_symfile_read): Use std::vector.  Remove cleanups.
13336
13337 2018-03-22  Tom Tromey  <tom@tromey.com>
13338
13339         * record-full.c (record_full_exec_insn): Use gdb::byte_vector.
13340         (record_full_goto_bookmark): Use std::string.
13341
13342 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13343
13344         PR tdep/18295
13345         * rs6000-tdep.c (skip_prologue): Match both stwux and stdux
13346         a single mask.
13347
13348 2018-03-22  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13349
13350         * rs6000-tdep.c (store_insn_p): New function.
13351         (skip_prologue): New variable alloca_reg_offset. Set lr_reg
13352         and cr_reg to their unshifted values. Use store_insn_p to
13353         match LR saves using either R1 or fdata->alloca_reg. Use
13354         store_insn_p to match CR saves. Set alloca_reg_offset
13355         when alloca_reg and framep are set. Remove lr_reg shift
13356         when assigning to fdata->lr_register.
13357
13358 2018-03-22  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13359
13360         * linux-tdep.c (linux_info_proc): For "info proc cmdline", print
13361         command line args instead of emitting a warning.
13362
13363 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13364
13365         * tracepoint.h (struct static_tracepoint_marker): Initialize
13366         fields, define default constructor, move constructor and move
13367         assignment, disable the rest.
13368         <str_id, extra>: Make std::string.
13369         (release_static_tracepoint_marker): Remove.
13370         (free_current_marker): Remove.
13371         * tracepoint.c (free_current_marker): Remove.
13372         (parse_static_tracepoint_marker_definition): Adjust to
13373         std::string, use new hex2str overload.
13374         (release_static_tracepoint_marker): Remove.
13375         (print_one_static_tracepoint_marker): Get marker by reference
13376         and adjust to std::string.
13377         (info_static_tracepoint_markers_command): Adjust to std::vector
13378         changes
13379         * target.h (static_tracepoint_marker_p): Remove typedef.
13380         (DEF_VEC_P(static_tracepoint_marker_p)): Remove.
13381         (struct target_ops) <to_static_tracepoint_marker_at>: Return
13382         bool.
13383         <to_static_tracepoint_markers_by_strid>: Return std::vector.
13384         * target-debug.h
13385         (target_debug_print_VEC_static_tracepoint_marker_p_p): Remove.
13386         (target_debug_print_std_vector_static_tracepoint_marker): New.
13387         (target_debug_print_struct_static_tracepoint_marker_p): Rename
13388         to...
13389         (target_debug_print_static_tracepoint_marker_p): ... this.
13390         * target-delegates.c: Re-generate.
13391         * breakpoint.h (struct tracepoint) <static_trace_marker_id>:
13392         Make std::string.
13393         * breakpoint.c (init_breakpoint_sal): Adjust to std::string.
13394         (decode_static_tracepoint_spec): Adjust to std::vector.
13395         (tracepoint_print_one_detail): Adjust to std::string.
13396         (strace_marker_decode_location): Adjust to std::string.
13397         (update_static_tracepoint): Adjust to std::string, remove call
13398         to release_static_tracepoint_marker.
13399         * linux-nat.c (linux_child_static_tracepoint_markers_by_strid):
13400         Adjust to std::vector.
13401         * remote.c (remote_static_tracepoint_marker_at): Return bool.
13402         (remote_static_tracepoint_markers_by_strid): Adjust to
13403         std::vector.
13404         * common/rsp-low.h (hex2str): New overload with explicit count
13405         of bytes.
13406         * common/rsp-low.c (hex2str): New overload with explicit count
13407         of bytes.
13408         * unittests/rsp-low-selftests.c (test_hex2str): New function.
13409         (_initialize_rsp_low_selftests): Add test_hex2str test.
13410         * unittests/tracepoint-selftests.c
13411         (test_parse_static_tracepoint_marker_definition): Adjust to
13412         std::string.
13413
13414 2018-03-22  Simon Marchi  <simon.marchi@polymtl.ca>
13415
13416         * tracepoint.c (parse_static_tracepoint_marker_definition):
13417         Consider case where the definition is followed by more
13418         definitions.
13419         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13420         tracepoint-selftests.c.
13421         * unittests/tracepoint-selftests.c: New.
13422
13423 2018-03-21  Pedro Franco de Carvalho  <pedromfc@linux.vnet.ibm.com>
13424
13425         * MAINTAINERS (Write After Approval): Add Pedro Franco de
13426         Carvalho.
13427
13428 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13429
13430         * symtab.c (find_pc_sect_line): fixed indentation.
13431
13432 2018-03-20  Stephen Roberts  <stephen.roberts@arm.com>
13433
13434         * symtab.c (find_pc_sect_line): now uses binary search.
13435
13436 2018-03-19  Tom Tromey  <tom@tromey.com>
13437
13438         * rust-exp.y (struct_expr_tail, struct_expr_list): Add plain
13439         "IDENT" production.
13440
13441 2018-03-19  Pedro Alves  <palves@redhat.com>
13442             Tom Tromey  <tom@tromey.com>
13443
13444         * unittests/observable-selftests.c: New file.
13445         * common/observable.h: New file.
13446         * observable.h: New file.
13447         * ada-lang.c, ada-tasks.c, agent.c, aix-thread.c, annotate.c,
13448         arm-tdep.c, auto-load.c, auxv.c, break-catch-syscall.c,
13449         breakpoint.c, bsd-uthread.c, cli/cli-interp.c, cli/cli-setshow.c,
13450         corefile.c, dummy-frame.c, event-loop.c, event-top.c, exec.c,
13451         extension.c, frame.c, gdbarch.c, guile/scm-breakpoint.c,
13452         infcall.c, infcmd.c, inferior.c, inflow.c, infrun.c, jit.c,
13453         linux-tdep.c, linux-thread-db.c, m68klinux-tdep.c,
13454         mi/mi-cmd-break.c, mi/mi-interp.c, mi/mi-main.c, objfiles.c,
13455         ppc-linux-nat.c, ppc-linux-tdep.c, printcmd.c, procfs.c,
13456         python/py-breakpoint.c, python/py-finishbreakpoint.c,
13457         python/py-inferior.c, python/py-unwind.c, ravenscar-thread.c,
13458         record-btrace.c, record-full.c, record.c, regcache.c, remote.c,
13459         riscv-tdep.c, sol-thread.c, solib-aix.c, solib-spu.c, solib.c,
13460         spu-multiarch.c, spu-tdep.c, stack.c, symfile-mem.c, symfile.c,
13461         symtab.c, thread.c, top.c, tracepoint.c, tui/tui-hooks.c,
13462         tui/tui-interp.c, valops.c: Update all users.
13463         * tui/tui-hooks.c (tui_bp_created_observer)
13464         (tui_bp_deleted_observer, tui_bp_modified_observer)
13465         (tui_inferior_exit_observer, tui_before_prompt_observer)
13466         (tui_normal_stop_observer, tui_register_changed_observer):
13467         Remove.
13468         (tui_observers_token): New global.
13469         (attach_or_detach, tui_attach_detach_observers): New functions.
13470         (tui_install_hooks, tui_remove_hooks): Use
13471         tui_attach_detach_observers.
13472         * record-btrace.c (record_btrace_thread_observer): Remove.
13473         (record_btrace_thread_observer_token): New global.
13474         * observer.sh: Remove.
13475         * observer.c: Rename to observable.c.
13476         * observable.c (namespace gdb_observers): Define new objects.
13477         (observer_debug): Move into gdb_observers namespace.
13478         (struct observer, struct observer_list, xalloc_observer_list_node)
13479         (xfree_observer_list_node, generic_observer_attach)
13480         (generic_observer_detach, generic_observer_notify): Remove.
13481         (_initialize_observer): Update.
13482         Don't include observer.inc.
13483         * Makefile.in (generated_files): Remove observer.h, observer.inc.
13484         (clean mostlyclean): Likewise.
13485         (observer.h, observer.inc): Remove targets.
13486         (SUBDIR_UNITTESTS_SRCS): Add observable-selftests.c.
13487         (COMMON_SFILES): Use observable.c, not observer.c.
13488         * .gitignore: Remove observer.h.
13489
13490 2018-03-18  Tom Tromey  <tom@tromey.com>
13491
13492         * solib.c (gdb_bfd_lookup_symbol_from_symtab): Use
13493         gdb::def_vector.
13494         (bfd_lookup_symbol_from_dyn_symtab): Likewise.
13495
13496 2018-03-17  Tom Tromey  <tom@tromey.com>
13497
13498         * auto-load.c (auto_load_objfile_script_1): Use std::string.
13499
13500 2018-03-17  Tom Tromey  <tom@tromey.com>
13501
13502         * target.c (class scoped_target_fd): New.
13503         (target_fileio_close_cleanup): Remove.
13504         (target_fileio_read_alloc_1): Use scoped_target_fd.
13505
13506 2018-03-16  Simon Marchi  <simon.marchi@polymtl.ca>
13507
13508         * silent-rules.mk: New.
13509         * Makefile.in: Include silent-rules.mk
13510         (srcdir, VPATH, top_srcdir): Move up.
13511         (COMPILE): Add ECHO_CXX.
13512         (test-cp-name-parser$(EXEEXT)): Add ECHO_CXXLD.
13513         (init.c): Add ECHO_INIT_C.
13514         (gdb$(EXEEXT)): Add SILENCE and ECHO_CXXLD.
13515         (version.c): Add ECHO_GEN.
13516         (printcmd.o): Add ECHO_CXX.
13517         (target-float.o): Add ECHO_CXX.
13518         (ada-exp.o): Add ECHO_CXX.
13519         (stamp-xml): Add SILENCE and ECHO_GEN_XML_BUILTIN.
13520         (insight$(EXEEXT)): Add ECHO_CXXLD.
13521         * gnulib/configure.ac: Add AM_SILENT_RULES.
13522         * gnulib/aclocal.m4: Re-generate.
13523         * gnulib/configure: Re-generate.
13524         * gnulib/import/Makefile.in: Re-generate.
13525
13526 2018-03-16  Tom Tromey  <tom@tromey.com>
13527
13528         * xcoffread.c (xcoff_symfile_offsets): Change type of "addrs".
13529         * utils.h (make_cleanup_free_section_addr_info): Don't declare.
13530         * utils.c (do_free_section_addr_info)
13531         (make_cleanup_free_section_addr_info): Remove.
13532         * symfile.h (struct other_sections): Add constructor.
13533         (struct section_addr_info): Remove.
13534         (section_addr_info): New typedef.
13535         (struct sym_fns) <sym_offsets>: Change type of parameter.
13536         (build_section_addr_info_from_objfile)
13537         (relative_addr_info_to_section_offsets, addr_info_make_relative)
13538         (default_symfile_offsets, symbol_file_add)
13539         (symbol_file_add_from_bfd)
13540         (build_section_addr_info_from_section_table): Update.
13541         (alloc_section_addr_info, free_section_addr_info): Don't declare.
13542         * symfile.c (alloc_section_addr_info): Remove.
13543         (build_section_addr_info_from_section_table): Change return type.
13544         Update.
13545         (build_section_addr_info_from_bfd)
13546         (build_section_addr_info_from_objfile): Likewise.
13547         (free_section_addr_info): Remove.
13548         (relative_addr_info_to_section_offsets): Change type of "addrs".
13549         (addrs_section_compar): Now a std::sort comparator.
13550         (addrs_section_sort): Change return type.
13551         (addr_info_make_relative): Change type of "addrs".  Update.
13552         (default_symfile_offsets, syms_from_objfile_1)
13553         (syms_from_objfile, symbol_file_add_with_addrs): Likewise.
13554         (symbol_file_add_separate): Update.
13555         (symbol_file_add): Change type of "addrs".  Update.
13556         (add_symbol_file_command): Update.  Remove cleanups.
13557         * symfile-mem.c (symbol_file_add_from_memory): Update.  Remove
13558         cleanups.
13559         * symfile-debug.c (debug_sym_offsets): Change type of "info".
13560         * solib.c (solib_read_symbols): Update.
13561         * objfiles.c (objfile_relocate): Update.  Remove cleanups.
13562         * machoread.c (macho_symfile_offsets): Update.
13563         * jit.c (jit_bfd_try_read_symtab): Update.
13564
13565 2018-03-15  Simon Marchi  <simon.marchi@polymtl.ca>
13566
13567         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
13568         unittests/utils-selftests.c.
13569         * unittests/utils-selftests.c: New file.
13570
13571 2018-03-14  Tom Tromey  <tom@tromey.com>
13572
13573         PR cli/14977:
13574         * printcmd.c (printf_c_string, printf_wide_c_string): Special case
13575         for NULL.
13576
13577 2018-03-14  Tom Tromey  <tom@tromey.com>
13578
13579         PR cli/19918:
13580         * printcmd.c (printf_pointer): Allow "-" in format.
13581
13582 2018-03-14  Tom Tromey  <tom@tromey.com>
13583
13584         * printcmd.c (_initialize_printcmd): Add usage to printf.
13585
13586 2018-03-14  Yao Qi  <qiyao@sourceware.org>
13587
13588         * MAINTAINERS: Update my email address.
13589
13590 2018-03-13  Tom Tromey  <tom@tromey.com>
13591
13592         * machoread.c (macho_check_dsym): Change filenamep to a
13593         std::string*.
13594         (macho_symfile_read): Update.
13595         * symfile.c (load_command): Use std::string.
13596
13597 2018-03-12  Andrew Burgess  <andrew.burgess@embecosm.com>
13598
13599         * riscv-tdep.c (riscv_sw_breakpoint_from_kind): Add localization
13600         to error message string.
13601         (riscv_register_name): Use xsnprintf instead of sprintf.
13602         (riscv_insn::fetch_instruction): Use gdb_assert instead of
13603         internal_error.
13604         (riscv_print_arg_location): Use gdb_assert_not_reached instead of
13605         error.
13606         (riscv_push_dummy_call): Likewise.
13607
13608 2018-03-12  Tom Tromey  <tom@tromey.com>
13609
13610         * rs6000-aix-tdep.c (rs6000_aix_core_xfer_shared_libraries_aix):
13611         Use gdb::byte_vector.
13612         * arm-tdep.c (arm_exidx_new_objfile): Use gdb::byte_vector.
13613
13614 2018-03-12  Yao Qi  <yao.qi@linaro.org>
13615
13616         * ia64-libunwind-tdep.c (libunwind_get_reg_special): Change
13617         parameter type to readable_regcache.
13618         * ia64-libunwind-tdep.h (libunwind_get_reg_special): Update
13619         the declaration.
13620
13621 2018-03-11  Tom Tromey  <tom@tromey.com>
13622
13623         * dwarf2read.c (struct nextfield): Add initializers.
13624         (struct nextfnfield): Remove.
13625         (struct fnfieldlist): Add initializers.  Remove "length" and
13626         "head", use std::vector.
13627         (struct decl_field_list): Remove.
13628         (struct field_info): Add initializers.
13629         <fields, baseclasses>: Now std::vector.
13630         <nbaseclasses, nfnfields, typedef_field_list_count,
13631         nested_types_list_count>: Remove.
13632         (dwarf2_add_field, dwarf2_add_type_defn)
13633         (dwarf2_attach_fields_to_type, dwarf2_add_member_fn)
13634         (dwarf2_attach_fn_fields_to_type, handle_struct_member_die)
13635         (process_structure_scope): Update.
13636
13637 2018-03-11  Tom Tromey  <tom@tromey.com>
13638
13639         * dwarf2read.c (sort_tu_by_abbrev_offset): Change to be suitable
13640         for use by std::sort.
13641         (build_type_psymtabs_1): Use std::vector.
13642
13643 2018-03-09  Eli Zaretskii  <eliz@gnu.org>
13644
13645         * top.c (print_gdb_configuration): Reflect LIBIPT, LIBMEMCHECK,
13646         and LIBMPFR in the printed configuration.
13647
13648 2018-03-08  Tom Tromey  <tom@tromey.com>
13649
13650         * source.c (get_filename_and_charpos): Use scoped_fd.
13651         * nto-procfs.c (procfs_open_1): Use scoped_fd.
13652         (procfs_pidlist): Likewise.
13653         * procfs.c (proc_get_LDT_entry): Use scoped_fd.
13654         (iterate_over_mappings): Likewise.
13655
13656 2018-03-08  Tom Tromey  <tom@tromey.com>
13657
13658         * infcall.c (struct call_return_meta_info)
13659         <stack_temporaries_enabled>: Remove.
13660         (get_call_return_value, call_function_by_hand_dummy): Update.
13661         * thread.c (disable_thread_stack_temporaries): Remove.
13662         (enable_thread_stack_temporaries): Remove.
13663         (thread_stack_temporaries_enabled_p): Return bool.
13664         (push_thread_stack_temporary, value_in_thread_stack_temporaries)
13665         (get_last_thread_stack_temporary): Update.
13666         * eval.c (evaluate_subexp): Update.
13667         * gdbthread.h (class enable_thread_stack_temporaries): Now a
13668         class, not a function.
13669         (value_ptr, value_vec): Remove typedefs.
13670         (class thread_info) <stack_temporaries_enabled>: Now bool.
13671         <stack_temporaries>: Now a std::vector.
13672         (thread_stack_temporaries_enabled_p)
13673         (value_in_thread_stack_temporaries): Return bool.
13674
13675 2018-03-08  Simon Marchi  <simon.marchi@ericsson.com>
13676
13677         * remote.c (putpkt_binary): Fix omitted bytes reporting.
13678         (getpkt_or_notif_sane_1): Likewise.
13679
13680 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13681
13682         * build-id.c (build_id_to_debug_bfd): Use std::string.
13683
13684 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13685
13686         * build-id.c (find_separate_debug_file_by_buildid): Return
13687         std::string.
13688         * build-id.h (find_separate_debug_file_by_buildid): Return
13689         std::string.
13690         * coffread.c (coff_symfile_read): Adjust to std::string.
13691         * elfread.c (elf_symfile_read): Adjust to std::string.
13692         * symfile.c (separate_debug_file_exists): Change parameter to
13693         std::string.
13694         (find_separate_debug_file): Return std::string.
13695         (find_separate_debug_file_by_debuglink): Return std::string.
13696         * symfile.h (find_separate_debug_file_by_debuglink): Return
13697         std::string.
13698
13699 2018-03-08  Simon Marchi  <simon.marchi@polymtl.ca>
13700
13701         * common/xml-utils.c (xml_escape_text): Move code to...
13702         (xml_escape_text_append): ... this new function.
13703         * common/xml-utils.h (xml_escape_text_append): New declaration.
13704         * unittests/xml-utils-selftests.c (test_xml_escape_text_append):
13705         New function.
13706         (_initialize_xml_utils): register test_xml_escape_text_append as
13707         a selftest.
13708
13709 2018-03-07  Alan Hayward  <alan.hayward@arm.com>
13710
13711         * defs.h: Remove MAX_REGISTER_SIZE.
13712         * regcache.c (init_regcache_descr): Remove MAX_REGISTER_SIZE
13713         asserts.
13714         * python/py-unwind.c (pyuw_sniffer): Likewise.
13715
13716 2018-03-07  Tom Tromey  <tom@tromey.com>
13717
13718         * linux-tdep.c (linux_info_proc): Update.
13719         * target.h (struct target_ops) <to_fileio_readlink>: Return
13720         optional<string>.
13721         (target_fileio_readlink): Return optional<string>.
13722         * remote.c (remote_hostio_readlink): Return optional<string>.
13723         * inf-child.c (inf_child_fileio_readlink): Return
13724         optional<string>.
13725         * target.c (target_fileio_readlink): Return optional<string>.
13726
13727 2018-03-07  Andrew Burgess  <andrew.burgess@embecosm.com>
13728
13729         * regcache.c (cooked_read_test): Add riscv to the list of
13730         architectures that have a save_reggroup.
13731
13732 2018-03-07  Andreas Arnez  <arnez@linux.vnet.ibm.com>
13733
13734         * gnu-v3-abi.c (gnuv3_rtti_type): Add early exit if the given
13735         value is not a dynamic class object.
13736
13737 2018-03-06  Tom Tromey  <tom@tromey.com>
13738
13739         * rust-exp.y: Formatting fixes.
13740
13741 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13742
13743         * riscv-tdep.c (riscv_register_name): Remove target description
13744         support.
13745         (riscv_gdbarch_init): Remove target description check.
13746
13747 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13748
13749         * riscv-tdep.c: Remove 'Contributed by ...' lines from header
13750         comment.
13751         * riscv-tdep.h: Likewise.
13752
13753 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13754
13755         * riscv-tdep.c (riscv_pseudo_register_read): Delete.
13756         (riscv_pseudo_register_write): Delete.
13757         (riscv_gdbarch_init): Remove all use of pseudo registers.
13758
13759 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13760
13761         * record-btrace.c (btrace_print_lines): Replace cleanup
13762         parameter with RAII equivalents.
13763         (btrace_insn_history): Replace cleanup with RAII equivalents.
13764         * ui-out.h (make_cleanup_ui_out_list_begin_end,
13765         make_cleanup_ui_out_tuple_begin_end): Remove.
13766         * ui-out.c (struct ui_out_end_cleanup_data, do_cleanup_end,
13767         make_cleanup_ui_out_end, make_cleanup_ui_out_tuple_begin_end,
13768         make_cleanup_ui_out_list_begin_end): Remove.
13769
13770 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13771
13772         * record-btrace.c (record_btrace_maybe_mark_async_event): Change
13773         parameter types to std::vector.  Use bool.
13774         (record_btrace_wait): Replace VEC(tp_t) with
13775         std::vector<thread_info *>.
13776         * common/gdb_vecs.h (unordered_remove, ordered_remove): New.
13777
13778 2018-03-06  Simon Marchi  <simon.marchi@polymtl.ca>
13779
13780         * record-btrace.c (record_btrace_disable_callback): Remove.
13781         (struct scoped_btrace_disable): New.
13782         (record_btrace_open): Use scoped_btrace_disable.
13783
13784 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13785
13786         * riscv-tdep.c (riscv_return_value): Change type to ULONGEST for
13787         reading values from registers.
13788
13789 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13790
13791         * riscv-tdep.c (riscv_push_dummy_call): Use core_addr_to_string_nz
13792         where appropriate.
13793
13794 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13795
13796         * riscv-tdep.c (riscv_print_arg_location): Add header comment,
13797         change parameter type.  Use GDB's print functions, and use
13798         core_addr_to_string where appropriate.
13799         (riscv_push_dummy_call): Use core_addr_to_string where
13800         appropriate, update call to riscv_print_arg_location, and reindent
13801         a few lines.
13802         (riscv_return_value): Update call to riscv_print_arg_location.
13803
13804 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13805             Tim Newsome <tim@sifive.com>
13806             Albert Ou <a0u@eecs.berkeley.edu>
13807             Darius Rad <darius@bluespec.com>
13808
13809         * Makefile.in (ALL_TARGET_OBS): Add riscv-tdep.o
13810         (HFILES_NO_SRCDIR): Add riscv-tdep.h.
13811         (ALLDEPFILES): Add riscv-tdep.c
13812         * configure.tgt: Add riscv support.
13813         * riscv-tdep.c: New file.
13814         * riscv-tdep.h: New file.
13815         * NEWS: Mention new target.
13816         * MAINTAINERS: Add entry for riscv.
13817
13818 2018-03-06  Andrew Burgess  <andrew.burgess@embecosm.com>
13819
13820         * amd64-tdep.c (amd64_classify_aggregate): Ignore zero sized
13821         fields within aggregates.
13822
13823 2018-03-04  Simon Marchi  <simon.marchi@polymtl.ca>
13824
13825         * record-btrace.c (btrace_print_lines): Change type of flags to
13826         gdb_disassembly_flags.
13827
13828 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13829
13830         * fbsd-nat.c: Include "inf-ptrace.h".
13831         (USE_SIGTRAP_SIGINFO): Conditionally define.
13832         [USE_SIGTRAP_SIGINFO] (fbsd_handle_debug_trap): New function.
13833         (fbsd_wait) [USE_SIGTRAP_SIGINFO]: Call "fbsd_handle_debug_trap".
13834         [USE_SIGTRAP_SIGINFO] (fbsd_stopped_by_sw_breakpoint): New
13835         function.
13836         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_sw_breakpoint):
13837         Likewise.
13838         [USE_SIGTRAP_SIGINFO] (fbsd_supports_stopped_by_hw_breakpoint):
13839         Likewise.
13840         (fbsd_nat_add_target) [USE_SIGTRAP_SIGINFO]: Set
13841         "stopped_by_sw_breakpoint", "supports_stopped_by_sw_breakpoint",
13842         "supports_stopped_by_hw_breakpoint" target methods.
13843
13844 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13845
13846         * NEWS (Changes since GDB 8.1): Add "set/show debug fbsd-nat".
13847         * fbsd-nat.c (debug_fbsd_nat): New variable.
13848         (show_fbsd_nat_debug): New function.
13849         (fbsd_wait): Log LWP info if "debug_fbsd_nat" is enabled.
13850         (_initialize_fbsd_nat): Add "fbsd-nat" debug boolean command.
13851
13852 2018-03-04  John Baldwin  <jhb@FreeBSD.org>
13853
13854         * nat/x86-dregs.c (x86_dr_stopped_by_hw_breakpoint): New function.
13855         * nat/x86-dregs.h (x86_dr_stopped_by_hw_breakpoint): New
13856         prototype.
13857         * x86-nat.c (x86_stopped_by_hw_breakpoint): New function.
13858         (x86_use_watchpoints): Set "stopped_by_hw_breakpoint" target
13859         method.
13860
13861 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13862
13863         * common/gdb_vecs.c (free_char_ptr_vec): Remove.
13864         * common/gdb_vecs.h (free_char_ptr_vec): Remove.
13865
13866 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13867
13868         * charset.c (struct charset_vector): New.
13869         (charsets): Change type to charset_vector.
13870         (find_charset_names): Adjust.
13871         (add_one): Adjust.
13872         (_initialize_charset): Adjust.
13873
13874 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13875
13876         * progspace.h (struct program_space) <deleted_solibs>: Change
13877         type to std::vector<std::string>.
13878         * progspace.c (clear_program_space_solib_cache): Adjust.
13879         * breakpoint.c (print_solib_event): Adjust.
13880         (check_status_catch_solib): Adjust.
13881         * solib.c (update_solib_list): Adjust.
13882         * ui-out.h (class ui_out) <field_string>: New overload.
13883         * ui-out.c (ui_out::field_string): New overload.
13884
13885 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13886
13887         * progspace.h (struct program_space): Add constructor and
13888         destructor, initialize fields.
13889         (add_program_space): Remove.
13890         * progspace.c (add_program_space): Rename to...
13891         (program_space::program_space): ... this.
13892         (release_program_space): Rename to...
13893         (program_space::~program_space): ... this.
13894         (delete_program_space): Use delete to delete program_space.
13895         (initialize_progspace): Use new to allocate program_space.
13896         * inferior.c (add_inferior_with_spaces): Likewise.
13897         (clone_inferior_command): Likewise.
13898         * infrun.c (follow_fork_inferior): Likewise.
13899         (handle_vfork_child_exec_or_exit): Likewise.
13900
13901 2018-03-02  Simon Marchi  <simon.marchi@polymtl.ca>
13902
13903         * common/gdb_vecs.h (make_cleanup_free_char_ptr_vec): Remove.
13904         (delim_string_to_char_ptr_vec): Return std::vector of
13905         gdb::unique_xmalloc_ptr.
13906         (dirnames_to_char_ptr_vec_append): Take std::vector of
13907         gdb::unique_xmalloc_ptr.
13908         (dirnames_to_char_ptr_vec): Return std::vector of
13909         gdb::unique_xmalloc_ptr.
13910         * common/gdb_vecs.c (delim_string_to_char_ptr_vec_append):
13911         Take std::vector of gdb::unique_xmalloc_ptr, adjust the code.
13912         (delim_string_to_char_ptr_vec): Return an std::vector of
13913         gdb::unique_xmalloc_ptr, adjust the code.
13914         (dirnames_to_char_ptr_vec_append): Take an std::vector of
13915         gdb::unique_xmalloc_ptr, adjust the code.
13916         (dirnames_to_char_ptr_vec): Return an std::vector of
13917         gdb::unique_xmalloc_ptr, adjust the code.
13918         * auto-load.c (auto_load_safe_path_vec): Change type to
13919         std::vector of gdb::unique_xmalloc_ptr.
13920         (auto_load_expand_dir_vars): Return an std::vector of
13921         gdb::unique_xmalloc_ptr, adjust the code.
13922         (auto_load_safe_path_vec_update): Adjust.
13923         (filename_is_in_auto_load_safe_path_vec): Adjust.
13924         (auto_load_objfile_script_1): Adjust.
13925         * build-id.c (build_id_to_debug_bfd): Adjust.
13926         * linux-thread-db.c (thread_db_load_search): Adjust.
13927         * source.c (add_path): Adjust.
13928         (openp): Adjust.
13929         * symfile.c (find_separate_debug_file): Adjust.
13930         * utils.c (do_free_char_ptr_vec): Remove.
13931         (make_cleanup_free_char_ptr_vec): Remove.
13932
13933 2018-03-01  Sergio Durigan Junior  <sergiodj@redhat.com>
13934
13935         PR gdb/22907
13936         * common/pathstuff.c: Conditionally include "<windows.h>".
13937
13938 2018-03-01  Georg Sauthoff  <mail@georg.so>
13939
13940         PR gdb/22888
13941         * gcore.in: Quote variables and switch interpreter to bash.
13942
13943 2018-03-01  Tom Tromey  <tom@tromey.com>
13944
13945         * dwarf2read.c (alloc_discriminant_info): Fix default_index
13946         assertion.  Add assertion for discriminant_index.
13947         (quirk_rust_enum): Use correct base type name in univariant case.
13948
13949 2018-03-01  Simon Marchi  <simon.marchi@ericsson.com>
13950
13951         * record.c (get_call_history_modifiers): Return a
13952         record_print_flags.
13953         (cmd_record_call_history): Adjust.
13954         * record-btrace.c (record_btrace_call_history): Adjust.
13955         (record_btrace_call_history_range): Adjust.
13956         (record_btrace_call_history_from): Adjust.
13957         * target-debug.h (target_debug_print_record_print_flags): New.
13958         * target-delegates.c: Re-generate.
13959         * target.c (target_call_history): Change flags type.
13960         (target_call_history_from): Likewise.
13961         (target_call_history_range): Likewise.
13962         * target.h (struct target_ops) <target_call_history>: Likewise.
13963         (target_call_history_from): Likewise.
13964         (target_call_history_range): Likewise.
13965
13966 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13967             Simon Marchi  <simon.marchi@polymtl.ca>
13968
13969         * common/common-utils.c: Include "sys/stat.h".
13970         (is_regular_file): Move here from "source.c"; change return
13971         type to "bool".
13972         * common/common-utils.h (is_regular_file): New prototype.
13973         * common/pathstuff.c (contains_dir_separator): New function.
13974         * common/pathstuff.h (contains_dir_separator): New prototype.
13975         * source.c: Don't include "sys/stat.h".
13976         (is_regular_file): Move to "common/common-utils.c".
13977
13978 2018-02-28  Sergio Durigan Junior  <sergiodj@redhat.com>
13979
13980         * Makefile.in (COMMON_SFILES): Add "common/pathstuff.c".
13981         (HFILES_NO_SRCDIR): Add "common/pathstuff.h".
13982         * auto-load.c: Include "common/pathstuff.h".
13983         * common/common-def.h (current_directory): Move here.
13984         * common/gdb_tilde_expand.c (gdb_tilde_expand_up): New
13985         function.
13986         * common/gdb_tilde_expand.h (gdb_tilde_expand_up): New
13987         prototype.
13988         * common/pathstuff.c: New file.
13989         * common/pathstuff.h: New file.
13990         * compile/compile.c: Include "common/pathstuff.h".
13991         * defs.h (current_directory): Move to "common/common-defs.h".
13992         * dwarf2read.c: Include "common/pathstuff.h".
13993         * exec.c: Likewise.
13994         * guile/scm-safe-call.c: Likewise.
13995         * linux-thread-db.c: Likewise.
13996         * main.c: Likewise.
13997         * nto-tdep.c: Likewise.
13998         * objfiles.c: Likewise.
13999         * source.c: Likewise.
14000         * symtab.c: Likewise.
14001         * utils.c: Include "common/pathstuff.h".
14002         (gdb_realpath): Move to "common/pathstuff.c".
14003         (gdb_realpath_keepfile): Likewise.
14004         (gdb_abspath): Likewise.
14005         * utils.h (gdb_realpath): Move to "common/pathstuff.h".
14006         (gdb_realpath_keepfile): Likewise.
14007         (gdb_abspath): Likewise.
14008
14009 2018-02-28  John Baldwin  <jhb@FreeBSD.org>
14010
14011         * fbsd-nat.c (fbsd_resume): Use PT_SETSTEP for stepping and a
14012         wildcard process pid for super_resume for kernels with a
14013         specific bug.
14014
14015 2018-02-27  Phil Muldoon  <pmuldoon@redhat.com>
14016
14017         * compile/compile.c (get_args): Add additional comments
14018         explaining function.
14019
14020 2018-02-27  Simon Marchi  <simon.marchi@polymtl.ca>
14021             Tom Tromey  <tom@tromey.com>
14022
14023         * target.h (memory_write_request_s): Remove typedef.  Don't define
14024         VEC.
14025         (target_write_memory_blocks): Change argument to std::vector.
14026         (struct memory_write_request): Add constructor.
14027         * target-memory.c (compare_block_starting_address): Return bool.
14028         Change argument types.
14029         (claim_memory): Change arguments to use std::vector.
14030         (split_regular_and_flash_blocks, blocks_to_erase)
14031         (compute_garbled_blocks): Likewise.
14032         (cleanup_request_data, cleanup_write_requests_vector): Remove.
14033         (target_write_memory_blocks): Change argument to std::vector.
14034         * symfile.c (struct load_section_data): Add constructor and
14035         destructor.  Use std::vector for "requests".
14036         (struct load_progress_data): Add initializers.
14037         (load_section_callback): Update.  Use "new".
14038         (clear_memory_write_data): Remove.
14039         (generic_load): Update.
14040
14041 2018-02-27  Alan Hayward  <alan.hayward@arm.com>
14042
14043         * arch/aarch64.h: Use common/tdesc.h.
14044
14045 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14046
14047         * mips-tdep.c (mips_gdbarch_init): Don't use a 32-bit BFD
14048         architecture with a 64-bit ABI.
14049
14050 2018-02-26  Maciej W. Rozycki  <macro@mips.com>
14051
14052         * gdb/mips-tdep.c (mips_gdbarch_init): Reorder ABI determination
14053         ahead of target description loading.
14054
14055 2018-02-26  Tom Tromey  <tom@tromey.com>
14056
14057         * stack.c (backtrace_command_1): Update.
14058         * python/python-internal.h (gdbpy_apply_frame_filter): Change type
14059         of "flags".
14060         * python/py-framefilter.c (py_print_frame)
14061         (gdbpy_apply_frame_filter): Change type of "flags".
14062         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): Change type
14063         of "flags".
14064         (mi_cmd_stack_list_frames, mi_cmd_stack_list_locals)
14065         (mi_cmd_stack_list_args, mi_cmd_stack_list_variables): Update.
14066         * extension.h (enum frame_filter_flag): Rename from
14067         frame_filter_flags.
14068         (frame_filter_flags): Define using DEF_ENUM_FLAGS_TYPE.
14069         (apply_ext_lang_frame_filter): Change type of "flags".
14070         * extension.c (apply_ext_lang_frame_filter): Change type of
14071         "flags".
14072         * extension-priv.h (struct extension_language_ops)
14073         <apply_frame_filter>: Change type of "flags".
14074
14075 2018-02-26  Tom Tromey  <tom@tromey.com>
14076
14077         PR python/16497:
14078         * stack.c (backtrace_command_1): Set PRINT_MORE_FRAMES flag.  Fix
14079         off-by-one in py_end computation.
14080         * python/py-framefilter.c (gdbpy_apply_frame_filter): Handle
14081         PRINT_MORE_FRAMES.
14082         * extension.h (enum frame_filter_flags) <PRINT_MORE_FRAMES>: New
14083         constant.
14084
14085 2018-02-26  Tom Tromey  <tom@tromey.com>
14086
14087         * dwarf2read.c (struct variant_field): New.
14088         (struct nextfield) <variant>: New field.
14089         (dwarf2_add_field): Handle DW_TAG_variant_part.
14090         (dwarf2_attach_fields_to_type): Attach a discriminant_info to a
14091         discriminated union.
14092         (read_structure_type): Handle DW_TAG_variant_part.
14093         (handle_struct_member_die): New function, extracted from
14094         process_structure_scope.  Handle DW_TAG_variant.
14095         (process_structure_scope): Handle discriminated unions.  Call
14096         handle_struct_member_die.
14097
14098 2018-02-26  Tom Tromey  <tom@tromey.com>
14099
14100         * rust-lang.h (rust_last_path_segment): Declare.
14101         * rust-lang.c (rust_last_path_segment): Now public.  Change
14102         contract.
14103         (struct disr_info): Remove.
14104         (RUST_ENUM_PREFIX, RUST_ENCODED_ENUM_REAL)
14105         (RUST_ENCODED_ENUM_HIDDEN, rust_union_is_untagged)
14106         (rust_get_disr_info, rust_tuple_variant_type_p): Remove.
14107         (rust_enum_p, rust_enum_variant): New function.
14108         (rust_underscore_fields): Remove "offset" parameter.
14109         (rust_print_enum): New function.
14110         (rust_val_print) <TYPE_CODE_UNION>: Remove enum code.
14111         <TYPE_CODE_STRUCT>: Call rust_print_enum when appropriate.
14112         (rust_print_struct_def): Add "for_rust_enum" parameter.  Handle
14113         enums.
14114         (rust_internal_print_type): New function, from rust_print_type.
14115         Remove enum code.
14116         (rust_print_type): Call rust_internal_print_type.
14117         (rust_evaluate_subexp) <STRUCTOP_ANONYMOUS, STRUCTOP_STRUCT>:
14118         Update enum handling.
14119         * dwarf2read.c (struct dwarf2_cu) <rust_unions>: New field.
14120         (rust_fully_qualify, alloc_discriminant_info, quirk_rust_enum)
14121         (rust_union_quirks): New functions.
14122         (process_full_comp_unit, process_full_type_unit): Call
14123         rust_union_quirks.
14124         (process_structure_scope): Update rust_unions if necessary.
14125
14126 2018-02-26  Tom Tromey  <tom@tromey.com>
14127
14128         * value.h (value_union_variant): Declare.
14129         * valops.c (value_union_variant): New function.
14130         * gdbtypes.h (TYPE_FLAG_DISCRIMINATED_UNION): New macro.
14131         (struct discriminant_info): New.
14132         (enum dynamic_prop_node_kind) <DYN_PROP_DISCRIMINATED>: New
14133         enumerator.
14134         (struct main_type) <flag_discriminated_union>: New field.
14135
14136 2018-02-26  Tom Tromey  <tom@tromey.com>
14137
14138         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14139         unittests/unpack-selftests.c.
14140         * unittests/unpack-selftests.c: New file.
14141         * value.c (unpack_bits_as_long): Fix bugs in non-bitfield cases.
14142
14143 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14144
14145         * dwarf2read.c (struct partial_die_info) <read>: New method.
14146         (read_partial_die): Remove the declaration.
14147         (load_partial_dies): Update.
14148         (partial_die_info::partial_die_info):
14149         (read_partial_die): Change it to partial_die_info::read.
14150
14151 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14152
14153         * dwarf2read.c (struct partial_die_info) <fixup>: New method.
14154         (fixup_partial_die): Remove declaration.
14155         (scan_partial_symbols): Update.
14156         (partial_die_parent_scope): Likewise.
14157         (partial_die_full_name): Likewise.
14158         (fixup_partial_die): Change it to partial_die_info::fixup.
14159
14160 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14161
14162         * dwarf2read.c (read_partial_die): Update the declaration.
14163         (load_partial_dies): Caller update.
14164         (read_partial_die): Remove one argument abbrev_len.
14165
14166 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14167
14168         * dwarf2read.c (struct partial_die_info): Add ctor, delete
14169         assignment operator.
14170         (load_partial_dies): Use ctor and copy ctor.
14171         (read_partial_die): Update.
14172         (dwarf2_cu::find_partial_die): Use ctor.
14173
14174 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14175
14176         * dwarf2read.c (struct dwarf2_cu) <find_partial_die>: New method.
14177         (find_partial_die_in_comp_unit): Change it to
14178         dwarf2_cu::find_partial_die.
14179         (find_partial_die): Update.
14180
14181 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14182
14183         * dwarf2read.c (read_partial_die): Remove the code checking abbrev
14184         is NULL.
14185
14186 2018-02-26  Yao Qi  <yao.qi@linaro.org>
14187
14188         * dwarf2read.c (load_partial_dies): Move the location of XOBNEW.
14189
14190 2018-02-26  Alan Hayward  <alan.hayward@arm.com>
14191
14192         * arch/amd64.h: Use common/tdesc.h.
14193         * arch/i386.c: Likewise.
14194         * arch/i386.h: Likewise.
14195         * arch/tic6x.c: Likewise.
14196         * arch/tdesc.h: Move file from here...
14197         * common/tdesc.h: ...to here.
14198         * features/aarch64-core.c: Regenerate.
14199         * features/aarch64-fpu.c: Regenerate.
14200         * features/i386/32bit-avx.c: Regenerate.
14201         * features/i386/32bit-avx512.c: Regenerate.
14202         * features/i386/32bit-core.c: Regenerate.
14203         * features/i386/32bit-linux.c: Regenerate.
14204         * features/i386/32bit-mpx.c: Regenerate.
14205         * features/i386/32bit-pkeys.c: Regenerate.
14206         * features/i386/32bit-sse.c: Regenerate.
14207         * features/i386/64bit-avx.c: Regenerate.
14208         * features/i386/64bit-avx512.c: Regenerate.
14209         * features/i386/64bit-core.c: Regenerate.
14210         * features/i386/64bit-linux.c: Regenerate.
14211         * features/i386/64bit-mpx.c: Regenerate.
14212         * features/i386/64bit-pkeys.c: Regenerate.
14213         * features/i386/64bit-segments.c: Regenerate.
14214         * features/i386/64bit-sse.c: Regenerate.
14215         * features/i386/x32-core.c: Regenerate.
14216         * features/tic6x-c6xp.c: Regenerate.
14217         * features/tic6x-core.c: Regenerate.
14218         * features/tic6x-gp.c: Regenerate.
14219         * target-descriptions.c: Use common/tdesc.h.
14220         * target-descriptions.h: Likewise.
14221
14222 2018-02-24  Tom Tromey  <tom@tromey.com>
14223
14224         * linux-thread-db.c (try_thread_db_load_from_pdir_1)
14225         (try_thread_db_load_from_dir, thread_db_load_search): Use
14226         std::string.
14227         (info_auto_load_libthread_db_compare): Return bool.  Change
14228         argument types.
14229         (info_auto_load_libthread_db): Use std::vector, std::string.
14230         Remove cleanups.
14231
14232 2018-02-24  Tom Tromey  <tom@tromey.com>
14233
14234         * i386-tdep.c (i386_fast_tracepoint_valid_at): "msg" now a
14235         std::string.
14236         * gdbarch.sh (fast_tracepoint_valid_at): Change "msg" to a
14237         std::string*.
14238         * gdbarch.c: Rebuild.
14239         * gdbarch.h: Rebuild.
14240         * breakpoint.c (check_fast_tracepoint_sals): Use std::string.
14241         * arch-utils.h (default_fast_tracepoint_valid_at): Update.
14242         * arch-utils.c (default_fast_tracepoint_valid_at): "msg" now a
14243         std::string*.
14244
14245 2018-02-23  Simon Marchi  <simon.marchi@polymtl.ca>
14246
14247         * gdbtypes.h (sect_offset): Change type to uint64_t.
14248         (sect_offset_str): New function.
14249         * dwarf2read.c (create_addrmap_from_aranges): Use
14250         sect_offset_str.
14251         (error_check_comp_unit_head): Likewise.
14252         (create_debug_type_hash_table): Likewise.
14253         (read_cutu_die_from_dwo): Likewise.
14254         (init_cutu_and_read_dies): Likewise.
14255         (init_cutu_and_read_dies_no_follow): Likewise.
14256         (process_psymtab_comp_unit_reader): Likewise.
14257         (partial_die_parent_scope): Likewise.
14258         (peek_die_abbrev): Likewise.
14259         (process_queue): Likewise.
14260         (dwarf2_physname): Likewise.
14261         (read_namespace_alias): Likewise.
14262         (read_import_statement): Likewise.
14263         (create_dwo_cu_reader): Likewise.
14264         (create_cus_hash_table): Likewise.
14265         (lookup_dwo_cutu): Likewise.
14266         (inherit_abstract_dies): Likewise.
14267         (read_func_scope): Likewise.
14268         (read_call_site_scope): Likewise.
14269         (dwarf2_add_member_fn): Likewise.
14270         (read_common_block): Likewise.
14271         (read_module_type): Likewise.
14272         (read_typedef): Likewise.
14273         (read_subrange_type): Likewise.
14274         (load_partial_dies): Likewise.
14275         (read_partial_die): Likewise.
14276         (find_partial_die): Likewise.
14277         (read_str_index): Likewise.
14278         (dwarf2_string_attr): Likewise.
14279         (build_error_marker_type): Likewise.
14280         (lookup_die_type): Likewise.
14281         (dump_die_shallow): Likewise.
14282         (follow_die_ref): Likewise.
14283         (dwarf2_fetch_die_loc_sect_off): Likewise.
14284         (dwarf2_fetch_constant_bytes): Likewise.
14285         (follow_die_sig): Likewise.
14286         (get_signatured_type): Likewise.
14287         (get_DW_AT_signature_type): Likewise.
14288         (dwarf2_find_containing_comp_unit): Likewise.
14289         (set_die_type): Likewise.
14290
14291 2018-02-21  John Baldwin  <jhb@FreeBSD.org>
14292
14293         * arch/aarch64.c: Include "common-defs.h".
14294         * arch/amd64.c: Likewise.
14295         * arch/i386.c: Likewise.
14296
14297 2018-02-21  Tom Tromey  <tom@tromey.com>
14298
14299         * value.h: (extract_field_op): Update.
14300         * eval.c (extract_field_op): Return a const char *.
14301         * expression.h (parse_expression_for_completion): Update.
14302         * completer.c (complete_expression): Update.
14303         (add_struct_fields): Make fieldname const.
14304         * parse.c (expout_completion_name): Now a unique_xmalloc_ptr.
14305         (mark_completion_tag, parse_exp_in_context_1): Update.
14306         (parse_expression_for_completion): Change "name" to
14307         unique_xmalloc_ptr*.
14308
14309 2018-02-21  Tom Tromey  <tom@tromey.com>
14310
14311         * infcall.c (call_function_by_hand_dummy): Use std::vector.
14312
14313 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14314
14315         * avr-tdep.c (avr_read_pc): Change parameter type to
14316         readable_regcache.
14317         * gdbarch.sh (read_pc): Likewise.
14318         * gdbarch.c: Re-generated.
14319         * gdbarch.h: Re-generated.
14320         * hppa-tdep.c (hppa_read_pc): Change parameter type to
14321         readable_regcache.
14322         * ia64-tdep.c (ia64_read_pc): Likewise.
14323         * mips-tdep.c (mips_read_pc): Likewise.
14324         * spu-tdep.c (spu_read_pc): Likewise.
14325
14326 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14327
14328         * Makefile.in (COMMON_SFILES): Add regcache-dump.c
14329         * regcache-dump.c: New file.
14330         * regcache.c: Move register_dump to regcache-dump.c.
14331         (maintenance_print_registers): Likewise.
14332         (maintenance_print_raw_registers): Likewise.
14333         (maintenance_print_cooked_registers): Likewise.
14334         (maintenance_print_register_groups): Likewise.
14335         (maintenance_print_remote_registers): Likewise.
14336         (_initialize_regcache): Likewise.
14337         * regcache.h (register_dump): Moved from regcache.c.
14338
14339 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14340
14341         * regcache.c (regcache::regcache): Update.
14342         (regcache::invalidate): Move it to detached_regcache::invalidate.
14343         (get_thread_arch_aspace_regcache): Update.
14344         (regcache::raw_update): Update.
14345         (regcache::cooked_read): Remove some code.
14346         (regcache::cooked_read_value): Likewise.
14347         (regcache::raw_write): Remove assert on m_readonly_p.
14348         (regcache::raw_supply_integer): Move it to
14349         detached_regcache::raw_supply_integer.
14350         (regcache::raw_supply_zeroed): Likewise.
14351         * regcache.h (detached_regcache) <raw_supply_integer>: New
14352         declaration.
14353         <raw_supply_zeroed, invalidate>: Likewise.
14354         (regcache) <raw_supply_integer, raw_supply_zeroed>: Removed.
14355         <invalidate>: Likewise.
14356         <m_readonly_p>: Removed.
14357
14358 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14359
14360         * infcmd.c (get_return_value): Let stop_regs point to
14361         get_current_regcache.
14362         * regcache.c (regcache::regcache): Remove.
14363         (register_dump_reg_buffer): New class.
14364         (regcache_print): Adjust.
14365         * regcache.h (regcache): Remove constructors.
14366
14367 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14368
14369         * regcache.c (class register_dump): New class.
14370         (register_dump_regcache, register_dump_none): New class.
14371         (register_dump_remote, register_dump_groups): New class.
14372         (regcache_print): Update.
14373         * regcache.h (regcache_dump_what): Move it to regcache.c.
14374         (regcache) <dump>: Remove.
14375
14376 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14377
14378         * jit.c (struct jit_unwind_private) <regcache>: Change its type to
14379          reg_buffer_rw *.
14380         (jit_unwind_reg_set_impl): Call raw_supply.
14381         (jit_frame_sniffer): Use reg_buffer_rw.
14382         * record-full.c (record_full_core_regbuf): Change its type.
14383         (record_full_core_open_1): Use reg_buffer_rw.
14384         (record_full_close): Likewise.
14385         (record_full_core_fetch_registers): Use regcache->raw_supply.
14386         (record_full_core_store_registers): Likewise.
14387         * regcache.c (regcache::get_register_status): Move it to
14388         reg_buffer.
14389         (regcache_raw_set_cached_value): Remove.
14390         (regcache::raw_set_cached_value): Remove.
14391         (regcache::raw_write): Call raw_supply.
14392         (regcache::raw_supply): Move it to reg_buffer_rw.
14393         * regcache.h (regcache_raw_set_cached_value): Remove.
14394         (reg_buffer_rw): New class.
14395
14396 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14397
14398         * dummy-frame.c (dummy_frame_cache) <prev_regcache>: Use
14399         readonly_detached_regcache.
14400         (dummy_frame_prev_register): Use regcache->cooked_read.
14401         * frame.c (frame_save_as_regcache): Change return type.
14402         (frame_pop): Update.
14403         * frame.h (frame_save_as_regcache): Update declaration.
14404         * inferior.h (get_infcall_suspend_state_regcache): Update
14405         declaration.
14406         * infrun.c (infcall_suspend_state) <registers>: use
14407         readonly_detached_regcache.
14408         (save_infcall_suspend_state): Don't use regcache_dup.
14409         (get_infcall_suspend_state_regcache): Change return type.
14410         * linux-fork.c (struct fork_info) <savedregs>: Change to
14411         readonly_detached_regcache.
14412         <pc>: New field.
14413         (fork_save_infrun_state): Don't use regcache_dup.
14414         (info_checkpoints_command): Adjust.
14415         * mi/mi-main.c (register_changed_p): Update declaration.
14416         (mi_cmd_data_list_changed_registers): Use
14417         readonly_detached_regcache.
14418         (register_changed_p): Change parameter type to
14419         readonly_detached_regcache.
14420         * ppc-linux-tdep.c (ppu2spu_cache) <regcache>: Use
14421         readonly_detached_regcache.
14422         (ppu2spu_sniffer): Construct a new readonly_detached_regcache.
14423         * regcache.c (readonly_detached_regcache::readonly_detached_regcache):
14424         New.
14425         (regcache::save): Move it to reg_buffer.
14426         (regcache::restore): Change parameter type.
14427         (regcache_dup): Remove.
14428         * regcache.h (reg_buffer) <save>: New method.
14429         (readonly_detached_regcache): New class.
14430         * spu-tdep.c (spu2ppu_cache) <regcache>: Use
14431         readonly_detached_regcache.
14432         (spu2ppu_sniffer): Construct a new readonly_detached_regcache.
14433
14434 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14435
14436         * frame.c (frame_save_as_regcache): Use regcache method save.
14437         (frame_pop): Use regcache method restore.
14438         * infrun.c (restore_infcall_suspend_state): Likewise.
14439         * linux-fork.c (fork_load_infrun_state): Likewise.
14440         * ppc-linux-tdep.c (ppu2spu_sniffer): User regcache method
14441         save.
14442         * regcache.c (regcache_save): Remove.
14443         (regcache::restore): More asserts.
14444         (regcache_cpy): Remove.
14445         * regcache.h (regcache_save): Remove the declaration.
14446         (regcache::restore): Move from private to public.
14447         Remove the friend declaration of regcache_cpy.
14448         (regcache_cpy): Remove declaration.
14449
14450 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14451
14452         * aarch64-tdep.c (aarch64_pseudo_register_read_value): Change
14453         parameter type to 'readable_regcache *'.
14454         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
14455         * arm-tdep.c (arm_neon_quad_read): Likewise.
14456         (arm_pseudo_read): Likewise.
14457         * avr-tdep.c (avr_pseudo_register_read): Likewise.
14458         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
14459         * frv-tdep.c (frv_pseudo_register_read): Likewise.
14460         * gdbarch.c: Re-generated.
14461         * gdbarch.h: Re-generated.
14462         * gdbarch.sh (pseudo_register_read): Change parameter type to
14463         'readable_regcache *'.
14464         (pseudo_register_read_value): Likewise.
14465         * h8300-tdep.c (pseudo_from_raw_register): Likewise.
14466         (h8300_pseudo_register_read): Likewise.
14467         * hppa-tdep.c (hppa_pseudo_register_read): Likewise.
14468         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
14469         (i386_pseudo_register_read_into_value): Likewise.
14470         (i386_pseudo_register_read_value): Likewise.
14471         * i386-tdep.h (i386_pseudo_register_read_into_value): Update
14472         declaration.
14473         * ia64-tdep.c (ia64_pseudo_register_read): Likewise.
14474         * m32c-tdep.c (m32c_raw_read): Likewise.
14475         (m32c_read_flg): Likewise.
14476         (m32c_banked_register): Likewise.
14477         (m32c_banked_read): Likewise.
14478         (m32c_sb_read): Likewise.
14479         (m32c_part_read): Likewise.
14480         (m32c_cat_read): Likewise.
14481         (m32c_r3r2r1r0_read): Likewise.
14482         (m32c_pseudo_register_read): Likewise.
14483         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
14484         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
14485         (mep_pseudo_cr64_read): Likewise.
14486         (mep_pseudo_register_read): Likewise.
14487         * mips-tdep.c (mips_pseudo_register_read): Likewise.
14488         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
14489         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
14490         * regcache.c (regcache::raw_read): Move it to readable_regcache.
14491         (regcache::cooked_read): Likewise.
14492         (regcache::cooked_read_value): Likewise.
14493         (regcache_cooked_read_signed):
14494         (regcache::cooked_read): Likewise.
14495         * regcache.h (readable_regcache): New class.
14496         (regcache): Inherit readable_regcache.  Move some methods to
14497         readable_regcache.
14498         * rl78-tdep.c (rl78_pseudo_register_read): Change
14499         parameter type to 'readable_regcache *'.
14500         * rs6000-tdep.c (do_regcache_raw_read): Remove.
14501         (e500_pseudo_register_read): Change parameter type to
14502         'readable_regcache *'.
14503         (dfp_pseudo_register_read): Likewise.
14504         (vsx_pseudo_register_read): Likewise.
14505         (efpr_pseudo_register_read): Likewise.
14506         * s390-tdep.c (s390_pseudo_register_read): Likewise.
14507         * sh-tdep.c (sh_pseudo_register_read): Likewise.
14508         * sh64-tdep.c (pseudo_register_read_portions): Likewise.
14509         (sh64_pseudo_register_read): Likewise.
14510         * sparc-tdep.c (sparc32_pseudo_register_read): Likewise.
14511         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
14512         * spu-tdep.c (spu_pseudo_register_read_spu): Likewise.
14513         (spu_pseudo_register_read): Likewise.
14514         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
14515         (xtensa_pseudo_register_read): Likewise.
14516
14517 2018-02-21  Yao Qi  <yao.qi@linaro.org>
14518
14519         * regcache.c (regcache::regcache): Call reg_buffer ctor.
14520         (regcache::arch): Move it to reg_buffer::arch.
14521         (regcache::register_buffer): Likewise.
14522         (regcache::assert_regnum): Likewise.
14523         (regcache::num_raw_registers): Likewise.
14524         * regcache.h (reg_buffer): New class.
14525         (regcache): Inherit reg_buffer.
14526
14527 2018-02-20  Simon Marchi  <simon.marchi@ericsson.com>
14528
14529         * remote-sim.c (gdb_os_printf_filtered, gdb_os_vprintf_filtered,
14530         gdb_os_evprintf_filtered, gdb_os_error): Add ATTRIBUTE_PRINTF.
14531
14532 2018-02-20  Markus Metzger  <markus.t.metzger@intel.com>
14533
14534         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add mkstemp.
14535
14536 2018-02-19  Alan Hayward  <alan.hayward@arm.com>
14537
14538         * Makefile.in: (COMMON_SFILES): Add common/*.c files.
14539         (SFILES): Remove common/*.c files.
14540         (COMMON_OBS): Remove some *.o files built from common/*.c files.
14541         * common/common.host: Add common reference.
14542         * configure.ac: Likewise.
14543         * configure: Regenerate.
14544
14545 2018-02-16  Yao Qi  <yao.qi@linaro.org>
14546
14547         * block.c (block_namespace_info): Inherit allocate_on_obstack.
14548         (block_initialize_namespace): Use new.
14549         * dwarf2read.c (dwarf2_per_objfile): Inherit allocate_on_obstack.
14550         (dwarf2_free_objfile): Use delete.
14551         * gdbtypes.c (type_pair): Inherit allocate_on_obstack.
14552         (copy_type_recursive): Use new.
14553         * gdb_obstack.h (allocate_on_obstack): New.
14554
14555 2018-02-15  Yao Qi  <yao.qi@linaro.org>
14556
14557         PR gdb/22849
14558         * inferior.c (exit_inferior_1): Reset inf->control.
14559
14560 2018-02-15  Joel Brobecker  <brobecker@adacore.com>
14561
14562         * ada-lang.c (ada_to_fixed_value_create): Delete advance
14563         declaration.
14564
14565 2018-02-14  Pedro Alves  <palves@redhat.com>
14566
14567         * frame-unwind.c (frame_unwind_try_unwinder): Always call
14568         frame_cleanup_after_sniffer on exception.
14569
14570 2018-02-14  Tom Tromey  <tom@tromey.com>
14571
14572         * solist.h (struct target_so_ops) <bfd_open>: Make pathname
14573         const.
14574         (solib_bfd_open): Make pathname const.
14575         * solib.c (solib_bfd_open): Make pathname const.
14576         * solib-spu.c (spu_bfd_fopen): Make name const.
14577         (spu_bfd_open): Make pathname const.
14578         * solib-darwin.c (darwin_bfd_open): Make pathname const.
14579         * solib-aix.c (solib_aix_bfd_open): Make pathname const.
14580
14581 2018-02-14  Tom Tromey  <tom@tromey.com>
14582
14583         * symfile.c (symfile_bfd_open): Update.
14584         * source.h (openp, source_full_path_of, find_and_open_source):
14585         Change argument type to unique_xmalloc_ptr.
14586         * source.c (openp): Take a unique_xmalloc_ptr.
14587         (source_full_path_of, find_and_open_source): Likewise.
14588         (open_source_file, symtab_to_fullname): Update.
14589         * solist.h (struct target_so_ops) <find_and_open_solib>: Take a
14590         unique_xmalloc_ptr.
14591         * solib.c (solib_find_1): Use unique_xmalloc_ptr.
14592         (exec_file_find): Update.
14593         * psymtab.c (psymtab_to_fullname): Update.
14594         * nto-tdep.h (nto_find_and_open_solib): Update.
14595         * nto-tdep.c (nto_find_and_open_solib): Change temp_path to a
14596         unique_xmalloc_ptr.
14597         * exec.c (exec_file_attach): Update.
14598         * dwarf2read.c (try_open_dwop_file): Use unique_xmalloc_ptr.
14599         * cli/cli-cmds.c (find_and_open_script): Use unique_xmalloc_ptr.
14600
14601 2018-02-14  Tom Tromey  <tom@tromey.com>
14602
14603         * solib.c: Include source.h.
14604         * nto-tdep.c: Include source.h.
14605         * mi/mi-cmd-env.c: Include source.h.
14606         * infcmd.c: Include source.h.
14607         * exec.c: Include source.h.
14608         * defs.h (enum openp_flag, openp, source_full_path_of, mod_path)
14609         (add_path, directory_switch, source_path, init_source_path): Move
14610         declarations...
14611         * source.h (enum openp_flag, openp, source_full_path_of, mod_path)
14612         (add_path, directory_switch, source_path, init_source_path):
14613         ...here.
14614
14615 2018-02-14  Tom Tromey  <tom@tromey.com>
14616
14617         * solist.h (exec_file_find, solib_find): Return
14618         unique_xmalloc_ptr.
14619         (solib_bfd_fopen): Take a const char *.
14620         * solib.c (solib_find_1): Return unique_xmalloc_ptr.
14621         (exec_file_find, solib_find): Likewise.
14622         (solib_bfd_fopen): Do not take ownership of "pathname".
14623         (solib_bfd_open): Use unique_xmalloc_ptr.
14624         * solib-darwin.c (darwin_bfd_open): Use unique_xmalloc_ptr.
14625         * solib-aix.c (solib_aix_bfd_open): Use unique_xmalloc_ptr.
14626         * infrun.c (follow_exec): Use unique_xmalloc_ptr.
14627         * exec.c (exec_file_locate_attach): Use unique_xmalloc_ptr.
14628
14629 2018-02-14  Joel Brobecker  <brobecker@adacore.com>
14630
14631         * ada-lang.c (name_match_type_from_name): Remove reference to
14632         ada_name_for_lookup in function's documentation.
14633         * ada-lang.h (ada_name_for_lookup): Delete declaration.
14634
14635 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14636
14637         * defs.h (enum openp_flags): New enum.
14638         (OPF_TRY_CWD_FIRST, OPF_SEARCH_IN_PATH, OPF_RETURN_REALPATH):
14639         Move to enum openp_flags.
14640         (openp_flags): New enum flags.
14641         (openp): Change parameter type to openp_flags.
14642         * source.c (openp): Change parameter type to openp_flags.
14643         * cli/cli-cmds.c (find_and_open_script): Use openp_flags.
14644         * dwarf2read.c (try_open_dwop_file): Use openp_flags.
14645
14646 2018-02-13  Simon Marchi  <simon.marchi@polymtl.ca>
14647
14648         * maint.c (_initialize_maint_cmds): Fix prefix of maint set/show
14649         per-command.
14650
14651 2018-02-12  Andrew Burgess  <andrew.burgess@embecosm.com>
14652
14653         * dwarf2read.c (dwarf2_release_queue): Delete function, move body
14654         into...
14655         (class dwarf2_queue_guard): ...the destructor of this new class.
14656         (dw2_do_instantiate_symtab): Create instance of the new class
14657         dwarf2_queue_guard, remove cleanup.
14658
14659 2018-02-09  Tom Tromey  <tom@tromey.com>
14660
14661         * source.c (find_source_lines): Don't reference past the end of
14662         the vector.
14663
14664 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14665
14666         * remote.c (remote_btrace_maybe_reopen): Change error message.
14667         * btrace.c (btrace_enable): Likewise.
14668         (parse_xml_btrace): Likewise.
14669         (parse_xml_btrace_conf): Likewise.
14670
14671 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14672
14673         * nat/linux-btrace.c (diagnose_perf_event_open_fail): New.
14674         (linux_enable_pt, linux_enable_bts): Call
14675         diagnose_perf_event_open_fail.
14676
14677 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14678
14679         * nat/linux-btrace.c (perf_event_pt_event_type): Improve error message.
14680         Remove parameter and change return type.  Update callers.  Move it.
14681         (linux_enable_bts, linux_enable_pt): Improve error message.
14682         (linux_enable_pt): Remove zero buffer size check.
14683         (linux_enable_btrace): Improve error messages.  Remove NULL return
14684         check.
14685
14686 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14687
14688         * btrace.c (btrace_enable): Remove target_supports_btrace call.
14689         * nat/linux-btrace.c (perf_event_pt_event_type): Move.
14690         (kernel_supports_bts, kernel_supports_pt, linux_supports_bts)
14691         (linux_supports_pt, linux_supports_btrace): Remove.
14692         (linux_enable_bts): Call cpu_supports_bts.
14693         * nat/linux-btrace.h (linux_supports_btrace): Remove.
14694         * remote.c (remote_supports_btrace): Remove.
14695         (init_remote_ops): Remove remote_supports_btrace.
14696         * target-delegates.c: Regenerated.
14697         * target.c (target_supports_btrace): Remove.
14698         * target.h (target_ops) <to_supports_btrace>: Remove
14699         (target_supports_btrace): Remove.
14700         * x86-linux-nat.c (x86_linux_create_target): Remove
14701         linux_supports_btrace.
14702
14703 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14704
14705         * nat/linux-btrace.c (linux_enable_btrace): Throw exception if enabling
14706         btrace failed.
14707         * x86-linux-nat.c (x86_linux_enable_btrace): Catch btrace enabling
14708         exception and use message in own exception.
14709
14710 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14711
14712         * nat/linux-btrace.c: Include scoped_fd.h and scoped_mmap.h.
14713         (perf_event_pt_event_type): Use gdb_file_up.
14714         (linux_enable_bts, linux_enable_pt): Use gdb::unique_xmalloc_ptr,
14715         scoped_fd, and scoped_mmap.
14716
14717 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14718
14719         * common/scoped_mmap.h: New.
14720         * unittests/scoped_mmap-selftest.c: New.
14721         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14722         unittests/scoped_mmap-selftest.c.
14723
14724 2018-02-09  Markus Metzger  <markus.t.metzger@intel.com>
14725
14726         * common/scoped_fd.h: New.
14727         * unittests/scoped_fd-selftest.c: New.
14728         * Makefile.in (SUBDIR_UNITTESTS_SRCS): Add
14729         unittests/scoped_fd-selftest.c.
14730
14731 2018-02-09  Tom Tromey  <tom@tromey.com>
14732
14733         * auto-load.c (auto_load_section_scripts): Use
14734         gdb::unique_xmalloc_ptr.
14735
14736 2018-02-09  Tom Tromey  <tom@tromey.com>
14737
14738         * auto-load.c (execute_script_contents): Use std::string.
14739
14740 2018-02-09  Joel Brobecker  <brobecker@adacore.com>
14741
14742         * NEWS <Changes in GDB 8.1>: Clarify that "rbreak" is a new
14743         Python function, rather than a new command.
14744
14745 2018-02-08  Tom Tromey  <tom@tromey.com>
14746
14747         * solib.c (solib_find_1): Use std::string.
14748         (solib_bfd_fopen): Use unique_xmalloc_ptr.
14749
14750 2018-02-08  Tom Tromey  <tom@tromey.com>
14751
14752         * build-id.c (build_id_to_debug_bfd): Use unique_xmalloc_ptr.
14753
14754 2018-02-08  Tom Tromey  <tom@tromey.com>
14755
14756         * source.c (find_source_lines): Use gdb::def_vector.
14757
14758 2018-02-08  Tom Tromey  <tom@tromey.com>
14759
14760         * macrocmd.c (struct temporary_macro_definition): New.
14761         (macro_define_command): Use temporary_macro_definition.  Remove
14762         cleanups.
14763         (free_macro_definition_ptr): Remove.
14764
14765 2018-02-08  Tom Tromey  <tom@tromey.com>
14766
14767         * macroexp.c (maybe_expand): Use std::string.
14768
14769 2018-02-08  Tom Tromey  <tom@tromey.com>
14770
14771         * macroexp.c (struct macro_buffer): Add initializers for some
14772         members.
14773         (init_buffer, init_shared_buffer, free_buffer)
14774         (free_buffer_return_text): Remove.
14775         (macro_buffer): New constructors.
14776         (~macro_buffer): New destructor.
14777         (macro_buffer::set_shared): New method.
14778         (macro_buffer::resize_buffer, macro_buffer::appendc)
14779         (macro_buffer::appendmem): Now methods, not free functions.
14780         (set_token, append_tokens_without_splicing, stringify)
14781         (macro_stringify): Update.
14782         (gather_arguments): Change return type.  Remove argc_p argument,
14783         add args_ptr argument.  Use std::vector.
14784         (substitute_args): Remove argc argument.  Accept std::vector.
14785         (expand): Update.  Use std::vector.
14786         (scan, macro_expand, macro_expand_next): Update.
14787
14788 2018-02-08  Tom Tromey  <tom@tromey.com>
14789
14790         * symtab.c (default_collect_symbol_completion_matches_break_on):
14791         Use unique_xmalloc_ptr.
14792         * macroscope.h: (sal_macro_scope, user_macro_scope)
14793         (default_macro_scope): Return unique_xmalloc_ptr.
14794         * macroscope.c (sal_macro_scope, user_macro_scope)
14795         (default_macro_scope): Return unique_xmalloc_ptr.
14796         * macroexp.h (macro_expand, macro_expand_once): Return
14797         unique_xmalloc_ptr.
14798         * macroexp.c (macro_expand, macro_expand_once): Return
14799         unique_xmalloc_ptr.
14800         * macrocmd.c (macro_expand_command, macro_expand_once_command)
14801         (info_macro_command, info_macros_command): Use
14802         unique_xmalloc_ptr.
14803         * compile/compile-c-support.c (write_macro_definitions): Use
14804         unique_xmalloc_ptr.
14805         * c-exp.y (c_parse): Use unique_xmalloc_ptr.
14806
14807 2018-02-07  Simon Marchi  <simon.marchi@ericsson.com>
14808
14809         * value.c (value_static_field): Assign field type instead of
14810         containing type when returning an optimized out value.
14811
14812 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14813
14814         * ft32-tdep.c (ft32_read_pc): Remove.
14815         (ft32_write_pc): Remove.
14816         (ft32_gdbarch_init): Update.
14817         * m32r-tdep.c (m32r_read_pc): Remove.
14818         (m32r_gdbarch_init): Update.
14819         * mep-tdep.c (mep_read_pc): Remove.
14820         (mep_gdbarch_init): Update.
14821         * microblaze-tdep.c (microblaze_write_pc): Remove.
14822         (microblaze_gdbarch_init): Update.
14823         * mn10300-tdep.c (mn10300_read_pc): Remove.
14824         (mn10300_write_pc): Remove.
14825         (mn10300_gdbarch_init): Update.
14826         * moxie-tdep.c (moxie_read_pc): Remove.
14827         (moxie_write_pc): Remove.
14828         (moxie_gdbarch_init): Update.
14829
14830 2018-02-06  Yao Qi  <yao.qi@linaro.org>
14831
14832         * expprint.c (print_subexp_standard): Handle
14833         OP_F77_UNDETERMINED_ARGLIST.
14834         (dump_subexp_body_standard): Likewise.
14835
14836 2018-02-05  Alan Hayward  <alan.hayward@arm.com>
14837
14838         * target-descriptions.c (tdesc_element_visitor) Add empty
14839         implementations.
14840         (tdesc_type): Move make_gdb_type from here.
14841         (tdesc_type_builtin): Likewise.
14842         (tdesc_type_vector): Likewise.
14843         (tdesc_type_with_fields): Move make_gdb_type_ functions from here.
14844         (make_gdb_type_struct): Move from tdesc_type_with_fields.
14845         (make_gdb_type_union): Likewise.
14846         (make_gdb_type_flags): Likewise.
14847         (make_gdb_type_enum): Likewise.
14848         (make_gdb_type): New function.
14849         (tdesc_register_type): Use static make_gdb_type.
14850
14851 2018-02-05  Ruslan Kabatsayev <b7.10110111@gmail.com>
14852
14853         * infcmd.c (default_print_one_register_info): Align natural-format
14854         column values consistently one under another.
14855         (pad_to_column): New function.
14856
14857 2018-02-05  Joel Brobecker  <brobecker@adacore.com>
14858
14859         * dwarf2read.c (dwarf2_physname): Move commment.
14860
14861 2018-02-01  Leszek Swirski  <leszeks@google.com>
14862
14863         * varobj.c (varobj_formatted_print_options): Allow recursive
14864         pretty printing if pretty printing is enabled.
14865
14866 2018-02-01  Leszek Swirski  <leszeks@google.com>
14867
14868         * c-exp.y (lex_one_token, classify_name, yylex): Don't classify
14869         names after a structop as a filename.
14870
14871 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14872
14873         * arm-tdep.c (arm_record_data_proc_misc_ld_str): Rewrite it.
14874         (arm_record_coproc_data_proc): Likewise.
14875
14876 2018-02-01  Yao Qi  <yao.qi@linaro.org>
14877
14878         * arm-tdep.c (arm_record_extension_space): Change ret to signed.
14879
14880 2018-01-31  Nikola Prica  <nikola.prica@rt-rk.com>
14881
14882         * rs6000-tdep.c (skip_prologue): Remove shifting for lr_reg and
14883         assign shifted lr_reg to fdata->lr_register when lr_reg is set.
14884
14885 2018-01-31  Pedro Alves  <palves@redhat.com>
14886
14887         * darwin-nat.c (darwin_interrupt): Remove ptid_t parameter.
14888         * inflow.c (child_terminal_save_inferior): Wrap reference to
14889         tcgetpgrp in HAVE_TERMIOS_H.
14890         (child_interrupt, child_pass_ctrlc): Wrap references to signal in
14891         _WIN32.
14892         * remote-sim.c (gdbsim_interrupt): Remove ptid_t parameter and
14893         always iterate over all inferiors.
14894         (gdbsim_cntrl_c): Adjust.
14895         * windows-nat.c (windows_interrupt): Remove 'ptid_t' parameter.
14896
14897 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14898
14899         * gdbtypes.c (lookup_array_range_type): Make sure the array's
14900         index type is objfile-owned if the element type is as well.
14901
14902 2018-01-31  Joel Brobecker  <brobecker@adacore.com>
14903
14904         GDB 8.1 released.
14905
14906 2018-01-30  Philipp Rudo  <prudo@linux.vnet.ibm.com>
14907
14908         * s390-linux-tdep.c: Remove includes "features/s390-linux32.c" and
14909         "features/s390x-linux64.c".
14910         (_initialize_s390_linux_tdep): Remove initialization of tdescs
14911         s390_linux32 and s390x_linux64.
14912         (s390_linux_init_abi_31, s390_linux_init_abi_64): Don't set
14913         default tdesc.
14914         * s390-tdep.c: Include "features/s390-linux32.c" and
14915         "features/s390x-linux64.c".
14916         (s390_tdesc_valid): Add check for tdesc_has_registers.
14917         (s390_gdbarch_init): Make sure there is always a valid tdesc.
14918         (_initialize_s390_tdep): Initialize tdesc_s390_linux32 and
14919         tdesc_s390x_linux64.
14920         * s390-linux-tdep.h: Move export of tdesc_s390_linux32 and
14921         tdesc_s390x_linux64 to...
14922         * s390-tdep.h: ...here.
14923
14924 2018-01-30  Pedro Alves  <palves@redhat.com>
14925
14926         PR gdb/13211
14927         * config.in, configure: Regenerate.
14928         * configure.ac: Check for getpgid.
14929         * go32-nat.c (go32_pass_ctrlc): New.
14930         (go32_target): Install it.
14931         * inf-child.c (inf_child_target): Install
14932         child_terminal_save_inferior, child_pass_ctrlc and
14933         child_interrupt.
14934         * inf-ptrace.c (inf_ptrace_interrupt): Delete.
14935         (inf_ptrace_target): No longer install it.
14936         * infcmd.c (interrupt_target_1): Adjust.
14937         * inferior.h (child_terminal_save_inferior, child_pass_ctrlc)
14938         (child_interrupt): Declare.
14939         (inferior::terminal_state): New.
14940         * inflow.c (struct terminal_info): Update comments.
14941         (inferior_process_group): Delete.
14942         (terminal_is_ours): Delete.
14943         (gdb_tty_state): New.
14944         (child_terminal_init): Adjust.
14945         (is_gdb_terminal, sharing_input_terminal_1)
14946         (sharing_input_terminal): New functions.
14947         (child_terminal_inferior): Adjust.  Use sharing_input_terminal.
14948         Set the process's actual process group in the foreground if
14949         possible.  Handle is_ours_for_output/is_ours distinction.  Don't
14950         mark terminal as the inferior's if not sharing GDB's terminal.
14951         Don't check attach_flag.
14952         (child_terminal_ours_for_output, child_terminal_ours): Adjust to
14953         pass down a target_terminal_state.
14954         (child_terminal_save_inferior): New, factored out from ...
14955         (child_terminal_ours_1): ... this.  Handle
14956         target_terminal_state::is_ours_for_output.
14957         (child_interrupt, child_pass_ctrlc): New.
14958         (inflow_inferior_exit): Clear the inferior's terminal_state.
14959         (copy_terminal_info): Copy the inferior's terminal state.
14960         (_initialize_inflow): Remove reference to terminal_is_ours.
14961         * inflow.h (inferior_process_group): Delete.
14962         * nto-procfs.c (nto_handle_sigint, procfs_interrupt): Adjust.
14963         * procfs.c (procfs_target): Don't install procfs_interrupt.
14964         (procfs_interrupt): Delete.
14965         * remote.c (remote_serial_quit_handler): Adjust.
14966         (remote_interrupt): Remove ptid parameter.  Adjust.
14967         * target-delegates.c: Regenerate.
14968         * target.c: Include "terminal.h".
14969         (target_terminal::terminal_state): Rename to ...
14970         (target_terminal::m_terminal_state): ... this.
14971         (target_terminal::init): Adjust.
14972         (target_terminal::inferior): Adjust to per-inferior
14973         terminal_state.
14974         (target_terminal::restore_inferior, target_terminal_is_ours_kind): New.
14975         (target_terminal::ours, target_terminal::ours_for_output): Use
14976         target_terminal_is_ours_kind.
14977         (target_interrupt): Remove ptid parameter.  Adjust.
14978         (default_target_pass_ctrlc): Adjust.
14979         * target.h (target_ops::to_terminal_save_inferior): New field.
14980         (target_ops::to_interrupt): Remove ptid_t parameter.
14981         (target_interrupt): Remove ptid_t parameter.  Update comment.
14982         (target_pass_ctrlc): Update comment.
14983         * target/target.h (target_terminal_state): New scoped enum,
14984         factored out of ...
14985         (target_terminal::terminal_state): ... here.
14986         (target_terminal::inferior): Update comments.
14987         (target_terminal::restore_inferior): New.
14988         (target_terminal::is_inferior, target_terminal::is_ours)
14989         (target_terminal::is_ours_for_output): Adjust.
14990         (target_terminal::scoped_restore_terminal_state): Adjust to
14991         rename, and call restore_inferior() instead of inferior().
14992         (target_terminal::scoped_restore_terminal_state::m_state): Change
14993         type.
14994         (target_terminal::terminal_state): Rename to ...
14995         (target_terminal::m_terminal_state): ... this and change type.
14996
14997 2018-01-30  Pedro Alves  <palves@redhat.com>
14998
14999         * linux-nat.c (wait_for_signal): New function.
15000         (wait_lwp, linux_nat_wait_1): Use it instead of calling sigsuspend
15001         directly.
15002         (async_terminal_is_ours)
15003         (linux_nat_terminal_inferior, linux_nat_terminal_ours): Delete.
15004         (linux_nat_add_target): Don't override
15005         to_terminal_inferior/to_terminal_ours.
15006
15007 2018-01-29  Sergio Durigan Junior  <sergiodj@redhat.com>
15008
15009         * remote.c (remote_follow_fork): Don't call "detach_inferior".
15010
15011 2018-01-28  Simon Marchi  <simon.marchi@ericsson.com>
15012
15013         * dwarf2read.c (free_dwo_files): Add forward-declaration.
15014         (dwarf2_per_objfile::~dwarf2_per_objfile): Move content from
15015         dwarf2_per_objfile_free here.
15016         (dwarf2_per_objfile_free): Remove.
15017         (_initialize_dwarf2_read): Don't register
15018         dwarf2_per_objfile_free as a registry cleanup.
15019
15020 2018-01-27  Eli Zaretskii  <eliz@gnu.org>
15021
15022         Avoid compilation errors in MinGW native builds
15023
15024         The error is triggered by including python-internal.h, and the
15025         error message is:
15026
15027              In file included from d:\usr\lib\gcc\mingw32\6.3.0\include\c++\math.h:36:0,
15028                       from build-gnulib/import/math.h:27,
15029                       from d:/usr/Python26/include/pyport.h:235,
15030                       from d:/usr/Python26/include/Python.h:58,
15031                       from python/python-internal.h:94,
15032                       from python/py-arch.c:24:
15033              d:\usr\lib\gcc\mingw32\6.3.0\include\c++\cmath:1157:11: error: '::hypot' has not been declared
15034         using ::hypot;
15035                 ^~~~~
15036
15037         This happens because Python headers define 'hypot' to expand t
15038         '_hypot' in the Windows builds.
15039         * python/python-internal.h (_hypot) [__MINGW32__]: Define back to
15040         'hypoth'.  This avoids a compilation error.
15041
15042 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15043
15044         * MAINTAINERS (Write After Approval): Fix ordering.
15045
15046 2018-01-26  Alan Hayward  <alan.hayward@arm.com>
15047
15048         * MAINTAINERS (Write After Approval): Add Alan Hayward.
15049
15050 2018-01-26  Alan Modra  <amodra@gmail.com>
15051
15052         * ppc-linux-tdep.c (powerpc32_plt_stub): Make const.
15053         (powerpc32_plt_stub_so_1): Rename from powerpc32_plt_stub_so.
15054         Remove nop.  Make const.  Comment.
15055         (powerpc32_plt_stub_so_2): New.
15056         (POWERPC32_PLT_CHECK_LEN): Rename from POWERPC32_PLT_STUB_LEN.
15057         Correct count.  Update uses.
15058         (ppc_skip_trampoline_code): Match powerpc32_plt_stub_so_2 too.
15059         Move common code reading PLT entry word.  Correct
15060         powerpc32_plt_stub PLT address calculation.
15061         * ppc64-tdep.c (ppc64_standard_linkage1): Make const.
15062         (ppc64_standard_linkage2, ppc64_standard_linkage3): Likewise.
15063         (ppc64_standard_linkage4, ppc64_standard_linkage5): Likewise.
15064         (ppc64_standard_linkage6, ppc64_standard_linkage7): Likewise.
15065         (ppc64_standard_linkage8): Likewise.
15066         * rs6000-tdep.c (ppc_insns_match_pattern): Make pattern const.
15067         Correct insns description.
15068         * ppc-tdep.h (ppc_insns_match_pattern): Update prototype.
15069
15070 2018-01-24  Pedro Alves  <palves@redhat.com>
15071
15072         GCC PR libstdc++/83906
15073         * gdbtypes.c (operator==(const dynamic_prop &,
15074         const dynamic_prop &)): New.
15075         (operator==(const range_bounds &, const range_bounds &)): New.
15076         (check_types_equal): Use them instead of memcmp.
15077         * gdbtypes.h (operator==(const dynamic_prop &,
15078         const dynamic_prop &)): Declare.
15079         (operator!=(const dynamic_prop &, const dynamic_prop &)): Declare.
15080         (operator==(const range_bounds &, const range_bounds &)): Declare.
15081         (operator!=(const range_bounds &, const range_bounds &)): Declare.
15082
15083 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15084
15085         * s390-linux-tdep.c (s390_record_address_mask)
15086         (s390_record_calc_disp_common, s390_record_calc_disp)
15087         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15088         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15089         (s390_process_record): Move to s390-tdep.c.
15090         (s390_linux_init_abi_any): Adjust.
15091         * s390-tdep.c (s390_record_address_mask)
15092         (s390_record_calc_disp_common, s390_record_calc_disp)
15093         (s390_record_calc_disp_vsce, s390_record_calc_rl, s390_popcnt)
15094         (s390_record_gpr_g, s390_record_gpr_h, s390_record_vr)
15095         (s390_process_record): Moved from s390-linux-tdep.c
15096         (s390_gdbarch_init): Adjust.
15097
15098 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15099
15100         * s390-linux-nat.c (s390-tdep.h): New include.
15101         * Makefile.in (ALL_TARGET_OBS): Add s390-tdep.o.
15102         (HFILES_NO_SRCDIR): Add s390-tdep.h.
15103         (ALLDEPFILES): Add s390-tdep.c.
15104         * configure.tgt (s390*-*-linux*): Add s390-tdep.o.
15105         * s390-linux-tdep.h (HWCAP_S390_*, S390_*_REGNUM): Move to...
15106         * s390-tdep.h: ...this.  New file.
15107         * s390-linux-tdep.c (s390-tdep.h): New include.
15108         (_initialize_s390_tdep): Rename to...
15109         (_initialize_s390_linux_tdep): ...this and adjust.
15110         (s390_abi_kind, s390_vector_abi_kind, gdbarch_tdep)
15111         (enum named opcodes, S390_NUM_GPRS, S390_NUM_FPRS): Move to
15112         s390-tdep.h.
15113         (s390_break_insn, s390_breakpoint, s390_readinstruction, is_ri)
15114         (is_ril, is_rr, is_rre, is_rs, is_rsy, is_rx, is_rxy)
15115         (s390_is_partial_instruction, s390_software_single_step)
15116         (is_non_branch_ril, s390_displaced_step_copy_insn)
15117         (s390_displaced_step_fixup, s390_displaced_step_hw_singlestep)
15118         (s390_prologue_data, s390_addr, s390_store, s390_load)
15119         (s390_check_for_saved, s390_analyze_prologue, s390_skip_prologue)
15120         (s390_register_call_saved, s390_guess_tracepoint_registers)
15121         (s390_register_name, s390_dwarf_regmap, s390_dwarf_reg_to_regnum)
15122         (regnum_is_gpr_full, regnum_is_vxr_full, s390_value_from_register)
15123         (s390_pseudo_register_name, s390_pseudo_register_type)
15124         (s390_pseudo_register_read, s390_pseudo_register_write)
15125         (s390_pseudo_register_reggroup_p, s390_ax_pseudo_register_collect)
15126         (s390_ax_pseudo_register_push_stack, s390_gen_return_address)
15127         (s390_addr_bits_remove, s390_address_class_type_flags)
15128         (s390_address_class_type_flags_to_name)
15129         (s390_address_class_name_to_type_flags, s390_effective_inner_type)
15130         (s390_function_arg_float, s390_function_arg_vector)
15131         (is_power_of_two, s390_function_arg_integer, s390_arg_state)
15132         (s390_handle_arg, s390_push_dummy_call, s390_dummy_id)
15133         (s390_frame_align, s390_register_return_value, s390_return_value)
15134         (s390_stack_frame_destroyed_p, s390_unwind_pc, s390_unwind_sp)
15135         (s390_unwind_pseudo_register, s390_adjust_frame_regnum)
15136         (s390_dwarf2_prev_register, s390_dwarf2_frame_init_reg)
15137         (s390_trad_frame_prev_register, s390_unwind_cache)
15138         (s390_prologue_frame_unwind_cache)
15139         (s390_backchain_frame_unwind_cache, s390_frame_unwind_cache)
15140         (s390_frame_this_id, s390_frame_prev_register, s390_frame_unwind)
15141         (s390_stub_unwind_cache, s390_stub_frame_unwind_cache)
15142         (s390_stub_frame_this_id, s390_stub_frame_prev_register)
15143         (s390_stub_frame_sniffer, s390_stub_frame_unwind)
15144         (s390_frame_base_address, s390_local_base_address)
15145         (s390_frame_base, s390_gcc_target_options)
15146         (s390_gnu_triplet_regexp, s390_stap_is_single_operand)
15147         (s390_validate_reg_range, s390_tdesc_valid)
15148         (s390_gdbarch_tdep_alloc, s390_gdbarch_init): Move to...
15149         * s390-tdep.c: ...this.  New file.
15150
15151 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15152
15153         * s390-linux-tdep.c (gdbarch_tdep.s390_syscall_record): New hook.
15154         (s390_process_record, s390_gdbarch_tdep_alloc)
15155         (s390_linux_init_abi_any): Use/set new hook.
15156
15157 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15158
15159         * s390-linux-tdep.c (osabi.h): New include.
15160         (s390_linux_init_abi_31, s390_linux_init_abi_64)
15161         (s390_linux_init_abi_any): New functions.
15162         (s390_gdbarch_init, _initialize_s390_tdep): Adjust.
15163
15164 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15165
15166         * s390-linux-tdep.c (s390_gdbarch_init): Use gdb_assert for
15167         tdesc_has_registers check
15168
15169 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15170
15171         * s390-linux-tdep.c (s390_tdesc_valid): New function.
15172         (s390_validate_reg_range): New macro.
15173         (s390_gdbarch_init): Adjust.
15174
15175 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15176
15177         * s390-linux-tdep.c (gdbarch_tdep) <tdesc>: New field.
15178         (s390_gdbarch_tdep_alloc): Adjust.
15179         (s390_gdbarch_init): Adjust.
15180
15181 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15182
15183         * s390-linux-tdep.c (gdbarch_tdep) <have_linux_v1, have_linux_v2>
15184         <have_tdb>: Change type to bool.
15185         (s390_gdbarch_tdep_alloc): Adjust.
15186         (s390_gdbarch_init): Adjust.
15187
15188 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15189
15190         * s390-linux-tdep (s390_abi_kind) <ABI_NONE>: New default field.
15191         (gdbarch_tdep) <have_upper, have_vx>: New fields.
15192         (s390_gdbarch_tdep_alloc): New function.
15193         (s390_gdbarch_init): Allocate tdep at start and use its fields
15194         instead of separate variables.
15195
15196 2018-01-23  Philipp Rudo  <prudo@linux.vnet.ibm.com>
15197
15198         * s390-linux-tdep.c (s390_gdbarch_init): Remove duplicate checks
15199         when looking for cached gdbarch and add comment for remaining.
15200
15201 2018-01-22  Pedro Alves  <palves@redhat.com>
15202             Sergio Durigan Junior  <sergiodj@redhat.com>
15203
15204         * typeprint.c (whatis_exp): Initialize "val" in the "whatis type"
15205         case.
15206
15207 2018-01-22  Maciej W. Rozycki  <macro@mips.com>
15208
15209         * MAINTAINERS: Update my company e-mail address.
15210
15211 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15212
15213         * regcache.c (cooked_write_test): New function.
15214         (_initialize_regcache): Register the test.
15215
15216 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15217
15218         * ia64-tdep.c (ia64_pseudo_register_read): Call
15219         regcache->cooked_read instead of regcache_cooked_read_unsigned.
15220         * m32c-tdep.c (m32c_cat_read): Likewise.
15221         (m32c_r3r2r1r0_read): Likewise.
15222         * m68hc11-tdep.c (m68hc11_pseudo_register_read): Likewise.
15223         * xtensa-tdep.c (xtensa_register_read_masked): Likewise.
15224
15225 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15226
15227         * aarch64-tdep.c (aarch64_pseudo_read_value): Call regcache
15228         method raw_read instead of regcache_raw_read.
15229         * amd64-tdep.c (amd64_pseudo_register_read_value): Likewise.
15230         * arm-tdep.c (arm_neon_quad_read): Likewise.
15231         * avr-tdep.c (avr_pseudo_register_read): Likewise.
15232         * bfin-tdep.c (bfin_pseudo_register_read): Likewise.
15233         * frv-tdep.c (frv_pseudo_register_read): Likewise.
15234         * h8300-tdep.c (h8300_pseudo_register_read): Likewise.
15235         * i386-tdep.c (i386_mmx_regnum_to_fp_regnum): Likewise.
15236         (i386_pseudo_register_read_into_value): Likewise.
15237         * mep-tdep.c (mep_pseudo_cr32_read): Likewise.
15238         * msp430-tdep.c (msp430_pseudo_register_read): Likewise.
15239         * nds32-tdep.c (nds32_pseudo_register_read): Likewise.
15240         * rl78-tdep.c (rl78_pseudo_register_read): Likewise.
15241         * s390-linux-tdep.c (s390_pseudo_register_read): Likewise.
15242         * sparc-tdep.c (sparc32_pseudo_register_read):  Likewise.
15243         * sparc64-tdep.c (sparc64_pseudo_register_read): Likewise.
15244         * spu-tdep.c (spu_pseudo_register_read_spu):  Likewise.
15245         * xtensa-tdep.c (xtensa_pseudo_register_read): Likewise.
15246
15247 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15248
15249         * Makefile.in (ALL_TARGET_OBS): Remove mt-tdep.o.
15250         * configure.tgt: Remove target mt.
15251         * mt-tdep.c: Remove.
15252         * regcache.c (cooked_read_test): Remove the check for mt.
15253
15254 2018-01-22  Yao Qi  <yao.qi@linaro.org>
15255
15256         * jit.c (jit_frame_prev_register): Call regcache::cooked_read
15257         instead of gdbarch_pseudo_register_read_value.
15258
15259 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15260
15261         * dwarf2read.c (need_gnat_info): Return nonzero if the cu's
15262         language is Ada.
15263
15264 2018-01-22  Joel Brobecker  <brobecker@adacore.com>
15265
15266         * linespec.c (create_sals_line_offset): Remove code that preserved
15267         the symtab_and_line's line number.
15268
15269 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15270
15271         * varobj.c (varobj_create): Don't set valid_block when creating a
15272         floating varobj.
15273
15274 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15275
15276         * varobj.c (varobj_create): Remove out of date comment.
15277
15278 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15279
15280         PR mi/20395
15281         * ada-exp.y (write_var_from_sym): Pass extra parameter when
15282         updating innermost block.
15283         * parse.c (innermost_block_tracker::update): Take extra type
15284         parameter, and check types match before updating innermost block.
15285         (write_dollar_variable): Update innermost block for registers.
15286         * parser-defs.h (enum innermost_block_tracker_type): New enum.
15287         (innermost_block_tracker::innermost_block_tracker): Initialise
15288         m_types member.
15289         (innermost_block_tracker::reset): Take type parameter.
15290         (innermost_block_tracker::update): Take type parameter, and pass
15291         type through as needed.
15292         (innermost_block_tracker::m_types): New member.
15293         * varobj.c (varobj_create): Pass type when reseting innermost
15294         block.
15295
15296 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15297
15298         * ada-exp.y (write_var_from_sym): Switch to innermost_block API.
15299         * ada-lang.c (resolve_subexp): Likewise.
15300         * breakpoint.c (set_breakpoint_condition) Likewise.
15301         (watch_command_1) Likewise.
15302         * c-exp.y (variable): Likewise.
15303         * d-exp.y (PrimaryExpression): Likewise.
15304         * f-exp.y (variable): Likewise.
15305         * go-exp.y (variable): Likewise.
15306         * m2-exp.y (variable): Likewise.
15307         * objfiles.c (objfile::~objfile): Likewise.
15308         * p-exp.y (variable): Likewise.
15309         * parse.c (innermost_block): Change type.
15310         * parser-defs.h (class innermost_block_tracker): New.
15311         (innermost_block): Change to innermost_block_tracker.
15312         * printcmd.c (display_command): Switch to innermost_block API.
15313         (do_one_display): Likewise.
15314         * rust-exp.y (do_one_display): Likewise.
15315         * symfile.c (clear_symtab_users): Likewise.
15316         * varobj.c (varobj_create): Switch to innermost_block API, replace
15317         use of innermost_block with block stored on varobj object.
15318
15319 2018-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
15320
15321         * expression.h (innermost_block): Remove declaration.
15322         * varobj.c: Add 'parser-defs.h' include.
15323
15324 2018-01-19  Tom Tromey  <tom@tromey.com>
15325
15326         * rust-lang.c (rust_lookup_symbol_nonlocal): Look up qualified
15327         symbols in the static and global blocks.
15328
15329 2018-01-19  James Clarke  <jrtc27@jrtc27.com>
15330
15331         * nat/linux-ptrace.c: Remove unnecessary reinclusion of
15332         gdb_ptrace.h, and move including gdb_wait.h ...
15333         * nat/linux-ptrace.h: ... to here.
15334
15335 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15336
15337         * inf-ptrace.c (inf_ptrace_detach): Adjust call to
15338         inf_ptrace_detach_success.
15339         (inf_ptrace_detach_success): Add inferior parameter, use it
15340         instead of inferior_ptid, pass it to detach_inferior.
15341         * inf-ptrace.h (inf_ptrace_detach_success): Add inferior
15342         parameter.
15343         * inferior.c (detach_inferior): Add overload that takes an
15344         inferior object.
15345         * inferior.h (detach_inferior): Likewise.
15346         * linux-nat.c (linux_nat_detach): Use the inf parameter, don't
15347         use inferior_ptid, adjust call to inf_ptrace_detach_success.
15348         * linux-thread-db.c (thread_db_detach): Use inf parameter.
15349
15350 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15351
15352         * target.h (struct target_ops) <to_detach>: Add inferior
15353         parameter.
15354         (target_detach): Likewise.
15355         * target.c (dispose_inferior): Pass inferior down.
15356         (target_detach): Pass inferior down.  Assert that it is equal to
15357         the current inferior.
15358         * aix-thread.c (aix_thread_detach): Pass inferior down.
15359         * corefile.c (core_file_command): Pass current_inferior() down.
15360         * corelow.c (core_detach): Add inferior parameter.
15361         * darwin-nat.c (darwin_detach): Likewise.
15362         * gnu-nat.c (gnu_detach): Likewise.
15363         * inf-ptrace.c (inf_ptrace_detach): Likewise.
15364         * infcmd.c (detach_command): Pass current_inferior() down to
15365         target_detach.
15366         * infrun.c (follow_fork_inferior): Pass parent_inf to
15367         target_detach.
15368         (handle_vfork_child_exec_or_exit): Pass inf->vfork_parent to
15369         target_detach.
15370         * linux-nat.c (linux_nat_detach): Add inferior parameter.
15371         * linux-thread-db.c (thread_db_detach): Likewise.
15372         * nto-procfs.c (procfs_detach): Likewise.
15373         * procfs.c (procfs_detach): Likewise.
15374         * record.c (record_detach): Likewise.
15375         * record.h (struct inferior): Forward-declare.
15376         (record_detach): Add inferior parameter.
15377         * remote-sim.c (gdbsim_detach): Likewise.
15378         * remote.c (remote_detach_1): Likewise.
15379         (remote_detach): Likewise.
15380         (extended_remote_detach): Likewise.
15381         * sol-thread.c (sol_thread_detach): Likewise.
15382         * target-debug.h (target_debug_print_inferior_p): New macro.
15383         * target-delegates.c: Re-generate.
15384         * top.c (kill_or_detach): Pass inferior down to target_detach.
15385         * windows-nat.c (windows_detach): Add inferior parameter.
15386
15387 2018-01-19  Simon Marchi  <simon.marchi@ericsson.com>
15388
15389         * target.h (struct target_ops) <to_detach>: Remove args
15390         parameter.
15391         (target_detach): Likewise.
15392         * target.c (dispose_inferior): Adjust.
15393         (target_detach): Remove args parameter, adjust.
15394         * aix-thread.c (aix_thread_detach): Adjust.
15395         * corefile.c (core_file_command): Adjust.
15396         * corelow.c (core_detach): Adjust.
15397         * darwin-nat.c (darwin_detach): Adjust.
15398         * gnu-nat.c (gnu_detach): Adjust.
15399         * inf-ptrace.c (inf_ptrace_detach): Adjust.
15400         * infcmd.c (detach_command): Adjust
15401         * infrun.c (follow_fork_inferior): Adjust.
15402         (handle_vfork_child_exec_or_exit): Adjust.
15403         * linux-fork.c (linux_fork_detach): Remove args parameter.
15404         * linux-fork.h (linux_fork_detach): Likewise.
15405         * linux-nat.c (linux_nat_detach): Likewise, and adjust.
15406         * linux-thread-db.c (thread_db_detach): Likewise.
15407         * nto-procfs.c (procfs_detach): Likewise.
15408         * procfs.c (procfs_detach): Likewise.
15409         (do_detach): Remove signo parameter.
15410         * record.c (record_detach): Remove args parameter.
15411         * record.h (record_detach): Likewise.
15412         * remote-sim.c (gdbsim_detach): Likewise.
15413         * remote.c (remote_detach_1): Likewise.
15414         (remote_detach): Likewise.
15415         (extended_remote_detach): Likewise.
15416         * sol-thread.c (sol_thread_detach): Likewise.
15417         * target-delegates.c: Re-generate.
15418         * top.c (struct qt_args) <args>: Remove field.
15419         (kill_or_detach): Don't pass args.
15420         (quit_force): Don't set args.
15421         * windows-nat.c (windows_detach): Remove args parameter.
15422
15423 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15424
15425         * arm-linux-tdep.c (arm_linux_gcc_target_options): New function.
15426         (arm_linux_init_abi): Install it.
15427
15428 2018-01-19  Yao Qi  <yao.qi@linaro.org>
15429
15430         * osabi.c (gdb_osabi_names): Extend the regexp for
15431         arm-linux-gnueabihf.
15432
15433 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15434
15435         * dwarf2read.c (abbrev_table) <abbrevs>: Rename it to
15436         m_abbrevs.
15437         (abbrev_table::add_abbrev): Update.
15438         (abbrev_table::lookup_abbrev): Update.
15439
15440 2018-01-18  Yao Qi  <yao.qi@linaro.org>
15441
15442         * ppc-linux-tdep.c (ppu2spu_prev_register): Call cooked_read.
15443
15444 2018-01-17  Sergio Durigan Junior  <sergiodj@redhat.com>
15445
15446         * compile/compile.c (compile_to_object): Convert "triplet_rx"
15447         to "std::string".
15448
15449 2018-01-17  Tom Tromey  <tom@tromey.com>
15450
15451         * dwarf2read.c (symbolp): Remove typedef.  Don't instantiate VEC.
15452
15453 2018-01-17  Tom Tromey  <tom@tromey.com>
15454
15455         * gdbtypes.h (add_dyn_prop): Remove objfile parameter.
15456         * gdbtypes.c (add_dyn_prop): Remove objfile parameter.
15457         (create_array_type_with_stride): Update.
15458         * dwarf2read.c (set_die_type): Update.
15459
15460 2018-01-17  Tom Tromey  <tom@tromey.com>
15461
15462         * dwarf2read.c (delayed_method_info): Remove typedef.
15463         (dwarf2_cu::method_info): Now a std::vector.
15464         (add_to_method_list): Update.
15465         (free_delayed_list): Remove.
15466         (compute_delayed_physnames): Update.
15467         (process_full_comp_unit, process_full_type_unit): Clear the method
15468         list.  Remove cleanups.
15469         (psymtab_include_file_name): Add name_holder parameter.  Use
15470         unique_xmalloc_ptr.
15471         (dwarf_decode_lines): Update.
15472
15473 2018-01-17  Tom Tromey  <tom@tromey.com>
15474             Simon Marchi  <simon.marchi@ericsson.com>
15475
15476         * dwarf2read.c (struct dwarf2_cu): Add constructor, destructor.
15477         (dwarf2_per_objfile::free_cached_comp_units)
15478         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15479         (init_cutu_and_read_dies_no_follow): Update.
15480         (dwarf2_cu::dwarf2_cu): Rename from init_one_comp_unit.
15481         (dwarf2_cu::~dwarf2_cu): New.
15482         (free_heap_comp_unit, free_stack_comp_unit): Remove.
15483         (age_cached_comp_units, free_one_cached_comp_unit): Update.
15484
15485 2018-01-17  Tom Tromey  <tom@tromey.com>
15486             Simon Marchi  <simon.marchi@ericsson.com>
15487
15488         * dwarf2read.c (struct dwarf2_cu) <abbrev_table>: Remove.
15489         (struct die_reader_specs) <abbrev_table>: New member.
15490         (struct abbrev_table): Add constructor.
15491         <alloc_abbrev, add_abbrev, lookup_abbrev>: Declare.
15492         <abbrev_obstack>: Now an auto_obstack.
15493         (abbrev_table_up): New typedef.
15494         (init_cu_die_reader): Add abbrev_table parameter.
15495         (read_cutu_die_from_dwo): Remove abbrev_table_provided parameter.
15496         Add result_dwo_abbrev_table.
15497         (init_tu_and_read_dwo_dies, init_cutu_and_read_dies)
15498         (init_cutu_and_read_dies_no_follow, build_type_psymtabs_1):
15499         Update.
15500         (peek_die_abbrev): Take die_reader_specs, not dwarf_cu as
15501         parameter.
15502         (skip_children): Update.
15503         (abbrev_table::alloc_abbrev): Rename from
15504         abbrev_table_alloc_abbrev.
15505         (abbrev_table::add_abbrev): Rename from abbrev_table_add_abbrev.
15506         (abbrev_table::lookup_abbrev): Rename from
15507         abbrev_table_lookup_abbrev.
15508         (abbrev_table_read_table): Return abbrev_table_up.
15509         (abbrev_table_free, abbrev_table_free_cleanup)
15510         (dwarf2_read_abbrevs, dwarf2_free_abbrev_table): Remove.
15511         (load_partial_dies): Update.
15512
15513 2018-01-17  Tom Tromey  <tom@tromey.com>
15514
15515         * dwarf2read.c (dwarf2_compute_name): Update comment.
15516         (read_func_scope, read_variable): Update.
15517         (new_symbol): Remove.
15518         (new_symbol_full): Rename to new_symbol.
15519
15520 2018-01-17  Mike Gulick  <mgulick@mathworks.com>
15521
15522         PR gdb/16577
15523         * gdb_bfd.c (gdb_bfd_map_section): If unable to read object file, issue
15524         a warning instead of throwing an error, set section size to 0 and return
15525         NULL.
15526         * gdb_bfd.h (gdb_bfd_map_section): Update description.
15527
15528 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15529
15530         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason): Return
15531         std::string.
15532         (linux_ptrace_attach_fail_reason_string): Likewise.
15533         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason):
15534         Likewise.
15535         (linux_ptrace_attach_fail_reason_string): Likewise.
15536         * linux-nat.c (attach_proc_task_lwp_callback): Adjust.
15537
15538 2018-01-17  Simon Marchi  <simon.marchi@ericsson.com>
15539
15540         * linux-nat.c (linux_nat_attach): Remove xstrdup.
15541
15542 2018-01-17  Eldar Abusalimov  <eldar.abusalimov@jetbrains.com>
15543
15544         PR gdb/21559
15545         * configure.ac: Include <sys/types.h> prior to <sys/user.h> when
15546         checking for fs_base/gs_base fields in struct user_regs_struct.
15547         * configure: Regenerate.
15548
15549 2018-01-17  Yao Qi  <yao.qi@linaro.org>
15550
15551         * aarch64-linux-tdep.c (aarch64_linux_gcc_target_options): New
15552         function.
15553         (aarch64_linux_init_abi): Install it to gdbarch hook
15554         gcc_target_options.
15555
15556 2018-01-15  Pedro Alves  <palves@redhat.com>
15557
15558         * common/signals-state-save-restore.c
15559         (save_original_signals_state): Fix typos.
15560
15561 2017-01-12  Tom Tromey  <tom@tromey.com>
15562             Sergio Durigan Junior  <sergiodj@redhat.com>
15563
15564         * Makefile.in (install-only): Install gdb-add-index.
15565
15566 2018-01-12  John Baldwin  <jhb@FreeBSD.org>
15567
15568         * fbsd-tdep.c (KVE_PROTECTION): Correct value.
15569
15570 2018-01-12  Andreas Arnez  <arnez@linux.vnet.ibm.com>
15571
15572         * infrun.c (keep_going_pass_signal): Clear step-over info when
15573         insert_breakpoints fails.
15574
15575 2018-01-11  Pedro Alves  <palves@redhat.com>
15576
15577         PR gdb/22583
15578         * infrun.c (resume): Rename to ...
15579         (resume_1): ... this.
15580         (resume): Reimplement as wrapper around resume_1.
15581
15582 2018-01-11  Pedro Alves  <palves@redhat.com>
15583
15584         PR remote/22597
15585         * remote.c (remote_parse_stop_reply): Default to the last-set
15586         general thread instead of to 'magic_null_ptid'.
15587
15588 2018-01-10  Pedro Alves  <palves@redhat.com>
15589
15590         * language.h (language_get_symbol_name_matcher): Rename ...
15591         (get_symbol_name_matcher): ... this.
15592         * language.c (language_get_symbol_name_matcher): Ditto.
15593         * dictionary.c, linespec.c, minsyms.c, psymtab.c, symtab.c: All
15594         callers adjusted.
15595
15596 2018-01-10  Pedro Alves  <palves@redhat.com>
15597
15598         PR gdb/22670
15599         * dwarf2read.c
15600         (gdb_index_symbol_name_matcher::gdb_index_symbol_name_matcher):
15601         Adjust to use language_get_symbol_name_matcher instead of
15602         language_defn::la_get_symbol_name_matcher.
15603         * language.c (language_get_symbol_name_matcher): If in Ada mode
15604         and the lookup name is a verbatim match, return Ada's matcher.
15605         * language.h (language_get_symbol_name_matcher): Adjust comment.
15606         (ada_lookup_name_info::verbatim_p):: New method.
15607
15608 2018-01-10  Pedro Alves  <palves@redhat.com>
15609
15610         PR gdb/22670
15611         * ada-lang.c (ada_collect_symbol_completion_matches): If the
15612         minsym's language is language_auto or language_cplus, pass down
15613         language_ada instead.
15614         * symtab.c (compare_symbol_name): Don't frob symbol language here.
15615
15616 2018-01-10  Pedro Alves  <palves@redhat.com>
15617
15618         PR gdb/22670
15619         * minsyms.c (linkage_name_str): New function.
15620         (iterate_over_minimal_symbols): Use it.
15621
15622 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15623
15624         * NEWS: Document that 'info proc' now works on FreeBSD.
15625
15626 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15627
15628         * configure.ac: Check for kinfo_getfile in libutil.
15629         * configure: Regenerate.
15630         * config.in: Regenerate.
15631         * fbsd-nat.c: Include "fbsd-tdep.h".
15632         (fbsd_fetch_cmdline): New.
15633         (fbsd_fetch_kinfo_proc): Move earlier and change to return a bool
15634         rather than calling error.
15635         (fbsd_info_proc): New.
15636         (fbsd_thread_name): Report error if fbsd_fetch_kinfo_proc fails.
15637         (fbsd_wait): Report warning if fbsd_fetch_kinfo_proc fails.
15638         (fbsd_nat_add_target): Set "to_info_proc" to "fbsd_info_proc".
15639
15640 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15641
15642         * fbsd-nat.c (struct free_deleter): Remove.
15643         (fbsd_find_memory_regions): Use gdb::unique_xmalloc_ptr<>.
15644
15645 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15646
15647         * fbsd-nat.c (fbsd_pid_to_exec_file) [KERN_PROC_PATHNAME]: Return
15648         NULL for an empty pathname.
15649
15650 2018-01-09  John Baldwin  <jhb@FreeBSD.org>
15651
15652         * fbsd-tdep.c (KVE_STRUCTSIZE, KVE_START, KVE_END, KVE_OFFSET)
15653         (KVE_FLAGS, KVE_PROTECTION, KVE_PATH, KINFO_VME_PROT_READ)
15654         (KINFO_VME_PROT_WRITE, KINFO_VME_PROT_EXEC, KINFO_VME_FLAG_COW)
15655         (KINFO_VME_FLAG_NEEDS_COPY, KINFO_VME_FLAG_NOCOREDUMP)
15656         (KINFO_VME_FLAG_SUPER, KINFO_VME_FLAG_GROWS_UP)
15657         (KINFO_VME_FLAG_GROWS_DOWN, KF_STRUCTSIZE, KF_TYPE, KF_FD)
15658         (KF_PATH, KINFO_FILE_TYPE_VNODE, KINFO_FILE_FD_TYPE_CWD)
15659         (KINFO_FILE_FD_TYPE_TEXT, SIG_WORDS, struct kinfo_proc_layout)
15660         (kinfo_proc_layout_32, kinfo_proc_layout_i386)
15661         (kinfo_proc_layout_64, fbsd_vm_map_entry_flags)
15662         (fbsd_core_info_proc_mappings, fbsd_core_vnode_path)
15663         (fbsd_core_fetch_timeval, fbsd_print_sigset)
15664         (fbsd_core_info_proc_status, fbsd_core_info_proc): New.
15665         (fbsd_init_abi):  Install gdbarch "core_info_proc" method.
15666         * fbsd-tdep.h (fbsd_vm_map_entry_flags): New.
15667
15668 2018-01-08  Samuel Thibault  <samuel.thibault@ens-lyon.org>
15669
15670         * gdb/gnu-nat.c: Include <elf.h> and <link.h>.
15671         (gnu_xfer_auxv): New function.
15672         (gnu_xfer_partial): Call gnu_xfer_auxv when `object' is
15673         TARGET_OBJECT_AUXV.
15674
15675 2018-01-08  Yao Qi  <yao.qi@linaro.org>
15676             Simon Marchi  <simon.marchi@ericsson.com>
15677
15678         * Makefile.in (COMMON_SFILES): Remove selftest-arch.c and
15679         common/selftest.c.
15680         (COMMON_OBS): Remove selftest.o.
15681         * configure.ac: Append selftest-arch.c and common/selftest.c to
15682         CONFIG_SRCS.  Append selftest-arch.o and selftest.o to COMMON_OBS.
15683         * configure: Re-generated.
15684         * maint.c (maintenance_selftest): Wrap selftests::run_tests with
15685         GDB_SELF_TEST.
15686         (maintenance_info_selftests): Likewise.
15687
15688 2018-01-08  Xavier Roirand  <roirand@adacore.com>
15689
15690         * ada-valprint.c (val_print_packed_array_elements): Use
15691         proper number of elements when printing an array indexed
15692         by an enumeration type.
15693
15694 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
15695
15696         * dwarf2read.c (struct dwarf2_cu) <dwarf2_per_objfile>: Remove.
15697         (dw2_get_file_names_reader): Adjust.
15698         (lookup_dwo_signatured_type): Adjust.
15699         (lookup_dwp_signatured_type): Adjust.
15700         (lookup_signatured_type): Adjust.
15701         (create_type_unit_group): Adjust.
15702         (get_type_unit_group): Adjust.
15703         (process_psymtab_comp_unit_reader): Adjust.
15704         (build_type_psymtabs_reader): Adjust.
15705         (scan_partial_symbols): Adjust.
15706         (add_partial_symbol): Adjust.
15707         (add_partial_subprogram): Adjust.
15708         (peek_die_abbrev): Adjust.
15709         (fixup_go_packaging): Adjust.
15710         (process_imported_unit_die): Adjust.
15711         (dwarf2_compute_name): Adjust.
15712         (dwarf2_physname): Adjust.
15713         (read_import_statement): Adjust.
15714         (handle_DW_AT_stmt_list): Adjust.
15715         (read_file_scope): Adjust.
15716         (read_func_scope): Adjust.
15717         (read_lexical_block_scope): Adjust.
15718         (read_call_site_scope): Adjust.
15719         (read_variable): Adjust.
15720         (dwarf2_rnglists_process): Adjust.
15721         (dwarf2_ranges_process): Adjust.
15722         (dwarf2_ranges_read): Adjust.
15723         (dwarf2_get_pc_bounds): Adjust.
15724         (dwarf2_record_block_ranges): Adjust.
15725         (dwarf2_add_field): Adjust.
15726         (dwarf2_add_member_fn): Adjust.
15727         (read_structure_type): Adjust.
15728         (process_structure_scope): Adjust.
15729         (read_enumeration_type): Adjust.
15730         (read_array_type): Adjust.
15731         (mark_common_block_symbol_computed): Adjust.
15732         (read_common_block): Adjust.
15733         (read_namespace_type): Adjust.
15734         (read_namespace): Adjust.
15735         (read_module_type): Adjust.
15736         (read_tag_pointer_type): Adjust.
15737         (read_tag_ptr_to_member_type): Adjust.
15738         (read_tag_string_type): Adjust.
15739         (read_subroutine_type): Adjust.
15740         (read_typedef): Adjust.
15741         (read_base_type): Adjust.
15742         (attr_to_dynamic_prop): Adjust.
15743         (read_subrange_type): Adjust.
15744         (read_unspecified_type): Adjust.
15745         (dwarf2_read_abbrevs): Adjust.
15746         (load_partial_dies): Adjust.
15747         (read_partial_die): Adjust.
15748         (find_partial_die): Adjust.
15749         (guess_partial_die_structure_name): Adjust.
15750         (fixup_partial_die): Adjust.
15751         (read_attribute_value): Adjust.
15752         (read_addr_index): Adjust.
15753         (read_addr_index_from_leb128): Adjust.
15754         (read_str_index): Adjust.
15755         (dwarf2_string_attr): Adjust.
15756         (get_debug_line_section): Adjust.
15757         (dwarf_decode_line_header): Adjust.
15758         (lnp_state_machine::check_line_address): Adjust.
15759         (dwarf_decode_lines_1): Adjust.
15760         (dwarf_decode_lines): Adjust.
15761         (dwarf2_start_symtab): Adjust.
15762         (var_decode_location): Adjust.
15763         (new_symbol_full): Adjust.
15764         (dwarf2_const_value_data): Adjust.
15765         (dwarf2_const_value_attr): Adjust.
15766         (dwarf2_const_value): Adjust.
15767         (die_type): Adjust.
15768         (die_containing_type): Adjust.
15769         (build_error_marker_type): Adjust.
15770         (lookup_die_type): Adjust.
15771         (guess_full_die_structure_name): Adjust.
15772         (anonymous_struct_prefix): Adjust.
15773         (determine_prefix): Adjust.
15774         (dwarf2_name): Adjust.
15775         (follow_die_ref_or_sig): Adjust.
15776         (follow_die_offset): Adjust.
15777         (follow_die_ref): Adjust.
15778         (follow_die_sig_1): Adjust.
15779         (follow_die_sig): Adjust.
15780         (get_signatured_type): Adjust.
15781         (get_DW_AT_signature_type): Adjust.
15782         (decode_locdesc): Adjust.
15783         (dwarf_decode_macros): Adjust.
15784         (cu_debug_loc_section): Adjust.
15785         (fill_in_loclist_baton): Adjust.
15786         (dwarf2_symbol_mark_computed): Adjust.
15787         (init_one_comp_unit): Don't assign
15788         dwarf2_cu::dwarf2_per_objfile.
15789         (set_die_type): Adjust.
15790
15791 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
15792
15793         * dwarf2read.c (struct mapped_debug_names): Add constructor.
15794         <dwarf2_per_objfile>: New field.
15795         (dwarf2_per_objfile): Remove global.
15796         (get_dwarf2_per_objfile): New function.
15797         (set_dwarf2_per_objfile): New function.
15798         (dwarf2_build_psymtabs_hard): Change objfile parameter to
15799         dwarf2_per_objfile.
15800         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15801         (read_abbrev_offset): Likewise.
15802         (read_indirect_string): Likewise.
15803         (read_indirect_line_string): Likewise.
15804         (read_indirect_string_at_offset): Likewise.
15805         (read_indirect_string_from_dwz): Likewise.
15806         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15807         dwarf2_per_objfile.
15808         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15809         (create_all_comp_units): Change objfile parameter to
15810         dwarf2_per_objfile.
15811         (create_all_type_units): Likewise.
15812         (process_queue): Add dwarf2_per_objfile parameter.
15813         (read_and_check_comp_unit_head): Likewise.
15814         (lookup_dwo_unit_in_dwp): Likewise.
15815         (get_dwp_file): Likewise.
15816         (process_cu_includes): Likewise.
15817         (struct free_dwo_file_cleanup_data): New struct.
15818         (dwarf2_has_info): Use get_dwarf2_per_objfile and
15819         set_dwarf2_per_objfile.
15820         (dwarf2_get_dwz_file): Add dwarf2_per_objfile parameter.
15821         (dw2_do_instantiate_symtab): Get dwarf2_per_objfile from
15822         context, adjust calls.
15823         (dw2_instantiate_symtab): Likewise.
15824         (dw2_get_cutu): Add dwarf2_per_objfile parameter.
15825         (dw2_get_cu): Likewise.
15826         (create_cu_from_index_list): Change objfile parameter to
15827         dwarf2_per_objfile.
15828         (create_cus_from_index_list): Get dwarf2_per_objfile from
15829         context, adjust calls.
15830         (create_cus_from_index): Likewise.
15831         (create_signatured_type_table_from_index): Change objfile
15832         parameter to dwarf2_per_objfile.
15833         (create_signatured_type_table_from_debug_names): Change objfile
15834         parameter to dwarf2_per_objfile.
15835         (create_addrmap_from_index): Likewise.
15836         (create_addrmap_from_aranges): Likewise.
15837         (dwarf2_read_index): Use get_dwarf2_per_objfile, adjust calls.
15838         (dw2_setup): Remove.
15839         (dw2_get_file_names_reader): Get dwarf2_per_objfile from
15840         context.
15841         (dw2_find_last_source_symtab): Get dwarf2_per_objfile using
15842         get_dwarf2_per_objfile.
15843         (dw2_forget_cached_source_info): Likewise.
15844         (dw2_map_symtabs_matching_filename): Likewise.
15845         (struct dw2_symtab_iterator) <index>: Remove.
15846         <dwarf2_per_objfile>: New field.
15847         (dw2_symtab_iter_init): Replace index parameter with
15848         dwarf2_per_objfile.
15849         (dw2_symtab_iter_next): Use dwarf2_per_objfile from iter.
15850         (dw2_lookup_symbol): Use get_dwarf2_per_objfile and adjust.
15851         (dw2_print_stats): Likewise.
15852         (dw2_dump): Likewise.
15853         (dw2_expand_symtabs_for_function): Likewise.
15854         (dw2_expand_all_symtabs): Likewise.
15855         (dw2_expand_symtabs_with_fullname): Likewise.
15856         (dw2_expand_marked_cus): Replace index and objfile parameters
15857         with dwarf2_per_objfile.
15858         (dw_expand_symtabs_matching_file_matcher): Add
15859         dwarf2_per_objfile parameter and adjust calls.
15860         (dw2_expand_symtabs_matching): Use get_dwarf2_per_objfile and
15861         adjust calls.
15862         (dw2_find_pc_sect_compunit_symtab): Don't call dw2_setup.
15863         (dw2_map_symbol_filenames): Use get_dwarf2_per_objfile and
15864         adjust calls.
15865         (create_cus_from_debug_names_list): Replace objfile parameter
15866         with dwarf2_per_objfile and adjust calls.
15867         (create_cus_from_debug_names): Likewise.
15868         (dwarf2_read_debug_names): Likewise.
15869         (mapped_debug_names::namei_to_name): Adjust call.
15870         (dw2_debug_names_iterator::next): Likewise.
15871         (dw2_debug_names_iterator::find_vec_in_debug_names): Likewise.
15872         (dw2_debug_names_lookup_symbol): Use get_dwarf2_per_objfile.
15873         (dw2_debug_names_dump): Likewise.
15874         (dw2_debug_names_expand_symtabs_for_function): Likewise.
15875         (dw2_debug_names_expand_symtabs_matching): Likewise.
15876         (dwarf2_initialize_objfile): Likewise.
15877         (dwarf2_build_psymtabs): Likewise.
15878         (get_abbrev_section_for_cu): Get dwarf2_per_objfile from
15879         this_cu.
15880         (error_check_comp_unit_head): Add dwarf2_per_objfile parameter.
15881         (read_and_check_comp_unit_head): Likewise.
15882         (read_abbrev_offset): Likewise.
15883         (create_debug_type_hash_table): Likewise.
15884         (create_debug_types_hash_table): Likewise.
15885         (create_all_type_units): Replace objfile parameter with
15886         dwarf2_per_objfile.
15887         (add_type_unit): Add dwarf2_per_objfile parameter.
15888         (fill_in_sig_entry_from_dwo_entry): Replace objfile parameter
15889         with dwarf2_per_objfile.
15890         (lookup_dwo_signatured_type): Get dwarf2_per_objfile from cu.
15891         (lookup_dwp_signatured_type): Likewise.
15892         (lookup_signatured_type): Likewise.
15893         (read_cutu_die_from_dwo): Likewise.
15894         (init_tu_and_read_dwo_dies): Likewise.
15895         (init_cutu_and_read_dies): Likewise.
15896         (init_cutu_and_read_dies_no_follow): Likewise.
15897         (allocate_type_unit_groups_table): Add objfile parameter.
15898         (create_type_unit_group): Use dwarf2_per_objfile from cu.
15899         (get_type_unit_group): Likewise.
15900         (process_psymtab_comp_unit): Update call.
15901         (build_type_psymtabs_reader): Use dwarf2_per_objfile from cu.
15902         (build_type_psymtabs_1): Add dwarf2_per_objfile parameter.
15903         (print_tu_stats): Likewise.
15904         (build_type_psymtab_dependencies): Use dwarf2_per_objfile passed
15905         in void* parameter.
15906         (build_type_psymtabs): Change objfile parameter to
15907         dwarf2_per_objfile.
15908         (process_skeletonless_type_unit): Use dwarf2_per_objfile
15909         passed in void* parameter.
15910         (process_skeletonless_type_units): Change objfile parameter to
15911         dwarf2_per_objfile.
15912         (set_partial_user): Likewise.
15913         (dwarf2_build_psymtabs_hard): Likewise.
15914         (read_comp_units_from_section): Likewise.
15915         (create_all_comp_units): Likewise.
15916         (scan_partial_symbols): Update calls.
15917         (add_partial_symbol): Likewise.
15918         (dwarf2_read_symtab): Use get_dwarf2_per_objfile.
15919         (maybe_queue_comp_unit): Use dwarf2_read_symtab from cu.
15920         (process_queue): Add dwarf2_per_objfile parameter.
15921         (get_compunit_symtab): Use dwarf2_per_objfile from cu.
15922         (compute_compunit_symtab_includes): Likewise.
15923         (process_cu_includes): Add dwarf2_per_objfile parameter.
15924         (process_full_comp_unit): Use dwarf2_per_objfile from cu.
15925         (process_full_type_unit): Likewise.
15926         (process_imported_unit_die): Update call.
15927         (handle_DW_AT_stmt_list): Use dwarf2_per_objfile from cu.
15928         (read_file_scope): Likewise.
15929         (allocate_dwo_file_hash_table): Add objfile parameter.
15930         (lookup_dwo_file_slot): Add dwarf2_per_objfile parameter.
15931         (create_cus_hash_table): Likewise.
15932         (create_dwp_hash_table): Likewise.
15933         (create_dwo_unit_in_dwp_v1): Likewise.
15934         (create_dwp_v2_section): Likewise.
15935         (create_dwo_unit_in_dwp_v2): Likewise.
15936         (lookup_dwo_unit_in_dwp): Likewise.
15937         (try_open_dwop_file): Likewise.
15938         (open_dwo_file): Likewise. Use dwarf2_per_objfile from cu.
15939         (open_and_init_dwo_file): Use dwarf2_per_objfile from cu, update
15940         cleanup to include a reference to dwarf2_per_objfile.
15941         (open_dwp_file): Add dwarf2_per_objfile parameter.
15942         (open_and_init_dwp_file): Likewise.
15943         (get_dwp_file): Likewise.
15944         (lookup_dwo_cutu): Use dwarf2_per_objfile from cu.
15945         (queue_and_load_all_dwo_tus): Update call.
15946         (free_dwo_file_cleanup): Use dwarf2_per_objfile from cleanup
15947         data.
15948         (dwarf2_rnglists_process): Use dwarf2_per_objfile from cu.
15949         (dwarf2_ranges_process): Likewise.
15950         (dwarf2_get_pc_bounds): Likewise.
15951         (mark_common_block_symbol_computed): Likewise.
15952         (abbrev_table_read_table): Add dwarf2_per_objfile parameter.
15953         (dwarf2_read_abbrevs): Update call.
15954         (read_partial_die): Use dwarf2_per_objfile from cu.
15955         (find_partial_die): Likewise.
15956         (fixup_partial_die): Likewise.
15957         (read_attribute_value): Likewise.
15958         (read_indirect_string_at_offset_from): Add objfile parameter.
15959         (read_indirect_string_at_offset): Add dwarf2_per_objfile
15960         parameter.
15961         (read_indirect_string_from_dwz): Add objfile parameter.
15962         (read_indirect_string): Add objfile parameter.
15963         (read_addr_index_1): Add dwarf2_per_objfile parameter.
15964         (read_addr_index): Use dwarf2_per_objfile from cu.
15965         (dwarf2_read_addr_index): Use dwarf2_per_objfile from cu, don't
15966         call dw2_setup.
15967         (read_str_index): Use dwarf2_per_objfile from cu.
15968         (get_debug_line_section): Likewise.
15969         (read_formatted_entries): Add dwarf2_per_objfile parameter.
15970         (dwarf_decode_line_header): Use dwarf2_per_objfile from cu.
15971         (new_symbol_full): Use dwarf2_per_objfile from cu.
15972         (build_error_marker_type): Likewise.
15973         (lookup_die_type): Likewise.
15974         (determine_prefix): Likewise.
15975         (follow_die_offset): Likewise.
15976         (dwarf2_fetch_die_loc_sect_off): Use get_dwarf2_per_objfile.
15977         (dwarf2_fetch_constant_bytes): Don't call dw2_setup.
15978         (dwarf2_fetch_die_type_sect_off): Likewise.
15979         (dwarf2_get_die_type): Likewise.
15980         (follow_die_sig_1): Use dwarf2_per_objfile from cu.
15981         (get_signatured_type): Likewise.
15982         (get_DW_AT_signature_type): Likewise.
15983         (dwarf_decode_macro_bytes): Add dwarf2_per_objfile parameter.
15984         (dwarf_decode_macros): Use dwarf2_per_objfile from cu.
15985         (cu_debug_loc_section): Likewise.
15986         (fill_in_loclist_baton): Likewise.
15987         (dwarf2_symbol_mark_computed): Likewise.
15988         (dwarf2_find_containing_comp_unit): Change objfile parameter to
15989         dwarf2_per_objfile.
15990         (free_cached_comp_units): Use dwarf2_per_objfile passed in void*
15991         parameter.
15992         (age_cached_comp_units): Add dwarf2_per_objfile parameter.
15993         (free_one_cached_comp_unit): Use dwarf2_per_objfile from cu.
15994         (dwarf2_free_objfile): Use get_dwarf2_per_objfile.
15995         (set_die_type): Use dwarf2_free_objfile from cu.
15996         (get_die_type_at_offset): Likewise.
15997         (dwarf2_per_objfile_free): Don't assign global variable.
15998         (debug_names) <constructor>: Add dwarf2_per_objfile
15999         parameter, update m_debugstrlookup construction.
16000         (debug_names::debug_str_lookup): Add dwarf2_per_objfile
16001         parameter.
16002         <m_dwarf2_per_objfile>: New field.
16003         <lookup>: Use m_dwarf2_per_objfile.
16004         (check_dwarf64_offsets): Add dwarf2_per_objfile parameter.
16005         (psyms_seen_size): Likewise.
16006         (write_gdbindex): Replace objfile parameter with
16007         dwarf2_per_objfile.
16008         (write_debug_names): Likewise.
16009         (write_psymtabs_to_index): Likewise.
16010         (save_gdb_index_command): Use get_dwarf2_per_objfile, update
16011         calls.
16012
16013 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16014
16015         * dwarf2read.c (struct dwarf2_cu) <objfile>: Remove.
16016         <dwarf2_per_objfile>: New field.
16017         (struct dwarf2_per_cu_data) <objfile>: Remove.
16018         <dwarf2_per_objfile>: New field.
16019         (create_cu_from_index_list): Assign dwarf2_per_objfile instead
16020         of objfile.
16021         (create_signatured_type_table_from_index): Likewise.
16022         (create_debug_type_hash_table): Likewise.
16023         (fill_in_sig_entry_from_dwo_entry): Likewise.
16024         (lookup_dwo_unit): Access objfile through dwarf2_per_objfile.
16025         (create_type_unit_group): Assign dwarf2_per_objfile instead of
16026         objfile.
16027         (create_partial_symtab): Access objfile through
16028         dwarf2_per_objfile.
16029         (process_psymtab_comp_unit_reader): Likewise.
16030         (read_comp_units_from_section): Likewise.
16031         (scan_partial_symbols): Likewise.
16032         (add_partial_symbol): Likewise.
16033         (add_partial_subprogram): Likewise.
16034         (peek_die_abbrev): Likewise.
16035         (fixup_go_packaging): Likewise.
16036         (process_full_comp_unit): Likewise.
16037         (process_full_type_unit): Likewise.
16038         (process_imported_unit_die): Likewise.
16039         (dwarf2_compute_name): Likewise.
16040         (dwarf2_physname): Likewise.
16041         (read_import_statement): Likewise.
16042         (create_cus_hash_table): Assign dwarf2_physname instead of
16043         objfile.
16044         (read_func_scope): Access objfile through dwarf2_per_objfile.
16045         (read_lexical_block_scope): Likewise.
16046         (read_call_site_scope): Likewise.
16047         (read_variable): Likewise.
16048         (dwarf2_rnglists_process): Likewise.
16049         (dwarf2_ranges_process): Likewise.
16050         (dwarf2_ranges_read): Likewise.
16051         (dwarf2_record_block_ranges): Likewise.
16052         (dwarf2_add_field): Likewise.
16053         (dwarf2_add_member_fn): Likewise.
16054         (read_structure_type): Likewise.
16055         (process_structure_scope): Likewise.
16056         (read_enumeration_type): Likewise.
16057         (read_array_type): Likewise.
16058         (read_common_block): Likewise.
16059         (read_namespace_type): Likewise.
16060         (read_namespace): Likewise.
16061         (read_module_type): Likewise.
16062         (read_tag_pointer_type): Likewise.
16063         (read_tag_ptr_to_member_type): Likewise.
16064         (read_tag_string_type): Likewise.
16065         (read_subroutine_type): Likewise.
16066         (read_typedef): Likewise.
16067         (read_base_type): Likewise.
16068         (attr_to_dynamic_prop): Likewise.
16069         (read_subrange_type): Likewise.
16070         (read_unspecified_type): Likewise.
16071         (load_partial_dies): Likewise.
16072         (read_partial_die): Likewise.
16073         (find_partial_die): Likewise.
16074         (guess_partial_die_structure_name): Likewise.
16075         (fixup_partial_die): Likewise.
16076         (read_attribute_value): Likewise.
16077         (read_addr_index_from_leb128): Likewise.
16078         (dwarf2_read_addr_index): Likewise.
16079         (dwarf2_string_attr): Likewise.
16080         (lnp_state_machine::check_line_address): Likewise.
16081         (dwarf_decode_lines_1): Likewise.
16082         (dwarf_decode_lines): Likewise.
16083         (dwarf2_start_symtab): Likewise.
16084         (var_decode_location): Likewise.
16085         (new_symbol_full): Likewise.
16086         (dwarf2_const_value_data): Likewise.
16087         (dwarf2_const_value_attr): Likewise.
16088         (dwarf2_const_value): Likewise.
16089         (die_type): Likewise.
16090         (die_containing_type): Likewise.
16091         (lookup_die_type): Likewise.
16092         (guess_full_die_structure_name): Likewise.
16093         (anonymous_struct_prefix): Likewise.
16094         (dwarf2_name): Likewise.
16095         (follow_die_ref_or_sig): Likewise.
16096         (follow_die_offset): Likewise.
16097         (follow_die_ref): Likewise.
16098         (dwarf2_fetch_die_loc_sect_off): Likewise.
16099         (dwarf2_fetch_constant_bytes): Likewise.
16100         (dwarf2_fetch_die_type_sect_off): Likewise.
16101         (dwarf2_get_die_type): Likewise.
16102         (follow_die_sig): Likewise.
16103         (decode_locdesc): Likewise.
16104         (dwarf2_per_cu_objfile): Likewise.
16105         (dwarf2_per_cu_text_offset): Likewise.
16106         (init_one_comp_unit): Assign dwarf2_per_objfile instead of
16107         objfile.
16108         (set_die_type): Access objfile through
16109         dwarf2_per_objfile.
16110
16111 2018-01-07  Simon Marchi  <simon.marchi@ericsson.com>
16112
16113         * valprint.c (converted_character_d): Remove typedef.
16114         (DEF_VEC_O (converted_character_d)): Remove.
16115         (count_next_character): Use std::vector.
16116         (print_converted_chars_to_obstack): Likewise.
16117         (generic_printstr): Likewise.
16118
16119 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16120
16121         * xml-support.h (struct gdb_xml_value): Add constructor.
16122         <value>: Change type to unique_xmalloc_ptr.
16123         (gdb_xml_value_s): Remove typedef.
16124         (DEF_VEC_O (gdb_xml_value_s)): Remove.
16125         (gdb_xml_element_start_handler): Change parameter type to
16126         std::vector.
16127         (xml_find_attribute): Likewise.
16128         * xml-support.c (xml_find_attribute): Change parameter type to
16129         std::vector and adjust.
16130         (gdb_xml_values_cleanup): Remove.
16131         (gdb_xml_parser::start_element): Adjust to std::vector.
16132         (xinclude_start_include): Change paraeter type to std::vector
16133         and adjust.
16134         * btrace.c (check_xml_btrace_version): Likewise.
16135         (parse_xml_btrace_block): Likewise.
16136         (parse_xml_btrace_pt_config_cpu): Likewise.
16137         (parse_xml_btrace_pt): Likewise.
16138         (parse_xml_btrace_conf_bts): Likewise.
16139         (parse_xml_btrace_conf_pt): Likewise.
16140         * memory-map.c (memory_map_start_memory): Likewise.
16141         (memory_map_start_property): Likewise.
16142         * osdata.c (osdata_start_osdata): Likewise.
16143         (osdata_start_item): Likewise.
16144         (osdata_start_column): Likewise.
16145         * remote.c (start_thread): Likewise.
16146         * solib-aix.c (library_list_start_library): Likewise.
16147         (library_list_start_list): Likewise.
16148         * solib-svr4.c (library_list_start_library): Likewise.
16149         (svr4_library_list_start_list): Likewise.
16150         * solib-target.c (library_list_start_segment): Likewise.
16151         (library_list_start_section): Likewise.
16152         (library_list_start_library): Likewise.
16153         (library_list_start_list): Likewise.
16154         * tracepoint.c (traceframe_info_start_memory): Likewise.
16155         (traceframe_info_start_tvar): Likewise.
16156         * xml-syscall.c (syscall_start_syscall): Likewise.
16157         * xml-tdesc.c (tdesc_start_target): Likewise.
16158         (tdesc_start_feature): Likewise.
16159         (tdesc_start_reg): Likewise.
16160         (tdesc_start_union): Likewise.
16161         (tdesc_start_struct): Likewise.
16162         (tdesc_start_flags): Likewise.
16163         (tdesc_start_enum): Likewise.
16164         (tdesc_start_field): Likewise.
16165         (tdesc_start_enum_value): Likewise.
16166         (tdesc_start_vector): Likewise.
16167
16168 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16169
16170         * extension.h (struct xmethod_worker) <clone>: Remove.
16171         * python/py-xmethods.c (struct python_xmethod_worker) <clone>:
16172         Remove.
16173         (python_xmethod_worker::clone): Remove.
16174         * valops.c (find_overload_match): Use std::move instead of
16175         clone.
16176
16177 2018-01-07  Simon Marchi  <simon.marchi@polymtl.ca>
16178
16179         * extension-priv.h (enum ext_lang_rc): Remove, move to extension.h.
16180         (struct extension_language_ops) <clone_xmethod_worker_data>: Remove.
16181         <free_xmethod_worker_data>: Remove.
16182         <get_matching_xmethod_workers>: Chance VEC to std::vector.
16183         <get_xmethod_arg_types>: Remove.
16184         <get_xmethod_result_type>: Remove.
16185         <invoke_xmethod>: Remove.
16186         * extension.c (new_xmethod_worker): Remove.
16187         (clone_xmethod_worker): Remove.
16188         (get_matching_xmethod_workers): Return void, pass std::vector by
16189         pointer.
16190         (get_xmethod_arg_types): Rename to...
16191         (xmethod_worker::get_arg_types): ... this, and adjust.
16192         (get_xmethod_result_type): Rename to...
16193         (xmethod_worker::get_result_type): ... this, and adjust.
16194         (invoke_xmethod): Remove.
16195         (free_xmethod_worker): Remove.
16196         (free_xmethod_worker_vec): Remove.
16197         * extension.h (enum ext_lang_rc): Move here from
16198         extension-priv.h.
16199         (struct xmethod_worker): Add constructor and destructor.
16200         <data>: Remove.
16201         <value>: Remove.
16202         <invoke, clone, do_get_result_type, do_get_arg_types>: New
16203         virtual pure methods.
16204         <get_arg_types, get_result_type>: New methods.
16205         (xmethod_worker_ptr): Remove typedef.
16206         (DEF_VEC_P (xmethod_worker_ptr)): Remove.
16207         (xmethod_worker_vec): Remove typedef.
16208         (xmethod_worker_up): New typedef.
16209         (invoke_xmethod): Remove.
16210         (clone_xmethod_worker): Remove.
16211         (free_xmethod_worker): Remove.
16212         (free_xmethod_worker_vec): Remove.
16213         (get_xmethod_arg_types): Remove.
16214         (get_xmethod_result_type): Remove.
16215         * valops.c (find_method_list): Use std::vector, don't use
16216         intermediate vector.
16217         (value_find_oload_method_list): Use std::vector.
16218         (find_overload_match): Use std::vector.
16219         (find_oload_champ): Use std::vector.
16220         * value.c (value_free): Use operator delete.
16221         (value_of_xmethod): Rename to...
16222         (value_from_xmethod): ... this.  Don't assign
16223         xmethod_worker::value, take rvalue-reference.
16224         (result_type_of_xmethod): Adjust.
16225         (call_xmethod): Adjust.
16226         * value.h: Include extension.h.
16227         (struct xmethod_worker): Don't forward-declare.
16228         (value_of_xmethod): Rename to...
16229         (value_from_xmethod): ... this, take rvalue-reference.
16230         * python/py-xmethods.c (struct gdbpy_worker_data): Rename to...
16231         (struct python_xmethod_worker): ... this, add constructor and
16232         destructor.
16233         <invoke, clone, do_get_arg_types, do_get_result_type>: Implement.
16234         (gdbpy_free_xmethod_worker_data): Rename to...
16235         (python_xmethod_worker::~python_xmethod_worker): ... this and
16236         adjust.
16237         (gdbpy_clone_xmethod_worker_data): Rename to...
16238         (python_xmethod_worker::clone): ... this and adjust.
16239         (gdbpy_get_matching_xmethod_workers): Use std::vector, don't use
16240         temporary vector.
16241         (gdbpy_get_xmethod_arg_types): Rename to...
16242         (python_xmethod_worker::do_get_arg_types): ... this and adjust.
16243         (gdbpy_get_xmethod_result_type): Rename to...
16244         (python_xmethod_worker::do_get_result_type): ... this and
16245         adjust.
16246         (gdbpy_invoke_xmethod): Rename to...
16247         (python_xmethod_worker::invoke): ... this and adjust.
16248         (new_python_xmethod_worker): Rename to...
16249         (python_xmethod_worker::python_xmethod_worker): ... this and
16250         adjust.
16251         * python/python-internal.h (gdbpy_clone_xmethod_worker_data):
16252         Remove.
16253         (gdbpy_free_xmethod_worker_data): Remove.
16254         (gdbpy_get_matching_xmethod_workers): Use std::vector.
16255         (gdbpy_get_xmethod_arg_types): Remove.
16256         (gdbpy_get_xmethod_result_type): Remove.
16257         (gdbpy_invoke_xmethod): Remove.
16258         * python/python.c (python_extension_ops): Remove obsolete
16259         callbacks.
16260
16261 2018-01-05  Pedro Alves  <palves@redhat.com>
16262
16263         PR gdb/18653
16264         * common/signals-state-save-restore.c
16265         (save_original_signals_state): New parameter 'quiet'.  Warn if we
16266         find a custom handler preinstalled, instead of internal erroring.
16267         But only warn if !quiet.
16268         * common/signals-state-save-restore.h
16269         (save_original_signals_state): New parameter 'quiet'.
16270         * main.c (captured_main_1): Move save_original_signals_state call
16271         after option handling, and pass QUIET.
16272
16273 2018-01-05  Pedro Alves  <palves@redhat.com>
16274
16275         * spu-tdep.c (spu_catch_start): Pass
16276         symbol_name_match_type::SEARCH_NAME to block_lookup_symbol.
16277
16278 2018-01-05  Pedro Alves  <palves@redhat.com>
16279
16280         PR gdb/22670
16281         * ada-lang.c (literal_symbol_name_matcher): New function.
16282         (ada_get_symbol_name_matcher): Use it for
16283         symbol_name_match_type::SEARCH_NAME.
16284         * block.c (block_lookup_symbol): New parameter 'match_type'.  Pass
16285         it down instead of assuming symbol_name_match_type::FULL.
16286         * block.h (block_lookup_symbol): New parameter 'match_type'.
16287         * c-valprint.c (print_unpacked_pointer): Use
16288         lookup_symbol_search_name instead of lookup_symbol.
16289         * compile/compile-object-load.c (get_out_value_type): Pass down
16290         symbol_name_match_type::SEARCH_NAME.
16291         * cp-namespace.c (cp_basic_lookup_symbol): Pass down
16292         symbol_name_match_type::FULL.
16293         * cp-support.c (cp_get_symbol_name_matcher): Handle
16294         symbol_name_match_type::SEARCH_NAME.
16295         * infrun.c (insert_exception_resume_breakpoint): Use
16296         lookup_symbol_search_name.
16297         * p-valprint.c (pascal_val_print): Use lookup_symbol_search_name.
16298         * psymtab.c (maintenance_check_psymtabs): Use
16299         symbol_name_match_type::SEARCH_NAME and SYMBOL_SEARCH_NAME.
16300         * stack.c (print_frame_args): Use lookup_symbol_search_name and
16301         SYMBOL_SEARCH_NAME.
16302         * symtab.c (lookup_local_symbol): Don't demangle the lookup name
16303         if symbol_name_match_type::SEARCH_NAME.
16304         (lookup_symbol_in_language): Pass down
16305         symbol_name_match_type::FULL.
16306         (lookup_symbol_search_name): New.
16307         (lookup_language_this): Pass down
16308         symbol_name_match_type::SEARCH_NAME.
16309         (lookup_symbol_aux, lookup_local_symbol): New parameter
16310         'match_type'.  Pass it down.
16311         * symtab.h (symbol_name_match_type::SEARCH_NAME): New enumerator.
16312         (lookup_symbol_search_name): New declaration.
16313         (lookup_symbol_in_block): New 'match_type' parameter.
16314
16315 2018-01-05  Pedro Alves  <palves@redhat.com>
16316
16317         PR gdb/22670
16318         * ada-lang.c (ada_lookup_encoded_symbol): Reimplement in terms of
16319         ada_lookup_symbol.
16320         (ada_lookup_symbol): Reimplement in terms of
16321         ada_lookup_symbol_list, bits factored out from
16322         ada_lookup_encoded_symbol.
16323
16324 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16325
16326         * ada-exp.y (write_object_renaming): When subscripting an array
16327         using a symbol as the index, pass the block in call to
16328         ada_lookup_encoded_symbol when looking that symbol up.
16329
16330 2018-01-05  Jerome Guitton  <guitton@adacore.com>
16331
16332         * ada-lang.c (ada_array_length): Use ada_index_type instead of
16333         TYPE_INDEX_TYPE.
16334
16335 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16336
16337         * ada-lang.c (ada_to_fixed_value_create): Add handling of
16338         the case where VALUE_LVAL (val0) is not lval_memory.
16339
16340 2018-01-05  Xavier Roirand  <roirand@adacore.com>
16341
16342         * ada-valprint.c (print_optional_low_bound): Handle
16343         character-indexed array printing like boolean-indexed array
16344         printing.
16345
16346 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16347
16348         * NEWS: Create a new section for the next release branch.
16349         Rename the section of the current branch, now that it has
16350         been cut.
16351
16352 2018-01-05  Joel Brobecker  <brobecker@adacore.com>
16353
16354         GDB 8.1 branch created (5219ac6237c272b938c28517bf371429260c71e7):
16355         * version.in: Bump version to 8.1.50.DATE-git.
16356
16357 2018-01-03  Xavier Roirand  <roirand@adacore.com>
16358
16359         * ada-lang.h (ada_exception_catchpoint_kind) <ada_catch_handlers>:
16360         Add field.
16361         * ada-lang.c (struct exception_support_info) <catch_handlers_sym>:
16362         Add field.
16363         (default_exception_support_info) <catch_handlers_sym>: Add field.
16364         (exception_support_info_fallback) <catch_handlers_sym>: Add field.
16365         (ada_exception_name_addr_1): Add "catch handlers" handling.
16366         (ada_exception_catchpoint_cond_string) <ex>: New parameter.
16367         Update all callers.
16368         (create_excep_cond_exprs) <ex>: Add parameter.
16369         (re_set_exception): Update create_excep_cond_exprs call.
16370         (print_it_exception, print_one_exception, print_mention_exception)
16371         (print_recreate_exception): Add "catch handler" handling.
16372         (allocate_location_catch_handlers, re_set_catch_handlers)
16373         (check_status_catch_handlers, print_it_catch_handlers)
16374         (print_one_catch_handlers, print_mention_catch_handlers)
16375         (print_recreate_catch_handlers): New function.
16376         (catch_handlers_breakpoint_ops): New variable.
16377         (catch_ada_exception_command_split) <is_catch_handlers_cmd>:
16378         Add parameter.  Add "catch handler" handling.
16379         (ada_exception_sym_name, ada_exception_breakpoint_ops):
16380         Add "catch handler" handling.
16381         (ada_exception_catchpoint_cond_string): Add "catch handler"
16382         handling.
16383         (create_ada_exception_catchpoint): Update create_excep_cond_exprs
16384         call.
16385         (catch_ada_handlers_command): New function.
16386         (initialize_ada_catchpoint_ops): Initialize "catch handlers"
16387         operations structure.
16388         (_initialize_ada_language): Add "catch handlers" command entry.
16389         * NEWS: Document "catch handlers" feature.
16390
16391 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16392
16393         * ada-lang.c (ada_value_slice_from_ptr): Take array stride into
16394         account when creating the array type of the slice.
16395         (ada_value_slice): Likewise.
16396
16397 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16398
16399         * gdbtypes.h (enum dynamic_prop_node_kind) <DYN_PROP_BYTE_STRIDE>:
16400         New enum value.
16401         (create_array_type_with_stride): Add byte_stride_prop parameter.
16402         * gdbtypes.c (create_array_type_with_stride) <byte_stride_prop>:
16403         New parameter.  Update all callers in this file.
16404         (array_type_has_dynamic_stride): New function.
16405         (is_dynamic_type_internal, resolve_dynamic_array): Add handling
16406         of arrays with dynamic byte strides.
16407         * dwarf2read.c (read_array_type): Add support for dynamic
16408         DW_AT_byte_stride attributes.
16409
16410 2018-01-02  Joel Brobecker  <brobecker@adacore.com>
16411
16412         * dwarf2read.c (read_unspecified_type): Treat
16413         DW_TAG_enumeration_type DIEs from Ada units as stubs.
16414
16415 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16416
16417         Update copyright year range in all GDB files.
16418
16419 2018-01-01, 18  Joel Brobecker  <brobecker@adacore.com>
16420
16421         * copyright.py (BY_HAND): Remove gdb/testsuite/gdb.base/step-line.inp
16422         and gdb/testsuite/gdb.base/step-line.c.
16423
16424 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16425
16426         * copyright.py (main): Dump the contents of
16427         MULTIPLE_COPYRIGHT_HEADERS (separately) from BY_HAND,
16428         even if BY_HAND is empty.
16429
16430 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16431
16432         * top.c (print_gdb_version): Update Copyright year in version
16433         message.
16434
16435 2018-01-01  Joel Brobecker  <brobecker@adacore.com>
16436
16437         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2017.
16438
16439 For older changes see ChangeLog-2017.
16440 \f
16441 Local Variables:
16442 mode: change-log
16443 left-margin: 8
16444 fill-column: 74
16445 version-control: never
16446 coding: utf-8
16447 End: