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