Make TRY/CATCH use real C++ try/catch in C++ mode
[external/binutils.git] / gdb / ChangeLog
1 2015-03-07  Pedro Alves  <palves@redhat.com>
2
3         * common/common-exceptions.c [!__cplusplus] (enum catcher_state)
4         (exceptions_state_mc_action_iter)
5         (exceptions_state_mc_action_iter_1, exceptions_state_mc_catch):
6         Don't define.
7         [__cplusplus] (try_scope_depth): New global.
8         [__cplusplus] (exception_try_scope_entry)
9         (exception_try_scope_exit, gdb_exception_sliced_copy)
10         (exception_rethrow): New functions.
11         (throw_exception): In C++ mode, throw
12         gdb_exception_RETURN_MASK_QUIT for RETURN_QUIT and
13         gdb_exception_RETURN_MASK_ERROR for RETURN_ERROR.
14         (throw_it): In C++ mode, use try_scope_depth.
15         * common/common-exceptions.h [!__cplusplus]
16         (exceptions_state_mc_action_iter)
17         (exceptions_state_mc_action_iter_1, exceptions_state_mc_catch):
18         Don't declare.
19         [__cplusplus] (exception_try_scope_entry)
20         (exception_try_scope_exit, exception_rethrow): Declare.
21         [__cplusplus] (struct exception_try_scope): New struct.
22         [__cplusplus] (TRY, CATCH, END_CATCH): Reimplement on top of real
23         C++ exceptions.
24         (struct gdb_exception_RETURN_MASK_ALL)
25         (struct gdb_exception_RETURN_MASK_ERROR)
26         (struct gdb_exception_RETURN_MASK_QUIT): New types.
27
28 2015-03-07  Pedro Alves  <palves@redhat.com>
29
30         * main.c (handle_command_errors): Remove volatile qualifier from
31         parameter.
32
33 2015-03-07  Pedro Alves  <palves@redhat.com>
34
35         * breakpoint.c (save_breakpoints): Adjust to avoid code between
36         TRY and CATCH.
37         * gdbtypes.c (safe_parse_type): Remove empty line.
38         (types_deeply_equal):
39         * guile/scm-frame.c (gdbscm_frame_name):
40         * linux-thread-db.c (find_new_threads_once):
41         * python/py-breakpoint.c (bppy_get_commands):
42         * record-btrace.c (record_btrace_insert_breakpoint)
43         (record_btrace_remove_breakpoint, record_btrace_start_replaying)
44         (record_btrace_start_replaying): Adjust to avoid code between TRY
45         and CATCH.
46
47 2015-03-07  Pedro Alves  <palves@redhat.com>
48
49         * common/common-exceptions.c (struct catcher) <exception>: No
50         longer a pointer to volatile exception.  Now an exception value.
51         <mask>: Delete field.
52         (exceptions_state_mc_init): Remove all parameters.  Adjust.
53         (exceptions_state_mc): No longer pop the catcher here.
54         (exceptions_state_mc_catch): New function.
55         (throw_exception): Adjust.
56         * common/common-exceptions.h (exceptions_state_mc_init): Remove
57         all parameters.
58         (exceptions_state_mc_catch): Declare.
59         (TRY_CATCH): Rename to ...
60         (TRY): ... this.  Remove EXCEPTION and MASK parameters.
61         (CATCH, END_CATCH): New.
62         All callers adjusted.
63
64 2015-03-07  Tom Tromey  <tromey@redhat.com>
65
66         * top.c (quit_force): Inline and delete DO_TRY, DO_PRINT_EX.
67
68 2015-03-07  Pedro Alves  <palves@redhat.com>
69
70         * amd64-tdep.c (amd64_frame_cache, amd64_sigtramp_frame_cache)
71         (amd64_epilogue_frame_cache): Normal exception handling code.
72         * break-catch-throw.c (check_status_exception_catchpoint)
73         (re_set_exception_catchpoint): Ditto.
74         * cli/cli-interp.c (safe_execute_command):
75         * cli/cli-script.c (script_from_file): Ditto.
76         * compile/compile-c-symbols.c (generate_c_for_for_one_variable):
77         Ditto.
78         * compile/compile-object-run.c (compile_object_run): Ditto.
79         * cp-abi.c (baseclass_offset): Ditto.
80         * cp-valprint.c (cp_print_value): Ditto.
81         * exceptions.c (catch_exceptions_with_msg):
82         * frame-unwind.c (frame_unwind_try_unwinder): Ditto.
83         * frame.c (get_frame_address_in_block_if_available): Ditto.
84         * i386-tdep.c (i386_frame_cache, i386_epilogue_frame_cache)
85         (i386_sigtramp_frame_cache): Ditto.
86         * infcmd.c (post_create_inferior): Ditto.
87         * linespec.c (parse_linespec, find_linespec_symbols):
88         * p-valprint.c (pascal_object_print_value): Ditto.
89         * parse.c (parse_expression_for_completion): Ditto.
90         * python/py-finishbreakpoint.c (bpfinishpy_init): Ditto.
91         * remote.c (remote_get_noisy_reply): Ditto.
92         * s390-linux-tdep.c (s390_frame_unwind_cache): Ditto.
93         * solib-svr4.c (solib_svr4_r_map): Ditto.
94
95 2015-03-06  Gary Benson  <gbenson@redhat.com>
96
97         * common/common-utils.h (startswith): New inline function.
98         All places where this logic was used updated to use the above.
99
100 2015-03-05  Pedro Alves  <palves@redhat.com>
101
102         PR gdb/18002
103         * mem-break.c (default_memory_insert_breakpoint): Set shadow_len
104         after reading the breakpoint's shadow memory.
105
106 2015-03-05  Mark Kettenis  <kettenis@gnu.org>
107
108         * hppabsd-nat.c: Remove file.
109         * hppaobsd-nat.c: New file.
110         * Makefile.in (ALLDEPFILES): Remove hppabsd-nat.c.  Add
111         hppaobsd-nat.c.
112         * config/pa/obsd.mh (NATDEPFILES): Replace hppabsd-nat.o with
113         hppaobsd-nat.o.
114
115 2015-03-04  Pedro Alves  <palves@redhat.com>
116
117         * target.h (struct target_ops) <to_decr_pc_after_break>: Delete.
118         (target_decr_pc_after_break): Delete declaration.
119         * target.c (default_target_decr_pc_after_break)
120         (target_decr_pc_after_break): Delete.
121         * linux-nat.c (check_stopped_by_breakpoint, linux_nat_wait_1): Use
122         gdbarch_decr_pc_after_break instead of target_decr_pc_after_break.
123         * linux-thread-db.c (check_event): Likewise.
124         * infrun.c (adjust_pc_after_break): Likewise.
125         * darwin-nat.c (cancel_breakpoint): Likewise.
126         * aix-thread.c (aix_thread_wait): Likewise.
127         * target-delegates.c: Regenerate.
128
129 2015-03-04  Pedro Alves  <palves@redhat.com>
130
131         * linux-nat.c (save_sigtrap): Check for breakpoints before
132         checking watchpoints.
133         (status_callback) [USE_SIGTRAP_SIGINFO]: Don't check whether a
134         breakpoint is inserted if relying on SIGTRAP's siginfo.si_code.
135         (check_stopped_by_breakpoint) [USE_SIGTRAP_SIGINFO]: Decide whether
136         a breakpoint triggered based on the SIGTRAP's siginfo.si_code.
137         (linux_nat_stopped_by_sw_breakpoint)
138         (linux_nat_supports_stopped_by_sw_breakpoint)
139         (linux_nat_stopped_by_hw_breakpoint)
140         (linux_nat_supports_stopped_by_hw_breakpoint): New functions.
141         (linux_nat_wait_1): Don't re-increment the PC if relying on
142         SIGTRAP's siginfo->si_code.
143         (linux_nat_add_target): Install new target methods.
144         * linux-thread-db.c (check_event): Don't account for breakpoint PC
145         offset if the target already adjusted the PC.
146         * nat/linux-ptrace.h (USE_SIGTRAP_SIGINFO): New.
147         (GDB_ARCH_TRAP_BRKPT): New.
148         (TRAP_HWBKPT): Define if not already defined.
149
150 2015-03-04  Pedro Alves  <palves@redhat.com>
151
152         * NEWS: Mention the new "swbreak" and "hwbreak" stop reasons.
153         * remote.c (struct remote_state) <remote_stopped_by_watchpoint_p>:
154         Delete field.
155         <stop_reason>: New field.
156         (PACKET_swbreak_feature, PACKET_hwbreak_feature): New enum values.
157         (packet_set_cmd_state): New function.
158         (remote_protocol_features): Register the "swbreak" and "hwbreak"
159         features.
160         (remote_query_supported): If not disabled with the corresponding
161         "set remote foo-packet" command, report support for the swbreak
162         and hwbreak features.
163         (struct stop_reply) <remote_stopped_by_watchpoint_p>: Delete
164         field.
165         <stop_reason>: New field.
166         (remote_parse_stop_reply): Handle "swbreak" and "hwbreak".
167         (remote_wait_as): Adjust.
168         (remote_stopped_by_sw_breakpoint)
169         (remote_supports_stopped_by_sw_breakpoint)
170         (remote_stopped_by_hw_breakpoint)
171         (remote_supports_stopped_by_hw_breakpoint): New functions.
172         (remote_stopped_by_watchpoint): New function.
173         (init_remote_ops): Install them.
174         (_initialize_remote): Register new "set/show remote
175         swbreak-feature-packet" and "set/show remote
176         swbreak-feature-packet" commands.
177
178 2015-03-04  Pedro Alves  <palves@redhat.com>
179
180         * btrace.h: Include target/waitstatus.h.
181         (struct btrace_thread_info) <stop_reason>: New field.
182         * record-btrace.c (record_btrace_step_thread): Use
183         record_check_stopped_by_breakpoint instead of breakpoint_here_p.
184         (record_btrace_decr_pc_after_break): Delete.
185         (record_btrace_stopped_by_sw_breakpoint)
186         (record_btrace_supports_stopped_by_sw_breakpoint)
187         (record_btrace_stopped_by_hw_breakpoint)
188         (record_btrace_supports_stopped_by_hw_breakpoint): New functions.
189         (init_record_btrace_ops): Install them.
190         * record-full.c (record_full_hw_watchpoint): Delete and replace
191         with ...
192         (record_full_stop_reason): ... this throughout.
193         (record_full_exec_insn): Adjust.
194         (record_full_wait_1): Adjust.  No longer re-increment the PC.
195         (record_full_wait_1): Adjust.  Use
196         record_check_stopped_by_breakpoint instead of breakpoint_here_p.
197         (record_full_stopped_by_watchpoint): Adjust.
198         (record_full_stopped_by_sw_breakpoint)
199         (record_full_supports_stopped_by_sw_breakpoint)
200         (record_full_supports_stopped_by_sw_breakpoint)
201         (record_full_stopped_by_hw_breakpoint)
202         (record_full_supports_stopped_by_hw_breakpoint): New functions.
203         (init_record_full_ops, init_record_full_core_ops): Install them.
204         * record.c (record_check_stopped_by_breakpoint): New function.
205         * record.h: Include target/waitstatus.h.
206         (record_check_stopped_by_breakpoint): New declaration.
207
208 2015-03-04  Pedro Alves  <palves@redhat.com>
209
210         enum lwp_stop_reason -> enum target_stop_reason
211         * linux-nat.c (linux_resume_one_lwp, check_stopped_by_watchpoint)
212         (linux_nat_stopped_by_watchpoint, status_callback)
213         (linux_nat_wait_1): Adjust.
214         * linux-nat.h (enum lwp_stop_reason): Delete.
215         (struct lwp_info) <stop_reason>: Now an enum target_stop_reason.
216         * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust.
217         * target/waitstatus.h (enum target_stop_reason): New.
218
219 2015-03-04  Pedro Alves  <palves@redhat.com>
220
221         * breakpoint.c (need_moribund_for_location_type): New function.
222         (bpstat_stop_status): Don't skipping checking moribund locations
223         of breakpoint types which the target tell caused a stop.
224         (program_breakpoint_here_p): New function, factored out from ...
225         (bp_loc_is_permanent): ... this.
226         (update_global_location_list): Don't create a moribund location if
227         the target supports reporting stops of the type of the removed
228         breakpoint.
229         * breakpoint.h (program_breakpoint_here_p): New declaration.
230         * infrun.c (adjust_pc_after_break): Return early if the target has
231         already adjusted the PC.  Add comments.
232         (handle_signal_stop): If nothing explains a signal, and the target
233         tells us the stop was caused by a software breakpoint, check if
234         there's a breakpoint instruction in the memory.  If so, adjust the
235         PC before presenting the stop to the user.  Otherwise, ignore the
236         trap.  If nothing explains a signal, and the target tells us the
237         stop was caused by a hardware breakpoint, ignore the trap.
238         * target.h (struct target_ops) <to_stopped_by_sw_breakpoint,
239         to_supports_stopped_by_sw_breakpoint, to_stopped_by_hw_breakpoint,
240         to_supports_stopped_by_hw_breakpoint>: New fields.
241         (target_stopped_by_sw_breakpoint)
242         (target_supports_stopped_by_sw_breakpoint)
243         (target_stopped_by_hw_breakpoint)
244         (target_supports_stopped_by_hw_breakpoint): Define.
245         * target-delegates.c: Regenerate.
246
247 2015-03-04  Pedro Alves  <palves@redhat.com>
248
249         * infrun.c (follow_fork_inferior): Use the whole of the
250         inferior_ptid and pending_follow.related_pid ptids instead of
251         building ptids from the process components.  Adjust verbose output
252         to use target_pid_to_str.
253         * linux-nat.c (linux_child_follow_fork): Use the whole of the
254         inferior_ptid and pending_follow.related_pid ptids instead of
255         building ptids from the process components.
256
257 2015-03-04  Mark Kettenis  <kettenis@gnu.org>
258
259         * inf-ptrace.c [PT_GET_PROCESS_STATE]
260         (inf_ptrace_insert_fork_catchpoint): New function.
261         (inf_ptrace_remove_fork_catchpoint): New function.
262         (inf_ptrace_target) [PT_GET_PROCESS_STATE]: Install them.
263
264 2015-03-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
265
266         * s390-linux-tdep.c (s390_register_name): Return empty string
267         instead of NULL for registers that shouldn't be visible.
268
269 2015-03-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
270
271         * s390-linux-tdep.c (s390_gdbarch_init): Use the correct syscall
272         XML file for 64-bit targets.
273
274 2015-03-03  Simon Marchi  <simon.marchi@ericsson.com>
275
276         * target.h (find_default_create_inferior): Remove declaration.
277         (find_default_attach): Likewise.
278
279 2015-03-03  Pedro Alves  <palves@redhat.com>
280
281         * inf-ptrace.c (inf_ptrace_resume): Remove spurious whitespace.
282         Use ptid_get_pid to get the overall process id when resuming all
283         threads.
284
285 2015-03-03  Pedro Alves  <palves@redhat.com>
286
287         * i386-linux-nat.c (i386_linux_resume): Get the ptrace PID out of
288         the lwp field of ptid.  Pass the full ptid to get_thread_regcache.
289         * inf-ptrace.c (get_ptrace_pid): New function.
290         (inf_ptrace_resume): Use it.
291         * linux-nat.c (linux_resume_one_lwp): Pass the LWP's ptid ummodified
292         to the lower layer.
293
294 2015-03-03  Markus Metzger  <markus.t.metzger@intel.com>
295
296         * nat/linux-btrace.c: Include sys/utsname.h.
297         (linux_determine_kernel_ptr_bits): New.
298         (linux_enable_bts): Call linux_determine_kernel_ptr_bits.
299         * x86-linux-nat.c (x86_linux_enable_btrace): Do not overwrite non-zero
300         ptr_bits.
301
302 2015-03-03  Markus Metzger  <markus.t.metzger@intel.com>
303
304         * btrace.c (ftrace_update_function): Treat return as tailcall for
305         "_dl_runtime_resolve".
306
307 2015-03-03  Markus Metzger  <markus.t.metzger@intel.com>
308
309         * btrace.h (btrace_function) <lbegin, lend>: Remove.
310         * btrace.c (ftrace_debug): Do not print the line range.
311         (ftrace_skip_file, ftrace_update_lines): Remove.
312         (ftrace_new_function): Remove lbegin and lend initialization.
313         (btrace_compute_ftrace_bts): Remove call to ftrace_update_lines.
314         * record-btrace.c (btrace_compute_src_line_range): New.
315         (btrace_call_history_src_line): Call btrace_compute_src_line_range.
316
317 2015-03-02  Pedro Alves  <palves@redhat.com>
318
319         * infrun.c (follow_exec): Delete all threads of the process except
320         the event thread.  Extended comments.
321
322 2015-03-02  Joel Brobecker  <brobecker@adacore.com>
323
324         * contrib/ari/gdb_ari.sh: Reinstate checks for "true" and "false".
325
326 2015-03-02  Joel Brobecker  <brobecker@adacore.com>
327
328         * utils.h: Remove <stdbool.h> #include.
329         (producer_is_gcc): Change return type to "int".
330         * utils.c (producer_is_gcc): Change return type to int.
331         Return 1 instead of true, and 0 instead of false.
332         Adjust function documentation accordingly.
333
334 2015-03-02  Andreas Arnez  <arnez@linux.vnet.ibm.com>
335
336         * s390-linux-nat.c (have_regset_vxrs): New static variable.
337         (s390_linux_fetch_inferior_registers): Handle vector registers, if
338         present.
339         (s390_linux_store_inferior_registers): Likewise.
340         (s390_get_hwcap): Remove function.  Embed its logic...
341         (s390_read_description): ...here.  Yield a target description with
342         vector registers if applicable.
343         * s390-linux-tdep.c: Include "features/s390-vx-linux64.c",
344         "features/s390-tevx-linux64.c", "features/s390x-vx-linux64.c", and
345         "features/s390x-tevx-linux64.c".
346         (struct gdbarch_tdep) <v0_full_regnum>: New field.
347         (s390_dwarf_regmap): Add vector registers.  Remove bogus entries
348         for "GNU/Linux-specific registers".
349         (s390_dwarf_reg_r0l): New enum value.
350         (s390_dwarf_reg_to_regnum): Support vector registers.
351         (s390_adjust_frame_regnum): Adjust pseudo DWARF register numbers
352         of GPR lower halves.
353         (regnum_is_vxr_full): New function.
354         (s390_register_name): New function.
355         (s390_pseudo_register_name): Handle v0-v15, which are composed of
356         f0-f15 and v0l-v15l.
357         (s390_pseudo_register_type): Likewise.
358         (s390_pseudo_register_read): Likewise.
359         (s390_pseudo_register_write): Likewise.
360         (s390_value_from_register): Account for the fact that values are
361         placed left-justified in vector registers.
362         (s390_pseudo_register_reggroup_p): Add pseudo registers v0-v15 to
363         the vector reggroup and omit them from the general reggroup.
364         (s390_regmap_vxrs_low, s390_regmap_vxrs_high): New register maps.
365         (s390_vxrs_low_regset, s390_vxrs_high_regset): New regsets.
366         (s390_iterate_over_regset_sections): Add iterations for the two
367         new vector regsets.
368         (s390_core_read_description): Yield a target description with
369         vector registers if applicable.
370         (s390_gdbarch_init): Handle target descriptions with vector
371         registers.  Add "register_name" gdbarch method.
372         (_initialize_s390_tdep): Call new tdesc initialization functions.
373         * s390-linux-tdep.h (HWCAP_S390_VX): New macro.
374         (S390_V0_LOWER_REGNUM, S390_V1_LOWER_REGNUM, S390_V2_LOWER_REGNUM)
375         (S390_V3_LOWER_REGNUM, S390_V4_LOWER_REGNUM, S390_V5_LOWER_REGNUM)
376         (S390_V6_LOWER_REGNUM, S390_V7_LOWER_REGNUM, S390_V8_LOWER_REGNUM)
377         (S390_V9_LOWER_REGNUM, S390_V10_LOWER_REGNUM)
378         (S390_V11_LOWER_REGNUM, S390_V12_LOWER_REGNUM)
379         (S390_V13_LOWER_REGNUM, S390_V14_LOWER_REGNUM)
380         (S390_V15_LOWER_REGNUM, S390_V16_REGNUM, S390_V17_REGNUM)
381         (S390_V18_REGNUM, S390_V19_REGNUM, S390_V20_REGNUM)
382         (S390_V21_REGNUM, S390_V22_REGNUM, S390_V23_REGNUM)
383         (S390_V24_REGNUM, S390_V25_REGNUM, S390_V26_REGNUM)
384         (S390_V27_REGNUM, S390_V28_REGNUM, S390_V29_REGNUM)
385         (S390_V30_REGNUM, S390_V31_REGNUM): New macros.
386         (S390_NUM_REGS): Adjust value.
387         (s390_vxrs_low_regset, s390_vxrs_high_regset): Declare.
388         (tdesc_s390_vx_linux64, tdesc_s390_tevx_linux64)
389         (tdesc_s390x_vx_linux64, tdesc_s390x_tevx_linux64): Likewise.
390         * NEWS: Announce S/390 vector register support.
391
392 2015-03-02  Andreas Arnez  <arnez@linux.vnet.ibm.com>
393
394         * features/s390-tevx-linux64.xml: New file.
395         * features/s390-vx-linux64.xml: New file.
396         * features/s390-vx.xml: New file.
397         * features/s390x-tevx-linux64.xml: New file.
398         * features/s390x-vx-linux64.xml: New file.
399         * features/Makefile (WHICH): Add s390-vx-linux64,
400         s390x-vx-linux64, s390-tevx-linux64, and s390x-tevx-linux64.
401         (s390-vx-linux64-expedite, s390-tevx-linux64-expedite)
402         (s390x-vx-linux64-expedite, s390x-tevx-linux64-expedite): New
403         macros.
404         * features/s390-tevx-linux64.c: New generated file.
405         * features/s390-vx-linux64.c: Likewise.
406         * features/s390x-tevx-linux64.c: Likewise.
407         * features/s390x-vx-linux64.c: Likewise.
408         * regformats/s390-tevx-linux64.dat: Likewise.
409         * regformats/s390-vx-linux64.dat: Likewise.
410         * regformats/s390x-tevx-linux64.dat: Likewise.
411         * regformats/s390x-vx-linux64.dat: Likewise.
412
413 2015-02-28  Doug Evans  <xdje42@gmail.com>
414
415         * symtab.h (struct symtab) <next>: Fix comment.
416
417 2015-02-27  Simon Marchi  <simon.marchi@ericsson.com>
418
419         * python/python.c (python_GdbModuleDef): Rename GdbMethods to
420         python_GdbMethods.
421
422 2015-02-27  Pedro Alves  <palves@redhat.com>
423
424         * dtrace-probe.c (dtrace_probe_ops): Make extern.
425
426 2015-02-27  Pedro Alves  <palves@redhat.com>
427
428         * common/common-exceptions.h (exception_none): Declare.
429         * common/common-exceptions.c (exception_none): Moved from
430         exceptions.c.
431         (exceptions_state_mc_init): Use exception_none.
432         * exceptions.c (exception_none): Move to
433         common/common-exceptions.c.
434         * exceptions.h (exception_none): Move to
435         common/common-exceptions.h.
436
437 2015-02-27  Pedro Alves  <palves@redhat.com>
438
439         * main.c (catch_command_errors, catch_command_errors_const):
440         Remove 'mask' argument.  Adjust.
441         (captured_main): Adjust callers.
442
443 2015-02-27  Pedro Alves  <palves@redhat.com>
444
445         * python/python-internal.h: Include "extension-priv.h".
446
447 2015-02-27  Pedro Alves  <palves@redhat.com>
448
449         * breakpoint.h (enum print_stop_action): Move further up in the
450         file.
451
452 2015-02-27  Pedro Alves  <palves@redhat.com>
453
454         * gdbarch.sh: Include regcache.h.
455         * gdbarch.h: Regenerate.
456
457 2015-02-27  Pedro Alves  <palves@redhat.com>
458
459         * arm-tdep.c (decode_insn) <arm_handle_insn, thumb_handle_insn>:
460         Remove duplicate const.
461         * sparc-sol2-tdep.c (sparc_sol2_static_transform_name): Remove
462         duplicate const.
463
464 2015-02-27  Pedro Alves  <palves@redhat.com>
465
466         * cp-valprint.c (vtbl_ptr_name): Use EXPORTED_CONST.
467         * guile/guile.c (extension_language_guile): Use EXPORTED_CONST.
468         * features/feature_to_c.sh: Tag the generated xml_builtin array
469         with extern const in C++ mode.
470
471 2015-02-27  Tom Tromey  <tromey@redhat.com>
472
473         * minidebug.c (struct lzma_stream): Rename to ...
474         (struct gdb_lzma_stream): ... this.
475         (lzma_open, lzma_pread, lzma_close, lzma_stat): Adjust.
476
477 2015-02-27  Pedro Alves  <palves@redhat.com>
478
479         * mi/mi-cmd-stack.c (mi_apply_ext_lang_frame_filter): New
480         function.
481         (mi_cmd_stack_list_locals, mi_cmd_stack_list_args)
482         (mi_cmd_stack_list_variables): Use it.
483
484 2015-02-27  Pedro Alves  <palves@redhat.com>
485
486         * x86-linux-nat.c (u_debugreg_offset): New function.
487         (x86_linux_dr_get, x86_linux_dr_set): Use it.
488
489 2015-02-27  Pedro Alves  <palves@redhat.com>
490
491         * nat/x86-dregs.h (enum target_hw_bp_type): Remove forward
492         declaration.
493         Include break-common.h.
494
495 2015-02-27  Tom Tromey  <tromey@redhat.com>
496             Pedro Alves <palves@redhat.com>
497
498         * arm-tdep.c (set_fp_model_sfunc, arm_set_abi): Use 'int' for
499         local used to iterate over enums.
500         * completer.c (signal_completer): Likewise.
501         * i386-tdep.c (i386_stap_parse_special_token): Likewise.
502         * rs6000-tdep.c (powerpc_set_vector_abi): Likewise.
503         * tui/tui-data.c (tui_next_win, tui_prev_win): Likewise.
504         * tui/tui-layout.c (next_layout, prev_layout): Likewise.
505         * tui/tui-win.c (tui_refresh_all_win, tui_rehighlight_all)
506         (tui_resize_all, tui_set_focus_command, tui_all_windows_info): Likewise.
507         * tui-wingeneral.c (tui_refresh_all):  Likewise.
508
509 2015-02-27  Pedro Alves  <palves@redhat.com>
510
511         * target.h: Include "infrun.h".
512
513 2015-02-27  Pedro Alves  <palves@redhat.com>
514
515         * gdb_proc_service.h: Wrap with EXTERN_C_PUSH/EXTERN_C_POP.
516
517 2015-02-27  Pedro Alves  <palves@redhat.com>
518
519         * common/agent.h (IPA_SYM_EXPORTED_NAME): New.
520         (IPA_SYM): Use it.
521         * common/common-defs.h (EXTERN_C_PUSH, EXTERN_C_POP): New macros.
522
523 2015-02-27  Pedro Alves  <palves@redhat.com>
524
525         * cli-out.c (_rl_erase_entire_line): Move declaration out of
526         cli_mld_erase_entire_line, and make it extern "C".
527         * common/common-defs.h (EXTERN_C): New.
528         * completer.c (_rl_completion_prefix_display_length)
529         (_rl_print_completions_horizontally, QSFUNC): Move declarations
530         out of gdb_display_match_list_1.
531         (_rl_qsort_string_compare): Move declaration out of
532         gdb_display_match_list_1, and make it extern "C".
533         * defs.h (re_comp): Use EXTERN_C.
534         * maint.c (_mcleanup): Move declaration out of mcleanup_wrapper,
535         and make it extern "C".
536         (monstartup): Move declaration out of maintenance_set_profile_cmd,
537         and make it extern "C".
538         (main): Move declaration out of maintenance_set_profile_cmd.
539         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason_string): Use
540         EXTERN_C.
541
542 2015-02-27  Pedro Alves  <palves@redhat.com>
543
544         * python/python.c (GdbMethods): Rename to ...
545         (python_GdbMethods): ... this and make extern.
546         (GdbModuleDef): Rename to ...
547         (python_GdbModuleDef): ... this and make extern.
548
549 2015-02-27  Pedro Alves  <palves@redhat.com>
550
551         * record-btrace.c (set_record_btrace_cmdlist)
552         (show_record_btrace_cmdlist): Remove redefinitions.
553
554 2015-02-27  Tom Tromey  <tromey@redhat.com>
555             Pedro Alves  <palves@redhat.com>
556
557         * dwarf2-frame.c (enum cfa_how_kind, struct
558         dwarf2_frame_state_reg_info): Move out of struct
559         dwarf2_frame_state.
560         * dwarf2read.c (struct tu_stats): Move out of struct
561         dwarf2_per_objfile.
562         (struct file_entry): Move out of struct line_header.
563         (struct nextfield, struct nextfnfield, struct fnfieldlist, struct
564         typedef_field_list): Move out of struct field_info.
565         * gdbtypes.h (enum dynamic_prop_kind, union dynamic_prop_data):
566         Move out of struct dynamic_prop.
567         (union type_owner, union field_location, struct field, struct
568         range_bounds, union type_specific): Move out of struct main_type.
569         (struct fn_fieldlist, struct fn_field, struct typedef_field)
570         (VOFFSET_STATIC): Move out of struct cplus_struct_type.
571         (struct call_site_target, union call_site_parameter_u, struct
572         call_site_parameter): Move out of struct call_site.
573         * m32c-tdep.c (enum m32c_prologue_kind): Move out of struct
574         m32c_prologue.
575         (enum srcdest_kind): Move out of struct srcdest.
576         * main.c (enum cmdarg_kind): Move out of struct cmdarg.
577         * prologue-value.h (enum prologue_value_kind): Move out of struct
578         prologue_value.
579         * s390-linux-tdep.c (enum s390_abi_kind): Move out of struct
580         gdbarch_tdep.
581         * stabsread.c (struct nextfield, struct next_fnfieldlist): Move
582         out of struct field_info.
583         * symfile.h (struct other_sections): Move out of struct
584         section_addr_info.
585         * symtab.c (struct symbol_cache_slot): Move out struct
586         block_symbol_cache.
587         * target-descriptions.c (enum tdesc_type_kind): Move out of
588         typedef struct tdesc_type.
589         * tui/tui-data.h (enum tui_line_or_address_kind): Move out of
590         struct tui_line_or_address.
591         * value.c (enum internalvar_kind, union internalvar_data): Move
592         out of struct internalvar.
593         * xtensa-tdep.h (struct ctype_cache): Move out of struct
594         gdbarch_tdep.
595
596 2015-02-27  Tom Tromey  <tromey@redhat.com>
597             Pedro Alves  <palves@redhat.com>
598
599         Rename symbols whose names are reserved C++ keywords throughout.
600
601 2015-02-27  Pedro Alves  <palves@redhat.com>
602
603         * Makefile.in (COMPILER): New, get it from autoconf.
604         (COMPILE.pre, CC_LD): Use COMPILER.
605         (CXX): Get from autoconf instead.
606         (CXX_FOR_TARGET): Default to g++ instead of gcc.
607         * acinclude.m4: Include build-with-cxx.m4.
608         * build-with-cxx.m4: New file.
609         * configure.ac: Call AC_PROG_CXX and GDB_AC_BUILD_WITH_CXX.
610         Disable -Werror by default if building in C++ mode.
611         (build_warnings): Add -Wno-sign-compare, -Wno-write-strings and
612         -Wno-narrowing in C++ mode.  Only enable -Wpointer-sign in C mode.
613         Run supported-warning-flags tests with the C++ compiler.
614         Save/restore CXXFLAGS too.
615         * configure: Regenerate.
616
617 2015-02-27  Pedro Alves  <palves@redhat.com>
618
619         * libiberty.m4: New file.
620         * acinclude.m4: Include libiberty.m4.
621         * configure.ac: Call libiberty_INIT.
622         * config.in, configure: Regenerate.
623
624 2015-02-27  Andreas Arnez  <arnez@linux.vnet.ibm.com>
625
626         * s390-linux-tdep.c (s390_gcc_target_options): Not just handle
627         31-bit targets, but 64-bit targets as well.
628         (s390_gnu_triplet_regexp): New function.
629         (s390_gdbarch_init): Set the gcc_target_options gdbarch method for
630         64-bit targets as well.  Set the gnu_triplet_regexp gdbarch
631         method.
632
633 2015-02-27  Jon TURNEY  <jon.turney@dronecode.org.uk>  (tiny patch)
634
635         * windows-nat.c (CONTEXT_DEBUGGER): Remove.
636         (CONTEXT_DEBUGGER_DR): Add CONTEXT_SEGMENTS.  Incorporate flags
637         from CONTEXT_DEBUGGER.
638
639 2015-02-26  Doug Evans  <dje@google.com>
640
641         * gdbtypes.c (internal_type_vptr_fieldno): Add missing call to
642         CHECK_TYPEDEF.
643         (set_type_vptr_fieldno): Ditto.
644         (internal_type_vptr_basetype, set_type_vptr_basetype): Ditto.
645         * gnu-v3-abi.c (gnuv3_dynamic_class): Ditto.
646
647 2015-02-26  Pedro Alves  <palves@redhat.com>
648
649         * auto-load.h (file_is_auto_load_safe): Add ATTRIBUTE_PRINTF.
650         * complaints.c (vcomplaint): Pass argument FMT directly to
651         printf-like functions instead of complaint->fmt.
652         * ctf.c (ctf_save_write_metadata): Add ATTRIBUTE_PRINTF.
653         * darwin-nat.c (inferior_debug): Add ATTRIBUTE_PRINTF.
654         * compile/compile-loc2c.c (pushf, unary, binary): Add
655         ATTRIBUTE_PRINTF.
656         (do_compile_dwarf_expr_to_c): Pass string literal as format string
657         to pushf.
658         (BINARY): Pass string literal as format string to 'binary'.
659         * compile/compile-object-load.c (link_callbacks_einfo): Add
660         ATTRIBUTE_PRINTF.
661         * guile/guile-internal.h (gdbscm_printf): Add ATTRIBUTE_PRINTF.
662
663 2015-02-26  Pedro Alves  <palves@redhat.com>
664
665         * windows-termcap.c: Rename to ...
666         * stub-termcap.c: ... this.  Adjust header line.
667         * Makefile.in (SFILES): Refer to stub-termcap.c instead of
668         windows-termcap.c.
669         * configure: Regenerate.
670         * configure.ac: Refer to stub-termcap.o instead of
671         windows-termcap.o.
672         * gdb_curses.h: Mention stub-termcap.c instead of
673         windows-termcap.c.
674
675 2015-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
676
677         * compile/compile-c-symbols.c (convert_one_symbol, convert_symbol_bmsym)
678         (gcc_symbol_address): Call gnu_ifunc_resolve_addr.
679
680 2015-02-26  Antoine Tremblay  <antoine.tremblay@ericsson.com>
681
682         * gdb/infcmd.c (print_return_value): use type_to_string to print type.
683
684 2015-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
685
686         * elfread.c (elf_read_minimal_symbols): Use bfd_alloc for
687         bfd_canonicalize_symtab.
688
689 2015-02-25  John Baldwin  <jhb@FreeBSD.org>
690
691         * amd64fbsd-nat.c: Include sys/user.h.
692         (_initialize_amd64fbsd_nat): Use the KERN_PROC_SIGTRAMP sysctl
693         instead of KERN_PS_STRINGS to locate the signal trampoline.
694         * i386fbsd-nat.c: Include sys/user.h.
695         (_initialize_i386fbsd_nat): Use the KERN_PROC_SIGTRAMP sysctl
696         instead of KERN_PS_STRINGS to locate the signal trampoline.
697         * amd64fbsd-tdep.c (amd64fbsd_sigtramp_code): New.
698         (amd64fbsd_sigtramp_p): New.
699         (amd64fbsd_sigtramp_start_addr, amd64fbsd_sigtramp_end_addr): No
700         longer set default values.
701         (amd64fbsd_init_abi): Set "sigtramp_p" to "amd64fbsd_sigtramp_p".
702         * i386fbsd-tdep.c (i386fbsd_sigtramp_start)
703         (i386fbsd_sigtramp_middle, i386fbsd_sigtramp_end)
704         (i386fbsd_freebsd4_sigtramp_start)
705         (i386fbsd_freebsd4_sigtramp_middle)
706         (i386fbsd_freebsd4_sigtramp_end, i386fbsd_osigtramp_start)
707         (i386fbsd_osigtramp_middle, i386fbsd_osigtramp_end): New.
708         (i386fbsd_sigtramp_p): New.
709         (i386fbsd_sigtramp_start_addr, i386fbsd_sigtramp_end_addr): No
710         longer set default values.
711         (i386fbsd_init_abi): Set "sigtramp_p" to "i386fbsd_sigtramp_p".
712
713 2015-02-25  John Baldwin  <jhb@freebsd.org>
714
715         * amd64fbsd-tdep.c (amd64fbsd_sigcontext_addr): Use
716         get_frame_register instead of frame_unwind_register_unsigned.
717
718 2015-02-26  Jan Kratochvil  <jan.kratochvil@redhat.com>
719
720         PR build/18033
721         * compile/compile-c-support.c (c_compute_program): Change // comment.
722         * compile/compile-object-load.c (setup_sections): Change // comment.
723
724 2015-02-26  Joel Brobecker  <brobecker@adacore.com>
725
726         PR build/18033:
727         * iq2000-tdep.c (iq2000_frame_cache): Delete C++-style comment.
728
729 2015-02-23  Pedro Alves  <palves@redhat.com>
730
731         * remote.c (skip_to_semicolon): New function.
732         (remote_parse_stop_reply) <T stop reply>: Use it.  Don't
733         special case the stop reasons that look like hex numbers
734         upfront.  Instead handle real register numbers after matching
735         all the known stop reasons.
736
737 2015-02-21  Doug Evans  <dje@google.com>
738
739         PR c++/17976, symtab/17821
740         * cp-namespace.c (cp_search_static_and_baseclasses): New parameter
741         is_in_anonymous.  All callers updated.
742         (find_symbol_in_baseclass): Ditto.
743         (cp_lookup_nested_symbol_1): Ditto.  Don't search all static blocks
744         for symbols in an anonymous namespace.
745         * dwarf2read.c (namespace_name): Don't call dwarf2_name, fetch
746         DW_AT_name directly.
747         (dwarf2_name): Convert missing namespace name to
748         CP_ANONYMOUS_NAMESPACE_STR.
749
750 2015-02-20  Pedro Alves  <palves@redhat.com>
751
752         * linux-nat.c (linux_handle_extended_wait): Call
753         thread_db_notice_clone whenever a new clone LWP is detected.
754         (linux_stop_and_wait_all_lwps, linux_unstop_all_lwps): New
755         functions.
756         * linux-nat.h (thread_db_attach_lwp): Delete declaration.
757         (thread_db_notice_clone, linux_stop_and_wait_all_lwps)
758         (linux_unstop_all_lwps): Declare.
759         * linux-thread-db.c (struct thread_get_info_inout): Delete.
760         (thread_get_info_callback): Delete.
761         (thread_from_lwp): Use td_thr_get_info and record_thread.
762         (thread_db_attach_lwp): Delete.
763         (thread_db_notice_clone): New function.
764         (try_thread_db_load_1): If /proc is mounted and shows the
765         process'es task list, walk over all LWPs and call thread_from_lwp
766         instead of relying on td_ta_thr_iter.
767         (attach_thread): Don't call check_thread_signals here.  Split the
768         tail part of the function (which adds the thread to the core GDB
769         thread list) to ...
770         (record_thread): ... this function.  Call check_thread_signals
771         here.
772         (thread_db_wait): Don't call thread_db_find_new_threads_1.  Always
773         call thread_from_lwp.
774         (thread_db_update_thread_list): Rename to ...
775         (thread_db_update_thread_list_org): ... this.
776         (thread_db_update_thread_list): New function.
777         (thread_db_find_thread_from_tid): Delete.
778         (thread_db_get_ada_task_ptid): Simplify.
779         * nat/linux-procfs.c: Include <sys/stat.h>.
780         (linux_proc_task_list_dir_exists): New function.
781         * nat/linux-procfs.h (linux_proc_task_list_dir_exists): Declare.
782
783 2015-02-20  Pedro Alves  <palves@redhat.com>
784
785         * linux-nat.c (lin_lwp_attach_lwp): No longer special case the
786         main LWP.  Handle the case of waitpid returning 0 if we're already
787         attached to the LWP.  Don't set the LWP's last_resume_kind to
788         resume_stop if we already knew about the LWP.
789         (linux_nat_filter_event): Add debug logs.
790
791 2015-02-20  Pedro Alves  <palves@redhat.com>
792
793         * target.h (forward_target_decr_pc_after_break): Delete
794         declaration.
795
796 2015-02-20  Pedro Alves  <palves@redhat.com>
797
798         PR threads/18006
799         * linux-thread-db.c (thread_get_info_callback): Return early if
800         the thread's lwp id is -1.
801
802 2015-02-20  Joel Brobecker  <brobecker@adacore.com>
803
804         GDB 7.9 released.
805
806 2015-02-19  Steve Ellcey  <sellcey@imgtec.com>
807
808         * dtrace-probe.c (dtrace_process_dof_probe): Initialize arg.expr.
809         (dtrace_get_probes) Change type of variable 'dof'.
810
811 2015-02-19  Antoine Tremblay  <antoine.tremblay@ericsson.com>
812
813         PR breakpoints/16812
814         * linux-nat.c (linux_nat_filter_event): Report SIGTRAP,SIGILL,SIGSEGV.
815         * nat/linux-ptrace.c (linux_wstatus_maybe_breakpoint): Add.
816         * nat/linux-ptrace.h: Add linux_wstatus_maybe_breakpoint.
817
818 2015-02-19  David Taylor  <dtaylor@emc.com>
819
820         * common/ax.def (setv): Fix consumed entry in setv DEFOP.
821
822 2015-02-18  Patrick Palka  <patrick@parcs.ath.cx>
823
824         * tui/tui-io.c (tui_handle_resize_during_io): Remove this
825         function.
826         (tui_putc): Don't call tui_handle_resize_during_io.
827         (tui_getc): Likewise.
828         (tui_mld_getc): Likewise.
829         * tui/tui-win.c: Include event-loop.h and tui/tui-io.h.
830         (tui_sigwinch_token): New static variable.
831         (tui_initialize_win): Adjust documentation.  Set
832         tui_sigwinch_token.
833         (tui_async_resize_screen): New asynchronous callback.
834         (tui_sigwinch_handler): Adjust documentation.  Asynchronously
835         invoke tui_async_resize_screen.
836
837 2015-02-18  Jose E. Marchesi  <jose.marchesi@oracle.com>
838
839         * configure: Regenerated.
840         * configure.ac: Use GDB_AC_TRANSFORM.
841         * Makefile.in (aclocal_m4_deps): Added transform.m4.
842         * acinclude.m4: sinclude transform.m4.
843         * transform.m4: New file.
844         (GDB_AC_TRANSFORM): New macro.
845
846 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
847
848         * NEWS: Announce the support for DTrace SDT probes.
849
850 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
851
852         * amd64-linux-tdep.c: Include "parser-defs.h" and "user-regs.h".
853         (amd64_dtrace_parse_probe_argument): New function.
854         (amd64_dtrace_probe_is_enabled): Likewise.
855         (amd64_dtrace_enable_probe): Likewise.
856         (amd64_dtrace_disable_probe): Likewise.
857         (amd64_linux_init_abi): Register the
858         `gdbarch_dtrace_probe_argument', `gdbarch_dtrace_enable_probe',
859         `gdbarch_dtrace_disable_probe' and
860         `gdbarch_dtrace_probe_is_enabled' hooks.
861         (amd64_dtrace_disabled_probe_sequence_1): New constant.
862         (amd64_dtrace_disabled_probe_sequence_2): Likewise.
863         (amd64_dtrace_enable_probe_sequence): Likewise.
864         (amd64_dtrace_disable_probe_sequence): Likewise.
865
866 2015-01-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
867
868         * breakpoint.c (BREAK_ARGS_HELP): Help string updated to mention
869         the -probe-dtrace new vpossible value for PROBE_MODIFIER.
870         * configure.ac (CONFIG_OBS): dtrace-probe.o added if BFD can
871         handle ELF files.
872         * Makefile.in (SFILES): dtrace-probe.c added.
873         * configure: Regenerate.
874         * dtrace-probe.c: New file.
875         (SHT_SUNW_dof): New constant.
876         (dtrace_probe_type): New enum.
877         (dtrace_probe_arg): New struct.
878         (dtrace_probe_arg_s): New typedef.
879         (struct dtrace_probe_enabler): New struct.
880         (dtrace_probe_enabler_s): New typedef.
881         (dtrace_probe): New struct.
882         (dtrace_probe_is_linespec): New function.
883         (dtrace_dof_sect_type): New enum.
884         (dtrace_dof_dofh_ident): Likewise.
885         (dtrace_dof_encoding): Likewise.
886         (DTRACE_DOF_ENCODE_LSB): Likewise.
887         (DTRACE_DOF_ENCODE_MSB): Likewise.
888         (dtrace_dof_hdr): New struct.
889         (dtrace_dof_sect): Likewise.
890         (dtrace_dof_provider): Likewise.
891         (dtrace_dof_probe): Likewise.
892         (DOF_UINT): New macro.
893         (DTRACE_DOF_PTR): Likewise.
894         (DTRACE_DOF_SECT): Likewise.
895         (dtrace_process_dof_probe): New function.
896         (dtrace_process_dof): Likewise.
897         (dtrace_build_arg_exprs): Likewise.
898         (dtrace_get_arg): Likewise.
899         (dtrace_get_probes): Likewise.
900         (dtrace_get_probe_argument_count): Likewise.
901         (dtrace_can_evaluate_probe_arguments): Likewise.
902         (dtrace_evaluate_probe_argument): Likewise.
903         (dtrace_compile_to_ax): Likewise.
904         (dtrace_probe_destroy): Likewise.
905         (dtrace_gen_info_probes_table_header): Likewise.
906         (dtrace_gen_info_probes_table_values): Likewise.
907         (dtrace_probe_is_enabled): Likewise.
908         (dtrace_probe_ops): New variable.
909         (info_probes_dtrace_command): New function.
910         (_initialize_dtrace_probe): Likewise.
911         (dtrace_type_name): Likewise.
912
913 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
914
915         * gdbarch.sh (dtrace_parse_probe_argument): New.
916         (dtrace_probe_is_enabled): Likewise.
917         (dtrace_enable_probe): Likewise.
918         (dtrace_disable_probe): Likewise.
919         * gdbarch.c: Regenerate.
920         * gdbarch.h: Regenerate.
921
922 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
923
924         * stap-probe.c (stap_probe_ops): Add NULLs in the static
925         stap_probe_ops for `enable_probe' and `disable_probe'.
926         * probe.c (enable_probes_command): New function.
927         (disable_probes_command): Likewise.
928         (_initialize_probe): Define the cli commands `enable probe' and
929         `disable probe'.
930         (parse_probe_linespec): New function.
931         (info_probes_for_ops): Use parse_probe_linespec.
932         * probe.h (probe_ops): New hooks `enable_probe' and
933         `disable_probe'.
934
935 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
936
937         * probe.c (compute_probe_arg): Moved from stap-probe.c
938         (compile_probe_arg): Likewise.
939         (probe_funcs): Likewise.
940         * stap-probe.c (compute_probe_arg): Moved to probe.c.
941         (compile_probe_arg): Likewise.
942         (probe_funcs): Likewise.
943
944 2015-02-17  Jose E. Marchesi  <jose.marchesi@oracle.com>
945
946         * probe.c (print_ui_out_not_applicables): New function.
947         (exists_probe_with_pops): Likewise.
948         (info_probes_for_ops): Do not include column headers for probe
949         types for which no probe has been actually found on any object.
950         Also invoke `print_ui_out_not_applicables' in order to match the
951         column rows with the header when probes of several types are
952         listed.
953         Print the "Type" column.
954         * probe.h (probe_ops): Added a new probe operation `type_name'.
955         * stap-probe.c (stap_probe_ops): Add `stap_type_name'.
956         (stap_type_name): New function.
957
958 2015-02-17  Patrick Palka  <patrick@parcs.ath.cx>
959
960         * tui/tui-io.c (tui_getc): Don't call key_is_command_char.
961         (key_is_command_char): Delete.
962
963 2015-02-17  Pedro Alves  <palves@redhat.com>
964
965         * tui/tui.c (tui_enable): Resize windows before anything
966         might show a window.
967
968 2015-02-17  Max Ostapenko  <m.ostapenko@partner.samsung.com>
969
970         PR gdb/17984
971         * aarch64-linux-nat.c: Don't include features/aarch64.c anymore.
972         (aarch64_linux_read_description): Remove initialize_tdesc_aarch64
973         call.
974         * aarch64-tdep.h (tdesc_aarch64): Declare.
975
976 2015-02-12  Mark Wielaard  <mjw@redhat.com>
977
978         * contrib/ari/gdb_ari.sh: Remove checks for "true" and "false".
979
980 2015-02-13  Doug Evans  <dje@google.com>
981
982         * cp-namespace.c (cp_basic_lookup_symbol): Rename parameter
983         anonymous_namespace to is_in_anonymous for consistency with the rest
984         of the file.
985         (cp_lookup_bare_symbol): Fix typo in comment.
986         (cp_search_static_and_baseclasses): Ditto.
987         (search_symbol_list): Use vertical space in comment better.
988         (reset_directive_searched): Ditto. Fix typo.
989         (cp_lookup_nested_symbol_1): Clarify contents of NESTED_NAME parameter.
990
991 2015-02-13  Yao Qi  <yao.qi@arm.com>
992
993         * MAINTAINERS: Update my email address.
994
995 2015-02-12  Doug Evans  <dje@google.com>
996
997         * symtab.c (completion_list_add_name): Fix memory leak.
998
999 2015-02-12  Doug Evans  <dje@google.com>
1000
1001         * completer.c (complete_line): Remove incorrect comment.
1002
1003 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1004
1005         * python/py-framefilter.c (py_print_single_arg, enumerate_locals)
1006         (py_print_frame): Use RETURN_MASK_ERROR.
1007
1008 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1009
1010         * python/py-framefilter.c (py_print_frame): Mention RETURN_QUIT in
1011         function comment.  Wrap all function that can throw in cleanups.
1012         (gdbpy_apply_frame_filter): Wrap all function that can throw in
1013         cleanups.
1014
1015 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1016
1017         * python/py-framefilter.c (py_print_frame): Substitute goto error.
1018         Remove the error label.
1019
1020 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1021
1022         * python/py-framefilter.c (py_print_frame): Put conditional code paths
1023         with goto first, indent the former else codepath left.  Put variable
1024         'elided' to a new inner block.
1025
1026 2015-02-11  Jan Kratochvil  <jan.kratochvil@redhat.com>
1027
1028         * python/py-framefilter.c (py_print_frame): Whitespacing fixes.
1029
1030 2015-02-11  Pedro Alves  <palves@redhat.com>
1031
1032         * xcoffread.c (within_function): Delete.
1033
1034 2015-02-11  Tom Tromey  <tromey@redhat.com>
1035             Pedro Alves <palves@redhat.com>
1036
1037         * breakpoint.c (base_breakpoint_ops): Delete.
1038         * dwarf2loc.c (dwarf_expr_ctx_funcs): Make extern.
1039         * elfread.c (elf_sym_fns_gdb_index, elf_sym_fns_lazy_psyms): Make extern.
1040         * guile/guile.c (guile_extension_script_ops, guile_extension_ops): Make extern.
1041         * ppcnbsd-tdep.c (ppcnbsd2_sigtramp): Make extern.
1042         * python/py-arch.c (arch_object_type): Make extern.
1043         * python/py-block.c (block_syms_iterator_object_type): Make extern.
1044         * python/py-bpevent.c (breakpoint_event_object_type): Make extern.
1045         * python/py-cmd.c (cmdpy_object_type): Make extern.
1046         * python/py-continueevent.c (continue_event_object_type)
1047         * python/py-event.h (GDBPY_NEW_EVENT_TYPE): Remove 'qual'
1048         parameter.  Update all callers.
1049         * python/py-evtregistry.c (eventregistry_object_type): Make extern.
1050         * python/py-exitedevent.c (exited_event_object_type): Make extern.
1051         * python/py-finishbreakpoint.c (finish_breakpoint_object_type): Make extern.
1052         * python/py-function.c (fnpy_object_type): Make extern.
1053         * python/py-inferior.c (inferior_object_type, membuf_object_type): Make extern.
1054         * python/py-infevents.c (call_pre_event_object_type)
1055         (inferior_call_post_event_object_type).
1056         (memory_changed_event_object_type): Make extern.
1057         * python/py-infthread.c (thread_object_type): Make extern.
1058         * python/py-lazy-string.c (lazy_string_object_type): Make extern.
1059         * python/py-linetable.c (linetable_entry_object_type)
1060         (linetable_object_type, ltpy_iterator_object_type): Make extern.
1061         * python/py-newobjfileevent.c (new_objfile_event_object_type)
1062         (clear_objfiles_event_object_type): Make extern.
1063         * python/py-objfile.c (objfile_object_type): Make extern.
1064         * python/py-param.c (parmpy_object_type): Make extern.
1065         * python/py-progspace.c (pspace_object_type): Make extern.
1066         * python/py-signalevent.c (signal_event_object_type): Make extern.
1067         * python/py-symtab.c (symtab_object_type, sal_object_type): Make extern.
1068         * python/py-type.c (type_object_type, field_object_type)
1069         (type_iterator_object_type): Make extern.
1070         * python/python.c (python_extension_script_ops)
1071         (python_extension_ops): Make extern.
1072         * stap-probe.c (stap_probe_ops): Make extern.
1073
1074 2015-02-11  Pedro Alves  <pedro@codesourcery.com>
1075
1076         * infrun.c (adjust_pc_after_break): Don't adjust the PC just
1077         because the event thread is not the current thread.
1078
1079 2015-02-11  Doug Evans  <xdje42@gmail.com>
1080
1081         * gdbtypes.c (internal_type_self_type): If TYPE_SPECIFIC_FIELD hasn't
1082         been initialized yet, return NULL.
1083
1084 2015-02-11  Doug Evans  <dje@google.com>
1085
1086         * symfile.h (new_symfile_objfile): Delete.
1087         * symfile.c (finish_new_objfile): Renamed from new_symfile_objfile.
1088         All callers updated.
1089
1090 2015-02-11  Patrick Palka  <patrick@parcs.ath.cx>
1091
1092         * tui/tui-io.c (tui_handle_resize_during_io): Call
1093         tui_update_gdb_sizes() after resizing the screen.
1094         * tui/tui.c (tui_enable): Resize the terminal before
1095         calling tui_update_gdb_sizes().
1096
1097 2015-02-11  Patrick Palka  <patrick@parcs.ath.cx>
1098
1099         * tui/tui-io.c (tui_getc): Move cursor to the end of the command
1100         line before printing a newline.
1101
1102 2015-02-11  Mark Wielaard  <mjw@redhat.com>
1103
1104         * utils.c (producer_is_gcc): Return true or false.
1105
1106 2015-02-10  Mark Wielaard  <mjw@redhat.com>
1107
1108         * utils.h (producer_is_gcc): Change return type to bool. Add major
1109         argument.
1110         * utils.c (producer_is_gcc): Likewise.
1111         (producer_is_gcc_ge_4): Adjust producer_is_gcc call.
1112         * dwarf2read.c (check_producer): Likewise.
1113
1114 2015-02-10  Pedro Alves  <palves@redhat.com>
1115
1116         * infrun.c (displaced_step_fixup): Switch to the event thread
1117         before calling gdbarch_displaced_step_fixup.
1118
1119 2015-02-10  Antoine Tremblay <antoine.tremblay@ericsson.com>
1120
1121         * MAINTAINERS (Write After Approval): Add Antoine Tremblay.
1122
1123 2015-02-10  Simon Marchi  <simon.marchi@ericsson.com>
1124
1125         * ada-varobj.c (ada_name_of_child): Constify parent.
1126         (ada_path_expr_of_child): Same.
1127         (ada_value_of_child): Same.
1128         (ada_type_of_child): Same.
1129         * c-varobj.c (c_is_path_expr_parent): Same.
1130         (c_describe_child): Same.
1131         (c_name_of_child): Same.
1132         (c_value_of_child): Same.
1133         (c_type_of_child): Same.
1134         (cplus_number_of_children): Same.
1135         (cplus_describe_child): Constify var.
1136         (cplus_name_of_child): Constify parent.
1137         (cplus_value_of_child): Same.
1138         (cplus_type_of_child): Same.
1139         * jv-varobj.c (java_name_of_child): Same.
1140         (java_value_of_child): Same.
1141         (java_type_of_child): Same.
1142         * varobj.c (value_of_child): Same.
1143         (varobj_default_is_path_expr_parent): Constify var, parent and return
1144         value.
1145         (varobj_get_path_expr): Constify var, modify path_expr through
1146         mutable_var.
1147         (install_new_value): Constify parent.
1148         (value_of_child): Constify parent.
1149         * varobj.h (struct varobj): Constify parent.
1150         (struct lang_varobj_ops): Constify name_of_child, value_of_child and
1151         type_of_child.
1152         (varobj_get_path_expr): Constify var.
1153         (varobj_get_path_expr_parent): Constify var and return value.
1154
1155 2015-02-10  Luis Machado  <lgustavo@codesourcery.com>
1156
1157         * arm-tdep.c (arm_prologue_unwind_stop_reason): New function.
1158         (arm_prologue_this_id): Move PC and SP limit checks to
1159         arm_prologue_unwind_stop_reason.
1160         (arm_prologue_unwind) <stop_reason> : Set to
1161         arm_prologue_unwind_stop_reason.
1162
1163 2015-02-09  Mark Wielaard  <mjw@redhat.com>
1164
1165         * dwarf2read.c (set_cu_language): Recognize DW_LANG_Fortran03 and
1166         DW_LANG_Fortran08 as language_fortran.
1167
1168 2015-02-09  Sergio Durigan Junior  <sergiodj@redhat.com>
1169
1170         PR remote/17946
1171         * gdb/remote.c (remote_parse_stop_reply): Fix wrong comparison
1172         of pointer against char.
1173
1174 2015-02-09  Mark Wielaard  <mjw@redhat.com>
1175
1176         * c-typeprint.c (cp_type_print_method_args): Handle '_Atomic'.
1177         (c_type_print_modifier): Likewise.
1178         * dwarf2read.c (read_tag_atomic_type): New function.
1179         (read_type_die_1): Handle DW_TAG_atomic_type.
1180         * gdbtypes.c (make_atomic_type): New function.
1181         (recursive_dump_type): Handle TYPE_ATOMIC.
1182         * gdbtypes.h (enum type_flag_values): Renumber.
1183         (enum type_instance_flag_value): Add TYPE_INSTANCE_FLAG_ATOMIC.
1184         (TYPE_ATOMIC): New macro.
1185         (make_atomic_type): Declare.
1186
1187 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1188
1189         * btrace.c (ftrace_find_call): Skip gaps.
1190         (ftrace_new_function): Initialize level.
1191         (ftrace_new_call, ftrace_new_tailcall, ftrace_new_return)
1192         (ftrace_new_switch): Update
1193         level computation.
1194         (ftrace_new_gap): New.
1195         (ftrace_update_function): Create new function after gap.
1196         (btrace_compute_ftrace_bts): Create gap on error.
1197         (btrace_stitch_bts): Update parameters.  Clear trace if it
1198         becomes empty.
1199         (btrace_stitch_trace): Update parameters.  Update callers.
1200         (btrace_clear): Reset the number of gaps.
1201         (btrace_insn_get): Return NULL if the iterator points to a gap.
1202         (btrace_insn_number): Return zero if the iterator points to a gap.
1203         (btrace_insn_end): Allow gaps at the end.
1204         (btrace_insn_next, btrace_insn_prev, btrace_insn_cmp): Handle gaps.
1205         (btrace_find_insn_by_number): Assert that the found iterator does
1206         not point to a gap.
1207         (btrace_call_next, btrace_call_prev): Assert that the last function
1208         is not a gap.
1209         * btrace.h (btrace_bts_error): New.
1210         (btrace_function): Update comment.
1211         (btrace_function) <insn, insn_offset, number>: Update comment.
1212         (btrace_function) <errcode>: New.
1213         (btrace_thread_info) <ngaps>: New.
1214         (btrace_thread_info) <replay>: Update comment.
1215         (btrace_insn_get): Update comment.
1216         * record-btrace.c (btrace_ui_out_decode_error): New.
1217         (record_btrace_info): Print number of gaps.
1218         (btrace_insn_history, btrace_call_history): Call
1219         btrace_ui_out_decode_error for gaps.
1220         (record_btrace_step_thread, record_btrace_start_replaying): Skip gaps.
1221
1222 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1223
1224         * common/btrace-common.h (btrace_cpu_vendor, btrace_cpu): New.
1225         * nat/linux-btrace.c: (btrace_this_cpu): New.
1226         (cpu_supports_bts): Call btrace_this_cpu.
1227         (intel_supports_bts): Add cpu parameter.
1228
1229 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1230
1231         * btrace.h (btrace_insn_class): New.
1232         (btrace_insn) <size, iclass>: New.
1233         * btrace.c (ftrace_find_call): Update parameters.  Update users.
1234         Use instruction classification.
1235         (ftrace_new_return): Update parameters.  Update users.
1236         (ftrace_update_function): Update parameters.  Update users.  Use
1237         instruction classification.
1238         (ftrace_update_insns): Update parameters.  Update users.
1239         (ftrace_classify_insn): New.
1240         (btrace_compute_ftrace_bts): Fill in new btrace_insn fields.  Add
1241         TRY_CATCH around call to gdb_insn_length.
1242
1243 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1244
1245         * btrace.c (btrace_compute_ftrace_bts, btrace_compute_ftrace):
1246         Update parameters.  Update users.
1247
1248 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1249
1250         * btrace.c (parse_xml_btrace_conf_bts): Add size.
1251         (btrace_conf_bts_attributes): New.
1252         (btrace_conf_children): Add attributes.
1253         * common/btrace-common.h (btrace_config_bts): New.
1254         (btrace_config)<bts>: New.
1255         (btrace_config): Update comment.
1256         * nat/linux-btrace.c (linux_enable_btrace, linux_enable_bts):
1257         Use config.
1258         * features/btrace-conf.dtd: Increment version.  Add size
1259         attribute to bts element.
1260         * record-btrace.c (set_record_btrace_bts_cmdlist,
1261         show_record_btrace_bts_cmdlist): New.
1262         (record_btrace_adjust_size, record_btrace_print_bts_conf,
1263         record_btrace_print_conf, cmd_set_record_btrace_bts,
1264         cmd_show_record_btrace_bts): New.
1265         (record_btrace_info): Call record_btrace_print_conf.
1266         (_initialize_record_btrace): Add commands.
1267         * remote.c: Add PACKET_Qbtrace_conf_bts_size enum.
1268         (remote_protocol_features): Add Qbtrace-conf:bts:size packet.
1269         (btrace_sync_conf): Synchronize bts size.
1270         (_initialize_remote): Add Qbtrace-conf:bts:size packet.
1271         * NEWS: Announce new commands and new packets.
1272
1273 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1274
1275         * Makefile.in (XMLFILES): Add btrace-conf.dtd.
1276         * x86-linux-nat.c (x86_linux_enable_btrace): Update parameters.
1277         (x86_linux_btrace_conf): New.
1278         (x86_linux_create_target): Initialize to_btrace_conf.
1279         * nat/linux-btrace.c (linux_enable_btrace): Update parameters.
1280         Check format.  Split into this and ...
1281         (linux_enable_bts): ... this.
1282         (linux_btrace_conf): New.
1283         (perf_event_skip_record): Renamed into ...
1284         (perf_event_skip_bts_record): ... this.  Updated users.
1285         (linux_disable_btrace): Split into this and ...
1286         (linux_disable_bts): ... this.
1287         (linux_read_btrace): Check format.
1288         * nat/linux-btrace.h (linux_enable_btrace): Update parameters.
1289         (linux_btrace_conf): New.
1290         (btrace_target_info)<ptid>: Moved.
1291         (btrace_target_info)<conf>: New.
1292         (btrace_target_info): Split into this and ...
1293         (btrace_tinfo_bts): ... this.  Updated users.
1294         * btrace.c (btrace_enable): Update parameters.
1295         (btrace_conf, parse_xml_btrace_conf_bts, parse_xml_btrace_conf)
1296         (btrace_conf_children, btrace_conf_attributes)
1297         (btrace_conf_elements): New.
1298         * btrace.h (btrace_enable): Update parameters.
1299         (btrace_conf, parse_xml_btrace_conf): New.
1300         * common/btrace-common.h (btrace_config): New.
1301         * feature/btrace-conf.dtd: New.
1302         * record-btrace.c (record_btrace_conf): New.
1303         (record_btrace_cmdlist): New.
1304         (record_btrace_enable_warn, record_btrace_open): Pass
1305         &record_btrace_conf.
1306         (record_btrace_info): Print recording format.
1307         (cmd_record_btrace_bts_start): New.
1308         (cmd_record_btrace_start): Call cmd_record_btrace_bts_start.
1309         (_initialize_record_btrace): Add "record btrace bts" subcommand.
1310         Add "record bts" alias command.
1311         * remote.c (remote_state)<btrace_config>: New.
1312         (remote_btrace_reset, PACKET_qXfer_btrace_conf): New.
1313         (remote_protocol_features): Add qXfer:btrace-conf:read.
1314         (remote_open_1): Call remote_btrace_reset.
1315         (remote_xfer_partial): Handle TARGET_OBJECT_BTRACE_CONF.
1316         (btrace_target_info)<conf>: New.
1317         (btrace_sync_conf, btrace_read_config): New.
1318         (remote_enable_btrace): Update parameters.  Call btrace_sync_conf and
1319         btrace_read_conf.
1320         (remote_btrace_conf): New.
1321         (init_remote_ops): Initialize to_btrace_conf.
1322         (_initialize_remote): Add qXfer:btrace-conf packet.
1323         * target.c (target_enable_btrace): Update parameters.
1324         (target_btrace_conf): New.
1325         * target.h (target_enable_btrace): Update parameters.
1326         (target_btrace_conf): New.
1327         (target_object)<TARGET_OBJECT_BTRACE_CONF>: New.
1328         (target_ops)<to_enable_btrace>: Update parameters and comment.
1329         (target_ops)<to_btrace_conf>: New.
1330         * target-delegates: Regenerate.
1331         * target-debug.h (target_debug_print_const_struct_btrace_config_p)
1332         (target_debug_print_const_struct_btrace_target_info_p): New.
1333         * NEWS: Announce new command and new packet.
1334
1335 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1336
1337         * nat/linux-btrace.h (perf_event_buffer): New.
1338         (btrace_target_info) <buffer, size, data_head>: Replace with ...
1339         <bts>: ... this.
1340         * nat/linux-btrace.c (perf_event_header, perf_event_mmap_size)
1341         (perf_event_buffer_size, perf_event_buffer_begin)
1342         (perf_event_buffer_end, linux_btrace_has_changed): Removed.
1343         Updated users.
1344         (perf_event_new_data): New.
1345
1346 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1347
1348         * btrace.c (btrace_enable): Pass BTRACE_FORMAT_BTS.
1349         * record-btrace.c (record_btrace_open): Remove call to
1350         target_supports_btrace.
1351         * remote.c (remote_supports_btrace): Update parameters.
1352         * target.c (target_supports_btrace): Update parameters.
1353         * target.h (to_supports_btrace, target_supports_btrace): Update
1354         parameters.
1355         * target-delegates.c: Regenerate.
1356         * target-debug.h (target_debug_print_enum_btrace_format): New.
1357         * nat/linux-btrace.c
1358         (kernel_supports_btrace): Rename into ...
1359         (kernel_supports_bts): ... this.  Update users.  Update warning text.
1360         (intel_supports_btrace): Rename into ...
1361         (intel_supports_bts): ... this.  Update users.
1362         (cpu_supports_btrace): Rename into ...
1363         (cpu_supports_bts): ... this.  Update users.
1364         (linux_supports_btrace): Update parameters.  Split into this and ...
1365         (linux_supports_bts): ... this.
1366         * nat/linux-btrace.h (linux_supports_btrace): Update parameters.
1367
1368 2015-02-09  Markus Metzger  <markus.t.metzger@intel.com>
1369
1370         * Makefile.in (SFILES): Add common/btrace-common.c.
1371         (COMMON_OBS): Add common/btrace-common.o.
1372         (btrace-common.o): Add build rules.
1373         * btrace.c (parse_xml_btrace): Update parameters.
1374         (parse_xml_btrace_block): Set format field.
1375         (btrace_add_pc, btrace_fetch): Use struct btrace_data.
1376         (do_btrace_data_cleanup, make_cleanup_btrace_data): New.
1377         (btrace_compute_ftrace): Split into this and...
1378         (btrace_compute_ftrace_bts): ...this.
1379         (btrace_stitch_trace): Split into this and...
1380         (btrace_stitch_bts): ...this.
1381         * btrace.h (parse_xml_btrace): Update parameters.
1382         (make_cleanup_btrace_data): New.
1383         * common/btrace-common.c: New.
1384         * common/btrace-common.h: Include common-defs.h.
1385         (btrace_block_s): Update comment.
1386         (btrace_format): New.
1387         (btrace_format_string): New.
1388         (btrace_data_bts): New.
1389         (btrace_data): New.
1390         (btrace_data_init, btrace_data_fini, btrace_data_empty): New.
1391         * remote.c (remote_read_btrace): Update parameters.
1392         * target.c (target_read_btrace): Update parameters.
1393         * target.h (target_read_btrace): Update parameters.
1394         (target_ops)<to_read_btrace>: Update parameters.
1395         * x86-linux-nat.c (x86_linux_read_btrace): Update parameters.
1396         * target-delegates.c: Regenerate.
1397         * target-debug (target_debug_print_struct_btrace_data_p): New.
1398         * nat/linux-btrace.c (linux_read_btrace): Split into this and...
1399         (linux_read_bts): ...this.
1400         * nat/linux-btrace.h (linux_read_btrace): Update parameters.
1401
1402 2015-02-06  Doug Evans  <dje@google.com>
1403
1404         * remote-m32r-sdi.c: Include symfile.h.
1405
1406 2015-02-06  Doug Evans  <dje@google.com>
1407
1408         * symtab.h (clear_symtab_users, deduce_language_from_filename): Move
1409         * symfile.h (clear_symtab_users, deduce_language_from_filename): ...
1410         to here.
1411
1412 2015-02-06  Pedro Alves  <palves@redhat.com>
1413
1414         * linux-thread-db.c (find_new_threads_callback): Add debug output.
1415
1416 2015-02-06  Simon Marchi  <simon.marchi@ericsson.com>
1417
1418         PR gdb/15678
1419         * breakpoint.c (map_breakpoint_numbers): Check for empty args string.
1420         (enable_count_command): Check args for NULL value.
1421
1422 2015-02-05  Doug Evans  <xdje42@gmail.com>
1423
1424         * guile/scm-frame.c: Fix spelling errors in a comment.
1425
1426 2015-02-04  Jan Kratochvil  <jan.kratochvil@redhat.com>
1427
1428         * python/python-internal.h (Py_hash_t): Define it for Python <3.2.
1429         * python/py-value.c (valpy_fetch_lazy): Use it.  Remove cast to the
1430         return type.
1431
1432 2015-02-04  Pedro Alves  <palves@redhat.com>
1433
1434         * linux-nat.c (handle_extended_wait): Don't resume LWPs here.
1435         (wait_lwp): Don't call wait_lwp if linux_handle_extended_wait
1436         returns true.
1437         (resume_stopped_resumed_lwps): Don't check whether the thread is
1438         marked as executing.
1439         (linux_nat_wait_1): Use resume_stopped_resumed_lwps.
1440
1441 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
1442
1443         * regset.h (struct regset): Add flags field.
1444         (REGSET_VARIABLE_SIZE): New value for a regset's flags field.
1445         * corelow.c (get_core_register_section): Add warning if the size
1446         exceeds the requested size and the regset does not have the
1447         REGSET_VARIABLE_SIZE flag set.
1448         * alphanbsd-tdep.c (alphanbsd_gregset): Add REGSET_VARIABLE_SIZE
1449         flag.
1450         * armbsd-tdep.c (armbsd_gregset): Likewise.
1451         * hppa-hpux-tdep.c (hppa_hpux_regset): Likewise.
1452         * hppaobsd-tdep.c (hppaobsd_gregset): Likewise.
1453         * m68kbsd-tdep.c (m68kbsd_gregset): Likewise.
1454         * mipsnbsd-tdep.c (mipsnbsd_gregset): Likewise.
1455
1456 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
1457
1458         * amd64-linux-tdep.c (amd64_linux_iterate_over_regset_sections):
1459         For ".reg-xstate", explicitly specify the requested section size
1460         via X86_XSTATE_SIZE instead of just 0 on input and
1461         X86_XSTATE_MAX_SIZE on output.
1462         * i386-linux-tdep.c (i386_linux_iterate_over_regset_sections):
1463         Likewise.
1464
1465 2015-02-04  Andreas Arnez  <arnez@linux.vnet.ibm.com>
1466
1467         PR corefiles/17808:
1468         * gdbarch.sh (iterate_over_regset_sections_cb): Document this
1469         function type, particularly its SIZE parameter.
1470         * gdbarch.h: Regenerate.
1471         * amd64-tdep.c (amd64_supply_fpregset): In gdb_assert, compare
1472         actual against required size using ">=" instead of "==".
1473         (amd64_collect_fpregset): Likewise.
1474         * i386-tdep.c (i386_supply_gregset): Likewise.
1475         (i386_collect_gregset): Likewise.
1476         (i386_supply_fpregset): Likewise.
1477         (i386_collect_fpregset): Likewise.
1478         * mips-linux-tdep.c (mips_supply_gregset_wrapper): Likewise.
1479         (mips_fill_gregset_wrapper): Likewise.
1480         (mips_supply_fpregset_wrapper): Likewise.
1481         (mips_fill_fpregset_wrapper): Likewise.
1482         (mips64_supply_gregset_wrapper): Likewise.
1483         (mips64_fill_gregset_wrapper): Likewise.
1484         (mips64_supply_fpregset_wrapper): Likewise.
1485         (mips64_fill_fpregset_wrapper): Likewise.
1486         * mn10300-linux-tdep.c (am33_supply_gregset_method): Likewise.
1487         (am33_supply_fpregset_method): Likewise.
1488         (am33_collect_gregset_method): Likewise.
1489         (am33_collect_fpregset_method): Likewise.
1490
1491 2015-02-04  Doug Evans  <dje@google.com>
1492             Pedro Alves  <palves@redhat.com>
1493             Eli Zaretskii  <eliz@gnu.org>
1494
1495         PR tui/17810
1496         * tui/tui-command.c (tui_refresh_cmd_win): New function.
1497         * tui/tui-command.c (tui_refresh_cmd_win): Declare.
1498         * tui/tui-file.c: #include tui/tui-command.h.
1499         (tui_file_fputs): Refresh command window if stream is not gdb_stdout.
1500         (tui_file_flush): Refresh command window if stream is gdb_stdout.
1501         * tui/tui-io.c (tui_puts): Remove calls to wrefresh, fflush.
1502
1503 2015-02-04  Pedro Alves  <palves@redhat.com>
1504
1505         Fix build breakage.
1506         * event-loop.c (gdb_do_one_event): Add default switch case.
1507
1508 2015-02-03  Jan Kratochvil  <jan.kratochvil@redhat.com>
1509
1510         Filter out inferior gcc option -fpreprocessed.
1511         * compile/compile.c (filter_args): New function.
1512         (get_args): Use it.
1513
1514 2015-02-03  Pedro Alves  <palves@redhat.com>
1515
1516         * event-loop.c: Don't declare nor define a queue type for
1517         gdb_event_p.
1518         (event_queue): Delete.
1519         (create_event, create_file_event, gdb_event_xfree)
1520         (initialize_event_loop, process_event): Delete.
1521         (gdb_do_one_event): Return as soon as one event is handled.
1522         (handle_file_event): Change prototype.  Used the passed in
1523         file_handler pointer and ready_mask instead of looping over all
1524         file handlers.
1525         (gdb_wait_for_event): Update the poll/select timeouts before
1526         blocking.  Run event handlers directly instead of queueing events.
1527         Return as soon as one event is handled.
1528         (struct async_event_handler_data): Delete.
1529         (invoke_async_event_handler): Delete.
1530         (check_async_event_handlers): Change return type to int.  Run
1531         event handlers directly instead of queueing events.  Return as
1532         soon as one event is handled.
1533         (handle_timer_event): Delete.
1534         (update_wait_timeout): New function, factored out from
1535         poll_timers.
1536         (poll_timers): Reimplement.
1537         * event-loop.h (initialize_event_loop): Delete declaration.
1538         * top.c (gdb_init): Don't call initialize_event_loop.
1539
1540 2015-02-03  Pedro Alves  <palves@redhat.com>
1541
1542         * event-loop.c (clear_async_event_handler): New function.
1543         * event-loop.h (clear_async_event_handler): New declaration.
1544         * record-btrace.c (record_btrace_async): New function.
1545         (init_record_btrace_ops): Install record_btrace_async.
1546         * record-full.c (record_full_async): New function.
1547         (record_full_resume): Don't mark the async event source here.
1548         (init_record_full_ops): Install record_full_async.
1549         (record_full_core_resume): Don't mark the async event source here.
1550         (init_record_full_core_ops): Install record_full_async.
1551         * remote.c (remote_async): Mark and clear the async stop reply
1552         queue event-loop token as appropriate.
1553
1554 2015-02-03  Pedro Alves  <palves@redhat.com>
1555
1556         * linux-nat.c (linux_child_follow_fork, linux_nat_wait_1): Use
1557         target_is_async_p instead of target_can_async.
1558         (linux_nat_wait): Use target_is_async_p instead of
1559         target_can_async.  Don't enable async here.
1560         * remote.c (interrupt_query, remote_wait, putpkt_binary): Use
1561         target_is_async_p instead of target_can_async.
1562
1563 2015-02-02  Simon Marchi  <simon.marchi@ericsson.com>
1564
1565         * varobj.h (lang_varobj_ops): Mention which return values need
1566         to be freed.
1567
1568 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
1569
1570         * dwarf2loc.c (dwarf2_evaluate_property): Add i18n marker.
1571
1572 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
1573
1574         PR gdb/17856:
1575         * ada-lang.c (ada_lookup_symbol_list_worker): Do not re-cache
1576         results found in the cache.
1577
1578 2015-02-02  Joel Brobecker  <brobecker@adacore.com>
1579
1580         PR gdb/17854:
1581         * ada-lang.c (ada_get_symbol_cache): Set pspace_data->sym_cache
1582         when allocating a new one.
1583
1584 2015-02-01  Tom Tromey  <tom@tromey.com>
1585
1586         * MAINTAINERS: Remove myself.
1587
1588 2015-01-31  Doug Evans  <xdje42@gmail.com>
1589
1590         * dwarf2read.c (process_structure_scope): Update setting of
1591         TYPE_VPTR_BASETYPE, TYPE_VPTR_FIELDNO.
1592         * gdbtypes.c (internal_type_vptr_fieldno): New function.
1593         (set_type_vptr_fieldno): New function.
1594         (internal_type_vptr_basetype): New function.
1595         (set_type_vptr_basetype): New function.
1596         (get_vptr_fieldno): Update setting of TYPE_VPTR_FIELDNO,
1597         TYPE_VPTR_BASETYPE.
1598         (allocate_cplus_struct_type): Initialize vptr_fieldno.
1599         (recursive_dump_type): Printing of vptr_fieldno, vptr_basetype ...
1600         (print_cplus_stuff): ... moved here.
1601         (copy_type_recursive): Don't copy TYPE_VPTR_BASETYPE.
1602         * gdbtypes.h (struct main_type): Members vptr_fieldno, vptr_basetype
1603         moved to ...
1604         (struct cplus_struct_type): ... here.  All uses updated.
1605         (TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE): Rewrite.
1606         (internal_type_vptr_fieldno, set_type_vptr_fieldno): Declare.
1607         (internal_type_vptr_basetype, set_type_vptr_basetype): Declare.
1608         * stabsread.c (read_tilde_fields): Update setting of
1609         TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE.
1610
1611 2015-01-31  Doug Evans  <xdje42@gmail.com>
1612
1613         * cp-valprint.c (cp_find_class_member): Rename parameter domain_p
1614         to self_p.
1615         (cp_print_class_member): Rename local domain to self_type.
1616         * dwarf2read.c (quirk_gcc_member_function_pointer): Rename local
1617         domain_type to self_type.
1618         (set_die_type) <need_gnat_info>: Handle
1619         TYPE_CODE_METHODPTR, TYPE_CODE_MEMBERPTR, TYPE_CODE_METHOD.
1620         * gdb-gdb.py (StructMainTypePrettyPrinter): Handle
1621         TYPE_SPECIFIC_SELF_TYPE.
1622         * gdbtypes.c (internal_type_self_type): New function.
1623         (set_type_self_type): New function.
1624         (smash_to_memberptr_type): Rename parameter domain to self_type.
1625         Update setting of TYPE_SELF_TYPE.
1626         (smash_to_methodptr_type): Update setting of TYPE_SELF_TYPE.
1627         (smash_to_method_type): Rename parameter domain to self_type.
1628         Update setting of TYPE_SELF_TYPE.
1629         (check_stub_method): Call smash_to_method_type.
1630         (recursive_dump_type): Handle TYPE_SPECIFIC_SELF_TYPE.
1631         (copy_type_recursive): Ditto.
1632         * gdbtypes.h (enum type_specific_kind): New value
1633         TYPE_SPECIFIC_SELF_TYPE.
1634         (struct main_type) <type_specific>: New member self_type.
1635         (struct cplus_struct_type) <fn_field.type>: Update comment.
1636         (TYPE_SELF_TYPE): Rewrite.
1637         (internal_type_self_type, set_type_self_type): Declare.
1638         * gnu-v3-abi.c (gnuv3_print_method_ptr): Rename local domain to
1639         self_type.
1640         (gnuv3_method_ptr_to_value): Rename local domain_type to self_type.
1641         * m2-typeprint.c (m2_range): Replace TYPE_SELF_TYPE with
1642         TYPE_TARGET_TYPE.
1643         * stabsread.c (read_member_functions): Mark methods with
1644         TYPE_CODE_METHOD, not TYPE_CODE_FUNC.  Update setting of
1645         TYPE_SELF_TYPE.
1646
1647 2015-01-31  Doug Evans  <xdje42@gmail.com>
1648
1649         * gdbtypes.h (TYPE_SELF_TYPE): Renamed from TYPE_DOMAIN_TYPE.
1650         All uses updated.
1651
1652 2015-01-31  Doug Evans  <xdje42@gmail.com>
1653
1654         * gnu-v3-abi.c (gnuv3_dynamic_class): Assert only passed structs
1655         or unions.  Return zero if union.
1656         (gnuv3_get_vtable): Call check_typedef.  Assert only passed structs.
1657         (gnuv3_rtti_type): Pass already-check_typedef'd value to
1658         gnuv3_get_vtable.
1659         (compute_vtable_size): Assert only passed structs.
1660         (gnuv3_print_vtable): Don't call gnuv3_get_vtable for non-structs.
1661
1662 2015-01-31  Doug Evans  <xdje42@gmail.com>
1663
1664         * gdbtypes.c (copy_type_recursive): Handle all TYPE_SPECIFIC_FIELD
1665         kinds.
1666
1667 2015-01-31  Gary Benson <gbenson@redhat.com>
1668             Doug Evans  <dje@google.com>
1669
1670         PR cli/9007
1671         PR cli/11920
1672         PR cli/15548
1673         * cli/cli-cmds.c (complete_command): Notify user if max-completions
1674         reached.
1675         * common/common-exceptions.h (enum errors)
1676         <MAX_COMPLETIONS_REACHED_ERROR>: New value.
1677         * completer.h (get_max_completions_reached_message): New declaration.
1678         (max_completions): Likewise.
1679         (completion_tracker_t): New typedef.
1680         (new_completion_tracker): New declaration.
1681         (make_cleanup_free_completion_tracker): Likewise.
1682         (maybe_add_completion_enum): New enum.
1683         (maybe_add_completion): New declaration.
1684         (throw_max_completions_reached_error): Likewise.
1685         * completer.c (max_completions): New global variable.
1686         (new_completion_tracker): New function.
1687         (free_completion_tracker): Likewise.
1688         (make_cleanup_free_completion_tracker): Likewise.
1689         (maybe_add_completions): Likewise.
1690         (throw_max_completions_reached_error): Likewise.
1691         (complete_line): Remove duplicates and limit result to max_completions
1692         entries.
1693         (get_max_completions_reached_message): New function.
1694         (gdb_display_match_list): Handle max_completions.
1695         (_initialize_completer): New declaration and function.
1696         * symtab.c: Include completer.h.
1697         (completion_tracker): New static variable.
1698         (completion_list_add_name): Call maybe_add_completion.
1699         (default_make_symbol_completion_list_break_on_1): Renamed from
1700         default_make_symbol_completion_list_break_on.  Maintain
1701         completion_tracker across calls to completion_list_add_name.
1702         (default_make_symbol_completion_list_break_on): New function.
1703         * top.c (init_main): Set rl_completion_display_matches_hook.
1704         * tui/tui-io.c: Include completer.h.
1705         (tui_old_rl_display_matches_hook): New static global.
1706         (tui_rl_display_match_list): Notify user if max-completions reached.
1707         (tui_setup_io): Save/restore rl_completion_display_matches_hook.
1708         * NEWS (New Options): Mention set/show max-completions.
1709
1710 2015-01-31  Gary Benson  <gbenson@redhat.com>
1711
1712         * symtab.c (struct add_name_data) <code>: New field.
1713         Updated comments.
1714         (add_symtab_completions): New function.
1715         (symtab_expansion_callback): Likewise.
1716         (default_make_symbol_completion_list_break_on): Set datum.code.
1717         Move minimal symbol scan before calling expand_symtabs_matching.
1718         Scan known primary symtabs for externs and statics before calling
1719         expand_symtabs_matching.  Pass symtab_expansion_callback as
1720         expansion_notify argument to expand_symtabs_matching.  Do not scan
1721         primary symtabs for externs and statics after calling
1722         expand_symtabs_matching.
1723
1724 2015-01-31  Gary Benson  <gbenson@redhat.com>
1725
1726         * symfile.h (expand_symtabs_exp_notify_ftype): New typedef.
1727         (struct quick_symbol_functions) <expand_symtabs_matching>:
1728         New argument expansion_notify.  All uses updated.
1729         (expand_symtabs_matching): New argument expansion_notify.
1730         All uses updated.
1731         * symfile-debug.c (debug_qf_expand_symtabs_matching):
1732         Also print expansion notify.
1733         * symtab.c (expand_symtabs_matching_via_partial): Call
1734         expansion_notify whenever a partial symbol table is expanded.
1735         * dwarf2read.c (dw2_expand_symtabs_matching): Call
1736         expansion_notify whenever a symbol table is instantiated.
1737
1738 2015-01-31  Doug Evans  <xdje42@gmail.com>
1739
1740         * cli-out.c: #include completer.h, readline/readline.h.
1741         (cli_mld_crlf, cli_mld_putch, cli_mld_puts): New functions.
1742         (cli_mld_flush, cld_mld_erase_entire_line): Ditto.
1743         (cli_mld_beep, cli_mld_read_key, cli_display_match_list): Ditto.
1744         * cli-out.h (cli_display_match_list): Declare.
1745         * completer.c (MB_INVALIDCH, MB_NULLWCH): New macros.
1746         (ELLIPSIS_LEN): Ditto.
1747         (gdb_get_y_or_n, gdb_display_match_list_pager): New functions.
1748         (gdb_path_isdir, gdb_printable_part, gdb_fnwidth): Ditto.
1749         (gdb_fnprint, gdb_print_filename): Ditto.
1750         (gdb_complete_get_screenwidth, gdb_display_match_list_1): Ditto.
1751         (gdb_display_match_list): Ditto.
1752         * completer.h (mld_crlf_ftype, mld_putch_ftype): New typedefs.
1753         (mld_puts_ftype, mld_flush_ftype, mld_erase_entire_line_ftype): Ditto.
1754         (mld_beep_ftype, mld_read_key_ftype): Ditto.
1755         (match_list_displayer): New struct.
1756         (gdb_display_match_list): Declare.
1757         * top.c (init_main): Set rl_completion_display_matches_hook.
1758         * tui/tui-io.c: #include completer.h.
1759         (printable_part, PUTX, print_filename, get_y_or_n): Delete.
1760         (tui_mld_crlf, tui_mld_putch, tui_mld_puts): New functions.
1761         (tui_mld_flush, tui_mld_erase_entire_line, tui_mld_beep): Ditto.
1762         (tui_mld_getc, tui_mld_read_key): Ditto.
1763         (tui_rl_display_match_list): Rewrite.
1764         (tui_handle_resize_during_io): New arg for_completion.  All callers
1765         updated.
1766
1767 2015-01-31  Doug Evans  <xdje42@gmail.com>
1768
1769         Add symbol lookup cache.
1770         * NEWS: Document new options and commands.
1771         * symtab.c (symbol_cache_key): New static global.
1772         (DEFAULT_SYMBOL_CACHE_SIZE, MAX_SYMBOL_CACHE_SIZE): New macros.
1773         (SYMBOL_LOOKUP_FAILED): New macro.
1774         (symbol_cache_slot_state): New enum.
1775         (block_symbol_cache): New struct.
1776         (symbol_cache): New struct.
1777         (new_symbol_cache_size, symbol_cache_size): New static globals.
1778         (hash_symbol_entry, eq_symbol_entry): New functions.
1779         (symbol_cache_byte_size, resize_symbol_cache): New functions.
1780         (make_symbol_cache, free_symbol_cache): New functions.
1781         (get_symbol_cache, symbol_cache_cleanup): New function.
1782         (set_symbol_cache_size, set_symbol_cache_size_handler): New functions.
1783         (symbol_cache_lookup, symbol_cache_clear_slot): New function.
1784         (symbol_cache_mark_found, symbol_cache_mark_not_found): New functions.
1785         (symbol_cache_flush, symbol_cache_dump): New functions.
1786         (maintenance_print_symbol_cache): New function.
1787         (maintenance_flush_symbol_cache): New function.
1788         (symbol_cache_stats): New function.
1789         (maintenance_print_symbol_cache_statistics): New function.
1790         (symtab_new_objfile_observer): New function.
1791         (symtab_free_objfile_observer): New function.
1792         (lookup_static_symbol, lookup_global_symbol): Use symbol cache.
1793         (_initialize_symtab): Init symbol_cache_key.  New parameter
1794         maint symbol-cache-size.  New maint commands print symbol-cache,
1795         print symbol-cache-statistics, flush-symbol-cache.
1796         Install new_objfile, free_objfile observers.
1797
1798 2015-01-31  Joel Brobecker  <brobecker@adacore.com>
1799
1800         PR symtab/17855
1801         * symfile.c (clear_symtab_users): Move call to breakpoint_re_set
1802         to end.
1803
1804 2015-01-31  Doug Evans  <xdje42@gmail.com>
1805
1806         * NEWS: Mention inlined scripts in .debug_gdb_scripts section.
1807         * auto-load.c: #include ctype.h.
1808         (struct auto_load_pspace_info): Replace member loaded_scripts with
1809         new members loaded_script_files, loaded_script_texts.
1810         (auto_load_pspace_data_cleanup): Update.
1811         (init_loaded_scripts_info): Update.
1812         (get_auto_load_pspace_data_for_loading): Update.
1813         (maybe_add_script_file): Renamed from maybe_add_script.  All callers
1814         updated.
1815         (maybe_add_script_text): New function.
1816         (clear_section_scripts): Update.
1817         (source_script_file, execute_script_contents): New functions.
1818         (source_section_scripts): Add support for
1819         SECTION_SCRIPT_ID_PYTHON_TEXT, SECTION_SCRIPT_ID_GUILE_TEXT.
1820         (print_scripts): New function.
1821         (auto_load_info_scripts): Also print inlined scripts.
1822         (maybe_print_unsupported_script_warning): Renamed from
1823         unsupported_script_warning_print.  All callers updated.
1824         (maybe_print_script_not_found_warning): Renamed from
1825         script_not_found_warning_print.  All callers updated.
1826         * extension-priv.h (struct extension_language_script_ops): New member
1827         objfile_script_executor.
1828         * extension.c (ext_lang_objfile_script_executor): New function.
1829         * extension.h (objfile_script_executor_func): New typedef.
1830         (ext_lang_objfile_script_executor): Declare.
1831         * guile/guile-internal.h (gdbscm_execute_objfile_script): Declare.
1832         * guile/guile.c (guile_extension_script_ops): Update.
1833         * guile/scm-objfile.c (gdbscm_execute_objfile_script): New function.
1834         * python/python.c (python_extension_script_ops): Update.
1835         (gdbpy_execute_objfile_script): New function.
1836
1837 2015-01-31  Eli Zaretskii  <eliz@gnu.org>
1838
1839         * tui/tui-io.c (tui_expand_tabs): New function.
1840         (tui_puts, tui_redisplay_readline): Expand TABs into the
1841         appropriate number of spaces.
1842         * tui/tui-regs.c: Include tui-io.h.
1843         (tui_register_format): Call tui_expand_tabs to expand TABs into
1844         the appropriate number of spaces.
1845         * tui/tui-io.h: Add prototype for tui_expand_tabs.
1846
1847 2015-01-30  Doug Evans  <dje@google.com>
1848
1849         * NEWS: "info source" command now display producer string if present.
1850         * source.c (source_info): Print producer string if present.
1851
1852 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1853
1854         * varobj.c (varobj_delete): Fix comment.
1855
1856 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1857
1858         * varobj.c (create_child): Modify comment.
1859
1860 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1861
1862         * ada-varobj.c (ada_number_of_children): Constify struct varobj *
1863         parameter.
1864         (ada_name_of_variable): Same.
1865         (ada_path_expr_of_child): Same.
1866         (ada_value_of_variable): Same.
1867         (ada_value_is_changeable_p): Same.
1868         (ada_value_has_mutated): Same.
1869         * c-varobj.c (varobj_is_anonymous_child): Same.
1870         (c_is_path_expr_parent): Same.
1871         (c_number_of_children): Same.
1872         (c_name_of_variable): Same.
1873         (c_path_expr_of_child): Same.
1874         (get_type): Same.
1875         (c_value_of_variable): Same.
1876         (cplus_number_of_children): Same.
1877         (cplus_name_of_variable): Same.
1878         (cplus_path_expr_of_child): Same.
1879         (cplus_value_of_variable): Same.
1880         * jv-varobj.c (java_number_of_children): Same.
1881         (java_name_of_variable): Same.
1882         (java_path_expr_of_child): Same.
1883         (java_value_of_variable): Same.
1884         * varobj.c (number_of_children): Same.
1885         (name_of_variable): Same.
1886         (is_root_p): Same.
1887         (varobj_ensure_python_env): Same.
1888         (varobj_get_objname): Same.
1889         (varobj_get_expression): Same.
1890         (varobj_get_display_format): Same.
1891         (varobj_get_display_hint): Same.
1892         (varobj_has_more): Same.
1893         (varobj_get_thread_id): Same.
1894         (varobj_get_frozen): Same.
1895         (dynamic_varobj_has_child_method): Same.
1896         (varobj_get_gdb_type): Same.
1897         (is_path_expr_parent): Same.
1898         (varobj_default_is_path_expr_parent): Same.
1899         (varobj_get_language): Same.
1900         (varobj_get_attributes): Same.
1901         (varobj_is_dynamic_p): Same.
1902         (varobj_get_child_range): Same.
1903         (varobj_value_has_mutated): Same.
1904         (varobj_get_value_type): Same.
1905         (number_of_children): Same.
1906         (name_of_variable): Same.
1907         (check_scope): Same.
1908         (varobj_editable_p): Same.
1909         (varobj_value_is_changeable_p): Same.
1910         (varobj_floating_p): Same.
1911         (varobj_default_value_is_changeable_p): Same.
1912
1913 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1914
1915         * varobj.c (varobj_get_path_expr): Set var->path_expr.
1916         * c-varobj.c (c_path_expr_of_child): Set local var instead of
1917         child->path_expr.
1918         (cplus_path_expr_of_child): Same.
1919
1920 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1921
1922         * mi-cmd-var.c (print_varobj): Free varobj_get_expression
1923         result.
1924         (mi_cmd_var_info_expression): Same.
1925         * varobj.c (varobj_get_expression): Mention in the comment that
1926         the result must by freed by the caller.
1927
1928 2015-01-30  Simon Marchi  <simon.marchi@ericsson.com>
1929
1930         * mi/mi-cmd-var.c (mi_cmd_var_info_type): Free result of
1931         varobj_get_type.
1932         (varobj_update_one): Same.
1933         * varobj.c (update_type_if_necessary): Free curr_type_str and
1934         new_type_str.
1935         (varobj_get_type): Specify in comment that the result needs to be
1936         freed by the caller.
1937
1938 2015-01-29  Doug Evans  <dje@google.com>
1939
1940         PR symtab/17890
1941         * dwarf2read.c (dwarf_decode_line_header): Punt if version > 4.
1942
1943 2015-01-25  Mark Wielaard  <mjw@redhat.com>
1944
1945         * dwarf2read.c (checkproducer): Call producer_is_gcc.
1946         * utils.c (producer_is_gcc_ge_4): Likewise.
1947         (producer_is_gcc): New function.
1948         * utils.h (producer_is_gcc): New declaration.
1949
1950 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
1951
1952         * gdbtypes.h (struct dynamic_prop): New PROP_ADDR_OFFSET enum
1953         kind.
1954         * gdbtypes.c (resolve_dynamic_type_internal): Replace "addr"
1955         parameter by "addr_stack" parameter.
1956         (resolve_dynamic_range): Replace "addr" parameter by
1957         "stack_addr" parameter.  Update function documentation.
1958         Update code accordingly.
1959         (resolve_dynamic_array, resolve_dynamic_union)
1960         (resolve_dynamic_struct, resolve_dynamic_type_internal): Likewise.
1961         (resolve_dynamic_type): Update code, following the changes made
1962         to resolve_dynamic_type_internal's interface.
1963         * dwarf2loc.h (struct property_addr_info): New.
1964         (dwarf2_evaluate_property): Replace "address" parameter
1965         by "addr_stack" parameter.  Adjust function documentation.
1966         (struct dwarf2_offset_baton): New.
1967         (struct dwarf2_property_baton): Update documentation of
1968         field "referenced_type" to be more general. New field
1969         "offset_info" in union data field.
1970         * dwarf2loc.c (dwarf2_evaluate_property): Replace "address"
1971         parameter by "addr_stack" parameter.  Adjust code accordingly.
1972         Add support for PROP_ADDR_OFFSET properties.
1973         * dwarf2read.c (attr_to_dynamic_prop): Add support for
1974         DW_AT_data_member_location attributes as well.  Use case
1975         statements instead of if/else condition.
1976
1977 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
1978
1979         * ada-varobj.c (ada_varobj_get_array_number_of_children):
1980         Return zero if PARENT_VALUE is NULL and parent_type's
1981         range type is dynamic.
1982
1983 2015-01-29  Joel Brobecker  <brobecker@adacore.com>
1984
1985         * gdbtypes.c (is_dynamic_type_internal) <TYPE_CODE_RANGE>: Return
1986         nonzero if the type's subtype is dynamic.
1987         (resolve_dynamic_range): Also resolve the range's subtype.
1988
1989 2015-01-29  Alexander Klimov  <alserkli@inbox.ru>  (tiny patch)
1990
1991         Pushed by Joel Brobecker  <brobecker@adacore.com>.
1992         * symfile.c (unmap_overlay_command): Initialize sec to NULL.
1993
1994 2015-01-27  Doug Evans  <dje@google.com>
1995
1996         * NEWS: Mention gdb.Objfile.username.
1997         * python/py-objfile.c (objfpy_get_username): New function.
1998         (objfile_getset): Add "username".
1999
2000 2015-01-24  Mark Wielaard  <mjw@redhat.com>
2001
2002         * stack.c (return_command): Markup warning message with _.
2003
2004 2015-01-24  Doug Evans  <xdje42@gmail.com>
2005
2006         * gdbtypes.h (TYPE_TYPE_SPECIFIC): Delete.
2007
2008 2015-01-24  Jan Kratochvil  <jan.kratochvil@redhat.com>
2009
2010         Fix 100x slowdown regression on DWZ files.
2011         * dwarf2read.c (struct dwarf2_per_objfile): Add line_header_hash.
2012         (struct line_header): Add offset and offset_in_dwz.
2013         (dwarf_decode_lines): Add parameter decode_mapping to the declaration.
2014         (free_line_header_voidp): New declaration.
2015         (line_header_hash, line_header_hash_voidp, line_header_eq_voidp): New
2016         functions.
2017         (dwarf2_build_include_psymtabs): Update dwarf_decode_lines caller.
2018         (handle_DW_AT_stmt_list): Use line_header_hash.
2019         (free_line_header_voidp): New function.
2020         (dwarf_decode_line_header): Initialize offset and offset_in_dwz.
2021         (dwarf_decode_lines): New parameter decode_mapping, use it.
2022         (dwarf2_free_objfile): Free line_header_hash.
2023
2024 2015-01-23  Simon Marchi  <simon.marchi@ericsson.com>
2025
2026         PR gdb/17416
2027         * valops.c (value_rtti_indirect_type): Catch exception thrown by
2028         value_ind.
2029
2030 2015-01-15  Mark Wielaard  <mjw@redhat.com>
2031
2032         * dwarf2read.c (read_subroutine_type): Set TYPE_NO_RETURN from
2033         DW_AT_noreturn.
2034         * gdbtypes.h (struct func_type): Add is_noreturn field flag. Make
2035         calling_convention an 8 bit bit field.
2036         (TYPE_NO_RETURN): New macro.
2037         * infcmd.c (finish_command): Query if function does not return
2038         normally.
2039         * stack.c (return_command): Likewise.
2040
2041 2015-01-23  Pedro Alves  <palves@redhat.com>
2042
2043         * linux-nat.c (linux_is_async_p): New macro.
2044         (linux_nat_is_async_p):
2045         (linux_nat_terminal_inferior): Check whether the target can async
2046         instead of whether it is already async.
2047         (linux_nat_terminal_ours): Don't check whether the target is
2048         async.
2049         (linux_async_pipe): Use linux_is_async_p.
2050
2051 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
2052
2053         * NEWS (Changes since GDB 7.9): Add 'thread apply all' option
2054         '-ascending'.
2055         * thread.c (tp_array_compar_ascending, tp_array_compar): New.
2056         (thread_apply_all_command): Parse CMD for tp_array_compar_ascending.
2057         Sort tp_array using tp_array_compar.
2058         (_initialize_thread): Extend thread_apply_all_command help.
2059
2060 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
2061
2062         * corelow.c (core_open): Call also thread_command.
2063         * gdbthread.h (thread_command): New prototype moved from ...
2064         * thread.c (thread_command): ... here.
2065         (thread_command): Make it global.
2066
2067 2015-01-22  Pedro Alves  <palves@redhat.com>
2068
2069         * configure.ac [*mingw32*]: Check $curses_found instead of
2070         $prefer_curses.
2071         * configure: Regenerate.
2072         * windows-termcap.c: Remove HAVE_CURSES_H, HAVE_NCURSES_H and
2073         HAVE_NCURSES_NCURSES_H checks.
2074
2075 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
2076
2077         * tui/tui.c (tui_enable) [__MINGW32__]: If the call to 'newterm'
2078         fails with the 1st arg NULL, try again with "unknown".  Don't test
2079         the "cup" capability: it isn't supported by the Windows port of
2080         ncurses, but the Windows console driver is still capable of
2081         supporting TUI.
2082
2083 2015-01-22  Jan Kratochvil  <jan.kratochvil@redhat.com>
2084
2085         * compile/compile.c (_initialize_compile): Use -fPIE for compile_args.
2086
2087 2015-01-22  Eli Zaretskii  <eliz@gnu.org>
2088
2089         * Makefile.in (HFILES_NO_SRCDIR): Remove ada-varobj.h.
2090         (ALLDEPFILES): Remove irix5-nat.c.  These two are part of the
2091         reason that "make TAGS" is broken.
2092
2093 2015-01-22  Chen Gang  <gang.chen.5i5j@gmail.com>
2094
2095         * hppa-tdep.c (inst_saves_gr): Fix logical working flow issues
2096         and check additional store instructions.
2097
2098 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
2099
2100         * MAINTAINERS (Write After Approval): Add "Wei-cheng Wang".
2101
2102 2015-01-21  Wei-cheng Wang  <cole945@gmail.com>
2103
2104         * ppc-linux-tdep.c (ppc_skip_trampoline_code,
2105         ppc_canonicalize_syscall, ppc_linux_syscall_record,
2106         ppc_linux_record_signal, ppc_init_linux_record_tdep): Add comments.
2107         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
2108         * rs6000-tdep.c (rs6000_epilogue_frame_cache,
2109         rs6000_epilogue_frame_this_id, rs6000_epilogue_frame_prev_register,
2110         rs6000_epilogue_frame_sniffer, ppc_record_vsr, ppc_process_record_op4,
2111         ppc_process_record_op19, ppc_process_record_op31,
2112         ppc_process_record_op59, ppc_process_record_op60,
2113         ppc_process_record_op63): Likewise.
2114
2115 2015-01-20  Joel Brobecker  <brobecker@adacore.com>
2116
2117         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason_string)
2118         (linux_ptrace_test_ret_to_nx): Use safe_strerror instead of
2119         strerror.
2120
2121 2015-01-20  Wei-cheng Wang  <cole945@gmail.com>
2122
2123         * rs6000-tdep.c (ppc_process_record_op4, ppc_process_record_op19,
2124         ppc_process_record_op31, ppc_process_record_op59,
2125         ppc_process_record_op60, ppc_process_record_op63,
2126         ppc_process_record): Fix -Wformat warning.
2127         * rs6000-tdep.c (rs6000_epilogue_frame_cache, ppc_process_record_op60):
2128         Remove unused variables.
2129
2130 2015-01-20  Chen Gang  <gang.chen.5i5j@gmail.com>
2131
2132         * MAINTAINERS (Write After Approval): Add "Chen Gang".
2133
2134 2015-01-19  Eli Zaretskii  <eliz@gnu.org>
2135
2136         * configure.ac [*mingw32*]: Only add windows-termcap.o to
2137         CONFIG_OBS if not building with a curses library.
2138         * configure: Regenerate.
2139
2140         * windows-termcap.c: Include defs.h.  Make the whole body empty if
2141         either one of HAVE_CURSES_H or HAVE_NCURSES_H or
2142         HAVE_NCURSES_NCURSES_H is defined.
2143
2144 2015-01-19  Joel Brobecker  <brobecker@adacore.com>
2145
2146         * rs6000-tdep.c (rs6000_gdbarch_init): Move divide operator
2147         from end of line to start of next line.
2148
2149 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
2150
2151         * ppc-linux-tdep.c (ppc_skip_trampoline_code):
2152         Scan PLT stub backward for reverse debugging.
2153         * ppc64-tdep.c (ppc64_skip_trampoline_code): Likewise.
2154
2155 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
2156             Ulrich Weigand  <uweigand@de.ibm.com>
2157
2158         * configure.tgt (powerpc*-*-linux): Add linux-record.o to
2159         gdb_target_obs.
2160         (ppc_linux_record_tdep, ppc64_linux_record_tdep): New for linux syscall
2161         record.
2162         (ppc_canonicalize_syscall, ppc_linux_syscall_record,
2163         ppc_linux_record_signal, ppc_init_linux_record_tdep): New functions.
2164         (ppc_linux_init_abi): Set process_record, process_record_signal.
2165         * ppc-tdep.h (struct gdbarch_tdep): Add ppc_syscall_record and
2166         ppc_linux_record_tdep to gdbarch_tdep.
2167         (ppc_process_record): New declaration.
2168         * rs6000-tdep.c (ppc_record_vsr, ppc_process_record_op4,
2169         ppc_process_record_op19, ppc_process_record_op31,
2170         ppc_process_record_op59, ppc_process_record_op60,
2171         ppc_process_record_op63, ppc_process_record): New functions.
2172
2173 2015-01-17  Wei-cheng Wang  <cole945@gmail.com>
2174
2175         * rs6000-tdep.c (rs6000_in_function_epilogue_p): Rename to
2176         rs6000_in_function_epilogue_frame_p and add an argument
2177         for frame_info.
2178         (rs6000_epilogue_frame_cache, rs6000_epilogue_frame_this_id,
2179         rs6000_epilogue_frame_prev_register, rs6000_epilogue_frame_sniffer):
2180         New functions.
2181         (rs6000_epilogue_frame_unwind): New.
2182         (rs6000_gdbarch_init): Append epilogue unwinder.
2183
2184 2015-01-16  Sergio Durigan Junior  <sergiodj@redhat.com>
2185
2186         * nat/linux-personality.c: Replace "#ifndef
2187         HAVE_DECL_ADDR_NO_RANDOMIZE" by "#if
2188         !HAVE_DECL_ADDR_NO_RANDOMIZE", fixing a regression in RHEL-5
2189         systems.
2190
2191 2015-01-16  Eli Zaretskii  <eliz@gnu.org>
2192
2193         * tui/tui-win.c (tui_rehighlight_all, tui_set_var_cmd): New
2194         functions.
2195         (_initialize_tui_win) <border-kind, border-mode>:
2196         <active-border-mode>: Use tui_set_var_cmd as the "set" function.
2197         (tui_set_tab_width_command): Fix the commentary.
2198
2199         * tui/tui-win.h: Add prototype for tui_rehighlight_all.
2200
2201         * tui/tui-win.c (tui_scroll_left_command, tui_scroll_right_command):
2202         Doc fix.
2203         (tui_set_tab_width_command): Delete and recreate the source and
2204         the disassembly windows, to show the effect of the changed tab
2205         size immediately.
2206
2207         * tui/tui-data.h (LINE_PREFIX): Make shorter
2208         (MAX_PID_WIDTH): Enlarge from 14 to 19, to leave enough space for
2209         "Thread NNNNN.XXXX" thread ID notation on Windows.
2210
2211 2015-01-16  Jan Kratochvil  <jan.kratochvil@redhat.com>
2212
2213         Fix gcc-5 compilation.
2214         * hppa-tdep.c (inst_saves_gr): Fix parentheses typo.
2215
2216 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
2217
2218         * Makefile.in (HFILES_NO_SRCDIR): Add nat/linux-personality.h.
2219         (linux-personality.o): New rule.
2220         * common/common-defs.h: Include <stdint.h>.
2221         * config/aarch64/linux.mh (NATDEPFILES): Include
2222         linux-personality.o.
2223         * config/alpha/alpha-linux.mh (NATDEPFILES): Likewise.
2224         * config/arm/linux.mh (NATDEPFILES): Likewise.
2225         * config/i386/linux64.mh (NATDEPFILES): Likewise.
2226         * config/i386/linux.mh (NATDEPFILES): Likewise.
2227         * config/ia64/linux.mh (NATDEPFILES): Likewise.
2228         * config/m32r/linux.mh (NATDEPFILES): Likewise.
2229         * config/m68k/linux.mh (NATDEPFILES): Likewise.
2230         * config/mips/linux.mh (NATDEPFILES): Likewise.
2231         * config/pa/linux.mh (NATDEPFILES): Likewise.
2232         * config/powerpc/linux.mh (NATDEPFILES): Likewise.
2233         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Likewise.
2234         * config/powerpc/spu-linux.mh (NATDEPFILES): Likewise.
2235         * config/s390/linux.mh (NATDEPFILES): Likewise.
2236         * config/sparc/linux64.mh (NATDEPFILES): Likewise.
2237         * config/sparc/linux.mh (NATDEPFILES): Likewise.
2238         * config/tilegx/linux.mh (NATDEPFILES): Likewise.
2239         * config/xtensa/linux.mh (NATDEPFILES): Likewise.
2240         * defs.h: Remove #include <stdint.h> (moved to
2241         common/common-defs.h).
2242         * linux-nat.c: Include nat/linux-personality.h.  Remove #include
2243         <sys/personality.h>; do not define ADDR_NO_RANDOMIZE (moved to
2244         nat/linux-personality.c).
2245         (linux_nat_create_inferior): Remove code to disable address space
2246         randomization (moved to nat/linux-personality.c).  Create cleanup
2247         to disable address space randomization.
2248         * nat/linux-personality.c: New file.
2249         * nat/linux-personality.h: Likewise.
2250
2251 2015-01-15  Sergio Durigan Junior  <sergiodj@redhat.com>
2252
2253         * Makefile.in (ALLDEPFILES): Including common/mingw-strerror.c and
2254         common/posix-strerror.c.
2255         (posix-strerror.o): New rule.
2256         (mingw-strerror.o): Likewise.
2257         * common/common-utils.h (safe_strerror): Move prototype to here,
2258         from utils.h.
2259         * common/common.host: New file.
2260         * common/mingw-strerror.c: Likewise.
2261         * common/posix-strerror.c: Likewise.
2262         * configure: Regenerated.
2263         * configure.ac: Source common/common.host.  Add variable
2264         common_host_obs to gdb_host_obs.
2265         * contrib/ari/gdb_ari.sh: Mention gdb/common/mingw-strerror.c and
2266         gdb/common/posix-strerror.c when warning about the use of
2267         strerror.
2268         * mingw-hdep.c (safe_strerror): Remove definition; move it to
2269         common/mingw-strerror.c.
2270         * posix-hdep.c (safe_strerror): Remove definition; move it to
2271         common/posix-hdep.c.
2272         * utils.h (safe_strerror): Remove prototype; move to
2273         common/common-utils.h.
2274
2275 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
2276
2277         GDB 7.8.2 released.
2278
2279 2015-01-15  Joel Brobecker  <brobecker@adacore.com>
2280
2281         * ada-lang.c (ada_array_bound_from_type): Ignore array's parallel
2282         ___XA type if the array has already been fixed.
2283
2284 2015-01-14  Yao Qi  <yao@codesourcery.com>
2285
2286         * Makefile.in (ppc-linux.o): New rule.
2287         * config/powerpc/ppc64-linux.mh (NATDEPFILES): Add ppc-linux.o.
2288         * configure.ac: AC_CHECK_FUNCS(getauxval).
2289         * config.in: Re-generated.
2290         * configure: Re-generated.
2291         * nat/ppc-linux.h [__powerpc64__] (ppc64_64bit_inferior_p):
2292         Declare.
2293         * nat/ppc-linux.c: New file.
2294         * ppc-linux-nat.c (ppc_linux_target_wordsize) [__powerpc64__]:
2295         Call ppc64_64bit_inferior_p.
2296
2297 2015-01-14  Yao Qi  <yao@codesourcery.com>
2298
2299         * ppc-linux-nat.c (PT_ORIG_R3, PT_TRAP): Move to
2300         nat/ppc-linux.h.
2301         (PPC_FEATURE_CELL, PPC_FEATURE_BOOKE): Likewise.
2302         (PPC_FEATURE_HAS_DFP): Likewise.
2303         (PTRACE_GETVRREGS, PTRACE_SETVRREGS): Likewise.
2304         (PTRACE_GETVSXREGS, PTRACE_SETVSXREGS): Likewise.
2305         (PTRACE_GETEVRREGS, PTRACE_SETEVRREGS): Likewise.
2306         Include "nat/ppc-linux.h".
2307         * nat/ppc-linux.h: New file.
2308         * Makefile.in (HFILES_NO_SRCDIR): Add nat/ppc-linux.h.
2309
2310 2015-01-14  Pedro Alves  <palves@redhat.com>
2311
2312         PR gdb/17525
2313         * breakpoint.c: Include "interps.h".
2314         (bpstat_do_actions_1): Also check whether the interpreter is
2315         async.
2316
2317 2015-01-14  Pedro Alves  <palves@redhat.com>
2318
2319         PR cli/17828
2320         * infrun.c (reinstall_readline_callback_handler_cleanup): Don't
2321         reinstall if the interpreter is sync.
2322
2323 2015-01-13  Doug Evans  <dje@google.com>
2324
2325         * objfiles.c (objfile_filename): New function.
2326         * objfiles.h (objfile_filename): Declare it.
2327         (objfile_name): Add function comment.
2328         * python/py-objfile.c (objfpy_lookup_objfile_by_name): Try both the
2329         bfd file name (which may be realpath'd), and the original name.
2330
2331 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
2332
2333         * NEWS: Create a new section for the next release branch.
2334         Rename the section of the current branch, now that it has
2335         been cut.
2336
2337 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
2338
2339         GDB 7.9 branch created (92fc2e6978d9a7c8324c7e851dbee59e22ec7a37):
2340         * version.in: Bump version to 7.9.50.DATE-cvs.
2341
2342 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
2343
2344         * nat/linux-procfs.c (linux_proc_attach_tgid_threads):
2345         Remove trailing new-line in argument of call to warning.
2346
2347 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
2348
2349         * linux-nat.c (attach_proc_task_lwp_callback): Remove trailing
2350         new-line in argument of call to "warning".
2351
2352 2015-01-13  Joel Brobecker  <brobecker@adacore.com>
2353
2354         * ada-lang.c (ada_lookup_symbol_nonlocal): If name not found
2355         in static block, then try searching for primitive types.
2356
2357 2015-01-12  Patrick Palka  <patrick@parcs.ath.cx>
2358
2359         * top.h (gdb_add_history): Declare.
2360         * top.c (command_count): New variable.
2361         (gdb_add_history): New function.
2362         (gdb_safe_append_history): New static function.
2363         (quit_force): Call it.
2364         (command_line_input): Use gdb_add_history instead of
2365         add_history.
2366         * event-top.c (command_line_handler): Likewise.
2367
2368 2015-01-12  James Clarke  <jrtc27@jrtc27.com>  (tiny patch)
2369
2370         PR gdb/17046
2371         * darwin-nat.c: Replace <machine/setjmp.h> #include by
2372         <setjmp.h> #include.
2373
2374 2015-01-11  Doug Evans  <xdje42@gmail.com>
2375
2376         * dwarf2read.c (compute_delayed_physnames): Use TYPE_FN_FIELD_PHYSNAME.
2377
2378 2015-01-11  Doug Evans  <xdje42@gmail.com>
2379
2380         PR gdb/15830
2381         * NEWS: The "maint demangle" command is renamed as "demangle".
2382         * demangle.c: #include cli/cli-utils.h, language.h.
2383         (demangle_command): New function.
2384         (_initialize_demangle): Add new command "demangle".
2385         * maint.c (maintenance_demangle): Stub out.
2386         (_initialize_maint_cmds): Update help text for "maint demangle",
2387         and mark as deprecated.
2388
2389 2015-01-11  Mark Kettenis  <kettenis@gnu.org>
2390
2391         * inf-ptrace.c (inf_ptrace_follow_fork): Adjust now that
2392         inferior_thread is a function.
2393
2394 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
2395
2396         * Makefile.in (.y.c): Don't munge yacc's #line
2397         directives.
2398
2399 2015-01-09  Patrick Palka  <patrick@parcs.ath.cx>
2400
2401         * utils.c (defaulted_query): Rewrite to use gdb_readline_wrapper
2402         to prompt for input.
2403         * tui/tui-hooks.c (tui_query_hook): Remove.
2404         (tui_install_hooks): Don't set deprecated_query_hook.
2405         * tui/tui-io.c (tui_redisplay_readline): Fix off-by-one error in
2406         height calculation.  Always update the command window's cur_line.
2407
2408 2015-01-09  Pedro Alves  <palves@redhat.com>
2409
2410         * breakpoint.c (hardware_breakpoint_inserted_here_p): New
2411         function.
2412         * breakpoint.h (hardware_breakpoint_inserted_here_p): New
2413         declaration.
2414         * linux-nat.c (linux_nat_status_is_event): Move higher up in file.
2415         (linux_resume_one_lwp): Store the thread's PC.  Adjust to clear
2416         stop_reason.
2417         (check_stopped_by_watchpoint): New function.
2418         (save_sigtrap): Reimplement.
2419         (linux_nat_stopped_by_watchpoint): Adjust.
2420         (linux_nat_lp_status_is_event): Delete.
2421         (stop_wait_callback): Only call save_sigtrap after storing the
2422         pending status.
2423         (status_callback): If the thread had been stopped for a breakpoint
2424         that has since been removed, discard the event and resume the LWP.
2425         (count_events_callback, select_event_lwp_callback): Use
2426         lwp_status_pending_p instead of linux_nat_lp_status_is_event.
2427         (cancel_breakpoint): Rename to ...
2428         (check_stopped_by_breakpoint): ... this.  Record whether the LWP
2429         stopped for a software breakpoint or hardware breakpoint.
2430         (select_event_lwp): Only give preference to the stepping LWP in
2431         all-stop mode.  Adjust comments.
2432         (stop_and_resume_callback): Remove references to new_pending_p.
2433         (linux_nat_filter_event): Likewise.  Leave exit events of the
2434         leader thread pending here.  Handle signal short circuiting here.
2435         Only call save_sigtrap after storing the pending waitstatus.
2436         (linux_nat_wait_1): Remove 'retry' label.  Remove references to
2437         new_pending.  Don't handle leaving events the caller is not
2438         interested in pending here, nor handle signal short-circuiting
2439         here.  Also give equal priority to all LWPs that have had events
2440         in non-stop mode.  If reporting a software breakpoint event,
2441         unadjust the LWP's PC.
2442         * linux-nat.h (enum lwp_stop_reason): New.
2443         (struct lwp_info) <stop_pc>: New field.
2444         (struct lwp_info) <stopped_by_watchpoint>: Delete field.
2445         (struct lwp_info) <stop_reason>: New field.
2446         * x86-linux-nat.c (x86_linux_prepare_to_resume): Adjust.
2447
2448 2015-01-09  Pedro Alves  <palves@redhat.com>
2449
2450         * linux-nat.c (linux_handle_extended_wait) <PTRACE_EVENT_EXEC>:
2451         Set the LWP's 'resumed' flag.
2452
2453 2015-01-09  Pedro Alves  <palves@redhat.com>
2454
2455         * linux-nat.c (linux_resume_one_lwp): New function.
2456         (resume_lwp): Use lwp_status_pending_p and linux_resume_one_lwp.
2457         (linux_nat_resume): Use lwp_status_pending_p and
2458         linux_resume_one_lwp.
2459         (linux_handle_syscall_trap): Use linux_resume_one_lwp.
2460         (linux_handle_extended_wait): Use linux_resume_one_lwp.
2461         (status_callback, running_callback): Use lwp_status_pending_p.
2462         (lwp_status_pending_p): New function.
2463         (stop_and_resume_callback): Use lwp_status_pending_p.
2464         (linux_nat_filter_event): Use linux_resume_one_lwp.
2465         (linux_nat_wait_1): Always use status_callback to look for an LWP
2466         with a pending status.  Use linux_resume_one_lwp.
2467         (resume_stopped_resumed_lwps): Use lwp_status_pending_p and
2468         linux_resume_one_lwp.
2469
2470 2015-01-09  Pedro Alves  <palves@redhat.com>
2471
2472         * breakpoint.c (bp_location_inserted_here_p): New function,
2473         factored out from ...
2474         (breakpoint_inserted_here_p): ... here.  Use
2475         ALL_BP_LOCATIONS_AT_ADDR.
2476         (software_breakpoint_inserted_here_p): Use
2477         bp_location_inserted_here_p and ALL_BP_LOCATIONS_AT_ADDR.
2478
2479 2014-01-09  Pedro Alves  <palves@redhat.com>
2480
2481         Skip enabling event reporting if the kernel supports
2482         PTRACE_EVENT_CLONE.
2483         * linux-thread-db.c: Include "nat/linux-ptrace.h".
2484         (thread_db_use_events): New function.
2485         (try_thread_db_load_1): Check thread_db_use_events before enabling
2486         event reporting.
2487         (update_thread_state): New function.
2488         (attach_thread): Use it.  Check thread_db_use_events before
2489         enabling event reporting.
2490         (thread_db_detach): Check thread_db_use_events before disabling
2491         event reporting.
2492         (find_new_threads_callback): Check thread_db_use_events before
2493         enabling event reporting.  Update the thread's state if not using
2494         libthread_db events.
2495
2496 2015-01-09  Pedro Alves  <palves@redhat.com>
2497
2498         * linux-nat.c (lin_lwp_attach_lwp): Assert that the lwp id we're
2499         about to wait for is > 0.
2500         * linux-thread-db.c (find_new_threads_callback): Ignore thread if
2501         the kernel thread ID is -1.
2502
2503 2015-01-09  Pedro Alves  <palves@redhat.com>
2504
2505         * linux-nat.c (attach_proc_task_lwp_callback): New function.
2506         (linux_nat_attach): Use linux_proc_attach_tgid_threads.
2507         (wait_lwp, linux_nat_filter_event): If not set yet, set the lwp's
2508         ptrace option flags.
2509         * linux-nat.h (struct lwp_info) <must_set_ptrace_flags>: New
2510         field.
2511         * nat/linux-procfs.c: Include <dirent.h>.
2512         (linux_proc_get_int): New parameter "warn".  Handle it.
2513         (linux_proc_get_tgid): Adjust.
2514         (linux_proc_get_tracerpid): Rename to ...
2515         (linux_proc_get_tracerpid_nowarn): ... this.
2516         (linux_proc_pid_get_state): New function, factored out from
2517         (linux_proc_pid_has_state): ... this.  Add new parameter "warn"
2518         and handle it.
2519         (linux_proc_pid_is_gone): New function.
2520         (linux_proc_pid_is_stopped): Adjust.
2521         (linux_proc_pid_is_zombie_maybe_warn)
2522         (linux_proc_pid_is_zombie_nowarn): New functions.
2523         (linux_proc_pid_is_zombie): Use
2524         linux_proc_pid_is_zombie_maybe_warn.
2525         (linux_proc_attach_tgid_threads): New function.
2526         * nat/linux-procfs.h (linux_proc_get_tgid): Update comment.
2527         (linux_proc_get_tracerpid): Rename to ...
2528         (linux_proc_get_tracerpid_nowarn): ... this, and update comment.
2529         (linux_proc_pid_is_gone): New declaration.
2530         (linux_proc_pid_is_zombie): Update comment.
2531         (linux_proc_pid_is_zombie_nowarn): New declaration.
2532         (linux_proc_attach_lwp_func): New typedef.
2533         (linux_proc_attach_tgid_threads): New declaration.
2534         * nat/linux-ptrace.c (linux_ptrace_attach_fail_reason): Adjust to
2535         use nowarn functions.
2536         (linux_ptrace_attach_fail_reason_string): Move here from
2537         gdbserver/linux-low.c and rename.
2538         (ptrace_supports_feature): If the current ptrace options are not
2539         known yet, check them now, instead of asserting.
2540         * nat/linux-ptrace.h (linux_ptrace_attach_fail_reason_string):
2541         Declare.
2542
2543 2015-01-09  Pedro Alves  <palves@redhat.com>
2544
2545         * linux-thread-db.c (thread_db_find_new_threads_silently)
2546         (try_thread_db_load_1, try_thread_db_load, thread_db_load_search)
2547         (find_new_threads_once): Print debug output on gdb_stdlog.
2548
2549 2015-01-09  Chen Gang  <gang.chen.5i5j@gmail.com>
2550             Pedro Alves  <palves@redhat.com>
2551
2552         * compile/compile.c: Include "gdb_wait.h".
2553         (do_rmdir): Check return value, and free 'zap'.
2554
2555 2015-01-08  Pedro Alves  <palves@redhat.com>
2556             Yao Qi  <yao@codesourcery.com>
2557
2558         * dwarf2loc.c (indirect_pieced_value): Don't call
2559         gdb_sign_extend.  Call extract_signed_integer instead.
2560         * utils.c (gdb_sign_extend): Remove.
2561         * utils.h (gdb_sign_extend): Remove declaration.
2562
2563 2015-01-07  Pierre Muller  <muller@sourceware.org>
2564
2565         PR symtab/17811
2566         * stabsread.c (define_symbol): Set language for C++ special symbols.
2567
2568 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
2569
2570         * inflow.c (initial_gdb_ttystate): Tweak comment.
2571
2572 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
2573
2574         * inflow.c (set_initial_gdb_ttystate): Add empty line after
2575         comment documenting function.
2576
2577 2015-01-07  Patrick Palka  <patrick@parcs.ath.cx>
2578
2579         * terminal.h (set_initial_gdb_ttystate): Declare.
2580         * inflow.c (initial_gdb_ttystate): New static variable.
2581         (set_initial_gdb_ttystate): New setter.
2582         (child_terminal_init_with_pgrp): Copy initial_gdb_ttystate
2583         instead of our current terminal state.
2584         * top.c (gdb_init): Call set_initial_gdb_ttystate.
2585
2586 2015-01-07  Joel Brobecker  <brobecker@adacore.com>
2587
2588         * guile/scm-type.c (tyscm_array_1): Add comment.
2589         * python/py-type.c (typy_array_1): Add comment.
2590
2591 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
2592
2593         * guile/scm-type.c (tyscm_array_1): Do not raise out-of-range
2594         error if N2 is equal to N1 - 1.
2595
2596 2015-01-06  Joel Brobecker  <brobecker@adacore.com>
2597
2598         * python/py-type.c (typy_array_1): Do not raise negative-length
2599         exception if N2 is equal to N1 - 1.
2600
2601 2015-01-03  Doug Evans  <xdje42@gmail.com>
2602
2603         * c-exp.y: Whitespace cleanup.
2604         (classify_inner_name): Remove extra ;.
2605
2606 2015-01-02  Maciej W. Rozycki  <macro@codesourcery.com>
2607
2608         * mips-tdep.c (mips32_scan_prologue): Keep the extracted stack
2609         offset signed.
2610
2611 2015-01-02  Doug Evans  <dje@google.com>
2612
2613         * dwarf2read.c (setup_type_unit_groups): Remove outdated comment.
2614
2615 2015-01-02  Doug Evans  <dje@google.com>
2616
2617         * symtab.h (struct symbol): Fix typo in comment.
2618
2619 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
2620
2621         Update year range in copyright notice of all files.
2622
2623 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
2624
2625         * top.c (print_gdb_version): Update copyright year to 2015.
2626
2627 2015-01-01  Joel Brobecker  <brobecker@adacore.com>
2628
2629         * config/djgpp/fnchange.lst: Add entry for gdb/ChangeLog-2014.
2630
2631 For older changes see ChangeLog-2014.
2632 \f
2633 Local Variables:
2634 mode: change-log
2635 left-margin: 8
2636 fill-column: 74
2637 version-control: never
2638 coding: utf-8
2639 End: