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