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