Fix PR gdb/20418 - Problems with synchronous commands and new-ui
[external/binutils.git] / gdb / ChangeLog
1 2016-08-09  Pedro Alves  <palves@redhat.com>
2
3         PR gdb/20418
4         * event-top.c (ui_register_input_event_handler)
5         (ui_unregister_input_event_handler): New functions.
6         (async_enable_stdin): Register input in the event loop.
7         (async_disable_stdin): Unregister input from the event loop.
8         (gdb_setup_readline): Register input in the event loop.
9         * infrun.c (check_curr_ui_sync_execution_done): Register input in
10         the event loop.
11         * target.c (target_terminal_inferior): Don't unregister input from
12         the event loop.
13         (target_terminal_ours): Don't register input in the event loop.
14         * target.h (target_terminal_inferior)
15         (target_terminal_ours_for_output, target_terminal_ours): Update
16         comments.
17         * top.h (ui_register_input_event_handler)
18         (ui_unregister_input_event_handler): New declarations.
19         * utils.c (ui_unregister_input_event_handler_cleanup)
20         (prepare_to_handle_input): New functions.
21         (defaulted_query, prompt_for_continue): Use
22         prepare_to_handle_input.
23
24 2016-08-09  Pedro Alves  <palves@redhat.com>
25
26         PR mi/20431
27         * mi/mi-main.c (mi_execute_command): Enable input and set prompt
28         state to PROMPT_NEEDED.
29
30 2016-08-09  Pedro Alves  <palves@redhat.com>
31
32         PR gdb/18653
33         * Makefile.in (SFILES): Add
34         common/signals-state-save-restore.c.
35         (HFILES_NO_SRCDIR): Add common/signals-state-save-restore.h.
36         (COMMON_OBS): Add signals-state-save-restore.o.
37         (signals-state-save-restore.o): New rule.
38         * configure: Regenerate.
39         * fork-child.c: Include "signals-state-save-restore.h".
40         (fork_inferior): Call restore_original_signals_state.
41         * main.c: Include "signals-state-save-restore.h".
42         (captured_main): Call save_original_signals_state.
43         * common/common.m4: Add sigaction to AC_CHECK_FUNCS checks.
44         * common/signals-state-save-restore.c: New file.
45         * common/signals-state-save-restore.h: New file.
46
47 2016-08-09  Pedro Alves  <palves@redhat.com>
48
49         * value.c (unpack_value_bitfield): Skip unpacking if the parent
50         has no contents buffer to begin with.
51
52 2016-08-08  Pedro Alves  <palves@redhat.com>
53
54         * features/i386/amd64-avx-mpx-linux.c: Regenerate.
55         * features/i386/amd64-avx-mpx.c: Regenerate.
56         * features/i386/i386-avx-mpx-linux.c: Regenerate.
57         * features/i386/i386-avx-mpx.c: Regenerate.
58
59 2016-08-05  Simon Marchi  <simon.marchi@ericsson.com>
60
61         * event-top.h (cli_command_loop): Remove.
62
63 2016-08-05  Pedro Alves  <palves@redhat.com>
64
65         PR remote/20398
66         * remote-fileio.c (remote_fileio_quit_handler): Check the quit
67         flag before calling quit.
68
69 2016-08-05  Pedro Alves  <palves@redhat.com>
70
71         * NEWS: Mention that GDB and GDBserver build with a C++ compiler
72         by default.
73
74 2016-08-05  Pedro Alves  <palves@redhat.com>
75
76         * build-with-cxx.m4: Change help string to be in terms of
77         --disable-build-with-cxx.
78         * configure: Regenerate.
79
80 2016-08-04  Yao Qi  <yao.qi@linaro.org>
81
82         * aarch64-linux-nat.c (tdesc_arm_with_vfpv3): Remove the
83         declaration.
84         (aarch64_linux_read_description): Remove code on getting
85         auxv and select target description on it.  Select target
86         description by the result of NT_ARM_VFP ptrace request.
87
88 2016-08-03  Tom Tromey  <tom@tromey.com>
89
90         PR python/18565:
91         * python/py-frame.c (frapy_function): Use find_frame_funname.
92
93 2016-08-03  Tom Tromey  <tom@tromey.com>
94
95         * stack.c (find_frame_funname): Avoid any possible leak in case
96         cp_remove_params can throw.
97
98 2016-08-03  Tom Tromey  <tom@tromey.com>
99
100         * NEWS: Mention new Python breakpoint events.
101
102 2016-08-02  Tom Tromey  <tom@tromey.com>
103
104         * MAINTAINERS (Core): Add self as Rust maintainer.
105
106 2016-08-01  Joel Brobecker  <brobecker@adacore.com>
107
108         * NEWS: Create a new section for the next release branch.
109         Rename the section of the current branch, now that it has
110         been cut.
111
112 2016-08-01  Joel Brobecker  <brobecker@adacore.com>
113
114         GDB 7.12 branch created (41bfcd638a4e0e48b96ce4de2845372dea481322):
115         * version.in: Bump version to 7.12.50.DATE-git.
116
117 2016-07-27  Alan Modra  <amodra@gmail.com>
118
119         * amd64-darwin-tdep.c: Don't include libbfd.h.
120         * i386-darwin-tdep.c: Likewise.
121         * rs6000-nat.c: Likewise.
122         * rs6000-tdep.c: Likewise.
123
124 2016-07-26  Tom Tromey  <tom@tromey.com>
125
126         * symtab.c (register_symbol_computed_impl): Update.
127         PR python/20190:
128         * value.h (symbol_read_needs): Declare.
129         (symbol_read_needs_frame): Add comment.
130         * symtab.h (struct symbol_computed_ops) <read_variable>: Update
131         comment.
132         <get_symbol_read_needs>: Rename.  Change return type.
133         * findvar.c (symbol_read_needs): New function.
134         (symbol_read_needs_frame): Rewrite.
135         (default_read_var_value): Use symbol_read_needs.
136         * dwarf2loc.c (struct symbol_needs_baton): Rename.
137         <needs>: Renamed from needs_frame.  Changed type.
138         (needs_frame_read_addr_from_reg, symbol_needs_get_reg_value)
139         (symbol_needs_read_mem, symbol_needs_frame_base)
140         (symbol_needs_frame_cfa, symbol_needs_tls_address)
141         (symbol_needs_dwarf_call): Rename.
142         (needs_dwarf_reg_entry_value): Update.
143         (symbol_needs_ctx_funcs, dwarf2_loc_desc_get_symbol_read_needs):
144         Rename and update.
145         (locexpr_get_symbol_read_needs, loclist_symbol_needs): Likewise.
146         (dwarf2_locexpr_funcs, dwarf2_loclist_funcs): Update.
147         * defs.h (enum symbol_needs_kind): New.
148
149 2016-07-26  Pedro Alves  <palves@redhat.com>
150
151         * nat/linux-ptrace.c: Include "gregset.h".
152         (linux_ptrace_test_ret_to_nx): Use PTRACE_GETREGS instead of
153         PTRACE_PEEKUSER.
154
155 2016-07-26  Pedro Alves  <palves@redhat.com>
156
157         * amd64-linux-nat.c (amd64_linux_siginfo_fixup): Rename 'native'
158         parameter to 'ptrace'.
159         * nat/amd64-linux-siginfo.c (GDB_SI_SIZE): New define.
160         (nat_uptr_t): New an unsigned long.
161         (nat_clock_t): Remove attribute __aligned__.
162         (struct nat_timeval): Delete.
163         (nat_siginfo_t): Remove attribute __aligned__.
164         (ptrace_siginfo_t): Define.
165         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
166         (compat_x32_siginfo_from_siginfo)
167         (siginfo_from_compat_x32_siginfo): Make 'from' parameter const.
168         Convert through a ptrace_siginfo_t instead of a nat_siginfo_t.
169         Remove casts.
170         (amd64_linux_siginfo_fixup_common): Rename 'native' parameter to
171         'ptrace'.  Remove static assertions.
172         (top level): New static assertions.
173
174 2016-07-25  Simon Marchi  <simon.marchi@ericsson.com>
175
176         * top.h (make_delete_ui_cleanup): New declaration.
177         * top.c (delete_ui_cleanup): New function.
178         (make_delete_ui_cleanup): New function.
179         (new_ui_command): Create restore_ui cleanup earlier, create a
180         delete_ui cleanup and discard it on success.
181
182 2016-07-25  Pedro Alves  <palves@redhat.com>
183             Jan Kratochvil  <jan.kratochvil@redhat.com>
184
185         * nat/linux-procfs.c (parse_proc_status_state): Handle lowercase
186         't'.
187
188 2016-07-25  Pedro Alves  <palves@redhat.com>
189
190         * nat/linux-procfs.c (enum proc_state): New enum.
191         (parse_proc_status_state): New function.
192         (linux_proc_pid_get_state): Replace output string buffer parameter
193         with an output proc_state parameter.  Use parse_proc_status_state.
194         (linux_proc_pid_is_gone): Adjust to use proc_state values.
195         (linux_proc_pid_has_state): Change type of 'state' parameter; now
196         an enum proc_state.  Adjust to linux_proc_pid_get_state interface
197         change.
198         (linux_proc_pid_is_stopped)
199         (linux_proc_pid_is_trace_stopped_nowarn)
200         (linux_proc_pid_is_zombie_maybe_warn): Adjust to
201         linux_proc_pid_get_state interface change.
202
203 2016-07-25  Tim Wiederhake  <tim.wiederhake@intel.com>
204
205         * MAINTAINERS (Write After Approval): Add Tim Wiederhake
206
207 2016-07-25  Tim Wiederhake  <tim.wiederhake@intel.com>
208
209         * NEWS: Resume btrace on reconnect.
210         * record-btrace.c: Added record-btrace.h include.
211         (record_btrace_open): Split into this and ...
212         (record_btrace_push_target): ... this.
213         (record_btrace_disconnect): New function.
214         (init_record_btrace_ops): Use record_btrace_disconnect.
215         * record-btrace.h: New file.
216         * remote.c: Added record-btrace.h include.
217         (remote_start_remote): Check recording status.
218         (remote_btrace_maybe_reopen): New function.
219
220 2016-07-23  Gabriel Krisman Bertazi  <gabriel@krisman.be>
221
222         * xml-syscall.c (get_syscalls_by_group): New.
223         (get_syscall_group_names): New.
224         (struct syscall_group_desc): New structure to store group data.
225         (struct syscalls_info): Include field to store the group list.
226         (sysinfo_free_syscall_group_desc): New.
227         (free_syscalls_info): Free group list.
228         (syscall_group_create_syscall_group_desc): New.
229         (syscall_group_add_syscall): New.
230         (syscall_create_syscall_desc): Add syscall to its groups.
231         (syscall_start_syscall): Load group attribute.
232         (syscall_group_get_group_by_name): New.
233         (xml_list_syscalls_by_group): New.
234         (xml_list_of_groups): New.
235         * xml-syscall.h (get_syscalls_by_group): Export function
236         to retrieve a list of syscalls filtered by the group name.
237         (get_syscall_group_names): Export function to retrieve the list
238         of syscall groups.
239         * break-catch-syscall.c (catch_syscall_split_args): Verify if
240         argument is a syscall group and expand it to a list of syscalls
241         when creating catchpoints.
242         (catch_syscall_completer): Add word completion for system call
243         groups.
244         * configure.ac: Include dependency for xsltproc when building
245         in maintainer-mode.
246         * break-catch-syscall.c (_initialize_breakpoint): Update catch
247         syscall command documentation.
248         * NEWS: Include section about catching groups of syscalls.
249         * configure: Regenerate.
250         * data-directory/Makefile.in: Generate syscall xml when building
251         in maintainer mode.
252         * syscalls/gdb-syscalls.dtd: Include group attribute to the
253         syscall element.
254         * syscalls/apply-defaults.xsl: New.
255         * syscalls/linux-defaults.xml.in: New.
256         * syscalls/aarch64-linux.xml: Rename to aarch64-linux.xml.in.
257         * syscalls/amd64-linux.xml: Rename to amd64-linux.xml.in.
258         * syscalls/arm-linux.xml: Rename to arm-linux.xml.in.
259         * syscalls/bfin-linux.xml: Rename to bfin-linux.xml.in.
260         * syscalls/i386-linux.xml: Rename to i386-linux.xml.in.
261         * syscalls/mips-n32-linux.xml: Rename to mips-n32-linux.xml.in.
262         * syscalls/mips-n64-linux.xml: Rename to mips-n64-linux.xml.in.
263         * syscalls/mips-o32-linux.xml: Rename to mips-o32-linux.xml.in.
264         * syscalls/ppc-linux.xml: Rename to ppc-linux.xml.in.
265         * syscalls/ppc64-linux.xml: Rename to ppc64-linux.xml.in.
266         * syscalls/s390-linux.xml: Rename to s390-linux.xml.in.
267         * syscalls/s390x-linux.xml: Rename to s390x-linux.xml.in.
268         * syscalls/sparc-linux.xml: Rename to sparc-linux.xml.in.
269         * syscalls/sparc64-linux.xml: Rename to sparc64-linux.xml.in.
270         * syscalls/aarch64-linux.xml: Regenerate.
271         * syscalls/amd64-linux.xml: Regenerate.
272         * syscalls/arm-linux.xml: Regenerate.
273         * syscalls/i386-linux.xml: Regenerate.
274         * syscalls/mips-n32-linux.xml: Regenerate.
275         * syscalls/mips-n64-linux.xml: Regenerate.
276         * syscalls/mips-o32-linux.xml: Regenerate.
277         * syscalls/ppc-linux.xml: Regenerate.
278         * syscalls/ppc64-linux.xml: Regenerate.
279         * syscalls/s390-linux.xml: Regenerate.
280         * syscalls/s390x-linux.xml: Regenerate.
281         * syscalls/sparc-linux.xml: Regenerate.
282         * syscalls/sparc64-linux.xml: Regenerate.
283
284 2016-07-23  Andrew Pinski  <apinski@cavium.com>
285
286         * nat/aarch64-linux-hw-point.c
287         (aarch64_linux_get_debug_reg_capacity): Handle
288         ARMv8.1 and ARMv8.2 debug versions.
289         * nat/aarch64-linux-hw-point.h
290         (AARCH64_DEBUG_ARCH_V8_1): New define.
291         (AARCH64_DEBUG_ARCH_V8_2): New define.
292
293 2016-06-30  Руслан Ижбулатов  <lrn1986@gmail.com>
294
295         PR gdb/14529
296         * windows-nat.c (signal_event_command): New command 'signal-event'
297         for W32 JIT debug support.
298         * NEWS: Add an entry about the new 'signal-event' command.
299
300 2016-07-22  Tom Tromey  <tom@tromey.com>
301
302         PR rust/20162:
303         * dwarf2read.c (scan_partial_symbols) <DW_TAG_structure_type>:
304         Call scan_partial_symbols for children when reading a Rust CU.
305         (dwarf2_physname): Ignore invalid DW_AT_linkage_name generated by
306         rustc.
307         (process_structure_scope) <DW_TAG_subprogram>: Call
308         read_func_scope for Rust.
309
310 2016-07-22  Yao Qi  <yao.qi@linaro.org>
311
312         * ctf.c (ctf_traceframe_info): Call bt_ctf_get_uint64 rather than
313         bt_ctf_get_int64.
314
315 2016-07-21  Tom Tromey  <tom@tromey.com>
316
317         * rust-lang.c (rust_tuple_struct_type_p): Return false for empty
318         structs.
319         * rust-exp.y (struct_expr_list): Allow empty elements.
320
321 2016-07-21  Tom Tromey  <tom@tromey.com>
322
323         * configure: Rebuild.
324         * warning.m4 (AM_GDB_WARNINGS) <build_warnings>: Add
325         -Wunused-but-set-parameter, -Wunused-but-set-variable.
326
327 2016-07-21  Pedro Alves  <palves@redhat.com>
328
329         * go32-nat.c (go32_create_inferior): Add cast.
330         * ser-go32.c (dos_noop): Delete.
331         (dos_flush_output, dos_setparity, dos_drain_output): New
332         functions.
333         (dos_write): Add cast.
334         (dos_ops): Use dos_flush_output, dos_setparity and
335         dos_drain_output.
336         * top.c (do_chdir_cleanup): Add cast.
337
338 2016-07-21  Pedro Alves  <palves@redhat.com>
339
340         * windows-nat.c (handle_exception): Remove "th".
341
342 2016-07-21  Pedro Alves  <palves@redhat.com>
343
344         * varobj.c (varobj_value_get_print_value): Move "gdbarch" to block
345         scope that uses it.
346
347 2016-07-20  John Baldwin  <jhb@FreeBSD.org>
348
349         * fbsd-nat.c (fbsd_enable_proc_events): Enable "PTRACE_VFORK"
350         events.
351         (fbsd_pending_vfork_done): Only define if "PTRACE_VFORK" is not
352         defined.
353         (fbsd_add_vfork_done): Likewise.
354         (fbsd_is_vfork_done_pending): Likewise.
355         (fbsd_next_vfork_done): Likewise.
356         (fbsd_resume): Only ignore pending vfork done events if
357         "PTRACE_VFORK" is not defined.
358         (fbsd_wait): Only look for pending vfork done events if
359         "PTRACE_VFORK" is not defined.
360         [PTRACE_VFORK]: Handle "PL_FLAG_VFORKED" and "PL_FLAG_VFORK_DONE"
361         events.
362         (fbsd_follow_fork): Only fake a vfork done event if "PTRACE_VFORK"
363         is not defined.
364
365 2016-07-20  John Baldwin  <jhb@FreeBSD.org>
366
367         * fbsd-nat.c (fbsd_wait): Use "fbsd_enable_proc_events" on
368         new child processes.
369
370 2016-07-20  John Baldwin  <jhb@FreeBSD.org>
371
372         * fbsd-nat.c (fbsd_enable_lwp_events): Remove function.
373         (fbsd_enable_proc_events): New function.
374         (fbsd_enable_follow_fork): Remove function.
375         (fbsd_post_startup_inferior): Use "fbsd_enable_proc_events".
376         (fbsd_post_attach): Likewise.
377
378 2016-07-15  John Baldwin  <jhb@FreeBSD.org>
379
380         * common/signals.c (gdb_signal_from_host): Handle SIGLIBRT.
381         (do_gdb_signal_to_host): Likewise.
382         * infrun.c (_initialize_infrun): Pass GDB_SIGNAL_LIBRT through to
383         programs.
384         * proc-events.c (signal_table): Add entry for SIGLIBRT.
385
386 2016-07-14  Tom Tromey  <tom@tromey.com>
387
388         * python/py-breakpoint.c (gdbpy_breakpoint_deleted): Add missing
389         newline.
390
391 2016-07-14  Tom Tromey  <tom@tromey.com>
392
393         * mips-tdep.c (micromips_scan_prologue): Remove "frame_addr".
394         (mips_o32_push_dummy_call): Remove "stack_used_p".
395         * aarch64-tdep.c (aarch64_record_data_proc_imm): Remove
396         "insn_bit28".
397         * rust-lang.c (rust_print_type): Remove "len".
398         * rust-exp.y (super_name): Remove "current_len".
399         * python/py-framefilter.c (py_print_type): Remove "type".
400         * mdebugread.c (parse_partial_symbols): Remove
401         "past_first_source_file".
402         <N_SO>: Remove "valu", "first_so_symnum", "prev_textlow_not_set".
403         * m2-valprint.c (m2_print_unbounded_array): Remove
404         "content_type".
405         (m2_val_print): Remove "i".
406         * linespec.c (unexpected_linespec_error): Remove "cleanup".
407         * f-valprint.c (f_val_print): Remove "i".
408         * elfread.c (elf_symtab_read): Remove "offset".
409         * dwarf2-frame.c (dwarf2_fetch_cfa_info): Remove "addr_size".
410         * jit.c (jit_dealloc_cache): Remove "i" and "frame_arch".
411
412 2016-07-14  Tom Tromey  <tom@tromey.com>
413
414         * arch-utils.c (default_skip_permanent_breakpoint): Remove
415         "bp_insn".
416         * disasm.c (do_assembly_only): Remove "num_displayed".
417         * dwarf2read.c (read_abbrev_offset): Remove "length".
418         (dwarf_decode_macro_bytes) <DW_MACINFO_vendor_ext>: Remove
419         "constant".
420         * m32c-tdep.c (make_regs): Remove "r2hl", "r3hl", and "intbhl".
421         * microblaze-tdep.c (microblaze_frame_cache): Remove "func".
422         * tracefile.c (trace_save): Remove "status".
423
424 2016-07-14  Tom Tromey  <tom@tromey.com>
425
426         * symfile.c (simple_overlay_update_1): Remove initialization
427         of "size", and commented-out code.
428         (simple_overlay_update): Likewise.
429
430 2016-07-14  Tom Tromey  <tom@tromey.com>
431
432         * tui/tui-winsource.c (tui_show_source_line): Use getcurx.
433         * tui/tui-io.c (tui_puts): Use getcurx.
434         (tui_redisplay_readline): Likewise.
435
436 2016-07-14  Tom Tromey  <tom@tromey.com>
437
438         * inflow.c (child_terminal_ours_1): Use ATTRIBUTE_UNUSED.
439
440 2016-07-14  Tom Tromey  <tom@tromey.com>
441
442         * corefile.c (reopen_exec_file): Only examine st.st_mtime if stat
443         succeeded.
444
445 2016-07-13  Tom Tromey  <tom@tromey.com>
446
447         PR python/15620, PR python/18620:
448         * python/py-evts.c (gdbpy_initialize_py_events): Call
449         add_new_registry for new events.
450         * python/py-events.h (events_object) <breakpoint_created,
451         breakpoint_deleted, breakpoint_modified>: New fields.
452         * python/py-breakpoint.c (gdbpy_breakpoint_created): Emit the
453         breakpoint changed event.
454         (gdbpy_breakpoint_deleted): Emit the breakpoint deleted event.
455         (gdbpy_breakpoint_modified): New function.
456         (gdbpy_initialize_breakpoints): Attach to the breakpoint modified
457         observer.
458
459 2016-07-13  Tom Tromey  <tom@tromey.com>
460
461         PR python/17698:
462         * NEWS: Update.
463         * python/py-breakpoint.c (bppy_get_pending): New function.
464         (breakpoint_object_getset): Add entry for "pending".
465         * breakpoint.h (pending_breakpoint_p): Declare.
466         * breakpoint.c (pending_breakpoint_p): New function.
467
468 2016-07-13  Tom Tromey  <tom@tromey.com>
469
470         * python/py-breakpoint.c (bppy_get_visibility)
471         (gdbpy_breakpoint_created): Use user_breakpoint_p.
472
473 2016-07-13  Tom Tromey  <tom@tromey.com>
474
475         PR cli/18053:
476         * jit.c (jit_reader_load_command): Use tilde_expand.
477         (_initialize_jit): Fix help for jit-reader-unload.  Set completer
478         for new commands.
479
480 2016-07-12  Tom Tromey  <tom@tromey.com>
481
482         PR python/19293:
483         * python/lib/gdb/command/unwinders.py (do_enable_unwinder): Call
484         gdb.invalidate_cached_frames.
485         * python/lib/gdb/unwinder.py (register_unwinder): Call
486         gdb.invalidate_cached_frames.
487         * python/python.c (gdbpy_invalidate_cached_frames): New function.
488         (python_GdbMethods): Add entry for invalidate_cached_frames.
489
490 2016-07-07  Walfred Tedeschi  <walfred.tedeschi@intel.com>
491
492         * cp-namespace.c (cp_lookup_bare_symbol): Initialize 
493         lang_this.symbol.
494
495 2016-07-07  Walfred Tedeschi  <walfred.tedeschi@intel.com>
496
497         * cp-namespace.c (cp_lookup_bare_symbol): Use language passed as
498         parameter to look for the symbol "this".
499
500
501 2016-07-06  John Baldwin  <jhb@FreeBSD.org>
502
503         * h8300-tdep.c (h8300_print_register): Remove extraneous parentheses.
504
505 2016-07-06  John Baldwin  <jhb@FreeBSD.org>
506
507         * ada-lang.c (ada_unpack_from_contents): Use unsigned constants with
508         left shifts.
509
510 2016-07-06  John Baldwin  <jhb@FreeBSD.org>
511
512         * sh64-tdep.c (sh64_analyze_prologue): Set "uses_fp" when setting
513         the MEDIA_FP_REGNUM register.
514
515 2016-07-06  John Baldwin  <jhb@FreeBSD.org>
516
517         * score-tdep.c (score7_malloc_and_get_memblock): Remove check for
518         negative size.
519
520 2016-07-06  John Baldwin  <jhb@FreeBSD.org>
521
522         * fbsd-nat.c (fbsd_is_vfork_done_pending): Fix return type.
523
524 2016-07-06  Yao Qi  <yao.qi@linaro.org>
525
526         * arm-tdep.c (arm_vfp_cprc_sub_candidate): Don't call
527         arm_vfp_cprc_sub_candidate for static field.
528
529 2016-07-06  Manish Goregaokar  <manish@mozilla.com>
530
531         * rust-lang.c (rust_subscript): Allow subscripting pointers
532
533 2016-07-05  Jan Kratochvil  <jan.kratochvil@redhat.com>
534
535         * configure: Regenerate.
536         * configure.ac (HAVE_LIBBABELTRACE): Fix pos variable dereference.
537
538 2016-07-01  Don Breazeal  <donb@codesourcery.com>
539
540         * remote.c (remote_get_memory_xfer_limit): New function.
541         * target-delegates.c: Regenerate.
542         * target.c (memory_xfer_partial): Call
543         target_ops.to_get_memory_xfer_limit.
544         * target.h (struct target_ops) <to_get_memory_xfer_limit>: New
545         member.
546
547 2016-07-01  John Baldwin  <jhb@FreeBSD.org>
548
549         * fbsd-nat.c (struct fbsd_fork_child_info): Rename to ...
550         (struct fbsd_fork_info): ... this.
551         (struct fbsd_fork_info) <child>: Rename to ...
552         (struct fbsd_fork_info) <ptid>: ... this.
553         (fbsd_pending_children): Update type.
554         (fbsd_remember_child): Update type and field name.
555         (fbsd_is_child_pending): Likewise.
556         (fbsd_pending_vfork_done): New variable.
557         (fbsd_is_vfork_done_pending): New function.
558         (fbsd_next_vfork_done): New function.
559         (fbsd_resume): Don't resume processes with a pending vfork done
560         event.
561         (fbsd_wait): Report pending vfork done events.
562         (fbsd_follow_fork): Delay and record a pending vfork done event
563         for a vfork parent when detaching the child.
564
565 2016-07-01  John Baldwin  <jhb@FreeBSD.org>
566
567         * fbsd-nat.c (super_resume): Move earlier next to "super_wait".
568         (resume_one_thread_cb): Move below fork following helper code.
569         (resume_all_threads_cb): Likewise.
570         (fbsd_resume): Likewise.
571
572 2016-07-01  John Baldwin  <jhb@FreeBSD.org>
573
574         * fbsd-nat.c (fbsd_follow_fork): Only detach child if
575         "detach_fork" is true.
576
577 2016-07-01  John Baldwin  <jhb@FreeBSD.org>
578
579         * x86bsd-nat.c: Include 'gdbthread.h'.
580         (x86bsd_dr_set): Set debug registers on all threads belonging to
581         the current inferior.
582
583 2016-07-01  John Baldwin  <jhb@FreeBSD.org>
584
585         * Makefile.in [HFILES_NO_SRCDIR]: Replace 'amd64bsd-nat.h' with
586         'x86bsd-nat.h'.
587         * amd64bsd-nat.c: Include 'x86bsd-nat.h' instead of
588         'amd64bsd-nat.h'.
589         (amd64bsd_xsave_len): Rename and move to x86bsd-nat.c.
590         (amd64bsd_fetch_inferior_registers): Replace 'amd64bsd_xsave_len'
591         with 'x86bsd_xsave_len'.
592         (amd64bsd_store_inferior_registers): Likewise.
593         (amd64bsd_target): Inherit from x86bsd_target.
594         (amd64bsd_dr_get): Rename and move to x86bsd-nat.c.
595         (amd64bsd_dr_set): Likewise.
596         (amd64bsd_dr_set_control): Likewise.
597         (amd64bsd_dr_set_addr): Likewise.
598         (amd64bsd_dr_get_addr): Likewise.
599         (amd64bsd_dr_get_status): Likewise.
600         (amd64bsd_dr_get_control): Likewise.
601         * amd64fbsd-nat.c: Include 'x86bsd-nat.h' instead of
602         'amd64bsd-nat.h'.
603         (super_mourn_inferior): Move to x86bsd-nat.c.
604         (amd64fbsd_mourn_inferior): Rename and move to x86bsd-nat.c.
605         (amd64fbsd_read_description): Replace 'amd64bsd_xsave_len' with
606         'x86bsd_xsave_len'.
607         (_initialize_amd64fbsd_nat): Remove x86 watchpoint setup and
608         mourn_inferior' target op.
609         * config/i386/fbsd.mh (NATDEPFILES): Add x86bsd-nat.o.
610         * config/i386/fbsd64.mh: Likewise.
611         * config/i386/nbsd64.mh: Likewise.
612         * config/i386/nbsdelf.mh: Likewise.
613         * config/i386/obsd.mh: Likewise.
614         * config/i386/obsd64.mh: Likewise.
615         * i386bsd-nat.c: Include 'x86bsd-nat.h'.
616         (i386bsd_xsave_len): Rename and move to x86bsd-nat.c.
617         (i386bsd_fetch_inferior_registers): Replace 'i386bsd_xsave_len'
618         with 'x86bsd_xsave_len'.
619         (i386bsd_store_inferior_registers): Likewise.
620         (i386bsd_target): Inherit from x86bsd_target.
621         (i386bsd_dr_get): Rename and move to x86bsd-nat.c.
622         (i386bsd_dr_set): Likewise.
623         (i386bsd_dr_set_control): Likewise.
624         (i386bsd_dr_set_addr): Likewise.
625         (i386bsd_dr_get_addr): Likewise.
626         (i386bsd_dr_get_status): Likewise.
627         (i386bsd_dr_get_control): Likewise.
628         * i386bsd-nat.h (i386bsd_xsave_len): Remove.
629         (i386bsd_dr_set_control): Remove.
630         (i386bsd_dr_set_addr): Remove.
631         (i386bsd_dr_get_addr): Remove.
632         (i386bsd_dr_get_status): Remove.
633         (i386bsd_dr_get_control): Remove.
634         * i386fbsd-nat.c: Include 'x86bsd-nat.h'.
635         (i386fbsd_read_description): Replace 'i386bsd_xsave_len' with
636         'x86bsd_xsave_len'.
637         (_initialize_i386fbsd_nat): Remove x86 watchpoint setup and
638         mourn_inferior' target op.
639         * x86bsd-nat.c: New file.
640         * x86bsd-nat.h: New file.
641
642 2016-07-01  Pedro Alves  <palves@redhat.com>
643             Tom Tromey  <tom@tromey.com>
644
645         * jit.c (jit_reader_load_command): Call reinit_frame_cache and
646         jit_inferior_created_hook.
647         (jit_reader_unload_command): Call reinit_frame_cache and
648         jit_inferior_exit_hook.
649         * jit.c (struct jit_unwind_private) <registers>: Delete field.
650         <regcache>: New field.
651         (jit_unwind_reg_set_impl): Set the register's value in the
652         regcache.  Free the passed-in gdb_reg_value.
653         (jit_dealloc_cache): Adjust to free the regcache.
654         (jit_frame_sniffer): Allocate a regcache instead of an array of
655         gdb_reg_value pointers.
656         (jit_frame_this_id): Adjust.
657         (jit_frame_prev_register): Read raw registers off of the regcache
658         instead of from the gdb_reg_value pointer array.  Use
659         gdbarch_pseudo_register_read_value to read pseudo registers.
660         * regcache.c (regcache_raw_set_cached_value): New function,
661         factored out from ...
662         (regcache_raw_write): ... here.
663         * regcache.h (regcache_raw_set_cached_value): Declare.
664
665 2016-07-01  Pedro Alves  <palves@redhat.com>
666             Antoine Tremblay  <antoine.tremblay@ericsson.com>
667
668         * inf-ptrace.c (inf_ptrace_detach_success): New function, factored
669         out from ...
670         (inf_ptrace_detach): ... here.
671         * inf-ptrace.h (inf_ptrace_detach_success): New declaration.
672         * linux-nat.c (get_pending_status): Rename to ...
673         (get_detach_signal): ... this, and return a host signal instead of
674         filling in a wait status.
675         (detach_one_lwp): New function, factored out from detach_callback
676         and adjusted to handle detaching from a zombie thread.
677         (detach_callback): Skip the leader thread.
678         (linux_nat_detach): No longer defer to inf_ptrace_detach to detach
679         the leader thread, nor build a signal string to pass down.
680         Instead, use target_announce_detach, detach_one_lwp and
681         inf_ptrace_detach_success.
682
683 2016-07-01  Pedro Alves  <palves@redhat.com>
684
685         * breakpoint.c (breakpoint_init_inferior): Discard watchpoint
686         locations.
687         * infcmd.c (detach_command): Call breakpoint_init_inferior.
688
689 2016-07-01  Pedro Alves  <palves@redhat.com>
690
691         * darwin-nat.c (darwin_detach): Use target_announce_detach.
692         * inf-ptrace.c (inf_ptrace_detach): Likewise.
693         * nto-procfs.c (procfs_detach): Likewise.
694         * remote.c (remote_detach_1): Likewise.
695         * target.c (target_announce_detach): New function.
696         * target.h (target_announce_detach): New declaration.
697
698 2016-06-29  Tom Tromey  <tom@tromey.com>
699
700         PR python/20129:
701         * python/lib/gdb/command/frame_filters.py (_do_enable_frame_filter)
702         (SetFrameFilterPriority._set_filter_priority): Use "frame_filter",
703         not "name".
704
705 2016-06-29  Tom Tromey  <tom@tromey.com>
706
707         PR gdb/17210:
708         * target.c (free_memory_read_result_vector): Take a pointer to the
709         VEC as an argument.
710         (read_memory_robust): Install a cleanup for "result".
711         * mi/mi-main.c (mi_cmd_data_read_memory_bytes): Update.
712
713 2016-06-29  Manish Goregaokar  <manish@mozilla.com>
714
715         * rust-lang.c (rust_get_disr_info): Initialize saveptr to NULL.
716
717 2016-06-29  Manish Goregaokar  <manish@mozilla.com>
718
719         * rust-lang.c (rust_get_disr_info): Use strtok_r instead of strsep.
720
721 2016-06-28  Yao Qi  <yao.qi@linaro.org>
722
723         * aarch64-tdep.c (aarch64_displaced_step_b): Use int64_t for
724         variable new_offset.
725
726 2016-06-27  Manish Goregaokar  <manish@mozilla.com>
727
728         * rust-lang.c (rust_print_type, rust_decorations): Print unit
729         types as "()".
730         (rust_print_type): Omit return type for functions returning unit.
731
732 2016-06-25  Pierre-Marie de Rodat  <derodat@adacore.com>
733
734         * python/py-breakpoint.c (bppy_init): Clear bppy_pending_object
735         when there is an error during the breakpoint creation.
736
737 2016-06-25  Tom Tromey  <tom@tromey.com>
738
739         * rust-lang.c (rust_get_disr_info, rust_print_type): Fix
740         formatting.
741
742 2016-06-25  Manish Goregaokar  <manish@mozilla.com>
743
744         PR gdb/20239
745         * rust-lang.c (rust_get_disr_info): Correctly interpret
746         NonZero-optimized enums of arbitrary depth.
747         (rust_print_type): Correctly print NonZero-optimized
748         enums.
749
750 2016-06-24  David Taylor  <dtaylor@emc.com>
751
752         PR gdb/17520 Structure offset wrong when 1/4 GB or greater.
753         * c-lang.h: Change all parameters, variables, and struct or union
754         members used as struct or union fie3ld offsets from int to
755         LONGEST.
756         * c-valprint.c: Likewise.
757         * cp-abi.c: Likewise.
758         * cp-abi.h: Likewise.
759         * cp-valprint.c: Likewise.
760         * d-valprint.c: Likewise.
761         * dwarf2loc.c: Likewise.
762         * eval.c: Likewise.
763         * extension-priv.h: Likewise.
764         * extension.c: Likewise.
765         * extension.h: Likewise.
766         * findvar.c: Likewise.
767         * gdbtypes.h: Likewise.
768         * gnu-v2-abi.c: Likewise.
769         * gnu-v3-abi.c: Likewise.
770         * go-valprint.c: Likewise.
771         * guile/guile-internal.h: Likewise.
772         * guile/scm-pretty-print.c: Likewise.
773         * jv-valprint.c Likewise.
774         * opencl-lang.c: Likewise.
775         * p-lang.h: Likewise.
776         * python/py-prettyprint.c: Likewise.
777         * python/python-internal.h: Likewise.
778         * spu-tdep.c: Likewise.
779         * typeprint.c: Likewise.
780         * valarith.c: Likewise.
781         * valops.c: Likewise.
782         * valprint.c: Likewise.
783         * valprint.h: Likewise.
784         * value.c: Likewise.
785         * value.h: Likewise.
786         * p-valprint.c: Likewise.
787         * c-typeprint.c (c_type_print_base): When printing offset, use
788         plongest, not %d.
789         * gdbtypes.c (recursive_dump_type): Ditto.
790
791 2016-06-24  David Taylor  <david.taylor@emc.com>
792
793         * MAINTAINERS (Write After Approval): Add David Taylor.
794
795 2016-06-24  John Baldwin  <jhb@FreeBSD.org>
796
797         * configure.ac: Check for support for system call LWP fields on
798         FreeBSD.
799         * config.in, configure: Rebuild.
800         * data-directory/Makefile.in (SYSCALLS_FILES): Add freebsd.xml.
801         * fbsd-nat.c (fbsd_wait) [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]:
802         Report system call events.
803         [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]
804         (fbsd_set_syscall_catchpoint): New function.
805         (fbsd_nat_add_target) [HAVE_STRUCT_PTRACE_LWPINFO_PL_SYSCALL_CODE]:
806         Set "to_set_syscall_catchpoint" to "fbsd_set_syscall_catchpoint".
807         * fbsd-tdep.c: Include xml-syscall.h
808         (fbsd_get_syscall_number): New function.
809         (fbsd_init_abi): Set XML system call file name.
810         Add "get_syscall_number" gdbarch method.
811         * syscalls/freebsd.xml: New file.
812
813 2016-06-24  John Baldwin  <jhb@FreeBSD.org>
814
815         * fbsd-tdep.c: Include "auxv.h".
816         (fbsd_print_auxv_entry): New function.
817         (fbsd_init_abi): Install gdbarch "print_auxv_entry" method.
818
819 2016-06-24  John Baldwin  <jhb@FreeBSD.org>
820
821         * auxv.c (fprint_auxv_entry): New function.
822         (default_print_auxv_entry): New function.
823         (fprint_target_auxv): Use gdbarch_print_auxv_entry.
824         * auxv.h (enum auxv_format): New enum.
825         (fprint_auxv_entry): Declare.
826         (default_print_auxv_entry): Declare.
827         * gdbarch.sh (print_auxv_entry): New.
828         * gdbarch.c, gdbarch.h: Re-generated.
829
830 2016-06-24  John Baldwin  <jhb@FreeBSD.org>
831
832         * fbsd-nat.c [KERN_PROC_AUXV] New variable super_xfer_partial.
833         (fbsd_xfer_partial): New function.
834         (fbsd_nat_add_target) [KERN_PROC_AUXV] Set "to_xfer_partial" to
835         "fbsd_xfer_partial".
836
837 2016-06-23  Tom Tromey  <tom@tromey.com>
838
839         * symtab.c (symbol_find_demangled_name): Loop over languages and
840         use language_sniff_from_mangled_name.
841         * rust-lang.c (rust_sniff_from_mangled_name): New function.
842         (rust_language_defn): Update.
843         * p-lang.c (pascal_language_defn): Update.
844         * opencl-lang.c (opencl_language_defn): Update.
845         * objc-lang.c (objc_sniff_from_mangled_name): New function.
846         (objc_language_defn): Update.
847         * m2-lang.c (m2_language_defn): Update.
848         * language.h (struct language_defn) <la_sniff_from_mangled_name>: New
849         field.
850         (language_sniff_from_mangled_name): Declare.
851         * language.c (language_sniff_from_mangled_name): New function.
852         (unknown_language_defn, auto_language_defn, local_language_defn):
853         Update.
854         * jv-lang.c (java_sniff_from_mangled_name): New function.
855         (java_language_defn): Use it.
856         * go-lang.c (go_sniff_from_mangled_name): New function.
857         (go_language_defn): Use it.
858         * f-lang.c (f_language_defn): Update.
859         * defs.h (enum language): Reorder.
860         * d-lang.c (d_sniff_from_mangled_name): New function.
861         (d_language_defn): Use it.
862         * cp-support.h (gdb_sniff_from_mangled_name): Declare.
863         * cp-support.c (gdb_sniff_from_mangled_name): New function.
864         * c-lang.c (c_language_defn, cplus_language_defn)
865         (asm_language_defn, minimal_language_defn): Update.
866         * ada-lang.c (ada_sniff_from_mangled_name): New function.
867         (ada_language_defn): Use it.
868
869 2016-06-23  Tom Tromey  <tom@tromey.com>
870
871         * ada-lang.c (ada_extensions): New array.
872         (ada_language_defn): Use it.
873         * c-lang.c (c_extensions): New array.
874         (c_language_defn): Use it.
875         (cplus_extensions): New array.
876         (cplus_language_defn): Use it.
877         (asm_extensions): New array.
878         (asm_language_defn): Use it.
879         (minimal_language_defn): Update.
880         * d-lang.c (d_extensions): New array.
881         (d_language_defn): Use it.
882         * f-lang.c (f_extensions): New array.
883         (f_language_defn): Use it.
884         * go-lang.c (go_language_defn): Update.
885         * jv-lang.c (java_extensions): New array.
886         (java_language_defn): Use it.
887         * language.c (add_language): Call add_filename_language.
888         (unknown_language_defn, auto_language_defn, local_language_defn):
889         Update.
890         * language.h (struct language_defn) <la_filename_extensions>: New
891         field.
892         * m2-lang.c (m2_language_defn): Update.
893         * objc-lang.c (objc_extensions): New array.
894         (objc_language_defn): Use it.
895         * opencl-lang.c (opencl_language_defn): Update.
896         * p-lang.c (p_extensions): New array.
897         (pascal_language_defn): Use it.
898         * rust-lang.c (rust_extensions): New array.
899         (rust_language_defn): Use it.
900         * symfile.c (add_filename_language): No longer static.  Make "ext"
901         const.
902         (init_filename_language_table): Remove.
903         (_initialize_symfile): Update.
904         * symfile.h (add_filename_language): Declare.
905
906 2016-06-23  Tom Tromey  <tom@tromey.com>
907
908         * symfile.c (filename_language_table): Now a VEC.
909         (fl_table_size, fl_table_next): Remove.
910         (add_filename_language): Use VEC_safe_push.
911         (set_ext_lang_command, info_ext_lang_command)
912         (deduce_language_from_filename): Use VEC_iterate.
913         (init_filename_language_table): Use VEC_empty.
914
915 2016-06-23  Tom Tromey  <tom@tromey.com>
916
917         * python/python.c (gdbpy_parameter): Now static.
918         * python/python-internal.h (gdbpy_parameter): Don't declare.
919
920 2016-06-23  Tom Tromey  <tom@tromey.com>
921
922         PR gdb/16483:
923         * python/lib/gdb/command/frame_filters.py
924         (InfoFrameFilter.list_frame_filters): Rename to print_list.  Print
925         nothing if no filters found.  Return value indicating whether
926         filters were printed.
927         (InfoFrameFilter.print_list): Remove.
928         (InfoFrameFilter.invoke): Print message if no frame filters
929         found.
930
931 2016-06-21  Walfred Tedeschi  <walfred.tedeschi@intel.com>
932
933         * f-valprint.c (f_val_print): Add field names for printing
934         derived types fields.
935
936 2016-06-21  Andreas Arnez  <arnez@linux.vnet.ibm.com>
937
938         * s390-linux-tdep.c (s390_iterate_over_regset_sections): Fix typo
939         in name of last-break regset.
940
941 2016-06-21  Pedro Alves  <palves@redhat.com>
942
943         * fork-child.c (fork_inferior): Switch the child to the main UI
944         right after vfork.  Save/restore the current UI in the parent.
945         Flush outputs of the main UI instead of the current UI.
946
947 2016-06-21  Pedro Alves  <palves@redhat.com>
948
949         * breakpoint.c (watchpoint_check): Send watchpoint-deleted output
950         to all UIs.
951
952 2016-06-21  Pedro Alves  <palves@redhat.com>
953
954         * NEWS: Mention support for running interpreters on separate
955         UIs and the new new-ui command.
956
957 2016-06-21  Pedro Alves  <palves@redhat.com>
958
959         * interps.c (set_top_level_interpreter): New function, factored
960         out from captured_main.
961         (interpreter_completer): Make extern.
962         * interps.h (set_top_level_interpreter, interpreter_completer):
963         New declarations.
964         (captured_main): Use set_top_level_interpreter.
965         * top.c [!O_NOCTTY] (O_NOCTTY): Define as 0.
966         (open_terminal_stream, new_ui_command): New functions.
967         (init_main): Install the "new-ui" command.
968
969 2016-06-21  Pedro Alves  <palves@redhat.com>
970
971         * cli/cli-script.c (read_next_line): Adjust to per-UI stdin.
972         (read_command_lines): Use input_interactive_p instead of
973         input_from_terminal_p.
974         * defs.h (struct ui): Forward declare.
975         (input_from_terminal_p): Rename to ...
976         (input_interactive_p): ... this.
977         * event-top.c (stdin_event_handler): Pass 0 as from_tty argument
978         to quit_command.
979         (command_handler): Adjust to per-UI stdin.
980         (handle_line_of_input): Adjust to per-UI stdin and use
981         input_interactive_p instead of ISATTY and input_from_terminal_p.
982         (gdb_readline_no_editing_callback): Adjust to per-UI stdin.
983         (command_line_handler): Always pass true as "from_tty" parameter
984         of handle_line_of_input and execute_command.
985         (async_sigterm_handler): Pass 0 as from_tty argument to
986         quit_command.
987         * inflow.c (interactive_mode, show_interactive_mode): Moved to ...
988         (gdb_has_a_terminal): Don't check interactive_mode here.
989         (_initialize_inflow): Don't install "set interactive-mode" here.
990         * main.c (captured_command_loop): Adjust to per-UI stdin.
991         * mi/mi-interp.c (mi_execute_command_wrapper): Adjust to per-UI
992         stdin.
993         * top.c (new_ui): Save the stdin stream and whether it's a tty.
994         (dont_repeat): Adjust to per-UI stdin.
995         (command_line_input): Adjust to per-UI stdin and to use
996         input_interactive_p.
997         (quit_force): Write history if any UI supports interactive input.
998         (interactive_mode, show_interactive_mode): Move here, from
999         inflow.c.
1000         (input_from_terminal_p): Rename to ...
1001         (input_interactive_p): ... this, and check the "interactive_mode"
1002         global instead of calling gdb_has_a_terminal.
1003         (_initialize_top): Install "set interactive-mode" here.
1004         * top.h (struct ui) <stdin_stream, input_interactive_p>: New
1005         fields.
1006         * utils.c (quit): Pass 0 as from_tty argument to quit_force.
1007         (defaulted_query): Adjust to per-UI stdin and to use
1008         input_interactive_p.
1009
1010 2016-06-21  Pedro Alves  <palves@redhat.com>
1011
1012         * event-top.c (stdin_event_handler): Don't quit gdb if it was a
1013         secondary UI's input stream that closed.  Instead, just delete the
1014         UI.
1015
1016 2016-06-21  Pedro Alves  <palves@redhat.com>
1017
1018         * event-top.c (main_ui_): Delete.
1019         (main_ui, current_ui, ui_list): No longer initialize here.
1020         * main.c (captured_main): UI initialization code factored out to
1021         new new_ui function.
1022         (gdb_main): Wrap captured_main with TRY/CATCH instead of
1023         catch_errors.
1024         * top.c (highest_ui_num): New global.
1025         (new_ui): New function.
1026         * top.h (struct ui) <num>: New field.
1027         (new_ui): New declaration.
1028
1029 2016-06-21  Pedro Alves  <palves@redhat.com>
1030
1031         * cli/cli-interp.c (cli_on_normal_stop): Bail out early if there's
1032         nothing to print.  Use should_print_stop_to_console.
1033         * tui/tui-interp.c (tui_on_normal_stop): Likewise.
1034
1035 2016-06-21  Pedro Alves  <palves@redhat.com>
1036
1037         * breakpoint.c (new_until_break_fsm): Add 'cmd_interp' parameter.
1038         (until_break_fsm_should_stop, until_break_fsm_clean_up): Add
1039         thread parameter.
1040         (until_break_command): Pass command interpreter to thread fsm
1041         ctor.
1042         * cli/cli-interp.c (should_print_stop_to_console): Adjust.
1043         * gdbthread.h (struct thread_control_state) <command_interp>:
1044         Delete field.
1045         * infcall.c (new_call_thread_fsm): Add 'cmd_interp' parameter.
1046         Pass it down.
1047         (call_thread_fsm_should_stop): Add thread parameter.
1048         (call_function_by_hand_dummy): Pass command interpreter to thread
1049         fsm ctor.  Pass thread pointer to fsm clean up method.
1050         * infcmd.c: Include interps.h.
1051         (struct step_command_fsm) <thread>: Delete field.
1052         (new_step_command_fsm): Add 'cmd_interp' parameter.  Pass it down.
1053         (step_command_fsm_prepare): Remove references to fsm's thread
1054         field.
1055         (step_1): Pass command interpreter to thread
1056         fsm ctor.  Pass thread pointer to fsm clean up method.
1057         (step_command_fsm_should_stop, step_command_fsm_clean_up): Add
1058         thread parameter and use it.
1059         (new_until_next_fsm): Add 'cmd_interp' parameter.  Pass it down.
1060         (until_next_fsm_should_stop, until_next_fsm_clean_up): Add thread
1061         parameter and use it.
1062         (until_next_command): Pass command interpreter to thread fsm ctor.
1063         (struct finish_command_fsm) <thread>: Delete field.
1064         (finish_command_fsm_ops): Add NULL slot for should_notify_stop.
1065         (new_finish_command_fsm): Add 'cmd_interp' parameter and pass it
1066         down.  Remove thread parameter and adjust.
1067         (finish_command_fsm_should_stop, finish_command_fsm_clean_up): Add
1068         thread parameter and use it.
1069         (finish_command): Pass command interpreter to thread fsm ctor.
1070         Don't pass thread.
1071         * infrun.c (follow_fork): Move thread fsm to child fork instead of
1072         command interpreter, only.
1073         (clear_proceed_status_thread): Remove reference to command_interp.
1074         (proceed): Don't record the thread's command interpreter.
1075         (clean_up_just_stopped_threads_fsms): Pass thread to fsm clean_up
1076         method.
1077         (fetch_inferior_event): Pass thread to fsm should_stop method.
1078         * thread-fsm.c (thread_fsm_ctor): Add 'cmd_interp' parameter.
1079         Store it.
1080         (thread_fsm_clean_up, thread_fsm_should_stop): Add thread
1081         parameter and pass it down.
1082         * thread-fsm.h (struct thread_fsm) <command_interp>: New field.
1083         (struct thread_fsm_ops) <clean_up, should_stop>: Add thread
1084         parameter.
1085         (thread_fsm_ctor): Add 'cmd_interp' parameter.
1086         (thread_fsm_clean_up, thread_fsm_should_stop): Add thread
1087         parameter.
1088         * thread.c (thread_cancel_execution_command): Pass thread to
1089         thread fsm clean_up method.
1090
1091 2016-06-21  Pedro Alves  <palves@redhat.com>
1092
1093         * cli/cli-interp.c: Include gdbthread.h and thread-fsm.h.
1094         (should_print_stop_to_console): New function, factored out from
1095         mi_on_normal_stop_1.
1096         * cli/cli-interp.h (should_print_stop_to_console): Declare.
1097         * mi/mi-interp.c (mi_on_normal_stop_1): Use
1098         should_print_stop_to_console.  Pass it the current UI's console
1099         interpreter.
1100         * mi/mi-main.c (captured_mi_execute_command): Use the
1101         INTERP_CONSOLE symbol rather than explicit "console".
1102
1103 2016-06-21  Pedro Alves  <palves@redhat.com>
1104
1105         * infcmd.c (prepare_execution_command): Use
1106         all_uis_on_sync_execution_starting.
1107         * infrun.c (all_uis_on_sync_execution_starting): New function.
1108         * infrun.h (all_uis_on_sync_execution_starting): Declare.
1109
1110 2016-06-21  Pedro Alves  <palves@redhat.com>
1111
1112         * annotate.c: Include top.h.
1113         (async_background_execution_p): Delete.
1114         (print_value_flags): Check the UI's prompt state rather then
1115         async_background_execution_p.
1116         * event-loop.c (start_event_loop): Set the prompt state to
1117         PROMPT_NEEDED.
1118         * event-top.c (display_gdb_prompt, async_enable_stdin)
1119         (async_disable_stdin): Check the current UI's prompt state instead
1120         of the sync_execution global.
1121         (command_line_handler): Set the prompt state to PROMPT_NEEDED
1122         before running a command, and display the prompt if still needed
1123         afterwards.
1124         * infcall.c (struct call_thread_fsm) <waiting_ui>: New field.
1125         (new_call_thread_fsm): New parameter 'waiting_ui'.  Store it.
1126         (call_thread_fsm_should_stop): Set the prompt state to
1127         PROMPT_NEEDED.
1128         (run_inferior_call): Adjust to temporarily set the prompt state to
1129         PROMPT_BLOCKED instead of using the sync_execution global.
1130         (call_function_by_hand_dummy): Pass the current UI to
1131         new_call_thread_fsm.
1132         * infcmd.c: Include top.h.
1133         (continue_1): Check the current UI's prompt state instead of the
1134         sync_execution global.
1135         (continue_command): Validate global execution state before calling
1136         prepare_execution_command.
1137         (step_1): Call all_uis_check_sync_execution_done.
1138         (attach_post_wait): Don't call async_enable_stdin here.  Remove
1139         reference to sync_execution.
1140         * infrun.c (sync_execution): Delete global.
1141         (follow_fork_inferior)
1142         (reinstall_readline_callback_handler_cleanup): Check the current
1143         UI's prompt state instead of the sync_execution global.
1144         (check_curr_ui_sync_execution_done)
1145         (all_uis_check_sync_execution_done): New functions.
1146         (fetch_inferior_event): Call all_uis_check_sync_execution_done
1147         instead of trying to determine whether the global sync execution
1148         changed.
1149         (handle_no_resumed): Check the prompt state of all UIs.
1150         (normal_stop): Emit the no unwait-for even to all PROMPT_BLOCKED
1151         UIs.  Emit the "Switching to" notification to all UIs.  Enable
1152         stdin in all UIs.
1153         * infrun.h (sync_execution): Delete.
1154         (all_uis_check_sync_execution_done): Declare.
1155         * main.c (captured_command_loop): Don't call
1156         interp_pre_command_loop if the prompt is blocked.
1157         (catch_command_errors, catch_command_errors_const): Adjust.
1158         (captured_main): Set the initial prompt state to PROMPT_NEEDED.
1159         * mi/mi-interp.c (display_mi_prompt): Set the prompt state to
1160         PROMPTED.
1161         (mi_interpreter_resume): Don't clear sync_execution.  Remove hack
1162         comment.
1163         (mi_execute_command_input_handler): Set the prompt state to
1164         PROMPT_NEEDED before executing the command, and only display the
1165         prompt if the prompt state is PROMPT_NEEDED afterwards.
1166         (mi_on_resume_1): Adjust to check the prompt state.
1167         * target.c (target_terminal_inferior): Adjust to check the prompt
1168         state.
1169         * top.c (wait_sync_command_done, maybe_wait_sync_command_done)
1170         (execute_command): Check the current UI's prompt state instead of
1171         sync_execution.
1172         * top.h (enum prompt_state): New.
1173         (struct ui) <prompt_state>: New field.
1174         (ALL_UIS): New macro.
1175
1176 2016-06-21  Pedro Alves  <palves@redhat.com>
1177
1178         * top.c (gdb_secondary_prompt_depth): Delete.
1179         (gdb_in_secondary_prompt_p): Add ui parameter.  Use it.
1180         (gdb_readline_wrapper_cleanup, gdb_readline_wrapper): Adjust to
1181         per-UI gdb_secondary_prompt_depth.
1182         * top.h (struct ui) <secondary_prompt_depth>: New field.
1183
1184 2016-06-21  Pedro Alves  <palves@redhat.com>
1185
1186         * cli/cli-interp.c (cli_interpreter_pre_command_loop): New
1187         function.
1188         (cli_interp_procs): Install it instead of cli_command_loop.
1189         * cli/cli-interp.h (cli_interpreter_pre_command_loop): Declare.
1190         * event-top.c (cli_command_loop): Delete.
1191         * interps.c (interp_new): Remove reference to command_loop_proc.
1192         (current_interp_command_loop): Delete.
1193         (interp_pre_command_loop): New function.
1194         (interp_command_loop_ftype): Delete.
1195         * interps.h (interp_pre_command_loop_ftype): New typedef.
1196         (struct interp_procs) <command_loop_proc>: Delele field.
1197         <pre_command_loop_proc>: New field.
1198         (current_interp_command_loop): Delete declaration.
1199         (interp_pre_command_loop): New declaration.
1200         * main.c (captured_command_loop): Call interp_pre_command_loop
1201         instead of current_interp_command_loop and start an event loop.
1202         * mi/mi-interp.c (mi_command_loop): Delete.
1203         (mi_interpreter_pre_command_loop): New.
1204         (mi_interp_procs): Update.
1205         * tui/tui-interp.c (tui_interp_procs): Install
1206         cli_interpreter_pre_command_loop instead of cli_command_loop.
1207
1208 2016-06-21  Pedro Alves  <palves@redhat.com>
1209
1210         * interps.c (current_interpreter): New function.
1211         * interps.h (current_interpreter): New declaration.
1212         * mi/mi-cmds.h (raw_stdout): Delete declaration.
1213         * mi/mi-common.h (struct mi_interp) <raw_stdout,
1214         saved_raw_stdout>: New field.
1215         * mi/mi-interp.c (display_mi_prompt): New parameter 'mi'.  Adjust
1216         to per-UI raw_stdout.
1217         (mi_interpreter_init): Adjust to per-UI raw_stdout.
1218         (mi_on_sync_execution_done, mi_execute_command_input_handler)
1219         (mi_command_loop): Pass MI instance to display_mi_prompt.
1220         (mi_on_normal_stop_1, mi_output_running_pid, mi_on_resume_1)
1221         (mi_on_resume): Adjust to per-UI raw_stdout.
1222         (saved_raw_stdout): Delete.
1223         (mi_set_logging): Adjust to per-UI raw_stdout and
1224         saved_raw_stdout.
1225         * mi/mi-main.c (raw_stdout): Delete.
1226         (mi_cmd_gdb_exit, captured_mi_execute_command)
1227         (mi_print_exception, mi_load_progress): Adjust to per-UI
1228         raw_stdout.
1229         (print_diff_now, mi_print_timing_maybe): New ui_file parameter.
1230         Pass it along.
1231         (print_diff): New ui_file parameter.  Send output there instead of
1232         raw_stdout.
1233         * mi/mi-main.h (struct ui_file): Forward declare.
1234         (mi_print_timing_maybe): Add ui_file parameter.
1235
1236 2016-06-21  Pedro Alves  <palves@redhat.com>
1237
1238         * mi/mi-interp.c (display_mi_prompt): New function.
1239
1240 2016-06-21  Pedro Alves  <palves@redhat.com>
1241
1242         * target.c (target_terminal_inferior): Bail out after
1243         unregistering input_fd if not on the main UI.
1244         (target_terminal_ours): Bail out after registering input_fd if not
1245         on the main UI.
1246         (target_terminal_ours_for_output): Bail out if not on the main UI.
1247
1248 2016-06-21  Pedro Alves  <palves@redhat.com>
1249
1250         * event-top.c (restore_ui_cleanup): Make extern.
1251         * infrun.c (fetch_inferior_event): Always switch to the main UI.
1252         * top.h (restore_ui_cleanup): Declare.
1253
1254 2016-06-21  Pedro Alves  <palves@redhat.com>
1255
1256         PR mi/20034
1257         * cli/cli-interp.c: Include cli-interp.h and event-top.h.
1258         (cli_interpreter_resume): Pass 1 to gdb_setup_readline.  Set the
1259         UI's input_handler here.
1260         (cli_interpreter_supports_command_editing): New function.
1261         (cli_interp_procs): Install it.
1262         * cli/cli-interp.h: New file.
1263         * event-top.c (async_command_editing_p): Rename to ...
1264         (set_editing_cmd_var): ... this.
1265         (change_line_handler): Add parameter 'editing', and use it.  Bail
1266         early if the interpreter doesn't support editing.  Don't touch
1267         readline state if editing is off.
1268         (gdb_rl_callback_handler_remove, gdb_rl_callback_handler_install)
1269         (gdb_rl_callback_handler_reinstall): Assert the current UI is the
1270         main UI.
1271         (display_gdb_prompt): Don't call gdb_rl_callback_handler_remove if
1272         not using readline.  Check whether the current UI is using command
1273         editing instead of checking the async_command_editing_p global.
1274         (set_async_editing_command): Delete.
1275         (gdb_setup_readline): Add 'editing' parameter.  Only allow editing
1276         on the main UI.  Don't touch readline state if editing is off.
1277         (gdb_disable_readline): Don't touch readline state if editing is
1278         off.
1279         * event-top.h (gdb_setup_readline): Add 'int' parameter.
1280         (set_async_editing_command): Delete declaration.
1281         (change_line_handler, command_line_handler): Declare.
1282         (async_command_editing_p): Rename to ...
1283         (set_editing_cmd_var): ... this.
1284         * infrun.c (reinstall_readline_callback_handler_cleanup): Check
1285         whether the current UI has editing enabled rather than checking
1286         the async_command_editing_p global.
1287         * interps.c (interp_supports_command_editing): New function.
1288         * interps.h (interp_supports_command_editing_ftype): New typedef.
1289         (struct interp_procs) <supports_command_editing_proc>: New field.
1290         (interp_supports_command_editing): Declare.
1291         * mi/mi-interp.c (mi_interpreter_resume): Pass 0 to
1292         gdb_setup_readline.  Don't clear the async_command_editing_p
1293         global.  Update comments.
1294         * top.c (gdb_readline_wrapper_line, gdb_readline_wrapper): Check
1295         whether the current UI has editing enabled rather than checking
1296         the async_command_editing_p global.  Don't touch readline state if
1297         editing is off.
1298         (undo_terminal_modifications_before_exit): Switch to the main UI.
1299         Unconditionally call gdb_disable_readline.
1300         (set_editing): New function.
1301         (show_async_command_editing_p): Rename to ...
1302         (show_editing): ... this.  Show the state of the current UI.
1303         (_initialize_top): Adjust.
1304         * top.h (struct ui) <command_editing>: New field.
1305         * tui/tui-interp.c: Include cli/cli-interp.h.
1306         (tui_resume): Pass 1 to gdb_setup_readline.  Set the UI's
1307         input_handler.
1308         (tui_interp_procs): Install
1309         cli_interpreter_supports_command_editing.
1310         * tui/tui-io.c (tui_getc): Check whether the current UI has
1311         editing enabled rather than checking the async_command_editing_p
1312         global.
1313
1314 2016-06-21  Pedro Alves  <palves@redhat.com>
1315
1316         * top.c: Call gen_ret_current_ui_field_ptr for current_uiout.
1317         * top.h (struct ui) <m_current_uiout>: New field.
1318         * ui-out.c (current_uiout): Delete.
1319         * ui-out.h (current_uiout): Delete.
1320         (current_ui_current_uiout_ptr): New declaration.
1321         (current_uiout): Reimplement as wrapper around
1322         current_ui_current_uiout_ptr.
1323
1324 2016-06-21  Pedro Alves  <palves@redhat.com>
1325
1326         * ui-out.c (default_ui_out_impl): Delete.
1327         (def_uiout): Delete.
1328         (current_uiout): Set to NULL.
1329         (default_table_begin, default_table_body, default_table_end)
1330         (default_table_header, default_begin, default_end)
1331         (default_field_int, default_field_skip, default_field_string)
1332         (default_field_fmt, default_spaces, default_text, default_message)
1333         (default_wrap_hint, default_flush, default_data_destroy): Delete.
1334
1335 2016-06-21  Pedro Alves  <palves@redhat.com>
1336
1337         * event-top.c (gdb_setup_readline): Pass the UI's outstream and
1338         errstream to stdout_fileopen and stderr_fileopen.
1339         * exceptions.c: Include top.h.
1340         (print_flush): Open the current UI's outstream file descriptor,
1341         instead of hardcoding file descriptor 1.
1342         * main.c (captured_main): Save the main UI's out and error
1343         streams.  Adjust stderr_fileopen call.
1344         * top.h (struct ui) <outstream, errstream>: New fields.
1345         * ui-file.c (stderr_fileopen): Add stream parameter.  Use it
1346         instead of stderr.
1347         * ui-file.h (stderr_fileopen): Add stream parameter and update
1348         comment.
1349
1350 2016-06-21  Pedro Alves  <palves@redhat.com>
1351
1352         * event-top.c (input_fd): Delete.
1353         (stdin_event_handler): Switch to the UI whose input descriptor got
1354         the event.  Adjust to per-UI input_fd.
1355         (gdb_setup_readline): Don't set the input_fd global.  Adjust to
1356         per-UI input_fd.
1357         (gdb_disable_readline): Adjust to per-UI input_fd.
1358         * event-top.h (input_fd): Delete declaration.
1359         * linux-nat.c (linux_nat_terminal_inferior): Don't remove input_fd
1360         from the event-loop here.
1361         (linux_nat_terminal_ours): Don't register input_fd in the
1362         event-loop here.
1363         * main.c (captured_main): Adjust to per-UI input_fd.
1364         * remote.c (remote_terminal_inferior): Don't remove input_fd from
1365         the event-loop here.
1366         (remote_terminal_ours): Don't register input_fd in the event-loop
1367         here.
1368         * target.c: Include top.h and event-top.h.
1369         (target_terminal_inferior): Remove input_fd from the event-loop
1370         here.
1371         (target_terminal_ours): Register input_fd in the event-loop.
1372         * top.h (struct ui) <input_fd>: New field.
1373
1374 2016-06-21  Pedro Alves  <palves@redhat.com>
1375
1376         * cli/cli-script.c (execute_user_command, read_next_line)
1377         (read_next_line): Adjust to per-UI instream.
1378         * event-top.c (stdin_event_handler, command_handler)
1379         (handle_line_of_input, command_line_handler)
1380         (gdb_readline_no_editing_callback, async_sigterm_handler)
1381         (gdb_setup_readline): Likewise.
1382         * inflow.c: Include top.h.
1383         (gdb_has_a_terminal, child_terminal_init_with_pgrp)
1384         (gdb_save_tty_state, child_terminal_inferior)
1385         (child_terminal_ours_1, copy_terminal_info): Use the main UI.
1386         (initialize_stdin_serial): Adjust to per-UI instream.
1387         * main.c (captured_command_loop, captured_main): Adjust to per-UI
1388         instream.
1389         * mi/mi-interp.c (mi_execute_command_wrapper): Likewise.
1390         * python/python.c (python_interactive_command): Likewise.
1391         * terminal.h (struct ui): Forward declare.
1392         (initialize_stdin_serial): Add struct ui parameter.
1393         * top.c (instream): Delete.
1394         (do_restore_instream_cleanup, read_command_file, dont_repeat)
1395         (gdb_readline_no_editing, command_line_input)
1396         (input_from_terminal_p, gdb_init): Adjust to per-UI instream.
1397         * top.h (struct ui) <instream>: New field.
1398         (instream): Delete declaration.
1399         (quit): Adjust to per-UI instream.
1400
1401 2016-06-21  Pedro Alves  <palves@redhat.com>
1402
1403         * event-loop.c: Include top.h.
1404         (invoke_async_signal_handlers): Switch to the main UI.
1405         * event-top.c (main_ui_): Update comment.
1406         (main_ui): New global.
1407         * top.h (main_ui): Declare.
1408
1409 2016-06-21  Pedro Alves  <palves@redhat.com>
1410
1411         * cli/cli-interp.c (cli_interp): Delete.
1412         (as_cli_interp): New function.
1413         (cli_on_normal_stop, cli_on_signal_received)
1414         (cli_on_end_stepping_range, cli_on_signal_exited, cli_on_exited)
1415         (cli_on_no_history): Send output to all CLI UIs.
1416         (cli_on_sync_execution_done, cli_on_command_error): Skip output if
1417         the top level interpreter is not a CLI.
1418         (cli_interpreter_init): Don't set cli_interp or install observers
1419         here.
1420         (_initialize_cli_interp): Install observers here.
1421         * event-top.c (main_ui_, ui_list): New globals.
1422         (current_ui): Point to main_ui_.
1423         (restore_ui_cleanup, switch_thru_all_uis_init)
1424         (switch_thru_all_uis_cond, switch_thru_all_uis_next): New
1425         functions.
1426         * mi/mi-interp.c (as_mi_interp): New function.
1427         (mi_interpreter_init): Don't install observers here.
1428         (mi_on_sync_execution_done): Skip output if the top level
1429         interpreter is not a MI.
1430         (mi_new_thread, mi_thread_exit, mi_record_changed)
1431         (mi_inferior_added, mi_inferior_appeared, mi_inferior_exit)
1432         (mi_inferior_removed): Send output to all MI UIs.
1433         (find_mi_interpreter, mi_interp_data): Delete.
1434         (find_mi_interp): New function.
1435         (mi_on_signal_received, mi_on_end_stepping_range)
1436         (mi_on_signal_exited, mi_on_exited, mi_on_no_history): Send output
1437         to all MI UIs.
1438         (mi_on_normal_stop): Rename to ...
1439         (mi_on_normal_stop_1): ... this.
1440         (mi_on_normal_stop): Reimplement, sending output to all MI UIs.
1441         (mi_traceframe_changed, mi_tsv_created, mi_tsv_deleted)
1442         (mi_tsv_modified, mi_breakpoint_created, mi_breakpoint_deleted)
1443         (mi_breakpoint_modified, mi_output_running_pid): Send output to
1444         all MI UIs.
1445         (mi_on_resume): Rename to ...
1446         (mi_on_resume_1): ... this.  Don't handle infcalls here.
1447         (mi_on_resume): Reimplement, sending output to all MI UIs.
1448         (mi_solib_loaded, mi_solib_unloaded, mi_command_param_changed)
1449         (mi_memory_changed): Send output to all MI UIs.
1450         (report_initial_inferior): Install observers here.
1451         * top.h (struct ui) <next>: New field.
1452         (ui_list): Declare.
1453         (struct switch_thru_all_uis): New.
1454         (switch_thru_all_uis_init, switch_thru_all_uis_cond)
1455         (switch_thru_all_uis_next): Declare.
1456         (SWITCH_THRU_ALL_UIS): New macro.
1457         * tui/tui-interp.c (tui_interp): Delete global.
1458         (as_tui_interp): New function.
1459         (tui_on_normal_stop, tui_on_signal_received)
1460         (tui_on_end_stepping_range, tui_on_signal_exited, tui_on_exited)
1461         (tui_on_no_history): Send output to all TUI UIs.
1462         (tui_on_sync_execution_done, tui_on_command_error): Skip output if
1463         the top level interpreter is not a TUI.
1464         (tui_init): Don't set tui_interp or install observers here.
1465         (_initialize_tui_interp): Install observers here.
1466
1467 2016-06-21  Pedro Alves  <palves@redhat.com>
1468
1469         * cli/cli-interp.c (cli_uiout): Delete, moved into ...
1470         (struct cli_interp): ... this new structure.
1471         (cli_on_normal_stop, cli_on_signal_received)
1472         (cli_on_end_stepping_range, cli_on_signal_exited, cli_on_exited)
1473         (cli_on_no_history): Use interp_ui_out.
1474         (cli_interpreter_init): If top level, set the cli_interp global.
1475         (cli_interpreter_init): Return the interp's data instead of NULL.
1476         (cli_interpreter_resume, cli_interpreter_exec, cli_ui_out): Adjust
1477         to cli_uiout being in the interpreter's data.
1478         (cli_interp_procs): New, factored out from _initialize_cli_interp.
1479         (cli_interp_factory): New function.
1480         (_initialize_cli_interp): Call interp_factory_register.
1481         * interps.c (get_interp_info): New, factored out from ...
1482         (get_current_interp_info): ... this.
1483         (interp_new): Add parameter 'data'.  Store it.
1484         (struct interp_factory): New function.
1485         (interp_factory_p): New typedef.  Define a VEC_P.
1486         (interpreter_factories): New global.
1487         (interp_factory_register): New function.
1488         (interp_add): Add 'ui' parameter.  Use get_interp_info and
1489         interp_lookup_existing.
1490         (interp_lookup): Rename to ...
1491         (interp_lookup_existing): ... this.  Add 'ui' parameter.  Don't
1492         check for NULL or empty name here.
1493         (interp_lookup): Add 'ui' parameter and reimplement.
1494         (interp_set_temp, interpreter_exec_cmd): Adjust.
1495         (interpreter_completer): Complete on registered interpreter
1496         factories instead of interpreters.
1497         * interps.h (interp_factory_func): New typedef.
1498         (interp_factory_register): Declare.
1499         (interp_new, interp_add): Adjust.
1500         (interp_lookup): Declare.
1501         * main.c (captured_main): Adjust.
1502         * mi/mi-interp.c (mi_cmd_interpreter_exec): Adjust.
1503         (mi_interp_procs): New, factored out from
1504         _initialize_mi_interp.
1505         (mi_interp_factory): New function.
1506         * python/python.c (execute_gdb_command): Adjust.
1507         * tui/tui-interp.c (tui_init): If top level, set the tui_interp
1508         global.
1509         (tui_interp_procs): New.
1510         (tui_interp_factory): New function.
1511         (_initialize_tui_interp): Call interp_factory_register.
1512
1513 2016-06-21  Pedro Alves  <palves@redhat.com>
1514
1515         * breakpoint.c (bpstat_do_actions_1): Access the current UI's
1516         async field instead of the interpreter_async global.
1517         * cli/cli-script.c (execute_user_command, while_command)
1518         (if_command, script_from_file): Likewise.
1519         * compile/compile.c: Include top.h instead of interps.h.
1520         (compile_file_command, compile_code_command)
1521         (compile_print_command): Access the current UI's async field
1522         instead of the interpreter_async global.
1523         * guile/guile.c: Include top.h instead of interps.h.
1524         (guile_repl_command, guile_command, gdbscm_execute_gdb_command):
1525         Access the current UI's async field instead of the
1526         interpreter_async global.
1527         * guile/scm-ports.c: Include top.h instead of interps.h.
1528         (ioscm_with_output_to_port_worker): Access the current UI's async
1529         field instead of the interpreter_async global.
1530         * inf-loop.c (inferior_event_handler): Likewise.
1531         * infcall.c (run_inferior_call): Likewise.
1532         * infrun.c (reinstall_readline_callback_handler_cleanup)
1533         (fetch_inferior_event): Likewise.
1534         * interps.c (interpreter_async): Delete.
1535         (struct ui_interp_info): New.
1536         (get_current_interp_info): New function.
1537         (interp_list, current_interpreter, top_level_interpreter_ptr):
1538         Delete.
1539         (interp_add, interp_set, interp_lookup, interp_ui_out)
1540         (current_interp_set_logging, interp_set_temp)
1541         (current_interp_named_p): Adjust to per-UI interpreters.
1542         (command_interpreter): Delete.
1543         (command_interp, current_interp_command_loop, interp_quiet_p)
1544         (interp_exec, interpreter_exec_cmd, interpreter_completer)
1545         (top_level_interpreter, top_level_interpreter_data): Adjust to
1546         per-UI interpreters.
1547         * interps.h (interpreter_async): Delete.
1548         * main.c (captured_command_loop): Access the current UI's async
1549         field instead of the interpreter_async global.
1550         * python/python.c (python_interactive_command, python_command)
1551         (execute_gdb_command): Likewise.
1552         * top.c (maybe_wait_sync_command_done, execute_command_to_string):
1553         Access the current UI's async field instead of the
1554         interpreter_async global.
1555         * top.h (struct tl_interp_info): Forward declare.
1556         (struct ui) <interp_info, async>: New fields.
1557
1558 2016-06-21  Pedro Alves  <palves@redhat.com>
1559
1560         * main.c (gdb_stdout, gdb_stderr, gdb_stdlog, gdb_stdin): Delete
1561         globals.
1562         (gen_ret_current_ui_field_ptr): New macro.  Use it to generate
1563         wrappers for gdb_stdout, gdb_stderr, gdb_stdlog and gdb_stdin.
1564         * top.h (struct ui) <m_gdb_stdout, m_gdb_stdin, m_gdb_stderr,
1565         m_gdb_stdlog>: New fields.
1566         (current_ui_gdb_stdout_ptr, current_ui_gdb_stdin_ptr)
1567         (current_ui_gdb_stderr_ptr, current_ui_gdb_stdlog_ptr): Declare.
1568         (gdb_stdout, gdb_stdin, gdb_stderr, gdb_stdlog): Reimplement as
1569         macros.
1570
1571 2016-06-21  Pedro Alves  <palves@redhat.com>
1572
1573         * event-top.c: Update readline-related comments.
1574         (input_handler, call_readline): Delete globals.
1575         (gdb_rl_callback_handler): Call the current UI's input_handler
1576         method.
1577         (change_line_handler): Adjust to set current UI's properties
1578         instead of globals.
1579         (current_ui_, current_ui): New globals.
1580         (get_command_line_buffer): Rewrite to refer to the current UI.
1581         (stdin_event_handler): Adjust to call the call_readline method of
1582         the current UI.
1583         (gdb_readline_no_editing_callback): Adjust to call the current UI's
1584         input_handler method.
1585         (gdb_setup_readline): Adjust to set current UI's properties
1586         instead of globals.
1587         * event-top.h (call_readline, input_handler): Delete declarations.
1588         * mi/mi-interp.c (mi_interpreter_resume): Adjust to set current
1589         UI's properties instead of globals.
1590         * top.c (gdb_readline_wrapper_cleanup): Adjust to set current UI's
1591         properties instead of globals.
1592         (gdb_readline_wrapper): Adjust to call and set current UI's
1593         methods instead of globals.
1594         * top.h: Include buffer.h and event-loop.h.
1595         (struct ui): New struct.
1596         (current_ui): New declaration.
1597
1598 2016-06-21  Pedro Alves  <palves@redhat.com>
1599
1600         * ada-lang.c (ada_exception_name_addr_1): Add comment.
1601         (print_it_exception): Select the current frame.
1602
1603 2016-06-17  Yan-Ting Lin  <currygt52@gmail.com>
1604
1605         * Makefile.in (ALL_TARGET_OBS): Add nds32-tdep.o.
1606         (HFILES_NO_SRCDIR): Add nds32-tdep.h.
1607         (ALLDEPFILES): Add nds32-tdep.c.
1608         * NEWS: Mention new NDS32 port.
1609         * configure.tgt: Add NDS32.
1610         * nds32-tdep.c: New file.
1611         * nds32-tdep.h: New file.
1612         * features/Makefile (XMLTOC): Add nds32.xml.
1613         * features/nds32-core.xml: New file.
1614         * features/nds32-fpu.xml: New file.
1615         * features/nds32-system.xml: New file.
1616         * features/nds32.c: New file (generated).
1617         * features/nds32.xml: New file.
1618
1619 2016-06-14  John Baldwin  <jhb@FreeBSD.org>
1620
1621         * v850-tdep.c (v850_use_struct_convention): Trim type length checks.
1622
1623 2016-06-14  John Baldwin  <jhb@FreeBSD.org>
1624
1625         * tui/tui-stack.c (tui_show_frame_info): Fix type mismatch.
1626
1627 2016-06-14  John Baldwin  <jhb@FreeBSD.org>
1628
1629         * rs6000-tdep.c (ppc_process_record_op31): Initialize ra.
1630
1631 2016-06-13  Nick Clifton  <nickc@redhat.com>
1632
1633         * gdbtypes.c (replace_type): Fix assertion.
1634
1635 2016-06-10  Tom Tromey  <tom@tromey.com>
1636
1637         * gdbtypes.c (arch_type, arch_integer_type, arch_character_type)
1638         (arch_boolean_type, arch_float_type, arch_complex_type)
1639         (arch_flags_type, append_flags_type_field)
1640         (append_flags_type_flag, arch_composite_type)
1641         (append_composite_type_field_raw)
1642         (append_composite_type_field_aligned)
1643         (append_composite_type_field): Make "name" parameter const.
1644         * gdbtypes.h (arch_type, arch_integer_type, arch_character_type)
1645         (arch_boolean_type, arch_float_type, arch_complex_type)
1646         (append_composite_type_field, append_composite_type_field_aligned)
1647         (append_composite_type_field_raw, arch_flags_type)
1648         (append_flags_type_field, append_flags_type_flag): Constify.
1649
1650 2016-06-10  Tom Tromey  <tom@tromey.com>
1651
1652         PR rust/20110:
1653         * rust-exp.y (lex_number): Don't truncate large numbers to i32.
1654
1655 2016-06-10  Tom Tromey  <tom@tromey.com>
1656
1657         * Makefile.in (COMMON_OBS): Remove rust-exp.o.
1658         (YYFILES): Add rust-exp.c.
1659         (YYOBJ): Add rust-exp.o.
1660         (local-maintainer-clean): Remove rust-exp.c.
1661
1662 2016-06-09  Toshihito Kikuchi  <k.toshihito@yahoo.de>
1663
1664         * NEWS: Mention that GDB now supports a negative repeat count in
1665         the 'x' command.
1666         * printcmd.c (decode_format): Allow '-' in the parameter
1667         "string_ptr" to accept a negative repeat count.
1668         (find_instruction_backward): New function.
1669         (read_memory_backward): New function.
1670         (integer_is_zero): New function.
1671         (find_string_backward): New function.
1672         (do_examine): Use new functions to examine memory backward.
1673         (_initialize_printcmd): Mention that 'x' command supports a negative
1674         repeat count.
1675
1676 2016-06-09  Toshihito Kikuchi  <k.toshihito@yahoo.de>
1677
1678         * MAINTAINERS (Write After Approval): Add Toshihito Kikuchi.
1679
1680 2016-06-09  Tom Tromey  <tom@tromey.com>
1681
1682         PR python/19819:
1683         * python/py-xmethods.c (invoke_method_name)
1684         (py_get_result_type_method_name, py_invoke_method_name): Remove.
1685         (gdbpy_initialize_xmethods): Don't initialize
1686         py_invoke_method_name, py_get_result_type_method_name.
1687
1688 2016-06-07  Simon Marchi  <simon.marchi@ericsson.com>
1689
1690         * mi/mi-interp.c (mi_record_changed): Add missing braces.
1691
1692 2016-06-07  Bernhard Heckel  <bernhard.heckel@intel.com>
1693
1694         * findvar.c (follow_static_link): Check for valid pointer.
1695
1696 2016-06-06  Simon Marchi  <simon.marchi@ericsson.com>
1697
1698         * NEWS: Mention the new fields in =record-started.
1699         * common/btrace-common.h (btrace_format_short_string): New function
1700         declaration.
1701         * common/btrace-common.c (btrace_format_short_string): New
1702         function.
1703         * mi/mi-interp.c (mi_record_changed): Output method and format
1704         fields in the =record-started record.
1705         * record-btrace.c (record_btrace_open): Adapt record_changed
1706         notification.
1707         * record-full.c (record_full_open): Likewise.
1708         * record.c (cmd_record_stop): Likewise.
1709
1710 2016-06-02  Jon Turney  <jon.turney@dronecode.org.uk>
1711
1712         * windows-nat.c (handle_output_debug_string): Return type of
1713         gdb_signal_from_host() is gdb_signal, not an int.
1714         (windows_get_exec_module_filename): Add pointer casts for C++.
1715
1716 2016-06-02  Tom Tromey  <tom@tromey.com>
1717
1718         PR python/18984:
1719         * python/python.c (gdbpy_solib_name): Use GDB_PY_LLU_ARG.
1720
1721 2016-06-01  Pedro Alves  <palves@redhat.com>
1722
1723         * remote-fileio.c (remote_fio_ctrl_c_flag, remote_fio_sa)
1724         (remote_fio_osa)
1725         (remote_fio_ofunc, remote_fileio_sig_init, remote_fileio_sig_set)
1726         (remote_fileio_sig_exit, remote_fileio_ctrl_c_signal_handler):
1727         Delete.
1728         (remote_fileio_o_quit_handler): New global.
1729         (remote_fileio_quit_handler): New function.
1730         (remote_fileio_reply): Check the quit flag instead of the custom
1731         'remote_fio_ctrl_c_flag' flag.  Restore the quit handler instead
1732         of changing the SIGINT handler.
1733         (do_remote_fileio_request): Override the quit handler instead of
1734         changing the SIGINT handler.
1735
1736 2016-06-01  Nick Clifton  <nickc@redhat.com>
1737
1738         * common/common-utils.c (xmalloc_failed): New function.  Provided
1739         so that the version in libiberty is not linked in.
1740
1741 2016-06-01  Markus Metzger  <markus.t.metzger@intel.com>
1742
1743         * infcmd.c (skip_finish_frames): New.
1744         (finish_command): Call skip_finish_frames.
1745
1746 2016-06-01  Yao Qi  <yao.qi@linaro.org>
1747
1748         PR remote/19998
1749         * remote-fileio.c (remote_fileio_ctrl_c_signal_handler): Call
1750         quit_serial_event_set.
1751
1752 2016-06-01  Joel Brobecker  <brobecker@adacore.com>
1753
1754         GDB 7.11.1 released.
1755
1756 2016-05-31  Martin Galvan  <martin.galvan@tallertechnologies.com>
1757
1758         PR c++/19893
1759         * dwarf2loc.c (coerce_pieced_ref, indirect_synthetic_pointer,
1760         fetch_const_value_from_synthetic_pointer): New functions.
1761         (indirect_pieced_value): Move lower half to indirect_synthetic_pointer.
1762         (pieced_value_funcs): Implement coerce_ref.
1763         * valops.c (value_addr): Call coerce_ref for synthetic references.
1764         * valprint.c (valprint_check_validity): Return true for synthetic
1765         references.  Also, don't show "<synthetic pointer>" if they reference
1766         addressable values.
1767         (generic_val_print_ref): Handle synthetic references.  Also move some
1768         code to print_ref_address.
1769         (print_ref_address, get_value_addr_contents): New functions.
1770
1771 2016-05-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
1772
1773         PR c++/15231
1774         * dwarf2read.c (enum pc_bounds_kind): Add PC_BOUNDS_INVALID.
1775         (process_psymtab_comp_unit_reader, read_func_scope): Adjust callers.
1776         (read_lexical_block_scope): Import DIEs from bare DW_TAG_lexical_block.
1777         (read_call_site_scope): Adjust callers.
1778         (dwarf2_get_pc_bounds): Implement pc_bounds_invalid.
1779         (dwarf2_get_subprogram_pc_bounds, get_scope_pc_bounds): Adjust callers.
1780
1781 2016-05-30  Jan Kratochvil  <jan.kratochvil@redhat.com>
1782
1783         Code cleanup: dwarf2_get_pc_bounds: -1/0/+1 -> enum
1784         * dwarf2read.c (enum pc_bounds_kind) New.
1785         (dwarf2_get_pc_bounds): Use it in the declaration.
1786         (process_psymtab_comp_unit_reader): Adjust caller.  Rename has_pc_info
1787         to cu_bounds_kind.
1788         (read_func_scope, read_lexical_block_scope, read_call_site_scope):
1789         Adjust callers.
1790         (dwarf2_get_pc_bounds): Use enum pc_bounds_kind in the definition.
1791         (dwarf2_get_subprogram_pc_bounds, get_scope_pc_bounds): Adjust callers.
1792
1793 2016-05-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
1794
1795         * NEWS (QCatchSyscalls): Remove the parameter.  Include ...
1796         (QCatchSyscalls:1 in qSupported) ... this separate entry which got
1797         deleted.
1798
1799 2016-05-29  Jan Kratochvil  <jan.kratochvil@redhat.com>
1800
1801         * NEWS (N stop reply): Remove empty line.
1802
1803 2016-05-28  Alan Modra  <amodra@gmail.com>
1804
1805         * compile/compile-object-load.c (link_callbacks_multiple_definition,
1806         link_callbacks_warning, link_callbacks_undefined_symbol,
1807         link_callbacks_undefined_symbol, link_callbacks_reloc_overflow,
1808         link_callbacks_reloc_dangerous,
1809         link_callbacks_unattached_reloc): Return void.
1810
1811 2016-05-27  Andrew Burgess  <andrew.burgess@embecosm.com>
1812
1813         * opencl-lang.c (evaluate_subexp_opencl): If
1814         EVAL_AVOID_SIDE_EFFECTS mode, forward the VALUE_LVAL attribute to
1815         the returned value in the STRUCTOP_STRUCT case.
1816
1817 2016-05-27  Andrew Burgess  <andrew.burgess@embecosm.com>
1818
1819         * eval.c (evaluate_subexp_standard): If EVAL_AVOID_SIDE_EFFECTS
1820         mode, forward the VALUE_LVAL attribute to the returned value in
1821         the STRUCTOP_PTR case.
1822
1823 2016-05-25  Tom Tromey  <tom@tromey.com>
1824
1825         * python/py-value.c (value_object_as_number): Use correct spelling
1826         of HAVE_LIBPYTHON2_4.
1827
1828 2016-05-25  Bernhard Heckel  <bernhard.heckel@intel.com>
1829
1830         * f-typeprint.c (f_type_print_base): Replace 0 by show.
1831
1832 2016-05-25  Bernhard Heckel  <bernhard.heckel@intel.com>
1833
1834         * f-typeprint.c (f_type_print_base): Decrease show by one.
1835
1836 2016-05-25  Bernhard Heckel  <bernhard.heckel@intel.com>
1837
1838         * f-typeprint.c (f_type_print_base): Don't print fields when show < 0.
1839
1840 2016-05-25  Bernhard Heckel  <bernhard.heckel@intel.com>
1841
1842         * f-typeprint.c (f_type_print_base): Take print level into account.
1843
1844 2016-05-24  Tom Tromey  <tom@tromey.com>
1845
1846         PR python/17386:
1847         * python/py-value.c (value_object_as_number): Add
1848         nb_inplace_floor_divide, nb_inplace_true_divide, nb_index.
1849
1850 2016-05-24  Tom Tromey  <tom@tromey.com>
1851
1852         * python/py-value.c (value_object_as_number): Add
1853         nb_inplace_divide for Python 2.
1854
1855 2016-05-23  Tom Tromey  <tom@tromey.com>
1856
1857         PR python/17981:
1858         * python/py-breakpoint.c (gdbpy_breakpoints): Return a new tuple
1859         when there are no breakpoints.
1860
1861 2016-05-24  Pedro Alves  <palves@redhat.com>
1862
1863         PR gdb/19828
1864         * linux-nat.c (attach_proc_task_lwp_callback): Mark the lwp
1865         resumed, and add the thread to GDB's thread list.
1866
1867 2016-05-24  Pedro Alves  <palves@redhat.com>
1868
1869         PR gdb/19828
1870         * linux-nat.c (get_pending_status): If the thread reported the
1871         event to the core and it's pending, use the pending status signal
1872         number.
1873
1874 2016-05-24  Pedro Alves  <palves@redhat.com>
1875
1876         PR gdb/19828
1877         * linux-nat.c (lwp_lwpid_htab): New htab.
1878         (lwp_info_hash, lwp_lwpid_htab_eq, lwp_lwpid_htab_create)
1879         (lwp_lwpid_htab_add_lwp): New functions.
1880         (lwp_list): Tweak comment.
1881         (lwp_list_add, lwp_list_remove, lwp_lwpid_htab_remove_pid): New
1882         functions.
1883         (purge_lwp_list): Rewrite, using htab_traverse_noresize.
1884         (add_initial_lwp): Add lwp to htab too.  Use lwp_list_add.
1885         (delete_lwp): Use lwp_list_remove.  Remove htab too.
1886         (find_lwp_pid): Search in htab.
1887         (_initialize_linux_nat): Call lwp_lwpid_htab_create.
1888         * linux-nat.h (struct lwp_info) <prev>: New field.
1889
1890 2016-05-24  Pedro Alves  <palves@redhat.com>
1891
1892         PR gdb/19828
1893         * linux-nat.c (lwp_lwpid_htab): New htab.
1894         (lwp_info_hash, lwp_lwpid_htab_eq, lwp_lwpid_htab_create)
1895         (lwp_lwpid_htab_add_lwp): New functions.
1896         (lwp_list): Tweak comment.
1897         (lwp_list_add, lwp_list_remove, lwp_lwpid_htab_remove_pid): New
1898         functions.
1899         (purge_lwp_list): Rewrite, using htab_traverse_noresize.
1900         (add_initial_lwp): Add lwp to htab too.  Use lwp_list_add.
1901         (delete_lwp): Use lwp_list_remove.  Remove htab too.
1902         (find_lwp_pid): Search in htab.
1903         (_initialize_linux_nat): Call lwp_lwpid_htab_create.
1904         * linux-nat.h (struct lwp_info) <prev>: New field.
1905
1906 2016-05-24  Pedro Alves  <palves@redhat.com>
1907
1908         PR gdb/19828
1909         * linux-nat.c (linux_resume_one_lwp_throw): Clear the LWP's core
1910         field.
1911         (linux_nat_update_thread_list): Don't fetch the core if already
1912         known.
1913
1914 2016-05-24  Pedro Alves  <palves@redhat.com>
1915
1916         PR gdb/19828
1917         * linux-tdep.c (find_mapping_size): Delete.
1918         (linux_vsyscall_range_raw): Rewrite reading from
1919         /proc/PID/task/PID/maps directly instead of using
1920         gdbarch_find_memory_regions.
1921
1922 2016-05-24  Pedro Alves  <palves@redhat.com>
1923
1924         PR gdb/19828
1925         * linux-nat.c (report_thread_events): New global.
1926         (linux_handle_extended_wait): Report
1927         TARGET_WAITKIND_THREAD_CREATED if thread event reporting is
1928         enabled.
1929         (wait_lwp, linux_nat_filter_event): Report all thread exits if
1930         thread event reporting is enabled.  Remove comment.
1931         (filter_exit_event): New function.
1932         (linux_nat_wait_1): Use it.
1933         (linux_nat_thread_events): New function.
1934         (linux_nat_add_target): Install it as target_thread_events method.
1935
1936 2016-05-24  Yan-Ting Lin  <currygt52@gmail.com>
1937
1938         * MAINTAINERS (Write After Approval): Add "Yan-Ting Lin".
1939
1940 2016-05-23  Yao Qi  <yao.qi@arm.com>
1941
1942         * arch-utils.c (default_code_of_frame_writable): New function.
1943         * arch-utils.h (default_code_of_frame_writable): Declare.
1944         * arm-tdep.c (arm_code_of_frame_writable): New function.
1945         (arm_gdbarch_init): Install gdbarch method
1946         code_of_frame_writable if the target is M-profile.
1947         * frame.c (skip_unwritable_frames): New function.
1948         * frame.h (skip_unwritable_frames): Declare.
1949         * gdbarch.sh (code_of_frame_writable): New.
1950         * gdbarch.c, gdbarch.h: Re-generated.
1951         * infcmd.c (finish_command): Call skip_unwritable_frames.
1952
1953 2016-05-23  Tom Tromey  <tom@tromey.com>
1954
1955         PR python/19438, PR python/18393:
1956         * python/py-objfile.c (objfpy_initialize): Initialize self->dict.
1957         * python/py-progspace.c (pspy_initialize): Initialize self->dict.
1958
1959 2016-05-23  Gary Benson  <gbenson@redhat.com>
1960
1961         * nat/gdb_thread_db.h (td_thr_validate_ftype): Remove typedef.
1962         * linux-thread-db.c (struct thread_db_info) <td_thr_validate_p>:
1963         Remove field.
1964         (try_thread_db_load_1): Remove td_thr_validate initialization.
1965
1966 2016-05-23  Jon Boden  <jon@ubuntubsd.org>  (tiny change)
1967
1968         * configure.ac: Search for libutil-freebsd as alternative to libutil.
1969         * configure: Re-generated.
1970
1971 2016-05-19  Andreas Schwab  <schwab@suse.de>
1972
1973         * ia64-libunwind-tdep.c (libunwind_descr): Add cast from void *.
1974         (libunwind_frame_set_descr): Likewise.
1975         (libunwind_frame_cache): Likewise.
1976         (libunwind_frame_dealloc_cache): Likewise.
1977         (libunwind_frame_sniffer): Likewise.
1978         (libunwind_search_unwind_table): Likewise.
1979         (libunwind_sigtramp_frame_sniffer): Likewise.
1980         (libunwind_get_reg_special): Likewise.
1981         (libunwind_load): Likewise.
1982         * ia64-linux-nat.c (ia64_linux_fetch_register): Likewise.
1983         (ia64_linux_store_register): Likewise.
1984         (ia64_linux_xfer_partial): Likewise.
1985         * ia64-tdep.c (ia64_access_reg): Likewise.
1986         (ia64_access_fpreg): Likewise.
1987         (ia64_access_rse_reg): Likewise.
1988         (ia64_access_rse_fpreg): Likewise.
1989
1990 2016-05-18  Tom Tromey  <tom@tromey.com>
1991
1992         * rust-lang.c (rust_subscript): Initialize "high".
1993
1994 2016-05-17  Simon Marchi  <simon.marchi@ericsson.com>
1995
1996         PR gdb/20045
1997         * mi/mi-main.c (mi_on_resume): Call target_can_async_p instead
1998         of target_is_async_p.
1999
2000 2016-05-17  Simon Marchi  <simon.marchi@ericsson.com>
2001
2002         PR gdb/18077
2003         * mi/mi-main.c (run_one_inferior): Use run target to determine
2004         whether to run async or not.
2005         (mi_cmd_exec_run): Likewise.
2006
2007 2016-05-17  Tom Tromey  <tom@tromey.com>
2008
2009         * std-operator.def (OP_RANGE): Rename from OP_F90_RANGE.
2010         * rust-lang.c: Don't include f-lang.h.
2011         (rust_range, rust_compute_range, rust_subscript)
2012         (rust_evaluate_subexp): Update.
2013         * rust-exp.y: Don't include f-lang.h.
2014         (ast_range, convert_ast_to_expression): Update.
2015         * parse.c (operator_length_standard): Update.
2016         * f-lang.h (enum f90_range_type): Move to expression.h.
2017         * f-exp.y: Use OP_RANGE.
2018         * expression.h (enum range_type): New enum; renamed from
2019         f90_range_type.
2020         * expprint.c: Don't include f-lang.h.
2021         (print_subexp_standard, dump_subexp_body_standard): Use OP_RANGE.
2022         * eval.c (value_f90_subarray, evaluate_subexp_standard): Update.
2023
2024 2016-05-17  Tom Tromey  <tom@tromey.com>
2025
2026         * NEWS: Add Rust item.
2027
2028 2016-05-17  Tom Tromey  <tom@tromey.com>
2029             Manish Goregaokar <manishsmail@gmail.com>
2030
2031         * symtab.c (symbol_find_demangled_name): Handle Rust.
2032         * symfile.c (init_filename_language_table): Treat ".rs" as Rust.
2033         * std-operator.def (STRUCTOP_ANONYMOUS, OP_RUST_ARRAY): New
2034         constants.
2035         * rust-lang.h: New file.
2036         * rust-lang.c: New file.
2037         * rust-exp.y: New file.
2038         * dwarf2read.c (read_file_scope): Add Rust producer sniffing.
2039         (dwarf2_compute_name, read_func_scope, read_structure_type)
2040         (read_base_type, read_subrange_type, set_cu_language)
2041         (new_symbol_full, determine_prefix): Handle Rust.
2042         * defs.h (enum language) <language_rust>: New constant.
2043         * Makefile.in (SFILES): Add rust-exp.y, rust-lang.c.
2044         (COMMON_OBS): Add rust-exp.o, rust-lang.o.
2045
2046 2016-05-17  Tom Tromey  <tom@tromey.com>
2047
2048         * valprint.h (struct generic_val_print_array) <array_start,
2049         array_end>: New fields.
2050         * valprint.c (generic_val_print_array): Add "decorations"
2051         parameter.  Use "array_start", "array_end".
2052         (generic_val_print) <TYPE_CODE_ARRAY>: Update.
2053         * p-valprint.c (p_decorations): Update.
2054         * m2-valprint.c (m2_decorations): Update.
2055         * f-valprint.c (f_decorations): Update.
2056         * c-valprint.c (c_decorations): Update.
2057
2058 2016-05-17  Tom Tromey  <tom@tromey.com>
2059
2060         * NEWS: Add "maint selftest" entry.
2061         * selftest.h: New file.
2062         * selftest.c: New file.
2063         * maint.c: Include selftest.h.
2064         (maintenance_selftest): New function.
2065         (_initialize_maint_cmds): Add "maint selftest" command.
2066         * configure.ac (GDB_SELF_TEST): Maybe define.
2067         * config.in, configure: Rebuild.
2068         * Makefile.in (SFILES): Add selftest.c.
2069         (COMMON_OBS): Add selftest.o.
2070
2071 2016-05-17  Tom Tromey  <tom@tromey.com>
2072
2073         * expprint.c: Include f-lang.h.
2074         (print_subexp_standard, dump_subexp_body_standard): Handle
2075         OP_F90_RANGE.
2076
2077 2016-05-17  Tom Tromey  <tom@tromey.com>
2078
2079         * Makefile.in (init.c): Search .y files for initialization
2080         functions.
2081
2082 2016-05-12  Doug Evans  <dje@google.com>
2083
2084         PR symtab/19999
2085         * dwarf2loc.c (dwarf2_find_location_expression): For DWO files still
2086         add base_offset.
2087
2088 2016-05-10  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
2089
2090         * iq2000-tdep.c (iq2000_scan_prologue): Remove if that shouldn't guard
2091         anything.
2092         * linespec.c (add_sal_to_sals): Restore call to symtab_to_fullname.
2093
2094 2016-05-10  Thomas Preud'homme  <thomas.preudhomme@arm.com>
2095
2096         * arm-tdep.c (arm_elf_make_msymbol_special): Use
2097         ARM_GET_SYM_BRANCH_TYPE to get branch type of a symbol.
2098
2099 2016-05-07  Trevor Saunders  <tbsaunde+binutils@tbsaunde.org>
2100
2101         * aarch64-linux-tdep.c (aarch64_linux_sigframe_init): Remove unused
2102         variables.
2103         * aarch64-tdep.c (aarch64_skip_prologue): Likewise.
2104         (aarch64_scan_prologue): Likewise.
2105         (aarch64_prologue_prev_register): Likewise.
2106         (aarch64_dwarf2_prev_register): Likewise.
2107         (pass_in_v): Likewise.
2108         (aarch64_push_dummy_call): Likewise.
2109         (aarch64_breakpoint_from_pc): Likewise.
2110         (aarch64_return_in_memory): Likewise.
2111         (aarch64_return_value): Likewise.
2112         (aarch64_displaced_step_b_cond): Likewise.
2113         (aarch64_displaced_step_cb): Likewise.
2114         (aarch64_displaced_step_tb): Likewise.
2115         (aarch64_gdbarch_init): Likewise.
2116         (aarch64_process_record): Likewise.
2117         * alpha-mdebug-tdep.c (alpha_mdebug_init_abi): Likewise.
2118         * alpha-tdep.c (_initialize_alpha_tdep): Likewise.
2119         * amd64-dicos-tdep.c (amd64_dicos_init_abi): Likewise.
2120         * amd64-linux-tdep.c (amd64_dtrace_parse_probe_argument): Likewise.
2121         * amd64-tdep.c (fixup_riprel): Likewise.
2122         * amd64-windows-tdep.c (amd64_windows_frame_decode_epilogue): Likewise.
2123         (amd64_windows_frame_decode_insns): Likewise.
2124         (amd64_windows_frame_cache): Likewise.
2125         (amd64_windows_frame_prev_register): Likewise.
2126         (amd64_windows_frame_this_id): Likewise.
2127         (amd64_windows_init_abi): Likewise.
2128         * arm-linux-tdep.c (arm_linux_get_syscall_number): Likewise.
2129         (arm_linux_get_next_pcs_syscall_next_pc): Likewise.
2130         * arm-symbian-tdep.c (arm_symbian_init_abi): Likewise.
2131         * arm-tdep.c (arm_make_epilogue_frame_cache): Likewise.
2132         (arm_epilogue_frame_prev_register): Likewise.
2133         (arm_record_vdata_transfer_insn): Likewise.
2134         (arm_record_exreg_ld_st_insn): Likewise.
2135         * auto-load.c (execute_script_contents): Likewise.
2136         (print_scripts): Likewise.
2137         * avr-tdep.c (avr_frame_prev_register): Likewise.
2138         (avr_push_dummy_call): Likewise.
2139         * bfin-linux-tdep.c (bfin_linux_sigframe_init): Likewise.
2140         * bfin-tdep.c (bfin_gdbarch_init): Likewise.
2141         * blockframe.c (find_pc_partial_function_gnu_ifunc): Likewise.
2142         * break-catch-throw.c (fetch_probe_arguments): Likewise.
2143         * breakpoint.c (breakpoint_xfer_memory): Likewise.
2144         (breakpoint_init_inferior): Likewise.
2145         (breakpoint_inserted_here_p): Likewise.
2146         (software_breakpoint_inserted_here_p): Likewise.
2147         (hardware_breakpoint_inserted_here_p): Likewise.
2148         (bpstat_what): Likewise.
2149         (break_range_command): Likewise.
2150         (save_breakpoints): Likewise.
2151         * coffread.c (coff_symfile_read): Likewise.
2152         * cris-tdep.c (cris_push_dummy_call): Likewise.
2153         (cris_scan_prologue): Likewise.
2154         (cris_register_size): Likewise.
2155         (_initialize_cris_tdep): Likewise.
2156         * d-exp.y: Likewise.
2157         * dbxread.c (dbx_read_symtab): Likewise.
2158         (process_one_symbol): Likewise.
2159         (coffstab_build_psymtabs): Likewise.
2160         (elfstab_build_psymtabs): Likewise.
2161         * dicos-tdep.c (dicos_init_abi): Likewise.
2162         * disasm.c (do_mixed_source_and_assembly): Likewise.
2163         (gdb_disassembly): Likewise.
2164         * dtrace-probe.c (dtrace_process_dof): Likewise.
2165         * dwarf2read.c (error_check_comp_unit_head): Likewise.
2166         (build_type_psymtabs_1): Likewise.
2167         (skip_one_die): Likewise.
2168         (process_imported_unit_die): Likewise.
2169         (dwarf2_physname): Likewise.
2170         (read_file_scope): Likewise.
2171         (setup_type_unit_groups): Likewise.
2172         (create_dwo_cu_reader): Likewise.
2173         (create_dwo_cu): Likewise.
2174         (create_dwo_unit_in_dwp_v1): Likewise.
2175         (create_dwo_unit_in_dwp_v2): Likewise.
2176         (lookup_dwo_unit_in_dwp): Likewise.
2177         (free_dwo_file): Likewise.
2178         (check_producer): Likewise.
2179         (dwarf2_add_typedef): Likewise.
2180         (dwarf2_add_member_fn): Likewise.
2181         (read_unsigned_leb128): Likewise.
2182         (read_signed_leb128): Likewise.
2183         (dwarf2_const_value): Likewise.
2184         (follow_die_sig_1): Likewise.
2185         (dwarf_decode_macro_bytes): Likewise.
2186         * extension.c (restore_active_ext_lang): Likewise.
2187         * frv-linux-tdep.c (frv_linux_sigtramp_frame_cache): Likewise.
2188         * ft32-tdep.c (ft32_analyze_prologue): Likewise.
2189         * gdbtypes.c (lookup_typename): Likewise.
2190         (resolve_dynamic_range): Likewise.
2191         (check_typedef): Likewise.
2192         * h8300-tdep.c (h8300_is_argument_spill): Likewise.
2193         (h8300_gdbarch_init): Likewise.
2194         * hppa-tdep.c (hppa32_push_dummy_call): Likewise.
2195         (hppa_frame_this_id): Likewise.
2196         (_initialize_hppa_tdep): Likewise.
2197         * hppanbsd-tdep.c (hppanbsd_sigtramp_cache_init): Likewise.
2198         * hppaobsd-tdep.c (hppaobsd_supply_fpregset): Likewise.
2199         * i386-dicos-tdep.c (i386_dicos_init_abi): Likewise.
2200         * i386-tdep.c (i386_bnd_type): Likewise.
2201         (i386_gdbarch_init): Likewise.
2202         (i386_mpx_bd_base): Likewise.
2203         * i386nbsd-tdep.c (i386nbsd_sigtramp_cache_init): Likewise.
2204         * i386obsd-tdep.c (i386obsd_elf_init_abi): Likewise.
2205         * ia64-tdep.c (examine_prologue): Likewise.
2206         (ia64_frame_cache): Likewise.
2207         (ia64_push_dummy_call): Likewise.
2208         * infcmd.c (finish_command_fsm_async_reply_reason): Likewise.
2209         (default_print_one_register_info): Likewise.
2210         * infrun.c (infrun_thread_ptid_changed): Likewise.
2211         (thread_still_needs_step_over): Likewise.
2212         (stop_all_threads): Likewise.
2213         (restart_threads): Likewise.
2214         (keep_going_stepped_thread): Likewise.
2215         * iq2000-tdep.c (iq2000_scan_prologue): Likewise.
2216         * language.c (language_init_primitive_type_symbols): Likewise.
2217         * linespec.c (add_sal_to_sals): Likewise.
2218         * linux-nat.c (status_callback): Likewise.
2219         (kill_unfollowed_fork_children): Likewise.
2220         (linux_nat_kill): Likewise.
2221         * linux-tdep.c (linux_fill_prpsinfo): Likewise.
2222         * linux-thread-db.c (thread_db_notice_clone): Likewise.
2223         (record_thread): Likewise.
2224         * location.c (string_to_event_location_basic): Likewise.
2225         * m32c-tdep.c (m32c_prev_register): Likewise.
2226         * m32r-linux-tdep.c (m32r_linux_init_abi): Likewise.
2227         * m32r-tdep.c (decode_prologue): Likewise.
2228         * m68klinux-tdep.c (m68k_linux_sigtramp_frame_cache): Likewise.
2229         * machoread.c (macho_symtab_read): Likewise.
2230         (macho_symfile_read): Likewise.
2231         (macho_symfile_offsets): Likewise.
2232         * maint.c (set_per_command_cmd): Likewise.
2233         * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Likewise.
2234         (mi_cmd_stack_list_variables): Likewise.
2235         * mi/mi-main.c (mi_cmd_exec_run): Likewise.
2236         (output_register): Likewise.
2237         (mi_cmd_execute): Likewise.
2238         (mi_cmd_trace_define_variable): Likewise.
2239         (print_variable_or_computed): Likewise.
2240         * minsyms.c (prim_record_minimal_symbol_full): Likewise.
2241         * mn10300-tdep.c (mn10300_frame_prev_register): Likewise.
2242         * msp430-tdep.c (msp430_pseudo_register_write): Likewise.
2243         * mt-tdep.c (mt_registers_info): Likewise.
2244         * nios2-tdep.c (nios2_analyze_prologue): Likewise.
2245         (nios2_push_dummy_call): Likewise.
2246         (nios2_frame_unwind_cache): Likewise.
2247         (nios2_stub_frame_cache): Likewise.
2248         (nios2_stub_frame_sniffer): Likewise.
2249         (nios2_gdbarch_init): Likewise.
2250         * ppc-ravenscar-thread.c: Likewise.
2251         * ppcfbsd-tdep.c (ppcfbsd_sigtramp_frame_cache): Likewise.
2252         * python/py-evts.c (add_new_registry): Likewise.
2253         * python/py-finishbreakpoint.c (bpfinishpy_init): Likewise.
2254         (bpfinishpy_detect_out_scope_cb): Likewise.
2255         * python/py-framefilter.c (py_print_value): Likewise.
2256         * python/py-inferior.c (infpy_write_memory): Likewise.
2257         * python/py-infevents.c (create_inferior_call_event_object): Likewise.
2258         * python/py-infthread.c (thpy_get_ptid): Likewise.
2259         * python/py-linetable.c (ltpy_get_pcs_for_line): Likewise.
2260         (ltpy_get_all_source_lines): Likewise.
2261         (ltpy_is_valid): Likewise.
2262         (ltpy_iternext): Likewise.
2263         * python/py-symtab.c (symtab_and_line_to_sal_object): Likewise.
2264         * python/py-unwind.c (pyuw_object_attribute_to_pointer): Likewise.
2265         (unwind_infopy_str): Likewise.
2266         * python/py-varobj.c (py_varobj_get_iterator): Likewise.
2267         * ravenscar-thread.c (ravenscar_inferior_created): Likewise.
2268         * rs6000-aix-tdep.c (rs6000_push_dummy_call): Likewise.
2269         * rs6000-lynx178-tdep.c (rs6000_lynx178_push_dummy_call): Likewise.
2270         * rs6000-tdep.c (ppc_deal_with_atomic_sequence): Likewise.
2271         * s390-linux-tdep.c (s390_supply_tdb_regset): Likewise.
2272         (s390_frame_prev_register): Likewise.
2273         (s390_dwarf2_frame_init_reg): Likewise.
2274         (s390_record_vr): Likewise.
2275         (s390_process_record): Likewise.
2276         * score-tdep.c (score_push_dummy_call): Likewise.
2277         (score3_analyze_prologue): Likewise.
2278         * sh-tdep.c (sh_extract_return_value_nofpu): Likewise.
2279         * sh64-tdep.c (sh64_analyze_prologue): Likewise.
2280         (sh64_push_dummy_call): Likewise.
2281         (sh64_extract_return_value): Likewise.
2282         (sh64_do_fp_register): Likewise.
2283         * solib-aix.c (solib_aix_get_section_offsets): Likewise.
2284         * solib-darwin.c (darwin_read_exec_load_addr_from_dyld): Likewise.
2285         (darwin_solib_read_all_image_info_addr): Likewise.
2286         * solib-dsbt.c (enable_break): Likewise.
2287         * solib-frv.c (enable_break2): Likewise.
2288         (frv_fdpic_find_canonical_descriptor): Likewise.
2289         * solib-svr4.c (svr4_handle_solib_event): Likewise.
2290         * sparc-tdep.c (sparc_skip_stack_check): Likewise.
2291         * sparc64-linux-tdep.c (sparc64_linux_get_longjmp_target): Likewise.
2292         * sparcobsd-tdep.c (sparc32obsd_init_abi): Likewise.
2293         * spu-tdep.c (info_spu_dma_cmdlist): Likewise.
2294         * stack.c (read_frame_local): Likewise.
2295         * symfile.c (symbol_file_add_separate): Likewise.
2296         (remove_symbol_file_command): Likewise.
2297         * symmisc.c (maintenance_print_one_line_table): Likewise.
2298         * symtab.c (symbol_cache_flush): Likewise.
2299         (basic_lookup_transparent_type): Likewise.
2300         (sort_search_symbols_remove_dups): Likewise.
2301         * target.c (target_memory_map): Likewise.
2302         (target_detach): Likewise.
2303         (target_resume): Likewise.
2304         (acquire_fileio_fd): Likewise.
2305         (target_store_registers): Likewise.
2306         * thread.c (print_thread_info_1): Likewise.
2307         * tic6x-tdep.c (tic6x_analyze_prologue): Likewise.
2308         * tilegx-linux-tdep.c (tilegx_linux_sigframe_init): Likewise.
2309         * tilegx-tdep.c (tilegx_push_dummy_call): Likewise.
2310         (tilegx_analyze_prologue): Likewise.
2311         (tilegx_stack_frame_destroyed_p): Likewise.
2312         (tilegx_frame_cache): Likewise.
2313         * tracefile.c (trace_save): Likewise.
2314         * tracepoint.c (encode_actions_and_make_cleanup): Likewise.
2315         (start_tracing): Likewise.
2316         (print_one_static_tracepoint_marker): Likewise.
2317         * tui/tui.c (tui_enable): Likewise.
2318         * valops.c (value_struct_elt_bitpos): Likewise.
2319         (find_overload_match): Likewise.
2320         (find_oload_champ): Likewise.
2321         * value.c (value_contents_copy_raw): Likewise.
2322         * windows-tdep.c (windows_get_tlb_type): Likewise.
2323         * x86-linux-nat.c (x86_linux_enable_btrace): Likewise.
2324         * xcoffread.c (record_minimal_symbol): Likewise.
2325         (scan_xcoff_symtab): Likewise.
2326         * xtensa-tdep.c (execute_code): Likewise.
2327         (xtensa_gdbarch_init): Likewise.
2328         (_initialize_xtensa_tdep): Likewise.
2329
2330 2016-05-04  Ulrich Weigand  <uweigand@de.ibm.com>
2331
2332         * spu-linux-nat.c (spu_bfd_iovec_pread): Add pointer cast for C++.
2333         (spu_bfd_open): Likewise.
2334
2335 2016-05-04  Yao Qi  <yao.qi@linaro.org>
2336
2337         PR gdb/19947
2338         * corefile.c (read_memory): Rename it to ...
2339         (read_memory_object): ... it.  Add parameter object.
2340         (read_memory): Call read_memory_object.
2341         (read_stack): Likewise.
2342         (read_code): Likewise.
2343
2344 2016-05-03  Yunlian Jiang <yunlian@google.com>
2345             Doug Evans  <dje@google.com>
2346
2347         PR symtab/19914
2348         * dwarf2read.c (open_and_init_dwp_file): Look at backlink if objfile
2349         is separate debug file.
2350
2351 2016-05-03  Don Breazeal <donb@codesourcery.com>
2352
2353         * serial.h (gdb_pipe): Fix argument names in comment.
2354
2355 2016-05-03  Pedro Alves <palves@redhat.com>
2356
2357         PR python/20037
2358         * python/python.c (_initialize_python) [IS_PY3K]: xstrdup/xfree
2359         oldloc.
2360
2361 2016-05-03  Pedro Alves <palves@redhat.com>
2362
2363         * python/python.c (_initialize_python) [IS_PY3K]: Remove dead
2364         code.
2365
2366 2016-05-03  Pedro Alves  <palves@redhat.com>
2367
2368         * configure.ac (PYTHON_LIBS): Sed away "-Xlinker -export-dynamic".
2369         * configure: Regenerate.
2370
2371 2016-05-03  Pedro Alves  <palves@redhat.com>
2372
2373         * configure.ac (checking for the dynamic export flag): Add
2374         $PYTHON_CPPFLAGS to CPPFLAGS.
2375         * configure: Regenerate.
2376
2377 2016-05-03  Kyrylo Tkachov  <kyrylo.tkachov@arm.com>
2378
2379         * symfile.c (find_pc_overlay): Add braces to avoid -Wparentheses
2380         warning.
2381         (find_pc_mapped_section): Likewise.
2382         (list_overlays_command): Likewise.
2383
2384 2016-05-02  Eli Zaretskii  <eliz@gnu.org>
2385
2386         * windows-nat.c (_initialize_check_for_gdb_ini): Fix off-by-one
2387         error in allocation of space for "$HOME/.gdbinit" string.  This
2388         caused GDB to abort on startup whenever a '~/gdb.ini' file was
2389         actually found, because xsnprintf would hit an assertion
2390         violation.
2391
2392 2016-04-28  Simon Marchi  <simon.marchi@ericsson.com>
2393
2394         * cli/cli-decode.c (help_cmd_list): Do not list commands that
2395         are deprecated.
2396
2397 2016-04-27  Jan Kratochvil  <jan.kratochvil@redhat.com>
2398
2399         * remote.c (remote_start_remote): Detect PACKET_vFile_setfs.support.
2400
2401 2016-04-27  Martin Galvan  <martin.galvan@tallertechnologies.com>
2402
2403         * c-valprint.c (c_value_print): Always convert val back to reference
2404         type if we converted it to a pointer type.
2405
2406 2016-04-27  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2407
2408         * configure.ac: Enhance configure check for babeltrace to reject
2409         non-C++-enabled versions.
2410         * configure: Regenerate.
2411
2412 2016-04-26  Sanimir Agovic  <sanimir.agovic@intel.com>
2413             Keven Boell  <keven.boell@intel.com>
2414             Bernhard Heckel  <bernhard.heckel@intel.com>
2415
2416         * f-valprint.c (f77_create_arrayprint_offset_tbl): Remove
2417         function.
2418         (F77_DIM_SIZE, F77_DIM_OFFSET): Remove macro.
2419         (f77_print_array_1): Use value_subscript to subscript a
2420         value array.
2421         (f77_print_array): Remove call to f77_create_arrayprint_offset_tbl.
2422         (f_val_print): Use value_field to construct a field value.
2423
2424 2016-04-26  Bernhard Heckel  <bernhard.heckel@intel.com>
2425
2426         * valarith.c (value_address): Resolve dynamic types.
2427
2428 2016-04-26  Bernhard Heckel  <bernhard.heckel@intel.com>
2429             Keven Boell  <kevel.boell@intel.com>
2430
2431         * NEWS: Add new supported features for fortran.
2432         * gdbtypes.c (remove_dyn_prop): New.
2433         (resolve_dynamic_struct): Keep type length for fortran structs.
2434         * gdbtypes.h: Forward declaration of new function.
2435         * value.c (value_address): Return dynamic resolved location of a value.
2436         (set_value_component_location): Adjust the value address
2437         for single value prints.
2438         (value_primitive_field): Support value types with a dynamic location.
2439         (set_internalvar): Remove dynamic location property of
2440         internal variables.
2441
2442 2016-04-25  Pedro Alves  <palves@redhat.com>
2443             Yao Qi  <yao.qi@linaro.org>
2444
2445         * mem-break.c (set_raw_breakpoint_at): Create a raw breakpoint
2446         object.  Insert it if it is not inserted yet.  Increase the
2447         refcount and link it into the proc's raw breakpoint list.
2448
2449 2016-04-25  Yao Qi  <yao.qi@linaro.org>
2450
2451         * breakpoint.c (should_be_inserted): Return 0 if the location's
2452         owner is not single step breakpoint or single step breakpoint's
2453         thread isn't the thread which is stepping past a breakpoint.
2454         * gdbarch.sh (software_single_step): Update comments.
2455         * gdbarch.h: Regenerated.
2456         * infrun.c (struct step_over_info) <thread>: New field.
2457         (set_step_over_info): New argument 'thread'.  Callers updated.
2458         (clear_step_over_info): Set field thread to -1.
2459         (thread_is_stepping_over_breakpoint): New function.
2460         * infrun.h (thread_is_stepping_over_breakpoint): Declaration.
2461
2462 2016-04-22  Edjunior Barbosa Machado  <emachado@linux.vnet.ibm.com>
2463
2464         * ppc-linux-nat.c (ppc_linux_read_description): Use PPC_FEATURE_HAS_VSX
2465         and PPC_FEATURE_HAS_ALTIVEC to check if such features are available.
2466
2467 2016-04-22  Yao Qi  <yao.qi@linaro.org>
2468
2469         * valops.c (read_value_memory): New local variable 'stack'.
2470         Set it to either TARGET_OBJECT_STACK_MEMORY or
2471         TARGET_OBJECT_MEMORY.
2472
2473 2016-04-22  Pedro Alves  <palves@redhat.com>
2474
2475         * ada-exp.y: Remove all yy symbol remappings.
2476         (GDB_YY_REMAP_PREFIX): Define.
2477         Include "yy-remap.h".
2478         * ada-lang.c (ada_language_defn): Adjust.
2479         * ada-lang.h (ada_error): Rename to ...
2480         (ada_yyerror): ... this.
2481         * c-exp.y: Remove all yy symbol remappings.
2482         (GDB_YY_REMAP_PREFIX): Define.
2483         Include "yy-remap.h".
2484         * c-lang.c (c_language_defn, cplus_language_defn)
2485         (asm_language_defn, minimal_language_defn): Adjust.
2486         * c-lang.h (c_error): Rename to ...
2487         (c_yyerror): ... this.
2488         * d-exp.y: Remove all yy symbol remappings.
2489         (GDB_YY_REMAP_PREFIX): Define.
2490         Include "yy-remap.h".
2491         * d-lang.c (d_language_defn): Adjust.
2492         * d-lang.h (d_error): Rename to ...
2493         (d_yyerror): ... this.
2494         * f-exp.y: Remove all yy symbol remappings.
2495         (GDB_YY_REMAP_PREFIX): Define.
2496         Include "yy-remap.h".
2497         * f-lang.c (f_language_defn): Adjust.
2498         * f-lang.h (f_error): Rename to ...
2499         (f_yyerror): ... this.
2500         * go-exp.y: Remove all yy symbol remappings.
2501         (GDB_YY_REMAP_PREFIX): Define.
2502         Include "yy-remap.h".
2503         * go-lang.c (go_language_defn): Adjust.
2504         * go-lang.h (go_error): Rename to ...
2505         (go_yyerror): ... this.
2506         * jv-exp.y: Remove all yy symbol remappings.
2507         (GDB_YY_REMAP_PREFIX): Define.
2508         Include "yy-remap.h".
2509         * jv-lang.c (java_language_defn): Adjust.
2510         * jv-lang.h (java_error): Rename to ...
2511         (java_yyerror): ... this.
2512         * m2-exp.y: Remove all yy symbol remappings.
2513         (GDB_YY_REMAP_PREFIX): Define.
2514         Include "yy-remap.h".
2515         * m2-lang.c (m2_language_defn): Adjust.
2516         * m2-lang.h (m2_error): Rename to ...
2517         (m2_yyerror): ... this.
2518         * objc-exp.y: Remove all yy symbol remappings.
2519         (GDB_YY_REMAP_PREFIX): Define.
2520         Include "yy-remap.h".
2521         * objc-lang.c (objc_language_defn): Adjust.
2522         * opencl-lang.c (opencl_language_defn): Adjust.
2523         * p-exp.y: Remove all yy symbol remappings.
2524         (GDB_YY_REMAP_PREFIX): Define.
2525         Include "yy-remap.h".
2526         * p-lang.c (pascal_language_defn): Adjust.
2527         * p-lang.h (pascal_error): Rename to ...
2528         (pascal_yyerror): ... this.
2529         * yy-remap.h: New file.
2530
2531 2016-04-22  Pedro Alves  <palves@redhat.com>
2532
2533         * common/common-exceptions.h (GDB_XCPT_TRY): Remove mention of
2534         the foreign frames issue.
2535         [__cplusplus] (GDB_XCPT): Define as GDB_XCPT_TRY.
2536
2537 2016-04-22  Pedro Alves  <palves@redhat.com>
2538
2539         * common/common-exceptions.c (enum catcher_state, struct catcher)
2540         (current_catcher): Define in C++ mode too.
2541         (exceptions_state_mc_catch): Call throw_exception_sjlj instead of
2542         throw_exception.
2543         (throw_exception_sjlj, throw_exception_cxx): New functions,
2544         factored out from throw_exception.
2545         (throw_exception): Reimplement.
2546         * common/common-exceptions.h (exceptions_state_mc_init)
2547         (exceptions_state_mc_action_iter)
2548         (exceptions_state_mc_action_iter_1, exceptions_state_mc_catch):
2549         Declare in C++ mode too.
2550         (TRY): Rename to ...
2551         (TRY_SJLJ): ... this.
2552         (CATCH): Rename to ...
2553         (CATCH_SJLJ): ... this.
2554         (END_CATCH): Rename to ...
2555         (END_CATCH_SJLJ): ... this.
2556         [GDB_XCPT == GDB_XCPT_SJMP] (TRY, CATCH, END_CATCH): Map to SJLJ
2557         equivalents.
2558         (throw_exception): Update comments.
2559         (throw_exception_sjlj): Declare.
2560         * event-top.c (gdb_rl_callback_read_char_wrapper): Extend intro
2561         comment.  Wrap body in TRY_SJLJ/CATCH_SJLJ and rethrow any
2562         intercepted exception.
2563         (gdb_rl_callback_handler): New function.
2564         (gdb_rl_callback_handler_install): Always install
2565         gdb_rl_callback_handler as readline callback.
2566
2567 2016-04-22  Pedro Alves  <palves@redhat.com>
2568
2569         * event-top.c (rl_callback_read_char_wrapper): Rename to ...
2570         (gdb_rl_callback_read_char_wrapper): ... this.
2571         (change_line_handler, gdb_setup_readline): Adjust.
2572
2573 2016-04-22  Yao Qi  <yao.qi@linaro.org>
2574
2575         * aarch32-linux-nat.c (aarch32_gp_regcache_supply): Clear CPSR
2576         bits 20 to 23.
2577
2578 2016-04-22  Joel Brobecker  <brobecker@adacore.com>
2579
2580         * MAINTAINER: Remove myself as AIX Maintainer.
2581
2582 2016-04-22  Maciej W. Rozycki  <macro@imgtec.com>
2583
2584         * mips-tdep.c (mips_gdbarch_init): For GDB_OSABI_LINUX set
2585         `num_regs' to 90 rather than 79.  Where a target description is
2586         present adjust the setting appropriately.
2587
2588 2016-04-21  Pedro Alves  <palves@redhat.com>
2589
2590         * common/common-exceptions.h (GDB_XCPT_TRY): Add comment.
2591         (GDB_XCPT): Always define as GDB_XCPT_SJMP.
2592
2593 2016-04-21  Pedro Alves  <palves@redhat.com>
2594
2595         * aix-thread.c (pdc_read_data, pdc_write_data): Add cast.
2596         (aix_thread_resume): Use PTRACE_TYPE_ARG5.
2597         * rs6000-nat.c (rs6000_ptrace64): Use PTRACE_TYPE_ARG5.
2598         (rs6000_ptrace_ldinfo): Change type of 'ldi' local to void
2599         pointer, and cast return to gdb_byte pointer.
2600
2601 2016-04-21  Pedro Alves  <palves@redhat.com>
2602
2603         * s390-linux-nat.c (fetch_regset, store_regset, check_regset): Use
2604         void * instead of gdb_byte *.
2605
2606 2016-04-21  Pedro Alves  <palves@redhat.com>
2607
2608         * dwarf2read.c (try_open_dwop_file, open_dwo_file)
2609         (file_file_name, file_full_name): Add char * cast to sentinel in
2610         concat/reconcat calls.
2611         * event-top.c (top_level_prompt): Likewise.
2612         * guile/guile.c (initialize_scheme_side): Likewise.
2613         * linux-tdep.c (linux_fill_prpsinfo): Likewise.
2614         * macrotab.c (macro_source_fullname): Likewise.
2615         * main.c (get_init_files, captured_main): Likewise.
2616         * psymtab.c (psymtab_to_fullname): Likewise.
2617         * python/python.c (_initialize_python)
2618         (gdbpy_finish_initialization): Likewise.
2619         * source.c (symtab_to_fullname): Likewise.
2620
2621 2016-04-20  Pedro Alves  <palves@redhat.com>
2622
2623         * build-with-cxx.m4 (GDB_AC_BUILD_WITH_CXX): Default to yes.
2624         * configure: Renegerate.
2625
2626 2016-04-20  Pedro Alves  <palves@redhat.com>
2627
2628         * darwin-nat.c (darwin_decode_message): Use gdb_signal_from_host.
2629
2630 2016-04-20  Pedro Alves  <palves@redhat.com>
2631
2632         * aarch64-tdep.c (aarch64_record_load_store): Change type of
2633         'reg_rm_val' local to ULONGEST.
2634
2635 2016-04-20  Pedro Alves  <palves@redhat.com>
2636
2637         * darwin-nat.c (darwin_resume_thread): Add uintptr_t cast.
2638
2639 2016-04-20  Doug Evans  <xdje42@gmail.com>
2640
2641         * symmisc.c (dump_symtab_1): Print owning compunit for identical
2642         blockvectors.
2643
2644 2016-04-20  Yao Qi  <yao.qi@linaro.org>
2645
2646         * aarch32-linux-nat.c: Include "arch/arm-linux.h".
2647
2648 2016-04-20  Yao Qi  <yao.qi@linaro.org>
2649
2650         * arm-linux-tdep.h (ARM_CPSR_GREGNUM): Move it to ...
2651         * arch/arm-linux.h: ... here.
2652
2653 2016-04-19  John Baldwin  <jhb@FreeBSD.org>
2654
2655         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Change xstateregs
2656         to void *.
2657         (amd64bsd_store_inferior_registers): Likewise.
2658         * fbsd-nat.c (resume_one_thread_cb): Explicitly cast data to ptid_t *.
2659         (resume_all_threads_cb): Likewise.
2660         * i386bsd-nat.c (i386bsd_supply_gregset): Cast gregs to char *.
2661         (i386bsd_collect_gregset): Likewise.
2662         (i386bsd_fetch_inferior_registers): Change xstateregs to void *.
2663         (i386bsd_store_inferior_registers): Likewise.
2664
2665 2016-04-19  John Baldwin  <jhb@FreeBSD.org>
2666
2667         * main.c (setup_alternate_signal_stack): Cast to char *.
2668
2669 2016-04-19  Doug Evans  <xdje42@gmail.com>
2670
2671         * symmisc.c (dump_symtab_1, dump_symtab): Delete arg objfile.
2672         All callers updated.
2673
2674 2016-04-19  Doug Evans  <xdje42@gmail.com>
2675
2676         PR gdb/17911
2677         * source.c (is_regular_file): New arg errno_ptr.
2678         All callers updated.
2679
2680 2016-04-19  Andreas Arnez  <arnez@linux.vnet.ibm.com>
2681
2682         * linux-record.c (record_linux_system_call): Merge handling for
2683         readlink/recv/read and pipe/pipe2.
2684
2685 2016-04-14  Walfred Tedeschi  <walfred.tedeschi@intel.com>
2686
2687         * features/i386/amd64-mpx-linux.xml: Remove AVX feature.
2688         * features/i386/amd64-mpx.xml: Remove AVX feature.
2689         * features/i386/i386-mpx-linux.xml: Remove AVX feature.
2690         * features/i386/i386-mpx.xml: Remove AVX feature.
2691         * features/i386/amd64-mpx-linux.c: Regenerate.
2692         * features/i386/amd64-mpx.c: Regenerate.
2693         * features/i386/i386-mpx-linux.c: Regenerate.
2694         * features/i386/i386-mpx.c: Regenerate.
2695         * regformats/i386/amd64-mpx-linux.dat: Regenerate.
2696         * regformats/i386/amd64-mpx.dat: Regenerate.
2697         * regformats/i386/i386-mpx-linux.dat: Regenerate.
2698         * regformats/i386/i386-mpx.dat: Regenerate.
2699
2700 2016-04-16  Walfred Tedeschi  <walfred.tedeschi@intel.com>
2701
2702         * amd64-linux-tdep.c (features/i386/amd64-avx-mpx-linux.c):
2703         New include.
2704         (amd64_linux_core_read_description): Add case for
2705          X86_XSTATE_AVX_MPX_MASK.
2706         (_initialize_amd64_linux_tdep): Call initialize_tdesc_amd64_avx_mpx_linux.
2707         * amd64-linux-tdep.h (tdesc_amd64_avx_mpx_linux): New definition.
2708         * amd64-tdep.c (features/i386/amd64-avx-mpx.c): New include.
2709         (amd64_target_description): Add case for  X86_XSTATE_AVX_MPX_MASK.
2710         (_initialize_amd64_tdep): Call initialize_tdesc_amd64_avx_mpx.
2711         * common/x86-xstate.h (X86_XSTATE_MPX_MASK): Remove AVX bits.
2712         (X86_XSTATE_AVX_MPX_MASK): New case.
2713         * features/Makefile (i386/i386-avx-mpx, i386/i386-avx-mpx-linux)
2714         (i386/amd64-avx-mpx, i386/amd64-avx-mpx-linux): New rules.
2715         (i386/i386-avx-mpx-expedite, i386/i386-avx-mpx-linux-expedite)
2716         (i386/amd64-avx-mpx-expedite, i386/amd64-avx-mpx-linux-expedite):
2717         New expedites.
2718         * i386-linux-tdep.c (features/i386/i386-avx-mpx-linux.c): New
2719         include.
2720         (i386_linux_core_read_description): Add case
2721         X86_XSTATE_AVX_MPX_MASK.
2722         (_initialize_i386_linux_tdep): Call
2723         initialize_tdesc_i386_avx_mpx_linux.
2724         * i386-linux-tdep.h (tdesc_i386_avx_mpx_linux): New include.
2725         * i386-tdep.c (features/i386/i386-avx-mpx.c): New include.
2726         (i386_target_description): Add case for X86_XSTATE_AVX_MPX_MASK.
2727         * x86-linux-nat.c (x86_linux_read_description): Add case for
2728         X86_XSTATE_AVX_MPX_MASK.
2729         * features/i386/amd64-avx-mpx-linux.xml: New file.
2730         * features/i386/i386-avx-mpx-linux.xml: New file.
2731         * features/i386/i386-avx-mpx.xml: New file.
2732         * features/i386/amd64-avx-mpx.xml: New file.
2733         * features/i386/amd64-avx-mpx-linux.c: Generated.
2734         * features/i386/amd64-avx-mpx.c: Generated.
2735         * features/i386/i386-avx-mpx-linux.c: Generated.
2736         * features/i386/i386-avx-mpx.c: Generated.
2737         * regformats/i386/amd64-avx-mpx-linux.dat: Generated.
2738         * regformats/i386/amd64-avx-mpx.dat: Generated.
2739         * regformats/i386/i386-avx-mpx-linux.dat: Generated.
2740         * regformats/i386/i386-avx-mpx.dat: Generated.
2741
2742 2016-04-18  Pedro Alves  <palves@redhat.com>
2743
2744         * ptrace.m4 (GDB_AC_PTRACE): Don't run tests in C++ mode.
2745         * configure: Regenerate.
2746
2747 2016-04-18  Martin Galvan  <martin.galvan@tallertechnologies.com>
2748
2749         * valops.c (value_addr): For C++ references, set the copied value's
2750         enclosing_type as well.
2751
2752 2016-04-18  Yao Qi  <yao.qi@linaro.org>
2753
2754         Revert:
2755         2016-04-15  Yao Qi  <yao.qi@linaro.org>
2756
2757         * arm-tdep.c (thumb_stack_frame_destroyed_p): Return zero if
2758         PC is far from the end of function.
2759
2760 2016-04-16  Pedro Alves  <palves@redhat.com>
2761
2762         * ada-exp.y (yydefred): Define as ada_yydefred.
2763
2764 2016-04-15  Pedro Alves  <palves@redhat.com>
2765
2766         * ada-lang.c (ada_lookup_struct_elt_type): Constify 'type_str' and
2767         'name_str' locals.
2768
2769 2016-04-15  Pedro Alves  <palves@redhat.com>
2770
2771         * btrace.c (pt_btrace_insn_flags): Change return type to
2772         btrace_insn_flags.  Use btrace_insn_flags for local.
2773
2774 2016-04-15  Pedro Alves  <palves@redhat.com>
2775
2776         * nat/linux-ptrace.h [__mips__] (GDB_ARCH_IS_TRAP_BRKPT): Also
2777         accept TRAP_BRKPT.
2778          [__mips__] (GDB_ARCH_IS_TRAP_HWBKPT): Also accept TRAP_HWBKPT.
2779
2780 2016-04-15  Yao Qi  <yao.qi@linaro.org>
2781
2782         * arm-tdep.c (thumb_stack_frame_destroyed_p): Return zero if
2783         PC is far from the end of function.
2784
2785 2016-04-14  Pedro Alves  <palves@redhat.com>
2786
2787         * cli/cli-cmds.c (alias_usage_error): New function.
2788         (alias_command): Use it.
2789         * ctf.c (ctf_save_metadata_header): Inline metadata_fmt local in
2790         ctf_save_write_metadata call.
2791
2792 2016-04-14  Pedro Alves  <palves@redhat.com>
2793
2794         * ada-typeprint.c (print_fixed_point_type): Don't pass float as
2795         argument to function expecting LONGEST.
2796         * value.c (unpack_long): Add casts to LONGEST.
2797
2798 2016-04-13  Luis Machado  <lgustavo@codesourcery.com>
2799
2800         * exec.c (exec_file_locate_attach): Guard a couple functions
2801         that can throw errors.
2802         (exception_print_same): New helper function.
2803
2804 2016-04-13  Pedro Alves  <palves@redhat.com>
2805
2806         PR remote/19840
2807         * remote.c (struct remote_state) <last_resume_exec_dir>: New
2808         field.
2809         (new_remote_state): Default last_resume_exec_dir to EXEC_FORWARD.
2810         (remote_open_1): Reset last_resume_exec_dir to EXEC_FORWARD.
2811         (remote_resume): Store the last execution direction.
2812         (remote_execution_direction): New function.
2813         (init_remote_ops): Install it as to_execution_direction target_ops
2814         method.
2815
2816 2016-04-12  Pedro Alves  <palves@redhat.com>
2817
2818         * common/common-exceptions.h (GDB_XCPT_TRY): Update comment.
2819         [__cplusplus] (GDB_XCPT): Define as GDB_XCPT_TRY.
2820
2821 2016-04-12  Pedro Alves  <palves@redhat.com>
2822
2823         * common/common-exceptions.c (struct catcher) <buf>: Now a
2824         'jmp_buf' instead of SIGJMP_BUF.
2825         (exceptions_state_mc_init): Change return type to 'jmp_buf'.
2826         (throw_exception): Use longjmp instead of SIGLONGJMP.
2827         * common/common-exceptions.h: Include <setjmp.h> instead of
2828         "gdb_setjmp.h".
2829         (exceptions_state_mc_init): Change return type to 'jmp_buf'.
2830         [GDB_XCPT == GDB_XCPT_SJMP] (TRY): Use setjmp instead of
2831         SIGSETJMP.
2832         * cp-support.c: Include "gdb_setjmp.h".
2833
2834 2016-04-12  Pedro Alves  <palves@redhat.com>
2835
2836         * common/common-exceptions.c (exception_rethrow): Remove
2837         prepare_to_throw_exception call.
2838         * common/common-exceptions.h (prepare_to_throw_exception): Delete
2839         declaration.
2840         * exceptions.c (prepare_to_throw_exception): Delete.
2841
2842 2016-04-12  Pedro Alves  <palves@redhat.com>
2843
2844         * target.c (target_check_pending_interrupt): Delete.
2845         * target.h (struct target_ops) <to_check_pending_interrupt>:
2846         Remove method.
2847         (target_check_pending_interrupt): Remove declaration.
2848         * target-delegates.c: Regenerate.
2849
2850 2016-04-12  Pedro Alves  <palves@redhat.com>
2851
2852         * defs.h: Update comments on SIGINT handling.
2853         (immediate_quit): Delete declaration.
2854         * event-loop.c (call_async_signal_handler): Delete.
2855         * event-loop.h (call_async_signal_handler): Delete declaration.
2856         (mark_async_signal_handler): Update comments.
2857         (gdb_call_async_signal_handler): Delete declaration.
2858         * event-top.c (handle_sigint): Call mark_async_signal_handler
2859         instead of gdb_call_async_signal_handler.
2860         * exceptions.c (prepare_to_throw_exception): Remove reference to
2861         immediate_quit.
2862         (exception_fprintf): Remove comments about immediate_quit.
2863         * mingw-hdep.c (sigint_event, sigint_handler): Delete.
2864         (gdb_select): Don't wait on sigint_event.
2865         (gdb_call_async_signal_handler): Delete.
2866         (_initialize_mingw_hdep): Delete.
2867         * posix-hdep.c (gdb_call_async_signal_handler): Delete.
2868         * utils.c (immediate_quit): Delete.
2869
2870 2016-04-12  Pedro Alves  <palves@redhat.com>
2871
2872         * defs.h (quit_handler_ftype, quit_handler)
2873         (make_cleanup_override_quit_handler, default_quit_handler): New.
2874         (QUIT): Adjust comments.
2875         * event-top.c (default_quit_handler): New function.
2876         (quit_handler): New global.
2877         (struct quit_handler_cleanup_data): New.
2878         (restore_quit_handler, restore_quit_handler_dtor)
2879         (make_cleanup_override_quit_handler): New.
2880         (async_request_quit): Call QUIT.
2881         * remote.c (struct remote_state) <got_ctrlc_during_io>: New field.
2882         (async_sigint_remote_twice_token, async_sigint_remote_token):
2883         Delete.
2884         (remote_close): Update comments.
2885         (remote_start_remote): Don't set immediate_quit.  Set starting_up
2886         earlier.
2887         (remote_serial_quit_handler, remote_unpush_and_throw): New
2888         functions.
2889         (remote_open_1): Clear got_ctrlc_during_io.  Set
2890         remote_async_terminal_ours_p unconditionally.
2891         (async_initialize_sigint_signal_handler)
2892         (async_handle_remote_sigint, async_handle_remote_sigint_twice)
2893         (remote_check_pending_interrupt, async_remote_interrupt)
2894         (async_remote_interrupt_twice)
2895         (async_cleanup_sigint_signal_handler, ofunc)
2896         (sync_remote_interrupt, sync_remote_interrupt_twice): Delete.
2897         (remote_terminal_inferior, remote_terminal_ours): Remove async
2898         checks.
2899         (remote_wait_as): Don't install a SIGINT handler in sync mode.
2900         (readchar, remote_serial_write): Override the quit handler with
2901         remote_serial_quit_handler.
2902         (getpkt_or_notif_sane_1): Don't call QUIT.
2903         (initialize_remote_ops): Don't install
2904         remote_check_pending_interrupt.
2905         (_initialize_remote): Don't create async_sigint_remote_token and
2906         async_sigint_remote_twice_token.
2907         * ser-base.c (ser_base_wait_for): Call QUIT and use
2908         interruptible_select.
2909         (ser_base_write): Call QUIT.
2910         * ser-go32.c (dos_readchar, dos_write): Call QUIT.
2911         * ser-unix.c (wait_for): Don't use VTIME.  Always take the
2912         gdb_select path, but call QUIT and interruptible_select.
2913         * utils.c (maybe_quit): Call the current quit handler.  Don't call
2914         target_check_pending_interrupt.
2915         (defaulted_query, prompt_for_continue): Override the quit handler
2916         with the default quit handler.
2917
2918 2016-04-12  Pedro Alves  <palves@redhat.com>
2919
2920         * tui/tui-hooks.c (tui_target_has_run): Delete.
2921         (tui_about_to_proceed): Delete.
2922         (tui_about_to_proceed_observer): Delete.
2923         (tui_install_hooks, tui_remove_hooks): Don't install/remove an
2924         about_to_proceed observer.
2925
2926 2016-04-12  Pedro Alves  <palves@redhat.com>
2927
2928         * mi/mi-interp.c (mi_new_thread): Put
2929         target_terminal_ours_for_output in effect while outputting.
2930         (mi_thread_exit): Use target_terminal_ours_for_output instead of
2931         target_terminal_ours.
2932         (mi_record_changed, mi_inferior_added, mi_inferior_appeared)
2933         (mi_inferior_exit, mi_inferior_removed, mi_traceframe_changed)
2934         (mi_tsv_created, mi_tsv_deleted, mi_tsv_modified)
2935         (mi_breakpoint_created, mi_breakpoint_deleted)
2936         (mi_breakpoint_modified, mi_solib_loaded, mi_solib_unloaded)
2937         (mi_command_param_changed, mi_memory_changed)
2938         (report_initial_inferior): Use target_terminal_ours_for_output
2939         instead of target_terminal_ours.  Restore terminal settings.
2940         * mi/mi-main.c (mi_execute_command): Use
2941         target_terminal_ours_for_output instead of target_terminal_ours.
2942         Restore terminal settings.
2943
2944 2016-04-12  Pedro Alves  <palves@redhat.com>
2945
2946         PR gdb/19828
2947         * gnu-nat.c (inf_validate_task_sc): Don't call
2948         target_terminal_ours / target_terminal_inferior around query.
2949         * i386-tdep.c (i386_record_lea_modrm, i386_process_record): Don't
2950         call target_terminal_ours / target_terminal_inferior around
2951         yquery.
2952         * linux-record.c (record_linux_system_call): Don't call
2953         target_terminal_ours / target_terminal_inferior around yquery.
2954         * nto-procfs.c (interrupt_query): Don't call target_terminal_ours
2955         / target_terminal_inferior around query.
2956         * record-full.c (record_full_check_insn_num): Remove
2957         'set_terminal' parameter.  Don't call target_terminal_ours /
2958         target_terminal_inferior around query.
2959         (record_full_message, record_full_registers_change)
2960         (record_full_xfer_partial): Adjust.
2961         * remote.c (interrupt_query): Don't call target_terminal_ours /
2962         target_terminal_inferior around query.
2963         * utils.c (defaulted_query): Install cleanup to restore target
2964         terminal.  Put target_terminal_ours_for_output in effect while
2965         defaulted producing, and target_terminal_ours in in effect while
2966         handling input.
2967         (prompt_for_continue): Install cleanup to restore target terminal.
2968         Put target_terminal_ours in in effect while handling input.
2969
2970 2016-04-12  Pedro Alves  <palves@redhat.com>
2971
2972         * utils.c (defaulted_query, prompt_for_continue): Free temporary
2973         strings with cleanups, instead of xfree.
2974
2975 2016-04-12  Pedro Alves  <palves@redhat.com>
2976
2977         * utils.c (vwarning, internal_vproblem): Use
2978         make_cleanup_restore_target_terminal and
2979         target_terminal_ours_for_output.
2980
2981 2016-04-12  Pedro Alves  <palves@redhat.com>
2982
2983         * infcmd.c (post_create_inferior, prepare_one_step): Use
2984         target_terminal_ours_for_output instead of target_terminal_ours.
2985
2986 2016-04-12  Pedro Alves  <palves@redhat.com>
2987
2988         * exceptions.c (print_flush): Use target_terminal_ours_for_output
2989         instead of target_terminal_ours, and restore target terminal with
2990         a cleanup.
2991
2992 2016-04-12  Pedro Alves  <palves@redhat.com>
2993
2994         * cp-support.c (gdb_demangle): Use target_terminal_ours_for_output
2995         instead of target_terminal_ours, and restore target terminal with
2996         a cleanup.
2997
2998 2016-04-12  Pedro Alves  <palves@redhat.com>
2999
3000         * ada-lang.c (type_as_string, type_as_string_and_cleanup): New
3001         functions.
3002         (ada_lookup_struct_elt_type): Use type_as_string_and_cleanup.
3003
3004 2016-04-12  Pedro Alves  <palves@redhat.com>
3005
3006         * ser-base.c (fd_event): Retry read_prim on EINTR.
3007         (do_ser_base_readchar): Retry read_prim on EINTR.
3008         (ser_base_write): Retry write_prim on EINTR.
3009         * ser-unix.c (ser_unix_read_prim): Don't retry on EINTR here.
3010         (ser_unix_write_prim): Remove comment.
3011
3012 2016-04-12  Pedro Alves  <palves@redhat.com>
3013
3014         * remote.c (remote_pass_ctrlc): New function.
3015         (init_remote_ops): Install it.
3016         * target.c (target_terminal_inferior): Pass pending Ctrl-C to the
3017         target.
3018         (target_pass_ctrlc, default_target_pass_ctrlc): New functions.
3019         * target.h (struct target_ops) <to_pass_ctrlc>: New method.
3020         (target_pass_ctrlc, default_target_pass_ctrlc): New declarations.
3021         * target-delegates.c: Regenerate.
3022
3023 2016-04-12  Pedro Alves  <palves@redhat.com>
3024
3025         * infcmd.c (interrupt_target_1): Call target_stop is in non-stop
3026         mode.
3027         * linux-nat.c (linux_nat_interrupt): Delete.
3028         (linux_nat_add_target): Don't install linux_nat_interrupt.
3029         * remote.c (remote_interrupt_ns): Change return type to void.
3030         Throw error if interrupting the target is not supported.
3031         (remote_interrupt): Don't call the remote_stop_ns/remote_stop_as.
3032
3033 2016-04-12  Pedro Alves  <palves@redhat.com>
3034
3035         * defs.h (clear_quit_flag): Remove declaration.
3036         * extension-priv.h (struct extension_language_ops)
3037         <clear_quit_flag>: Remove field and update comments.
3038         * extension.c (clear_quit_flag): Delete.
3039         * guile/guile.c (guile_extension_ops): Adjust.
3040         * python/python.c (python_extension_ops): Adjust.
3041         (gdbpy_clear_quit_flag): Delete.
3042
3043 2016-04-12  Pedro Alves  <palves@redhat.com>
3044
3045         * main.c (captured_main): Don't clear the quit flag.
3046
3047 2016-04-12  Pedro Alves  <palves@redhat.com>
3048
3049         * exceptions.c (prepare_to_throw_exception): Don't clear the quit
3050         flag.
3051
3052 2016-04-12  Pedro Alves  <palves@redhat.com>
3053
3054         * event-top.c (command_handler): Don't call clear_quit_flag.
3055
3056 2016-04-12  Pedro Alves  <palves@redhat.com>
3057
3058         * remote-sim.c (gdb_os_poll_quit): Don't call clear_quit_flag.
3059         * remote.c (remote_wait_as): Don't call clear_quit_flag.
3060
3061 2016-04-12  Pedro Alves  <palves@redhat.com>
3062
3063         * python/python.c: Include "ser-event.h".
3064         (gdbpy_event_fds): Delete.
3065         (gdbpy_serial_event): New.
3066         (gdbpy_run_events): Change prototype.  Use serial_event_clear
3067         instead of serial_readchar.
3068         (gdbpy_post_event): Use serial_event_set instead of serial_write.
3069         (gdbpy_initialize_events): Use make_serial_event instead of
3070         serial_pipe.
3071
3072 2016-04-12  Pedro Alves  <palves@redhat.com>
3073
3074         * defs.h: Extend QUIT-related comments to mention
3075         interruptible_select.
3076         (quit_serial_event_set, quit_serial_event_clear): Declare.
3077         * event-top.c: Include "ser-event.h" and "gdb_select.h".
3078         (quit_serial_event): New global.
3079         (async_init_signals): Make quit_serial_event.
3080         (quit_serial_event_set, quit_serial_event_clear)
3081         (quit_serial_event_fd, interruptible_select): New functions.
3082         * extension.c (set_quit_flag): Set the quit serial event.
3083         (check_quit_flag): Clear the quit serial event.
3084         * gdb_select.h (interruptible_select): New declaration.
3085         * guile/scm-ports.c (ioscm_input_waiting): Use
3086         interruptible_select instead of gdb_select.
3087         * top.c (gdb_readline_no_editing): Likewise.
3088         * ui-file.c (stdio_file_read): Likewise.
3089
3090 2016-04-12  Pedro Alves  <palves@redhat.com>
3091
3092         * event-loop.c: Include "ser-event.h".
3093         (async_signal_handlers_serial_event): New global.
3094         (async_signals_handler, initialize_async_signal_handlers): New
3095         functions.
3096         (mark_async_signal_handler): Set
3097         async_signal_handlers_serial_event.
3098         (invoke_async_signal_handlers): Clear
3099         async_signal_handlers_serial_event.
3100         * event-top.c (async_init_signals): Call
3101         initialize_async_signal_handlers.
3102
3103 2016-04-12  Pedro Alves  <palves@redhat.com>
3104
3105         * Makefile.in (SFILES): Add ser-event.c.
3106         (HFILES_NO_SRCDIR): Add ser-event.h.
3107         (COMMON_OBS): Add ser-event.o.
3108         * ser-event.c, ser-event.h: New files.
3109         * serial.c (new_serial): New function, factored out from
3110         (serial_fdopen_ops): ... this.
3111         (serial_open_ops_1): New function, factored out from
3112         (serial_open): ... this.
3113         (serial_open_ops): New function.
3114         * serial.h (struct serial): Forware declare.
3115         (serial_open_ops): New declaration.
3116
3117 2016-04-12  Pedro Alves  <palves@redhat.com>
3118
3119         * serial.c (serial_open, serial_fdopen_ops, do_serial_close):
3120         Remove references to name.
3121         * serial.h (struct serial) <name>: Delete.
3122
3123 2016-04-12  Pedro Alves  <palves@redhat.com>
3124
3125         * remote-fileio.c (sigint_fileio_token, remote_fio_no_longjmp):
3126         Delete.
3127         (async_remote_fileio_interrupt): Delete.
3128         (remote_fileio_ctrl_c_signal_handler): Don't call the async signal
3129         handler.  Instead just always set the ctrl_c flag.
3130         (remote_fileio_reply): Clear remote_fio_ctrl_c_flag before
3131         re-enabling the SIGINT handler.
3132         (remote_fileio_func_open, remote_fileio_func_close)
3133         (remote_fileio_func_read, remote_fileio_func_write)
3134         (remote_fileio_func_lseek, remote_fileio_func_rename)
3135         (remote_fileio_func_unlink, remote_fileio_func_stat)
3136         (remote_fileio_func_fstat, remote_fileio_func_gettimeofday)
3137         (remote_fileio_func_isatty, remote_fileio_func_system)
3138         (remote_fileio_request): Remove references to
3139         remote_fio_no_longjmp.
3140         (initialize_remote_fileio): Don't create an async signal handler.
3141
3142 2016-04-12  Pedro Alves  <palves@redhat.com>
3143
3144         * event-top.c (stdin_event_handler): Call QUIT;
3145         (prompt_for_continue): Don't run with immediate_quit set.
3146
3147 2016-04-12  Pedro Alves  <palves@redhat.com>
3148
3149         * tui/tui-io.c (tui_redisplay_readline): Check
3150         gdb_in_secondary_prompt_p instead of immediate_quit.
3151         * tui/tui.c: Include top.h.
3152         (tui_rl_startup_hook): Check gdb_in_secondary_prompt_p instead of
3153         immediate_quit.
3154
3155 2016-04-12  Pedro Alves  <palves@redhat.com>
3156
3157         * top.c (read_command_file): Inline command_loop here.
3158         (command_loop): Delete.
3159
3160 2016-04-12  Pedro Alves  <palves@redhat.com>
3161
3162         * top.c: Include "gdb_select.h".
3163         (gdb_readline_no_editing): Wait for input with gdb_select instead
3164         of blocking in fgetc.
3165         (command_line_input): Don't set immediate_quit.
3166
3167 2016-04-08  Martin Galvan  <martin.galvan@tallertechnologies.com>
3168
3169         * value.c (value_next): Make pass-by-reference parameters const-correct.
3170         (value_parent): Likewise.
3171         (value_enclosing_type): Likewise.
3172         (value_lazy): Likewise.
3173         (value_stack): Likewise.
3174         (value_embedded_offset): Likewise.
3175         (value_pointed_to_offset): Likewise.
3176         (value_raw_address): Likewise.
3177         (deprecated_value_modifiable): Likewise.
3178         (value_free_to_mark): Likewise.
3179         (value_release_to_mark): Likewise.
3180         (internalvar_name): Likewise.
3181         (readjust_indirect_value_type): Likewise.
3182         (value_initialized): Likewise.
3183         * value.h (value_next): Likewise.
3184         (value_parent): Likewise.
3185         (value_enclosing_type): Likewise.
3186         (value_lazy): Likewise.
3187         (value_stack): Likewise.
3188         (value_embedded_offset): Likewise.
3189         (value_pointed_to_offset): Likewise.
3190         (value_raw_address): Likewise.
3191         (deprecated_value_modifiable): Likewise.
3192         (value_free_to_mark): Likewise.
3193         (value_release_to_mark): Likewise.
3194         (internalvar_name): Likewise.
3195         (readjust_indirect_value_type): Likewise.
3196         (value_initialized): Likewise.
3197
3198 2016-04-07  Yao Qi  <yao.qi@linaro.org>
3199
3200         * record-full.c (record_full_insert_breakpoint): Return
3201         early if entry on the address is found in
3202         record_full_breakpoints.
3203
3204 2016-04-07  Yao Qi  <yao.qi@linaro.org>
3205
3206         * record-full.c (record_full_insert_breakpoint): Set
3207         bp_tgt->reqstd_address and bp_tgt->placed_size.
3208
3209 2016-04-06  Don Breazeal  <donb@codesourcery.com>
3210
3211         * value.c (value_actual_type): Don't try to get rtti type
3212         of the value if it has been optimized out.
3213         (value_optimized_out): If a memory access error occurs,
3214         just check vaue->optimized_out.
3215
3216 2016-04-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
3217
3218         Revert the previous commit adding unknown_v_replies_ok.
3219
3220 2016-04-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
3221
3222         * remote.c (struct remote_state): New field unknown_v_replies_ok.
3223         (packet_config_support): Read it.
3224         (remote_start_remote): Set it.
3225
3226 2016-04-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
3227
3228         * remote.c: Revert check-in by a mistake in the previous commit.
3229
3230 2016-04-06  Jan Kratochvil  <jan.kratochvil@redhat.com>
3231             Pedro Alves  <palves@redhat.com>
3232
3233         * exec.c (exec_file_locate_attach): Print warning for unsupported
3234         target_pid_to_exec_file.
3235         * symfile-mem.c (add_vsyscall_page): Remove the "file" command
3236         message part.
3237
3238 2016-04-04  Simon Marchi  <simon.marchi@ericsson.com>
3239
3240         * cli/cli-decode.c (help_cmd_list): Fix function doc and remove
3241         trailing spaces.
3242
3243 2016-04-01  Artemiy Volkov  <artemiyv@acm.org>
3244
3245         PR gdb/19820
3246         * eval.c (evaluate_subexp_standard): Allow TYPE_CODE_ENUM to be
3247         the type of BINOP_REPEAT's second operand.
3248
3249 2016-03-31  Yichao Yu  <yyc1992@gmail.com>
3250
3251         PR gdb/19858
3252         * jit.c (jit_breakpoint_re_set_internal): Return 0 if we already
3253         got the breakpoint at the right address.
3254         (jit_inferior_created): New function.
3255         (_initialize_jit): Install jit_inferior_created as
3256         inferior_created observer.
3257
3258 2016-03-31  Marcin Kościelnicki  <koriakin@0x04.net>
3259
3260         * NEWS: Mention support for tracepoints on powerpc*-linux.
3261
3262 2016-03-31  Catalin Udma  <catalin.udma@freescale.com>
3263
3264         PR python/19743
3265         * python/python.c (execute_gdb_command): Use console uiout
3266         when executing gdb command.
3267         * utils.c (restore_ui_out_closure): New structure.
3268         (do_restore_ui_out): New function.
3269         (make_cleanup_restore_ui_out): Likewise.
3270         * utils.h (make_cleanup_restore_ui_out): Declare.
3271
3272 2016-03-31  Pedro Alves  <palves@redhat.com>
3273
3274         * NEWS: Mention that support for "target m32rsdi", "target mips",
3275         "target pmon", "target ddb", "target rockhopper", and "target lsi"
3276         was removed.
3277         * Makefile.in (ALL_TARGET_OBS): Remove remote-m32r-sdi.o and
3278         remote-mips.o.
3279         (ALLDEPFILES): Remove remote-m32r-sdi.c and remote-mips.c.
3280         * configure.tgt: Remove all references to remote-m32r-sdi.o and
3281         remote-mips.o.
3282         * mips-tdep.c (deprecated_mips_set_processor_regs_hack): Delete
3283         function.
3284         * mips-tdep.h (deprecated_mips_set_processor_regs_hack): Delete
3285         declaration.
3286         * remote-m32r-sdi.c, remote-mips.c: Delete files.
3287         * symfile.c (generic_load, generic_load): Remove comments.
3288
3289 2016-03-30  Yao Qi  <yao.qi@linaro.org>
3290
3291         * arm-tdep.c (arm_epilogue_frame_this_id): Check 'func' against
3292         0 rather than NULL.
3293
3294 2016-03-30  Yao Qi  <yao.qi@linaro.org>
3295
3296         * arm-tdep.c: (arm_make_epilogue_frame_cache): New function.
3297         (arm_epilogue_frame_this_id): New function.
3298         (arm_epilogue_frame_prev_register): New function.
3299         (arm_epilogue_frame_sniffer): New function.
3300         (arm_epilogue_frame_unwind): New.
3301         (arm_gdbarch_init): Append unwinder arm_epilogue_frame_unwind.
3302
3303 2016-03-30  Yao Qi  <yao.qi@linaro.org>
3304
3305         * arm-tdep.c (arm_stack_frame_destroyed_p): Rename it ...
3306         (arm_stack_frame_destroyed_p_1): ... here.  Don't call
3307         arm_pc_is_thumb.
3308         (arm_stack_frame_destroyed_p): Call
3309         thumb_stack_frame_destroyed_p and
3310         arm_stack_frame_destroyed_p_1.
3311
3312 2016-03-30  Doug Evans  <dje@google.com>
3313
3314         * python/py-utils.c (host_string_to_python_string): New function.
3315         * python/python-internal.h (host_string_to_python_string): Declare it.
3316         * python/py-*.c (*): Update all calls to
3317         PyString_Decode (str, strlen (str), host_charset (), NULL);
3318         to use host_string_to_python_string instead.
3319
3320 2016-03-30  Marcin Kościelnicki  <koriakin@0x04.net>
3321
3322         * remote.c (remote_check_symbols): Allocate own buffer for reply.
3323
3324 2016-03-29  Max Filippov  <jcmvbkbc@gmail.com>
3325
3326         * xtensa-tdep.c (xtensa_frame_cache): Change op1 type to LONGEST.
3327         Use safe_read_memory_integer instead of read_memory_integer.
3328
3329 2016-03-29  Marcin Kościelnicki  <koriakin@0x04.net>
3330
3331         * NEWS: Mention support for tracepoints on s390*-linux.
3332
3333 2016-03-29  Don Breazeal  <donb@codesourcery.com>
3334
3335         * gdb/value.c (value_actual_type): Fix formatting issue.
3336
3337 2016-03-23  Yao Qi  <yao.qi@linaro.org>
3338
3339         * gdbarch.sh (software_single_step): Remove comments.
3340         * gdbarch.h: Regenerated.
3341
3342 2016-03-21  Yao Qi  <yao.qi@linaro.org>
3343
3344         * arm-tdep.c (arm_record_media): New.
3345         (arm_record_ld_st_reg_offset): Call arm_record_media.
3346
3347 2016-03-21  Yao Qi  <yao.qi@linaro.org>
3348
3349         * arm-linux-tdep.c (arm_canonicalize_syscall): Canonicalize
3350         more syscalls.
3351
3352 2016-03-18  Yao Qi  <yao.qi@linaro.org>
3353
3354         * sparc-tdep.c (sparc_software_single_step): Make it static.
3355         * sparc-tdep.h (sparc_software_single_step): Remove declaration.
3356
3357 2016-03-18  Yao Qi  <yao.qi@linaro.org>
3358
3359         * spu-tdep.c (spu_software_single_step): Throw error when
3360         target_read_memory fails.
3361
3362 2016-03-17  Jan Kratochvil  <jan.kratochvil@redhat.com>
3363
3364         * linux-thread-db.c (check_pid_namespace_match): Extend the message.
3365
3366 2016-03-17  Pedro Alves  <palves@redhat.com>
3367             Don Breazeal  <donb@codesourcery.com>
3368
3369         PR remote/19496
3370         * infcmd.c (notice_new_inferior): Use the 'leave_running' argument
3371         instead of checking the 'non_stop' global.
3372         * remote.c (remote_add_thread): New parameter 'executing'.  Use it
3373         to set the new thread's executing state.
3374         (remote_notice_new_inferior): Rename parameter 'running' to
3375         'executing'.  Always set the thread state to THREAD_RUNNING in
3376         non-stop mode, and to THREAD_STOPPED in all-stop mode.  Pass
3377         EXECUTING to remote_add_thread and notice_new_inferior.
3378         (remote_update_thread_list): Update to pass executing state, not
3379         running state.
3380
3381 2016-03-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3382
3383         * syscalls/s390-linux.xml: Add NUMA syscalls and new syscalls up
3384         to 374.
3385         * syscalls/s390x-linux.xml: Likewise.
3386
3387 2016-03-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3388
3389         * linux-record.c (record_mem_at_reg): New helper function.
3390         (record_linux_system_call): Exploit new helper function where
3391         applicable.
3392
3393 2016-03-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3394
3395         * linux-record.c: Fix whitespace issues; tabify, remove trailing
3396         spaces.
3397
3398 2016-03-17  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3399
3400         * linux-record.c (record_linux_system_call): Add missing return
3401         statements to handling of pipe and pipe2 syscalls.
3402
3403 2016-03-16  Doug Evans  <dje@google.com>
3404
3405         * xml-tdesc.c (tdesc_start_enum): Fix c++ build.
3406
3407 2016-03-16  Yao Qi  <yao.qi@linaro.org>
3408
3409         * arm-linux-tdep.c (arm_linux_init_abi): Fix
3410         arm_linux_record_tdep.arg1, arm_linux_record_tdep.arg2 and
3411         arm_linux_record_tdep.arg3.  Set arm_linux_record_tdep.arg4,
3412         arm_linux_record_tdep.arg5, arm_linux_record_tdep.arg6, and
3413         arm_linux_record_tdep.arg7.
3414
3415 2016-03-15  Keith Seitz  <keiths@redhat.com>
3416
3417         PR breakpoints/18303
3418         * cp-namespace.c (cp_lookup_bare_symbol): Change assertion to
3419         look for "::" instead of simply ":".
3420         (cp_search_static_and_baseclasses): Return null_block_symbol for
3421         malformed input.
3422         Remove assertions.
3423         * cp-support.c (cp_find_first_component_aux): Do not return
3424         a prefix length for ':' unless the next character is also ':'.
3425
3426 2016-03-15  Doug Evans  <dje@google.com>
3427
3428         * features/aarch64-core.xml (cpsr_flags): New flags type.
3429         (cpsr): Use it.
3430         * features/aarch64.c: Regenerate.
3431
3432 2016-03-15  Doug Evans  <dje@google.com>
3433
3434         * features/i386/32bit-core.xml (i386_eflags): Remove "end" spec.
3435         * features/i386/32bit-sse.xml (i386_eflags): Ditto.
3436         * features/i386/64bit-core.xml (i386_eflags): Ditto.
3437         * features/i386/64bit-sse.xml (i386_eflags): Ditto.
3438         * features/i386/x32-core.xml (i386_eflags): Ditto.
3439
3440 2016-03-15  Doug Evans  <dje@google.com>
3441             Wei-cheng Wang  <cole945@gmail.com>
3442
3443         Extend flags to support multibit and enum bitfields.
3444         * NEWS: Document new features.
3445         * c-typeprint.c (c_type_print_varspec_prefix): Handle TYPE_CODE_FLAGS.
3446         (c_type_print_varspec_suffix, c_type_print_base): Ditto.
3447         * gdbtypes.c (arch_flags_type): Don't assume all fields are one bit.
3448         (append_flags_type_field): New function.
3449         (append_flags_type_flag): Call it.
3450         * gdbtypes.h (append_flags_type_field): Declare.
3451         * target-descriptions.c (struct tdesc_type_flag): Delete.
3452         (enum tdesc_type_kind) <TDESC_TYPE_BOOL>: New enum value.
3453         (enum tdesc_type_kind) <TDESC_TYPE_ENUM>: Ditto.
3454         (struct tdesc_type) <u.f>: Delete.
3455         (tdesc_predefined_types): Add "bool".
3456         (tdesc_predefined_type): New function.
3457         (tdesc_gdb_type): Handle TDESC_TYPE_BOOL, TDESC_TYPE_ENUM.
3458         Update TDESC_TYPE_FLAGS support.
3459         (tdesc_free_type): Handle TDESC_TYPE_ENUM.  Update TDESC_TYPE_FLAGS.
3460         (tdesc_create_flags): Update.
3461         (tdesc_create_enum): New function.
3462         (tdesc_add_field): Initialize start,end to -1.
3463         (tdesc_add_typed_bitfield): New function.
3464         (tdesc_add_bitfield): Call it.
3465         (tdesc_add_flag): Allow TDESC_TYPE_STRUCT.  Update.
3466         (tdesc_add_enum_value): New function.
3467         (maint_print_c_tdesc_cmd): Fold TDESC_TYPE_FLAGS support into
3468         TDESC_TYPE_STRUCT.  Handle TDESC_TYPE_ENUM.
3469         * target-descriptions.h (tdesc_create_enum): Declare.
3470         (tdesc_add_typed_bitfield, tdesc_add_enum_value): Declare.
3471         * valprint.c (generic_val_print_enum_1): New function.
3472         (generic_val_print_enum): Call it.
3473         (val_print_type_code_flags): Make static.  Handle multibit bitfields
3474         and enum bitfields.
3475         * valprint.h (val_print_type_code_flags): Delete.
3476         * xml-tdesc.c (struct tdesc_parsing_data) <current_type_is_flags>:
3477         Delete.  All uses removed.
3478         (tdesc_start_enum): New function.
3479         (tdesc_start_field): Handle multibit and enum bitfields.
3480         (tdesc_start_enum_value): New function.
3481         (enum_value_attributes, enum_children, enum_attributes): New static
3482         globals.
3483         (feature_children): Add "enum".
3484         * features/gdb-target.dtd (enum, evalue): New elements.
3485
3486 2016-03-15  Doug Evans  <dje@google.com>
3487
3488         * target-descriptions.c (struct tdesc_type) <u.u.size>: Change type
3489         from LONGEST to int.
3490         (struct tdesc_type) <u.f.size>: Ditto.
3491         (tdesc_set_struct_size): Change type of "size" arg from LONGEST
3492         to int.  Add assertion size > 0.
3493         (tdesc_create_flags): Ditto.
3494         * target-descriptions.h (tdesc_set_struct_size): Update.
3495         (tdesc_create_flags): Update.
3496         * xml-tdesc.c (MAX_FIELD_SIZE, MAX_FIELD_BITSIZE): New macros.
3497         (MAX_VECTOR_SIZE): New macro.
3498         (tdesc_start_struct): Catch conversion errors from LONGEST to int.
3499         (tdesc_start_flags, tdesc_start_field, tdesc_start_vector): Ditto.
3500
3501 2016-03-15  Doug Evans  <dje@google.com>
3502
3503         * target-descriptions.c (maint_print_c_tdesc_cmd): Use "type" for
3504         TYPE_CODE_FLAGS instead of "field_type", for consistency.
3505         * features/i386/amd64-avx-linux.c: Regenerate.
3506         * features/i386/amd64-avx.c: Regenerate.
3507         * features/i386/amd64-avx512-linux.c: Regenerate.
3508         * features/i386/amd64-avx512.c: Regenerate.
3509         * features/i386/amd64-linux.c: Regenerate.
3510         * features/i386/amd64-mpx-linux.c: Regenerate.
3511         * features/i386/amd64-mpx.c: Regenerate.
3512         * features/i386/amd64.c: Regenerate.
3513         * features/i386/i386-avx-linux.c: Regenerate.
3514         * features/i386/i386-avx.c: Regenerate.
3515         * features/i386/i386-avx512-linux.c: Regenerate.
3516         * features/i386/i386-avx512.c: Regenerate.
3517         * features/i386/i386-linux.c: Regenerate.
3518         * features/i386/i386-mmx-linux.c: Regenerate.
3519         * features/i386/i386-mmx.c: Regenerate.
3520         * features/i386/i386-mpx-linux.c: Regenerate.
3521         * features/i386/i386-mpx.c: Regenerate.
3522         * features/i386/i386.c: Regenerate.
3523         * features/i386/x32-avx-linux.c: Regenerate.
3524         * features/i386/x32-avx.c: Regenerate.
3525         * features/i386/x32-avx512-linux.c: Regenerate.
3526         * features/i386/x32-avx512.c: Regenerate.
3527         * features/i386/x32-linux.c: Regenerate.
3528         * features/i386/x32.c: Regenerate.
3529
3530 2016-03-15  Pedro Alves  <palves@redhat.com>
3531
3532         PR gdb/19676
3533         * linux-thread-db.c (try_thread_db_load_1): Leave
3534         info->td_ta_thr_iter_p NULL iff debugging a live process and we
3535         have /proc access.
3536         (find_new_threads_once): Assert that we have a non-NULL
3537         info->td_ta_thr_iter_p instead of checking whether the target has
3538         execution.
3539
3540 2016-03-15  Pedro Alves  <palves@redhat.com>
3541
3542         PR gdb/19676
3543         * infrun.c (displaced_step_prepare): Also disable displaced
3544         stepping on NOT_SUPPORTED_ERROR.
3545         * linux-tdep.c (linux_displaced_step_location): If reading auxv
3546         fails, throw NOT_SUPPORTED_ERROR instead of generic error.
3547
3548 2016-03-13  Marcin Kościelnicki  <koriakin@0x04.net>
3549
3550         * s390-linux-tdep.c (s390_gen_return_address): New function.
3551         (s390_gdbarch_init): Fill gen_return_address hook.
3552
3553 2016-03-11  Andrew Burgess  <andrew.burgess@embecosm.com>
3554
3555         * symmisc.c (maintenance_info_line_tables): New function.
3556         (maintenance_print_one_line_table): New function.
3557         (_initialize_symmisc): Register 'maint info line-table' command.
3558         * NEWS: Mention new command.
3559
3560 2016-03-11  Marcin Kościelnicki  <koriakin@0x04.net>
3561
3562         * s390-linux-tdep.c (s390_ax_pseudo_register_collect): New function.
3563         (s390_ax_pseudo_register_push_stack): New function.
3564         (s390_gdbarch_init): Fill ax_pseudo_register_collect and
3565         ax_pseudo_register_push_stack hooks.
3566
3567 2016-03-10  Simon Marchi  <simon.marchi@polymtl.ca>
3568
3569         * data-directory/Makefile.in (PYTHON_FILE_LIST): Install
3570         gdb/function/as_string.py.
3571         * python/lib/gdb/function/as_string.py: New file.
3572         * NEWS: Mention the new $_as_string function.
3573
3574 2016-03-09  Jose E. Marchesi  <jose.marchesi@oracle.com>
3575
3576         * target.h: Fix doc string of target_can_use_hardware_watchpoint.
3577
3578 2016-03-09  Pedro Alves  <palves@redhat.com>
3579
3580         * event-top.c (more_to_come): Delete.
3581         (struct readline_input_state): Delete.
3582         (readline_input_state): Delete.
3583         (get_command_line_buffer): New function.
3584         (command_handler): Update comments.  Don't handle NULL commands
3585         here.  Do not execute commented lines.
3586         (command_line_append_input_line): New function.
3587         (handle_line_of_input): New function, partly based on
3588         command_line_handler and command_line_input.
3589         (command_line_handler): Rewrite.
3590         * event-top.h (command_handler): New declaration.
3591         (command_loop): Defer command execution to command_handler.
3592         (command_line_input): Update comments.  Simplify, using struct
3593         buffer and handle_line_of_input.
3594         * top.h (struct buffer): New forward declaration.
3595         (handle_line_of_input): New declaration.
3596
3597 2016-03-09  Pedro Alves  <palves@redhat.com>
3598
3599         * event-top.c (command_line_handler): Use xfree + xstrdup instead
3600         of xrealloc + strcpy.
3601         * main.c (captured_main): Use xstrdup instead of xmalloc plus
3602         manual clear.
3603         * top.c (saved_command_line): Rewrite comment.
3604         (saved_command_line_size): Delete.
3605         (command_line_input): Use xfree + xstrdup instead of xrealloc +
3606         strcpy.
3607         * top.h (saved_command_line_size): Delete declaration.
3608
3609 2016-03-09  Pedro Alves  <palves@redhat.com>
3610
3611         * event-top.c: Include buffer.h.
3612         (gdb_readline_no_editing_callback): Use struct buffer instead
3613         of xrealloc.
3614
3615 2016-03-09  Pedro Alves  <palves@redhat.com>
3616
3617         * common/buffer.h (buffer_grow_char): New function.
3618         * top.c: Include buffer.h.
3619         (gdb_readline_no_editing): Rename 'prompt_arg' parameter to
3620         'prompt'.  Use struct buffer instead of xrealloc.
3621
3622 2016-03-09  Pedro Alves  <palves@redhat.com>
3623
3624         * defs.h (gdb_readline): Delete declaration.
3625         * top.c (gdb_readline): Rename to ...
3626         (gdb_readline_no_editing): ... this, and make static.
3627
3628 2016-03-09  Pedro Alves  <palves@redhat.com>
3629
3630         * utils.c (prompt_for_continue): Update comments.
3631
3632 2016-03-09  Pedro Alves  <palves@redhat.com>
3633
3634         * event-top.c (async_annotation_suffix): Delete.
3635         (top_level_prompt, command_line_handler): Don't use
3636         'async_annotation_suffix' and simplify.
3637         * event-top.h (async_annotation_suffix): Delete declaration.
3638         (init_main): Remove reference to 'async_annotation_suffix'.
3639
3640 2016-03-09  Pedro Alves  <palves@redhat.com>
3641
3642         * event-top.c (gdb_readline2): Rename to ...
3643         (gdb_readline_no_editing_callback): ... this.
3644         (change_line_handler, stdin_event_handler)
3645         (gdb_setup_readline): Adjust.
3646         * event-top.h (gdb_readline2): Rename to ...
3647         (gdb_readline_no_editing_callback): ... this, and move closer to
3648         other readline-related declarations.
3649         * mi/mi-interp.c (mi_interpreter_resume): Adjust.
3650
3651 2016-03-09  Pedro Alves  <palves@redhat.com>
3652
3653         * top.c (window_hook): Delete.
3654         (command_loop): Remove references to window_hook.
3655
3656 2016-03-09  Marcin Kościelnicki  <koriakin@0x04.net>
3657
3658         * corefile.c (safe_read_memory_unsigned_integer): New function.
3659         * gdbcore.h (safe_read_memory_unsigned_integer): New prototype.
3660         * rs6000-tdep.c (rs6000_frame_cache): Read backchain as unsigned.
3661
3662 2016-03-09  Marcin Kościelnicki  <koriakin@0x04.net>
3663
3664         * rs6000-tdep.c: Add "ax.h" and "ax-gdb.h" includes.
3665         (rs6000_gen_return_address): New function.
3666         (rs6000_gdbarch_init): Wire in the above.
3667
3668 2016-03-09  Marcin Kościelnicki  <koriakin@0x04.net>
3669
3670         * rs6000-tdep.c (rs6000_ax_pseudo_register_collect): New function.
3671         (rs6000_gdbarch_init): Wire in the above.
3672
3673 2016-03-09  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3674
3675         * s390-linux-tdep.c (s390_analyze_prologue): Ignore BRC and BRCL
3676         instructions that do nothing or are conditional traps.
3677
3678 2016-03-09  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3679
3680         * s390-linux-tdep.c (s390_prologue_frame_unwind_cache): Store
3681         frame func's PC in info->func before any other failure can occur.
3682         (s390_frame_this_id): Use frame_id_build_unavailable_stack if
3683         info->func has been filled out.
3684
3685 2016-03-09  Pedro Alves  <palves@redhat.com>
3686
3687         * osabi.c (gdb_osabi_names): Avoid spaces in osabi names.
3688
3689 2016-03-09  Pedro Alves  <palves@redhat.com>
3690
3691         * frv-tdep.c (frv_gdbarch_init): Handle bfd_mach_fr300.
3692
3693 2016-03-09  Pedro Alves  <palves@redhat.com>
3694
3695         * cris-tdep.c (cris_gdbarch_init): Return 0 if the info's byte
3696         order is BFD_ENDIAN_BIG or if the cris version is unsupported.
3697
3698 2016-03-09  Pedro Alves  <palves@redhat.com>
3699
3700         * doublest.c: Extend comments.
3701         (floatformat_to_doublest, floatformat_from_doublest): Copy the
3702         floatformat's total size, not the host type's size.
3703
3704 2016-03-09  Pedro Alves  <palves@redhat.com>
3705
3706         * doublest.c (floatformat_totalsize_bytes): New function.
3707         (floatformat_from_type): Assert that the type's length is at least
3708         as long as the floatformat's totalsize.
3709         * doublest.h (floatformat_totalsize_bytes): New declaration.
3710         * gdbtypes.c (arch_float_type): Assert that the type's length is
3711         at least as long as the floatformat's totalsize.
3712
3713 2016-03-09  Pedro Alves  <palves@redhat.com>
3714
3715         * hppa-linux-tdep.c (hppa_linux_init_abi): Set the long double
3716         format to floatformats_ieee_double.
3717
3718 2016-03-07  Pedro Alves  <palves@redhat.com>
3719
3720         * mips-tdep.c (mips_gdbarch_init): Check whether info.abfd is NULL
3721         before calling bfd_get_flavour.
3722
3723 2016-03-05  Pitchumani Sivanupandi  <pitchumani.s@atmel.com>
3724
3725         * avr-tdep.c (AVR_LAST_ARG_REGNUM): Define.
3726         (avr_push_dummy_call): Correct last needed argument register.
3727         Write MSB of argument into register and subsequent bytes into
3728         other registers in decreasing order.
3729
3730 2016-03-04  Yao Qi  <yao.qi@linaro.org>
3731
3732         * arm-tdep.c (arm_record_vdata_transfer_insn): Simplify the
3733         condition check.  Record the right D register number.
3734
3735 2016-03-04  Yao Qi  <yao.qi@linaro.org>
3736
3737         * arm-tdep.c (arm_record_extension_space): Remove code
3738         printing "Process record does not support".
3739         (arm_record_data_proc_misc_ld_str): Likewise.
3740         (decode_insn): Call arm_record_extension_space if condition
3741         is 0xf.  Call arm_record_unsupported_insn if ret isn't
3742         ARM_RECORD_SUCCESS.  Use 'ret' instead of 'insn_id' to hold
3743         the value of thumb2_record_decode_insn_handler.
3744
3745 2016-03-04  Simon Marchi  <simon.marchi@ericsson.com>
3746
3747         * features/feature_to_c.sh: Print the help when passing no
3748         argument.
3749
3750 2016-03-02  Bernhard Heckel  <bernhard.heckel@intel.com>
3751
3752         * MAINTAINERS (Write After Approval): Add Bernhard Heckel.
3753
3754 2016-03-02  Bernhard Heckel  <bernhard.heckel@intel.com>
3755
3756         * dwarf2read.c (new_symbol_full): Fix detection of gfortran compilers.
3757
3758 2016-03-01  Andreas Arnez  <arnez@linux.vnet.ibm.com>
3759
3760         * s390-linux-tdep.c (s390_backchain_frame_unwind_cache): Avoid
3761         exception when attempting to access the inferior's backchain.
3762
3763 2016-02-29  Yao Qi  <yao.qi@linaro.org>
3764
3765         * aarch64-linux-tdep.c (aarch64_canonicalize_syscall): Support
3766         eventfd2, eventfd2, dup3, inotify_init1, fallocate and pipe2.
3767         Return gdb_sys_epoll_create1 instead of gdb_sys_epoll_create
3768         for aarch64_sys_epoll_create1.
3769
3770 2016-02-29  Yao Qi  <yao.qi@linaro.org>
3771
3772         * linux-record.h (enum gdb_syscall) <gdb_sys_fallocate>: New.
3773         <gdb_sys_eventfd2, gdb_sys_epoll_create1, gdb_sys_dup3>: New.
3774         <gdb_sys_pipe2, gdb_sys_inotify_init1>: New.
3775         * linux-record.c (record_linux_system_call): Handle them.
3776
3777 2016-02-28  Iain Buclaw  <ibuclaw@gdcproject.org>
3778
3779         * d-namespace.c (d_lookup_symbol_imports): Avoid recursive lookups from
3780         cyclic imports.
3781
3782 2016-02-26  Keith Seitz  <keiths@redhat.com>
3783
3784         * rs6000-tdep.c (rs6000_frame_cache): Explicitly cast return result
3785         to avoid invalid conversion from void *.
3786
3787 2016-02-26  Yao Qi  <yao.qi@linaro.org>
3788
3789         * arm-tdep.c (arm_record_exreg_ld_st_insn): Set 'single_reg'
3790         per bit 8.  Check bit 20 instead of bit 4 for VMOV
3791         instruction.  Record D registers for instructions changing
3792         S registers.  Change of the order of length and address
3793         in record_buf_mem array.
3794
3795 2016-02-26  Yao Qi  <yao.qi@linaro.org>
3796
3797         * arm-tdep.c (thumb_record_ld_st_reg_offset): Fix the register
3798         number of Rd.
3799
3800 2016-02-25  Doug Evans  <dje@google.com>
3801
3802         * remote-m32r-sdi.c (recv_char_data): Initialize val to avoid
3803         compiler warning.
3804         (recv_long_data): Ditto.
3805
3806 2016-02-25  Simon Marchi  <simon.marchi@ericsson.com>
3807
3808         * i386-linux-tdep.c (i386_linux_handle_segmentation_fault):
3809         Initialize variables.
3810
3811 2016-02-25  Antoine Tremblay  <antoine.tremblay@ericsson.com>
3812
3813         * ax-general.c (ax_reg): Call gdbarch_remote_register_number.
3814         (ax_reg_mask): Likewise.
3815
3816 2016-02-24  Pedro Alves  <palves@redhat.com>
3817
3818         * linux-nat.c (save_sigtrap) Delete.
3819         (stop_wait_callback): Call save_stop_reason instead of
3820         save_sigtrap.
3821         (check_stopped_by_breakpoint): Rename to ...
3822         (save_stop_reason): ... this.  Bits of save_sigtrap folded here.
3823         Use GDB_ARCH_IS_TRAP_HWBKPT and handle ambiguous
3824         GDB_ARCH_IS_TRAP_BRKPT / GDB_ARCH_IS_TRAP_HWBKPT.  Factor out
3825         common code between the USE_SIGTRAP_SIGINFO and
3826         !USE_SIGTRAP_SIGINFO blocks.
3827         (linux_nat_filter_event): Call save_stop_reason instead of
3828         save_sigtrap.
3829         * nat/linux-ptrace.h: Check for both SI_KERNEL and TRAP_BRKPT
3830         si_code for MIPS.
3831         * nat/linux-ptrace.h: Fix "TRAP_HWBPT" typo in x86 table.  Add
3832         comments on MIPS behavior.
3833         (GDB_ARCH_IS_TRAP_HWBKPT): Define for all archs.
3834
3835 2016-02-24  Marcin Kościelnicki  <koriakin@0x04.net>
3836
3837         * rs6000-tdep.c (rs6000_frame_cache): Initialize frame and pc to 0
3838         to avoid spurious warnings.
3839
3840 2016-02-24  Gary Benson  <gbenson@redhat.com>
3841
3842         * exec.c (exec_file_locate_attach): Do not attempt to
3843         locate main executable locally if not found in sysroot.
3844
3845 2016-02-24  Joel Brobecker  <brobecker@adacore.com>
3846
3847         GDB 7.11 released.
3848
3849 2016-02-24  Wei-cheng Wang  <cole945@gmail.com>
3850
3851         * rs6000-tdep.c (rs6000_frame_cache, rs6000_frame_this_id): Handle
3852         unavailable PC/SP to build unavailable frame.
3853
3854 2016-02-23  Doug Evans  <dje@google.com>
3855
3856         Extend "skip" command to support -file, -gfile, -function, -rfunction.
3857         * NEWS: Document new features.
3858         * skip.c: #include "fnmatch.h", "gdb_regex.h".
3859         (skiplist_entry) <file>: Renamed from filename.
3860         <function>: Renamed from function_name.
3861         <file_is_glob, function_is_regexp>: New members.
3862         <compiled_function_regexp, compiled_function_regexp_is_valid>:
3863         New members.
3864         (make_skip_entry): New function.
3865         (free_skiplist_entry, free_skiplist_entry_cleanup): New functions.
3866         (make_free_skiplist_entry_cleanup): New function.
3867         (skip_file_command): Update.
3868         (skip_function, skip_function_command): Update.
3869         (compile_skip_regexp): New functions.
3870         (skip_command): Add support for new options.
3871         (skip_info): Update.
3872         (skip_file_p, skip_gfile_p): New functions.
3873         (skip_function_p, skip_rfunction_p): New functions.
3874         (function_name_is_marked_for_skip): Update and simplify.
3875         (_initialize_step_skip): Update.
3876         * symtab.c: #include "fnmatch.h".
3877         (compare_glob_filenames_for_search): New function.
3878         * symtab.h (compare_glob_filenames_for_search): Declare.
3879         * utils.c (count_path_elements): New function.
3880         (strip_leading_path_elements): New function.
3881         * utils.h (count_path_elements): Declare.
3882         (strip_leading_path_elements): Declare.
3883
3884 2016-02-23  Simon Marchi  <simon.marchi@ericsson.com>
3885
3886         * arm-tdep.c (arm_decode_svc_copro): Remove "to" parameter.
3887         (thumb_process_displaced_insn): Likewise.
3888         (arm_process_displaced_insn): Adjust calls.
3889
3890 2016-02-23  Yao Qi  <yao.qi@linaro.org>
3891
3892         * aarch64-linux-tdep.c (enum aarch64_syscall) <aarch64_sys_mknod>:
3893         Remove.
3894         <aarch64_sys_mkdir, aarch64_sys_unlink, aarch64_sys_symlink>: Remove.
3895         <aarch64_sys_link, aarch64_sys_rename, aarch64_sys_faccess>: Remove.
3896         <aarch64_sys_mknodat, aarch64_sys_mkdirat>: New.
3897         <aarch64_sys_unlinkat, aarch64_sys_symlinkat>: New.
3898         <aarch64_sys_linkat, aarch64_sys_renameat>: New.
3899         <aarch64_sys_faccessat>: New.
3900         <aarch64_sys_open, aarch64_sys_readlink, aarch64_sys_fstatat>: Remove.
3901         <aarch64_sys_openat, aarch64_sys_readlinkat>: New.
3902         <aarch64_sys_newfstatat>: New.
3903         (UNSUPPORTED_SYSCALL_MAP): New macro.
3904         (aarch64_canonicalize_syscall): Add missing syscalls.
3905
3906 2016-02-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
3907
3908         * gdb-gdb.py (class TypeFlagsPrinter): Use parentheses for print.
3909
3910 2016-02-22  Yao Qi  <yao.qi@linaro.org>
3911
3912         * arm-tdep.c: Fix code format issues.
3913
3914 2016-02-21  Iain Buclaw  <ibuclaw@gdcproject.org>
3915
3916         * d-namespace.c (d_lookup_symbol_imports): Remove argument
3917         'search_parents'.  All callers updated.
3918
3919 2016-02-18  Marcin Kościelnicki  <koriakin@0x04.net>
3920
3921         * s390-linux-tdep.c (s390_guess_tracepoint_registers): New function.
3922         (s390_gdbarch_init): Fill guess_tracepoint_registers hook.
3923
3924 2016-02-18  Walfred Tedeschi  <walfred.tedeschi@intel.com>
3925
3926         * NEWS: Add entry for bound violation.
3927         * amd64-linux-tdep.c (amd64_linux_init_abi_common):
3928         Add handler for segmentation fault.
3929         * gdbarch.sh (handle_segmentation_fault): New.
3930         * gdbarch.c: Regenerate.
3931         * gdbarch.h: Regenerate.
3932         * i386-linux-tdep.c (i386_linux_handle_segmentation_fault): New.
3933         (SIG_CODE_BONDARY_FAULT): New define.
3934         (i386_linux_init_abi): Use i386_mpx_bound_violation_handler.
3935         * i386-linux-tdep.h (i386_linux_handle_segmentation_fault) New.
3936         * i386-tdep.c (i386_mpx_enabled): Add as external.
3937         * i386-tdep.c (i386_mpx_enabled): Add as external.
3938         * infrun.c (handle_segmentation_fault): New function.
3939         (print_signal_received_reason): Use handle_segmentation_fault.
3940
3941 2016-02-18  Marcin Kościelnicki  <koriakin@0x04.net>
3942
3943         * arch-utils.c (default_guess_tracepoint_registers): New function.
3944         * arch-utils.h (default_guess_tracepoint_registers): New prototype.
3945         * gdbarch.c: Regenerate.
3946         * gdbarch.h: Regenerate.
3947         * gdbarch.sh: Add guess_tracepoint_registers hook.
3948         * tracefile.c (tracefile_fetch_registers): Use the new gdbarch hook.
3949
3950 2016-02-17  Gary Benson  <gbenson@redhat.com>
3951
3952         * exec.c (exec_file_locate_attach): Add missing cleanup.
3953
3954 2016-02-16  Don Breazeal  <donb@codesourcery.com>
3955
3956         PR remote/19496
3957         * remote.c (remove_new_fork_children): Check for pending
3958         fork status in thread_info.suspend.
3959
3960 2016-02-16  Yao Qi  <yao.qi@linaro.org>
3961
3962         * arm-linux-tdep.c (arm_linux_software_single_step): Assign
3963         'old_chain' later.
3964
3965 2016-02-16  Yao Qi  <yao.qi@linaro.org>
3966
3967         * arch/arm-get-next-pcs.h (struct arm_get_next_pcs_ops)
3968         <syscall_next_pc>: Remove argument PC.  Callers updated.
3969         * arm-linux-tdep.c (arm_linux_get_next_pcs_syscall_next_pc):
3970         Remove argument PC.  Get pc from regcache_read_pc.
3971         * arm-tdep.c (arm_get_next_pcs_syscall_next_pc): Remove
3972         argument PC.
3973
3974 2016-02-15  Yao Qi  <yao.qi@linaro.org>
3975
3976         * aarch64-tdep.c (aarch64_analyze_prologue): Remove "0x".
3977
3978 2016-02-12  Yao Qi  <yao.qi@linaro.org>
3979
3980         * arch/arm-linux.c (arm_linux_get_next_pcs_fixup): Calculate
3981         nextpc according to instruction.
3982
3983 2016-02-12  Yao Qi  <yao.qi@linaro.org>
3984
3985         * arch/arm-get-next-pcs.c (arm_get_next_pcs): Call
3986         self->ops->fixup if it isn't NULL.
3987         * arch/arm-get-next-pcs.h: Include gdb_vecs.h.
3988         (struct arm_get_next_pcs_ops) <fixup>: New field.
3989         * arch/arm-linux.c: Include common-regcache.h and
3990         arch/arm-get-next-pcs.h.
3991         (arm_linux_get_next_pcs_fixup): New function.
3992         * arch/arm-linux.h (arm_linux_get_next_pcs_fixup): Declare.
3993         * arm-linux-tdep.c (arm_linux_get_next_pcs_ops): Initialize
3994         it with arm_linux_get_next_pcs_fixup.
3995         (arm_linux_software_single_step): Move code to
3996         arm_linux_get_next_pcs_fixup.
3997         * arm-tdep.c (arm_get_next_pcs_ops): Initialize it.
3998
3999 2016-02-12  Marcin Kościelnicki  <koriakin@0x04.net>
4000
4001         * xml-tdesc.c (target_fetch_description_xml) [!HAVE_LIBEXPAT]: Warn
4002         and return NULL.
4003
4004 2016-02-12  Markus Metzger  <markus.t.metzger@intel.com>
4005
4006         * frame.h (skip_tailcall_frames): Update comment.
4007         * frame.c (skip_artificial_frames, skip_tailcall_frames): Return NULL
4008         if only artificial frames are found.  Update comment.
4009         (frame_unwind_caller_id): Handle NULL return.
4010         (frame_unwind_caller_pc, frame_unwind_caller_arch): Assert that
4011         skip_artificial_frames does not return NULL.
4012         (frame_pop): Add an error if only tailcall frames are found.
4013         * infcmd.c (finish_command): Move skip_tailcall_frames call into
4014         forward-execution case.  Add an error if only tailcall frames are
4015         found.
4016
4017 2016-02-12  Markus Metzger  <markus.t.metzger@intel.com>
4018
4019         * stack.c (frame_info): Check frame_unwind_caller_id.
4020
4021 2016-02-12  Markus Metzger  <markus.t.metzger@intel.com>
4022
4023         * frame.h (skip_tailcall_frames): New.
4024         * frame.c (skip_tailcall_frames): New.
4025         (frame_pop): Call skip_tailcall_frames.
4026         * infcmd.c (finish_command): Call skip_tailcall_frames.
4027
4028 2016-02-11  Pedro Alves  <palves@redhat.com>
4029
4030         * Makefile.in (check-parallel): New rule.
4031
4032 2016-02-11  Simon Marchi  <simon.marchi@ericsson.com>
4033
4034         * arm-tdep.c (arm_skip_prologue): Remove unused variables.
4035         (arm_analyze_prologue): Likewise.
4036         (arm_scan_prologue): Likewise.
4037         (arm_m_exception_prev_register): Likewise.
4038         (arm_copy_block_xfer): Likewise.
4039         (thumb2_copy_block_xfer): Likewise.
4040         (arm_decode_miscellaneous): Likewise.
4041         (arm_decode_ld_st_word_ubyte): Likewise.
4042         (arm_decode_svc_copro): Likewise.
4043         (thumb2_decode_svc_copro): Likewise.
4044         (thumb_copy_16bit_ldr_literal): Likewise.
4045         (thumb_copy_pop_pc_16bit): Likewise.
4046         (decode_thumb_32bit_ld_mem_hints): Likewise.
4047         (arm_show_force_mode): Likewise.
4048         (_initialize_arm_tdep): Likewise.
4049         (arm_record_strx): Likewise.
4050         (arm_record_extension_space): Likewise.
4051         (arm_record_data_proc_misc_ld_str): Likewise.
4052         (arm_record_exreg_ld_st_insn): Likewise.
4053         (arm_record_vfp_data_proc_insn): Likewise.
4054         (arm_record_coproc_data_proc): Likewise.
4055         (thumb_record_misc): Likewise.
4056         (thumb_record_ldm_stm_swi): Likewise.
4057         (thumb2_record_ld_st_dual_ex_tbb): Likewise.
4058         (thumb2_record_ld_mem_hints): Likewise.
4059         (thumb2_record_lmul_lmla_div): Likewise.
4060         (thumb2_record_asimd_struct_ld_st): Likewise.
4061         (arm_process_record): Likewise.
4062
4063 2016-02-11  Simon Marchi  <simon.marchi@ericsson.com>
4064
4065         * arm-tdep.c (arm_displaced_step_copy_insn): Remove.
4066         (ARM displaced stepping support): Remove reference to
4067         arm_displaced_step_copy_insn in comment.
4068         * arm-tdep.h (arm_displaced_step_copy_insn): Remove.
4069         * arm-linux-tdep.c (arm_linux_displaced_step_copy_insn): Remove
4070         reference to arm_displaced_step_copy_insn in comment.
4071
4072 2016-02-11  Simon Marchi  <simon.marchi@ericsson.com>
4073
4074         * arm-tdep.c (thumb_copy_unmodified_16bit): Change type of insn.
4075         (thumb_copy_b): Likewise.
4076         (arm_decode_b_bl_ldmstm): Likewise.
4077         (thumb_copy_16bit_ldr_literal): Likewise.
4078         (thumb_copy_pop_pc_16bit): Likewise.
4079
4080 2016-02-11  Antoine Tremblay  <antoine.tremblay@ericsson.com>
4081
4082         * tracepoint.c (encode_actions_1): Use target_gdbarch () rather
4083         than loc->gdbarch.
4084
4085 2016-02-10  Marcin Kościelnicki  <koriakin@0x04.net>
4086
4087         * tracefile-tfile.c (trace_tdesc): New static variable.
4088         (tfile_open): Clear trace_tdesc, call target_find_description.
4089         (tfile_interp_line): Recognize tdesc lines.
4090         (tfile_close): Clear trace_tdesc.
4091         (tfile_xfer_partial_features): New function.
4092         (tfile_xfer_partial): Call tfile_xfer_partial_features.
4093         (tfile_append_tdesc_line): New function.
4094
4095 2016-02-10  Marcin Kościelnicki  <koriakin@0x04.net>
4096
4097         * ctf.c (ctf_write_tdesc): New function.
4098         (ctf_write_ops): Wire in ctf_write_tdesc.
4099         * tracefile-tfile.c (tfile_write_tdesc): New function.
4100         (tfile_write_ops): Wire in tfile_write_tdesc.
4101         * tracefile.c (trace_save): Call write_tdesc method.
4102         * tracefile.h (struct trace_file_write_ops): Add write_tdesc method.
4103         * xml-tdesc.c (target_fetch_description_xml): New function.
4104         * xml-tdesc.h: Add target_fetch_description_xml prototype.
4105
4106 2016-02-10  Simon Marchi  <simon.marchi@ericsson.com>
4107
4108         * arm-tdep.c (arm_copy_extra_ld_st): Fix "unpriveleged" typo.
4109         (arm_decode_dp_misc): Likewise.
4110
4111 2016-02-10  Marcin Kościelnicki  <koriakin@0x04.net>
4112
4113         * amd64-tdep.c (amd64_ax_pseudo_register_collect): New function.
4114         (amd64_init_abi): Fill ax_pseudo_register_collect hook.
4115         * gdb/i386-tdep.c (i386_pseudo_register_read_into_value): Remove
4116         misleading comment.
4117         (i386_pseudo_register_write): Ditto.
4118         (i386_ax_pseudo_register_collect): New function.
4119         (i386_gdbarch_init): Fill ax_pseudo_register_collect hook.
4120         * i386-tdep.h: Add i386_ax_pseudo_register_collect prototype.
4121
4122 2016-02-10  Marcin Kościelnicki  <koriakin@0x04.net>
4123
4124         * tracefile-tfile.c (tfile_fetch_registers): Use g packet order
4125         instead of gdb order.
4126
4127 2016-02-10  Marcin Kościelnicki  <koriakin@0x04.net>
4128
4129         * tracefile-tfile.c (tfile_fetch_registers): Fix off-by-one in bounds
4130         check.
4131
4132 2016-02-10  Joel Brobecker  <brobecker@adacore.com>
4133
4134         * NEWS: Create a new section for the next release branch.
4135         Rename the section of the current branch, now that it has
4136         been cut.
4137
4138 2016-02-10  Joel Brobecker  <brobecker@adacore.com>
4139
4140         GDB 7.11 branch created (9ef9e6a6a0dd8f948708cb67c9afcfd0be40cb0a):
4141         * version.in: Bump version to 7.11.50.DATE-git.
4142
4143 2016-02-09  Keith Seitz  <keiths@redhat.com>
4144
4145         PR breakpoints/19546
4146         * breakpoint.c (breakpoint_event_location_empty_p): New function.
4147         (update_breakpoints_after_exec, bkpt_re_set): Use this new function
4148         instead of event_location_empty_p.
4149
4150 2016-02-09  Keith Seitz  <keiths@redhat.com>
4151
4152         * mi/mi-cmd-break.c (mi_cmd_break_insert_1): Use
4153         string_to_event_location_basic instead of string_to_event_location.
4154
4155 2016-02-09  Keith Seitz  <keiths@redhat.com>
4156
4157         * guile/scm-breakpoint.c (gdbscm_register_breakpoint_x): Skip
4158         leading whitespace and use string_to_event_location_basic instead
4159         of new_linespec_location.
4160
4161 2016-02-09  Keith Seitz  <keiths@redhat.com>
4162
4163         PR python/19506
4164         * python/py-breakpoint.c (bppy_init): Use
4165         string_to_event_location_basic instead of new_linespec_location.
4166
4167 2016-02-09  Keith Seitz  <keiths@redhat.com>
4168
4169         * location.c (string_to_explicit_location): Note that "-p" is
4170         reserved for probe locations and return NULL for any input
4171         that starts with that.
4172         (string_to_event_location): Move "legacy" linespec code to ...
4173         (string_to_event_location_basic): ... here.
4174         * location.h (string_to_event_location): Update comment.
4175         (string_to_event_location_basic): New function.
4176
4177 2016-02-09  Simon Marchi  <simon.marchi@ericsson.com>
4178
4179         * configure.ac: Use AC_CONFIG_FILES instead of passing arguments
4180         to AC_OUTPUT.  Remove "exit 0" at the end.
4181         * configure: Regenerate.
4182
4183 2016-02-09  Pedro Alves  <palves@redhat.com>
4184
4185         PR breakpoints/19548
4186         * breakpoint.c (create_overlay_event_breakpoint): Don't update
4187         global location list here.
4188         (create_longjmp_master_breakpoint)
4189         (create_std_terminate_master_breakpoint)
4190         (create_exception_master_breakpoint, create_jit_event_breakpoint)
4191         (update_breakpoint_locations):
4192         (breakpoint_re_set): Update global location list after all
4193         breakpoints are re-set.
4194
4195 2016-02-08  Simon Marchi  <simon.marchi@ericsson.com>
4196
4197         * remote.c (remote_register_number_and_offset): Remove unused
4198         variable(s).
4199         (remote_thread_always_alive): Likewise.
4200         (remote_update_thread_list): Likewise.
4201         (process_initial_stop_replies): Likewise.
4202         (remote_start_remote): Likewise.
4203         (remote_check_symbols): Likewise.
4204         (discard_pending_stop_replies): Likewise.
4205         (process_stop_reply): Likewise.
4206         (putpkt_binary): Likewise.
4207         (getpkt): Likewise.
4208         (remote_add_target_side_condition): Likewise.
4209         (remote_insert_breakpoint): Likewise.
4210         (remote_supports_stopped_by_sw_breakpoint): Likewise.
4211         (remote_supports_stopped_by_hw_breakpoint): Likewise.
4212         (remote_xfer_partial): Likewise.
4213         (remote_read_btrace): Likewise.
4214         (remote_async_serial_handler): Likewise.
4215         (remote_thread_events): Likewise.
4216         (_initialize_remote): Likewise.
4217
4218 2016-02-07  Simon Marchi  <simon.marchi@polymtl.ca>
4219
4220         * varobj.h (varobj_delete): Remove dellist parameter, update and
4221         move documentation here.
4222         * varobj.c (struct cpstack, cppush, cppop): Remove.
4223         (delete_variable): Remove resultp (first) parameter.
4224         (delete_variable_1): Likewise.
4225         (varobj_delete): Remove dellist parameter and unused code.
4226         (update_dynamic_varobj_children): Adjust varobj_delete call.
4227         (update_type_if_necessary): Likewise.
4228         (varobj_set_visualizer): Likewise.
4229         (varobj_update): Likewise.
4230         (value_of_root): Likewise.
4231         (varobj_invalidate_iter): Likewise.
4232         * mi/mi-cmd-var.c (mi_cmd_var_delete): Likewise.
4233
4234 2016-02-04  Yao Qi  <yao.qi@linaro.org>
4235
4236         * remote.c (remote_wait_as): Set rs->waiting_for_stop_reply to
4237         0 before handling 'F' and set it back afterwards.
4238
4239 2016-02-02  Simon Marchi  <simon.marchi@ericsson.com>
4240
4241         * ui-out.c (MAX_UI_OUT_LEVELS): Remove.
4242
4243 2016-02-02  Walfred Tedeschi  <walfred.tedeschi@intel.com>
4244
4245         * amd64-linux-siginfo.c (nat_siginfo_t, nat_sigval_t, nat_timeval):
4246         New types.
4247         (compat_siginfo): New bound fields added.
4248         (compat_x32_siginfo): New field added.
4249         (cpt_si_addr_lsb): New define.
4250         (compat_siginfo_from_siginfo): Use nat_siginfo.
4251         (siginfo_from_compat_siginfo): Use nat_siginfo.
4252         (compat_x32_siginfo_from_siginfo): Likewise.
4253         (siginfo_from_compat_x32_siginfo): Likewise.
4254
4255 2016-02-02  Walfred Tedeschi  <walfred.tedeschi@intel.com>
4256
4257         * linux-tdep.c (linux_get_siginfo_type): Add the _addr_bnd
4258         structure to the siginfo if extra_fields contains
4259         LINUX_SIGINFO_FIELD_ADDR_BND.
4260
4261 2016-02-02  Walfred Tedeschi  <walfred.tedeschi@intel.com>
4262
4263         * linux-tdep.h (linux_get_siginfo_type_with_fields): Make extern.
4264         * linux-tdep.c (linux_get_siginfo_type_with_fields): Make extern.
4265         * i386-linux-tdep.h (x86_linux_get_siginfo_type): New
4266         function.
4267         * amd64-linux-tdep.c (amd64_linux_init_abi_common): Add
4268         x86_linux_get_siginfo_type for the amd64 abi.
4269         * i386-linux-tdep.c (x86_linux_get_siginfo_type): New
4270         function.
4271         (i386_linux_init_abi): Add new function at the i386 ABI
4272         initialization.
4273
4274 2016-02-02  Walfred Tedeschi  <walfred.tedeschi@intel.com>
4275
4276         * linux-tdep.h (linux_siginfo_extra_field_values): New enum values.
4277         (linux_siginfo_extra_fields): New enum type.
4278         * linux-tdep.c (linux_get_siginfo_type_with_fields): New function.
4279         (linux_get_siginfo_type): Use new function.
4280
4281 2016-02-02  Walfred Tedeschi  <walfred.tedeschi@intel.com>
4282
4283         * nat/amd64-linux-siginfo.c: New file.
4284         * nat/amd64-linux-siginfo.h: New file.
4285         * Makefile.in (HFILES_NO_SRCDIR): Add nat/amd64-linux-siginfo.h.
4286         (amd64-linux-siginfo.o): New rule.
4287         * config/i386/linux64.mh (NATDEPFILES): Add amd64-linux-siginfo.o.
4288         * amd64-linux-nat.c (nat/amd64-linux-siginfo.h): New include.
4289         (compat_siginfo_from_siginfo, siginfo_from_compat_siginfo)
4290         (compat_x32_siginfo_from_siginfo, siginfo_from_compat_x32_siginfo)
4291         (compat_timeval, compat_sigval, compat_x32_clock, cpt_si_pid)
4292         (cpt_si_uid, cpt_si_timerid, cpt_si_overrun, cpt_si_status)
4293         (cpt_si_utime, cpt_si_stime, cpt_si_ptr, cpt_si_addr, cpt_si_band)
4294         (cpt_si_fd, si_timerid, si_overrun): Move to nat/amd64-linux-siginfo.c.
4295
4296 2016-02-01  Andrew Burgess  <andrew.burgess@embecosm.com>
4297
4298         * value.c (max_value_size): New variable.
4299         (MIN_VALUE_FOR_MAX_VALUE_SIZE): New define.
4300         (set_max_value_size): New function.
4301         (show_max_value_size): New function.
4302         (check_type_length_before_alloc): New function.
4303         (allocate_value_contents): Call check_type_length_before_alloc.
4304         (set_value_enclosing_type): Likewise.
4305         (_initialize_values): Add set/show handler for max-value-size.
4306         * NEWS: Mention new set/show command.
4307
4308 2016-01-31  Simon Marchi  <simon.marchi@polymtl.ca>
4309
4310         * varobj.h (struct varobj): Fix typos in comments.
4311         (struct lang_varobj_ops): Likewise.
4312         * varobj.c (VAROBJ_TABLE_SIZE): Likewise.
4313         (varobj_create): Move misplaced comment.
4314
4315 2016-01-29  Simon Marchi  <simon.marchi@ericsson.com>
4316
4317         * aarch64-tdep.c (aarch64_record_asimd_load_store): Add braces
4318         to for include additional lines.
4319         * xcoffread.c (scan_xcoff_symtab): Remove unnecessary braces.
4320
4321 2016-01-28  Simon Marchi  <simon.marchi@ericsson.com>
4322
4323         * gnulib/import/Makefile.am: Regenerate.
4324         * gnulib/import/Makefile.in: Regenerate.
4325         * gnulib/import/m4/gnulib-cache.m4: Regenerate.
4326         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add rawmemchr.
4327
4328 2016-01-28  Simon Marchi  <simon.marchi@ericsson.com>
4329
4330         * remote.c (skip_to_semicolon): Remove.
4331         (remote_parse_stop_reply): Use strchrnul instead of
4332         skip_to_semicolon.
4333         * gnulib/update-gnulib.sh (IMPORTED_GNULIB_MODULES): Add
4334         strchrnul.
4335         * gnulib/aclocal.m4: Regenerate.
4336         * gnulib/config.in: Regenerate.
4337         * gnulib/configure: Regenerate.
4338         * gnulib/import/Makefile.am: Regenerate.
4339         * gnulib/import/Makefile.in: Regenerate.
4340         * gnulib/import/m4/gnulib-cache.m4: Regenerate.
4341         * gnulib/import/m4/gnulib-comp.m4: Regenerate.
4342         * gnulib/import/m4/rawmemchr.m4: New file.
4343         * gnulib/import/m4/strchrnul.m4: New file.
4344         * gnulib/import/rawmemchr.c: New file.
4345         * gnulib/import/rawmemchr.valgrind: New file.
4346         * gnulib/import/strchrnul.c: New file.
4347         * gnulib/import/strchrnul.valgrind: New file.
4348
4349 2016-01-28  Yao Qi  <yao.qi@linaro.org>
4350
4351         * breakpoint.c (build_target_command_list): Don't call continue
4352         if aexpr is NULL.
4353         (build_target_condition_list): Likewise.
4354
4355 2016-01-27  Kevin Buettner  <kevinb@redhat.com>
4356
4357         * rx-tdep.c (rx_push_dummy_call): Treat scalars larger than 8
4358         bytes as aggregates.
4359
4360 2016-01-27  Joel Brobecker  <brobecker@adacore.com>
4361
4362         * MAINTAINERS (Responsible Maintainers): Add Keith Seitz as
4363         Linespec Maintainers.
4364
4365 2016-01-26  Simon Marchi  <simon.marchi@ericsson.com>
4366
4367         * common/common-utils.c (skip_spaces): Fix comment.
4368         (skip_to_space_const): Likewise.
4369
4370 2016-01-25  Yao Qi  <yao.qi@linaro.org>
4371
4372         * arch/arm-get-next-pcs.c (thumb_deal_with_atomic_sequence_raw):
4373         Remove argument pc.  Get pc by regcache_read_pc.  Callers updated.
4374         (arm_deal_with_atomic_sequence_raw): Likewise.
4375         (thumb_get_next_pcs_raw): Likewise.
4376         (arm_get_next_pcs_raw): Likewise.
4377         (arm_get_next_pcs): Remove argument pc.  Callers updated.
4378         * arch/arm-get-next-pcs.h (arm_get_next_pcs): Update declaration.
4379
4380 2016-01-25  Mark Wielaard  <mjw@redhat.com>
4381
4382         * ada-lang.c (ada_evaluate_subexp): Add proper else block.
4383         * c-typeprint.c (c_type_print_base): Fix misleading indentation of
4384         if statement.
4385         * inflow.c (child_terminal_ours_1): Fix misleading indentation of
4386         statement block by introducing an else.
4387         * linux-record.c (record_linux_sockaddr): Fix misleading indentation
4388         of return statements.
4389         (record_linux_msghdr): Likewise.
4390
4391 2016-01-25  Pedro Alves  <palves@redhat.com>
4392
4393         PR threads/19461
4394         * infrun.c (handle_inferior_event_1) <fork/vfork>: Update
4395         parent/child running states.
4396
4397 2016-01-25  Pedro Alves  <palves@redhat.com>
4398
4399         PR gdb/19494
4400         * linux-nat.c (kill_one_lwp): New, factored out from ...
4401         (kill_callback): ... this.
4402         (kill_wait_callback): New, factored out from ...
4403         (kill_wait_one_lwp): ... this.
4404         (kill_unfollowed_fork_children): New function.
4405         (linux_nat_kill): Use it.
4406
4407 2016-01-22  John Baldwin  <jhb@FreeBSD.org>
4408
4409         * fbsd-nat.c (fbsd_pid_to_str): Adjust string format.
4410
4411 2016-01-22  Yao Qi  <yao.qi@linaro.org>
4412
4413         * arm-linux-nat.c (fetch_fpregs): Call perror_with_name
4414         instead of warning.
4415         (store_fpregs, fetch_regs, store_regs): Likewise.
4416         (fetch_wmmx_regs, store_wmmx_regs): Likewise.
4417         (fetch_vfp_regs, store_vfp_regs): Likewise.
4418
4419 2016-01-21  Doug Evans  <dje@google.com>
4420
4421         * breakpoint.c (init_breakpoint_sal): Add comment.
4422
4423 2016-01-21  Marcin Kościelnicki  <koriakin@0x04.net>
4424
4425         * ax-gdb.c (gen_traced_pop): Use gen_fetch for string collection.
4426
4427 2016-01-21  Andrew Burgess  <andrew.burgess@embecosm.com>
4428
4429         * disasm.c (maybe_add_dis_line_entry): Rename to...
4430         (add_dis_line_entry): ...this, and update header comment.
4431         (do_mixed_source_and_assembly): Now use add_dis_line_entry.
4432
4433 2016-01-21  Pedro Alves  <palves@redhat.com>
4434
4435         * Makefile.in (COMPILER_CFLAGS): New.
4436         (CXXFLAGS): Get it from configure.
4437         (INTERNAL_CFLAGS_BASE, INTERNAL_LDFLAGS): Use COMPILER_CFLAGS
4438         instead of CFLAGS.
4439         * build-with-cxx.m4 (GDB_AC_BUILD_WITH_CXX): Set and AC_SUBST
4440         COMPILER_CFLAGS.
4441         * configure: Regenerate.
4442
4443 2016-01-21  Joel Brobecker  <brobecker@adacore.com>
4444
4445         * location.h (new_address_location): Add new parameters
4446         "addr_string" and "addr_string_len".
4447         (get_address_string_location): Add declaration.
4448         * location.c (new_address_location): Add new parameters
4449         "addr_string" and "addr_string_len".  If not NULL, store
4450         a copy of the addr_string in the new location as well.
4451         (get_address_string_location): New function.
4452         (string_to_event_location): Update call to new_address_location.
4453         * linespec.c (event_location_to_sals) <ADDRESS_LOCATION>:
4454         Save the event location in the parser's state before
4455         passing it to convert_address_location_to_sals.
4456         * breakpoint.c (create_thread_event_breakpoint): Update call
4457         to new_address_location.
4458         (init_breakpoint_sal): Get the event location's string, if any,
4459         and use it to update call to new_address_location.
4460         * python/py-finishbreakpoint.c (bpfinishpy_init):
4461         Update call to new_address_location.
4462         * spu-tdep.c (spu_catch_start): Likewise.
4463
4464         * config/djgpp/fnchange.lst: Add entries for
4465         gdb/testsuite/gdb.base/break-fun-addr1.c and
4466         gdb/testsuite/gdb.base/break-fun-addr2.c.
4467
4468 2016-01-21  Yao Qi  <yao.qi@linaro.org>
4469
4470         * arm-linux-tdep.c (arm_linux_sigreturn_next_pc): Add parameter
4471         is_thumb and set it according to CPSR saved on the stack.
4472         (arm_linux_get_next_pcs_syscall_next_pc): Pass is_thumb to
4473         arm_linux_sigreturn_next_pc.
4474
4475 2016-01-20  Simon Marchi  <simon.marchi@polymtl.ca>
4476
4477         * python/lib/gdb/printing.py (FlagEnumerationPrinter.__call__):
4478         Fix enumerators sort key function.
4479
4480 2016-01-20  Joel Brobecker  <brobecker@adacore.com>
4481
4482         * printcmd.c (print_scalar_formatted): Move binary operator from
4483         end of line to beginning of next line.  Adjust formatting
4484         accordingly.
4485
4486 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4487
4488         * fbsd-nat.c (fbsd_pid_to_exec_file): Use new "buflen" instead of
4489         "len" with sysctl.
4490
4491 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4492
4493         * fbsd-tdep.c (find_stop_signal): Remove.
4494         (struct fbsd_collect_regset_section_cb) <lwp>: New field.
4495         <stop_signal>: New field.
4496         <abort_iteration>: New field.
4497         (fbsd_collect_regset_section_cb): Use new fields.
4498         (fbsd_collect_thread_registers): New function.
4499         (struct fbsd_corefile_thread_data): New structure.
4500         (fbsd_corefile_thread): New function.
4501         (fbsd_make_corefile_notes): Use new function to dump notes for each
4502         non-exited thread in a process.
4503
4504 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4505
4506         * configure.ac: Check for support for LWP names on FreeBSD.
4507         * fbsd-nat.c [PT_LWPINFO] New variable debug_fbsd_lwp.
4508         [TDP_RFPPWAIT || HAVE_STRUCT_PTRACE_LWPINFO_PL_TDNAME]
4509         (fbsd_fetch_kinfo_proc): Move function earlier.
4510         [PT_LWPINFO] (fbsd_thread_alive): New function.
4511         [PT_LWPINFO] (fbsd_pid_to_str): New function.
4512         [HAVE_STRUCT_PTRACE_LWPINFO_PL_TDNAME] (fbsd_thread_name): New function.
4513         [PT_LWP_EVENTS] (fbsd_enable_lwp_events): New function.
4514         [PT_LWPINFO] (fbsd_add_threads): New function.
4515         [PT_LWPINFO] (fbsd_update_thread_list): New function.
4516         [PT_LWPINFO] New variable super_resume.
4517         [PT_LWPINFO] (resume_one_thread_cb): New function.
4518         [PT_LWPINFO] (resume_all_threads_cb): New function.
4519         [PT_LWPINFO] (fbsd_resume): New function.
4520         (fbsd_remember_child): Save full ptid instead of plain pid.
4521         (fbsd_is_child_pending): Return ptid of saved child process.
4522         (fbsd_wait): Include lwp in returned ptid and switch to LWP ptid on
4523         first stop.
4524         [PT_LWP_EVENTS] Handle LWP events.
4525         [TDP_RFPPWAIT] Include LWP in child ptid.
4526         (fbsd_post_startup_inferior) [PT_LWP_EVENTS]: Enable LWP events.
4527         (fbsd_post_attach) [PT_LWP_EVENTS]: Enable LWP events.
4528         Add threads for existing processes.
4529         (fbsd_nat_add_target) [PT_LWPINFO]: Set "to_thread_alive" to
4530         "fbsd_thread_alive".
4531         Set "to_pid_to_str" to "fbsd_pid_to_str".
4532         [HAVE_STRUCT_PTRACE_LWPINFO_PL_TDNAME]: Set "to_thread_name" to
4533         "fbsd_thread_name".
4534         [PT_LWPINFO]: Set "to_update_thread_list" to "fbsd_update_thread_list".
4535         Set "to_has_thread_control" to "tc_schedlock".
4536         Set "to_resume" to "fbsd_resume".
4537         (_initialize_fbsd_nat): New function.
4538         * configure: Regenerate.
4539         * config.in: Regenerate.
4540
4541 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4542
4543         * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers): Use
4544         get_ptrace_pid.
4545         (amd64bsd_store_inferior_registers): Use get_ptrace_pid.
4546         (amd64bsd_dr_get): Use get_ptrace_pid.
4547         (amd64bsd_dr_set): Use get_ptrace_pid.
4548         * i386bsd-nat.c (i386bsd_fetch_inferior_registers): Use get_ptrace_pid.
4549         (i386bsd_store_inferior_registers): Use get_ptrace_pid.
4550         (i386bsd_dr_get): Use get_ptrace_pid.
4551         (i386bsd_dr_set): Use get_ptrace_pid.
4552         * inf-ptrace.c (get_ptrace_pid): Export.
4553         * inf-ptrace.h (get_ptrace_pid): Declare.
4554         * ppcfbsd-nat.c (ppcfbsd_fetch_inferior_registers): Use lwp id.
4555         (ppcfbsd_store_inferior_registers): Use lwp id.
4556
4557 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4558
4559         * fbsd_tdep.c (fbsd_core_pid_to_str): New function.
4560         (fbsd_core_thread_name): New function.
4561         (fbsd_init_abi): Add "core_pid_to_str" gdbarch method.
4562         Add "core_thread_name" gdbarch method.
4563
4564 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4565
4566         * corelow.c (core_thread_name): New function.
4567         (init_core_ops): Use "core_thread_name" for the "to_thread_name"
4568         target op.
4569         * gdbarch.sh (core_thread_name): New gdbarch callback.
4570         * gdbarch.h: Re-generate.
4571         * gdbarch.c: Re-generate.
4572
4573 2016-01-19  Simon Marchi  <simon.marchi@polymtl.ca>
4574
4575         * python/lib/gdb/printing.py (_EnumInstance.to_string): Explicitly
4576         convert gdb.Value to integer type using int().
4577
4578 2016-01-19  John Baldwin  <jhb@FreeBSD.org>
4579
4580         * configure.ac: Include <sys/types.h when checking for "r_fs" in
4581         "struct reg".
4582         * configure: Regenerate.
4583
4584 2016-01-19  Pedro Alves  <palves@redhat.com>
4585
4586         * ax-gdb.c (agent_command_1): Adjust call to decode_line_full.
4587         * break-catch-throw.c (re_set_exception_catchpoint): Pass the
4588         current program space down to linespec decoding and breakpoint
4589         location updating.
4590         * breakpoint.c (parse_breakpoint_sals): Adjust calls to
4591         decode_line_full.
4592         (until_break_command): Adjust calls to decode_line_1.
4593         (base_breakpoint_decode_location, bkpt_decode_location): Add
4594         'search_pspace' parameter.  Pass it along.
4595         (bkpt_probe_create_sals_from_location): Adjust calls to
4596         parse_probes.
4597         (tracepoint_decode_location, tracepoint_probe_decode_location)
4598         (strace_marker_decode_location): Add 'search_pspace' parameter.
4599         Pass it along.
4600         (all_locations_are_pending): Rewrite to take a breakpoint and
4601         program space as arguments instead.
4602         (hoist_existing_locations): New function.
4603         (update_breakpoint_locations): Add 'filter_pspace' parameter.  Use
4604         hoist_existing_locations instead of always removing all locations,
4605         and adjust to all_locations_are_pending change.
4606         (location_to_sals): Add 'search_pspace' parameter.  Pass it along.
4607         Don't disable the breakpoint if there are other locations in
4608         another program space.
4609         (breakpoint_re_set_default): Adjust to pass down the current
4610         program space as filter program space.
4611         (decode_location_default): Add 'search_pspace' parameter and pass
4612         it along.
4613         (prepare_re_set_context): Don't switch program space here.
4614         (breakpoint_re_set): Use save_current_space_and_thread instead of
4615         save_current_program_space.
4616         * breakpoint.h (struct breakpoint_ops) <decode_location>: Add
4617         'search_pspace' parameter.
4618         (update_breakpoint_locations): Add 'filter_pspace' parameter.
4619         * cli/cli-cmds.c (edit_command, list_command): Adjust calls to
4620         decode_line_1.
4621         * elfread.c (elf_gnu_ifunc_resolver_return_stop): Pass the current
4622         program space as filter program space.
4623         * linespec.c (struct linespec_state) <search_pspace>: New field.
4624         (create_sals_line_offset, convert_explicit_location_to_sals)
4625         (parse_linespec): Pass the search program space down.
4626         (linespec_state_constructor): Add 'search_pspace' parameter.
4627         Store it.
4628         (linespec_parser_new): Add 'search_pspace' parameter and pass it
4629         along.
4630         (linespec_lex_to_end): Adjust.
4631         (decode_line_full, decode_line_1): Add 'search_pspace' parameter
4632         and pass it along.
4633         (decode_line_with_last_displayed): Adjust.
4634         (collect_symtabs_from_filename, symtabs_from_filename): New
4635         'search_pspace' parameter.  Use it.
4636         (find_function_symbols): Pass the search program space down.
4637         * linespec.h (decode_line_1, decode_line_full): Add
4638         'search_pspace' parameter.
4639         * probe.c (parse_probes_in_pspace): New function, factored out
4640         from ...
4641         (parse_probes): ... this.  Add 'search_pspace' parameter and use
4642         it.
4643         * probe.h (parse_probes): Add pspace' parameter.
4644         * python/python.c (gdbpy_decode_line): Adjust.
4645         * tracepoint.c (scope_info): Adjust.
4646
4647 2016-01-18  Maciej W. Rozycki  <macro@imgtec.com>
4648
4649         * mips-tdep.c (mips_insn_size): Remove 48-bit microMIPS
4650         instruction support.
4651         (micromips_next_pc): Likewise.
4652         (micromips_scan_prologue): Likewise.
4653         (micromips_deal_with_atomic_sequence): Likewise.
4654         (micromips_stack_frame_destroyed_p): Likewise.
4655         (mips_breakpoint_from_pc): Likewise.
4656
4657 2016-01-18  Maciej W. Rozycki  <macro@imgtec.com>
4658
4659         * mips-tdep.c (micromips_insn_at_pc_has_delay_slot): Pass
4660         unshifted 16-bit microMIPS instruction word to `mips_insn_size'.
4661
4662 2016-01-18  Pedro Alves  <palves@redhat.com>
4663
4664         * NEWS: Mention that GDB now displays the ID and name of the
4665         thread that hit a breakpoint or received a signal.
4666         * break-catch-sig.c (signal_catchpoint_print_it): Use
4667         maybe_print_thread_hit_breakpoint.
4668         * break-catch-syscall.c (print_it_catch_syscall): Likewise.
4669         * break-catch-throw.c (print_it_exception_catchpoint): Likewise.
4670         * breakpoint.c (maybe_print_thread_hit_breakpoint): New function.
4671         (print_it_catch_fork, print_it_catch_vfork, print_it_catch_solib)
4672         (print_it_catch_exec, print_it_ranged_breakpoint)
4673         (print_it_watchpoint, print_it_masked_watchpoint, bkpt_print_it):
4674         Use maybe_print_thread_hit_breakpoint.
4675         * breakpoint.h (maybe_print_thread_hit_breakpoint): Declare.
4676         * gdbthread.h (show_thread_that_caused_stop): Declare.
4677         * infrun.c (print_signal_received_reason): Print which thread
4678         received signal.
4679         * thread.c (show_thread_that_caused_stop): New function.
4680
4681 2016-01-18  Gary Benson  <gbenson@redhat.com>
4682
4683         * nat/linux-namespaces.c (do_fork): New function.
4684         (linux_mntns_get_helper): Use the above.
4685
4686 2016-01-17  Jonas Hahnfeld <Hahnfeld@itc.rwth-aachen.de>  (tiny change)
4687
4688         Pushed by Joel Brobecker  <brobecker@adacore.com>.
4689         PR gdb/19208
4690         * dwarf2read.c (read_partial_die): Do not call set_objfile_main_name
4691         if the function has no name.
4692
4693 2016-01-15  Sandra Loosemore  <sandra@codesourcery.com>
4694
4695         * charset.c [PHONY_ICONV] (GDB_DEFAULT_HOST_CHARSET):
4696         Conditionalize for Windows host.
4697         (GDB_DEFAULT_TARGET_CHARSET): Match GDB_DEFAULT_HOST_CHARSET.
4698         (GDB_DEFAULT_TARGET_WIDE_CHARSET): Use UTF-32.
4699         (phony_iconv_open): Handle both UTF-32 endiannesses.
4700         (phony_iconv): Likewise.  Check for output overflow and clean up
4701         out-of-input cases.  Correct adjustment to input buffer pointer.
4702         (set_be_le_names) [PHONY_ICONV]: Use hard-wired names to match
4703         phony_iconv_open.
4704
4705 2016-01-15  Pedro Alves  <palves@redhat.com>
4706
4707         * NEWS: Mention star wildcard ranges.
4708         * cli/cli-utils.c (get_number_or_range): Check state->in_range first.
4709         (number_range_setup_range): New function.
4710         * cli/cli-utils.h (number_range_setup_range): New declaration.
4711         * thread.c (thread_apply_command): Support star TID ranges.
4712         * tid-parse.c (tid_range_parser_finished)
4713         (tid_range_parser_string, tid_range_parser_skip)
4714         (get_tid_or_range, get_tid_or_range): Handle
4715         TID_RANGE_STATE_STAR_RANGE.
4716         (tid_range_parser_star_range): New function.
4717         * tid-parse.h (enum tid_range_state) <TID_RANGE_STATE_STAR_RANGE>:
4718         New value.
4719         (tid_range_parser_star_range): New declaration.
4720
4721 2016-01-15  Pedro Alves  <palves@redhat.com>
4722
4723         * thread.c (thread_apply_command): Use the tid range parser to
4724         advance past the thread ID list.
4725         * tid-parse.c (get_positive_number_trailer): New function.
4726         (parse_thread_id): Use it.
4727         (get_tid_or_range): Use it.  Return 0 instead of throwing invalid
4728         thread ID error.
4729         (get_tid_or_range): Detect negative values.  Return 0 instead of
4730         throwing invalid thread ID error.
4731
4732 2016-01-14  Yao Qi  <yao.qi@linaro.org>
4733
4734         * arm-linux-tdep.c (arm_linux_get_next_pcs_syscall_next_pc):
4735         Declare.
4736         (arm_linux_get_next_pcs_ops): Install
4737         arm_linux_get_next_pcs_syscall_next_pc.
4738         (arm_linux_syscall_next_pc): Change to ...
4739         (arm_linux_get_next_pcs_syscall_next_pc): ... it.
4740         (arm_linux_init_abi): Don't set tdep->syscall_next_pc.
4741         * arm-tdep.c (arm_get_next_pcs_syscall_next_pc): Declare.
4742         (arm_get_next_pcs_syscall_next_pc): Make it static.  Don't
4743         call tdep->syscall_next_pc.
4744         * arm-tdep.h (struct gdbarch_tdep) <syscall_next_pc>: Remove.
4745         (arm_get_next_pcs_syscall_next_pc): Remove.
4746
4747 2016-01-14  Yao Qi  <yao.qi@linaro.org>
4748
4749         * remote.c (remote_set_syscall_catchpoint): Cast to char *.
4750         * thread.c (do_captured_thread_select): Cast to const char *.
4751
4752 2016-01-14  Yao Qi  <yao.qi@linaro.org>
4753
4754         * arch/arm-get-next-pcs.c (arm_get_next_pcs_ctor): Change
4755         argument arm_thumb2_breakpoint to has_thumb2_breakpoint.
4756         (thumb_get_next_pcs_raw): Check has_thumb2_breakpoint
4757         instead.
4758         * arch/arm-get-next-pcs.h (struct arm_get_next_pcs)
4759         <arm_thumb2_breakpoint>: Remove.
4760         <has_thumb2_breakpoint>: New field.
4761         (arm_get_next_pcs_ctor): Update declaration.
4762         * arm-linux-tdep.c (arm_linux_software_single_step): Pass
4763         1 to arm_get_next_pcs_ctor.
4764         * arm-tdep.c (arm_software_single_step): Pass 0 to
4765         arm_get_next_pcs_ctor.
4766
4767 2016-01-13  Ulrich Weigand  <uweigand@de.ibm.com>
4768
4769         * MAINTAINERS: Add Andreas Arnez as s390 target maintainer.
4770
4771 2016-01-13  Yao Qi  <yao.qi@linaro.org>
4772
4773         * arch/arm-get-next-pcs.c (arm_get_next_pcs_raw): Use
4774         byte_order_for_code to read instruction.
4775
4776 2016-01-13  Pedro Alves  <palves@redhat.com>
4777
4778         * NEWS: Mention $_gthread.
4779         * gdbthread.h (struct thread_info) <global_num>: Mention
4780         $_gthread.
4781         * thread.c (thread_num_make_value_helper): New function.
4782         (thread_id_make_value): Delete.
4783         (thread_id_per_inf_num_make_value, global_thread_id_make_value):
4784         New.
4785         (thread_funcs): Adjust.
4786         (gthread_funcs): New.
4787         (_initialize_thread): Register $_gthread variable.
4788
4789 2016-01-13  Pedro Alves  <palves@redhat.com>
4790
4791         * NEWS: Mention "info threads -gid".
4792         * gdbthread.h (struct thread_info) <global_num>: Mention "info
4793         threads -gid".
4794         * thread.c (info_threads_command): Handle "-gid".
4795         (_initialize_thread): Adjust "info threads" help string to mention
4796         -gid.
4797
4798 2016-01-13  Pedro Alves  <palves@redhat.com>
4799
4800         * NEWS: Mention InferiorThread.global_num.
4801         * python/py-infthread.c (thpy_get_global_num): New function.
4802         (thread_object_getset): Register "global_num".
4803
4804 2016-01-13  Pedro Alves  <palves@redhat.com>
4805
4806         * NEWS: Mention that thread IDs are now per inferior and global
4807         thread IDs.
4808         * Makefile.in (SFILES): Add tid-parse.c.
4809         (COMMON_OBS): Add tid-parse.o.
4810         (HFILES_NO_SRCDIR): Add tid-parse.h.
4811         * ada-tasks.c: Adjust to use ptid_to_global_thread_id.
4812         * breakpoint.c (insert_breakpoint_locations)
4813         (remove_threaded_breakpoints, bpstat_check_breakpoint_conditions)
4814         (print_one_breakpoint_location, set_longjmp_breakpoint)
4815         (check_longjmp_breakpoint_for_call_dummy)
4816         (set_momentary_breakpoint): Adjust to use global IDs.
4817         (find_condition_and_thread, watch_command_1): Use parse_thread_id.
4818         (until_break_command, longjmp_bkpt_dtor)
4819         (breakpoint_re_set_thread, insert_single_step_breakpoint): Adjust
4820         to use global IDs.
4821         * dummy-frame.c (pop_dummy_frame_bpt): Adjust to use
4822         ptid_to_global_thread_id.
4823         * elfread.c (elf_gnu_ifunc_resolver_stop): Likewise.
4824         * gdbthread.h (struct thread_info): Rename field 'num' to
4825         'global_num.  Add new fields 'per_inf_num' and 'inf'.
4826         (thread_id_to_pid): Rename thread_id_to_pid to
4827         global_thread_id_to_ptid.
4828         (pid_to_thread_id): Rename to ...
4829         (ptid_to_global_thread_id): ... this.
4830         (valid_thread_id): Rename to ...
4831         (valid_global_thread_id): ... this.
4832         (find_thread_id): Rename to ...
4833         (find_thread_global_id): ... this.
4834         (ALL_THREADS, ALL_THREADS_BY_INFERIOR): Declare.
4835         (print_thread_info): Add comment.
4836         * tid-parse.h: New file.
4837         * tid-parse.c: New file.
4838         * infcmd.c (step_command_fsm_prepare)
4839         (step_command_fsm_should_stop): Adjust to use the global thread
4840         ID.
4841         (until_next_command, until_next_command)
4842         (finish_command_fsm_should_stop): Adjust to use the global thread
4843         ID.
4844         (attach_post_wait): Adjust to check the inferior number too.
4845         * inferior.h (struct inferior) <highest_thread_num>: New field.
4846         * infrun.c (handle_signal_stop)
4847         (insert_exception_resume_breakpoint)
4848         (insert_exception_resume_from_probe): Adjust to use the global
4849         thread ID.
4850         * record-btrace.c (record_btrace_open): Use global thread IDs.
4851         * remote.c (process_initial_stop_replies): Also consider the
4852         inferior number.
4853         * target.c (target_pre_inferior): Clear the inferior's highest
4854         thread num.
4855         * thread.c (clear_thread_inferior_resources): Adjust to use the
4856         global thread ID.
4857         (new_thread): New inferior parameter.  Adjust to use it.  Set both
4858         the thread's global ID and the thread's per-inferior ID.
4859         (add_thread_silent): Adjust.
4860         (find_thread_global_id): New.
4861         (find_thread_id): Make static.  Adjust to rename.
4862         (valid_thread_id): Rename to ...
4863         (valid_global_thread_id): ... this.
4864         (pid_to_thread_id): Rename to ...
4865         (ptid_to_global_thread_id): ... this.
4866         (thread_id_to_pid): Rename to ...
4867         (global_thread_id_to_ptid): ... this.  Adjust.
4868         (first_thread_of_process): Adjust.
4869         (do_captured_list_thread_ids): Adjust to use global thread IDs.
4870         (should_print_thread): New function.
4871         (print_thread_info): Rename to ...
4872         (print_thread_info_1): ... this, and add new show_global_ids
4873         parameter.  Handle it.  Iterate over inferiors.
4874         (print_thread_info): Reimplement as wrapper around
4875         print_thread_info_1.
4876         (show_inferior_qualified_tids): New function.
4877         (print_thread_id): Use it.
4878         (tp_array_compar): Compare inferior numbers too.
4879         (thread_apply_command): Use tid_range_parser.
4880         (do_captured_thread_select): Use parse_thread_id.
4881         (thread_id_make_value): Adjust.
4882         (_initialize_thread): Adjust "info threads" help string.
4883         * varobj.c (struct varobj_root): Update comment.
4884         (varobj_create): Adjust to use global thread IDs.
4885         (value_of_root_1): Adjust to use global_thread_id_to_ptid.
4886         * windows-tdep.c (display_tib): No longer accept an argument.
4887         * cli/cli-utils.c (get_number_trailer): Make extern.
4888         * cli/cli-utils.h (get_number_trailer): Declare.
4889         (get_number_const): Adjust documentation.
4890         * mi/mi-cmd-var.c (mi_cmd_var_update_iter): Adjust to use global
4891         thread IDs.
4892         * mi/mi-interp.c (mi_new_thread, mi_thread_exit)
4893         (mi_on_normal_stop, mi_output_running_pid, mi_on_resume):
4894         * mi/mi-main.c (mi_execute_command, mi_cmd_execute): Likewise.
4895         * guile/scm-breakpoint.c (gdbscm_set_breakpoint_thread_x):
4896         Likewise.
4897         * python/py-breakpoint.c (bppy_set_thread): Likewise.
4898         * python/py-finishbreakpoint.c (bpfinishpy_init): Likewise.
4899         * python/py-infthread.c (thpy_get_num): Add comment and return the
4900         per-inferior thread ID.
4901         (thread_object_getset): Update comment of "num".
4902
4903 2016-01-13  Pedro Alves  <palves@redhat.com>
4904
4905         * breakpoint.c (remove_threaded_breakpoints)
4906         (print_one_breakpoint_location): Use print_thread_id.
4907         * btrace.c (btrace_enable, btrace_disable, btrace_teardown)
4908         (btrace_fetch, btrace_clear): Use print_thread_id.
4909         * common/print-utils.c (CELLSIZE): Delete.
4910         (get_cell): Rename to ...
4911         (get_print_cell): ... this and made extern.  Adjust call callers.
4912         Adjust to use PRINT_CELL_SIZE.
4913         * common/print-utils.h (get_print_cell): Declare.
4914         (PRINT_CELL_SIZE): New.
4915         * gdbthread.h (print_thread_id): Declare.
4916         * infcmd.c (signal_command): Use print_thread_id.
4917         * inferior.c (print_inferior): Use print_thread_id.
4918         * infrun.c (handle_signal_stop)
4919         (insert_exception_resume_breakpoint)
4920         (insert_exception_resume_from_probe)
4921         (print_signal_received_reason): Use print_thread_id.
4922         * record-btrace.c (record_btrace_info)
4923         (record_btrace_resume_thread, record_btrace_cancel_resume)
4924         (record_btrace_step_thread, record_btrace_wait): Use
4925         print_thread_id.
4926         * thread.c (thread_apply_all_command): Use print_thread_id.
4927         (print_thread_id): New function.
4928         (thread_apply_command): Use print_thread_id.
4929         (thread_command, thread_find_command, do_captured_thread_select):
4930         Use print_thread_id.
4931
4932 2016-01-13  Pedro Alves  <palves@redhat.com>
4933
4934         * NEWS: Mention InferiorThread.inferior.
4935         * python/py-infthread.c (thpy_get_inferior): New.
4936         (thread_object_getset): Register "inferior".
4937
4938 2016-01-13  Pedro Alves  <palves@redhat.com>
4939
4940         * NEWS: Mention $_inferior.
4941         * inferior.c (inferior_id_make_value): New.
4942         (inferior_funcs): New.
4943         (_initialize_inferior): Create $_inferior variable.
4944
4945 2016-01-13  Pedro Alves  <palves@redhat.com>
4946
4947         PR breakpoints/19388
4948         * frame.c (get_current_frame): Use validate_registers_access.
4949         * gdbthread.h (validate_registers_access): Declare.
4950         * infrun.c (validate_siginfo_access): Delete.
4951         (siginfo_value_read, siginfo_value_write): Use
4952         validate_registers_access.
4953         * thread.c (validate_registers_access): New function.
4954
4955 2016-01-12  Josh Stone  <jistone@redhat.com>
4956             Philippe Waroquiers  <philippe.waroquiers@skynet.be>
4957
4958         * NEWS (Changes since GDB 7.10): Mention QCatchSyscalls and the
4959         syscall_entry and syscall_return stop reasons.  Mention GDB
4960         support for remote catch syscall.
4961         * remote.c (PACKET_QCatchSyscalls): New enum.
4962         (remote_set_syscall_catchpoint): New function.
4963         (remote_protocol_features): New element for QCatchSyscalls.
4964         (remote_parse_stop_reply): Parse syscall_entry/return stops.
4965         (init_remote_ops): Install remote_set_syscall_catchpoint.
4966         (_initialize_remote): Config QCatchSyscalls.
4967         * linux-nat.h (struct lwp_info) <syscall_state>: Comment typo.
4968
4969 2016-01-12  Yao Qi  <yao.qi@linaro.org>
4970
4971         * nat/linux-ptrace.c (linux_child_function): Cast child_stack
4972         to gdb_byte * and pass to linux_fork_to_function.
4973
4974 2016-01-12  Yao Qi  <yao.qi@linaro.org>
4975
4976         * nat/linux-ptrace.c (linux_fork_to_function): Change type
4977         of argument 'function'.
4978         (linux_grandchild_function): Change return type to 'int'.
4979         Change child_stack's type to 'void *'.
4980         (linux_child_function): Likewise.
4981
4982 2016-01-12  Pedro Alves  <palves@redhat.com>
4983
4984         Remove use of the registered trademark symbol throughout.
4985
4986 2016-01-12  Thomas Schwinge  <thomas@codesourcery.com>
4987
4988         * reply_mig_hack.awk: Rewrite one regular expression.
4989
4990 2016-01-11  Mike Frysinger  <vapier@gentoo.org>
4991
4992         * acinclude.m4: Include new warning.m4 file.
4993         * configure: Regenerated.
4994         * configure.ac: Move all warning logic ...
4995         * warning.m4: ... here.
4996
4997 2016-01-08  Yao Qi  <yao.qi@linaro.org>
4998
4999         * extension.c: Include target.h.
5000         (set_active_ext_lang): Only call install_gdb_sigint_handler,
5001         check_quit_flag, and set_quit_flag if target_terminal_is_ours
5002         returns false.
5003         (restore_active_ext_lang): Likewise.
5004         * target.c (target_terminal_is_ours): New function.
5005         * target.h (target_terminal_is_ours): Declare.
5006
5007 2016-01-07  Maciej W. Rozycki  <macro@imgtec.com>
5008
5009         * mips-tdep.c (mips_breakpoint_from_pc): Rename local `status'
5010         to `err' in the little-endian leg.
5011
5012 2016-01-06  Yao Qi  <yao.qi@linaro.org>
5013
5014         * arch/arm-get-next-pcs.c (arm_get_next_pcs): Move it to some
5015         lines below.
5016         (thumb_get_next_pcs_raw): Make it static.
5017         (arm_get_next_pcs_raw): Likewise.
5018         * arch/arm-get-next-pcs.h (thumb_get_next_pcs_raw): Remove the
5019         declaration.
5020         (arm_get_next_pcs_raw): Likewise.
5021
5022 2016-01-05  Mike Frysinger  <vapier@gentoo.org>
5023
5024         * version.in: Change cvs to git.
5025
5026 2016-01-05  Mike Frysinger  <vapier@gentoo.org>
5027
5028         * configure.tgt (score-*-*): Delete gdb_sim assignment.
5029
5030 2016-01-05  Pedro Alves  <palves@redhat.com>
5031
5032         PR sim/13418
5033         * configure.ac: Define WITH_PPC_SIM when linking in the sim and
5034         the target is powerpc*.
5035         * rs6000-tdep.c (init_sim_regno_table): Check WITH_PPC_SIM instead
5036         of WITH_SIM.
5037         * configure: Regenerate.
5038         * config.in: Regenerate.
5039
5040 2016-01-04  Markus Metzger  <markus.t.metzger@intel.com>
5041
5042         * btrace.c (btrace_pt_readmem_callback): Do not return in TRY/CATCH.
5043
5044 2016-01-02  Mike Frysinger  <vapier@gentoo.org>
5045
5046         * configure.tgt (powerpc*-*-*): Delete test call and
5047         always assign gdb_sim.
5048
5049 2016-01-01  Joel Brobecker  <brobecker@adacore.com>
5050
5051         Update year range in copyright notice of all files.
5052
5053 2016-01-01  Joel Brobecker  <brobecker@adacore.com>
5054
5055         * top.c (print_gdb_version): Change copyright year in version
5056         message.
5057
5058 2016-01-01  Joel Brobecker  <brobecker@adacore.com>
5059
5060         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2015.
5061
5062 For older changes see ChangeLog-2015.
5063 \f
5064 Local Variables:
5065 mode: change-log
5066 left-margin: 8
5067 fill-column: 74
5068 version-control: never
5069 coding: utf-8
5070 End: