SEGV in ppc64_elf_get_synthetic_symtab reading a separate debug file
[external/binutils.git] / gdb / ChangeLog
1 2015-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
2
3         * elfread.c (elf_read_minimal_symbols): Use bfd_alloc for
4         bfd_canonicalize_symtab.
5
6 2015-02-25  John Baldwin  <jhb@FreeBSD.org>
7
8         * amd64fbsd-nat.c: Include sys/user.h.
9         (_initialize_amd64fbsd_nat): Use the KERN_PROC_SIGTRAMP sysctl
10         instead of KERN_PS_STRINGS to locate the signal trampoline.
11         * i386fbsd-nat.c: Include sys/user.h.
12         (_initialize_i386fbsd_nat): Use the KERN_PROC_SIGTRAMP sysctl
13         instead of KERN_PS_STRINGS to locate the signal trampoline.
14         * amd64fbsd-tdep.c (amd64fbsd_sigtramp_code): New.
15         (amd64fbsd_sigtramp_p): New.
16         (amd64fbsd_sigtramp_start_addr, amd64fbsd_sigtramp_end_addr): No
17         longer set default values.
18         (amd64fbsd_init_abi): Set "sigtramp_p" to "amd64fbsd_sigtramp_p".
19         * i386fbsd-tdep.c (i386fbsd_sigtramp_start)
20         (i386fbsd_sigtramp_middle, i386fbsd_sigtramp_end)
21         (i386fbsd_freebsd4_sigtramp_start)
22         (i386fbsd_freebsd4_sigtramp_middle)
23         (i386fbsd_freebsd4_sigtramp_end, i386fbsd_osigtramp_start)
24         (i386fbsd_osigtramp_middle, i386fbsd_osigtramp_end): New.
25         (i386fbsd_sigtramp_p): New.
26         (i386fbsd_sigtramp_start_addr, i386fbsd_sigtramp_end_addr): No
27         longer set default values.
28         (i386fbsd_init_abi): Set "sigtramp_p" to "i386fbsd_sigtramp_p".
29
30 2015-02-25  John Baldwin  <jhb@freebsd.org>
31
32         * amd64fbsd-tdep.c (amd64fbsd_sigcontext_addr): Use
33         get_frame_register instead of frame_unwind_register_unsigned.
34
35 2015-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
36
37         PR build/18033
38         * compile/compile-c-support.c (c_compute_program): Change // comment.
39         * compile/compile-object-load.c (setup_sections): Change // comment.
40
41 2015-02-26  Joel Brobecker  <brobecker@adacore.com>
42
43         PR build/18033:
44         * iq2000-tdep.c (iq2000_frame_cache): Delete C++-style comment.
45
46 2015-02-23  Pedro Alves  <palves@redhat.com>
47
48         * remote.c (skip_to_semicolon): New function.
49         (remote_parse_stop_reply) <T stop reply>: Use it.  Don't
50         special case the stop reasons that look like hex numbers
51         upfront.  Instead handle real register numbers after matching
52         all the known stop reasons.
53
54 2015-02-21  Doug Evans  <dje@google.com>
55
56         PR c++/17976, symtab/17821
57         * cp-namespace.c (cp_search_static_and_baseclasses): New parameter
58         is_in_anonymous.  All callers updated.
59         (find_symbol_in_baseclass): Ditto.
60         (cp_lookup_nested_symbol_1): Ditto.  Don't search all static blocks
61         for symbols in an anonymous namespace.
62         * dwarf2read.c (namespace_name): Don't call dwarf2_name, fetch
63         DW_AT_name directly.
64         (dwarf2_name): Convert missing namespace name to
65         CP_ANONYMOUS_NAMESPACE_STR.
66
67 2015-02-20  Pedro Alves  <palves@redhat.com>
68
69         * linux-nat.c (linux_handle_extended_wait): Call
70         thread_db_notice_clone whenever a new clone LWP is detected.
71         (linux_stop_and_wait_all_lwps, linux_unstop_all_lwps): New
72         functions.
73         * linux-nat.h (thread_db_attach_lwp): Delete declaration.
74         (thread_db_notice_clone, linux_stop_and_wait_all_lwps)
75         (linux_unstop_all_lwps): Declare.
76         * linux-thread-db.c (struct thread_get_info_inout): Delete.
77         (thread_get_info_callback): Delete.
78         (thread_from_lwp): Use td_thr_get_info and record_thread.
79         (thread_db_attach_lwp): Delete.
80         (thread_db_notice_clone): New function.
81         (try_thread_db_load_1): If /proc is mounted and shows the
82         process'es task list, walk over all LWPs and call thread_from_lwp
83         instead of relying on td_ta_thr_iter.
84         (attach_thread): Don't call check_thread_signals here.  Split the
85         tail part of the function (which adds the thread to the core GDB
86         thread list) to ...
87         (record_thread): ... this function.  Call check_thread_signals
88         here.
89         (thread_db_wait): Don't call thread_db_find_new_threads_1.  Always
90         call thread_from_lwp.
91         (thread_db_update_thread_list): Rename to ...
92         (thread_db_update_thread_list_org): ... this.
93         (thread_db_update_thread_list): New function.
94         (thread_db_find_thread_from_tid): Delete.
95         (thread_db_get_ada_task_ptid): Simplify.
96         * nat/linux-procfs.c: Include <sys/stat.h>.
97         (linux_proc_task_list_dir_exists): New function.
98         * nat/linux-procfs.h (linux_proc_task_list_dir_exists): Declare.
99
100 2015-02-20  Pedro Alves  <palves@redhat.com>
101
102         * linux-nat.c (lin_lwp_attach_lwp): No longer special case the
103         main LWP.  Handle the case of waitpid returning 0 if we're already
104         attached to the LWP.  Don't set the LWP's last_resume_kind to
105         resume_stop if we already knew about the LWP.
106         (linux_nat_filter_event): Add debug logs.
107
108 2015-02-20  Pedro Alves  <palves@redhat.com>
109
110         * target.h (forward_target_decr_pc_after_break): Delete
111         declaration.
112
113 2015-02-20  Pedro Alves  <palves@redhat.com>
114
115         PR threads/18006
116         * linux-thread-db.c (thread_get_info_callback): Return early if
117         the thread's lwp id is -1.
118
119 2015-02-20  Joel Brobecker  <brobecker@adacore.com>
120
121         GDB 7.9 released.
122
123 2015-02-19  Steve Ellcey  <sellcey@imgtec.com>
124
125         * dtrace-probe.c (dtrace_process_dof_probe): Initialize arg.expr.
126         (dtrace_get_probes) Change type of variable 'dof'.
127
128 2015-02-19  Antoine Tremblay  <antoine.tremblay@ericsson.com>
129
130         PR breakpoints/16812
131         * linux-nat.c (linux_nat_filter_event): Report SIGTRAP,SIGILL,SIGSEGV.
132         * nat/linux-ptrace.c (linux_wstatus_maybe_breakpoint): Add.
133         * nat/linux-ptrace.h: Add linux_wstatus_maybe_breakpoint.
134
135 2015-02-19  David Taylor  <dtaylor@emc.com>
136
137         * common/ax.def (setv): Fix consumed entry in setv DEFOP.
138
139 2015-02-18  Patrick Palka  <patrick@parcs.ath.cx>
140
141         * tui/tui-io.c (tui_handle_resize_during_io): Remove this
142         function.
143         (tui_putc): Don't call tui_handle_resize_during_io.
144         (tui_getc): Likewise.
145         (tui_mld_getc): Likewise.
146         * tui/tui-win.c: Include event-loop.h and tui/tui-io.h.
147         (tui_sigwinch_token): New static variable.
148         (tui_initialize_win): Adjust documentation.  Set
149         tui_sigwinch_token.
150         (tui_async_resize_screen): New asynchronous callback.
151         (tui_sigwinch_handler): Adjust documentation.  Asynchronously
152         invoke tui_async_resize_screen.
153
154 2015-02-18  Jose E. Marchesi  <jose.marchesi@oracle.com>
155
156         * configure: Regenerated.
157         * configure.ac: Use GDB_AC_TRANSFORM.
158         * Makefile.in (aclocal_m4_deps): Added transform.m4.
159         * acinclude.m4: sinclude transform.m4.
160         * transform.m4: New file.
161         (GDB_AC_TRANSFORM): New macro.
162
163 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
164
165         * NEWS: Announce the support for DTrace SDT probes.
166
167 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
168
169         * amd64-linux-tdep.c: Include "parser-defs.h" and "user-regs.h".
170         (amd64_dtrace_parse_probe_argument): New function.
171         (amd64_dtrace_probe_is_enabled): Likewise.
172         (amd64_dtrace_enable_probe): Likewise.
173         (amd64_dtrace_disable_probe): Likewise.
174         (amd64_linux_init_abi): Register the
175         `gdbarch_dtrace_probe_argument', `gdbarch_dtrace_enable_probe',
176         `gdbarch_dtrace_disable_probe' and
177         `gdbarch_dtrace_probe_is_enabled' hooks.
178         (amd64_dtrace_disabled_probe_sequence_1): New constant.
179         (amd64_dtrace_disabled_probe_sequence_2): Likewise.
180         (amd64_dtrace_enable_probe_sequence): Likewise.
181         (amd64_dtrace_disable_probe_sequence): Likewise.
182
183 2015-01-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
184
185         * breakpoint.c (BREAK_ARGS_HELP): Help string updated to mention
186         the -probe-dtrace new vpossible value for PROBE_MODIFIER.
187         * configure.ac (CONFIG_OBS): dtrace-probe.o added if BFD can
188         handle ELF files.
189         * Makefile.in (SFILES): dtrace-probe.c added.
190         * configure: Regenerate.
191         * dtrace-probe.c: New file.
192         (SHT_SUNW_dof): New constant.
193         (dtrace_probe_type): New enum.
194         (dtrace_probe_arg): New struct.
195         (dtrace_probe_arg_s): New typedef.
196         (struct dtrace_probe_enabler): New struct.
197         (dtrace_probe_enabler_s): New typedef.
198         (dtrace_probe): New struct.
199         (dtrace_probe_is_linespec): New function.
200         (dtrace_dof_sect_type): New enum.
201         (dtrace_dof_dofh_ident): Likewise.
202         (dtrace_dof_encoding): Likewise.
203         (DTRACE_DOF_ENCODE_LSB): Likewise.
204         (DTRACE_DOF_ENCODE_MSB): Likewise.
205         (dtrace_dof_hdr): New struct.
206         (dtrace_dof_sect): Likewise.
207         (dtrace_dof_provider): Likewise.
208         (dtrace_dof_probe): Likewise.
209         (DOF_UINT): New macro.
210         (DTRACE_DOF_PTR): Likewise.
211         (DTRACE_DOF_SECT): Likewise.
212         (dtrace_process_dof_probe): New function.
213         (dtrace_process_dof): Likewise.
214         (dtrace_build_arg_exprs): Likewise.
215         (dtrace_get_arg): Likewise.
216         (dtrace_get_probes): Likewise.
217         (dtrace_get_probe_argument_count): Likewise.
218         (dtrace_can_evaluate_probe_arguments): Likewise.
219         (dtrace_evaluate_probe_argument): Likewise.
220         (dtrace_compile_to_ax): Likewise.
221         (dtrace_probe_destroy): Likewise.
222         (dtrace_gen_info_probes_table_header): Likewise.
223         (dtrace_gen_info_probes_table_values): Likewise.
224         (dtrace_probe_is_enabled): Likewise.
225         (dtrace_probe_ops): New variable.
226         (info_probes_dtrace_command): New function.
227         (_initialize_dtrace_probe): Likewise.
228         (dtrace_type_name): Likewise.
229
230 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
231
232         * gdbarch.sh (dtrace_parse_probe_argument): New.
233         (dtrace_probe_is_enabled): Likewise.
234         (dtrace_enable_probe): Likewise.
235         (dtrace_disable_probe): Likewise.
236         * gdbarch.c: Regenerate.
237         * gdbarch.h: Regenerate.
238
239 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
240
241         * stap-probe.c (stap_probe_ops): Add NULLs in the static
242         stap_probe_ops for `enable_probe' and `disable_probe'.
243         * probe.c (enable_probes_command): New function.
244         (disable_probes_command): Likewise.
245         (_initialize_probe): Define the cli commands `enable probe' and
246         `disable probe'.
247         (parse_probe_linespec): New function.
248         (info_probes_for_ops): Use parse_probe_linespec.
249         * probe.h (probe_ops): New hooks `enable_probe' and
250         `disable_probe'.
251
252 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
253
254         * probe.c (compute_probe_arg): Moved from stap-probe.c
255         (compile_probe_arg): Likewise.
256         (probe_funcs): Likewise.
257         * stap-probe.c (compute_probe_arg): Moved to probe.c.
258         (compile_probe_arg): Likewise.
259         (probe_funcs): Likewise.
260
261 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
262
263         * probe.c (print_ui_out_not_applicables): New function.
264         (exists_probe_with_pops): Likewise.
265         (info_probes_for_ops): Do not include column headers for probe
266         types for which no probe has been actually found on any object.
267         Also invoke `print_ui_out_not_applicables' in order to match the
268         column rows with the header when probes of several types are
269         listed.
270         Print the "Type" column.
271         * probe.h (probe_ops): Added a new probe operation `type_name'.
272         * stap-probe.c (stap_probe_ops): Add `stap_type_name'.
273         (stap_type_name): New function.
274
275 2015-02-17  Patrick Palka  <patrick@parcs.ath.cx>
276
277         * tui/tui-io.c (tui_getc): Don't call key_is_command_char.
278         (key_is_command_char): Delete.
279
280 2015-02-17  Pedro Alves  <palves@redhat.com>
281
282         * tui/tui.c (tui_enable): Resize windows before anything
283         might show a window.
284
285 2015-02-17  Max Ostapenko  <m.ostapenko@partner.samsung.com>
286
287         PR gdb/17984
288         * aarch64-linux-nat.c: Don't include features/aarch64.c anymore.
289         (aarch64_linux_read_description): Remove initialize_tdesc_aarch64
290         call.
291         * aarch64-tdep.h (tdesc_aarch64): Declare.
292
293 2015-02-12  Mark Wielaard  <mjw@redhat.com>
294
295         * contrib/ari/gdb_ari.sh: Remove checks for "true" and "false".
296
297 2015-02-13  Doug Evans  <dje@google.com>
298
299         * cp-namespace.c (cp_basic_lookup_symbol): Rename parameter
300         anonymous_namespace to is_in_anonymous for consistency with the rest
301         of the file.
302         (cp_lookup_bare_symbol): Fix typo in comment.
303         (cp_search_static_and_baseclasses): Ditto.
304         (search_symbol_list): Use vertical space in comment better.
305         (reset_directive_searched): Ditto. Fix typo.
306         (cp_lookup_nested_symbol_1): Clarify contents of NESTED_NAME parameter.
307
308 2015-02-13  Yao Qi  <yao.qi@arm.com>
309
310         * MAINTAINERS: Update my email address.
311
312 2015-02-12  Doug Evans  <dje@google.com>
313
314         * symtab.c (completion_list_add_name): Fix memory leak.
315
316 2015-02-12  Doug Evans  <dje@google.com>
317
318         * completer.c (complete_line): Remove incorrect comment.
319
320 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
321
322         * python/py-framefilter.c (py_print_single_arg, enumerate_locals)
323         (py_print_frame): Use RETURN_MASK_ERROR.
324
325 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
326
327         * python/py-framefilter.c (py_print_frame): Mention RETURN_QUIT in
328         function comment.  Wrap all function that can throw in cleanups.
329         (gdbpy_apply_frame_filter): Wrap all function that can throw in
330         cleanups.
331
332 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
333
334         * python/py-framefilter.c (py_print_frame): Substitute goto error.
335         Remove the error label.
336
337 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
338
339         * python/py-framefilter.c (py_print_frame): Put conditional code paths
340         with goto first, indent the former else codepath left.  Put variable
341         'elided' to a new inner block.
342
343 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
344
345         * python/py-framefilter.c (py_print_frame): Whitespacing fixes.
346
347 2015-02-11  Pedro Alves  <palves@redhat.com>
348
349         * xcoffread.c (within_function): Delete.
350
351 2015-02-11  Tom Tromey  <tromey@redhat.com>
352             Pedro Alves <palves@redhat.com>
353
354         * breakpoint.c (base_breakpoint_ops): Delete.
355         * dwarf2loc.c (dwarf_expr_ctx_funcs): Make extern.
356         * elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_lazy_psyms): Make extern.
357         * guile/guile.c (guile_extension_script_ops, guile_extension_ops): Make extern.
358         * ppcnbsd-tdep.c (ppcnbsd2_sigtramp): Make extern.
359         * python/py-arch.c (arch_object_type): Make extern.
360         * python/py-block.c (block_syms_iterator_object_type): Make extern.
361         * python/py-bpevent.c (breakpoint_event_object_type): Make extern.
362         * python/py-cmd.c (cmdpy_object_type): Make extern.
363         * python/py-continueevent.c (continue_event_object_type)
364         * python/py-event.h (GDBPY_NEW_EVENT_TYPE): Remove 'qual'
365         parameter.  Update all callers.
366         * python/py-evtregistry.c (eventregistry_object_type): Make extern.
367         * python/py-exitedevent.c (exited_event_object_type): Make extern.
368         * python/py-finishbreakpoint.c (finish_breakpoint_object_type): Make extern.
369         * python/py-function.c (fnpy_object_type): Make extern.
370         * python/py-inferior.c (inferior_object_type, membuf_object_type): Make extern.
371         * python/py-infevents.c (call_pre_event_object_type)
372         (inferior_call_post_event_object_type).
373         (memory_changed_event_object_type): Make extern.
374         * python/py-infthread.c (thread_object_type): Make extern.
375         * python/py-lazy-string.c (lazy_string_object_type): Make extern.
376         * python/py-linetable.c (linetable_entry_object_type)
377         (linetable_object_type, ltpy_iterator_object_type): Make extern.
378         * python/py-newobjfileevent.c (new_objfile_event_object_type)
379         (clear_objfiles_event_object_type): Make extern.
380         * python/py-objfile.c (objfile_object_type): Make extern.
381         * python/py-param.c (parmpy_object_type): Make extern.
382         * python/py-progspace.c (pspace_object_type): Make extern.
383         * python/py-signalevent.c (signal_event_object_type): Make extern.
384         * python/py-symtab.c (symtab_object_type, sal_object_type): Make extern.
385         * python/py-type.c (type_object_type, field_object_type)
386         (type_iterator_object_type): Make extern.
387         * python/python.c (python_extension_script_ops)
388         (python_extension_ops): Make extern.
389         * stap-probe.c (stap_probe_ops): Make extern.
390
391 2015-02-11  Pedro Alves  <pedro@codesourcery.com>
392
393         * infrun.c (adjust_pc_after_break): Don't adjust the PC just
394         because the event thread is not the current thread.
395
396 2015-02-11  Doug Evans  <xdje42@gmail.com>
397
398         * gdbtypes.c (internal_type_self_type): If TYPE_SPECIFIC_FIELD hasn't
399         been initialized yet, return NULL.
400
401 2015-02-11  Doug Evans  <dje@google.com>
402
403         * symfile.h (new_symfile_objfile): Delete.
404         * symfile.c (finish_new_objfile): Renamed from new_symfile_objfile.
405         All callers updated.
406
407 2015-02-11  Patrick Palka  <patrick@parcs.ath.cx>
408
409         * tui/tui-io.c (tui_handle_resize_during_io): Call
410         tui_update_gdb_sizes() after resizing the screen.
411         * tui/tui.c (tui_enable): Resize the terminal before
412         calling tui_update_gdb_sizes().
413
414 2015-02-11  Patrick Palka  <patrick@parcs.ath.cx>
415
416         * tui/tui-io.c (tui_getc): Move cursor to the end of the command
417         line before printing a newline.
418
419 2015-02-11  Mark Wielaard  <mjw@redhat.com>
420
421         * utils.c (producer_is_gcc): Return true or false.
422
423 2015-02-10  Mark Wielaard  <mjw@redhat.com>
424
425         * utils.h (producer_is_gcc): Change return type to bool. Add major
426         argument.
427         * utils.c (producer_is_gcc): Likewise.
428         (producer_is_gcc_ge_4): Adjust producer_is_gcc call.
429         * dwarf2read.c (check_producer): Likewise.
430
431 2015-02-10  Pedro Alves  <palves@redhat.com>
432
433         * infrun.c (displaced_step_fixup): Switch to the event thread
434         before calling gdbarch_displaced_step_fixup.
435
436 2015-02-10  Antoine Tremblay <antoine.tremblay@ericsson.com>
437
438         * MAINTAINERS (Write After Approval): Add Antoine Tremblay.
439
440 2015-02-10  Simon Marchi  <simon.marchi@ericsson.com>
441
442         * ada-varobj.c (ada_name_of_child): Constify parent.
443         (ada_path_expr_of_child): Same.
444         (ada_value_of_child): Same.
445         (ada_type_of_child): Same.
446         * c-varobj.c (c_is_path_expr_parent): Same.
447         (c_describe_child): Same.
448         (c_name_of_child): Same.
449         (c_value_of_child): Same.
450         (c_type_of_child): Same.
451         (cplus_number_of_children): Same.
452         (cplus_describe_child): Constify var.
453         (cplus_name_of_child): Constify parent.
454         (cplus_value_of_child): Same.
455         (cplus_type_of_child): Same.
456         * jv-varobj.c (java_name_of_child): Same.
457         (java_value_of_child): Same.
458         (java_type_of_child): Same.
459         * varobj.c (value_of_child): Same.
460         (varobj_default_is_path_expr_parent): Constify var, parent and return
461         value.
462         (varobj_get_path_expr): Constify var, modify path_expr through
463         mutable_var.
464         (install_new_value): Constify parent.
465         (value_of_child): Constify parent.
466         * varobj.h (struct varobj): Constify parent.
467         (struct lang_varobj_ops): Constify name_of_child, value_of_child and
468         type_of_child.
469         (varobj_get_path_expr): Constify var.
470         (varobj_get_path_expr_parent): Constify var and return value.
471
472 2015-02-10  Luis Machado  <lgustavo@codesourcery.com>
473
474         * arm-tdep.c (arm_prologue_unwind_stop_reason): New function.
475         (arm_prologue_this_id): Move PC and SP limit checks to
476         arm_prologue_unwind_stop_reason.
477         (arm_prologue_unwind) <stop_reason> : Set to
478         arm_prologue_unwind_stop_reason.
479
480 2015-02-09  Mark Wielaard  <mjw@redhat.com>
481
482         * dwarf2read.c (set_cu_language): Recognize DW_LANG_Fortran03 and
483         DW_LANG_Fortran08 as language_fortran.
484
485 2015-02-09  Sergio Durigan Junior  <sergiodj@redhat.com>
486
487         PR remote/17946
488         * gdb/remote.c (remote_parse_stop_reply): Fix wrong comparison
489         of pointer against char.
490
491 2015-02-09  Mark Wielaard  <mjw@redhat.com>
492
493         * c-typeprint.c (cp_type_print_method_args): Handle '_Atomic'.
494         (c_type_print_modifier): Likewise.
495         * dwarf2read.c (read_tag_atomic_type): New function.
496         (read_type_die_1): Handle DW_TAG_atomic_type.
497         * gdbtypes.c (make_atomic_type): New function.
498         (recursive_dump_type): Handle TYPE_ATOMIC.
499         * gdbtypes.h (enum type_flag_values): Renumber.
500         (enum type_instance_flag_value): Add TYPE_INSTANCE_FLAG_ATOMIC.
501         (TYPE_ATOMIC): New macro.
502         (make_atomic_type): Declare.
503
504 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
505
506         * btrace.c (ftrace_find_call): Skip gaps.
507         (ftrace_new_function): Initialize level.
508         (ftrace_new_call, ftrace_new_tailcall, ftrace_new_return)
509         (ftrace_new_switch): Update
510         level computation.
511         (ftrace_new_gap): New.
512         (ftrace_update_function): Create new function after gap.
513         (btrace_compute_ftrace_bts): Create gap on error.
514         (btrace_stitch_bts): Update parameters.  Clear trace if it
515         becomes empty.
516         (btrace_stitch_trace): Update parameters.  Update callers.
517         (btrace_clear): Reset the number of gaps.
518         (btrace_insn_get): Return NULL if the iterator points to a gap.
519         (btrace_insn_number): Return zero if the iterator points to a gap.
520         (btrace_insn_end): Allow gaps at the end.
521         (btrace_insn_next, btrace_insn_prev, btrace_insn_cmp): Handle gaps.
522         (btrace_find_insn_by_number): Assert that the found iterator does
523         not point to a gap.
524         (btrace_call_next, btrace_call_prev): Assert that the last function
525         is not a gap.
526         * btrace.h (btrace_bts_error): New.
527         (btrace_function): Update comment.
528         (btrace_function) <insn, insn_offset, number>: Update comment.
529         (btrace_function) <errcode>: New.
530         (btrace_thread_info) <ngaps>: New.
531         (btrace_thread_info) <replay>: Update comment.
532         (btrace_insn_get): Update comment.
533         * record-btrace.c (btrace_ui_out_decode_error): New.
534         (record_btrace_info): Print number of gaps.
535         (btrace_insn_history, btrace_call_history): Call
536         btrace_ui_out_decode_error for gaps.
537         (record_btrace_step_thread, record_btrace_start_replaying): Skip gaps.
538
539 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
540
541         * common/btrace-common.h (btrace_cpu_vendor, btrace_cpu): New.
542         * nat/linux-btrace.c: (btrace_this_cpu): New.
543         (cpu_supports_bts): Call btrace_this_cpu.
544         (intel_supports_bts): Add cpu parameter.
545
546 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
547
548         * btrace.h (btrace_insn_class): New.
549         (btrace_insn) <size, iclass>: New.
550         * btrace.c (ftrace_find_call): Update parameters.  Update users.
551         Use instruction classification.
552         (ftrace_new_return): Update parameters.  Update users.
553         (ftrace_update_function): Update parameters.  Update users.  Use
554         instruction classification.
555         (ftrace_update_insns): Update parameters.  Update users.
556         (ftrace_classify_insn): New.
557         (btrace_compute_ftrace_bts): Fill in new btrace_insn fields.  Add
558         TRY_CATCH around call to gdb_insn_length.
559
560 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
561
562         * btrace.c (btrace_compute_ftrace_bts, btrace_compute_ftrace):
563         Update parameters.  Update users.
564
565 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
566
567         * btrace.c (parse_xml_btrace_conf_bts): Add size.
568         (btrace_conf_bts_attributes): New.
569         (btrace_conf_children): Add attributes.
570         * common/btrace-common.h (btrace_config_bts): New.
571         (btrace_config)<bts>: New.
572         (btrace_config): Update comment.
573         * nat/linux-btrace.c (linux_enable_btrace, linux_enable_bts):
574         Use config.
575         * features/btrace-conf.dtd: Increment version.  Add size
576         attribute to bts element.
577         * record-btrace.c (set_record_btrace_bts_cmdlist,
578         show_record_btrace_bts_cmdlist): New.
579         (record_btrace_adjust_size, record_btrace_print_bts_conf,
580         record_btrace_print_conf, cmd_set_record_btrace_bts,
581         cmd_show_record_btrace_bts): New.
582         (record_btrace_info): Call record_btrace_print_conf.
583         (_initialize_record_btrace): Add commands.
584         * remote.c: Add PACKET_Qbtrace_conf_bts_size enum.
585         (remote_protocol_features): Add Qbtrace-conf:bts:size packet.
586         (btrace_sync_conf): Synchronize bts size.
587         (_initialize_remote): Add Qbtrace-conf:bts:size packet.
588         * NEWS: Announce new commands and new packets.
589
590 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
591
592         * Makefile.in (XMLFILES): Add btrace-conf.dtd.
593         * x86-linux-nat.c (x86_linux_enable_btrace): Update parameters.
594         (x86_linux_btrace_conf): New.
595         (x86_linux_create_target): Initialize to_btrace_conf.
596         * nat/linux-btrace.c (linux_enable_btrace): Update parameters.
597         Check format.  Split into this and ...
598         (linux_enable_bts): ... this.
599         (linux_btrace_conf): New.
600         (perf_event_skip_record): Renamed into ...
601         (perf_event_skip_bts_record): ... this.  Updated users.
602         (linux_disable_btrace): Split into this and ...
603         (linux_disable_bts): ... this.
604         (linux_read_btrace): Check format.
605         * nat/linux-btrace.h (linux_enable_btrace): Update parameters.
606         (linux_btrace_conf): New.
607         (btrace_target_info)<ptid>: Moved.
608         (btrace_target_info)<conf>: New.
609         (btrace_target_info): Split into this and ...
610         (btrace_tinfo_bts): ... this.  Updated users.
611         * btrace.c (btrace_enable): Update parameters.
612         (btrace_conf, parse_xml_btrace_conf_bts, parse_xml_btrace_conf)
613         (btrace_conf_children, btrace_conf_attributes)
614         (btrace_conf_elements): New.
615         * btrace.h (btrace_enable): Update parameters.
616         (btrace_conf, parse_xml_btrace_conf): New.
617         * common/btrace-common.h (btrace_config): New.
618         * feature/btrace-conf.dtd: New.
619         * record-btrace.c (record_btrace_conf): New.
620         (record_btrace_cmdlist): New.
621         (record_btrace_enable_warn, record_btrace_open): Pass
622         &record_btrace_conf.
623         (record_btrace_info): Print recording format.
624         (cmd_record_btrace_bts_start): New.
625         (cmd_record_btrace_start): Call cmd_record_btrace_bts_start.
626         (_initialize_record_btrace): Add "record btrace bts" subcommand.
627         Add "record bts" alias command.
628         * remote.c (remote_state)<btrace_config>: New.
629         (remote_btrace_reset, PACKET_qXfer_btrace_conf): New.
630         (remote_protocol_features): Add qXfer:btrace-conf:read.
631         (remote_open_1): Call remote_btrace_reset.
632         (remote_xfer_partial): Handle TARGET_OBJECT_BTRACE_CONF.
633         (btrace_target_info)<conf>: New.
634         (btrace_sync_conf, btrace_read_config): New.
635         (remote_enable_btrace): Update parameters.  Call btrace_sync_conf and
636         btrace_read_conf.
637         (remote_btrace_conf): New.
638         (init_remote_ops): Initialize to_btrace_conf.
639         (_initialize_remote): Add qXfer:btrace-conf packet.
640         * target.c (target_enable_btrace): Update parameters.
641         (target_btrace_conf): New.
642         * target.h (target_enable_btrace): Update parameters.
643         (target_btrace_conf): New.
644         (target_object)<TARGET_OBJECT_BTRACE_CONF>: New.
645         (target_ops)<to_enable_btrace>: Update parameters and comment.
646         (target_ops)<to_btrace_conf>: New.
647         * target-delegates: Regenerate.
648         * target-debug.h (target_debug_print_const_struct_btrace_config_p)
649         (target_debug_print_const_struct_btrace_target_info_p): New.
650         * NEWS: Announce new command and new packet.
651
652 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
653
654         * nat/linux-btrace.h (perf_event_buffer): New.
655         (btrace_target_info) <buffer, size, data_head>: Replace with ...
656         <bts>: ... this.
657         * nat/linux-btrace.c (perf_event_header, perf_event_mmap_size)
658         (perf_event_buffer_size, perf_event_buffer_begin)
659         (perf_event_buffer_end, linux_btrace_has_changed): Removed.
660         Updated users.
661         (perf_event_new_data): New.
662
663 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
664
665         * btrace.c (btrace_enable): Pass BTRACE_FORMAT_BTS.
666         * record-btrace.c (record_btrace_open): Remove call to
667         target_supports_btrace.
668         * remote.c (remote_supports_btrace): Update parameters.
669         * target.c (target_supports_btrace): Update parameters.
670         * target.h (to_supports_btrace, target_supports_btrace): Update
671         parameters.
672         * target-delegates.c: Regenerate.
673         * target-debug.h (target_debug_print_enum_btrace_format): New.
674         * nat/linux-btrace.c
675         (kernel_supports_btrace): Rename into ...
676         (kernel_supports_bts): ... this.  Update users.  Update warning text.
677         (intel_supports_btrace): Rename into ...
678         (intel_supports_bts): ... this.  Update users.
679         (cpu_supports_btrace): Rename into ...
680         (cpu_supports_bts): ... this.  Update users.
681         (linux_supports_btrace): Update parameters.  Split into this and ...
682         (linux_supports_bts): ... this.
683         * nat/linux-btrace.h (linux_supports_btrace): Update parameters.
684
685 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
686
687         * Makefile.in (SFILES): Add common/btrace-common.c.
688         (COMMON_OBS): Add common/btrace-common.o.
689         (btrace-common.o): Add build rules.
690         * btrace.c (parse_xml_btrace): Update parameters.
691         (parse_xml_btrace_block): Set format field.
692         (btrace_add_pc, btrace_fetch): Use struct btrace_data.
693         (do_btrace_data_cleanup, make_cleanup_btrace_data): New.
694         (btrace_compute_ftrace): Split into this and...
695         (btrace_compute_ftrace_bts): ...this.
696         (btrace_stitch_trace): Split into this and...
697         (btrace_stitch_bts): ...this.
698         * btrace.h (parse_xml_btrace): Update parameters.
699         (make_cleanup_btrace_data): New.
700         * common/btrace-common.c: New.
701         * common/btrace-common.h: Include common-defs.h.
702         (btrace_block_s): Update comment.
703         (btrace_format): New.
704         (btrace_format_string): New.
705         (btrace_data_bts): New.
706         (btrace_data): New.
707         (btrace_data_init, btrace_data_fini, btrace_data_empty): New.
708         * remote.c (remote_read_btrace): Update parameters.
709         * target.c (target_read_btrace): Update parameters.
710         * target.h (target_read_btrace): Update parameters.
711         (target_ops)<to_read_btrace>: Update parameters.
712         * x86-linux-nat.c (x86_linux_read_btrace): Update parameters.
713         * target-delegates.c: Regenerate.
714         * target-debug (target_debug_print_struct_btrace_data_p): New.
715         * nat/linux-btrace.c (linux_read_btrace): Split into this and...
716         (linux_read_bts): ...this.
717         * nat/linux-btrace.h (linux_read_btrace): Update parameters.
718
719 2015-02-06  Doug Evans  <dje@google.com>
720
721         * remote-m32r-sdi.c: Include symfile.h.
722
723 2015-02-06  Doug Evans  <dje@google.com>
724
725         * symtab.h (clear_symtab_users, deduce_language_from_filename): Move
726         * symfile.h (clear_symtab_users, deduce_language_from_filename): ...
727         to here.
728
729 2015-02-06  Pedro Alves  <palves@redhat.com>
730
731         * linux-thread-db.c (find_new_threads_callback): Add debug output.
732
733 2015-02-06  Simon Marchi  <simon.marchi@ericsson.com>
734
735         PR gdb/15678
736         * breakpoint.c (map_breakpoint_numbers): Check for empty args string.
737         (enable_count_command): Check args for NULL value.
738
739 2015-02-05  Doug Evans  <xdje42@gmail.com>
740
741         * guile/scm-frame.c: Fix spelling errors in a comment.
742
743 2015-02-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
744
745         * python/python-internal.h (Py_hash_t): Define it for Python <3.2.
746         * python/py-value.c (valpy_fetch_lazy): Use it.  Remove cast to the
747         return type.
748
749 2015-02-04  Pedro Alves  <palves@redhat.com>
750
751         * linux-nat.c (handle_extended_wait): Don't resume LWPs here.
752         (wait_lwp): Don't call wait_lwp if linux_handle_extended_wait
753         returns true.
754         (resume_stopped_resumed_lwps): Don't check whether the thread is
755         marked as executing.
756         (linux_nat_wait_1): Use resume_stopped_resumed_lwps.
757
758 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
759
760         * regset.h (struct regset): Add flags field.
761         (REGSET_VARIABLE_SIZE): New value for a regset's flags field.
762         * corelow.c (get_core_register_section): Add warning if the size
763         exceeds the requested size and the regset does not have the
764         REGSET_VARIABLE_SIZE flag set.
765         * alphanbsd-tdep.c (alphanbsd_gregset): Add REGSET_VARIABLE_SIZE
766         flag.
767         * armbsd-tdep.c (armbsd_gregset): Likewise.
768         * hppa-hpux-tdep.c (hppa_hpux_regset): Likewise.
769         * hppaobsd-tdep.c (hppaobsd_gregset): Likewise.
770         * m68kbsd-tdep.c (m68kbsd_gregset): Likewise.
771         * mipsnbsd-tdep.c (mipsnbsd_gregset): Likewise.
772
773 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
774
775         * amd64-linux-tdep.c (amd64_linux_iterate_over_regset_sections):
776         For ".reg-xstate", explicitly specify the requested section size
777         via X86_XSTATE_SIZE instead of just 0 on input and
778         X86_XSTATE_MAX_SIZE on output.
779         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections):
780         Likewise.
781
782 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
783
784         PR corefiles/17808:
785         * gdbarch.sh (iterate_over_regset_sections_cb): Document this
786         function type, particularly its SIZE parameter.
787         * gdbarch.h: Regenerate.
788         * amd64-tdep.c (amd64_supply_fpregset): In gdb_assert, compare
789         actual against required size using ">=" instead of "==".
790         (amd64_collect_fpregset): Likewise.
791         * i386-tdep.c (i386_supply_gregset): Likewise.
792         (i386_collect_gregset): Likewise.
793         (i386_supply_fpregset): Likewise.
794         (i386_collect_fpregset): Likewise.
795         * mips-linux-tdep.c (mips_supply_gregset_wrapper): Likewise.
796         (mips_fill_gregset_wrapper): Likewise.
797         (mips_supply_fpregset_wrapper): Likewise.
798         (mips_fill_fpregset_wrapper): Likewise.
799         (mips64_supply_gregset_wrapper): Likewise.
800         (mips64_fill_gregset_wrapper): Likewise.
801         (mips64_supply_fpregset_wrapper): Likewise.
802         (mips64_fill_fpregset_wrapper): Likewise.
803         * mn10300-linux-tdep.c (am33_supply_gregset_method): Likewise.
804         (am33_supply_fpregset_method): Likewise.
805         (am33_collect_gregset_method): Likewise.
806         (am33_collect_fpregset_method): Likewise.
807
808 2015-02-04  Doug Evans  <dje@google.com>
809             Pedro Alves  <palves@redhat.com>
810             Eli Zaretskii  <eliz@gnu.org>
811
812         PR tui/17810
813         * tui/tui-command.c (tui_refresh_cmd_win): New function.
814         * tui/tui-command.c (tui_refresh_cmd_win): Declare.
815         * tui/tui-file.c: #include tui/tui-command.h.
816         (tui_file_fputs): Refresh command window if stream is not gdb_stdout.
817         (tui_file_flush): Refresh command window if stream is gdb_stdout.
818         * tui/tui-io.c (tui_puts): Remove calls to wrefresh, fflush.
819
820 2015-02-04  Pedro Alves  <palves@redhat.com>
821
822         Fix build breakage.
823         * event-loop.c (gdb_do_one_event): Add default switch case.
824
825 2015-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
826
827         Filter out inferior gcc option -fpreprocessed.
828         * compile/compile.c (filter_args): New function.
829         (get_args): Use it.
830
831 2015-02-03  Pedro Alves  <palves@redhat.com>
832
833         * event-loop.c: Don't declare nor define a queue type for
834         gdb_event_p.
835         (event_queue): Delete.
836         (create_event, create_file_event, gdb_event_xfree)
837         (initialize_event_loop, process_event): Delete.
838         (gdb_do_one_event): Return as soon as one event is handled.
839         (handle_file_event): Change prototype.  Used the passed in
840         file_handler pointer and ready_mask instead of looping over all
841         file handlers.
842         (gdb_wait_for_event): Update the poll/select timeouts before
843         blocking.  Run event handlers directly instead of queueing events.
844         Return as soon as one event is handled.
845         (struct async_event_handler_data): Delete.
846         (invoke_async_event_handler): Delete.
847         (check_async_event_handlers): Change return type to int.  Run
848         event handlers directly instead of queueing events.  Return as
849         soon as one event is handled.
850         (handle_timer_event): Delete.
851         (update_wait_timeout): New function, factored out from
852         poll_timers.
853         (poll_timers): Reimplement.
854         * event-loop.h (initialize_event_loop): Delete declaration.
855         * top.c (gdb_init): Don't call initialize_event_loop.
856
857 2015-02-03  Pedro Alves  <palves@redhat.com>
858
859         * event-loop.c (clear_async_event_handler): New function.
860         * event-loop.h (clear_async_event_handler): New declaration.
861         * record-btrace.c (record_btrace_async): New function.
862         (init_record_btrace_ops): Install record_btrace_async.
863         * record-full.c (record_full_async): New function.
864         (record_full_resume): Don't mark the async event source here.
865         (init_record_full_ops): Install record_full_async.
866         (record_full_core_resume): Don't mark the async event source here.
867         (init_record_full_core_ops): Install record_full_async.
868         * remote.c (remote_async): Mark and clear the async stop reply
869         queue event-loop token as appropriate.
870
871 2015-02-03  Pedro Alves  <palves@redhat.com>
872
873         * linux-nat.c (linux_child_follow_fork, linux_nat_wait_1): Use
874         target_is_async_p instead of target_can_async.
875         (linux_nat_wait): Use target_is_async_p instead of
876         target_can_async.  Don't enable async here.
877         * remote.c (interrupt_query, remote_wait, putpkt_binary): Use
878         target_is_async_p instead of target_can_async.
879
880 2015-02-02  Simon Marchi  <simon.marchi@ericsson.com>
881
882         * varobj.h (lang_varobj_ops): Mention which return values need
883         to be freed.
884
885 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
886
887         * dwarf2loc.c (dwarf2_evaluate_property): Add i18n marker.
888
889 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
890
891         PR gdb/17856:
892         * ada-lang.c (ada_lookup_symbol_list_worker): Do not re-cache
893         results found in the cache.
894
895 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
896
897         PR gdb/17854:
898         * ada-lang.c (ada_get_symbol_cache): Set pspace_data->sym_cache
899         when allocating a new one.
900
901 2015-02-01  Tom Tromey  <tom@tromey.com>
902
903         * MAINTAINERS: Remove myself.
904
905 2015-01-31  Doug Evans  <xdje42@gmail.com>
906
907         * dwarf2read.c (process_structure_scope): Update setting of
908         TYPE_VPTR_BASETYPE, TYPE_VPTR_FIELDNO.
909         * gdbtypes.c (internal_type_vptr_fieldno): New function.
910         (set_type_vptr_fieldno): New function.
911         (internal_type_vptr_basetype): New function.
912         (set_type_vptr_basetype): New function.
913         (get_vptr_fieldno): Update setting of TYPE_VPTR_FIELDNO,
914         TYPE_VPTR_BASETYPE.
915         (allocate_cplus_struct_type): Initialize vptr_fieldno.
916         (recursive_dump_type): Printing of vptr_fieldno, vptr_basetype ...
917         (print_cplus_stuff): ... moved here.
918         (copy_type_recursive): Don't copy TYPE_VPTR_BASETYPE.
919         * gdbtypes.h (struct main_type): Members vptr_fieldno, vptr_basetype
920         moved to ...
921         (struct cplus_struct_type): ... here.  All uses updated.
922         (TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE): Rewrite.
923         (internal_type_vptr_fieldno, set_type_vptr_fieldno): Declare.
924         (internal_type_vptr_basetype, set_type_vptr_basetype): Declare.
925         * stabsread.c (read_tilde_fields): Update setting of
926         TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE.
927
928 2015-01-31  Doug Evans  <xdje42@gmail.com>
929
930         * cp-valprint.c (cp_find_class_member): Rename parameter domain_p
931         to self_p.
932         (cp_print_class_member): Rename local domain to self_type.
933         * dwarf2read.c (quirk_gcc_member_function_pointer): Rename local
934         domain_type to self_type.
935         (set_die_type) <need_gnat_info>: Handle
936         TYPE_CODE_METHODPTR, TYPE_CODE_MEMBERPTR, TYPE_CODE_METHOD.
937         * gdb-gdb.py (StructMainTypePrettyPrinter): Handle
938         TYPE_SPECIFIC_SELF_TYPE.
939         * gdbtypes.c (internal_type_self_type): New function.
940         (set_type_self_type): New function.
941         (smash_to_memberptr_type): Rename parameter domain to self_type.
942         Update setting of TYPE_SELF_TYPE.
943         (smash_to_methodptr_type): Update setting of TYPE_SELF_TYPE.
944         (smash_to_method_type): Rename parameter domain to self_type.
945         Update setting of TYPE_SELF_TYPE.
946         (check_stub_method): Call smash_to_method_type.
947         (recursive_dump_type): Handle TYPE_SPECIFIC_SELF_TYPE.
948         (copy_type_recursive): Ditto.
949         * gdbtypes.h (enum type_specific_kind): New value
950         TYPE_SPECIFIC_SELF_TYPE.
951         (struct main_type) <type_specific>: New member self_type.
952         (struct cplus_struct_type) <fn_field.type>: Update comment.
953         (TYPE_SELF_TYPE): Rewrite.
954         (internal_type_self_type, set_type_self_type): Declare.
955         * gnu-v3-abi.c (gnuv3_print_method_ptr): Rename local domain to
956         self_type.
957         (gnuv3_method_ptr_to_value): Rename local domain_type to self_type.
958         * m2-typeprint.c (m2_range): Replace TYPE_SELF_TYPE with
959         TYPE_TARGET_TYPE.
960         * stabsread.c (read_member_functions): Mark methods with
961         TYPE_CODE_METHOD, not TYPE_CODE_FUNC.  Update setting of
962         TYPE_SELF_TYPE.
963
964 2015-01-31  Doug Evans  <xdje42@gmail.com>
965
966         * gdbtypes.h (TYPE_SELF_TYPE): Renamed from TYPE_DOMAIN_TYPE.
967         All uses updated.
968
969 2015-01-31  Doug Evans  <xdje42@gmail.com>
970
971         * gnu-v3-abi.c (gnuv3_dynamic_class): Assert only passed structs
972         or unions.  Return zero if union.
973         (gnuv3_get_vtable): Call check_typedef.  Assert only passed structs.
974         (gnuv3_rtti_type): Pass already-check_typedef'd value to
975         gnuv3_get_vtable.
976         (compute_vtable_size): Assert only passed structs.
977         (gnuv3_print_vtable): Don't call gnuv3_get_vtable for non-structs.
978
979 2015-01-31  Doug Evans  <xdje42@gmail.com>
980
981         * gdbtypes.c (copy_type_recursive): Handle all TYPE_SPECIFIC_FIELD
982         kinds.
983
984 2015-01-31  Gary Benson <gbenson@redhat.com>
985             Doug Evans  <dje@google.com>
986
987         PR cli/9007
988         PR cli/11920
989         PR cli/15548
990         * cli/cli-cmds.c (complete_command): Notify user if max-completions
991         reached.
992         * common/common-exceptions.h (enum errors)
993         <MAX_COMPLETIONS_REACHED_ERROR>: New value.
994         * completer.h (get_max_completions_reached_message): New declaration.
995         (max_completions): Likewise.
996         (completion_tracker_t): New typedef.
997         (new_completion_tracker): New declaration.
998         (make_cleanup_free_completion_tracker): Likewise.
999         (maybe_add_completion_enum): New enum.
1000         (maybe_add_completion): New declaration.
1001         (throw_max_completions_reached_error): Likewise.
1002         * completer.c (max_completions): New global variable.
1003         (new_completion_tracker): New function.
1004         (free_completion_tracker): Likewise.
1005         (make_cleanup_free_completion_tracker): Likewise.
1006         (maybe_add_completions): Likewise.
1007         (throw_max_completions_reached_error): Likewise.
1008         (complete_line): Remove duplicates and limit result to max_completions
1009         entries.
1010         (get_max_completions_reached_message): New function.
1011         (gdb_display_match_list): Handle max_completions.
1012         (_initialize_completer): New declaration and function.
1013         * symtab.c: Include completer.h.
1014         (completion_tracker): New static variable.
1015         (completion_list_add_name): Call maybe_add_completion.
1016         (default_make_symbol_completion_list_break_on_1): Renamed from
1017         default_make_symbol_completion_list_break_on.  Maintain
1018         completion_tracker across calls to completion_list_add_name.
1019         (default_make_symbol_completion_list_break_on): New function.
1020         * top.c (init_main): Set rl_completion_display_matches_hook.
1021         * tui/tui-io.c: Include completer.h.
1022         (tui_old_rl_display_matches_hook): New static global.
1023         (tui_rl_display_match_list): Notify user if max-completions reached.
1024         (tui_setup_io): Save/restore rl_completion_display_matches_hook.
1025         * NEWS (New Options): Mention set/show max-completions.
1026
1027 2015-01-31  Gary Benson  <gbenson@redhat.com>
1028
1029         * symtab.c (struct add_name_data) <code>: New field.
1030         Updated comments.
1031         (add_symtab_completions): New function.
1032         (symtab_expansion_callback): Likewise.
1033         (default_make_symbol_completion_list_break_on): Set datum.code.
1034         Move minimal symbol scan before calling expand_symtabs_matching.
1035         Scan known primary symtabs for externs and statics before calling
1036         expand_symtabs_matching.  Pass symtab_expansion_callback as
1037         expansion_notify argument to expand_symtabs_matching.  Do not scan
1038         primary symtabs for externs and statics after calling
1039         expand_symtabs_matching.
1040
1041 2015-01-31  Gary Benson  <gbenson@redhat.com>
1042
1043         * symfile.h (expand_symtabs_exp_notify_ftype): New typedef.
1044         (struct quick_symbol_functions) <expand_symtabs_matching>:
1045         New argument expansion_notify.  All uses updated.
1046         (expand_symtabs_matching): New argument expansion_notify.
1047         All uses updated.
1048         * symfile-debug.c (debug_qf_expand_symtabs_matching):
1049         Also print expansion notify.
1050         * symtab.c (expand_symtabs_matching_via_partial): Call
1051         expansion_notify whenever a partial symbol table is expanded.
1052         * dwarf2read.c (dw2_expand_symtabs_matching): Call
1053         expansion_notify whenever a symbol table is instantiated.
1054
1055 2015-01-31  Doug Evans  <xdje42@gmail.com>
1056
1057         * cli-out.c: #include completer.h, readline/readline.h.
1058         (cli_mld_crlf, cli_mld_putch, cli_mld_puts): New functions.
1059         (cli_mld_flush, cld_mld_erase_entire_line): Ditto.
1060         (cli_mld_beep, cli_mld_read_key, cli_display_match_list): Ditto.
1061         * cli-out.h (cli_display_match_list): Declare.
1062         * completer.c (MB_INVALIDCH, MB_NULLWCH): New macros.
1063         (ELLIPSIS_LEN): Ditto.
1064         (gdb_get_y_or_n, gdb_display_match_list_pager): New functions.
1065         (gdb_path_isdir, gdb_printable_part, gdb_fnwidth): Ditto.
1066         (gdb_fnprint, gdb_print_filename): Ditto.
1067         (gdb_complete_get_screenwidth, gdb_display_match_list_1): Ditto.
1068         (gdb_display_match_list): Ditto.
1069         * completer.h (mld_crlf_ftype, mld_putch_ftype): New typedefs.
1070         (mld_puts_ftype, mld_flush_ftype, mld_erase_entire_line_ftype): Ditto.
1071         (mld_beep_ftype, mld_read_key_ftype): Ditto.
1072         (match_list_displayer): New struct.
1073         (gdb_display_match_list): Declare.
1074         * top.c (init_main): Set rl_completion_display_matches_hook.
1075         * tui/tui-io.c: #include completer.h.
1076         (printable_part, PUTX, print_filename, get_y_or_n): Delete.
1077         (tui_mld_crlf, tui_mld_putch, tui_mld_puts): New functions.
1078         (tui_mld_flush, tui_mld_erase_entire_line, tui_mld_beep): Ditto.
1079         (tui_mld_getc, tui_mld_read_key): Ditto.
1080         (tui_rl_display_match_list): Rewrite.
1081         (tui_handle_resize_during_io): New arg for_completion.  All callers
1082         updated.
1083
1084 2015-01-31  Doug Evans  <xdje42@gmail.com>
1085
1086         Add symbol lookup cache.
1087         * NEWS: Document new options and commands.
1088         * symtab.c (symbol_cache_key): New static global.
1089         (DEFAULT_SYMBOL_CACHE_SIZE, MAX_SYMBOL_CACHE_SIZE): New macros.
1090         (SYMBOL_LOOKUP_FAILED): New macro.
1091         (symbol_cache_slot_state): New enum.
1092         (block_symbol_cache): New struct.
1093         (symbol_cache): New struct.
1094         (new_symbol_cache_size, symbol_cache_size): New static globals.
1095         (hash_symbol_entry, eq_symbol_entry): New functions.
1096         (symbol_cache_byte_size, resize_symbol_cache): New functions.
1097         (make_symbol_cache, free_symbol_cache): New functions.
1098         (get_symbol_cache, symbol_cache_cleanup): New function.
1099         (set_symbol_cache_size, set_symbol_cache_size_handler): New functions.
1100         (symbol_cache_lookup, symbol_cache_clear_slot): New function.
1101         (symbol_cache_mark_found, symbol_cache_mark_not_found): New functions.
1102         (symbol_cache_flush, symbol_cache_dump): New functions.
1103         (maintenance_print_symbol_cache): New function.
1104         (maintenance_flush_symbol_cache): New function.
1105         (symbol_cache_stats): New function.
1106         (maintenance_print_symbol_cache_statistics): New function.
1107         (symtab_new_objfile_observer): New function.
1108         (symtab_free_objfile_observer): New function.
1109         (lookup_static_symbol, lookup_global_symbol): Use symbol cache.
1110         (_initialize_symtab): Init symbol_cache_key.  New parameter
1111         maint symbol-cache-size.  New maint commands print symbol-cache,
1112         print symbol-cache-statistics, flush-symbol-cache.
1113         Install new_objfile, free_objfile observers.
1114
1115 2015-01-31  Joel Brobecker  <brobecker@adacore.com>
1116
1117         PR symtab/17855
1118         * symfile.c (clear_symtab_users): Move call to breakpoint_re_set
1119         to end.
1120
1121 2015-01-31  Doug Evans  <xdje42@gmail.com>
1122
1123         * NEWS: Mention inlined scripts in .debug_gdb_scripts section.
1124         * auto-load.c: #include ctype.h.
1125         (struct auto_load_pspace_info): Replace member loaded_scripts with
1126         new members loaded_script_files, loaded_script_texts.
1127         (auto_load_pspace_data_cleanup): Update.
1128         (init_loaded_scripts_info): Update.
1129         (get_auto_load_pspace_data_for_loading): Update.
1130         (maybe_add_script_file): Renamed from maybe_add_script.  All callers
1131         updated.
1132         (maybe_add_script_text): New function.
1133         (clear_section_scripts): Update.
1134         (source_script_file, execute_script_contents): New functions.
1135         (source_section_scripts): Add support for
1136         SECTION_SCRIPT_ID_PYTHON_TEXT, SECTION_SCRIPT_ID_GUILE_TEXT.
1137         (print_scripts): New function.
1138         (auto_load_info_scripts): Also print inlined scripts.
1139         (maybe_print_unsupported_script_warning): Renamed from
1140         unsupported_script_warning_print.  All callers updated.
1141         (maybe_print_script_not_found_warning): Renamed from
1142         script_not_found_warning_print.  All callers updated.
1143         * extension-priv.h (struct extension_language_script_ops): New member
1144         objfile_script_executor.
1145         * extension.c (ext_lang_objfile_script_executor): New function.
1146         * extension.h (objfile_script_executor_func): New typedef.
1147         (ext_lang_objfile_script_executor): Declare.
1148         * guile/guile-internal.h (gdbscm_execute_objfile_script): Declare.
1149         * guile/guile.c (guile_extension_script_ops): Update.
1150         * guile/scm-objfile.c (gdbscm_execute_objfile_script): New function.
1151         * python/python.c (python_extension_script_ops): Update.
1152         (gdbpy_execute_objfile_script): New function.
1153
1154 2015-01-31  Eli Zaretskii  <eliz@gnu.org>
1155
1156         * tui/tui-io.c (tui_expand_tabs): New function.
1157         (tui_puts, tui_redisplay_readline): Expand TABs into the
1158         appropriate number of spaces.
1159         * tui/tui-regs.c: Include tui-io.h.
1160         (tui_register_format): Call tui_expand_tabs to expand TABs into
1161         the appropriate number of spaces.
1162         * tui/tui-io.h: Add prototype for tui_expand_tabs.
1163
1164 2015-01-30  Doug Evans  <dje@google.com>
1165
1166         * NEWS: "info source" command now display producer string if present.
1167         * source.c (source_info): Print producer string if present.
1168
1169 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1170
1171         * varobj.c (varobj_delete): Fix comment.
1172
1173 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1174
1175         * varobj.c (create_child): Modify comment.
1176
1177 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1178
1179         * ada-varobj.c (ada_number_of_children): Constify struct varobj *
1180         parameter.
1181         (ada_name_of_variable): Same.
1182         (ada_path_expr_of_child): Same.
1183         (ada_value_of_variable): Same.
1184         (ada_value_is_changeable_p): Same.
1185         (ada_value_has_mutated): Same.
1186         * c-varobj.c (varobj_is_anonymous_child): Same.
1187         (c_is_path_expr_parent): Same.
1188         (c_number_of_children): Same.
1189         (c_name_of_variable): Same.
1190         (c_path_expr_of_child): Same.
1191         (get_type): Same.
1192         (c_value_of_variable): Same.
1193         (cplus_number_of_children): Same.
1194         (cplus_name_of_variable): Same.
1195         (cplus_path_expr_of_child): Same.
1196         (cplus_value_of_variable): Same.
1197         * jv-varobj.c (java_number_of_children): Same.
1198         (java_name_of_variable): Same.
1199         (java_path_expr_of_child): Same.
1200         (java_value_of_variable): Same.
1201         * varobj.c (number_of_children): Same.
1202         (name_of_variable): Same.
1203         (is_root_p): Same.
1204         (varobj_ensure_python_env): Same.
1205         (varobj_get_objname): Same.
1206         (varobj_get_expression): Same.
1207         (varobj_get_display_format): Same.
1208         (varobj_get_display_hint): Same.
1209         (varobj_has_more): Same.
1210         (varobj_get_thread_id): Same.
1211         (varobj_get_frozen): Same.
1212         (dynamic_varobj_has_child_method): Same.
1213         (varobj_get_gdb_type): Same.
1214         (is_path_expr_parent): Same.
1215         (varobj_default_is_path_expr_parent): Same.
1216         (varobj_get_language): Same.
1217         (varobj_get_attributes): Same.
1218         (varobj_is_dynamic_p): Same.
1219         (varobj_get_child_range): Same.
1220         (varobj_value_has_mutated): Same.
1221         (varobj_get_value_type): Same.
1222         (number_of_children): Same.
1223         (name_of_variable): Same.
1224         (check_scope): Same.
1225         (varobj_editable_p): Same.
1226         (varobj_value_is_changeable_p): Same.
1227         (varobj_floating_p): Same.
1228         (varobj_default_value_is_changeable_p): Same.
1229
1230 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1231
1232         * varobj.c (varobj_get_path_expr): Set var->path_expr.
1233         * c-varobj.c (c_path_expr_of_child): Set local var instead of
1234         child->path_expr.
1235         (cplus_path_expr_of_child): Same.
1236
1237 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1238
1239         * mi-cmd-var.c (print_varobj): Free varobj_get_expression
1240         result.
1241         (mi_cmd_var_info_expression): Same.
1242         * varobj.c (varobj_get_expression): Mention in the comment that
1243         the result must by freed by the caller.
1244
1245 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1246
1247         * mi/mi-cmd-var.c (mi_cmd_var_info_type): Free result of
1248         varobj_get_type.
1249         (varobj_update_one): Same.
1250         * varobj.c (update_type_if_necessary): Free curr_type_str and
1251         new_type_str.
1252         (varobj_get_type): Specify in comment that the result needs to be
1253         freed by the caller.
1254
1255 2015-01-29  Doug Evans  <dje@google.com>
1256
1257         PR symtab/17890
1258         * dwarf2read.c (dwarf_decode_line_header): Punt if version > 4.
1259
1260 2015-01-25  Mark Wielaard  <mjw@redhat.com>
1261
1262         * dwarf2read.c (checkproducer): Call producer_is_gcc.
1263         * utils.c (producer_is_gcc_ge_4): Likewise.
1264         (producer_is_gcc): New function.
1265         * utils.h (producer_is_gcc): New declaration.
1266
1267 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
1268
1269         * gdbtypes.h (struct dynamic_prop): New PROP_ADDR_OFFSET enum
1270         kind.
1271         * gdbtypes.c (resolve_dynamic_type_internal): Replace "addr"
1272         parameter by "addr_stack" parameter.
1273         (resolve_dynamic_range): Replace "addr" parameter by
1274         "stack_addr" parameter.  Update function documentation.
1275         Update code accordingly.
1276         (resolve_dynamic_array, resolve_dynamic_union)
1277         (resolve_dynamic_struct, resolve_dynamic_type_internal): Likewise.
1278         (resolve_dynamic_type): Update code, following the changes made
1279         to resolve_dynamic_type_internal's interface.
1280         * dwarf2loc.h (struct property_addr_info): New.
1281         (dwarf2_evaluate_property): Replace "address" parameter
1282         by "addr_stack" parameter.  Adjust function documentation.
1283         (struct dwarf2_offset_baton): New.
1284         (struct dwarf2_property_baton): Update documentation of
1285         field "referenced_type" to be more general. New field
1286         "offset_info" in union data field.
1287         * dwarf2loc.c (dwarf2_evaluate_property): Replace "address"
1288         parameter by "addr_stack" parameter.  Adjust code accordingly.
1289         Add support for PROP_ADDR_OFFSET properties.
1290         * dwarf2read.c (attr_to_dynamic_prop): Add support for
1291         DW_AT_data_member_location attributes as well.  Use case
1292         statements instead of if/else condition.
1293
1294 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
1295
1296         * ada-varobj.c (ada_varobj_get_array_number_of_children):
1297         Return zero if PARENT_VALUE is NULL and parent_type's
1298         range type is dynamic.
1299
1300 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
1301
1302         * gdbtypes.c (is_dynamic_type_internal) <TYPE_CODE_RANGE>: Return
1303         nonzero if the type's subtype is dynamic.
1304         (resolve_dynamic_range): Also resolve the range's subtype.
1305
1306 2015-01-29  Alexander Klimov  <alserkli@inbox.ru>  (tiny patch)
1307
1308         Pushed by Joel Brobecker  <brobecker@adacore.com>.
1309         * symfile.c (unmap_overlay_command): Initialize sec to NULL.
1310
1311 2015-01-27  Doug Evans  <dje@google.com>
1312
1313         * NEWS: Mention gdb.Objfile.username.
1314         * python/py-objfile.c (objfpy_get_username): New function.
1315         (objfile_getset): Add "username".
1316
1317 2015-01-24  Mark Wielaard  <mjw@redhat.com>
1318
1319         * stack.c (return_command): Markup warning message with _.
1320
1321 2015-01-24  Doug Evans  <xdje42@gmail.com>
1322
1323         * gdbtypes.h (TYPE_TYPE_SPECIFIC): Delete.
1324
1325 2015-01-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
1326
1327         Fix 100x slowdown regression on DWZ files.
1328         * dwarf2read.c (struct dwarf2_per_objfile): Add line_header_hash.
1329         (struct line_header): Add offset and offset_in_dwz.
1330         (dwarf_decode_lines): Add parameter decode_mapping to the declaration.
1331         (free_line_header_voidp): New declaration.
1332         (line_header_hash, line_header_hash_voidp, line_header_eq_voidp): New
1333         functions.
1334         (dwarf2_build_include_psymtabs): Update dwarf_decode_lines caller.
1335         (handle_DW_AT_stmt_list): Use line_header_hash.
1336         (free_line_header_voidp): New function.
1337         (dwarf_decode_line_header): Initialize offset and offset_in_dwz.
1338         (dwarf_decode_lines): New parameter decode_mapping, use it.
1339         (dwarf2_free_objfile): Free line_header_hash.
1340
1341 2015-01-23  Simon Marchi  <simon.marchi@ericsson.com>
1342
1343         PR gdb/17416
1344         * valops.c (value_rtti_indirect_type): Catch exception thrown by
1345         value_ind.
1346
1347 2015-01-15  Mark Wielaard  <mjw@redhat.com>
1348
1349         * dwarf2read.c (read_subroutine_type): Set TYPE_NO_RETURN from
1350         DW_AT_noreturn.
1351         * gdbtypes.h (struct func_type): Add is_noreturn field flag. Make
1352         calling_convention an 8 bit bit field.
1353         (TYPE_NO_RETURN): New macro.
1354         * infcmd.c (finish_command): Query if function does not return
1355         normally.
1356         * stack.c (return_command): Likewise.
1357
1358 2015-01-23  Pedro Alves  <palves@redhat.com>
1359
1360         * linux-nat.c (linux_is_async_p): New macro.
1361         (linux_nat_is_async_p):
1362         (linux_nat_terminal_inferior): Check whether the target can async
1363         instead of whether it is already async.
1364         (linux_nat_terminal_ours): Don't check whether the target is
1365         async.
1366         (linux_async_pipe): Use linux_is_async_p.
1367
1368 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1369
1370         * NEWS (Changes since GDB 7.9): Add 'thread apply all' option
1371         '-ascending'.
1372         * thread.c (tp_array_compar_ascending, tp_array_compar): New.
1373         (thread_apply_all_command): Parse CMD for tp_array_compar_ascending.
1374         Sort tp_array using tp_array_compar.
1375         (_initialize_thread): Extend thread_apply_all_command help.
1376
1377 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1378
1379         * corelow.c (core_open): Call also thread_command.
1380         * gdbthread.h (thread_command): New prototype moved from ...
1381         * thread.c (thread_command): ... here.
1382         (thread_command): Make it global.
1383
1384 2015-01-22  Pedro Alves  <palves@redhat.com>
1385
1386         * configure.ac [*mingw32*]: Check $curses_found instead of
1387         $prefer_curses.
1388         * configure: Regenerate.
1389         * windows-termcap.c: Remove HAVE_CURSES_H, HAVE_NCURSES_H and
1390         HAVE_NCURSES_NCURSES_H checks.
1391
1392 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
1393
1394         * tui/tui.c (tui_enable) [__MINGW32__]: If the call to 'newterm'
1395         fails with the 1st arg NULL, try again with "unknown".  Don't test
1396         the "cup" capability: it isn't supported by the Windows port of
1397         ncurses, but the Windows console driver is still capable of
1398         supporting TUI.
1399
1400 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
1401
1402         * compile/compile.c (_initialize_compile): Use -fPIE for compile_args.
1403
1404 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
1405
1406         * Makefile.in (HFILES_NO_SRCDIR): Remove ada-varobj.h.
1407         (ALLDEPFILES): Remove irix5-nat.c.  These two are part of the
1408         reason that "make TAGS" is broken.
1409
1410 2015-01-22  Chen Gang  <gang.chen.5i5j@gmail.com>
1411
1412         * hppa-tdep.c (inst_saves_gr): Fix logical working flow issues
1413         and check additional store instructions.
1414
1415 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
1416
1417         * MAINTAINERS (Write After Approval): Add "Wei-cheng Wang".
1418
1419 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
1420
1421         * ppc-linux-tdep.c (ppc_skip_trampoline_code,
1422         ppc_canonicalize_syscall, ppc_linux_syscall_record,
1423         ppc_linux_record_signal, ppc_init_linux_record_tdep): Add comments.
1424         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
1425         * rs6000-tdep.c (rs6000_epilogue_frame_cache,
1426         rs6000_epilogue_frame_this_id, rs6000_epilogue_frame_prev_register,
1427         rs6000_epilogue_frame_sniffer, ppc_record_vsr, ppc_process_record_op4,
1428         ppc_process_record_op19, ppc_process_record_op31,
1429         ppc_process_record_op59, ppc_process_record_op60,
1430         ppc_process_record_op63): Likewise.
1431
1432 2015-01-20  Joel Brobecker  <brobecker@adacore.com>
1433
1434         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason_string)
1435         (linux_ptrace_test_ret_to_nx): Use safe_strerror instead of
1436         strerror.
1437
1438 2015-01-20  Wei-cheng Wang  <cole945@gmail.com>
1439
1440         * rs6000-tdep.c (ppc_process_record_op4, ppc_process_record_op19,
1441         ppc_process_record_op31, ppc_process_record_op59,
1442         ppc_process_record_op60, ppc_process_record_op63,
1443         ppc_process_record): Fix -Wformat warning.
1444         * rs6000-tdep.c (rs6000_epilogue_frame_cache, ppc_process_record_op60):
1445         Remove unused variables.
1446
1447 2015-01-20  Chen Gang  <gang.chen.5i5j@gmail.com>
1448
1449         * MAINTAINERS (Write After Approval): Add "Chen Gang".
1450
1451 2015-01-19  Eli Zaretskii  <eliz@gnu.org>
1452
1453         * configure.ac [*mingw32*]: Only add windows-termcap.o to
1454         CONFIG_OBS if not building with a curses library.
1455         * configure: Regenerate.
1456
1457         * windows-termcap.c: Include defs.h.  Make the whole body empty if
1458         either one of HAVE_CURSES_H or HAVE_NCURSES_H or
1459         HAVE_NCURSES_NCURSES_H is defined.
1460
1461 2015-01-19  Joel Brobecker  <brobecker@adacore.com>
1462
1463         * rs6000-tdep.c (rs6000_gdbarch_init): Move divide operator
1464         from end of line to start of next line.
1465
1466 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
1467
1468         * ppc-linux-tdep.c (ppc_skip_trampoline_code):
1469         Scan PLT stub backward for reverse debugging.
1470         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
1471
1472 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
1473             Ulrich Weigand  <uweigand@de.ibm.com>
1474
1475         * configure.tgt (powerpc*-*-linux): Add linux-record.o to
1476         gdb_target_obs.
1477         (ppc_linux_record_tdep, ppc64_linux_record_tdep): New for linux syscall
1478         record.
1479         (ppc_canonicalize_syscall, ppc_linux_syscall_record,
1480         ppc_linux_record_signal, ppc_init_linux_record_tdep): New functions.
1481         (ppc_linux_init_abi): Set process_record, process_record_signal.
1482         * ppc-tdep.h (struct gdbarch_tdep): Add ppc_syscall_record and
1483         ppc_linux_record_tdep to gdbarch_tdep.
1484         (ppc_process_record): New declaration.
1485         * rs6000-tdep.c (ppc_record_vsr, ppc_process_record_op4,
1486         ppc_process_record_op19, ppc_process_record_op31,
1487         ppc_process_record_op59, ppc_process_record_op60,
1488         ppc_process_record_op63, ppc_process_record): New functions.
1489
1490 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
1491
1492         * rs6000-tdep.c (rs6000_in_function_epilogue_p): Rename to
1493         rs6000_in_function_epilogue_frame_p and add an argument
1494         for frame_info.
1495         (rs6000_epilogue_frame_cache, rs6000_epilogue_frame_this_id,
1496         rs6000_epilogue_frame_prev_register, rs6000_epilogue_frame_sniffer):
1497         New functions.
1498         (rs6000_epilogue_frame_unwind): New.
1499         (rs6000_gdbarch_init): Append epilogue unwinder.
1500
1501 2015-01-16  Sergio Durigan Junior  <sergiodj@redhat.com>
1502
1503         * nat/linux-personality.c: Replace "#ifndef
1504         HAVE_DECL_ADDR_NO_RANDOMIZE" by "#if
1505         !HAVE_DECL_ADDR_NO_RANDOMIZE", fixing a regression in RHEL-5
1506         systems.
1507
1508 2015-01-16  Eli Zaretskii  <eliz@gnu.org>
1509
1510         * tui/tui-win.c (tui_rehighlight_all, tui_set_var_cmd): New
1511         functions.
1512         (_initialize_tui_win) <border-kind, border-mode>:
1513         <active-border-mode>: Use tui_set_var_cmd as the "set" function.
1514         (tui_set_tab_width_command): Fix the commentary.
1515
1516         * tui/tui-win.h: Add prototype for tui_rehighlight_all.
1517
1518         * tui/tui-win.c (tui_scroll_left_command, tui_scroll_right_command):
1519         Doc fix.
1520         (tui_set_tab_width_command): Delete and recreate the source and
1521         the disassembly windows, to show the effect of the changed tab
1522         size immediately.
1523
1524         * tui/tui-data.h (LINE_PREFIX): Make shorter
1525         (MAX_PID_WIDTH): Enlarge from 14 to 19, to leave enough space for
1526         "Thread NNNNN.XXXX" thread ID notation on Windows.
1527
1528 2015-01-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
1529
1530         Fix gcc-5 compilation.
1531         * hppa-tdep.c (inst_saves_gr): Fix parentheses typo.
1532
1533 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
1534
1535         * Makefile.in (HFILES_NO_SRCDIR): Add nat/linux-personality.h.
1536         (linux-personality.o): New rule.
1537         * common/common-defs.h: Include <stdint.h>.
1538         * config/aarch64/linux.mh (NATDEPFILES): Include
1539         linux-personality.o.
1540         * config/alpha/alpha-linux.mh (NATDEPFILES): Likewise.
1541         * config/arm/linux.mh (NATDEPFILES): Likewise.
1542         * config/i386/linux64.mh (NATDEPFILES): Likewise.
1543         * config/i386/linux.mh (NATDEPFILES): Likewise.
1544         * config/ia64/linux.mh (NATDEPFILES): Likewise.
1545         * config/m32r/linux.mh (NATDEPFILES): Likewise.
1546         * config/m68k/linux.mh (NATDEPFILES): Likewise.
1547         * config/mips/linux.mh (NATDEPFILES): Likewise.
1548         * config/pa/linux.mh (NATDEPFILES): Likewise.
1549         * config/powerpc/linux.mh (NATDEPFILES): Likewise.
1550         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Likewise.
1551         * config/powerpc/spu-linux.mh (NATDEPFILES): Likewise.
1552         * config/s390/linux.mh (NATDEPFILES): Likewise.
1553         * config/sparc/linux64.mh (NATDEPFILES): Likewise.
1554         * config/sparc/linux.mh (NATDEPFILES): Likewise.
1555         * config/tilegx/linux.mh (NATDEPFILES): Likewise.
1556         * config/xtensa/linux.mh (NATDEPFILES): Likewise.
1557         * defs.h: Remove #include <stdint.h> (moved to
1558         common/common-defs.h).
1559         * linux-nat.c: Include nat/linux-personality.h.  Remove #include
1560         <sys/personality.h>; do not define ADDR_NO_RANDOMIZE (moved to
1561         nat/linux-personality.c).
1562         (linux_nat_create_inferior): Remove code to disable address space
1563         randomization (moved to nat/linux-personality.c).  Create cleanup
1564         to disable address space randomization.
1565         * nat/linux-personality.c: New file.
1566         * nat/linux-personality.h: Likewise.
1567
1568 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
1569
1570         * Makefile.in (ALLDEPFILES): Including common/mingw-strerror.c and
1571         common/posix-strerror.c.
1572         (posix-strerror.o): New rule.
1573         (mingw-strerror.o): Likewise.
1574         * common/common-utils.h (safe_strerror): Move prototype to here,
1575         from utils.h.
1576         * common/common.host: New file.
1577         * common/mingw-strerror.c: Likewise.
1578         * common/posix-strerror.c: Likewise.
1579         * configure: Regenerated.
1580         * configure.ac: Source common/common.host.  Add variable
1581         common_host_obs to gdb_host_obs.
1582         * contrib/ari/gdb_ari.sh: Mention gdb/common/mingw-strerror.c and
1583         gdb/common/posix-strerror.c when warning about the use of
1584         strerror.
1585         * mingw-hdep.c (safe_strerror): Remove definition; move it to
1586         common/mingw-strerror.c.
1587         * posix-hdep.c (safe_strerror): Remove definition; move it to
1588         common/posix-hdep.c.
1589         * utils.h (safe_strerror): Remove prototype; move to
1590         common/common-utils.h.
1591
1592 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
1593
1594         GDB 7.8.2 released.
1595
1596 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
1597
1598         * ada-lang.c (ada_array_bound_from_type): Ignore array's parallel
1599         ___XA type if the array has already been fixed.
1600
1601 2015-01-14  Yao Qi  <yao@codesourcery.com>
1602
1603         * Makefile.in (ppc-linux.o): New rule.
1604         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Add ppc-linux.o.
1605         * configure.ac: AC_CHECK_FUNCS(getauxval).
1606         * config.in: Re-generated.
1607         * configure: Re-generated.
1608         * nat/ppc-linux.h [__powerpc64__] (ppc64_64bit_inferior_p):
1609         Declare.
1610         * nat/ppc-linux.c: New file.
1611         * ppc-linux-nat.c (ppc_linux_target_wordsize) [__powerpc64__]:
1612         Call ppc64_64bit_inferior_p.
1613
1614 2015-01-14  Yao Qi  <yao@codesourcery.com>
1615
1616         * ppc-linux-nat.c (PT_ORIG_R3, PT_TRAP): Move to
1617         nat/ppc-linux.h.
1618         (PPC_FEATURE_CELL, PPC_FEATURE_BOOKE): Likewise.
1619         (PPC_FEATURE_HAS_DFP): Likewise.
1620         (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
1621         (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
1622         (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
1623         Include "nat/ppc-linux.h".
1624         * nat/ppc-linux.h: New file.
1625         * Makefile.in (HFILES_NO_SRCDIR): Add nat/ppc-linux.h.
1626
1627 2015-01-14  Pedro Alves  <palves@redhat.com>
1628
1629         PR gdb/17525
1630         * breakpoint.c: Include "interps.h".
1631         (bpstat_do_actions_1): Also check whether the interpreter is
1632         async.
1633
1634 2015-01-14  Pedro Alves  <palves@redhat.com>
1635
1636         PR cli/17828
1637         * infrun.c (reinstall_readline_callback_handler_cleanup): Don't
1638         reinstall if the interpreter is sync.
1639
1640 2015-01-13  Doug Evans  <dje@google.com>
1641
1642         * objfiles.c (objfile_filename): New function.
1643         * objfiles.h (objfile_filename): Declare it.
1644         (objfile_name): Add function comment.
1645         * python/py-objfile.c (objfpy_lookup_objfile_by_name): Try both the
1646         bfd file name (which may be realpath'd), and the original name.
1647
1648 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1649
1650         * NEWS: Create a new section for the next release branch.
1651         Rename the section of the current branch, now that it has
1652         been cut.
1653
1654 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1655
1656         GDB 7.9 branch created (92fc2e6978d9a7c8324c7e851dbee59e22ec7a37):
1657         * version.in: Bump version to 7.9.50.DATE-cvs.
1658
1659 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1660
1661         * nat/linux-procfs.c (linux_proc_attach_tgid_threads):
1662         Remove trailing new-line in argument of call to warning.
1663
1664 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1665
1666         * linux-nat.c (attach_proc_task_lwp_callback): Remove trailing
1667         new-line in argument of call to "warning".
1668
1669 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1670
1671         * ada-lang.c (ada_lookup_symbol_nonlocal): If name not found
1672         in static block, then try searching for primitive types.
1673
1674 2015-01-12  Patrick Palka  <patrick@parcs.ath.cx>
1675
1676         * top.h (gdb_add_history): Declare.
1677         * top.c (command_count): New variable.
1678         (gdb_add_history): New function.
1679         (gdb_safe_append_history): New static function.
1680         (quit_force): Call it.
1681         (command_line_input): Use gdb_add_history instead of
1682         add_history.
1683         * event-top.c (command_line_handler): Likewise.
1684
1685 2015-01-12  James Clarke  <jrtc27@jrtc27.com>  (tiny patch)
1686
1687         PR gdb/17046
1688         * darwin-nat.c: Replace <machine/setjmp.h> #include by
1689         <setjmp.h> #include.
1690
1691 2015-01-11  Doug Evans  <xdje42@gmail.com>
1692
1693         * dwarf2read.c (compute_delayed_physnames): Use TYPE_FN_FIELD_PHYSNAME.
1694
1695 2015-01-11  Doug Evans  <xdje42@gmail.com>
1696
1697         PR gdb/15830
1698         * NEWS: The "maint demangle" command is renamed as "demangle".
1699         * demangle.c: #include cli/cli-utils.h, language.h.
1700         (demangle_command): New function.
1701         (_initialize_demangle): Add new command "demangle".
1702         * maint.c (maintenance_demangle): Stub out.
1703         (_initialize_maint_cmds): Update help text for "maint demangle",
1704         and mark as deprecated.
1705
1706 2015-01-11  Mark Kettenis  <kettenis@gnu.org>
1707
1708         * inf-ptrace.c (inf_ptrace_follow_fork): Adjust now that
1709         inferior_thread is a function.
1710
1711 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
1712
1713         * Makefile.in (.y.c): Don't munge yacc's #line
1714         directives.
1715
1716 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
1717
1718         * utils.c (defaulted_query): Rewrite to use gdb_readline_wrapper
1719         to prompt for input.
1720         * tui/tui-hooks.c (tui_query_hook): Remove.
1721         (tui_install_hooks): Don't set deprecated_query_hook.
1722         * tui/tui-io.c (tui_redisplay_readline): Fix off-by-one error in
1723         height calculation.  Always update the command window's cur_line.
1724
1725 2015-01-09  Pedro Alves  <palves@redhat.com>
1726
1727         * breakpoint.c (hardware_breakpoint_inserted_here_p): New
1728         function.
1729         * breakpoint.h (hardware_breakpoint_inserted_here_p): New
1730         declaration.
1731         * linux-nat.c (linux_nat_status_is_event): Move higher up in file.
1732         (linux_resume_one_lwp): Store the thread's PC.  Adjust to clear
1733         stop_reason.
1734         (check_stopped_by_watchpoint): New function.
1735         (save_sigtrap): Reimplement.
1736         (linux_nat_stopped_by_watchpoint): Adjust.
1737         (linux_nat_lp_status_is_event): Delete.
1738         (stop_wait_callback): Only call save_sigtrap after storing the
1739         pending status.
1740         (status_callback): If the thread had been stopped for a breakpoint
1741         that has since been removed, discard the event and resume the LWP.
1742         (count_events_callback, select_event_lwp_callback): Use
1743         lwp_status_pending_p instead of linux_nat_lp_status_is_event.
1744         (cancel_breakpoint): Rename to ...
1745         (check_stopped_by_breakpoint): ... this.  Record whether the LWP
1746         stopped for a software breakpoint or hardware breakpoint.
1747         (select_event_lwp): Only give preference to the stepping LWP in
1748         all-stop mode.  Adjust comments.
1749         (stop_and_resume_callback): Remove references to new_pending_p.
1750         (linux_nat_filter_event): Likewise.  Leave exit events of the
1751         leader thread pending here.  Handle signal short circuiting here.
1752         Only call save_sigtrap after storing the pending waitstatus.
1753         (linux_nat_wait_1): Remove 'retry' label.  Remove references to
1754         new_pending.  Don't handle leaving events the caller is not
1755         interested in pending here, nor handle signal short-circuiting
1756         here.  Also give equal priority to all LWPs that have had events
1757         in non-stop mode.  If reporting a software breakpoint event,
1758         unadjust the LWP's PC.
1759         * linux-nat.h (enum lwp_stop_reason): New.
1760         (struct lwp_info) <stop_pc>: New field.
1761         (struct lwp_info) <stopped_by_watchpoint>: Delete field.
1762         (struct lwp_info) <stop_reason>: New field.
1763         * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust.
1764
1765 2015-01-09  Pedro Alves  <palves@redhat.com>
1766
1767         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
1768         Set the LWP's 'resumed' flag.
1769
1770 2015-01-09  Pedro Alves  <palves@redhat.com>
1771
1772         * linux-nat.c (linux_resume_one_lwp): New function.
1773         (resume_lwp): Use lwp_status_pending_p and linux_resume_one_lwp.
1774         (linux_nat_resume): Use lwp_status_pending_p and
1775         linux_resume_one_lwp.
1776         (linux_handle_syscall_trap): Use linux_resume_one_lwp.
1777         (linux_handle_extended_wait): Use linux_resume_one_lwp.
1778         (status_callback, running_callback): Use lwp_status_pending_p.
1779         (lwp_status_pending_p): New function.
1780         (stop_and_resume_callback): Use lwp_status_pending_p.
1781         (linux_nat_filter_event): Use linux_resume_one_lwp.
1782         (linux_nat_wait_1): Always use status_callback to look for an LWP
1783         with a pending status.  Use linux_resume_one_lwp.
1784         (resume_stopped_resumed_lwps): Use lwp_status_pending_p and
1785         linux_resume_one_lwp.
1786
1787 2015-01-09  Pedro Alves  <palves@redhat.com>
1788
1789         * breakpoint.c (bp_location_inserted_here_p): New function,
1790         factored out from ...
1791         (breakpoint_inserted_here_p): ... here.  Use
1792         ALL_BP_LOCATIONS_AT_ADDR.
1793         (software_breakpoint_inserted_here_p): Use
1794         bp_location_inserted_here_p and ALL_BP_LOCATIONS_AT_ADDR.
1795
1796 2014-01-09  Pedro Alves  <palves@redhat.com>
1797
1798         Skip enabling event reporting if the kernel supports
1799         PTRACE_EVENT_CLONE.
1800         * linux-thread-db.c: Include "nat/linux-ptrace.h".
1801         (thread_db_use_events): New function.
1802         (try_thread_db_load_1): Check thread_db_use_events before enabling
1803         event reporting.
1804         (update_thread_state): New function.
1805         (attach_thread): Use it.  Check thread_db_use_events before
1806         enabling event reporting.
1807         (thread_db_detach): Check thread_db_use_events before disabling
1808         event reporting.
1809         (find_new_threads_callback): Check thread_db_use_events before
1810         enabling event reporting.  Update the thread's state if not using
1811         libthread_db events.
1812
1813 2015-01-09  Pedro Alves  <palves@redhat.com>
1814
1815         * linux-nat.c (lin_lwp_attach_lwp): Assert that the lwp id we're
1816         about to wait for is > 0.
1817         * linux-thread-db.c (find_new_threads_callback): Ignore thread if
1818         the kernel thread ID is -1.
1819
1820 2015-01-09  Pedro Alves  <palves@redhat.com>
1821
1822         * linux-nat.c (attach_proc_task_lwp_callback): New function.
1823         (linux_nat_attach): Use linux_proc_attach_tgid_threads.
1824         (wait_lwp, linux_nat_filter_event): If not set yet, set the lwp's
1825         ptrace option flags.
1826         * linux-nat.h (struct lwp_info) <must_set_ptrace_flags>: New
1827         field.
1828         * nat/linux-procfs.c: Include <dirent.h>.
1829         (linux_proc_get_int): New parameter "warn".  Handle it.
1830         (linux_proc_get_tgid): Adjust.
1831         (linux_proc_get_tracerpid): Rename to ...
1832         (linux_proc_get_tracerpid_nowarn): ... this.
1833         (linux_proc_pid_get_state): New function, factored out from
1834         (linux_proc_pid_has_state): ... this.  Add new parameter "warn"
1835         and handle it.
1836         (linux_proc_pid_is_gone): New function.
1837         (linux_proc_pid_is_stopped): Adjust.
1838         (linux_proc_pid_is_zombie_maybe_warn)
1839         (linux_proc_pid_is_zombie_nowarn): New functions.
1840         (linux_proc_pid_is_zombie): Use
1841         linux_proc_pid_is_zombie_maybe_warn.
1842         (linux_proc_attach_tgid_threads): New function.
1843         * nat/linux-procfs.h (linux_proc_get_tgid): Update comment.
1844         (linux_proc_get_tracerpid): Rename to ...
1845         (linux_proc_get_tracerpid_nowarn): ... this, and update comment.
1846         (linux_proc_pid_is_gone): New declaration.
1847         (linux_proc_pid_is_zombie): Update comment.
1848         (linux_proc_pid_is_zombie_nowarn): New declaration.
1849         (linux_proc_attach_lwp_func): New typedef.
1850         (linux_proc_attach_tgid_threads): New declaration.
1851         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason): Adjust to
1852         use nowarn functions.
1853         (linux_ptrace_attach_fail_reason_string): Move here from
1854         gdbserver/linux-low.c and rename.
1855         (ptrace_supports_feature): If the current ptrace options are not
1856         known yet, check them now, instead of asserting.
1857         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason_string):
1858         Declare.
1859
1860 2015-01-09  Pedro Alves  <palves@redhat.com>
1861
1862         * linux-thread-db.c (thread_db_find_new_threads_silently)
1863         (try_thread_db_load_1, try_thread_db_load, thread_db_load_search)
1864         (find_new_threads_once): Print debug output on gdb_stdlog.
1865
1866 2015-01-09  Chen Gang  <gang.chen.5i5j@gmail.com>
1867             Pedro Alves  <palves@redhat.com>
1868
1869         * compile/compile.c: Include "gdb_wait.h".
1870         (do_rmdir): Check return value, and free 'zap'.
1871
1872 2015-01-08  Pedro Alves  <palves@redhat.com>
1873             Yao Qi  <yao@codesourcery.com>
1874
1875         * dwarf2loc.c (indirect_pieced_value): Don't call
1876         gdb_sign_extend.  Call extract_signed_integer instead.
1877         * utils.c (gdb_sign_extend): Remove.
1878         * utils.h (gdb_sign_extend): Remove declaration.
1879
1880 2015-01-07  Pierre Muller  <muller@sourceware.org>
1881
1882         PR symtab/17811
1883         * stabsread.c (define_symbol): Set language for C++ special symbols.
1884
1885 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
1886
1887         * inflow.c (initial_gdb_ttystate): Tweak comment.
1888
1889 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
1890
1891         * inflow.c (set_initial_gdb_ttystate): Add empty line after
1892         comment documenting function.
1893
1894 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
1895
1896         * terminal.h (set_initial_gdb_ttystate): Declare.
1897         * inflow.c (initial_gdb_ttystate): New static variable.
1898         (set_initial_gdb_ttystate): New setter.
1899         (child_terminal_init_with_pgrp): Copy initial_gdb_ttystate
1900         instead of our current terminal state.
1901         * top.c (gdb_init): Call set_initial_gdb_ttystate.
1902
1903 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
1904
1905         * guile/scm-type.c (tyscm_array_1): Add comment.
1906         * python/py-type.c (typy_array_1): Add comment.
1907
1908 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
1909
1910         * guile/scm-type.c (tyscm_array_1): Do not raise out-of-range
1911         error if N2 is equal to N1 - 1.
1912
1913 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
1914
1915         * python/py-type.c (typy_array_1): Do not raise negative-length
1916         exception if N2 is equal to N1 - 1.
1917
1918 2015-01-03  Doug Evans  <xdje42@gmail.com>
1919
1920         * c-exp.y: Whitespace cleanup.
1921         (classify_inner_name): Remove extra ;.
1922
1923 2015-01-02  Maciej W. Rozycki  <macro@codesourcery.com>
1924
1925         * mips-tdep.c (mips32_scan_prologue): Keep the extracted stack
1926         offset signed.
1927
1928 2015-01-02  Doug Evans  <dje@google.com>
1929
1930         * dwarf2read.c (setup_type_unit_groups): Remove outdated comment.
1931
1932 2015-01-02  Doug Evans  <dje@google.com>
1933
1934         * symtab.h (struct symbol): Fix typo in comment.
1935
1936 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1937
1938         Update year range in copyright notice of all files.
1939
1940 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1941
1942         * top.c (print_gdb_version): Update copyright year to 2015.
1943
1944 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1945
1946         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2014.
1947
1948 For older changes see ChangeLog-2014.
1949 \f
1950 Local Variables:
1951 mode: change-log
1952 left-margin: 8
1953 fill-column: 74
1954 version-control: never
1955 coding: utf-8
1956 End: