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