btrace: identify cpu
[external/binutils.git] / gdb / ChangeLog
1 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
2
3         * common/btrace-common.h (btrace_cpu_vendor, btrace_cpu): New.
4         * nat/linux-btrace.c: (btrace_this_cpu): New.
5         (cpu_supports_bts): Call btrace_this_cpu.
6         (intel_supports_bts): Add cpu parameter.
7
8 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
9
10         * btrace.h (btrace_insn_class): New.
11         (btrace_insn) <size, iclass>: New.
12         * btrace.c (ftrace_find_call): Update parameters.  Update users.
13         Use instruction classification.
14         (ftrace_new_return): Update parameters.  Update users.
15         (ftrace_update_function): Update parameters.  Update users.  Use
16         instruction classification.
17         (ftrace_update_insns): Update parameters.  Update users.
18         (ftrace_classify_insn): New.
19         (btrace_compute_ftrace_bts): Fill in new btrace_insn fields.  Add
20         TRY_CATCH around call to gdb_insn_length.
21
22 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
23
24         * btrace.c (btrace_compute_ftrace_bts, btrace_compute_ftrace):
25         Update parameters.  Update users.
26
27 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
28
29         * btrace.c (parse_xml_btrace_conf_bts): Add size.
30         (btrace_conf_bts_attributes): New.
31         (btrace_conf_children): Add attributes.
32         * common/btrace-common.h (btrace_config_bts): New.
33         (btrace_config)<bts>: New.
34         (btrace_config): Update comment.
35         * nat/linux-btrace.c (linux_enable_btrace, linux_enable_bts):
36         Use config.
37         * features/btrace-conf.dtd: Increment version.  Add size
38         attribute to bts element.
39         * record-btrace.c (set_record_btrace_bts_cmdlist,
40         show_record_btrace_bts_cmdlist): New.
41         (record_btrace_adjust_size, record_btrace_print_bts_conf,
42         record_btrace_print_conf, cmd_set_record_btrace_bts,
43         cmd_show_record_btrace_bts): New.
44         (record_btrace_info): Call record_btrace_print_conf.
45         (_initialize_record_btrace): Add commands.
46         * remote.c: Add PACKET_Qbtrace_conf_bts_size enum.
47         (remote_protocol_features): Add Qbtrace-conf:bts:size packet.
48         (btrace_sync_conf): Synchronize bts size.
49         (_initialize_remote): Add Qbtrace-conf:bts:size packet.
50         * NEWS: Announce new commands and new packets.
51
52 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
53
54         * Makefile.in (XMLFILES): Add btrace-conf.dtd.
55         * x86-linux-nat.c (x86_linux_enable_btrace): Update parameters.
56         (x86_linux_btrace_conf): New.
57         (x86_linux_create_target): Initialize to_btrace_conf.
58         * nat/linux-btrace.c (linux_enable_btrace): Update parameters.
59         Check format.  Split into this and ...
60         (linux_enable_bts): ... this.
61         (linux_btrace_conf): New.
62         (perf_event_skip_record): Renamed into ...
63         (perf_event_skip_bts_record): ... this.  Updated users.
64         (linux_disable_btrace): Split into this and ...
65         (linux_disable_bts): ... this.
66         (linux_read_btrace): Check format.
67         * nat/linux-btrace.h (linux_enable_btrace): Update parameters.
68         (linux_btrace_conf): New.
69         (btrace_target_info)<ptid>: Moved.
70         (btrace_target_info)<conf>: New.
71         (btrace_target_info): Split into this and ...
72         (btrace_tinfo_bts): ... this.  Updated users.
73         * btrace.c (btrace_enable): Update parameters.
74         (btrace_conf, parse_xml_btrace_conf_bts, parse_xml_btrace_conf)
75         (btrace_conf_children, btrace_conf_attributes)
76         (btrace_conf_elements): New.
77         * btrace.h (btrace_enable): Update parameters.
78         (btrace_conf, parse_xml_btrace_conf): New.
79         * common/btrace-common.h (btrace_config): New.
80         * feature/btrace-conf.dtd: New.
81         * record-btrace.c (record_btrace_conf): New.
82         (record_btrace_cmdlist): New.
83         (record_btrace_enable_warn, record_btrace_open): Pass
84         &record_btrace_conf.
85         (record_btrace_info): Print recording format.
86         (cmd_record_btrace_bts_start): New.
87         (cmd_record_btrace_start): Call cmd_record_btrace_bts_start.
88         (_initialize_record_btrace): Add "record btrace bts" subcommand.
89         Add "record bts" alias command.
90         * remote.c (remote_state)<btrace_config>: New.
91         (remote_btrace_reset, PACKET_qXfer_btrace_conf): New.
92         (remote_protocol_features): Add qXfer:btrace-conf:read.
93         (remote_open_1): Call remote_btrace_reset.
94         (remote_xfer_partial): Handle TARGET_OBJECT_BTRACE_CONF.
95         (btrace_target_info)<conf>: New.
96         (btrace_sync_conf, btrace_read_config): New.
97         (remote_enable_btrace): Update parameters.  Call btrace_sync_conf and
98         btrace_read_conf.
99         (remote_btrace_conf): New.
100         (init_remote_ops): Initialize to_btrace_conf.
101         (_initialize_remote): Add qXfer:btrace-conf packet.
102         * target.c (target_enable_btrace): Update parameters.
103         (target_btrace_conf): New.
104         * target.h (target_enable_btrace): Update parameters.
105         (target_btrace_conf): New.
106         (target_object)<TARGET_OBJECT_BTRACE_CONF>: New.
107         (target_ops)<to_enable_btrace>: Update parameters and comment.
108         (target_ops)<to_btrace_conf>: New.
109         * target-delegates: Regenerate.
110         * target-debug.h (target_debug_print_const_struct_btrace_config_p)
111         (target_debug_print_const_struct_btrace_target_info_p): New.
112         * NEWS: Announce new command and new packet.
113
114 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
115
116         * nat/linux-btrace.h (perf_event_buffer): New.
117         (btrace_target_info) <buffer, size, data_head>: Replace with ...
118         <bts>: ... this.
119         * nat/linux-btrace.c (perf_event_header, perf_event_mmap_size)
120         (perf_event_buffer_size, perf_event_buffer_begin)
121         (perf_event_buffer_end, linux_btrace_has_changed): Removed.
122         Updated users.
123         (perf_event_new_data): New.
124
125 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
126
127         * btrace.c (btrace_enable): Pass BTRACE_FORMAT_BTS.
128         * record-btrace.c (record_btrace_open): Remove call to
129         target_supports_btrace.
130         * remote.c (remote_supports_btrace): Update parameters.
131         * target.c (target_supports_btrace): Update parameters.
132         * target.h (to_supports_btrace, target_supports_btrace): Update
133         parameters.
134         * target-delegates.c: Regenerate.
135         * target-debug.h (target_debug_print_enum_btrace_format): New.
136         * nat/linux-btrace.c
137         (kernel_supports_btrace): Rename into ...
138         (kernel_supports_bts): ... this.  Update users.  Update warning text.
139         (intel_supports_btrace): Rename into ...
140         (intel_supports_bts): ... this.  Update users.
141         (cpu_supports_btrace): Rename into ...
142         (cpu_supports_bts): ... this.  Update users.
143         (linux_supports_btrace): Update parameters.  Split into this and ...
144         (linux_supports_bts): ... this.
145         * nat/linux-btrace.h (linux_supports_btrace): Update parameters.
146
147 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
148
149         * Makefile.in (SFILES): Add common/btrace-common.c.
150         (COMMON_OBS): Add common/btrace-common.o.
151         (btrace-common.o): Add build rules.
152         * btrace.c (parse_xml_btrace): Update parameters.
153         (parse_xml_btrace_block): Set format field.
154         (btrace_add_pc, btrace_fetch): Use struct btrace_data.
155         (do_btrace_data_cleanup, make_cleanup_btrace_data): New.
156         (btrace_compute_ftrace): Split into this and...
157         (btrace_compute_ftrace_bts): ...this.
158         (btrace_stitch_trace): Split into this and...
159         (btrace_stitch_bts): ...this.
160         * btrace.h (parse_xml_btrace): Update parameters.
161         (make_cleanup_btrace_data): New.
162         * common/btrace-common.c: New.
163         * common/btrace-common.h: Include common-defs.h.
164         (btrace_block_s): Update comment.
165         (btrace_format): New.
166         (btrace_format_string): New.
167         (btrace_data_bts): New.
168         (btrace_data): New.
169         (btrace_data_init, btrace_data_fini, btrace_data_empty): New.
170         * remote.c (remote_read_btrace): Update parameters.
171         * target.c (target_read_btrace): Update parameters.
172         * target.h (target_read_btrace): Update parameters.
173         (target_ops)<to_read_btrace>: Update parameters.
174         * x86-linux-nat.c (x86_linux_read_btrace): Update parameters.
175         * target-delegates.c: Regenerate.
176         * target-debug (target_debug_print_struct_btrace_data_p): New.
177         * nat/linux-btrace.c (linux_read_btrace): Split into this and...
178         (linux_read_bts): ...this.
179         * nat/linux-btrace.h (linux_read_btrace): Update parameters.
180
181 2015-02-06  Doug Evans  <dje@google.com>
182
183         * remote-m32r-sdi.c: Include symfile.h.
184
185 2015-02-06  Doug Evans  <dje@google.com>
186
187         * symtab.h (clear_symtab_users, deduce_language_from_filename): Move
188         * symfile.h (clear_symtab_users, deduce_language_from_filename): ...
189         to here.
190
191 2015-02-06  Pedro Alves  <palves@redhat.com>
192
193         * linux-thread-db.c (find_new_threads_callback): Add debug output.
194
195 2015-02-06  Simon Marchi  <simon.marchi@ericsson.com>
196
197         PR gdb/15678
198         * breakpoint.c (map_breakpoint_numbers): Check for empty args string.
199         (enable_count_command): Check args for NULL value.
200
201 2015-02-05  Doug Evans  <xdje42@gmail.com>
202
203         * guile/scm-frame.c: Fix spelling errors in a comment.
204
205 2015-02-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
206
207         * python/python-internal.h (Py_hash_t): Define it for Python <3.2.
208         * python/py-value.c (valpy_fetch_lazy): Use it.  Remove cast to the
209         return type.
210
211 2015-02-04  Pedro Alves  <palves@redhat.com>
212
213         * linux-nat.c (handle_extended_wait): Don't resume LWPs here.
214         (wait_lwp): Don't call wait_lwp if linux_handle_extended_wait
215         returns true.
216         (resume_stopped_resumed_lwps): Don't check whether the thread is
217         marked as executing.
218         (linux_nat_wait_1): Use resume_stopped_resumed_lwps.
219
220 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
221
222         * regset.h (struct regset): Add flags field.
223         (REGSET_VARIABLE_SIZE): New value for a regset's flags field.
224         * corelow.c (get_core_register_section): Add warning if the size
225         exceeds the requested size and the regset does not have the
226         REGSET_VARIABLE_SIZE flag set.
227         * alphanbsd-tdep.c (alphanbsd_gregset): Add REGSET_VARIABLE_SIZE
228         flag.
229         * armbsd-tdep.c (armbsd_gregset): Likewise.
230         * hppa-hpux-tdep.c (hppa_hpux_regset): Likewise.
231         * hppaobsd-tdep.c (hppaobsd_gregset): Likewise.
232         * m68kbsd-tdep.c (m68kbsd_gregset): Likewise.
233         * mipsnbsd-tdep.c (mipsnbsd_gregset): Likewise.
234
235 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
236
237         * amd64-linux-tdep.c (amd64_linux_iterate_over_regset_sections):
238         For ".reg-xstate", explicitly specify the requested section size
239         via X86_XSTATE_SIZE instead of just 0 on input and
240         X86_XSTATE_MAX_SIZE on output.
241         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections):
242         Likewise.
243
244 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
245
246         PR corefiles/17808:
247         * gdbarch.sh (iterate_over_regset_sections_cb): Document this
248         function type, particularly its SIZE parameter.
249         * gdbarch.h: Regenerate.
250         * amd64-tdep.c (amd64_supply_fpregset): In gdb_assert, compare
251         actual against required size using ">=" instead of "==".
252         (amd64_collect_fpregset): Likewise.
253         * i386-tdep.c (i386_supply_gregset): Likewise.
254         (i386_collect_gregset): Likewise.
255         (i386_supply_fpregset): Likewise.
256         (i386_collect_fpregset): Likewise.
257         * mips-linux-tdep.c (mips_supply_gregset_wrapper): Likewise.
258         (mips_fill_gregset_wrapper): Likewise.
259         (mips_supply_fpregset_wrapper): Likewise.
260         (mips_fill_fpregset_wrapper): Likewise.
261         (mips64_supply_gregset_wrapper): Likewise.
262         (mips64_fill_gregset_wrapper): Likewise.
263         (mips64_supply_fpregset_wrapper): Likewise.
264         (mips64_fill_fpregset_wrapper): Likewise.
265         * mn10300-linux-tdep.c (am33_supply_gregset_method): Likewise.
266         (am33_supply_fpregset_method): Likewise.
267         (am33_collect_gregset_method): Likewise.
268         (am33_collect_fpregset_method): Likewise.
269
270 2015-02-04  Doug Evans  <dje@google.com>
271             Pedro Alves  <palves@redhat.com>
272             Eli Zaretskii  <eliz@gnu.org>
273
274         PR tui/17810
275         * tui/tui-command.c (tui_refresh_cmd_win): New function.
276         * tui/tui-command.c (tui_refresh_cmd_win): Declare.
277         * tui/tui-file.c: #include tui/tui-command.h.
278         (tui_file_fputs): Refresh command window if stream is not gdb_stdout.
279         (tui_file_flush): Refresh command window if stream is gdb_stdout.
280         * tui/tui-io.c (tui_puts): Remove calls to wrefresh, fflush.
281
282 2015-02-04  Pedro Alves  <palves@redhat.com>
283
284         Fix build breakage.
285         * event-loop.c (gdb_do_one_event): Add default switch case.
286
287 2015-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
288
289         Filter out inferior gcc option -fpreprocessed.
290         * compile/compile.c (filter_args): New function.
291         (get_args): Use it.
292
293 2015-02-03  Pedro Alves  <palves@redhat.com>
294
295         * event-loop.c: Don't declare nor define a queue type for
296         gdb_event_p.
297         (event_queue): Delete.
298         (create_event, create_file_event, gdb_event_xfree)
299         (initialize_event_loop, process_event): Delete.
300         (gdb_do_one_event): Return as soon as one event is handled.
301         (handle_file_event): Change prototype.  Used the passed in
302         file_handler pointer and ready_mask instead of looping over all
303         file handlers.
304         (gdb_wait_for_event): Update the poll/select timeouts before
305         blocking.  Run event handlers directly instead of queueing events.
306         Return as soon as one event is handled.
307         (struct async_event_handler_data): Delete.
308         (invoke_async_event_handler): Delete.
309         (check_async_event_handlers): Change return type to int.  Run
310         event handlers directly instead of queueing events.  Return as
311         soon as one event is handled.
312         (handle_timer_event): Delete.
313         (update_wait_timeout): New function, factored out from
314         poll_timers.
315         (poll_timers): Reimplement.
316         * event-loop.h (initialize_event_loop): Delete declaration.
317         * top.c (gdb_init): Don't call initialize_event_loop.
318
319 2015-02-03  Pedro Alves  <palves@redhat.com>
320
321         * event-loop.c (clear_async_event_handler): New function.
322         * event-loop.h (clear_async_event_handler): New declaration.
323         * record-btrace.c (record_btrace_async): New function.
324         (init_record_btrace_ops): Install record_btrace_async.
325         * record-full.c (record_full_async): New function.
326         (record_full_resume): Don't mark the async event source here.
327         (init_record_full_ops): Install record_full_async.
328         (record_full_core_resume): Don't mark the async event source here.
329         (init_record_full_core_ops): Install record_full_async.
330         * remote.c (remote_async): Mark and clear the async stop reply
331         queue event-loop token as appropriate.
332
333 2015-02-03  Pedro Alves  <palves@redhat.com>
334
335         * linux-nat.c (linux_child_follow_fork, linux_nat_wait_1): Use
336         target_is_async_p instead of target_can_async.
337         (linux_nat_wait): Use target_is_async_p instead of
338         target_can_async.  Don't enable async here.
339         * remote.c (interrupt_query, remote_wait, putpkt_binary): Use
340         target_is_async_p instead of target_can_async.
341
342 2015-02-02  Simon Marchi  <simon.marchi@ericsson.com>
343
344         * varobj.h (lang_varobj_ops): Mention which return values need
345         to be freed.
346
347 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
348
349         * dwarf2loc.c (dwarf2_evaluate_property): Add i18n marker.
350
351 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
352
353         PR gdb/17856:
354         * ada-lang.c (ada_lookup_symbol_list_worker): Do not re-cache
355         results found in the cache.
356
357 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
358
359         PR gdb/17854:
360         * ada-lang.c (ada_get_symbol_cache): Set pspace_data->sym_cache
361         when allocating a new one.
362
363 2015-02-01  Tom Tromey  <tom@tromey.com>
364
365         * MAINTAINERS: Remove myself.
366
367 2015-01-31  Doug Evans  <xdje42@gmail.com>
368
369         * dwarf2read.c (process_structure_scope): Update setting of
370         TYPE_VPTR_BASETYPE, TYPE_VPTR_FIELDNO.
371         * gdbtypes.c (internal_type_vptr_fieldno): New function.
372         (set_type_vptr_fieldno): New function.
373         (internal_type_vptr_basetype): New function.
374         (set_type_vptr_basetype): New function.
375         (get_vptr_fieldno): Update setting of TYPE_VPTR_FIELDNO,
376         TYPE_VPTR_BASETYPE.
377         (allocate_cplus_struct_type): Initialize vptr_fieldno.
378         (recursive_dump_type): Printing of vptr_fieldno, vptr_basetype ...
379         (print_cplus_stuff): ... moved here.
380         (copy_type_recursive): Don't copy TYPE_VPTR_BASETYPE.
381         * gdbtypes.h (struct main_type): Members vptr_fieldno, vptr_basetype
382         moved to ...
383         (struct cplus_struct_type): ... here.  All uses updated.
384         (TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE): Rewrite.
385         (internal_type_vptr_fieldno, set_type_vptr_fieldno): Declare.
386         (internal_type_vptr_basetype, set_type_vptr_basetype): Declare.
387         * stabsread.c (read_tilde_fields): Update setting of
388         TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE.
389
390 2015-01-31  Doug Evans  <xdje42@gmail.com>
391
392         * cp-valprint.c (cp_find_class_member): Rename parameter domain_p
393         to self_p.
394         (cp_print_class_member): Rename local domain to self_type.
395         * dwarf2read.c (quirk_gcc_member_function_pointer): Rename local
396         domain_type to self_type.
397         (set_die_type) <need_gnat_info>: Handle
398         TYPE_CODE_METHODPTR, TYPE_CODE_MEMBERPTR, TYPE_CODE_METHOD.
399         * gdb-gdb.py (StructMainTypePrettyPrinter): Handle
400         TYPE_SPECIFIC_SELF_TYPE.
401         * gdbtypes.c (internal_type_self_type): New function.
402         (set_type_self_type): New function.
403         (smash_to_memberptr_type): Rename parameter domain to self_type.
404         Update setting of TYPE_SELF_TYPE.
405         (smash_to_methodptr_type): Update setting of TYPE_SELF_TYPE.
406         (smash_to_method_type): Rename parameter domain to self_type.
407         Update setting of TYPE_SELF_TYPE.
408         (check_stub_method): Call smash_to_method_type.
409         (recursive_dump_type): Handle TYPE_SPECIFIC_SELF_TYPE.
410         (copy_type_recursive): Ditto.
411         * gdbtypes.h (enum type_specific_kind): New value
412         TYPE_SPECIFIC_SELF_TYPE.
413         (struct main_type) <type_specific>: New member self_type.
414         (struct cplus_struct_type) <fn_field.type>: Update comment.
415         (TYPE_SELF_TYPE): Rewrite.
416         (internal_type_self_type, set_type_self_type): Declare.
417         * gnu-v3-abi.c (gnuv3_print_method_ptr): Rename local domain to
418         self_type.
419         (gnuv3_method_ptr_to_value): Rename local domain_type to self_type.
420         * m2-typeprint.c (m2_range): Replace TYPE_SELF_TYPE with
421         TYPE_TARGET_TYPE.
422         * stabsread.c (read_member_functions): Mark methods with
423         TYPE_CODE_METHOD, not TYPE_CODE_FUNC.  Update setting of
424         TYPE_SELF_TYPE.
425
426 2015-01-31  Doug Evans  <xdje42@gmail.com>
427
428         * gdbtypes.h (TYPE_SELF_TYPE): Renamed from TYPE_DOMAIN_TYPE.
429         All uses updated.
430
431 2015-01-31  Doug Evans  <xdje42@gmail.com>
432
433         * gnu-v3-abi.c (gnuv3_dynamic_class): Assert only passed structs
434         or unions.  Return zero if union.
435         (gnuv3_get_vtable): Call check_typedef.  Assert only passed structs.
436         (gnuv3_rtti_type): Pass already-check_typedef'd value to
437         gnuv3_get_vtable.
438         (compute_vtable_size): Assert only passed structs.
439         (gnuv3_print_vtable): Don't call gnuv3_get_vtable for non-structs.
440
441 2015-01-31  Doug Evans  <xdje42@gmail.com>
442
443         * gdbtypes.c (copy_type_recursive): Handle all TYPE_SPECIFIC_FIELD
444         kinds.
445
446 2015-01-31  Gary Benson <gbenson@redhat.com>
447             Doug Evans  <dje@google.com>
448
449         PR cli/9007
450         PR cli/11920
451         PR cli/15548
452         * cli/cli-cmds.c (complete_command): Notify user if max-completions
453         reached.
454         * common/common-exceptions.h (enum errors)
455         <MAX_COMPLETIONS_REACHED_ERROR>: New value.
456         * completer.h (get_max_completions_reached_message): New declaration.
457         (max_completions): Likewise.
458         (completion_tracker_t): New typedef.
459         (new_completion_tracker): New declaration.
460         (make_cleanup_free_completion_tracker): Likewise.
461         (maybe_add_completion_enum): New enum.
462         (maybe_add_completion): New declaration.
463         (throw_max_completions_reached_error): Likewise.
464         * completer.c (max_completions): New global variable.
465         (new_completion_tracker): New function.
466         (free_completion_tracker): Likewise.
467         (make_cleanup_free_completion_tracker): Likewise.
468         (maybe_add_completions): Likewise.
469         (throw_max_completions_reached_error): Likewise.
470         (complete_line): Remove duplicates and limit result to max_completions
471         entries.
472         (get_max_completions_reached_message): New function.
473         (gdb_display_match_list): Handle max_completions.
474         (_initialize_completer): New declaration and function.
475         * symtab.c: Include completer.h.
476         (completion_tracker): New static variable.
477         (completion_list_add_name): Call maybe_add_completion.
478         (default_make_symbol_completion_list_break_on_1): Renamed from
479         default_make_symbol_completion_list_break_on.  Maintain
480         completion_tracker across calls to completion_list_add_name.
481         (default_make_symbol_completion_list_break_on): New function.
482         * top.c (init_main): Set rl_completion_display_matches_hook.
483         * tui/tui-io.c: Include completer.h.
484         (tui_old_rl_display_matches_hook): New static global.
485         (tui_rl_display_match_list): Notify user if max-completions reached.
486         (tui_setup_io): Save/restore rl_completion_display_matches_hook.
487         * NEWS (New Options): Mention set/show max-completions.
488
489 2015-01-31  Gary Benson  <gbenson@redhat.com>
490
491         * symtab.c (struct add_name_data) <code>: New field.
492         Updated comments.
493         (add_symtab_completions): New function.
494         (symtab_expansion_callback): Likewise.
495         (default_make_symbol_completion_list_break_on): Set datum.code.
496         Move minimal symbol scan before calling expand_symtabs_matching.
497         Scan known primary symtabs for externs and statics before calling
498         expand_symtabs_matching.  Pass symtab_expansion_callback as
499         expansion_notify argument to expand_symtabs_matching.  Do not scan
500         primary symtabs for externs and statics after calling
501         expand_symtabs_matching.
502
503 2015-01-31  Gary Benson  <gbenson@redhat.com>
504
505         * symfile.h (expand_symtabs_exp_notify_ftype): New typedef.
506         (struct quick_symbol_functions) <expand_symtabs_matching>:
507         New argument expansion_notify.  All uses updated.
508         (expand_symtabs_matching): New argument expansion_notify.
509         All uses updated.
510         * symfile-debug.c (debug_qf_expand_symtabs_matching):
511         Also print expansion notify.
512         * symtab.c (expand_symtabs_matching_via_partial): Call
513         expansion_notify whenever a partial symbol table is expanded.
514         * dwarf2read.c (dw2_expand_symtabs_matching): Call
515         expansion_notify whenever a symbol table is instantiated.
516
517 2015-01-31  Doug Evans  <xdje42@gmail.com>
518
519         * cli-out.c: #include completer.h, readline/readline.h.
520         (cli_mld_crlf, cli_mld_putch, cli_mld_puts): New functions.
521         (cli_mld_flush, cld_mld_erase_entire_line): Ditto.
522         (cli_mld_beep, cli_mld_read_key, cli_display_match_list): Ditto.
523         * cli-out.h (cli_display_match_list): Declare.
524         * completer.c (MB_INVALIDCH, MB_NULLWCH): New macros.
525         (ELLIPSIS_LEN): Ditto.
526         (gdb_get_y_or_n, gdb_display_match_list_pager): New functions.
527         (gdb_path_isdir, gdb_printable_part, gdb_fnwidth): Ditto.
528         (gdb_fnprint, gdb_print_filename): Ditto.
529         (gdb_complete_get_screenwidth, gdb_display_match_list_1): Ditto.
530         (gdb_display_match_list): Ditto.
531         * completer.h (mld_crlf_ftype, mld_putch_ftype): New typedefs.
532         (mld_puts_ftype, mld_flush_ftype, mld_erase_entire_line_ftype): Ditto.
533         (mld_beep_ftype, mld_read_key_ftype): Ditto.
534         (match_list_displayer): New struct.
535         (gdb_display_match_list): Declare.
536         * top.c (init_main): Set rl_completion_display_matches_hook.
537         * tui/tui-io.c: #include completer.h.
538         (printable_part, PUTX, print_filename, get_y_or_n): Delete.
539         (tui_mld_crlf, tui_mld_putch, tui_mld_puts): New functions.
540         (tui_mld_flush, tui_mld_erase_entire_line, tui_mld_beep): Ditto.
541         (tui_mld_getc, tui_mld_read_key): Ditto.
542         (tui_rl_display_match_list): Rewrite.
543         (tui_handle_resize_during_io): New arg for_completion.  All callers
544         updated.
545
546 2015-01-31  Doug Evans  <xdje42@gmail.com>
547
548         Add symbol lookup cache.
549         * NEWS: Document new options and commands.
550         * symtab.c (symbol_cache_key): New static global.
551         (DEFAULT_SYMBOL_CACHE_SIZE, MAX_SYMBOL_CACHE_SIZE): New macros.
552         (SYMBOL_LOOKUP_FAILED): New macro.
553         (symbol_cache_slot_state): New enum.
554         (block_symbol_cache): New struct.
555         (symbol_cache): New struct.
556         (new_symbol_cache_size, symbol_cache_size): New static globals.
557         (hash_symbol_entry, eq_symbol_entry): New functions.
558         (symbol_cache_byte_size, resize_symbol_cache): New functions.
559         (make_symbol_cache, free_symbol_cache): New functions.
560         (get_symbol_cache, symbol_cache_cleanup): New function.
561         (set_symbol_cache_size, set_symbol_cache_size_handler): New functions.
562         (symbol_cache_lookup, symbol_cache_clear_slot): New function.
563         (symbol_cache_mark_found, symbol_cache_mark_not_found): New functions.
564         (symbol_cache_flush, symbol_cache_dump): New functions.
565         (maintenance_print_symbol_cache): New function.
566         (maintenance_flush_symbol_cache): New function.
567         (symbol_cache_stats): New function.
568         (maintenance_print_symbol_cache_statistics): New function.
569         (symtab_new_objfile_observer): New function.
570         (symtab_free_objfile_observer): New function.
571         (lookup_static_symbol, lookup_global_symbol): Use symbol cache.
572         (_initialize_symtab): Init symbol_cache_key.  New parameter
573         maint symbol-cache-size.  New maint commands print symbol-cache,
574         print symbol-cache-statistics, flush-symbol-cache.
575         Install new_objfile, free_objfile observers.
576
577 2015-01-31  Joel Brobecker  <brobecker@adacore.com>
578
579         PR symtab/17855
580         * symfile.c (clear_symtab_users): Move call to breakpoint_re_set
581         to end.
582
583 2015-01-31  Doug Evans  <xdje42@gmail.com>
584
585         * NEWS: Mention inlined scripts in .debug_gdb_scripts section.
586         * auto-load.c: #include ctype.h.
587         (struct auto_load_pspace_info): Replace member loaded_scripts with
588         new members loaded_script_files, loaded_script_texts.
589         (auto_load_pspace_data_cleanup): Update.
590         (init_loaded_scripts_info): Update.
591         (get_auto_load_pspace_data_for_loading): Update.
592         (maybe_add_script_file): Renamed from maybe_add_script.  All callers
593         updated.
594         (maybe_add_script_text): New function.
595         (clear_section_scripts): Update.
596         (source_script_file, execute_script_contents): New functions.
597         (source_section_scripts): Add support for
598         SECTION_SCRIPT_ID_PYTHON_TEXT, SECTION_SCRIPT_ID_GUILE_TEXT.
599         (print_scripts): New function.
600         (auto_load_info_scripts): Also print inlined scripts.
601         (maybe_print_unsupported_script_warning): Renamed from
602         unsupported_script_warning_print.  All callers updated.
603         (maybe_print_script_not_found_warning): Renamed from
604         script_not_found_warning_print.  All callers updated.
605         * extension-priv.h (struct extension_language_script_ops): New member
606         objfile_script_executor.
607         * extension.c (ext_lang_objfile_script_executor): New function.
608         * extension.h (objfile_script_executor_func): New typedef.
609         (ext_lang_objfile_script_executor): Declare.
610         * guile/guile-internal.h (gdbscm_execute_objfile_script): Declare.
611         * guile/guile.c (guile_extension_script_ops): Update.
612         * guile/scm-objfile.c (gdbscm_execute_objfile_script): New function.
613         * python/python.c (python_extension_script_ops): Update.
614         (gdbpy_execute_objfile_script): New function.
615
616 2015-01-31  Eli Zaretskii  <eliz@gnu.org>
617
618         * tui/tui-io.c (tui_expand_tabs): New function.
619         (tui_puts, tui_redisplay_readline): Expand TABs into the
620         appropriate number of spaces.
621         * tui/tui-regs.c: Include tui-io.h.
622         (tui_register_format): Call tui_expand_tabs to expand TABs into
623         the appropriate number of spaces.
624         * tui/tui-io.h: Add prototype for tui_expand_tabs.
625
626 2015-01-30  Doug Evans  <dje@google.com>
627
628         * NEWS: "info source" command now display producer string if present.
629         * source.c (source_info): Print producer string if present.
630
631 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
632
633         * varobj.c (varobj_delete): Fix comment.
634
635 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
636
637         * varobj.c (create_child): Modify comment.
638
639 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
640
641         * ada-varobj.c (ada_number_of_children): Constify struct varobj *
642         parameter.
643         (ada_name_of_variable): Same.
644         (ada_path_expr_of_child): Same.
645         (ada_value_of_variable): Same.
646         (ada_value_is_changeable_p): Same.
647         (ada_value_has_mutated): Same.
648         * c-varobj.c (varobj_is_anonymous_child): Same.
649         (c_is_path_expr_parent): Same.
650         (c_number_of_children): Same.
651         (c_name_of_variable): Same.
652         (c_path_expr_of_child): Same.
653         (get_type): Same.
654         (c_value_of_variable): Same.
655         (cplus_number_of_children): Same.
656         (cplus_name_of_variable): Same.
657         (cplus_path_expr_of_child): Same.
658         (cplus_value_of_variable): Same.
659         * jv-varobj.c (java_number_of_children): Same.
660         (java_name_of_variable): Same.
661         (java_path_expr_of_child): Same.
662         (java_value_of_variable): Same.
663         * varobj.c (number_of_children): Same.
664         (name_of_variable): Same.
665         (is_root_p): Same.
666         (varobj_ensure_python_env): Same.
667         (varobj_get_objname): Same.
668         (varobj_get_expression): Same.
669         (varobj_get_display_format): Same.
670         (varobj_get_display_hint): Same.
671         (varobj_has_more): Same.
672         (varobj_get_thread_id): Same.
673         (varobj_get_frozen): Same.
674         (dynamic_varobj_has_child_method): Same.
675         (varobj_get_gdb_type): Same.
676         (is_path_expr_parent): Same.
677         (varobj_default_is_path_expr_parent): Same.
678         (varobj_get_language): Same.
679         (varobj_get_attributes): Same.
680         (varobj_is_dynamic_p): Same.
681         (varobj_get_child_range): Same.
682         (varobj_value_has_mutated): Same.
683         (varobj_get_value_type): Same.
684         (number_of_children): Same.
685         (name_of_variable): Same.
686         (check_scope): Same.
687         (varobj_editable_p): Same.
688         (varobj_value_is_changeable_p): Same.
689         (varobj_floating_p): Same.
690         (varobj_default_value_is_changeable_p): Same.
691
692 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
693
694         * varobj.c (varobj_get_path_expr): Set var->path_expr.
695         * c-varobj.c (c_path_expr_of_child): Set local var instead of
696         child->path_expr.
697         (cplus_path_expr_of_child): Same.
698
699 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
700
701         * mi-cmd-var.c (print_varobj): Free varobj_get_expression
702         result.
703         (mi_cmd_var_info_expression): Same.
704         * varobj.c (varobj_get_expression): Mention in the comment that
705         the result must by freed by the caller.
706
707 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
708
709         * mi/mi-cmd-var.c (mi_cmd_var_info_type): Free result of
710         varobj_get_type.
711         (varobj_update_one): Same.
712         * varobj.c (update_type_if_necessary): Free curr_type_str and
713         new_type_str.
714         (varobj_get_type): Specify in comment that the result needs to be
715         freed by the caller.
716
717 2015-01-29  Doug Evans  <dje@google.com>
718
719         PR symtab/17890
720         * dwarf2read.c (dwarf_decode_line_header): Punt if version > 4.
721
722 2015-01-25  Mark Wielaard  <mjw@redhat.com>
723
724         * dwarf2read.c (checkproducer): Call producer_is_gcc.
725         * utils.c (producer_is_gcc_ge_4): Likewise.
726         (producer_is_gcc): New function.
727         * utils.h (producer_is_gcc): New declaration.
728
729 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
730
731         * gdbtypes.h (struct dynamic_prop): New PROP_ADDR_OFFSET enum
732         kind.
733         * gdbtypes.c (resolve_dynamic_type_internal): Replace "addr"
734         parameter by "addr_stack" parameter.
735         (resolve_dynamic_range): Replace "addr" parameter by
736         "stack_addr" parameter.  Update function documentation.
737         Update code accordingly.
738         (resolve_dynamic_array, resolve_dynamic_union)
739         (resolve_dynamic_struct, resolve_dynamic_type_internal): Likewise.
740         (resolve_dynamic_type): Update code, following the changes made
741         to resolve_dynamic_type_internal's interface.
742         * dwarf2loc.h (struct property_addr_info): New.
743         (dwarf2_evaluate_property): Replace "address" parameter
744         by "addr_stack" parameter.  Adjust function documentation.
745         (struct dwarf2_offset_baton): New.
746         (struct dwarf2_property_baton): Update documentation of
747         field "referenced_type" to be more general. New field
748         "offset_info" in union data field.
749         * dwarf2loc.c (dwarf2_evaluate_property): Replace "address"
750         parameter by "addr_stack" parameter.  Adjust code accordingly.
751         Add support for PROP_ADDR_OFFSET properties.
752         * dwarf2read.c (attr_to_dynamic_prop): Add support for
753         DW_AT_data_member_location attributes as well.  Use case
754         statements instead of if/else condition.
755
756 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
757
758         * ada-varobj.c (ada_varobj_get_array_number_of_children):
759         Return zero if PARENT_VALUE is NULL and parent_type's
760         range type is dynamic.
761
762 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
763
764         * gdbtypes.c (is_dynamic_type_internal) <TYPE_CODE_RANGE>: Return
765         nonzero if the type's subtype is dynamic.
766         (resolve_dynamic_range): Also resolve the range's subtype.
767
768 2015-01-29  Alexander Klimov  <alserkli@inbox.ru>  (tiny patch)
769
770         Pushed by Joel Brobecker  <brobecker@adacore.com>.
771         * symfile.c (unmap_overlay_command): Initialize sec to NULL.
772
773 2015-01-27  Doug Evans  <dje@google.com>
774
775         * NEWS: Mention gdb.Objfile.username.
776         * python/py-objfile.c (objfpy_get_username): New function.
777         (objfile_getset): Add "username".
778
779 2015-01-24  Mark Wielaard  <mjw@redhat.com>
780
781         * stack.c (return_command): Markup warning message with _.
782
783 2015-01-24  Doug Evans  <xdje42@gmail.com>
784
785         * gdbtypes.h (TYPE_TYPE_SPECIFIC): Delete.
786
787 2015-01-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
788
789         Fix 100x slowdown regression on DWZ files.
790         * dwarf2read.c (struct dwarf2_per_objfile): Add line_header_hash.
791         (struct line_header): Add offset and offset_in_dwz.
792         (dwarf_decode_lines): Add parameter decode_mapping to the declaration.
793         (free_line_header_voidp): New declaration.
794         (line_header_hash, line_header_hash_voidp, line_header_eq_voidp): New
795         functions.
796         (dwarf2_build_include_psymtabs): Update dwarf_decode_lines caller.
797         (handle_DW_AT_stmt_list): Use line_header_hash.
798         (free_line_header_voidp): New function.
799         (dwarf_decode_line_header): Initialize offset and offset_in_dwz.
800         (dwarf_decode_lines): New parameter decode_mapping, use it.
801         (dwarf2_free_objfile): Free line_header_hash.
802
803 2015-01-23  Simon Marchi  <simon.marchi@ericsson.com>
804
805         PR gdb/17416
806         * valops.c (value_rtti_indirect_type): Catch exception thrown by
807         value_ind.
808
809 2015-01-15  Mark Wielaard  <mjw@redhat.com>
810
811         * dwarf2read.c (read_subroutine_type): Set TYPE_NO_RETURN from
812         DW_AT_noreturn.
813         * gdbtypes.h (struct func_type): Add is_noreturn field flag. Make
814         calling_convention an 8 bit bit field.
815         (TYPE_NO_RETURN): New macro.
816         * infcmd.c (finish_command): Query if function does not return
817         normally.
818         * stack.c (return_command): Likewise.
819
820 2015-01-23  Pedro Alves  <palves@redhat.com>
821
822         * linux-nat.c (linux_is_async_p): New macro.
823         (linux_nat_is_async_p):
824         (linux_nat_terminal_inferior): Check whether the target can async
825         instead of whether it is already async.
826         (linux_nat_terminal_ours): Don't check whether the target is
827         async.
828         (linux_async_pipe): Use linux_is_async_p.
829
830 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
831
832         * NEWS (Changes since GDB 7.9): Add 'thread apply all' option
833         '-ascending'.
834         * thread.c (tp_array_compar_ascending, tp_array_compar): New.
835         (thread_apply_all_command): Parse CMD for tp_array_compar_ascending.
836         Sort tp_array using tp_array_compar.
837         (_initialize_thread): Extend thread_apply_all_command help.
838
839 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
840
841         * corelow.c (core_open): Call also thread_command.
842         * gdbthread.h (thread_command): New prototype moved from ...
843         * thread.c (thread_command): ... here.
844         (thread_command): Make it global.
845
846 2015-01-22  Pedro Alves  <palves@redhat.com>
847
848         * configure.ac [*mingw32*]: Check $curses_found instead of
849         $prefer_curses.
850         * configure: Regenerate.
851         * windows-termcap.c: Remove HAVE_CURSES_H, HAVE_NCURSES_H and
852         HAVE_NCURSES_NCURSES_H checks.
853
854 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
855
856         * tui/tui.c (tui_enable) [__MINGW32__]: If the call to 'newterm'
857         fails with the 1st arg NULL, try again with "unknown".  Don't test
858         the "cup" capability: it isn't supported by the Windows port of
859         ncurses, but the Windows console driver is still capable of
860         supporting TUI.
861
862 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
863
864         * compile/compile.c (_initialize_compile): Use -fPIE for compile_args.
865
866 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
867
868         * Makefile.in (HFILES_NO_SRCDIR): Remove ada-varobj.h.
869         (ALLDEPFILES): Remove irix5-nat.c.  These two are part of the
870         reason that "make TAGS" is broken.
871
872 2015-01-22  Chen Gang  <gang.chen.5i5j@gmail.com>
873
874         * hppa-tdep.c (inst_saves_gr): Fix logical working flow issues
875         and check additional store instructions.
876
877 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
878
879         * MAINTAINERS (Write After Approval): Add "Wei-cheng Wang".
880
881 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
882
883         * ppc-linux-tdep.c (ppc_skip_trampoline_code,
884         ppc_canonicalize_syscall, ppc_linux_syscall_record,
885         ppc_linux_record_signal, ppc_init_linux_record_tdep): Add comments.
886         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
887         * rs6000-tdep.c (rs6000_epilogue_frame_cache,
888         rs6000_epilogue_frame_this_id, rs6000_epilogue_frame_prev_register,
889         rs6000_epilogue_frame_sniffer, ppc_record_vsr, ppc_process_record_op4,
890         ppc_process_record_op19, ppc_process_record_op31,
891         ppc_process_record_op59, ppc_process_record_op60,
892         ppc_process_record_op63): Likewise.
893
894 2015-01-20  Joel Brobecker  <brobecker@adacore.com>
895
896         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason_string)
897         (linux_ptrace_test_ret_to_nx): Use safe_strerror instead of
898         strerror.
899
900 2015-01-20  Wei-cheng Wang  <cole945@gmail.com>
901
902         * rs6000-tdep.c (ppc_process_record_op4, ppc_process_record_op19,
903         ppc_process_record_op31, ppc_process_record_op59,
904         ppc_process_record_op60, ppc_process_record_op63,
905         ppc_process_record): Fix -Wformat warning.
906         * rs6000-tdep.c (rs6000_epilogue_frame_cache, ppc_process_record_op60):
907         Remove unused variables.
908
909 2015-01-20  Chen Gang  <gang.chen.5i5j@gmail.com>
910
911         * MAINTAINERS (Write After Approval): Add "Chen Gang".
912
913 2015-01-19  Eli Zaretskii  <eliz@gnu.org>
914
915         * configure.ac [*mingw32*]: Only add windows-termcap.o to
916         CONFIG_OBS if not building with a curses library.
917         * configure: Regenerate.
918
919         * windows-termcap.c: Include defs.h.  Make the whole body empty if
920         either one of HAVE_CURSES_H or HAVE_NCURSES_H or
921         HAVE_NCURSES_NCURSES_H is defined.
922
923 2015-01-19  Joel Brobecker  <brobecker@adacore.com>
924
925         * rs6000-tdep.c (rs6000_gdbarch_init): Move divide operator
926         from end of line to start of next line.
927
928 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
929
930         * ppc-linux-tdep.c (ppc_skip_trampoline_code):
931         Scan PLT stub backward for reverse debugging.
932         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
933
934 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
935             Ulrich Weigand  <uweigand@de.ibm.com>
936
937         * configure.tgt (powerpc*-*-linux): Add linux-record.o to
938         gdb_target_obs.
939         (ppc_linux_record_tdep, ppc64_linux_record_tdep): New for linux syscall
940         record.
941         (ppc_canonicalize_syscall, ppc_linux_syscall_record,
942         ppc_linux_record_signal, ppc_init_linux_record_tdep): New functions.
943         (ppc_linux_init_abi): Set process_record, process_record_signal.
944         * ppc-tdep.h (struct gdbarch_tdep): Add ppc_syscall_record and
945         ppc_linux_record_tdep to gdbarch_tdep.
946         (ppc_process_record): New declaration.
947         * rs6000-tdep.c (ppc_record_vsr, ppc_process_record_op4,
948         ppc_process_record_op19, ppc_process_record_op31,
949         ppc_process_record_op59, ppc_process_record_op60,
950         ppc_process_record_op63, ppc_process_record): New functions.
951
952 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
953
954         * rs6000-tdep.c (rs6000_in_function_epilogue_p): Rename to
955         rs6000_in_function_epilogue_frame_p and add an argument
956         for frame_info.
957         (rs6000_epilogue_frame_cache, rs6000_epilogue_frame_this_id,
958         rs6000_epilogue_frame_prev_register, rs6000_epilogue_frame_sniffer):
959         New functions.
960         (rs6000_epilogue_frame_unwind): New.
961         (rs6000_gdbarch_init): Append epilogue unwinder.
962
963 2015-01-16  Sergio Durigan Junior  <sergiodj@redhat.com>
964
965         * nat/linux-personality.c: Replace "#ifndef
966         HAVE_DECL_ADDR_NO_RANDOMIZE" by "#if
967         !HAVE_DECL_ADDR_NO_RANDOMIZE", fixing a regression in RHEL-5
968         systems.
969
970 2015-01-16  Eli Zaretskii  <eliz@gnu.org>
971
972         * tui/tui-win.c (tui_rehighlight_all, tui_set_var_cmd): New
973         functions.
974         (_initialize_tui_win) <border-kind, border-mode>:
975         <active-border-mode>: Use tui_set_var_cmd as the "set" function.
976         (tui_set_tab_width_command): Fix the commentary.
977
978         * tui/tui-win.h: Add prototype for tui_rehighlight_all.
979
980         * tui/tui-win.c (tui_scroll_left_command, tui_scroll_right_command):
981         Doc fix.
982         (tui_set_tab_width_command): Delete and recreate the source and
983         the disassembly windows, to show the effect of the changed tab
984         size immediately.
985
986         * tui/tui-data.h (LINE_PREFIX): Make shorter
987         (MAX_PID_WIDTH): Enlarge from 14 to 19, to leave enough space for
988         "Thread NNNNN.XXXX" thread ID notation on Windows.
989
990 2015-01-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
991
992         Fix gcc-5 compilation.
993         * hppa-tdep.c (inst_saves_gr): Fix parentheses typo.
994
995 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
996
997         * Makefile.in (HFILES_NO_SRCDIR): Add nat/linux-personality.h.
998         (linux-personality.o): New rule.
999         * common/common-defs.h: Include <stdint.h>.
1000         * config/aarch64/linux.mh (NATDEPFILES): Include
1001         linux-personality.o.
1002         * config/alpha/alpha-linux.mh (NATDEPFILES): Likewise.
1003         * config/arm/linux.mh (NATDEPFILES): Likewise.
1004         * config/i386/linux64.mh (NATDEPFILES): Likewise.
1005         * config/i386/linux.mh (NATDEPFILES): Likewise.
1006         * config/ia64/linux.mh (NATDEPFILES): Likewise.
1007         * config/m32r/linux.mh (NATDEPFILES): Likewise.
1008         * config/m68k/linux.mh (NATDEPFILES): Likewise.
1009         * config/mips/linux.mh (NATDEPFILES): Likewise.
1010         * config/pa/linux.mh (NATDEPFILES): Likewise.
1011         * config/powerpc/linux.mh (NATDEPFILES): Likewise.
1012         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Likewise.
1013         * config/powerpc/spu-linux.mh (NATDEPFILES): Likewise.
1014         * config/s390/linux.mh (NATDEPFILES): Likewise.
1015         * config/sparc/linux64.mh (NATDEPFILES): Likewise.
1016         * config/sparc/linux.mh (NATDEPFILES): Likewise.
1017         * config/tilegx/linux.mh (NATDEPFILES): Likewise.
1018         * config/xtensa/linux.mh (NATDEPFILES): Likewise.
1019         * defs.h: Remove #include <stdint.h> (moved to
1020         common/common-defs.h).
1021         * linux-nat.c: Include nat/linux-personality.h.  Remove #include
1022         <sys/personality.h>; do not define ADDR_NO_RANDOMIZE (moved to
1023         nat/linux-personality.c).
1024         (linux_nat_create_inferior): Remove code to disable address space
1025         randomization (moved to nat/linux-personality.c).  Create cleanup
1026         to disable address space randomization.
1027         * nat/linux-personality.c: New file.
1028         * nat/linux-personality.h: Likewise.
1029
1030 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
1031
1032         * Makefile.in (ALLDEPFILES): Including common/mingw-strerror.c and
1033         common/posix-strerror.c.
1034         (posix-strerror.o): New rule.
1035         (mingw-strerror.o): Likewise.
1036         * common/common-utils.h (safe_strerror): Move prototype to here,
1037         from utils.h.
1038         * common/common.host: New file.
1039         * common/mingw-strerror.c: Likewise.
1040         * common/posix-strerror.c: Likewise.
1041         * configure: Regenerated.
1042         * configure.ac: Source common/common.host.  Add variable
1043         common_host_obs to gdb_host_obs.
1044         * contrib/ari/gdb_ari.sh: Mention gdb/common/mingw-strerror.c and
1045         gdb/common/posix-strerror.c when warning about the use of
1046         strerror.
1047         * mingw-hdep.c (safe_strerror): Remove definition; move it to
1048         common/mingw-strerror.c.
1049         * posix-hdep.c (safe_strerror): Remove definition; move it to
1050         common/posix-hdep.c.
1051         * utils.h (safe_strerror): Remove prototype; move to
1052         common/common-utils.h.
1053
1054 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
1055
1056         GDB 7.8.2 released.
1057
1058 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
1059
1060         * ada-lang.c (ada_array_bound_from_type): Ignore array's parallel
1061         ___XA type if the array has already been fixed.
1062
1063 2015-01-14  Yao Qi  <yao@codesourcery.com>
1064
1065         * Makefile.in (ppc-linux.o): New rule.
1066         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Add ppc-linux.o.
1067         * configure.ac: AC_CHECK_FUNCS(getauxval).
1068         * config.in: Re-generated.
1069         * configure: Re-generated.
1070         * nat/ppc-linux.h [__powerpc64__] (ppc64_64bit_inferior_p):
1071         Declare.
1072         * nat/ppc-linux.c: New file.
1073         * ppc-linux-nat.c (ppc_linux_target_wordsize) [__powerpc64__]:
1074         Call ppc64_64bit_inferior_p.
1075
1076 2015-01-14  Yao Qi  <yao@codesourcery.com>
1077
1078         * ppc-linux-nat.c (PT_ORIG_R3, PT_TRAP): Move to
1079         nat/ppc-linux.h.
1080         (PPC_FEATURE_CELL, PPC_FEATURE_BOOKE): Likewise.
1081         (PPC_FEATURE_HAS_DFP): Likewise.
1082         (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
1083         (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
1084         (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
1085         Include "nat/ppc-linux.h".
1086         * nat/ppc-linux.h: New file.
1087         * Makefile.in (HFILES_NO_SRCDIR): Add nat/ppc-linux.h.
1088
1089 2015-01-14  Pedro Alves  <palves@redhat.com>
1090
1091         PR gdb/17525
1092         * breakpoint.c: Include "interps.h".
1093         (bpstat_do_actions_1): Also check whether the interpreter is
1094         async.
1095
1096 2015-01-14  Pedro Alves  <palves@redhat.com>
1097
1098         PR cli/17828
1099         * infrun.c (reinstall_readline_callback_handler_cleanup): Don't
1100         reinstall if the interpreter is sync.
1101
1102 2015-01-13  Doug Evans  <dje@google.com>
1103
1104         * objfiles.c (objfile_filename): New function.
1105         * objfiles.h (objfile_filename): Declare it.
1106         (objfile_name): Add function comment.
1107         * python/py-objfile.c (objfpy_lookup_objfile_by_name): Try both the
1108         bfd file name (which may be realpath'd), and the original name.
1109
1110 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1111
1112         * NEWS: Create a new section for the next release branch.
1113         Rename the section of the current branch, now that it has
1114         been cut.
1115
1116 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1117
1118         GDB 7.9 branch created (92fc2e6978d9a7c8324c7e851dbee59e22ec7a37):
1119         * version.in: Bump version to 7.9.50.DATE-cvs.
1120
1121 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1122
1123         * nat/linux-procfs.c (linux_proc_attach_tgid_threads):
1124         Remove trailing new-line in argument of call to warning.
1125
1126 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1127
1128         * linux-nat.c (attach_proc_task_lwp_callback): Remove trailing
1129         new-line in argument of call to "warning".
1130
1131 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
1132
1133         * ada-lang.c (ada_lookup_symbol_nonlocal): If name not found
1134         in static block, then try searching for primitive types.
1135
1136 2015-01-12  Patrick Palka  <patrick@parcs.ath.cx>
1137
1138         * top.h (gdb_add_history): Declare.
1139         * top.c (command_count): New variable.
1140         (gdb_add_history): New function.
1141         (gdb_safe_append_history): New static function.
1142         (quit_force): Call it.
1143         (command_line_input): Use gdb_add_history instead of
1144         add_history.
1145         * event-top.c (command_line_handler): Likewise.
1146
1147 2015-01-12  James Clarke  <jrtc27@jrtc27.com>  (tiny patch)
1148
1149         PR gdb/17046
1150         * darwin-nat.c: Replace <machine/setjmp.h> #include by
1151         <setjmp.h> #include.
1152
1153 2015-01-11  Doug Evans  <xdje42@gmail.com>
1154
1155         * dwarf2read.c (compute_delayed_physnames): Use TYPE_FN_FIELD_PHYSNAME.
1156
1157 2015-01-11  Doug Evans  <xdje42@gmail.com>
1158
1159         PR gdb/15830
1160         * NEWS: The "maint demangle" command is renamed as "demangle".
1161         * demangle.c: #include cli/cli-utils.h, language.h.
1162         (demangle_command): New function.
1163         (_initialize_demangle): Add new command "demangle".
1164         * maint.c (maintenance_demangle): Stub out.
1165         (_initialize_maint_cmds): Update help text for "maint demangle",
1166         and mark as deprecated.
1167
1168 2015-01-11  Mark Kettenis  <kettenis@gnu.org>
1169
1170         * inf-ptrace.c (inf_ptrace_follow_fork): Adjust now that
1171         inferior_thread is a function.
1172
1173 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
1174
1175         * Makefile.in (.y.c): Don't munge yacc's #line
1176         directives.
1177
1178 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
1179
1180         * utils.c (defaulted_query): Rewrite to use gdb_readline_wrapper
1181         to prompt for input.
1182         * tui/tui-hooks.c (tui_query_hook): Remove.
1183         (tui_install_hooks): Don't set deprecated_query_hook.
1184         * tui/tui-io.c (tui_redisplay_readline): Fix off-by-one error in
1185         height calculation.  Always update the command window's cur_line.
1186
1187 2015-01-09  Pedro Alves  <palves@redhat.com>
1188
1189         * breakpoint.c (hardware_breakpoint_inserted_here_p): New
1190         function.
1191         * breakpoint.h (hardware_breakpoint_inserted_here_p): New
1192         declaration.
1193         * linux-nat.c (linux_nat_status_is_event): Move higher up in file.
1194         (linux_resume_one_lwp): Store the thread's PC.  Adjust to clear
1195         stop_reason.
1196         (check_stopped_by_watchpoint): New function.
1197         (save_sigtrap): Reimplement.
1198         (linux_nat_stopped_by_watchpoint): Adjust.
1199         (linux_nat_lp_status_is_event): Delete.
1200         (stop_wait_callback): Only call save_sigtrap after storing the
1201         pending status.
1202         (status_callback): If the thread had been stopped for a breakpoint
1203         that has since been removed, discard the event and resume the LWP.
1204         (count_events_callback, select_event_lwp_callback): Use
1205         lwp_status_pending_p instead of linux_nat_lp_status_is_event.
1206         (cancel_breakpoint): Rename to ...
1207         (check_stopped_by_breakpoint): ... this.  Record whether the LWP
1208         stopped for a software breakpoint or hardware breakpoint.
1209         (select_event_lwp): Only give preference to the stepping LWP in
1210         all-stop mode.  Adjust comments.
1211         (stop_and_resume_callback): Remove references to new_pending_p.
1212         (linux_nat_filter_event): Likewise.  Leave exit events of the
1213         leader thread pending here.  Handle signal short circuiting here.
1214         Only call save_sigtrap after storing the pending waitstatus.
1215         (linux_nat_wait_1): Remove 'retry' label.  Remove references to
1216         new_pending.  Don't handle leaving events the caller is not
1217         interested in pending here, nor handle signal short-circuiting
1218         here.  Also give equal priority to all LWPs that have had events
1219         in non-stop mode.  If reporting a software breakpoint event,
1220         unadjust the LWP's PC.
1221         * linux-nat.h (enum lwp_stop_reason): New.
1222         (struct lwp_info) <stop_pc>: New field.
1223         (struct lwp_info) <stopped_by_watchpoint>: Delete field.
1224         (struct lwp_info) <stop_reason>: New field.
1225         * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust.
1226
1227 2015-01-09  Pedro Alves  <palves@redhat.com>
1228
1229         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
1230         Set the LWP's 'resumed' flag.
1231
1232 2015-01-09  Pedro Alves  <palves@redhat.com>
1233
1234         * linux-nat.c (linux_resume_one_lwp): New function.
1235         (resume_lwp): Use lwp_status_pending_p and linux_resume_one_lwp.
1236         (linux_nat_resume): Use lwp_status_pending_p and
1237         linux_resume_one_lwp.
1238         (linux_handle_syscall_trap): Use linux_resume_one_lwp.
1239         (linux_handle_extended_wait): Use linux_resume_one_lwp.
1240         (status_callback, running_callback): Use lwp_status_pending_p.
1241         (lwp_status_pending_p): New function.
1242         (stop_and_resume_callback): Use lwp_status_pending_p.
1243         (linux_nat_filter_event): Use linux_resume_one_lwp.
1244         (linux_nat_wait_1): Always use status_callback to look for an LWP
1245         with a pending status.  Use linux_resume_one_lwp.
1246         (resume_stopped_resumed_lwps): Use lwp_status_pending_p and
1247         linux_resume_one_lwp.
1248
1249 2015-01-09  Pedro Alves  <palves@redhat.com>
1250
1251         * breakpoint.c (bp_location_inserted_here_p): New function,
1252         factored out from ...
1253         (breakpoint_inserted_here_p): ... here.  Use
1254         ALL_BP_LOCATIONS_AT_ADDR.
1255         (software_breakpoint_inserted_here_p): Use
1256         bp_location_inserted_here_p and ALL_BP_LOCATIONS_AT_ADDR.
1257
1258 2014-01-09  Pedro Alves  <palves@redhat.com>
1259
1260         Skip enabling event reporting if the kernel supports
1261         PTRACE_EVENT_CLONE.
1262         * linux-thread-db.c: Include "nat/linux-ptrace.h".
1263         (thread_db_use_events): New function.
1264         (try_thread_db_load_1): Check thread_db_use_events before enabling
1265         event reporting.
1266         (update_thread_state): New function.
1267         (attach_thread): Use it.  Check thread_db_use_events before
1268         enabling event reporting.
1269         (thread_db_detach): Check thread_db_use_events before disabling
1270         event reporting.
1271         (find_new_threads_callback): Check thread_db_use_events before
1272         enabling event reporting.  Update the thread's state if not using
1273         libthread_db events.
1274
1275 2015-01-09  Pedro Alves  <palves@redhat.com>
1276
1277         * linux-nat.c (lin_lwp_attach_lwp): Assert that the lwp id we're
1278         about to wait for is > 0.
1279         * linux-thread-db.c (find_new_threads_callback): Ignore thread if
1280         the kernel thread ID is -1.
1281
1282 2015-01-09  Pedro Alves  <palves@redhat.com>
1283
1284         * linux-nat.c (attach_proc_task_lwp_callback): New function.
1285         (linux_nat_attach): Use linux_proc_attach_tgid_threads.
1286         (wait_lwp, linux_nat_filter_event): If not set yet, set the lwp's
1287         ptrace option flags.
1288         * linux-nat.h (struct lwp_info) <must_set_ptrace_flags>: New
1289         field.
1290         * nat/linux-procfs.c: Include <dirent.h>.
1291         (linux_proc_get_int): New parameter "warn".  Handle it.
1292         (linux_proc_get_tgid): Adjust.
1293         (linux_proc_get_tracerpid): Rename to ...
1294         (linux_proc_get_tracerpid_nowarn): ... this.
1295         (linux_proc_pid_get_state): New function, factored out from
1296         (linux_proc_pid_has_state): ... this.  Add new parameter "warn"
1297         and handle it.
1298         (linux_proc_pid_is_gone): New function.
1299         (linux_proc_pid_is_stopped): Adjust.
1300         (linux_proc_pid_is_zombie_maybe_warn)
1301         (linux_proc_pid_is_zombie_nowarn): New functions.
1302         (linux_proc_pid_is_zombie): Use
1303         linux_proc_pid_is_zombie_maybe_warn.
1304         (linux_proc_attach_tgid_threads): New function.
1305         * nat/linux-procfs.h (linux_proc_get_tgid): Update comment.
1306         (linux_proc_get_tracerpid): Rename to ...
1307         (linux_proc_get_tracerpid_nowarn): ... this, and update comment.
1308         (linux_proc_pid_is_gone): New declaration.
1309         (linux_proc_pid_is_zombie): Update comment.
1310         (linux_proc_pid_is_zombie_nowarn): New declaration.
1311         (linux_proc_attach_lwp_func): New typedef.
1312         (linux_proc_attach_tgid_threads): New declaration.
1313         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason): Adjust to
1314         use nowarn functions.
1315         (linux_ptrace_attach_fail_reason_string): Move here from
1316         gdbserver/linux-low.c and rename.
1317         (ptrace_supports_feature): If the current ptrace options are not
1318         known yet, check them now, instead of asserting.
1319         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason_string):
1320         Declare.
1321
1322 2015-01-09  Pedro Alves  <palves@redhat.com>
1323
1324         * linux-thread-db.c (thread_db_find_new_threads_silently)
1325         (try_thread_db_load_1, try_thread_db_load, thread_db_load_search)
1326         (find_new_threads_once): Print debug output on gdb_stdlog.
1327
1328 2015-01-09  Chen Gang  <gang.chen.5i5j@gmail.com>
1329             Pedro Alves  <palves@redhat.com>
1330
1331         * compile/compile.c: Include "gdb_wait.h".
1332         (do_rmdir): Check return value, and free 'zap'.
1333
1334 2015-01-08  Pedro Alves  <palves@redhat.com>
1335             Yao Qi  <yao@codesourcery.com>
1336
1337         * dwarf2loc.c (indirect_pieced_value): Don't call
1338         gdb_sign_extend.  Call extract_signed_integer instead.
1339         * utils.c (gdb_sign_extend): Remove.
1340         * utils.h (gdb_sign_extend): Remove declaration.
1341
1342 2015-01-07  Pierre Muller  <muller@sourceware.org>
1343
1344         PR symtab/17811
1345         * stabsread.c (define_symbol): Set language for C++ special symbols.
1346
1347 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
1348
1349         * inflow.c (initial_gdb_ttystate): Tweak comment.
1350
1351 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
1352
1353         * inflow.c (set_initial_gdb_ttystate): Add empty line after
1354         comment documenting function.
1355
1356 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
1357
1358         * terminal.h (set_initial_gdb_ttystate): Declare.
1359         * inflow.c (initial_gdb_ttystate): New static variable.
1360         (set_initial_gdb_ttystate): New setter.
1361         (child_terminal_init_with_pgrp): Copy initial_gdb_ttystate
1362         instead of our current terminal state.
1363         * top.c (gdb_init): Call set_initial_gdb_ttystate.
1364
1365 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
1366
1367         * guile/scm-type.c (tyscm_array_1): Add comment.
1368         * python/py-type.c (typy_array_1): Add comment.
1369
1370 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
1371
1372         * guile/scm-type.c (tyscm_array_1): Do not raise out-of-range
1373         error if N2 is equal to N1 - 1.
1374
1375 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
1376
1377         * python/py-type.c (typy_array_1): Do not raise negative-length
1378         exception if N2 is equal to N1 - 1.
1379
1380 2015-01-03  Doug Evans  <xdje42@gmail.com>
1381
1382         * c-exp.y: Whitespace cleanup.
1383         (classify_inner_name): Remove extra ;.
1384
1385 2015-01-02  Maciej W. Rozycki  <macro@codesourcery.com>
1386
1387         * mips-tdep.c (mips32_scan_prologue): Keep the extracted stack
1388         offset signed.
1389
1390 2015-01-02  Doug Evans  <dje@google.com>
1391
1392         * dwarf2read.c (setup_type_unit_groups): Remove outdated comment.
1393
1394 2015-01-02  Doug Evans  <dje@google.com>
1395
1396         * symtab.h (struct symbol): Fix typo in comment.
1397
1398 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1399
1400         Update year range in copyright notice of all files.
1401
1402 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1403
1404         * top.c (print_gdb_version): Update copyright year to 2015.
1405
1406 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
1407
1408         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2014.
1409
1410 For older changes see ChangeLog-2014.
1411 \f
1412 Local Variables:
1413 mode: change-log
1414 left-margin: 8
1415 fill-column: 74
1416 version-control: never
1417 coding: utf-8
1418 End: