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