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