3 * breakpoint.c (insert_bp_location): Remove disabled_breaks
4 argument. Update callers.
8 * stack.c (print_frame_info): Comment typo fix.
12 * MAINTAINERS (Write After Approval): Add myself to the list.
16 * solib-target.c: Use DEF_VEC_I, not DEF_VEC_O.
17 (library_list_start_segment): Update.
18 (library_list_start_section): Update.
22 * varobj.c (value_get_print_value): Move hint check later into the
23 function. Comment function. Free thevalue before reusing it.
28 * eval.c (evaluate_subexp_standard): Remove not_lval from all calls of
30 * valops.c (value_one): Remove parameter lv. Do not pass it to itself.
31 Assert the result kind.
32 * value.h (value_one): Remove parameter lv.
36 Fix crash on lval_computed values.
37 * valops.c (value_zero): Use not_lval for lval_computed.
41 * Makefile.in (HFILES_NO_SRCDIR): Add 'common' prefix for
42 gdb_assert.h, gdb_locale.h, gdb_dirent.h.
46 * typeprint.c (_initialize_typeprint): Extend the help of "whatis" and
47 "ptype" by their typedefs difference.
51 * dwarf2expr.c (ctx_no_read_reg): New function.
52 * dwarf2expr.h (ctx_no_read_reg): New declaration.
53 * dwarf2read.c (read_2_signed_bytes, read_4_signed_bytes): Remove.
54 (decode_locdesc_read_mem, decode_locdesc_ctx_funcs): New.
55 (decode_locdesc): Replace by a caller of dwarf_expr_eval.
59 * dwarf2-frame.c (no_get_frame_base, no_get_frame_cfa, no_get_frame_pc)
60 (no_get_tls_address, no_dwarf_call, no_base_type): Move to the other
62 (dwarf2_frame_ctx_funcs): Reference the renamed functions.
63 * dwarf2expr.c (ctx_no_get_frame_base, ctx_no_get_frame_cfa)
64 (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call)
65 (ctx_no_get_base_type): Move the functions here.
66 * dwarf2expr.h (ctx_no_get_frame_base, ctx_no_get_frame_cfa)
67 (ctx_no_get_frame_pc, ctx_no_get_tls_address, ctx_no_dwarf_call)
68 (ctx_no_get_base_type): New declarations.
72 * xcoffread.c (dwarf2_xcoff_names): Add 'macro' and 'sentinel'
74 * symfile.h (struct dwarf2_debug_sections) <sentinel>: New field.
75 * dwarf2read.c (dwarf2_elf_names): Add sentinel entry.
79 * cli/cli-dump.c (dump_binary_file): Change parameter type to
81 (dump_bfd_file): Likewise.
85 * remote.c (remote_region_ok_for_hw_watchpoint): New function.
86 (remote_hw_watchpoint_length_limit): New variable.
87 (_initialize_remote) add set,show cmds for this new variable.
88 * gdb.texinfo: document these new commands.
89 * NEWS: Mention these new commands.
93 * breakpoint.c (works_in_software_mode_watchpoint): Also return
94 true for software watchpoints.
102 * symfile.h (struct dwarf2_debug_sections) <macro>: New field.
103 * dwarf2read.c (read_indirect_string_at_offset): New function.
104 (read_indirect_string): Use it.
105 (dwarf_decode_macro_bytes): New function, taken from
106 dwarf_decode_macros. Handle DW_MACRO_GNU_*.
107 (dwarf_decode_macros): Use it. handle DW_MACRO_GNU_*.
108 (dwarf_parse_macro_header, skip_form_bytes, skip_unknown_opcode):
110 (struct dwarf2_per_objfile) <macro>: New field.
111 (dwarf2_elf_names): Add .debug_macro.
112 (dwarf2_macros_too_long_complaint): Add 'section' argument.
113 (dwarf2_locate_sections): Handle new section.
114 (read_file_scope): Handle DW_AT_GNU_macros.
115 (dwarf2_per_objfile_free): Unmap the .debug_macro section.
119 * NEWS: Mention dcache configuration.
120 * dcache.c (dcache_set_list, dcache_show_list): New variables.
121 (dcache_size, dcache_line_size): New variables.
122 (LINE_SIZE_MASK, XFORM, MASK): Adjust.
123 (struct dcache_block): Make it expandable.
124 (struct dcache_struct): New field.
125 (dcache_invalidate): Discard freelist upon dcache_line_size changes.
126 (dcache_hit, dcache_alloc, dcache_peek_byte): Adjust.
127 (dcache_poke_byte, dcache_print_line): Adjust.
128 (set_dcache_size, set_dcache_line_size): New functions.
129 (set_dcache_command, show_dcache_command): New functions.
130 (_initialize_dcache): Add new commands.
134 * progspace.h (struct program_space): Add solib_add_generation.
135 * infcmd.c (post_create_inferior): Only call solib_add if not
137 * solib.c (solib_add): Increment solib_add_generation.
141 Fix implicit pointer offsets.
142 * dwarf2loc.c (indirect_pieced_value): Comment byte_offset. Use also
147 * ada-lang.c (ada_exception_breakpoint_ops): Make return type
149 (ada_exception_sal): Make 'ops' const.
150 (ada_decode_exception_location): Likewise.
151 (ada_decode_assert_location): Likewise.
152 (catch_assert_command): Update.
153 (catch_ada_exception_command): Update.
154 (create_ada_exception_catchpoint): Make 'ops' const.
155 * breakpoint.c (set_raw_breakpoint_without_location)
156 (set_raw_breakpoint, momentary_breakpoint_from_master): Make 'ops'
158 (create_internal_breakpoint): Update.
159 (init_raw_breakpoint_without_location): Make 'ops' const.
160 (init_raw_breakpoint, init_catchpoint)
161 (create_fork_vfork_event_catchpoint)
162 (create_syscall_event_catchpoint, init_breakpoint_sal)
163 (create_breakpoint_sal, create_breakpoints_sal)
164 (create_breakpoint, init_ada_exception_breakpoint): Likewise.
165 * breakpoint.h (struct breakpoint) <ops>: Now const.
166 (init_ada_exception_breakpoint, create_breakpoint): Make 'ops'
171 * linux-thread-db.c (thread_from_lwp): Initialize th.th_unique.
175 * breakpoint.h (print_recreate_thread): Declare.
176 (struct breakpoint): Move step_count, pass_count,
177 number_on_target, static_trace_marker_id,
178 static_trace_marker_id_idx ...
179 (struct tracepoint): ... to this new struct.
180 (get_tracepoint, get_tracepoint_by_number_on_target)
181 (get_tracepoint_by_number): Change return type to struct
183 * breakpoint.c (is_tracepoint_type): New, factored out from
185 (is_tracepoint): Adjust.
186 (print_one_breakpoint_location): Cast to struct tracepoint as
187 necessary, and adjust.
188 (print_recreate_catch_fork, print_recreate_catch_vfork)
189 (print_recreate_catch_syscall, print_recreate_catch_exec): Call
190 print_recreate_thread.
191 (init_breakpoint_sal): New, factored out from
192 create_breakpoint_sal.
193 (create_breakpoint_sal): Reimplement.
194 (create_breakpoint): Allocate a struct tracecepoint if the caller
195 wanted a tracepoint. Use init_breakpoint_sal and
197 (print_recreate_ranged_breakpoint, print_recreate_watchpoint)
198 (print_recreate_masked_watchpoint)
199 (print_recreate_exception_catchpoint): Call print_recreate_thread.
200 (tracepoint_print_one_detail): Adjust.
201 (tracepoint_print_recreate): Adjust. Call print_recreate_thread.
202 Dump the pass count here.
203 (update_static_tracepoint): Adjust.
204 (addr_string_to_sals): Adjust.
205 (create_tracepoint_from_upload): Adjust. Change return type to
206 struct tracepoint pointer.
207 (trace_pass_set_count): Change parameter type to struct tracepoint
209 (trace_pass_command): Adjust.
210 (get_tracepoint, get_tracepoint_by_number_on_target)
211 (get_tracepoint_by_number): Change return type to struct
212 tracepoint pointer, and adjust.
213 (print_recreate_thread): New, factored out from save_breakpoints.
214 (save_breakpoints): Don't print thread and task and passcount
216 * remote.c (remote_download_tracepoint): Adjust.
217 * tracepoint.c (trace_actions_command, validate_actionline)
218 (start_tracing, tfind_1, trace_find_tracepoint_command)
219 (trace_dump_command): Adjust.
220 (find_matching_tracepoint): Change return type to struct
221 tracepoint pointer, and adjust.
222 (merge_uploaded_tracepoints, tfile_get_traceframe_address)
223 (tfile_trace_find, tfile_fetch_registers): Adjust.
224 * tracepoint.h (create_tracepoint_from_upload): Change return type
225 to struct tracepoint pointer.
226 * ada-lang.c (print_recreate_exception): Call
227 print_recreate_thread.
228 * mi/mi-cmd-break.c (mi_cmd_break_passcount): Adjust.
232 * breakpoint.h (struct breakpoint): Move ops as first field. Move
233 exp_string, exp_string_reparse, exp, exp_valid_block, cond_exp,
234 cond_exp_valid_block, val, val_valid, watchpoint_frame,
235 watchpoint_thread, watchpoint_triggered ...
236 (struct watchpoint): ... to this new struct.
237 (is_watchpoint): Declare.
238 (install_breakpoint): Add new `internal' parameter.
239 * breakpoint.c (is_watchpoint): Delete declaration.
240 (set_breakpoint_condition): Handle watchpoints.
241 (is_watchpoint): Make public.
242 (watchpoint_in_thread_scope): Change parameter type to struct
244 (watchpoint_del_at_next_stop): Change parameter type to struct
245 watchpoint. Remove assertion. Adjust.
246 (update_watchpoint): Ditto.
247 (insert_breakpoints, breakpoint_init_inferior)
248 (watchpoints_triggered, watchpoint_check)
249 (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions)
250 (bpstat_stop_status, print_one_breakpoint_location)
251 (print_one_breakpoint_location, watchpoint_locations_match): Cast
252 to struct watchpoint as necessary, and adjust.
253 (install_breakpoint): Add `internal' argument. If true, don't
254 mention the new breakpoint. Use set_breakpoint_number.
255 (create_fork_vfork_event_catchpoint)
256 (create_syscall_event_catchpoint): Adjust.
257 (dtor_watchpoint): New.
258 (re_set_watchpoint, insert_watchpoint, remove_watchpoint)
259 (breakpoint_hit_watchpoint, resources_needed_watchpoint)
260 (print_it_watchpoint, print_mention_watchpoint)
261 (print_recreate_watchpoint, insert_masked_watchpoint)
262 (remove_masked_watchpoint, resources_needed_masked_watchpoint)
263 (print_one_detail_masked_watchpoint)
264 (print_mention_masked_watchpoint)
265 (print_recreate_masked_watchpoint): Cast to struct watchpoint as
266 necessary, and adjust.
267 (watch_command_1): Allocate and initialize a struct watchpoint
268 instead of a struct breakpoint. Use install_breakpoint.
269 (catch_exec_command_1): Adjust.
270 (base_breakpoint_dtor): Delete accesses to watchpoint specific
272 (delete_breakpoint, enable_breakpoint_disp)
273 (invalidate_bp_value_on_memory_change): Cast to struct watchpoint
274 as necessary, and adjust.
275 (initialize_breakpoint_ops): Install dtor_watchpoint as
276 watchpoints' dtor method.
277 * ada-lang.c (create_ada_exception_catchpoint): Adjust.
278 * python/py-breakpoint.c (bppy_get_expression): Use is_watchpoint.
279 to struct watchpoint as necessary, and adjust.
283 * ada-lang.c (dtor_exception, re_set_exception): Indirect through
284 the the base class ops table.
285 (catch_exception_breakpoint_ops)
286 (catch_exception_unhandled_breakpoint_ops)
287 (catch_assert_breakpoint_ops): Don't statically initialize.
288 (initialize_ada_catchpoint_ops): New.
289 (_initialize_ada_language): Call it.
290 * breakpoint.c (base_breakpoint_ops, bkpt_base_breakpoint_ops)
291 (bkpt_breakpoint_ops): Forward declare.
292 (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops)
293 (catch_syscall_breakpoint_ops, catch_exec_breakpoint_ops)
294 (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
295 (masked_watchpoint_breakpoint_ops)
296 (gnu_v3_exception_catchpoint_ops): Don't statically initialize.
297 (dtor_catch_syscall, dtor_catch_exec): Indirect through the the
298 base class ops table.
299 (null_re_set, null_check_status, null_works_in_software_mode)
300 (null_resources_needed, null_print_one_detail): Delete.
301 (bkpt_dtor): Rename to ...
302 (base_breakpoint_dtor): ... this. Make static.
303 (bkpt_allocate_location): Rename to ...
304 (base_breakpoint_allocate_location): ... this. Make static.
305 (base_breakpoint_re_set): New.
306 (internal_error_pure_virtual_called): New.
307 (base_breakpoint_insert_location, base_breakpoint_remove_location)
308 (base_breakpoint_breakpoint_hit, base_breakpoint_check_status)
309 (base_breakpoint_works_in_software_mode)
310 (base_breakpoint_resources_needed, base_breakpoint_print_it)
311 (base_breakpoint_print_one_detail, base_breakpoint_print_mention)
312 (base_breakpoint_print_recreate): New functions.
313 (base_breakpoint_ops): New global.
314 (bkpt_re_set, bkpt_insert_location, bkpt_remove_location)
315 (bkpt_breakpoint_hit): Make static.
316 (bkpt_check_status): Delete.
317 (bkpt_resources_needed): Make static.
318 (bkpt_works_in_software_mode): Delete.
319 (bkpt_print_it, bkpt_print_mention, bkpt_print_recreate): Make
321 (bkpt_breakpoint_ops, internal_breakpoint_ops)
322 (momentary_breakpoint_ops): Don't statically initialize.
323 (internal_bkpt_print_recreate, momentary_bkpt_print_recreate):
325 (tracepoint_insert_location, tracepoint_remove_location)
326 (tracepoint_check_status, tracepoint_works_in_software_mode)
327 (tracepoint_print_it): Delete.
328 (tracepoint_breakpoint_ops): Don't statically initialize.
329 (initialize_breakpoint_ops): New.
330 (_initialize_breakpoint): Call it.
331 * breakpoint.h (null_re_set, null_works_in_software_mode)
332 (null_resources_needed, null_check_status, null_print_one_detail):
333 (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
334 (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
335 (bkpt_check_status, bkpt_resources_needed)
336 (bkpt_works_in_software_mode, bkpt_print_it)
337 (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate):
339 (initialize_breakpoint_ops): Declare.
343 * breakpoint.c (bkpt_print_it, internal_bkpt_print_it)
344 (momentary_bkpt_print_it): Simplify.
348 Split internal, momentary and user breakpoints breakpoint_ops
351 * breakpoint.c (internal_breakpoint_ops)
352 (momentary_breakpoint_ops): Forward declare.
353 (create_internal_breakpoint): Add new breakpoint_ops parameter.
354 Pass it down, rather than hardcoding bkpt_breakpoint_ops.
355 (create_overlay_event_breakpoint)
356 (create_std_terminate_master_breakpoint)
357 (create_exception_master_breakpoint): Create breakpoints with
358 internal_breakpoint_ops vtable.
359 (set_longjmp_breakpoint): Create momentary breakpoints with
360 momentary_breakpoint_ops vtable, using
361 momentary_breakpoint_from_master.
362 (create_thread_event_breakpoint, create_jit_event_breakpoint)
363 (create_solib_event_breakpoint): Create breakpoints with
364 internal_breakpoint_ops vtable.
365 (set_momentary_breakpoint): Create breakpoints with
366 momentary_breakpoint_ops vtable.
367 (momentary_breakpoint_from_master): New, factored out from
368 clone_momentary_breakpoint.
369 (clone_momentary_breakpoint): Adjust.
370 (watch_command_1): Create scope breakpoints with
371 momentary_breakpoint_ops vtable.
372 (bkpt_re_set): Remove handling of internal and momentary
374 (bkpt_print_mention, bkpt_print_recreate): New.
375 (bkpt_breakpoint_ops): Adjust.
376 (internal_bkpt_re_set, internal_bkpt_check_status)
377 (internal_bkpt_print_it, internal_bkpt_print_mention)
378 (internal_bkpt_print_recreate, internal_breakpoint_ops): New.
379 (momentary_bkpt_re_set, momentary_bkpt_check_status)
380 (momentary_bkpt_print_it, momentary_bkpt_print_mention)
381 (momentary_bkpt_print_recreate): New.
382 (momentary_breakpoint_ops): New.
386 Implement most breakpoint_ops methods for all breakpoint types,
387 and move the default handlings to the proper callbacks.
389 * breakpoint.c (update_watchpoint): Always call the breakpoint's
390 works_in_software_mode method.
391 (insert_bp_location): Go through breakpoint_ops->insert_location
392 for software and hardware watchpoints.
393 (create_internal_breakpoint): Pass bkpt_breakpoint_ops as
395 (remove_breakpoint_1): Go through breakpoint_ops->remove_location
396 for software and hardware watchpoints.
397 (print_it_typical): Delete.
398 (print_bp_stop_message): Always call the breakpoint_ops->print_it
400 (watchpoint_check): Adjust comment.
401 (bpstat_check_location): Simply always call the breakpoint's
402 breakpoint_hit method.
403 (bpstat_stop_status): Always call the breakpoint's check_status
404 method. Remove special cases for watchpoints and internal event
405 breakpoints from here (moved to the check_status implementations).
406 (print_one_breakpoint_location): Assume b->ops is never NULL.
407 Remove static tracepoint marker id printing from here (moved to
408 the print_one_detail callback implementation of tracepoints).
409 (init_bp_location): Assert OPS is never NULL.
410 (allocate_bp_location): Always call the breakpoint's
411 allocate_location method, and remove the default code from here.
412 (free_bp_location): Always call the location's dtor method, and
413 remove the default code from here.
414 (init_raw_breakpoint_without_location): Assert OPS is never NULL.
415 (set_raw_breakpoint_without_location): Add new breakpoint_ops
416 parameter. Pass it down.
417 (set_raw_breakpoint): Ditto.
418 (print_it_catch_fork): Adjust to take a bpstat as argument.
419 (catch_fork_breakpoint_ops): Install methods.
420 (print_it_catch_vfork): Adjust to take a bpstat as argument.
421 (catch_vfork_breakpoint_ops): Install methods.
422 (dtor_catch_syscall): Call the base dtor.
423 (print_it_catch_syscall): Adjust to take a bpstat as argument.
424 (catch_syscall_breakpoint_ops): Install methods.
425 (dtor_catch_exec): Call the base dtor.
426 (print_it_catch_exec): Adjust to take a bpstat as argument.
427 (catch_exec_breakpoint_ops): Install methods.
428 (hw_breakpoint_used_count, hw_watchpoint_used_count): Always call
429 the breakpoint's resources_needed method, and remove the default
431 (set_momentary_breakpoint): Pass bkpt_breakpoint_ops as
433 (clone_momentary_breakpoint): Clone the original's ops.
434 (mention): Always call the breakpoint's print_mention method, and
435 remove the default code from here.
436 (create_breakpoint_sal): Adjust to pass the ops to
437 set_raw_breakpoint rather than setting it manually.
438 (create_breakpoint): Assert ops is never NULL. Adjust to pass the
439 ops to set_raw_breakpoint_without_location rather than setting it
441 (break_command_1): Pass bkpt_breakpoint_ops as breakpoint_ops.
442 (print_it_ranged_breakpoint): Adjust to take a bpstat as argument.
443 (ranged_breakpoint_ops): Install methods.
444 (break_range_command): Adjust to pass the ops to
445 set_raw_breakpoint rather than setting it manually.
446 (re_set_watchpoint, breakpoint_hit_watchpoint)
447 (check_status_watchpoint, resources_needed_watchpoint)
448 (works_in_software_mode_watchpoint, print_it_watchpoint)
449 (print_mention_watchpoint, print_recreate_watchpoint): New
451 (watchpoint_breakpoint_ops): Install new methods.
452 (print_it_masked_watchpoint): New function.
453 (masked_watchpoint_breakpoint_ops): Install new methods.
454 (watch_command_1): Adjust to pass the right breakpoint_ops to
455 set_raw_breakpoint_without_location rather than setting it
456 manually later. Record the current pspace.
457 (print_it_exception_catchpoint): Adjust to take a bpstat as
459 (gnu_v3_exception_catchpoint_ops): Install new methods.
460 (say_where): New function.
461 (null_re_set, null_check_status, null_works_in_software_mode)
462 (null_resources_needed, null_print_one_detail, bp_location_dtor):
464 (bp_location_ops): New global.
465 (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
466 (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
467 (bkpt_check_status, bkpt_resources_needed)
468 (bkpt_works_in_software_mode, bkpt_print_it, bkpt_print_mention)
469 (bkpt_print_recreate): New functions.
470 (bkpt_breakpoint_ops): New global.
471 (tracepoint_re_set, tracepoint_insert_location)
472 (tracepoint_remove_location, tracepoint_breakpoint_hit)
473 (tracepoint_check_status, tracepoint_works_in_software_mode)
474 (tracepoint_print_it, tracepoint_print_one_detail)
475 (tracepoint_print_mention, tracepoint_print_recreate): New
477 (tracepoint_breakpoint_ops): New global.
478 (delete_breakpoint): Always call the breakpoint's dtor method, and
479 remove the default handling from here.
480 (breakpoint_re_set_default): Make static.
481 (breakpoint_re_set_one): Always call the breakpoints re_set
482 method, and remove the default handling from here.
483 (trace_command, ftrace_command, strace_command)
484 (create_tracepoint_from_upload): Pass appropriate breakpoints_ops
485 to create_breakpoint.
486 (save_breakpoints): Always call the breakpoint's print_recreate
487 method, and remove the default handling from here.
489 * ada-lang.c (dtor_exception): Call the base dtor.
490 (re_set_exception): Call the base method.
491 (print_it_exception, print_it_catch_exception): Adjust to take a
493 (catch_exception_breakpoint_ops): Install methods.
494 (print_it_catch_exception_unhandled): Adjust to take a bpstat as
496 (catch_exception_unhandled_breakpoint_ops): Install methods.
497 (print_it_catch_assert): Adjust to take a bpstat as argument.
498 (catch_assert_breakpoint_ops): Install methods.
500 * breakpoint.h (struct breakpoint_ops): Adjust the print_it method
501 to take a bpstat as argument.
502 (enum print_stop_action): Add describing comments to each enum
504 (breakpoint_re_set_default): Delete declaration.
505 (null_re_set, null_works_in_software_mode, null_resources_needed)
506 (null_check_status, null_print_one_detail): Declare.
507 (bkpt_breakpoint_ops): Declare.
508 (bkpt_dtor, bkpt_allocate_location, bkpt_re_set)
509 (bkpt_insert_location, bkpt_remove_location, bkpt_breakpoint_hit)
510 (bkpt_check_status, bkpt_resources_needed)
511 (bkpt_works_in_software_mode, bkpt_print_it)
512 (null_print_one_detail, bkpt_print_mention, bkpt_print_recreate):
515 * mi/mi-cmd-break.c (mi_cmd_break_insert): Adjust to pass
517 * python/py-breakpoint.c (bppy_init): Ditto.
521 * MAINTAINERS (Write After Approval): Add myself to the list.
525 * elfread.c (elf_rel_plt_read): Fix off-by-one bug.
529 * i386-nat.c (I386_DR_VACANT, I386_DR_LOCAL_ENABLE)
530 (I386_DR_GLOBAL_ENABLE, I386_DR_DISABLE, I386_DR_SET_RW_LEN)
531 (I386_DR_GET_RW_LEN, I386_DR_WATCH_HIT): Add state parameter and
533 (dr_mirror, dr_status_mirror, dr_control_mirror): Delete.
534 (struct i386_debug_reg_state): New.
535 (i386_init_dregs): New.
537 (i386_cleanup_dregs): Use i386_init_dregs.
538 (i386_show_dr): Add state parameter and adjust.
539 (i386_insert_aligned_watchpoint): Ditto. Don't pass the info to
541 (i386_remove_aligned_watchpoint): Likewise.
542 (i386_handle_nonaligned_watchpoint): Add state parameter and adjust.
543 (i386_update_inferior_debug_regs): New.
544 (i386_insert_watchpoint): Work on a local mirror of the debug
545 registers, and only update the inferior on success.
546 (i386_remove_watchpoint): Ditto.
547 (i386_region_ok_for_watchpoint): Adjust.
548 (i386_stopped_data_address): Adjust.
549 (i386_insert_hw_breakpoint): Adjust.
550 (i386_remove_hw_breakpoint): Adjust.
554 * amd64-tdep.c (amd64_pseudo_register_read_value): Rename
555 from amd64_pseudo_register_read. Change arguments. Call
556 mark_value_bytes_unavailable when needed.
557 (amd64_init_abi): Use set_gdbarch_pseudo_register_read_value, not
558 set_gdbarch_pseudo_register_read.
559 * sentinel-frame.c (sentinel_frame_prev_register): Use
560 regcache_cooked_read_value.
561 * regcache.h (regcache_cooked_read_value): Declare.
562 * regcache.c (regcache_cooked_read_value): New function.
563 (regcache_cooked_read): Call
564 gdbarch_pseudo_register_read_value if available.
565 * i386-tdep.h (i386_pseudo_register_read_value): Declare.
566 (i386_pseudo_register_read): Remove.
567 * i386-tdep.c (i386_pseudo_register_read_into_value): Rename from
568 i386_pseudo_register_read. Change arguments. Call
569 mark_value_bytes_unavailable when needed.
570 (i386_pseudo_register_read_value): New function.
571 (i386_gdbarch_init): Call set_gdbarch_pseudo_register_read_value,
572 not set_gdbarch_pseudo_register_read.
573 * gdbarch.sh (pseudo_register_read_value): New method.
574 * gdbarch.c, gdbarch.h: Rebuild.
575 * findvar.c (value_from_register): Call get_frame_register_value.
579 * event-top.c (cli_command_loop): Use get_prompt, get_suffix,
581 (display_gdb_prompt): Likewise.
582 (change_annotation_level): Likewise.
583 (push_prompt): Likewise.
584 (pop_prompt): Likewise.
585 (handle_stop_sig): Use get_prompt with a level.
586 * top.c (command_loop): Use get_prompt with a level.
587 (set_async_annotation_level): Use set_prompt with a level.
588 (get_prefix): New function.
592 (get_prompt): Accept a level argument.
593 (set_prompt): Accept a level argument. Free old prompts. Set
594 new_async_prompt if level is 0.
595 (init_main): Use set_prompt with a level. Do not set
597 * event-top.h (PROMPT, SUFFIX, PREFIX): Move to top.c
598 * top.h: Declare set_suffix, get_suffix, set_prefix, get_prefix.
599 Modify set_prompt, get_prompt to account for levels.
600 * tui/tui-interp.c (tui_command_loop): Use get_prompt with a
602 * python/python.c (before_prompt_hook): Use set_prompt.
606 * defs.h: Add guard against inclusion in gdbserver.
607 (struct ptid, ptid_t): Move to common/ptid.h.
608 (xfree, xzalloc, xasprintf, xvasprintf, xstrprintf, xstrvprintf,
609 xsnprintf, internal_error): Move to common/common-utils.h.
611 * gdb_assert.h: Move into common/ sub-directory.
612 * gdb_locale.h: Ditto.
613 * gdb_dirent.h: Ditto.
614 * inferior.h (minus_one_ptid, null_ptid, ptid_build, pid_to_ptid,
615 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal, ptid_is_pid):
616 Move into common/ptid.h.
617 * xml-support.c (xml_escape_text): Move into common/xml-utils.c.
618 (gdb_xml_create_parser_and_cleanup_1, xml_fetch_context_from_file):
619 Change nomem to malloc_failure.
620 * xml-support.h (xml_escape_text): Move into common/xml-utils.h.
621 * utils.c (nomem): Rename to malloc_failure.
622 (xmalloc, xzalloc, xrealloc, xcalloc, xfree, xstrprintf, xasprintf,
623 xvasprintf, xstrvprintf, xsnprintf): Move to common/common-utils.c.
624 (gdb_buildargv): Change nomem to malloc_failure.
625 * infrun.c (null_ptid, minus_one_ptid, ptid_build, pid_to_ptid,
626 ptid_get_pid, ptid_get_lwp, ptid_get_tid, ptid_equal,
627 ptid_is_pid): Move into common/ptid.c.
628 (initialize_infrun): Delete initialization of null_ptid and
630 * linux-nat.c (linux_nat_xfer_osdata): Defer to
631 linux_common_xfer_osdata.
632 * Makefile.in (SFILES): Add common/common-utils.c, common/xml-utils.c,
633 common/ptid.c and common/buffer.c.
634 (HFILES_NO_SRCDIR): Add common/common-utils.h, common/xml-utils.h,
635 common/ptid.h, common/buffer.h and common/linux-osdata.h.
636 (COMMON_OBS): Add xml-utils.o, common-utils.o, buffer.o and ptid.o.
637 (common-utils.o, xml-utils.o, ptid.o, buffer.o, linux-osdata.o): New
639 * common/gdb_assert.h: New.
640 * common/gdb_dirent.h: New.
641 * common/gdb_locale.h: New.
642 * common/buffer.c: New.
643 * common/buffer.h: New.
644 * common/ptid.c: New.
645 * common/ptid.h: New.
646 * common/xml-utils.c: New.
647 * common/xml-utils.h: New.
648 * common/common-utils.c: New.
649 * common/common-utils.h: New.
650 * common/linux-osdata.c: New.
651 * common/linux-osdata.h: New.
652 * config/alpha/alpha-linux.mh (NATDEPFILES): Add linux-osdata.o.
653 * config/arm/linux.mh (NATDEPFILES): Ditto.
654 * config/i386/linux.mh (NATDEPFILES): Ditto.
655 * config/i386/linux64.mh (NATDEPFILES): Ditto.
656 * config/ia64/linux.mh (NATDEPFILES): Ditto.
657 * config/m32r/linux.mh (NATDEPFILES): Ditto.
658 * config/m68k/linux.mh (NATDEPFILES): Ditto.
659 * config/mips/linux.mh (NATDEPFILES): Ditto.
660 * config/pa/linux.mh (NATDEPFILES): Ditto.
661 * config/powerpc/linux.mh (NATDEPFILES): Ditto.
662 * config/powerpc/ppc64-linux.mh (NATDEPFILES): Ditto.
663 * config/s390/s390.mh (NATDEPFILES): Ditto.
664 * config/sparc/linux.mh (NATDEPFILES): Ditto.
665 * config/sparc/linux64.mh (NATDEPFILES): Ditto.
666 * config/xtensa/linux.mh (NATDEPFILES): Ditto.
670 * NEWS: Add info macros and info definitions commands.
674 * NEWS: Document Python prompt substitution hook.
679 * macrotab.h (macro_callback_fn): Add new arguments to callback.
680 * macrotab.c (foreach_macro): Ditto.
681 (foreach_macro_in_scope): Ditto.
682 * macrocmd.c (print_macro_callback): New function.
683 (info_macro_command): Move some code to print_macro_definition.
684 (print_macro_definition): New function.
685 (print_one_macro): Add new arguments to callback.
686 (info_definitions_command): New function.
687 (info_macros_command): Ditto.
688 (_initialize_macrocmd): Add info macros and info definitions commands.
689 * symtab.c (add_macro_name): Add new arguments to callback.
694 * top.c (set_prompt): Rewrite to free previous prompt, free
695 asynch_new_prompt and set both on new prompts.
696 * event-top.c (display_gdb_prompt): Add prompt substitution
698 * python/python.c (before_prompt_hook): New function.
702 * bfin-tdep.c (bfin_extract_return_value): Fix swapped
703 arguments to store_unsigned_integer.
707 * dwarf2read.c (process_enumeration_scope): Do not call new_symbol
708 in some declaration-only cases.
713 * dwarf2read.c (dwarf2_section_info_def): New typedef.
714 (struct dwarf2_per_objfile) <types>: Change to a VEC.
715 (struct dwarf2_per_cu_data) <from_debug_types>: Remove.
716 <debug_type_section>: New field.
717 (dwarf2_locate_sections): Push .debug_types sections onto VEC.
718 (load_cu): Use appropriate section.
719 (create_signatured_type_table_from_index): Add 'section'
721 (dwarf2_read_index): Only allow a single .debug_types section.
722 (dw2_get_file_names): Use appropriate section.
723 (read_type_comp_unit_head): Add 'section' argument.
724 (create_debug_types_hash_table): Loop over all .debug_types
726 (init_cu_die_reader): Use appropriate section.
727 (process_psymtab_comp_unit, load_partial_comp_unit)
728 (load_full_comp_unit, read_die_and_children, find_partial_die)
729 (lookup_die_type, determine_prefix, follow_die_offset): Update.
730 (lookup_signatured_type_at_offset): Add 'section' argument.
731 (read_signatured_type_at_offset): Add 'sect' argument.
732 (read_signatured_type): Use appropriate section.
733 (set_die_type, get_die_type_at_offset): Update.
734 (dwarf2_per_objfile_free): Free all .debug_types sections, and
736 (write_psymtabs_to_index): Don't allow index with more than one
737 .debug_types section.
741 Fix crash if referenced CU is aged out.
742 * dwarf2loc.c (per_cu_dwarf_call): New variable back_to, use to for
744 (indirect_pieced_value): New variable back_to, use to for xfree of
746 (dwarf2_compile_expr_to_ax): New variable back_to, use to for xfree of
748 * dwarf2read.c (dwarf2_find_base_address): New prototype.
749 (load_cu): New function from ...
750 (dw2_do_instantiate_symtab): ... the code here ...
751 (process_full_comp_unit): ... and here.
752 (dwarf2_fetch_die_location_block): Call load_cu first. Call xmemdup on
757 * dwarf2loc.c (indirect_pieced_value): Use check_typedef for VALUE's
762 * infrun.c (struct execution_control_state): New member
764 (clear_stop_func, fill_in_stop_func): New functions.
765 (handle_inferior_event): Call clear_stop_func rather than
766 manipulating the execution control state directly.
767 Call fill_in_stop_func lazily as required rather than
768 directly calling find_pc_partial_function in all cases.
772 * dwarf2read.c (read_subrange_type): Use attr_form_is_block when
773 checking for variable-sized array.
777 * varobj.h (varobj_languages): Add vlang_ada definition to the list
778 of supported languages.
779 * varobj.c: Add top definitions and basic implementation of the
780 following callbacks: ada_number_of_children, ada_name_of_variable,
781 ada_name_of_child, ada_path_expr_of_child, ada_value_of_root,
782 ada_value_of_child, ada_type_of_child, ada_value_of_variable.
783 (languages): Register Ada-specific callbacks.
784 (variable_language): Add the Ada case in the language setter switch.
788 * remote-mips.c (pmon_download): Fix ignored return value GCC warning.
793 * dwarf2-frame.c (dwarf2_frame_ctx_funcs): New.
794 (execute_stack_op): Use dwarf2_frame_ctx_funcs
795 * dwarf2expr.c (dwarf_get_base_type): Access get_base_type via funcs.
796 (execute_stack_op): Access read_reg, get_frame_base, read_mem,
797 get_frame_cfa, get_tls_address and dwarf_call via funcs.
798 * dwarf2expr.h (struct dwarf_expr_context): New forward declaration.
799 (struct dwarf_expr_context_funcs): New, move here methods from ...
800 (struct dwarf_expr_context): ... here. New fields funcs.
801 * dwarf2loc.c (dwarf_expr_dwarf_call): Access get_frame_pc via funcs.
802 (dwarf_expr_ctx_funcs): New.
803 (dwarf2_evaluate_loc_desc_full): Use dwarf_expr_ctx_funcs.
804 (needs_frame_dwarf_call): Access get_frame_pc via funcs.
805 (needs_frame_ctx_funcs): New.
806 (dwarf2_loc_desc_needs_frame): Use needs_frame_ctx_funcs.
810 * MAINTAINERS (Write After Approval): Add myself to the list.
814 * dwarf2-frame.c (decode_frame_entry, decode_frame_entry_1): Ensure
815 that CIE pointer of an FDE really points to a CIE .
819 * remote.c (remote_get_trace_status): Add comments.
823 Code cleanup - constify struct lval_funcs.
824 * dwarf2loc.c (pieced_value_funcs): Make it const.
825 * infrun.c (siginfo_value_funcs): Likewise.
826 * opencl-lang.c (opencl_value_funcs): Likewise.
827 * valops.c (value_assign, value_ind): Make the funcs variable const.
828 * value.c (struct value): Make location.computed.funcs target const.
829 Rearrange the comments.
830 (allocate_computed_value): Make the funcs parameter target const.
831 (value_computed_funcs): Return the funcs target const.
832 (value_free, value_copy, set_value_component_location): Make the funcs
834 * value.h (allocate_computed_value): Make the funcs parameter target
836 (value_computed_funcs): Return the funcs target const.
837 * windows-tdep.c (tlb_value_funcs): Make it const.
841 * remote.c (remote_get_trace_status): Initialize p.
846 * remote.c (remote_get_trace_status): New variable ex. Put
847 remote_get_noisy_reply into TRY_CATCH. Call exception_fprintf for it.
851 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_regval_type>: Use
852 value_from_contents for final conversion.
857 * dwarf2loc.c (dwarf_expr_frame_base_1, dwarf2_evaluate_loc_desc_full):
858 Indent prototypes so they do not get into tags.
862 Code cleanup making also optimized out values lazy.
863 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use
864 allocate_optimized_out_value. Twice.
865 (loclist_read_variable) Use allocate_optimized_out_value. Once.
866 * findvar.c (read_var_value): Likewise.
867 * value.c (allocate_optimized_out_value): New function.
868 * value.h (allocate_optimized_out_value): New declaration.
872 Fix occasional crash of CTRL-C during DWARF read in.
873 * dwarf2read.c (dwarf2_mark_helper): Return on NULL CU.
877 * regcache.c (struct regcache_descr): Fix typo.
878 * i387-tdep.c (i387_supply_xsave): Fix typo.
882 * dwarf2read.c (handle_DW_AT_stmt_list): New function.
883 (read_file_scope, read_type_unit_scope): Use it.
887 * dwarf2expr.c (read_sleb128): Fix signed extension overflowing host
893 * python/python.c: Set gdbpy_should_print_stack default to off.
894 (set_python): Deprecate maint set python print-stack to
896 (_initialize_python): Deprecate maint set/show python print-stack.
897 Add new prefix command, python. Add new setting, print-backtrace.
898 * NEWS: Document set python print-stack. Document default change.
902 * python/py-inferior.c (infpy_dealloc): New function.
903 (inferior_to_inferior_object): Return a new object, or a
904 new reference to the existing object.
905 (find_thread_object): Cleanup references to inferior.
906 (delete_thread_object): Ditto.
907 * python/py-infthread.c (create_thread_object): Do not increment
908 inferior reference count.
912 * dwarf2loc.c (locexpr_regname): New function.
913 (locexpr_describe_location_piece): Use it.
914 (disassemble_dwarf_expression): Add per_cu argument. Use
916 <DW_OP_GNU_deref_type, DW_OP_GNU_const_type,
917 DW_OP_GNU_regval_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret>:
919 (locexpr_describe_location_1): Add per_cu argument.
920 (locexpr_describe_location): Update.
921 (loclist_describe_location): Update.
925 * dwarf2expr.c (execute_stack_op): Add QUIT.
931 * remote.c (remote_start_remote): Add TRY_CATCH for
932 remote_get_trace_status.
933 * tracepoint.c (disconnect_tracing): Ditto.
937 * cli/cli-setshow.c (do_setshow_command): Display var_zinteger
938 variables as signed, not unsigned.
942 * jit.c (jit_inferior_init): Reformat forward declaration.
946 * MAINTAINERS (Write After Approval): Add myself to the list.
950 * remote.c (remote_start_remote): Add TRY_CATCH for
951 remote_get_trace_status.
952 * tracepoint.c (disconnect_tracing): Ditto.
956 * symtab.c (operator_chars): Now static.
957 * linespec.c (operator_chars): Don't declare.
961 * ui-out.h (ui_out_field_core_addr): Fix typo in comment.
965 * gnu-v3-abi.c (gnuv3_rtti_type): Check TYPE_CPLUS_REALLY_JAVA.
966 * gdbtypes.h (struct cplus_struct_type) <is_java>: New field.
967 (TYPE_CPLUS_REALLY_JAVA): New macro.
968 * dwarf2read.c (process_structure_scope): Set
969 TYPE_CPLUS_REALLY_JAVA.
973 * ada-lang.c: Fix typos.
974 * amd64-tdep.c: Likewise.
975 * breakpoint.c: Likewise.
976 * cli/cli-decode.c: Likewise.
977 * findcmd.c: Likewise.
978 * inline-frame.c: Likewise.
979 * mi/mi-main.c: Likewise.
980 * minsyms.c: Likewise.
981 * monitor.c: Likewise.
982 * monitor.h: Likewise.
983 * prologue-value.c: Likewise.
984 * reverse.c: Likewise.
985 * s390-tdep.c: Likewise.
989 * jit.c (jit_inferior_init): Forward declare.
990 (jit_breakpoint_re_set_internal): Call jit_inferior_init.
994 * osabi.c (generic_elf_osabi_sniffer): Minor comment reformatting.
998 * ada-tasks.c (KNOWN_TASKS_LIST): New macro.
999 (tcb_fieldno): Add activation_link field.
1000 (get_known_tasks_addr): Moved and rewritten.
1001 (get_tcb_types_info): Set activation_link field.
1002 (read_known_tasks_array): Add parameter. Rewritten.
1003 (read_known_tasks_list): New function.
1004 (read_known_tasks): New function.
1005 (ada_build_task_list): Call read_known_tasks instead of
1006 read_known_tasks_array.
1007 * ravenscar-thread.c: Add first_task_name constant.
1008 (has_ravenscar_runtime): Check for task list too.
1012 * ada-tasks.c: Renames fieldno to actb_fieldno.
1013 (ada_get_task_number): Indentation.
1014 (get_tcb_types_info): Remove all parameters. Write directly
1016 (ptid_from_atcb_common): Adjust.
1017 (read_atcb): Adjust.
1021 * symtab.c (in_prologue): Remove mention of ppc's refine_prologue_limit.
1025 * ui-out.c (ui_out_field_core_addr): Mention that the function
1026 description is in the header file.
1027 * ui-out.h (ui_out_field_core_addr): Document function.
1031 * ui-out.c (ui_out_get_field_separator): Remove unused function.
1032 * ui-out.h (ui_out_get_field_separator): Remove prototype.
1036 * symtab.c (expand_line_sal): Remove empty line.
1040 * osabi.c (generic_elf_osabi_sniffer) <ELFOSABI_GNU>: Handle in the
1041 same way as ELFOSABI_NONE.
1042 <ELFOSABI_LINUX, ELFOSABI_HURD>: Remove cases.
1046 * breakpoint.c: Fix typos in comments.
1047 * linespec.c: Likewise.
1048 * symtab.c: Likewise.
1052 * dwarf2-frame.c (dwarf2_build_frame_info): Do not load .eh_frame
1053 section in separate object files.
1057 Fix false GCC warning.
1058 * linespec.c (decode_line_1): Initialize values.
1062 * linespec.c (find_method): Accept the function type automatically only
1063 if it was specified with parameter types.
1067 Stop on first linespec terminator instead of eating what we can.
1068 * linespec.c (is_linespec_boundary): New function.
1069 (name_end): Remove function.
1070 (keep_name_info): New parameter on_boundary, replace the body.
1071 (decode_line_1): Provide the parameter to keep_name_info.
1072 (decode_compound): Likewise. Drop the trailing java return type
1077 Fall back linespec to minimal symbols.
1078 * linespec.c (decode_line_1): New variable ex, saved_argptr. Protect
1079 decode_compound by TRY_CATCH, fall back on minsyms if it failed.
1080 (find_method, symbol_found): Change error to cplusplus_error.
1084 * symtab.c (symbol_find_demangled_name): Remove DMGL_VERBOSE.
1089 * dwarf2read.c (check_physname): New variable.
1090 (dwarf2_physname): Prefer DW_AT_linkage_name over dwarf2_compute_name.
1091 (show_check_physname): New function.
1092 (_initialize_dwarf2_read): Add `check-physname' for check_physname.
1096 * machoread.c (macho_symfile_read): Delete OBE comment.
1100 * machoread.c (struct macho_oso_data): Delete.
1101 (current_oso): Delete.
1102 (macho_relocate_common_syms): New function, mostly extracted
1104 (macho_add_oso_symfile): Call macho_relocate_common_syms.
1105 Remove code that sets and unset current_oso.
1106 (macho_symfile_relocate): Delete handling of common symbols,
1107 now moved to macho_relocate_common_syms.
1111 * darwin-nat.c (darwin_ptrace): Add documentation.
1112 Set errno to zero before calling ptrace. If ptrace returns
1113 -1 and errno is zero, then change then return zero.
1114 (darwin_kill_inferior): Issue a warning instead of triggering
1115 a failed assertion when the PT_KILL ptrace operations returned
1120 * darwin-nat.c (darwin_detach): Call darwin_resume_inferior
1121 only when inf->private->no_ptrace.
1125 * ada-lang.c (print_it_exception): Print temporary catchpoints
1126 as "Temporary catchpoint".
1127 (print_mention_exception): Likewise.
1131 * jv-lang.c (java_language_defn): Use java_printchar,
1133 (java_get_encoding): New function.
1134 (java_emit_char): Use generic_emit_char.
1135 (java_printchar): New function.
1136 (java_printstr): Likewise.
1140 * ada-typeprint.c (print_record_type): If unable to decode
1141 the name of the parent type, use the encoded name.
1145 * ada-typeprint.c (ada_print_type): Fix both PAD type and
1146 pointer to constrained packed array type output.
1147 * ada-valprint.c (ada_val_print_1): Fix pointer to constrained
1148 packed array output.
1152 * ada-typeprint.c (print_array_type): removed if condition on show
1153 being negative for bounds printing.
1157 * ada-lang.c (ada_identical_enum_types_p): New function.
1158 (symbols_are_identical_enums): New function.
1159 (remove_extra_symbols): Do nothing if NSYMS < 2.
1160 Use symbols_are_identical_enums.
1164 * ada-valprint.c (ada_value_print): Handle typedefs.
1168 * ada-lang.c (ada_evaluate_subexp): Add missing word in comment.
1172 * ada-lang.c (thin_descriptor_type): Deal with typedefs.
1173 (decode_constrained_packed_array): Likewise.
1174 (ada_evaluate_subexp) <TERNOP_SLICE>: Likewise.
1178 * ada-exp.y (convert_char_literal): Handle typedef types.
1182 * ada-lang.c (ada_remove_trailing_digits): Expand documentation.
1186 * varobj.c (varobj_create): Call do_cleanups on early exit path.
1187 * valops.c (find_overload_match): Call do_cleanups on early exit
1189 * solib.c (solib_find): Call do_cleanups on early exit path.
1193 * symfile-mem.c (symbol_file_add_from_memory): Call do_cleanups.
1194 * solib-svr4.c (open_symbol_file_object): Call do_cleanups on all
1195 return paths. Defer final do_cleanups until last return.
1196 * arm-tdep.c (arm_exidx_new_objfile): Make null cleanup after
1201 * Makefile.in (SUBDIR_MI_CFLAGS): Don't add -DMI_OUT=1.
1205 * MAINTAINERS (Write After Approval): Add myself to the list.
1209 Disable epilogue unwinders on recent GCCs.
1210 * amd64-tdep.c (amd64_in_function_epilogue_p): New variable symtab,
1211 initialize it, return 0 on EPILOGUE_UNWIND_VALID.
1212 * dwarf2read.c (process_full_comp_unit): Initialize
1213 EPILOGUE_UNWIND_VALID.
1214 * i386-tdep.c (i386_in_function_epilogue_p): New variable symtab,
1215 initialize it, return 0 on EPILOGUE_UNWIND_VALID.
1216 * symtab.h (struct symtab): New field epilogue_unwind_valid.
1220 Code cleanup - reformatting.
1221 * dwarf2read.c (producer_is_gcc_ge_4_0): Rename to ...
1222 (producer_is_gcc_ge_4): ... here, change the return value.
1223 (process_full_comp_unit): New variable gcc_4_minor, adjust the value
1228 Fix non-only rename list for Fortran modules import.
1229 * cp-namespace.c (cp_scan_for_anonymous_namespaces): Adjust the
1230 cp_add_using_directive caller.
1231 (cp_add_using_directive): New parameter excludes, describe it. New
1232 variables ix and param. Compare if also excludes match. Allocate NEW
1233 with variable size, initialize EXCLUDES there.
1234 (cp_lookup_symbol_imports): New variable excludep, test
1235 current->EXCLUDES with it.
1236 * cp-support.h: Include vec.h.
1237 (struct using_direct): New field excludes, describe it.
1238 (DEF_VEC_P (const_char_ptr)): New.
1239 (cp_add_using_directive): New parameter excludes.
1240 * defs.h (const_char_ptr): New typedef.
1241 * dwarf2read.c (read_import_statement): New variables child_die,
1242 excludes and cleanups, read in excludes.
1243 (read_namespace): Adjust the cp_add_using_directive caller.
1248 * cp-namespace.c (cp_add_using_directive): Turn positive comparison to
1249 negative comparisons.
1253 * mi/mi-main.c (mi_cmd_list_features): Emit
1254 breakpoint-notifications.
1259 * valprint.h (generic_emit_char, generic_printstr): Declare.
1260 * valprint.c (wchar_printable, append_string_as_wide)
1261 (print_wchar): Move from c-lang.c.
1262 (generic_emit_char): New function; mostly taken from c_emit_char.
1263 (generic_printstr): New function; mostly taken from c_printstr.
1264 * f-valprint.c (f_val_print) <TYPE_CODE_ARRAY>: Handle strings
1265 represented as arrays.
1266 <TYPE_CODE_CHAR>: Treat as TYPE_CODE_INT; recognize as character
1268 * f-typeprint.c (f_type_print_base) <TYPE_CODE_CHAR>: Treat
1269 identically to TYPE_CODE_INT.
1270 * f-lang.c (f_get_encoding): New function.
1271 (f_emit_char): Use generic_emit_char.
1272 (f_printchar): Replace comment.
1273 (f_printstr): Use generic_printstr.
1274 * dwarf2read.c (read_base_type) <DW_ATE_unsigned>: Handle Fortran
1275 "character" types specially.
1276 <DW_ATE_signed_char, DW_ATE_unsigned_char>: Make TYPE_CODE_CHAR
1278 * c-lang.c (wchar_printable, append_string_as_wide, print_wchar):
1280 (c_emit_char): Call generic_emit_char.
1281 (c_printstr): Call generic_printstr.
1285 * breakpoint.c (bpstat_what): Removed duplicated case.
1289 * python/python-internal.h (PY_SSIZE_T_CLEAN): Define.
1293 * valops.c (find_overload_match): Call do_cleanups before early
1295 * top.c (execute_command): Call do_cleanups before early return.
1296 (command_loop): Likewise.
1297 * stack.c (backtrace_command): Make a null cleanup early. Don't
1298 conditionally call do_cleanups.
1299 * python/py-value.c (TRY_CATCH): Move cleanup handling into
1301 * python/py-breakpoint.c (gdbpy_breakpoint_has_py_cond): Rearrange
1302 so cleanups are always run.
1303 * mi/mi-cmd-var.c (mi_cmd_var_delete): Reset old_cleanups.
1304 * findcmd.c (parse_find_args): Call do_cleanups on early return
1306 * dbxread.c (elfstab_build_psymtabs): Make a null cleanup early.
1307 Don't conditionally call do_cleanups.
1308 * cli/cli-script.c (execute_user_command): Initialize 'old_chain'
1313 * MAINTAINERS (Write After Approval): Use default email address.
1317 * MAINTAINERS (Write After Approval): Add Eric Botcazou.
1321 * sparc-tdep.h (struct sparc_frame_cache): Add frame_offset,
1322 saved_regs_mask and copied_regs_mask fields.
1323 (sparc_record_save_insn): New prototype.
1324 * sparc-tdep.c (sparc_alloc_frame_cache): Initialize the new fields.
1325 (sparc_record_save_insn): New function.
1326 (sparc_analyze_prologue): Add head comment. Recognize store insns
1327 of call-saved registers. Use OFFSET consistently. Recognize flat
1328 frames and cache their settings.
1329 (sparc32_skip_prologue): Handle flat frames.
1330 (sparc_frame_cache): Add frame_offset to the base address.
1331 (sparc32_frame_cache): Adjust to new frame description.
1332 (sparc32_frame_prev_register): Likewise.
1333 * sparc64-tdep.c (sparc64_frame_prev_register): Likewise.
1334 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_cache): Likewise.
1335 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_cache): Likewise.
1336 * sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_cache): Force the
1337 frame by calling sparc_record_save_insn.
1338 * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_cache): Likewise.
1339 * sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_cache): Likewise.
1340 * sparc64obsd-tdep.c (sparc64obsd_frame_cache): Likewise.
1344 * dwarf2read.c (struct dwarf2_section_info): Replace was_mmapped
1345 field by map_addr and map_len.
1346 (dwarf2_read_section): Adjust for the new bfd_mmap api.
1347 (munmap_section_buffer): Likewise.
1351 * varobj.c (update_dynamic_varobj_children): Make 'name' const.
1352 * symtab.h (lookup_struct, lookup_union, lookup_enum): Update.
1353 * python/python.c (gdbpy_parameter): Make 'arg' const.
1354 (execute_gdb_command): Likewise.
1355 (gdbpy_decode_line): Likewise. Copy it.
1356 (gdbpy_parse_and_eval): Make 'expr_string' const. Copy it.
1357 (gdbpy_write): Make 'arg' const.
1358 * python/py-type.c (typy_lookup_typename): Make 'type_name'
1360 (gdbpy_lookup_type): Likewise.
1361 * python/py-prettyprint.c (print_children): Make 'name' const.
1362 * python/py-param.c (parmpy_init): Make 'name' const. Copy it.
1363 * python/py-inferior.c (infpy_write_memory): Make 'buf_len' a
1365 * python/py-function.c (fnpy_init): Make 'name' const.
1366 * python/py-cmd.c (cmdpy_init): Make 'name' const. Copy it.
1367 (gdbpy_string_to_argv): Make 'input' const.
1368 * python/py-breakpoint.c (bppy_init): Make 'spec' const. Copy
1370 * gdbtypes.h (lookup_typename): Update.
1371 * gdbtypes.c (lookup_typename): Make 'name' const.
1372 (lookup_struct): Likewise.
1373 (lookup_union): Likewise.
1374 (lookup_enum): Likewise.
1378 * Makefile.in (HFILES_NO_SRCDIR): Add "common/" to
1379 gdb_thread_db.h. Move all common/ entries to be together.
1380 (TAGS): Don't depend on DEPFILES.
1384 * infrun.c (start_remote): Move call init_wait_for_inferior to ...
1385 * remote.c (remote_start_remote): ... here.
1386 * monitor.c (monitor_open): ... here.
1390 * gdbtypes.c (append_composite_type_field_aligned): Fix
1391 calculation of bit position based on alignment.
1395 * breakpoint.c (bpstat_stop_status): Call the check_status
1396 breakpoint_ops method.
1397 (print_one_breakpoint_location): Also print the condition for Ada
1398 exception catchpoints.
1399 (allocate_bp_location): New, factored out from
1400 allocate_bp_location.
1401 (allocate_bp_location): Adjust. Call the owner breakpoint's
1402 allocate_location method, if there is one.
1403 (free_bp_location): Call the locations's dtor method, if there is
1405 (init_raw_breakpoint_without_location): New breakpoint_ops
1407 (set_raw_breakpoint_without_location): Adjust.
1408 (init_raw_breakpoint): New breakpoint_ops parameter. Pass it down.
1409 (set_raw_breakpoint): Adjust.
1410 (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops)
1411 (catch_syscall_breakpoint_ops): Install NULL allocate_location,
1412 re_set and check_status methods.
1413 (init_catchpoint): Don't memset, initialize thread, addr_string
1414 and enable_state. Pass the ops down to init_raw_breakpoint.
1415 (install_catchpoint): Rename to ...
1416 (install_breakpoint): ... this, and make extern.
1417 (create_fork_vfork_event_catchpoint): Adjust.
1418 (catch_exec_breakpoint_ops): Install NULL allocate_location,
1419 re_set and check_status methods.
1420 (create_syscall_event_catchpoint): Adjust.
1421 (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
1422 (masked_watchpoint_breakpoint_ops): Install NULL
1423 allocate_location, re_set and check_status methods.
1424 (catch_exec_command_1): Adjust.
1425 (gnu_v3_exception_catchpoint_ops): Install NULL allocate_location,
1426 re_set and check_status methods.
1427 (create_ada_exception_breakpoint): Rename to ...
1428 (init_ada_exception_breakpoint): ... this. Add a struct
1429 breakpoint parameter, and delete the exp_string, cond_string and
1430 cond parameters. Use init_raw_breakpoint, and don't install or
1431 mention the breakpoint yet. Don't clear breakpoint fields that
1432 init_raw_breakpoint already clears.
1433 (re_set_breakpoint): Delete, split into ...
1434 (breakpoint_re_set_default, prepare_re_set_context): ... these new
1436 (breakpoint_re_set_one): Call the breakpoint's
1437 breakpoint_ops->re_set implementation, if there's one. Adjust.
1438 * breakpoint.h: Forward declare struct bpstats and struct bp_location.
1439 (struct bp_location_ops): New type.
1440 (struct bp_location): New field `ops'.
1441 (struct breakpoint_ops): New `allocate_location', `re_set' and
1442 `check_status' fields. Make `breakpoint_hit''s description match
1444 (init_bp_location): Declare.
1445 (breakpoint_re_set_default): Declare.
1446 (create_ada_exception_breakpoint): Rename to ...
1447 (init_ada_exception_breakpoint): ... this. Add a struct
1448 breakpoint parameter, and delete the exp_string, cond_string and
1450 (install_breakpoint): Declare.
1451 * ada-lang.c: Include exceptions.h.
1452 <Ada exceptions description>: Update.
1453 (struct ada_catchpoint_location): New type.
1454 (ada_catchpoint_location_dtor): New function.
1455 (ada_catchpoint_location_ops): New global.
1456 (ada_catchpoint): New type.
1457 (create_excep_cond_exprs): New function.
1458 (dtor_exception, allocate_location_exception, re_set_exception)
1459 (should_stop_exception, check_status_exception): New functions.
1460 (print_one_exception, print_mention_exception)
1461 (print_recreate_exception): Adjust.
1462 (dtor_catch_exception, allocate_location_catch_exception)
1463 (re_set_catch_exception, check_status_catch_exception): New
1465 (catch_exception_breakpoint_ops): Install them.
1466 (dtor_catch_exception_unhandled)
1467 (allocate_location_catch_exception_unhandled)
1468 (re_set_catch_exception_unhandled)
1469 (check_status_catch_exception_unhandled): New functions.
1470 (catch_exception_unhandled_breakpoint_ops): Install them.
1471 (dtor_catch_assert, allocate_location_catch_assert)
1472 (re_set_catch_assert, check_status_catch_assert): New functions.
1473 (catch_assert_breakpoint_ops): Install them.
1474 (ada_exception_catchpoint_p): Delete.
1475 (catch_ada_exception_command_split)
1476 (ada_exception_catchpoint_cond_string): Rename exp_string
1477 parameter to excep_string. Adjust.
1478 (ada_parse_catchpoint_condition): Delete.
1479 (ada_exception_sal): Rename the exp_string parameter to
1480 excep_string. Delete the cond_string and cond parameters.
1482 (ada_decode_exception_location): Rename the exp_string parameter
1483 to excep_string. Delete the cond_string and cond parameters.
1485 (create_ada_exception_catchpoint): New function.
1486 (catch_ada_exception_command, ada_decode_assert_location)
1487 (catch_assert_command): Adjust.
1488 * ada-lang.h (ada_exception_catchpoint_p): Delete declaration.
1492 * ada-lang.c: Include arch-utils.h.
1493 (ada_decode_exception_location): Make static.
1494 (catch_ada_exception_command): Moved here from breakpoint.c.
1495 (ada_decode_assert_location): Make static.
1496 (catch_assert_command): Moved here from breakpoint.c.
1497 (_initialize_ada_lang): Install the exception and assert
1498 catchpoint commands here.
1499 * ada-lang.h (ada_decode_exception_location)
1500 (ada_decode_assert_location): Delete declarations.
1501 * breakpoint.c (CATCH_PERMANENT, CATCH_TEMPORARY): Moved to
1503 (create_ada_exception_breakpoint): Make extern.
1504 (catch_ada_exception_command, catch_assert_command): Moved to
1506 (add_catch_command): Make extern.
1507 (_initilize_breakpoint): Don't install the exception and assert
1508 catchpoint commands here.
1509 * breakpoint.h (CATCH_PERMANENT, CATCH_TEMPORARY): Moved from
1511 (add_catch_command, create_ada_exception_breakpoint): Declare.
1515 * breakpoint.c (init_raw_breakpoint_without_location): Don't add
1516 the breakpoint to the breakpoint chain here.
1517 (set_raw_breakpoint_without_location): Add the breakpoint to the
1518 breakpoint chain here.
1519 (init_raw_breakpoint): Adjust comments.
1520 (set_raw_breakpoint): Add the breakpoint to the breakpoint chain
1522 (init_catchpoint): Don't set the catchpoint's breakpoint number
1524 (install_catchpoint): New function.
1525 (create_fork_vfork_event_catchpoint)
1526 (create_syscall_event_catchpoint, catch_exec_command_1): Adjust to
1527 use install_catchpoint.
1531 * breakpoint.c (create_catchpoint_without_mention)
1532 (create_catchpoint): Delete.
1536 * breakpoint.h (struct breakpoint): Delete field `exec_pathname'.
1537 * breakpoint.c (init_raw_breakpoint_without_location): Remove
1538 reference to exec_pathname.
1539 (struct exec_catchpoint): New type.
1540 (dtor_catch_exec): New function.
1541 (insert_catch_exec, print_it_catch_exec, print_one_catch_exec): Adjust.
1542 (catch_exec_breakpoint_ops): Install dtor_catch_syscall.
1543 (catch_exec_command_1): Adjust to use init_catchpoint.
1544 (delete_breakpoint): Remove reference to exec_pathname.
1548 * breakpoint.h (struct breakpoint_ops): New field `dtor'.
1549 (struct breakpoint): Delete field `syscalls_to_be_caught'.
1550 * breakpoint.c (init_raw_breakpoint_without_location): Remove
1551 reference to syscalls_to_be_caught.
1552 (catch_fork_breakpoint_ops, catch_vfork_breakpoint_ops): Install a
1554 (struct syscall_catchpoint): New type.
1555 (dtor_catch_syscall): New function.
1556 (insert_catch_syscall, remove_catch_syscall)
1557 (breakpoint_hit_catch_syscall, print_one_catch_syscall)
1558 (print_recreate_catch_syscall): Adjust.
1559 (catch_syscall_breakpoint_ops): Install dtor_catch_syscall.
1560 (catch_exec_breakpoint_ops): Install a NULL `dtor'.
1561 (create_syscall_event_catchpoint): Adjust to use init_catchpoint.
1562 (ranged_breakpoint_ops, watchpoint_breakpoint_ops)
1563 (masked_watchpoint_breakpoint_ops)
1564 (gnu_v3_exception_catchpoint_ops): Install a NULL `dtor'.
1565 (delete_breakpoint): Call the `dtor' breakpoint_ops method, if
1566 there is one. Remove references to syscalls_to_be_caught.
1567 (catching_syscall_number): Adjust.
1568 * ada-lang.c (catch_exception_breakpoint_ops)
1569 (catch_exception_unhandled_breakpoint_ops)
1570 (catch_assert_breakpoint_ops): Install a NULL `dtor'.
1574 * breakpoint.h (struct breakpoint): Delete forked_inferior_pid
1576 * breakpoint.c (init_raw_breakpoint_without_location): Remove
1577 reference to forked_inferior_pid.
1578 (struct fork_catchpoint): New type.
1579 (breakpoint_hit_catch_fork, print_it_catch_fork)
1580 (print_one_catch_fork, breakpoint_hit_catch_vfork)
1581 (print_it_catch_vfork, print_one_catch_vfork): Adjust.
1582 (create_fork_vfork_event_catchpoint): Adjust to use
1587 * breakpoint.c (add_to_breakpoint_chain)
1588 (init_raw_breakpoint_without_location): New functions, factored
1590 (set_raw_breakpoint_without_location): ... this one.
1591 (init_raw_breakpoint): New function, factored out from
1592 set_raw_breakpoint and adjusted to use
1593 init_raw_breakpoint_without_location.
1594 (set_raw_breakpoint): Adjust.
1595 (init_catchpoint): New function, factored out from
1596 create_catchpoint_without_mention and adjusted to use
1597 init_raw_breakpoint.
1598 (create_catchpoint_without_mention): Adjust.
1602 * dwarf2expr.c (execute_stack_op) <DW_OP_GNU_convert>: Treat type
1603 argument of 0 specially.
1607 * infrun.c (handle_inferior_event): Remove write-only local variable
1608 `sw_single_step_trap_p'.
1612 * symtab.c (lookup_language_this): End loop if block is NULL.
1616 * valops.c (value_of_this): Use lookup_language_this.
1617 * symtab.h (lookup_language_this): Declare.
1618 * symtab.c (lookup_language_this): New function.
1619 (lookup_symbol_aux): Use lookup_language_this.
1620 * ax-gdb.c (gen_expr) <OP_THIS>: Use lookup_language_this.
1624 * value.h (value_of_this): Update.
1625 (value_of_local): Remove.
1626 * valops.c (value_of_this): Rename from value_of_local. Change
1628 * p-exp.y (exp): Update.
1629 (variable): Likewise.
1630 * eval.c (evaluate_subexp_standard) <OP_THIS>: Use value_of_this.
1634 * valops.c (value_of_local): Complain if NAME is NULL.
1635 * std-operator.def (OP_OBJC_SELF): Remove.
1636 * parse.c (operator_length_standard) <OP_OBJC_SELF>: Remove.
1637 * objc-exp.y (name_not_typename): Use OP_THIS.
1638 * expprint.c (print_subexp_standard) <OP_THIS>: Print language's
1640 <OP_OBJC_SELF>: Remove.
1641 * eval.c (evaluate_subexp_standard) <OP_OBJC_SELF>: Remove.
1645 * python/py-events.h (gdb_py_events): Make it extern.
1646 * python/py-evtregistry.c (gdb_py_events): Declare.
1650 * remote.c (remote_trace_set_readonly_regions): Add check for
1651 remote_protocol_packets[PACKET_qXfer_traceframe_info].support before
1656 * arm-linux-tdep.c: Include "auxv.h".
1658 (ARM_LINUX_SIZEOF_VFP): Define.
1659 (arm_linux_supply_vfp): New function.
1660 (arm_linux_collect_vfp): Likewise.
1661 (arm_linux_regset_from_core_section): Handle .reg-arm-vfp sections.
1662 (arm_linux_fpa_regset_sections): New variable.
1663 (arm_linux_vfp_regset_sections): Likewise.
1664 (arm_linux_core_read_description): New function.
1665 (arm_linux_init_abi): Install arm_linux_core_read_description and
1666 arm_linux_fpa_regset_sections or arm_linux_vfp_regset_sections as
1667 appropriate for the architecture.
1668 * arm-tdep.h (struct gdbarch_tdep): Add member "vfpregset".
1669 (tdesc_arm_with_m): Declare.
1670 (tdesc_arm_with_iwmmxt): Likewise.
1671 (tdesc_arm_with_vfpv2): Likewise.
1672 (tdesc_arm_with_vfpv3): Likewise.
1673 (tdesc_arm_with_neon): Likewise.
1674 * arm-linux-nat.c: Move features/*.c includes ...
1675 * arm-tdep.c: ... here.
1676 * arm-linux-nat.c (arm_linux_read_description): Move initializing
1677 target description data structures ...
1678 * arm-tdep.c (_initialize_arm_tdep): ... here.
1679 * arm-linux-nat.c (HWCAP_VFP, HWCAP_IWMMXT, HWCAP_NEON, HWCAP_VFPv3,
1680 HWCAP_VFPv3D16): Move definitions ...
1681 * arm-linux-tdep.h: ... here.
1685 * remote.c (remote_trace_set_readonly_regions): Add a check for
1690 * coffread.c (coffread_objfile): Rename from current_objfile.
1691 * dbxread.c (dbxread_objfile): Rename from current_objfile.
1692 * mdebugread.c (mdebugread_objfile): Rename from current_objfile.
1696 * jv-lang.c (jv_type_objfile_data_key, dynamics_objfile)
1697 (class_symtab): Remove.
1698 (jv_dynamics_progspace_key): New global.
1699 (jv_per_objfile_free): Reset program space data. Update assert.
1700 Don't clear globals.
1701 (get_dynamics_objfile): Use and set program space data.
1702 (get_java_class_symtab): Use get_dynamics_objfile.
1703 (add_class_symbol): Likewise.
1704 (java_link_class_type): Likewise.
1705 (java_object_type, jv_clear_object_type, set_java_object_type):
1707 (get_java_object_type): Update. Don't cache result.
1708 (is_object_type): Don't call set_java_object_type.
1709 (_initialize_java_language): Don't set jv_type_objfile_data_key;
1710 initialize jv_dynamics_progspace_key.
1714 * symtab.h (current_objfile): Don't declare.
1715 * objfiles.h (current_objfile): Don't declare.
1716 * objfiles.c (current_objfile): Remove.
1717 * mdebugread.c (current_objfile): New file-scope global.
1718 * dbxread.c (current_objfile): New file-scope global.
1719 * coffread.c (current_objfile): New file-scope global.
1723 * top.h (line): Rename to ...
1724 (saved_command_line): ... this.
1725 (linesize): Rename to ...
1726 (saved_command_line_size): ... this.
1727 * top.c (line): Rename to ...
1728 (saved_command_line): ... this.
1729 (linesize): Rename to ...
1730 (saved_command_line_size): ... this.
1731 (dont_repeat, command_line_input, dont_repeat_command): Adjust.
1732 * event-top.c (command_line_handler): Adjust.
1733 * main.c (captured_main): Adjust.
1737 * i386-tdep.c (i386_epilogue_frame_cache): Simplify code. Call
1738 get_frame_func instead of get_frame_pc to determine the code
1739 address used to construct the frame ID.
1740 (i386_epilogue_frame_unwind_stop_reason): Fix coding style.
1741 (i386_epilogue_frame_this_id): Likewise.
1742 (i386_epilogue_frame_prev_register): New function.
1743 (i386_epilogue_frame_unwind): Use i386_epilogue_frame_prev_register.
1744 (i386_stack_tramp_frame_sniffer): Fix coding style.
1745 (i386_stack_tramp_frame_unwind): Use i386_epilogue_frame_prev_register.
1746 (i386_gdbarch_init): Fix comments.
1750 * i386-tdep.c (i386_match_insn_block): Use length of the proper
1751 instruction when walking back through the instruction stream.
1755 * symtab.c (output_partial_symbol_filename): Exchange the filename and
1756 fullname parameters order.
1761 * dwarf2read.c (dw2_map_symbol_filenames): Use symbol_filename_ftype
1763 * psymtab.c (map_symbol_filenames_psymtab)
1764 (map_partial_symbol_filenames): Likewise.
1765 * psymtab.h: Include symfile.h.
1766 (map_partial_symbol_filenames): Use symbol_filename_ftype for fun.
1767 * symfile.h (symbol_filename_ftype): New.
1768 (struct quick_symbol_functions): Use symbol_filename_ftype for fun of
1769 map_symbol_filenames, clarify more the naming in comment.
1773 * cc-with-index.sh: Fix typos in comment.
1774 Look for ../../gdb, for fullname.exp.
1779 * cli/cli-cmds.c (shell_escape): Use waitpid.
1780 * rs6000-nat.c (exec_one_dummy_insn): Likewise.
1784 * xcoffread.c (dwarf2_xcoff_names): New variable.
1785 (aix_process_linenos): Add a guard.
1786 (xcoff_symfile_finish): Free dwarf2.
1787 (xcoff_initial_scan): Add dwarf2 support.
1791 * infcall.c (run_inferior_call): Don't mask async. Instead force
1792 a synchronous wait, if the target can async.
1794 * target.h (struct target_ops): Delete to_async_mask.
1795 (target_async_mask): Delete.
1796 * target.c (update_current_target): Delete references to to_async_mask.
1797 * linux-nat.c (linux_nat_async_mask_value): Delete.
1798 (linux_nat_is_async_p, linux_nat_can_async_p): Remove references
1799 to linux_nat_async_mask_value.
1800 (linux_nat_async_mask): Delete.
1801 (linux_nat_async, linux_nat_close): Remove references to
1802 linux_nat_async_mask_value.
1803 * record.c (record_async_mask_value): Delete.
1804 (record_async): Remove references to record_async_mask_value.
1805 (record_async_mask): Delete.
1806 (record_can_async_p, record_is_async_p): Remove references to
1807 record_async_mask_value.
1808 (init_record_ops, init_record_core_ops): Remove references to
1810 * remote.c (remote_async_mask_value): Delete.
1811 (init_remote_ops): Remove reference to remote_async_mask.
1812 (remote_can_async_p, remote_is_async_p): Remove references to
1813 remote_async_mask_value.
1814 (remote_async): Remove references to remote_async_mask_value.
1815 (remote_async_mask): Delete.
1817 * infrun.c (fetch_inferior_event): Don't claim registers changed
1818 if the current thread is already not executing.
1823 * breakpoint.c, breakpoint.h, cli/cli-dump.c, dwarf2expr.c,
1824 gdbarch.c, gdbarch.sh, remote.c: Various spelling fixes.
1828 * dwarf2expr.c (execute_stack_op) [DW_OP_deref]: Handle
1829 the case where ADDR_SIZE is different from TYPE_LENGTH (type).
1833 * python/py-inferior.c (python_inferior_exit): Use inferior's exit
1835 * python/py-exitedevent.c (create_exited_event_object): Change
1836 type of 'exit_code'. Optionally add exit_code attribute.
1837 (emit_exited_event): Change type of 'exit_code'.
1838 * python/py-event.h (emit_exited_event): Update.
1839 * mi/mi-interp.c (mi_inferior_exit): Print exit code.
1840 * infrun.c (handle_inferior_event): Set exit code fields on
1842 * inferior.h (struct inferior) <has_exit_code, exit_code>: New
1844 * inferior.c (exit_inferior_1): Initialize new fields.
1848 * dwarf2expr.c (get_signed_type): New function.
1849 (execute_stack_op) <DW_OP_shra>: Always perform a signed shift.
1853 * objc-lang.c (find_methods): Increment objfile_csym earlier.
1857 * top.h (simplified_command_loop): Delete declaration.
1861 * remote-sim.c (gdbsim_open): Add the strlen of " --sysroot=" and
1862 gdb_sysroot to the "len" variable. Append both to "arg_buf".
1866 * objfiles.h (obj_section_addr): Update reference to objfile from
1868 (obj_section_endaddr): Likewise.
1872 * MAINTAINERS: Update my email address and affiliation. Also
1878 * linespec.c (get_search_block): New function.
1879 (find_methods): Add FILE_SYMTATB parameter and use it and
1880 get_search_block to pass an appropriate block to
1881 lookup_symbol_in_namespace.
1882 (decode_line_1): Record if *ARGPTR is single-quote enclosed.
1883 Check if *ARGPTR starts with a filename first.
1884 If it does, call locate_first_half again to locate the next
1885 "first half" of the linespec.
1886 Pass FILE_SYMTATB to decode_objc and decode_compound.
1887 Swallow the trailing single-quote if IS_SQUOTE_ENCLOSED.
1888 (locate_first_half): Stop on the first colon seen.
1889 (decode_compound): Add FILE_SYMTAB parameter.
1890 Pass FILE_SYMTAB to lookup_prefix_sym and find_method.
1891 (lookup_prefix_sym): Add FILE_SYMTAB parameter and use
1892 get_search_block with lookup_symbol.
1893 (find_method): Add FILE_SYMTAB parameter and pass it to
1895 (decode_objc): Use get_search_block.
1900 * cp-namespace.c (ANONYMOUS_NAMESPACE_LEN): Remove.
1901 (cp_scan_for_anonymous_namespaces): Use CP_ANONYMOUS_NAMESPACE_STR
1902 and CP_ANONYMOUS_NAMESPACE_LEN.
1903 (cp_is_anonymous): Likewise.
1904 * cp-support.h (CP_ANONYMOUS_NAMESPACE_STR): Define.
1905 (CP_ANONYMOUS_NAMESPACE_LEN): Define.
1906 * dwarf2read.c (namespace_name): Likewise.
1907 (fixup_partial_die): Likewise.
1908 * linespec.c (decode_compound): If CP_ANONYMOUS_NAMESPACE_STR is
1909 seen in the input, keep it.
1913 * target.h (enum inferior_event_type): Delete INF_QUIT_REQ.
1914 * inf-loop.h (inferior_event_handler_wrapper): Delete.
1915 * inf-loop.c (inferior_event_handler_wrapper): Delete.
1916 (inferior_event_handler): Don't handle INF_QUIT_REQ.
1917 * remote.c (_initialize_remote): Register
1918 async_remote_interrupt_twice directly as
1919 sigint_remote_twice_token event.
1923 * target.h (enum inferior_event_type): Delete INF_ERROR.
1924 * inf-loop.c (inferior_event_handler): Don't handle INF_ERROR.
1928 * interps.c (interp_set): Don't cancel continuations.
1932 * linux-nat.c (linux_lwp_is_zombie): Use xsnprintf.
1936 * continuations.h (continuation_ftype): Add `err' parameter.
1937 Document parameters.
1938 (do_all_continuations, do_all_continuations_thread)
1939 (do_all_intermediate_continuations)
1940 (do_all_intermediate_continuations_thread)
1941 (do_all_inferior_continuations): Add `err' parameter.
1942 * continuations.c (do_my_continuations_1, do_my_continuations)
1943 (do_all_inferior_continuations, do_all_continuations_ptid)
1944 (do_all_continuations_thread_callback)
1945 (do_all_continuations_thread, do_all_continuations)
1946 (do_all_intermediate_continuations_thread_callback)
1947 (do_all_intermediate_continuations_thread)
1948 (do_all_intermediate_continuations): Add `err' parameter, and pass
1949 it down all the way to the continuations proper.
1950 * inf-loop.c (inferior_event_handler): If fetching an inferior
1951 event throws an error, don't pop the target, and still call the
1952 continuations, but with `err' set. Adjust all other continuation
1954 * breakpoint.c (until_break_command_continuation): Add `err'
1956 * infcmd.c (step_1_continuation): Add `err' parameter. Don't
1957 issue another step if `err' is set.
1958 (struct until_next_continuation_args): New.
1959 (until_next_continuation): Add `err' parameter. Adjust.
1960 (until_next_command): Adjust.
1961 (struct finish_command_continuation_args): Add `thread' field.
1962 (finish_command_continuation): Add `err' parameter. Handle it.
1963 (finish_forward): Adjust.
1964 (attach_command_continuation): Add `err' parameter. Handle it.
1965 * infrun.c (infrun_thread_stop_requested_callback): Adjust to
1966 cancel the continuations.
1967 * interps.c (interp_set): Adjust to cancel the continuations.
1968 * thread.c (clear_thread_inferior_resources): Adjust to cancel the
1969 continuations rather than discarding.
1970 (free_thread): Don't clear thread inferior resources here.
1971 (delete_thread_1): Do it here instead. And do it before removing
1972 the thread from the threads list. Tag the thread as exited before
1973 clearing thread inferior resources.
1977 * infcall.c (call_function_by_hand): Rephrase error message.
1981 * defs.h (struct thread_info, struct inferior): Delete forward
1983 * breakpoint.h (struct thread_info): New forward declaration.
1984 * observer.sh (struct inferior): New forward declaration.
1985 * python/python-internal.h (struct inferior): New forward
1990 * defs.h (struct continuation, continuation_ftype)
1991 (continuation_free_arg_ftype, add_continuation)
1992 (do_all_continuations, do_all_continuations_thread)
1993 (discard_all_continuations, discard_all_continuations_thread)
1994 (add_intermediate_continuation, do_all_intermediate_continuations)
1995 (do_all_intermediate_continuations_thread)
1996 (discard_all_intermediate_continuations)
1997 (discard_all_intermediate_continuations_thread)
1998 (add_inferior_continuation, do_all_inferior_continuations)
1999 (discard_all_inferior_continuations): Move to ...
2000 * continuations.h: ... this new file.
2001 * breakpoint.c, continuations.c, event-top.c, inf-loop.c,
2002 infcmd.c, inferior.c, infrun.c, interps.c: Include
2008 Fix PR 10970, PR 12702.
2009 * linux-nat.c (linux_lwp_is_zombie): New function.
2010 (wait_lwp): Initialize status. New variable prev_mask. Block signals.
2011 Check for linux_lwp_is_zombie. Use WNOHANG and sigsuspend.
2015 * defs.h (continuation_ftype, continuation_free_arg_ftype): New
2017 (add_continuation, add_intermediate_continuation)
2018 (add_inferior_continuation): Use them.
2019 * continuations.c (struct continuation): Use them.
2020 (make_continuation_ftype): Delete.
2021 (make_continuation, add_inferior_continuation, add_continuation)
2022 (add_intermediate_continuation): Use continuation_ftype and
2023 continuation_free_arg_ftype. Rename parameters to shorter names.
2027 * continuations.c (make_continuation): Make it return void.
2028 (do_my_continuations): Rename to ...
2029 (do_my_continuations_1): ... this. Remove old_chain parameter and
2031 (do_my_continuations): New.
2032 (discard_my_continuations): Rename to ...
2033 (discard_my_continuations_1): ... this. Remove old_chain
2034 parameter and adjust.
2035 (discard_my_continuations): New.
2036 (add_inferior_continuation): Simplify.
2037 (do_all_inferior_continuations): Reimplement on top
2038 do_my_continuations.
2039 (discard_all_inferior_continuations): Simplify.
2040 (add_continuation): Simplify.
2041 (do_all_continuations_ptid): Simplify.
2042 (discard_all_continuations_thread_callback): Simplify.
2043 (add_intermediate_continuation): Simplify.
2044 (discard_all_intermediate_continuations_thread_callback):
2049 * utils.c (struct continuation, add_continuation)
2050 (add_inferior_continuation)
2051 (do_all_inferior_continuations, discard_all_inferior_continuations)
2052 (restore_thread_cleanup, do_all_continuations_ptid)
2053 (do_all_continuations_thread_callback)
2054 (do_all_continuations_thread, do_all_continuations)
2055 (discard_all_continuations_thread_callback)
2056 (discard_all_continuations_thread, discard_all_continuations)
2057 (add_intermediate_continuation)
2058 (do_all_intermediate_continuations_thread_callback)
2059 (do_all_intermediate_continuations_thread)
2060 (do_all_intermediate_continuations)
2061 (discard_all_intermediate_continuations_thread_callback)
2062 (discard_all_intermediate_continuations_thread)
2063 (discard_all_intermediate_continuations): Move to ...
2064 * continuations.c: ... this new file, and adjust to no longer
2065 implement continuations on top of cleanups.
2066 * Makefile.in (SFILES): Add continuations.c.
2067 (COMMON_OBS): Add continuations.o.
2071 * inferior.h (enum exec_direction_kind): Delete EXEC_ERROR.
2072 * infrun.c (show_exec_direction_func): Don't handle EXEC_ERROR.
2073 Internal error on invalid values.
2074 * reverse.c: Don't handle EXEC_ERROR.
2075 * mi/mi-main.c: Don't handle EXEC_ERROR.
2079 * record.c: Include event-loop.h, inf-loop.h.
2080 (record_beneath_to_async): New global.
2081 (tmp_to_async): New global.
2082 (record_async_inferior_event_token): New global.
2083 (record_open_1): Don't error out if async is enabled.
2084 (record_open): Handle to_async. Create an async event source in
2086 (record_close): Delete the async event source.
2087 (record_resumed): New global.
2088 (record_execution_dir): New global.
2089 (record_resume, record_core_resume): Set them. Register the
2090 target on the event loop.
2091 (record_wait): Rename to ...
2092 (record_wait_1): ... this. Add more debug output. Handle
2093 TARGET_WNOHANG, and the target beneath returning
2094 TARGET_WAITKIND_IGNORE.
2095 (record_wait): Reimplement on top of record_wait_1.
2096 (record_async_mask_value): New global.
2097 (record_async, record_async_mask, record_can_async_p)
2098 (record_is_async_p, record_execution_direction): New functions.
2099 (init_record_ops, init_record_core_ops): Install new methods.
2100 * infrun.c (fetch_inferior_event): Temporarily switch the global
2101 execution direction to the direction the target was going.
2102 (execution_direction): Change type to int.
2103 * target.c (default_execution_direction): New function.
2104 (update_current_target): Inherit and de_fault
2105 to_execution_direction.
2106 * target.h (struct target_ops) <to_execution_direction>: New
2108 (target_execution_direction): New macro.
2109 * inferior.h (execution_direction): Change type to int.
2113 * infcall.c (call_function_by_hand): Don't allow calling functions
2114 in reverse execution mode.
2118 * infcmd.c (finish_command): Allow async finish in reverse.
2122 * gdb_thread_db.h: Delete. Move to ...
2123 * common/gdb_thread_db.h: ... here.
2127 * infcmd.c (finish_backward): Set a step-resume breakpoint at the
2128 function's entry point instead of a manually managed momentary
2129 breakpoint, and only ever issue one proceed call.
2130 * infrun.c (handle_inferior_event) <BPSTAT_WHAT_STEP_RESUME>: If
2131 doing a reverse-finish, switch to stepi mode, to do another step.
2132 (insert_step_resume_breakpoint_at_sal): Make public.
2133 (normal_stop): No need to save function value return registers if
2135 * inferior.h (insert_step_resume_breakpoint_at_sal): Declare.
2139 * breakpoint.h (enum bptype) <bp_hp_step_resume>: New.
2140 (enum bpstat_what_main_action): Move BPSTAT_WHAT_STEP_RESUME
2141 before BPSTAT_WHAT_STOP_SILENT. Add BPSTAT_WHAT_HP_STEP_RESUME
2143 * breakpoint.c (update_breakpoints_after_exec): Also delete hp
2144 step-resume breakpoints.
2145 (print_it_typical): Handle bp_hp_step_resume.
2146 (bpstat_what): Ditto.
2147 (bptype_string): Ditto.
2148 (print_one_breakpoint_location): Ditto.
2149 (allocate_bp_location): Ditto.
2151 (breakpoint_re_set_one): Ditto.
2152 * infrun.c (handle_inferior_event): Adjust. Split
2153 BPSTAT_WHAT_STEP_RESUME handling in BPSTAT_WHAT_STEP_RESUME and
2154 BPSTAT_WHAT_HP_STEP_RESUME.
2155 (insert_step_resume_breakpoint_at_sal): Rename to ...
2156 (insert_step_resume_breakpoint_at_sal_1): ... this. Add bptype
2157 parameter. Handle it.
2158 (insert_step_resume_breakpoint_at_sal): Reimplement on top of
2159 insert_step_resume_breakpoint_at_sal_1.
2160 (insert_step_resume_breakpoint_at_frame): Rename to ...
2161 (insert_hp_step_resume_breakpoint_at_frame): ... this. Adjust to
2162 set a high-priority step-resume breakpoint.
2163 (insert_step_resume_breakpoint_at_frame): Adjust comment.
2164 (insert_step_resume_breakpoint_at_caller): Ditto.
2168 * breakpoint.c (iterate_over_related_breakpoints): New.
2169 (do_map_delete_breakpoint): New.
2170 (delete_command): Pass do_map_delete_breakpoint to
2171 map_breakpoint_numbers.
2172 (do_disable_breakpoint): New.
2173 (do_map_disable_breakpoint): Iterate over the breakpoint's related
2175 (do_enable_breakpoint): Rename to ...
2176 (enable_breakpoint_disp): ... this.
2177 (enable_breakpoint): Adjust.
2178 (do_enable_breakpoint): New.
2179 (enable_once_breakpoint): Delete.
2180 (do_map_enable_breakpoint): New.
2181 (do_map_enable_once_breakpoint): New.
2182 (enable_once_command, enable_delete_command)
2183 (delete_trace_command): Iterate over the breakpoint's related
2188 * alpha-tdep.c (alpha_cannot_fetch_register): Don't return true
2189 for ALPHA_ZERO_REGNUM.
2190 (alpha_supply_int_regs): Explicitly supply zero as the value for
2191 ALPHA_ZERO_REGNUM in the register cache.
2192 * alpha-nat.c (fetch_osf_core_registers): Ditto.
2196 * gdb/gdb_thread_db.h: Remove HAVE_UINTPTR_T.
2200 * symfile.h (struct dwarf2_section_names): New type.
2201 (struct dwarf2_debug_sections): New type.
2202 (dwarf2_has_info): Add parameter.
2203 * dwarf2read.c (dwarf2_elf_names): New variable.
2204 (INFO_SECTION, ABBREV_SECTION, LINE_SECTION, LOC_SECTION)
2205 (MACINFO_SECTION, STR_SECTION, RANGES_SECTION, TYPES_SECTION)
2206 (FRAME_SECTION, EH_FRAME_SECTION, GDB_INDEX_SECTION): Remove.
2207 (dwarf2_has_info): Add names parameter. Pass names
2208 to dwarf2_locate_sections.
2209 (section_is_p): Rewrite using the names parameter.
2210 (dwarf2_locate_sections): Use section names from the names parameter.
2211 * coffread.c (coff_symfile_read): Adjust call to dwarf2_has_info.
2212 * elfread.c (read_psyms): Ditto.
2213 * machoread.c (macho_symfile_read): Ditto.
2218 * event-loop.c (handle_file_event): Don't handle POLLHUP as error.
2223 * linespec.c (keep_name_info): Add handling for "volatile" keyword.
2224 (decode_compound): Unconditionally call keep_name_info.
2228 * breakpoint.c (watchpoint_check): If the watchpoint went out of
2229 scope, clear its command list.
2230 (map_breakpoint_numbers): Don't walk the related breakpoints list
2235 * MAINTAINERS: Move Jim Blandy to past maintainers.
2239 * symfile.h (enum dwarf2_section_enum): New type.
2240 (dwarf2_get_section_info): New prototype.
2241 * dwarf2read.c (dwarf2_get_section_info): Replace parameter
2242 section_name by sect. Use a switch to select the info.
2243 * dwarf2-frame.c (warf2_get_section_info): Remove prototype.
2244 (dwarf2_build_frame_info): Adjust calls to dwarf2_get_section_info.
2248 * solib-svr4.c (svr4_solib_create_inferior_hook): Skip setting
2249 shared library event breakpoint if there's no execution.
2253 * breakpont.c (remove_hw_watchpoints): Remove unused function.
2254 * breakpoint.h remove_hw_watchpoints(): Remove prototype.
2258 * c-lang.c (evaluate_subexp_c): Use expect_type if it is not
2263 * python/lib/gdb/printing.py (register_pretty_printer): Add missing
2264 entry for RuntimeError to doc string.
2268 * sparc-tdep.c (sparc_skip_stack_check): Recognize a new instruction
2269 sequence for probing loops.
2273 * infrun.c (user_visible_resume_ptid): Fix typos in describing
2278 * sparc-nat.c (sparc_fetch_inferior_registers): Explicitly supply
2279 zero as the value for %g0 in the register cache.
2280 * sparc-tdep.c (sparc32_supply_gregset): Likewise.
2281 * sparc64-tdep.c (sparc64_supply_gregset): Likewise.
2285 * infrun.c (proceed): Set previous_inferior_ptid here.
2286 (init_wait_for_inferior): Initialize previous_inferior_ptid from
2287 inferior_ptid, not null_ptid.
2288 (wait_for_inferior): Don't initialize previous_inferior_ptid here.
2289 (fetch_inferior_event): Nor here.
2293 * inf-loop.c (inferior_event_handler): Only output a message if
2298 * MAINTAINERS: Update my e-mail address.
2302 * infrun.c (proceed): Switch the inferior event loop to
2303 INF_EXEC_COMPLETE if the target refused to resume from a
2308 * infcmd.c: Include "inf-loop.h".
2309 (step_once): When stepping into an inline subroutine, pretend the
2310 target has run. If the target can async, switch the inferior
2311 event loop to INF_EXEC_COMPLETE.
2312 * inferior.h (user_visible_resume_ptid): Declare.
2313 * infrun.c (user_visible_resume_ptid): New function, factored out
2316 * mi/mi-main.c (mi_execute_async_cli_command): Remove assertion
2317 that the current thread is running. Merge async and sync
2322 * infcmd.c (step_1): Simplify synchronous case.
2326 * tracepoint.c: Include exceptions.h.
2327 (TFILE_PID): Move higher in file.
2328 (tfile_open): Delay pushing the tfile target until we're assured
2329 the tfile header is present in the file. Wrap reading the initial
2330 newline-terminated lines in TRY_CATCH. Pop the target if the
2331 initial setup failed. Add the tfile's thread immediately
2332 aftwards, before any non-essential setup. Don't skip
2333 post_create_inferior if there are no traceframes present in the
2335 (tfile_close): Remove redundant check for null before xfree call.
2336 (tfile_thread_alive): New function.
2337 (init_tfile_ops): Register it as to_thread_alive callback.
2341 * tracepoint.c (tfile_open): Delete #if 0'd code.
2345 Fix -readnow for -gdwarf-4 unused type units.
2346 * dwarf2read.c (struct signatured_type): Remove the field offset.
2347 (create_signatured_type_table_from_index): Remove its initialization.
2348 (create_debug_types_hash_table): Likewise. Initialize per_cu.offset
2349 instead. Add a complaint call.
2350 (process_psymtab_comp_unit): Change assignment to gdb_assert.
2351 (process_type_comp_unit, lookup_die_type, dump_die_shallow)
2352 (lookup_signatured_type_at_offset, read_signatured_type)
2353 (write_one_signatured_type): Update the field for per_cu.
2357 * python/py-inferior.c (python_inferior_exit): Use
2359 (python_on_resume): Likewise.
2363 * breakpoint.c (bpstat_do_actions_1): Call prevent_dont_repeat.
2367 * tracepoint.c (tfile_trace_find): Return directly when num is -1.
2371 * xcoffread.c (read_xcoff_symtab): Initialize fcn_aux_saved.
2375 * dwarf2read.c (dwarf2_add_field): Constify.
2376 * value.c (value_static_field): Constify.
2377 * gdbtypes.h (struct main_type) <field.field_location.physname>:
2379 * ax-gdb.c (gen_static_field): Constify
2383 * linux-nat.c (kill_callback): Use SIGKILL first.
2387 * ada-lang.c (print_it_exception): Avoid use of sprintf.
2391 * value.c (value_fn_field): Constify.
2392 * symtab.c (gdb_mangle_name): Constify.
2393 * stabsread.c (update_method_name_from_physname): Make 'physname'
2395 * p-typeprint.c (pascal_type_print_method_args): Make arguments
2396 const. Use explicit fputc_filtered loop.
2397 (pascal_type_print_base): Constify.
2398 * p-lang.h (pascal_type_print_method_args): Update.
2399 * linespec.c (add_matching_methods): Constify.
2400 (add_constructors): Likewise.
2401 * jv-typeprint.c (java_type_print_base): Constify.
2402 * gdbtypes.h (struct cplus_struct_type)
2403 <fn_fieldlist.fn_field.physname>: Now const.
2404 * dwarf2read.c (compute_delayed_physnames): Constify.
2405 (dwarf2_add_member_fn): Likewise.
2406 * c-typeprint.c (c_type_print_base): Constify. Use cleanups.
2410 * infrun.c (resume): Mention which is the current thread, and its
2411 current PC in debug output.
2412 (prepare_to_proceed): Mention the thread switching in debug
2417 * linux-thread-db.c (try_thread_db_load_from_pdir_1): Fix absolute
2418 path check. Use xmalloc and cleanups.
2419 (try_thread_db_load_from_dir): Use xmalloc and cleanups.
2423 * cp-valprint.c (cp_print_value_fields): Catch errors from
2428 * dwarf2read.c (dwarf2_get_die_type): Call
2429 get_die_type_at_offset.
2430 * dwarf2expr.c (dwarf_get_base_type): Handle NULL return from
2431 get_base_type function.
2435 * infrun.c (handle_inferior_event) <handling deferred step>: Clear
2440 * python/py-auto-load.c (source_section_scripts): Mention objfile
2445 * linux-thread-db.c (try_thread_db_load_from_pdir_1): New function.
2446 (try_thread_db_load_from_pdir): Call it. If unable to find
2447 libthread_db in directory of libpthread, see if we're looking at
2448 the separate-debug-info copy.
2450 * python/py-autoload.c (print_script): Print "Missing" instead of
2451 "No" for missing scripts.
2452 (info_auto_load_scripts): Tweak "Loaded" column to fit "Missing".
2456 * ui-file.c (stdio_file_write_async_safe): Add comment.
2460 * ui-file.c (stdio_file_write_async_safe): Add empty check for build.
2464 Support $pdir and $sdir in libthread-db-search-path.
2465 * NEWS: Mention $sdir,$pdir.
2466 * gdb_thread_db.h (LIBTHREAD_DB_SEARCH_PATH): Add $sdir:$pdir.
2467 * linux-thread-db.c (try_thread_db_load_from_pdir): New function.
2468 (try_thread_db_load_from_sdir): New function.
2469 (try_thread_db_load_from_dir): New function.
2470 (thread_db_load_search): Handle $pdir, $sdir. Remove trying of
2471 system directories if search of libthread-db-search-path fails,
2472 that is now done via $sdir.
2473 (has_libpthread): New function.
2474 (thread_db_load): Remove search for libthread_db in directory of
2475 libpthread, that is now done via $pdir.
2477 * NEWS: Mention "info auto-load-scripts".
2478 * python/py-auto-load.c (struct auto_load_pspace_info): New member
2479 script_not_found_warning_printed.
2480 (init_loaded_scripts_info): Renamed from create_loaded_scripts_hash,
2481 all callers updated. Initialize script_not_found_warning_printed.
2482 (get_auto_load_pspace_data_for_loading): New function.
2483 (maybe_add_script): New function.
2484 (source_section_scripts): Simplify. Only print one warning regardless
2485 of the number of auto-load scripts not found.
2486 (clear_section_scripts): Clear script_not_found_warning_printed.
2487 (auto_load_objfile_script): Record script in hash table.
2488 (count_matching_scripts): New function.
2489 (maybe_print_script): Renamed from maybe_print_section_script, all
2490 callers updated. Rewrite to use ui_out_*.
2491 (info_auto_load_scripts): Renamed from
2492 maintenance_print_section_scripts, all callers updated.
2493 (gdbpy_initialize_auto_load): "maintenance print section-scripts"
2494 renamed as "info auto-load-scripts".
2498 * dwarf2expr.c (read_uleb128): Cast intermediate result.
2499 (read_sleb128): Likewise.
2503 * dwarf2loc.c (disassemble_dwarf_expression): Fix instruction
2508 * linux-nat.c (debug_linux_nat_async): Delete.
2509 Replace all references to use debug_linux_nat instead.
2510 (show_debug_linux_nat_async): Delete.
2511 (sigchld_handler): Call ui_file_write_async_safe instead of
2513 (_initialize_linux_nat): Remove `set debug lin-lwp-async'.
2514 * ui-file.c (struct ui_file): New member to_write_async_safe.
2515 (null_file_write_async_safe): New function.
2516 (ui_file_write_async_safe): New function.
2517 (set_ui_file_write_async_safe): New function.
2518 (ui_file_new): Initialize to_write_async_safe.
2519 (stdio_file_write_async_safe): New function.
2520 (struct stdio_file): New member fd.
2521 (stdio_file_new): Initialize to_write_async_safe, fd.
2522 (stdio_file_read, stdio_file_isatty): New stdio->fd instead of calling
2524 * ui-file.h (ui_file_write_async_safe_ftype): New typedef.
2525 (set_ui_file_write_async_safe): Declare.
2526 (ui_file_write_async_safe): Declare.
2530 * utils.c (do_value_free): New function.
2531 (make_cleanup_value_free): Likewise.
2532 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle value
2534 (dwarf2_loc_desc_needs_frame): Call
2535 make_cleanup_value_free_to_mark.
2536 * dwarf2expr.h (struct dwarf_expr_context) <mark>: Remove field.
2537 * dwarf2expr.c (free_dwarf_expr_context): Don't call
2539 (new_dwarf_expr_context): Don't call value_mark.
2540 * dwarf2-frame.c (execute_stack_op): Call
2541 make_cleanup_value_free_to_mark.
2542 * defs.h (make_cleanup_value_free): Declare.
2546 * mi/mi-main.c (mi_cmd_execute): Use cleanup from
2547 prepare_execute_command.
2548 * top.c (prepare_execute_command): Return cleanup.
2549 (execute_command): Use cleanup from prepare_execute_command.
2550 * top.h (prepare_execute_command): Change prototype to return
2552 * defs.h (struct value): Add opaque declaration.
2553 (make_cleanup_value_free_to_mark): Add prototype.
2554 * utils.c (do_value_free_to_mark): New function.
2555 (make_cleanup_value_free_to_mark): Likewise.
2559 * dwarf2expr.c (execute_stack_op) <DW_OP_shr>: Unconditionally
2560 cast left-hand-side to unsigned.
2565 * value.h (value_from_contents): Declare.
2566 * value.c (value_from_contents): New function.
2567 * dwarf2read.c (dwarf_stack_op_name): Add new values.
2568 (dwarf2_get_die_type): New function.
2569 * dwarf2loc.c (dwarf_expr_get_base_type): New function.
2570 (allocate_piece_closure): Acquire reference to values.
2571 (read_pieced_value): Update for value-based expressions.
2572 (write_pieced_value): Likewise.
2573 (free_pieced_value_closure): Call value_free as needed.
2574 (dwarf2_evaluate_loc_desc_full): Set get_base_type field.
2575 Update for value-based expressions.
2576 * dwarf2loc.h (dwarf2_get_die_type): Declare.
2577 * dwarf2expr.h (struct dwarf_stack_value) <value>: Change type.
2578 <get_base_type>: New field.
2579 (struct dwarf_expr_piece) <v.value>: Change type.
2580 <v.regno>: New field.
2581 (struct dwarf_expr_context) <mark>: New field.
2582 (dwarf_expr_piece, dwarf_expr_fetch): Update.
2583 (dwarf_expr_pop, dwarf_expr_push): Remove.
2584 (dwarf_expr_push_address): Declare.
2585 * dwarf2expr.c (dwarf_arch_cookie): New global.
2586 (struct dwarf_gdbarch_types): New.
2587 (dwarf_gdbarch_types_init, dwarf_expr_address_type): New
2589 (dwarf_expr_push): Change type of 'value' argument. Update. Now
2591 (dwarf_expr_push_address): New function.
2592 (dwarf_expr_pop): Now static.
2593 (dwarf_expr_fetch): Change return type.
2594 (dwarf_require_integral): New function.
2595 (dwarf_expr_fetch): Simplify.
2596 (add_piece): Update.
2597 (base_types_equal_p, dwarf_get_base_type, get_unsigned_type): New
2599 (execute_stack_op) <sign_ext>: Remove.
2600 Use values for DWARF stack.
2601 <DW_OP_GNU_const_type, DW_OP_GNU_deref_type,
2602 DW_OP_GNU_regval_type, DW_OP_GNU_convert, DW_OP_GNU_reinterpret>:
2604 (_initialize_dwarf2expr): New function.
2605 (add_piece): Update.
2606 (new_dwarf_expr_context): Set new field.
2607 (free_dwarf_expr_context): Call value_free_to_mark.
2608 * dwarf2-frame.c (no_base_type): New function.
2609 (execute_stack_op): Set get_base_type field. Update.
2613 * dwarf2read.c (read_common_block): Fix formatting.
2617 * breakpoint.c (disable_breakpoint): Disable all locations
2618 associated with a tracepoint on target if a trace experiment is
2620 (disable_command): Disable a specific tracepoint location on target if
2621 a trace experiment is running.
2622 (do_enable_breakpoint): Enable all locations associated with a
2623 tracepoint on target if a trace experiment is running.
2624 (enable_command) Enable a specific tracepoint location on target if a
2625 trace experiment is running.
2626 * target.c (update_current_target): Add INHERIT and de_fault clauses for
2627 to_supports_enable_disable_tracepoint, to_enable_tracepoint and
2628 to_disable_tracepoint.
2629 * target.h: Add declaration of struct bp_location.
2630 (struct target_ops): Add new functions
2631 to_supports_enable_disable_tracepoint, to_enable_tracepoint and
2632 to_disable_tracepoint to target operations.
2633 (target_supports_enable_disable_tracepoint): New macro.
2634 (target_enable_tracepoint): New macro.
2635 (target_disable_tracepoint): New macro.
2636 * remote.c (struct remote_state): Add new field.
2637 (remote_enable_disable_tracepoint_feature): New.
2638 (remote_protocol_features): Add new entry.
2639 (remote_supports_enable_disable_tracepoint): New.
2640 (remote_enable_tracepoint): New.
2641 (remote_disable_tracepoint): New.
2642 (init_remote_ops): Add remote_enable_tracepoint,
2643 remote_disable_tracepoint and remote_supports_enable_disable_tracepoint
2644 to remote operations.
2645 * tracepoint.c (start_tracing): Allow tracing to start without any
2646 tracepoints enabled with just a warning if they can be re-enabled
2648 * NEWS: Add news item for the new behaviour of the enable and disable
2649 GDB commands when applied to tracepoints.
2650 Add news items for the new remote packets QTEnable and QTDisable.
2654 * config.in: Regenerate.
2655 * configure: Regenerate.
2656 * configure.ac <--with-system-readline> (for readline_echoing_p):
2658 * tui/tui-io.c (tui_old_readline_echoing_p): Rename to ...
2659 (tui_old_rl_echoing_p): ... here.
2660 (tui_setup_io): Rename extern declaration readline_echoing_p to
2661 _rl_echoing_p. Adjust assignments for the both renames.
2665 * symtab.c (lookup_symtab): Run cleanup before returning.
2669 * dwarf2read.c (handle_data_member_location): New function.
2670 (dwarf2_add_field): Use it.
2671 (read_common_block): Likewise.
2675 Make addrs->SECTINDEX always defined.
2676 * symfile.c (relative_addr_info_to_section_offsets): Check for
2677 SECTINDEX -1, not for zero ADDR.
2678 (addrs_section_compar): Remove checking for invalid SECTINDEX.
2679 (addr_info_make_relative): Set SECTINDEX to -1 for unmatched entries.
2680 * symfile.h (struct section_addr_info) <sectindex>: Update the comment
2685 * linux-thread-db.c: Whitespace cleanup.
2686 (try_thread_db_load_1): Fix comment.
2688 * linux-thread-db.c (set_libthread_db_search_path): New function.
2689 (_initialize_thread_db): Add setter for libthread-db-search-path.
2693 * NEWS: Mention --with-iconv-bin.
2694 * configure.ac: New option --with-iconv-bin.
2695 * configure: Regenerate.
2696 * config.in: Regenerate.
2697 * defs.h (relocate_gdb_directory): Declare.
2698 * main.c (relocate_gdb_directory): Renamed from relocate_directory,
2699 removed progname parameter, and exported. All callers updated.
2700 * charset.c (find_charset_names): Use --with-iconv-bin if specified.
2702 * linux-nat.c (lin_lwp_attach_lwp): For !WIPSTOPPED case,
2703 adding missing call to restore_child_signals_mask.
2707 * inferior.h (wait_for_inferior): Remove `thread_exec_as_sigtrap'
2709 * infrun.c (proceed, start_remote): Adjust.
2710 (wait_for_inferior): Remove `thread_exec_as_sigtrap' parameter,
2711 and adjust to not handle it.
2712 * solib-irix.c (irix_solib_create_inferior_hook): Adjust.
2713 * solib-osf.c (osf_solib_create_inferior_hook): Adjust.
2714 * solib-sunos.c (sunos_solib_create_inferior_hook): Adjust.
2715 * solib-svr4.c (svr4_solib_create_inferior_hook): Adjust.
2716 * windows-nat.c (do_initial_windows_stuff): Adjust.
2717 * infcmd.c (attach_command): Adjust.
2718 (notice_new_inferior): Adjust.
2722 * ppc-linux-tdep.c (ppu2spu_prev_register): Handle pseudo registers.
2723 (ppu2spu_unwind_register): Mark pseudo registers unavailable.
2724 * spu-tdep.c (op_selb): Use correct value.
2728 * spu-linux-nat.c (spu_symbol_file_add_from_memory): Add NULL
2729 "parent" parameter to symbol_file_add_from_bfd call.
2734 Implement support for PowerPC BookE masked watchpoints.
2735 * NEWS: Mention masked watchpoint support. Create "Changed commands"
2737 * breakpoint.h (struct breakpoint_ops) <works_in_software_mode>: New
2738 method. Initialize to NULL in all existing breakpoint_ops instances.
2739 (struct breakpoint) <hw_wp_mask>: New field.
2740 * breakpoint.c (is_masked_watchpoint): Add prototype.
2741 (update_watchpoint): Don't set b->val for masked watchpoints. Call
2742 breakpoint's breakpoint_ops.works_in_software_mode if available.
2743 (watchpoints_triggered): Handle the case of a hardware masked
2745 (watchpoint_check): Likewise.
2746 (works_in_software_mode_watchpoint): New function.
2747 (insert_masked_watchpoint, remove_masked_watchpoint)
2748 (resources_needed_masked_watchpoint)
2749 (works_in_software_mode_masked_watchpoint, print_it_masked_watchpoint)
2750 (print_one_detail_masked_watchpoint, print_mention_masked_watchpoint)
2751 (print_recreate_masked_watchpoint, is_masked_watchpoint): New
2753 (masked_watchpoint_breakpoint_ops): New structure.
2754 (watch_command_1): Check for the existence of the `mask' parameter.
2755 Set b->ops according to the type of hardware watchpoint being created.
2756 * ppc-linux-nat.c (ppc_linux_insert_mask_watchpoint)
2757 (ppc_linux_remove_mask_watchpoint)
2758 (ppc_linux_masked_watch_num_registers): New functions.
2759 (_initialize_ppc_linux_nat): Initialize to_insert_mask_watchpoint,
2760 to_remove_mask_watchpoint and to_masked_watch_num_registers.
2761 * target.c (update_current_target): Mention to_insert_mask_watchpoint,
2762 to_remove_mask_watchpoint, and to_masked_watch_num_registers.
2763 (target_insert_mask_watchpoint, target_remove_mask_watchpoint)
2764 (target_masked_watch_num_registers): New functions.
2765 * target.h (struct target_ops) <to_insert_mask_watchpoint>,
2766 <to_remove_mask_watchpoint>, <to_masked_watch_num_registers>: New
2768 (target_insert_mask_watchpoint, target_remove_mask_watchpoint)
2769 (target_masked_watch_num_registers): Add prototypes.
2774 * dwarf2read.c (struct dwarf2_cu): New field has_loclist.
2775 (producer_is_gcc_ge_4_0): New function.
2776 (process_full_comp_unit): Set also symtab->locations_valid. Move the
2777 symtab->language code.
2778 (var_decode_location): Set cu->has_loclist.
2779 * symtab.c (skip_prologue_sal): New variables saved_pc, force_skip and
2780 skip. Intialize force_skip from locations_valid. Move the prologue
2781 skipping code into two passes.
2782 * symtab.h (struct symtab): Make the primary field a bitfield. New
2783 field locations_valid.
2787 * c-exp.y (qualified_name): Call destructor_name_p with $1.type.
2788 (classify_inner_name): Call cp_lookup_nested_type with
2790 * cp-namespace.c (cp_lookup_nested_type): New variable
2791 saved_parent_type. Call CHECK_TYPEDEF for parent_type. Call
2792 type_name_no_tag_or_error with saved_parent_type.
2793 * dwarf2read.c (load_partial_dies): Read in any children of
2794 DW_TAG_typedef with complaint in such case.
2795 * gdbtypes.c (type_name_no_tag_or_error): New function.
2796 * gdbtypes.h (type_name_no_tag_or_error): New prototype.
2797 * valops.c (destructor_name_p): New comment for parameter type. Remove
2798 type const. Make dname and cp const. Call type_name_no_tag_or_error.
2799 * value.h (destructor_name_p): Remove type const.
2803 * symtab.c (compare_symbol_name): New function.
2804 (completion_list_add_name, expand_partial_symbol_name): Call it,
2805 remove the variable ncmp.
2806 (default_make_symbol_completion_list_break_on): Reduce SYM_TEXT_LEN,
2811 Demote to sw watchpoint only in update_watchpoint.
2812 * breakpoint.c (update_watchpoint): Change between software and
2813 hardware watchpoint for all kinds of watchpoints, not just
2814 read/write ones. Determine b->exact value here instead of
2815 in watch_command_1. Error out if there are not enough resources
2816 for a read or access hardware watchpoint.
2817 (watch_command_1): Remove logic of checking whether there are
2818 enough resources available, since update_watchpoint will do that
2819 work now. Don't set b->exact here. Catch exceptions thrown by
2820 update_watchpoint and delete the watchpoint.
2821 (can_use_hardware_watchpoint): Remove exact_watchpoints argument.
2822 Use target_exact_watchpoints instead.
2823 (delete_breakpoint): Notify observers only if deleted watchpoint
2824 has a breakpoint number assigned to it.
2828 * MAINTAINERS: Add myself as a write-after-approval maintainer.
2832 * i386-tdep.c (i386_in_stack_tramp_p, i386_stack_tramp_frame_sniffer):
2834 (i386_stack_tramp_frame_unwind): New static global.
2835 (i386_match_pattern): New function, extracted from i386_match_insn.
2836 (i386_match_insn): Use i386_match_pattern.
2837 (i386_match_insn_block): New function.
2838 (i386_tramp_chain_in_reg_insns)
2839 (i386_tramp_chain_on_stack_insns): New static variables.
2840 (i386_gdbarch_init): Add i386_stack_tramp_frame_unwind to list
2845 * configure.host (xscale*): Don't handle target.
2846 * configure.tgt (thumb*-*-* | strongarm*-*-* | xscale-*-*): Don't
2851 * gdb_wait.h: remove WAITTYPE and WCOREDUMP.
2857 | * elfread.c (elf_symtab_read): Stop memory leak.
2861 * nto-tdep.c (nto_target): Replace deprecated call to
2862 cygwin_conv_to_posix_path functions by cygwin_conv_path calls.
2866 Fix false GCC warning.
2867 * breakpoint.c (do_enable_breakpoint): Initialize orig_enable_state.
2871 * breakpoint.c (update_watchpoint): Move code to change
2872 the enable state of breakpoint from here ...
2873 (do_enable_breakpoint): ... to here.
2877 * valprint.c (val_print_array_elements): Fixed poor performance
2878 of printing very large arrays with repeat_count_threshold set
2879 to unlimited. New comment.
2883 * mi/mi-parse.c (mi_parse): Remove incorrect sizeof.
2884 (mi_parse): Likewise.
2885 * breakpoint.c (break_range_command): Use sizeof char*, not
2887 (create_breakpoint): Likewise.
2888 (parse_breakpoint_sals): Likewise.
2892 * linux-nat.c (linux_child_remove_fork_catchpoint)
2893 (linux_child_remove_vfork_catchpoint)
2894 (linux_child_remove_exec_catchpoint): New functions.
2895 (linux_target_install_ops): Install them.
2901 * varobj.c (install_default_visualizer): Do not install a
2902 visualizer if the varobj is CPLUS_FAKE_CHILD.
2903 (construct_visualizer): Likewise.
2907 * symtab.c (expand_partial_symbol_name): New variable NCMP. Support
2908 case insensitive comparison.
2912 * infrun.c (proceed): Revert previous change.
2913 (resume): Instead, handle the case of signal delivery while stepping
2914 off a breakpoint location here, and only if software single-stepping
2915 is used. Handle nested signals.
2919 * arm-tdep.c (copy_unmodified): Rename to ...
2920 (arm_copy_unmodified): .. this. New.
2921 (copy_preload): Move common part to ...
2922 (install_preload): .. this. New.
2923 (arm_copy_preload): New.
2924 (copy_preload_reg): Move common part to ...
2925 (install_preload_reg): ... this. New.
2926 (arm_copy_preload_reg): New.
2927 (copy_b_bl_blx): Move common part to ...
2928 (install_b_bl_blx): .. this. New.
2929 (arm_copy_b_bl_blx): New.
2930 (copy_bx_blx_reg): Move common part to ...
2931 (install_bx_blx_reg): ... this. New.
2932 (arm_copy_bx_blx_reg): New.
2933 (copy_alu_reg): Move common part to ...
2934 (install_alu_reg): ... this. New.
2935 (arm_copy_alu_reg): New.
2936 (copy_alu_shifted_reg): Move common part to ...
2937 (install_alu_shifted_reg): ... this. New.
2938 (copy_ldr_str_ldrb_strb): Move common part to ...
2939 (install_ldr_str_ldrb_strb): ... this. New.
2940 (arm_copy_ldr_str_ldrb_strb): New.
2941 (copy_copro_load_store): Move some common part to ...
2942 (install_copy_copro_load_store): ... this. New.
2943 (arm_copy_copro_load_store): New.
2945 (arm_copy_svc): Renamed from copy_svc.
2946 (copy_undef): Delete.
2947 (arm_copy_undef): Renamed from copy_undef.
2948 (decode_ext_reg_ld_st): Delete.
2949 (arm_decode_ext_reg_ld_st): Renamed from decode_ext_reg_ld_st.
2950 (decode_svc_copro): Delete.
2951 (arm_decode_svc_copro): Renamed from decode_svc_copro.
2952 (copy_copro_load_store, copy_alu_imm): update callers.
2953 (copy_extra_ld_st, copy_block_xfer): Likewise.
2954 (decode_misc_memhint_neon, decode_unconditional): Likewise.
2955 (decode_miscellaneous, decode_dp_misc): Likewise.
2956 (decode_ld_st_word_ubyte, decode_media): Likewise.
2957 (decode_b_bl_ldmstm, decode_ext_reg_ld_st): Likewise.
2958 (decode_svc_copro, decode_misc_memhint_neon): Likewise.
2959 (decode_unconditional, decode_miscellaneous): Likewise.
2960 (decode_media, decode_b_bl_ldmstm): Likewise.
2961 (arm_process_displaced_insn): Likewise..
2962 (decode_misc_memhint_neon): Delete.
2963 (arm_decode_misc_memhint_neon): Renamed from decode_misc_memhint_neon.
2964 (decode_miscellaneous): Delete.
2965 (arm_decode_miscellaneous): Renamed from decode_miscellaneous.
2966 (decode_dp_misc): Delete.
2967 (arm_decode_dp_misc): Renamed from decode_dp_misc.
2968 (decode_ld_st_word_ubyte): Delete.
2969 (arm_decode_ld_st_word_ubyte): Renamed from decode_ld_st_word_ubyte.
2970 (decode_media): Delete.
2971 (arm_decode_media): Renamed from decode_media.
2972 (decode_b_bl_ldmstm): Delete.
2973 (arm_decode_b_bl_ldmstm): Renamed from decode_b_bl_ldmstm.
2974 (decode_ext_reg_ld_st): Delete.
2975 (arm_decode_ext_reg_ld_st): Renamed from decode_ext_reg_ld_st.
2976 (decode_unconditional): Delete.
2977 (arm_decode_unconditional): Renamed from decode_unconditional.
2981 Case insensitive lookups implementation.
2982 * dwarf2read.c: Include ctype.h.
2983 (struct mapped_index): New field version.
2984 (mapped_index_string_hash): New parameter index_version. New comment
2985 for it. Call tolower appropriately.
2986 (find_slot_in_mapped_hash): New variable cmp, initialize it, use it.
2987 Choose the right index version for mapped_index_string_hash.
2988 (dwarf2_read_index): Support also the index version 5. Initialize the
2989 new struct mapped_index field version.
2990 (hash_strtab_entry): Pass INT_MAX for the new parameter, explain why.
2991 (find_slot): Explain the version needs. Pass INT_MAX for the new
2993 (write_psymtabs_to_index): Produce version 5.
2994 * minsyms.c (lookup_minimal_symbol): New variable cmp, initialize it,
2995 use it. New comment for SYMBOL_MATCHES_SEARCH_NAME.
2996 * psymtab.c (lookup_partial_symbol): Find the
2997 SYMBOL_MATCHES_SEARCH_NAME start of the found block of matching
2999 * symtab.c (lookup_symbol_in_language): Remove the case_sensitive_off
3001 (search_symbols): Pass REG_ICASE to regcomp for case_sensitive_off.
3002 (completion_list_add_name): New variable ncmp, initialize it, use it.
3003 * symtab.h (SYMBOL_HASH_NEXT): Always call tolower.
3004 * utils.c (strcmp_iw): Support case_sensitive_off.
3005 (strcmp_iw_ordered): Sort in a way compatible with case_sensitive_off.
3006 New function comment part. New variables saved_string1,
3007 saved_string2 and case_pass. Add a proper second pass.
3011 Replace re_comp/re_exec by regcomp/regexec.
3012 * symtab.c (struct search_symbols_data): New fields preg, preg_p.
3013 (search_symbols_name_matches): Use them, use regexec.
3014 (search_symbols): New variable retval_chain, adjust the use of
3015 old_chain against it. Replace re_comp by regcomp. Use the new struct
3016 search_symbols_data fields, use regexec instead of re_exec.
3020 Format the code for the next patch.
3021 * dwarf2read.c (struct mapped_index): Include delimiting newlines.
3022 * utils.c (strcmp_iw_ordered): Reformat the code for the next patch.
3023 New variables c1 and c2.
3027 * infrun.c (proceed): Do not single-step into signal delivery
3028 when stepping off a breakpoint location.
3029 (insert_step_resume_breakpoint_at_frame): Move prototype earlier.
3030 (insert_step_resume_breakpoint_at_caller): Likewise.
3031 (insert_step_resume_breakpoint_at_sal): Likewise.
3032 (insert_longjmp_resume_breakpoint): Likewise.
3036 * common/linux-ptrace.h: Remove include <sys/wait.h>.
3040 * procfs.c (procfs_pass_signals): Fix advance declaration.
3044 * target.h (struct target_ops): Remove to_notice_signals;
3045 add to_pass_signals.
3046 (target_notice_signals): Remove.
3047 (target_pass_signals): Add prototype.
3048 * target.c (update_current_target): Remove to_notice_signals;
3049 mention to_pass_signals.
3050 (target_pass_signals): New function.
3051 (debug_to_notice_signals): Remove.
3052 (setup_target_debug): Do not install debug_to_notice_signals.
3054 * infrun.c (signal_pass): New global.
3055 (resume): Call target_pass_signals.
3056 (handle_inferior_event): Report all signals while stepping over
3057 non-steppable watchpoint. Reset trap_expected to ensure breakpoints
3058 are re-inserted when stepping over a signal handler.
3059 (signal_cache_update): New function.
3060 (signal_stop_update): Call it.
3061 (signal_print_update): Likewise.
3062 (signal_pass_update): Likewise.
3063 (handle_command): Call signal_cache_update and target_pass_signals
3064 instead of target_notice_signals.
3065 (_initialize_infrun): Initialize signal_pass.
3067 * linux-nat.c (pass_mask): New global.
3068 (linux_nat_pass_signals): New function.
3069 (linux_nat_create_inferior): Report all signals initially.
3070 (linux_nat_attach): Likewise.
3071 (linux_nat_resume): Use pass_mask to decide whether to directly
3072 handle an inferior signal.
3073 (linux_nat_wait_1): Likewise.
3074 (linux_nat_add_target): Install to_pass_signals callback.
3076 * nto-procfs.c (notice_signals): Remove.
3077 (procfs_resume): Do not call notice_signals.
3078 (procfs_notice_signals): Remove.
3079 (procfs_pass_signals): New function.
3080 (init_procfs_ops): Install to_pass_signals callback instead of
3081 to_notice_signals callback.
3082 (_initialize_procfs): Report all signals initially.
3084 * procfs.c (procfs_notice_signals): Remove.
3085 (procfs_pass_signals): New function.
3086 (procfs_target): Install to_pass_signals callback instead of
3087 to_notice_signals callback.
3088 (register_gdb_signals): Remove.
3089 (procfs_debug_inferior): Report all signals initially.
3090 (procfs_init_inferior): Remove redundant register_gdb_signals call.
3092 * remote.c (remote_pass_signals): Add numsigs and pass_signals
3093 parameters; use them instead of calling signal_..._state routines.
3094 (remote_notice_signals): Remove.
3095 (remote_start_remote): Report all signals initially.
3096 (remote_resume): Do not call remote_pass_signals.
3097 (_initialize_remote): Install to_pass_signals callback instead of
3098 to_notice_signals callback.
3102 * breakpoint.c (user_settable_breakpoint): Delete.
3103 (user_breakpoint_p): Remove check on user_settable_breakpoint.
3104 (delete_command): Check user_breakpoint_p instead of looking at
3105 the breakpoint's type.
3106 (disable_command): Ditto.
3107 (enable_command): Ditto.
3108 (delete_trace_command): Use user_breakpoint_p instead of looking
3109 at the breakpoint number directly. When checking if there are
3110 user visible tracepoints, in order to know whether to ask the user
3111 for confirmation, check whether the breakpoint is actually a
3116 * python/py-breakpoint.c (gdbpy_breakpoint_created): Fix
3121 MI breakpoint notifications.
3123 * annotate.c (breakpoint_changed): Adjust parameter type.
3124 * breakpoint.c (set_breakpoint_condition): Adjust to change
3125 in breakpoint_modified type.
3126 (breakpoint_set_commands): Likewise.
3127 (do_map_commands_command): Likewise.
3128 (bpstat_check_breakpoint_conditions): Notify that breakpoint has
3129 changed after bumping hit count.
3130 (bpstat_stop_status): Likewise.
3131 (print_one_breakpoint_location): Don't wrap in tuple here.
3132 (print_one_breakpoint): Always print individual locations.
3133 For locations, use unnamed tuple.
3134 (disable_breakpoints_in_unloaded_shlib): Notify that breakpoint
3136 (create_catchpoint, create_syscall_event_catchpoint): Call
3137 breakpoint_created obsever.
3138 (mention): Don't call breakpoint_created observer.
3139 (create_breakpoint_sal): Call breakpoint_created observer.
3140 (create_breakpoint, watch_command_1): Likewise.
3141 (create_ada_exception_breakpoint): Likewise.
3142 (delete_breakpoint): Call breakpoint_deleted breakpoint.
3143 (locations_are_equal): New.
3144 (update_breakpoint_locations): If locations were changed, notify.
3145 (set_ignore_count, disable_breakpoint, do_enable_breakpoint):
3146 Call breakpoint_modified observer.
3148 * mi/mi-cmd-break.c (breakpoint_notify): Adjust.
3149 (mi_cmd_break_insert): Don't set observers for modify and delete.
3150 * mi/mi-interp.c (mi_suppress_breakpoint_notifications): New.
3151 (mi_breakpoint_created, mi_breakpoint_deleted)
3152 (mi_breakpoint_modified): New.
3153 (mi_interpreter_init): Hook the above.
3154 * mi/mi-main.c (mi_cmd_execute): Disable breakpoint notifications
3155 while -break-* commands are executing.
3156 * mi/mi-main.h (mi_suppress_breakpoint_notifications): New.
3157 * mi/mi-out.c (struct ui_out_data): New field original_buffer.
3159 (mi_ui_out_impl): Hook in mi_redirect.
3160 (mi_field_skip): True to the name, skip the field, don't output
3161 a field with an empty value.
3163 * python/py-breakpoint.c (gdbpy_breakpoint_created)
3164 (gdbpy_breakpoint_deleted): Adjust.
3165 * tui/tui-hooks.c (tui_event_create_breakpoint)
3166 (tui_event_delete_breakpoint, tui_event_modify_breakpoint): Adjust.
3170 * nto-procfs.c (procfs_insert_hw_watchpoint): Fix prototype.
3171 (procfs_remove_hw_watchpoint): Likewise.
3175 * remote.c (remote_start_remote): Ack packet after sending the
3180 * linux-nat.c: Move common macros to ...
3181 Include linux-ptrace.h.
3182 * common/linux-ptrace.h: ... here. New.
3186 * elfread.c (elf_symfile_read): Protect dwarf2_initialize_objfile by
3187 !objfile_has_partial_symbols. New comment.
3188 * objfiles.c (objfile_has_partial_symbols): Call HAS_SYMBOLS if
3189 SYM_READ_PSYMBOLS is not present. Extend the comment.
3190 * symfile.h (struct sym_fns): Extend the sym_read_psymbols comment.
3194 * defs.h (ENUM_BITFIELD): Remove.
3199 * NEWS: Document the new gdbserver --once option.
3203 * MAINTAINERS: Update my email address.
3207 * gdb_wchar.h (USE_INTERMEDIATE_ENCODING_FUNCTION): New macro.
3208 (INTERMEDIATE_ENCODING): Change value to intermediate_encoding
3209 function call if __STDC_ISO_10646__ macro is defined.
3210 (intermediate_encoding): New prototype.
3211 * charset.c (your_gdb_wchar_t_is_bogus): New extern test variable
3212 to generate compile time error for unsupported gdb_wchar_t size.
3213 (ENDIAN_SUFFIX): New macro.
3214 (intermediate_encoding): New function.
3218 * ada-lang.c (struct add_partial_datum): Update the comment for
3219 expand_partial_symbol_name.
3220 (ada_add_partial_symbol_completions): Rename to ...
3221 (ada_expand_partial_symbol_name): ... here, change return type, update
3222 function comment, call symbol_completion_match instead of
3223 symbol_completion_add.
3224 (ada_make_symbol_completion_list): Use now expand_partial_symbol_names
3225 and ada_expand_partial_symbol_name.
3226 * dwarf2read.c (dw2_expand_symtabs_matching): Support NULL
3228 (dw2_map_symbol_names): Remove.
3229 (dwarf2_gdb_index_functions): Unlist dw2_map_symbol_names.
3230 * psymtab.c (map_symbol_names_psymtab): Remove.
3231 (expand_symtabs_matching_via_partial): Support NULL FILE_MATCHER.
3232 Support KIND == ALL_DOMAIN. Exchange the NAME_MATCHER and KIND check
3234 (psym_functions): Unlist map_symbol_names_psymtab.
3235 (map_partial_symbol_names): Rename to ...
3236 (expand_partial_symbol_names): ... here, change the FUN type, call
3237 expand_symtabs_matching with ALL_DOMAIN and NULL FILE_MATCHER now.
3238 * psymtab.h (map_partial_symbol_names): Rename to ...
3239 (expand_partial_symbol_names): ... here, change the FUN type.
3240 * symfile.h (struct quick_symbol_functions): Update the description of
3241 expand_symtabs_matching. Remove map_symbol_names.
3242 * symtab.c (search_symbols): Add ALL_DOMAIN to the function comment.
3243 (struct add_name_data): Update the comment for
3244 expand_partial_symbol_name.
3245 (add_partial_symbol_name): Rename to ...
3246 (expand_partial_symbol_name): ... here. Replace
3247 completion_list_add_name call by strncmp.
3248 (default_make_symbol_completion_list_break_on): Use now
3249 expand_partial_symbol_names and expand_partial_symbol_name.
3250 * symtab.h (enum search_domain): New element ALL_DOMAIN.
3254 * dwarf2read.c (save_gdb_index_command): Replace format
3255 documentation with a pointer to the manual.
3259 * regcache.c: Include remote.h.
3260 (enum regcache_dump_what) <regcache_dump_remote>: New enum value.
3261 (regcache_dump): Handle regcache_dump_remote.
3262 (maintenance_print_remote_registers): New function.
3263 (_initialize_regcache): Install "maint print remote-registers"
3265 * remote.c (map_regcache_remote_table): New function, factored out
3267 (init_remote_state): ... here.
3268 (remote_register_number_and_offset): New.
3269 * remote.h (remote_register_number_and_offset): Declare.
3273 * regcache.c (get_thread_arch_regcache): If creating a regcache for
3274 null_ptid, assume and allow a NULL address space, instead of
3275 asking the target for the ptid's address space.
3276 * infrun.c (ptid_is_pid): Remove assertion.
3280 * windows-tdep.c (windows_xfer_shared_library):
3281 * windows-nat.c (get_module_name, windows_make_so):
3282 * v850-tdep.c (v850_handle_pushm):
3283 * utils.c (null_cleanup, gdb_realpath):
3284 * ui-out.c (get_next_header):
3285 * tracepoint.c (clear_traceframe_info):
3286 * symtab.c (lookup_symtab):
3287 * serial.h (struct serial_ops):
3288 * mipsread.c (read_alphacoff_dynamic_symtab):
3289 * infcmd.c (print_return_value):
3290 * ia64-linux-tdep.c (ia64_linux_sigcontext_register_address):
3291 * f-exp.y (parse_number):
3292 * exceptions.c (catch_exceptions):
3293 * dummy-frame.c (dummy_frame_this_id):
3294 * defs.h (struct cleanup):
3295 * breakpoint.c (disable_breakpoints_in_unloaded_shlib):
3296 * arm-tdep.c (arm_push_dummy_call):
3297 * amd64-tdep.h (amd64_collect_xsave):
3298 * amd64-tdep.c (amd64_collect_xsave):
3299 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache):
3300 * README (typing): Remove duplicate words.
3301 * cli/cli-decode.c (lookup_cmd_composition): Add comma.
3302 * infrun.c (siginfo_value_read): Fix typo.
3303 * solib-frv.c (frv_fdpic_find_global_pointer): Likewise.
3304 * top.c (source_line_number): Add comma.
3308 * thread.c (any_live_thread_of_process): Prioritize threads
3309 that are not executing.
3310 * gdbthread.h (any_live_thread_of_process): Update comment
3311 as per above change.
3315 * xcoffread.c (process_xcoff_symbol): Remove useless cast.
3316 (scan_xcoff_symtab): Likewise.
3320 * xcoffread.c (process_xcoff_symbol): ARI fix: Avoid assignment
3326 * xstormy16-tdep.c (xstormy16_push_dummy_call): Add local
3327 variables to simplify code and avoid == operator at end of
3328 line as this is against GNU coding standards.
3332 * solib-svr4.c (svr4_keep_data_in_core): Rename local variable
3333 lm_name to name_lm to avoid conflict with lm_name function.
3337 ARI fixes: Use only lowercase function name for static functions.
3338 * nto-tdep.c (LM_ADDR): Rename to...
3339 (lm_addr): New function name.
3340 (nto_relocate_section_addresses): Adapt to change above.
3341 * solib-sunos.c (LM_ADDR): Rename to...
3342 (lm_addr): New function name.
3343 (LM_NEXT): Rename to...
3344 (lm_next): New function name.
3345 (sunos_current_sos, sunos_relocate_section_addresses): Adapt to
3346 function name changes above.
3347 * solib-svr4.c (LM_ADDR_FROM_LINK_MAP): Rename to...
3348 (lm_addr_from_link_map): New function name.
3349 (HAS_LM_DYNAMIC_FROM_LINK_MAP): Rename to...
3350 (has_lm_dynamic_from_link_map): New function name.
3351 (LM_DYNAMIC_FROM_LINK_MAP): Rename to...
3352 (lm_dynamic_from_link_map): New function name.
3353 (LM_ADDR_CHECK): Rename to...
3354 (lm_addr_check): New function name.
3355 (LM_NEXT): Rename to...
3356 (lm_next): New function name.
3357 (LM_PREV): Rename to...
3358 (lm_prev): New function name.
3359 (LM_NAME): Rename to...
3360 (lm_name): New function name.
3361 (IGNORE_FIRST_LINK_MAP_ENTRY): Rename to...
3362 (ignore_first_link_map_entry): New function name.
3363 (svr4_keep_data_in_core): Adapt to function name changes above.
3364 (svr4_current_sos): Likewise.
3365 (enable_break): Likewise.
3366 (svr4_relocate_section_addresses): Likewise.
3371 * xtensa-tdep.c (xtensa_register_type): Use xstrprintf instead of
3372 sprintf. Simplify code and avoid loosing memory.
3373 (xtensa_register_reggroup_p): Extract assignment out of IF clause.
3374 (call0_frame_cache): Remove && operator from end of line.
3378 Fix libraries displacement if they change whether they were prelinked.
3379 * solib-svr4.c (LM_ADDR_CHECK): Set L_ADDR even if the DYNAMIC pointer
3380 does not match. Comment why.
3384 * corelow.c: Include wrapper.h.
3385 (core_open): Call now gdb_target_find_new_threads.
3386 * wrapper.c: Include target.h.
3387 (gdb_target_find_new_threads): New.
3388 * wrapper.h (gdb_target_find_new_threads): New declaration.
3392 * linux-thread-db.c (find_new_threads_callback): Exit on zero TI_TID
3393 even if !TARGET_HAS_EXECUTION.
3397 Fix convert_code_addr_to_desc_addr for ppc64 files after eu-strip.
3398 * elfread.c (elf_symfile_read): New variable synth_abfd, pass it to
3399 bfd_get_synthetic_symtab.
3400 * jit.c (jit_register_code): Pass NULL to the new parameter parent.
3401 * machoread.c (macho_add_oso_symfile): Pass main_objfile to the new
3402 parameter parent, remove the call to add_separate_debug_objfile.
3403 * solib.c (solib_read_symbols): Pass NULL to the new parameter parent.
3404 * symfile-mem.c (symbol_file_add_from_memory): Likewise.
3405 * symfile.c (symbol_file_add_with_addrs_or_offsets): New parameter
3406 parent, new comment for it, call add_separate_debug_objfile for it.
3407 (symbol_file_add_separate): Pass objfile as the parameter parent,
3408 remove the call to add_separate_debug_objfile.
3409 (symbol_file_add_from_bfd): New parameter parent, pass it.
3410 (symbol_file_add): Pass NULL to the new parameter parent.
3411 * symfile.h (symbol_file_add_from_bfd): New parameter parent.
3415 * elfread.c (elf_symtab_read): Do not ignore .L symbols if they are
3420 Fix Python access to inlined frames.
3421 * python/py-frame.c (frapy_read_var): Find BLOCK using get_frame_block.
3422 * python/py-symbol.c (gdbpy_lookup_symbol): Likewise.
3426 * dwarf2read.c (add_index_entry): Use VEC_last, not VEC_length.
3430 * MAINTAINERS: Add myself to write-after-approval section.
3434 * remote-sim.c (sim_command_completer): New function.
3435 (_initialize_remote_sim): Set completer to sim_command_completer.
3439 * breakpoint.c (print_exception_catchpoint): Rename to ...
3440 (print_it_exception_catchpoint): ... this.
3441 (gnu_v3_exception_catchpoint_ops): Update with new name
3442 for print_it_exception_catchpoint.
3446 * MAINTAINERS: Add myself for write after approval privileges.
3450 * MAINTAINERS: Add myself as a write-after-approval maintainer.
3454 * breakpoint.c (watch_command_1): Remove colon from exp_string.
3458 * breakpoint.c (save_breakpoints): Verify whether
3459 breakpoint_ops.print_recreate is defined before calling it.
3463 Fix failure with --enable-maintainer-mode.
3464 * Makefile.in (aclocal_m4_deps): Updated gnulib dependencies.
3469 * symtab.c (search_symbols): Reorder the KIND description in the
3470 function comment. Remove the unused 4th element of types, types2,
3471 types3 and types4. New gdb_assert on KIND.
3472 (symtab_symbol_info): Remove the unused 4th element of classnames.
3473 New gdb_assert on KIND.
3474 * symtab.h (enum search_domain): New warning in the enum comment.
3475 Assign numbers to the elements VARIABLES_DOMAIN, FUNCTIONS_DOMAIN and
3480 Fix crash of gdb save-index on a STABS file.
3481 * dwarf2read.c (write_psymtabs_to_index): Return also on no
3486 Fix DW_AT_accessibility compatibility with gcc-4.6+.
3487 * dwarf2read.c: Include ctype.h.
3488 (producer_is_gxx_lt_4_6, dwarf2_default_access_attribute): New
3490 (dwarf2_add_field): Fix new_field->accessibility by calling
3491 dwarf2_default_access_attribute. Restructure setting accessibility
3493 (dwarf2_add_member_fn): New variable accessibility. Fix fnp
3494 is_private and is_protected by calling
3495 dwarf2_default_access_attribute.
3499 * rx-tdep.c (rx_frame_unwind): Add default_frame_unwind_stop_reason
3500 to the initialization.
3504 * Add default_frame_unwind_stop_reason value to libunwind_frame_unwind
3509 Remove support for old Cygwin 1.5 versions.
3510 * remote-fileio.c: Remove macros used to emulate new cygwin_conv_path
3511 function on old Cygwin version.
3512 * windows-nat.c: Remove cygwin version check and always define
3513 __USEWIDE for Cygwin compilation.
3517 * arm-linux-tdep.c (arm_linux_copy_svc): Remove parameters INSN
3519 * arm-tdep.c (cleanup_svc): Handle variable instruction size.
3520 (arm_copy_svc): Remove parameters INSN and TO.
3521 (decode_svc_copro): Update caller.
3522 * arm-tdep.h (struct displaced_step_closure): Remove parameters
3523 from function pointer `copy_svc_os'.
3527 * arm-tdep.c (cleanup_branch): Set a correct return address in
3528 LR for ARM and Thumb.
3533 * dictionary.c (dict_hash): Use SYMBOL_HASH_NEXT.
3534 * dwarf2read.c (mapped_index_string_hash): Refer to SYMBOL_HASH_NEXT
3535 in the function comment, a new note on values compatibility.
3536 * minsyms.c (msymbol_hash_iw, msymbol_hash): Use SYMBOL_HASH_NEXT.
3537 * symtab.h (SYMBOL_HASH_NEXT): New.
3541 * ppc-linux-nat.c (check_condition): Add len output parameter.
3542 Set it based on the memory region referenced in the condition
3543 expression. Update all callers.
3547 Fix crash regression on systems featuring .gdb_index.
3548 * objfiles.c (free_objfile): Move the
3549 forget_cached_source_info_for_objfile call earlier. Comment it.
3550 Extend the comment for objfile_free_data.
3554 Fix regression of displaying the debug format.
3555 * buildsym.c (end_symtab): Set symtab's debugformat and producer from
3560 * cli/cli-interp.c (struct captured_execute_command_args):
3562 (do_captured_execute_command): Remove.
3563 (safe_execute_command): Use TRY_CATCH.
3564 * cli/cli-script.c (struct wrapped_read_command_file_args):
3566 (wrapped_read_command_file): Remove.
3567 (script_from_file): Use TRY_CATCH.
3568 * exceptions.c (catch_exception): Remove.
3569 * exceptions.h (catch_exception): Remove.
3570 (deprecated_throw_reason): Update comment.
3571 * mi/mi-main.c (captured_mi_execute_command): Change 'data'
3572 argument to 'context'.
3573 (mi_execute_command): Use TRY_CATCH.
3574 * remote.c (struct start_remote_args): Remove.
3575 (remote_start_remote): Update; change arguments.
3576 (remote_open_1): Use TRY_CATCH.
3580 * tracepoint.c (scope_info): Update.
3581 * symtab.c (decode_line_spec): Update.
3582 * python/python.c (gdbpy_decode_line): Update.
3583 * linespec.h (decode_line_1): Update.
3584 * linespec.c (decode_line_1): Remove 'not_found_ptr' argument.
3585 (decode_compound, find_method, symtab_from_filename)
3586 (decode_variable): Likewise.
3587 * cli/cli-cmds.c (edit_command): Update.
3588 (list_command): Update.
3589 * breakpoint.c (parse_breakpoint_sals): Remove 'not_found_ptr'
3591 (create_breakpoint): Update.
3592 (until_break_command): Update.
3593 (addr_string_to_sals): Update.
3594 (decode_line_spec_1): Update.
3598 * breakpoint.c (struct captured_parse_breakpoint_args): Remove.
3599 (do_captured_parse_breakpoint): Remove.
3600 (create_breakpoint): `e' is now volatile. Remove `parse_args'.
3601 Use TRY_CATCH directly.
3605 * symtab.h (free_symtab): Remove.
3606 (forget_cached_source_info_for_objfile): Declare.
3607 * symmisc.c (free_symtab): Remove.
3608 * source.c (forget_cached_source_info_for_objfile): New function.
3609 (forget_cached_source_info): Use it.
3610 * objfiles.c (free_objfile): Simplify check before calling
3611 clear_current_source_symtab_and_line. Call
3612 forget_cached_source_info_for_objfile.
3616 * mdebugread.c (psymtab_to_symtab_1): Copy linetable to obstack.
3617 (new_symtab): Don't set `free_code' on symtab.
3618 (new_linetable): Properly handle size==0.
3619 * symtab.h (struct symtab) <free_code, free_func>: Remove.
3620 * symmisc.c (free_symtab): Don't free the linetable. Don't call
3622 * jv-lang.c (struct jv_per_objfile_data): New.
3623 (jv_per_objfile_free): Free the data.
3624 (get_dynamics_objfile): Allocate a jv_per_objfile_data.
3625 (get_java_class_symtab): Set the `dict' field on the
3626 jv_per_objfile_data.
3627 (free_class_block): Remove.
3628 * buildsym.c (end_symtab): Don't set `free_code' or `free_func' on
3633 * symfile.c (reread_symbols): Update.
3634 * objfiles.h (struct objfile) <cp_namespace_symtab>: Remove
3636 * objfiles.c (allocate_objfile): Update.
3637 * cp-support.h (cp_check_possible_namespace_symbols): Don't
3639 * cp-namespace.c (lookup_symbol_file): Don't call
3640 lookup_possible_namespace_symbol.
3641 (initialize_namespace_symtab, get_possible_namespace_block)
3642 (free_namespace_block, cp_check_possible_namespace_symbols)
3643 (check_possible_namespace_symbols_loop)
3644 (check_one_possible_namespace_symbol)
3645 (lookup_possible_namespace_symbol): Remove.
3646 (maintenance_cplus_namespace): Replace with notice.
3647 (_initialize_cp_namespace): Deprecate `maint cplus namespace'.
3651 * xcoffread.c (read_xcoff_symtab): Make `debugfmt' const.
3652 * symtab.h (struct symtab) <producer, debugformat>: Now const.
3653 * symmisc.c (free_symtab): Don't free debugformat.
3654 * buildsym.h (struct subfile) <producer, debugformat>: Now const.
3655 (record_debugformat, record_producer): Document.
3656 * buildsym.c (end_symtab): Don't save debugformat and producer
3658 (end_symtab): Don't free debugformat and producer fields.
3659 (record_debugformat): Don't call xstrdup.
3660 (record_producer): Likewise.
3664 * source.c (find_source_lines): Remove LSEEK_NOT_LINEAR code.
3665 (source_line_charpos, source_charpos_line): Remove.
3669 * symtab.h (domain_enum): Split in two...
3670 (enum search_domain): New.
3671 (search_symbols): Update.
3672 * symtab.c (print_symbol_info, symtab_symbol_info): Remove
3673 redundant declarations.
3674 (search_symbols): Change 'kind' argument to search_domain.
3676 (print_symbol_info): Likewise.
3677 (symtab_symbol_info): Likewise.
3678 * symfile.h (struct quick_symbol_functions)
3679 <pre_expand_symtabs_matching>: Change type of 'kind' argument.
3680 <expand_symtabs_matching>: Likewise.
3681 * psymtab.c (pre_expand_symtabs_matching_psymtabs): Update.
3682 (expand_symtabs_matching_via_partial): Update.
3683 * dwarf2read.c (dw2_pre_expand_symtabs_matching): Update.
3684 (dw2_expand_symtabs_for_function): Update.
3685 * block.h: Moved anonymous enum...
3686 * defs.h (enum block_enum): ... here. Now named.
3690 GDB 7.3 branch created (branch timestamp: 2011-04-01 01:00 UTC)
3691 * version.in: Bump version to 7.3.50.20110403-cvs.
3695 * NEWS: Create a new section for the next release branch.
3696 Rename the section of the current branch, now that it has
3701 * arm-tdep.c (arm_gdbarch_init): Enfore correct register number
3702 for "fpscr" in target description.
3706 * dwarf2read.c (find_slot_in_mapped_hash): New variable back_to,
3707 initialize it. Delay HASH initialization. Strip the part after open
3708 parenthesis for languages with qualifiers. Call do_cleanups.
3712 * utils.c (report_command_stats): Don't print `-' for negative
3717 * ada-lang.c (ada_is_simple_array_type, ada_value_slice_from_ptr)
3718 (ada_value_slice, empty_array, to_fixed_array_type): Deal with
3723 * breakpoint.h (bpdisp_text): Add declaration.
3724 * breakpoint.c (bpdisp_text): Make non-static.
3725 * ada-lang.c: #include "mi/mi-common.h".
3726 (print_it_exception): Rewrite to improve GDB/MI output.
3730 * arm-tdep.h (struct address_space): Add forward declaration.
3734 * arm-tdep.h (arm_insert_single_step_breakpoint): Add prototype.
3735 * arm-tdep.c (arm_override_mode): New global.
3736 (arm_pc_is_thumb): Respect arm_override_mode. Remove single-step
3737 execution mode heuristics.
3738 (thumb_get_next_pc_raw): Remove INSERT_BKTP argument; always insert
3739 second single-step breakpoint if needed, using
3740 arm_insert_single_step_breakpoint.
3741 (arm_get_next_pc_raw): Remove INSERT_BKTP argument. Only handle
3742 ARM execution mode, do not call thumb_get_next_pc_raw.
3743 (arm_get_next_pc): Encode execution mode in return value. Call
3744 either arm_get_next_pc_raw or thumb_get_next_pc_raw.
3745 (arm_insert_single_step_breakpoint): New function.
3746 (arm_software_single_step): Call it.
3747 * arm-linux-tdep.c (arm_linux_sigreturn_return_addr): Add IS_THUMB
3748 argument to return execution mode of sigreturn target.
3749 (arm_linux_syscall_next_pc): Use it.
3750 (arm_linux_copy_svc): Update call.
3751 (arm_linux_software_single_step): Call
3752 arm_insert_single_step_breakpoint.
3756 * dwarf2read.c (dwarf2_read_index): Fix .gdb_index version number in
3761 * varobj.c (update_dynamic_varobj_children): Properly handle
3762 errors from iterator.
3766 * dwarf2read.c (dwarf2_name): Initialize DEMANGLED. Avoid demangling
3767 struct linkage name twice.
3771 * python/py-prettyprint.c (print_stack_unless_memory_error): Add
3772 missing ">" to message.
3776 * varobj.c (instantiate_pretty_printer): Remove duplicate
3781 * i386-tdep.c (i386_frame_prev_register): Unwind SP from memory
3782 if neither saved value nor register available (e.g. signal frame).
3786 * macroexp.c (expand): Avoid uninitialized variable
3791 * breakpoint.c (break_range_command): Fix typo in comment.
3796 Implement support for PowerPC BookE ranged breakpoints.
3797 * NEWS: Mention support for ranged breakpoints on embedded PowerPC.
3798 * breakpoint.h (struct bp_target_info) <length>: New member
3800 (struct breakpoint_ops) <breakpoint_hit>: Take struct bp_location
3801 instead of struct breakpoint as argument, and also add ASPACE
3802 and BP_ADDR arguments. Update all callers.
3803 (struct breakpoint_ops) <print_one_detail>: New method.
3804 (struct breakpoint) <addr_string_range_end>: New member variable.
3805 * breakpoint.c (breakpoint_location_address_match): Add function
3807 (insert_bp_location): Set bl->target_info.length.
3808 (breakpoint_here_p): Call breakpoint_location_address_match.
3809 (moribund_breakpoint_here_p): Likewise.
3810 (regular_breakpoint_inserted_here_p): Likewise.
3811 (breakpoint_thread_match): Likewise.
3812 (bpstat_stop_status): Likewise.
3813 (bpstat_check_location): Move call to
3814 breakpoint_ops.breakpoint_hit to the top.
3815 (print_one_breakpoint_location): Call
3816 breakpoint_ops.print_one_detail if available.
3817 (breakpoint_address_match_range): New function.
3818 (breakpoint_location_address_match): Likewise.
3819 (breakpoint_locations_match): Compare the length field of the
3821 (hw_breakpoint_used_count): Count resources used by all locations
3822 in a breakpoint, and use breakpoint_ops.resources_needed if
3824 (breakpoint_hit_ranged_breakpoint): New function.
3825 (resources_needed_ranged_breakpoint): Likewise.
3826 (print_it_ranged_breakpoint): Likewise.
3827 (print_one_ranged_breakpoint): Likewise.
3828 (print_one_detail_ranged_breakpoint): Likewise.
3829 (print_mention_ranged_breakpoint): Likewise.
3830 (print_recreate_ranged_breakpoint): Likewise.
3831 (ranged_breakpoint_ops): New structure.
3832 (find_breakpoint_range_end): New function.
3833 (break_range_command): Likewise.
3834 (delete_breakpoint): Free addr_string_range_end.
3835 (update_breakpoint_locations): Add SALS_END argument. Update
3836 all callers. Calculate breakpoint length if a non-zero SALS_END
3837 is given. Call breakpoint_locations_match instead of
3838 breakpoint_address_match.
3839 (reset_breakpoint): Find SaL of the end of the range if B is a
3841 (_initialize_breakpoint): Register break-range command.
3842 * defs.h (print_core_address): Add function prototype.
3843 * ppc-linux-nat.c (ppc_linux_ranged_break_num_registers): New
3845 (ppc_linux_insert_hw_breakpoint): Support ranged breakpoints.
3846 (ppc_linux_remove_hw_breakpoint): Likewise.
3847 (_initialize_ppc_linux_nat): Initialize
3848 to_ranged_break_num_registers.
3849 * target.c (update_current_target): Add comment about
3850 to_ranged_break_num_registers.
3851 (target_ranged_break_num_registers): New function.
3852 * target.h (struct target_ops) <to_ranged_break_num_registers>:
3854 (target_ranged_break_num_registers): Add function prototype.
3855 * ui-out.c (ui_out_field_core_addr): Move address-printing logic to ...
3856 * utils.c (print_core_address): ... here.
3860 * breakpoint.c (addr_string_to_sals): Avoid uninitialized
3861 variable compiler warning.
3865 * breakpoint.c (breakpoint_re_set_one): Factor out breakpoint-resetting
3867 (re_set_breakpoint): ... to here ...
3868 (addr_string_to_sals): ... and here.
3872 * Makefile.in (SFILES): Add missing C sources.
3873 (HFILES_NO_SRCDIR): Remove gdbserver subdirectory headers.
3874 Add missing headers.
3878 * .gitignore: New file.
3882 * NEWS: Mention new cfi device simulation.
3886 * dwarf2read.c (fixup_partial_die): Handle linkage name on
3887 otherwise anonymous types.
3888 (dwarf2_name): Likewise.
3889 * valops.c (value_struct_elt_for_reference): Refine artificial
3890 type logic. Call error if j==-1.
3894 Fix false GCC warning.
3895 * infcall.c (find_function_addr): Initialize funaddr.
3899 Fix mingw compilation with --enable-targets=all.
3900 * remote-mips.c (gdb_usleep.h): Include header.
3901 (mips_enter_debug): Use gdb_usleep instead of sleep.
3905 Support resolution of STT_GNU_IFUNC via breakpoints.
3906 * breakpoint.c (print_it_typical): Support bp_gnu_ifunc_resolver and
3907 bp_gnu_ifunc_resolver_return.
3908 (bpstat_what): Rename parameter to bs_head, new variable bs, adjust
3909 the loop. Support bp_gnu_ifunc_resolver and
3910 bp_gnu_ifunc_resolver_return. New comment after the loop. New loop
3911 for bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return
3913 (bptype_string, print_one_breakpoint_location): Support
3914 bp_gnu_ifunc_resolver and bp_gnu_ifunc_resolver_return.
3915 (user_settable_breakpoint): Return true also for
3916 bp_gnu_ifunc_resolver.
3917 (allocate_bp_location): Support bp_gnu_ifunc_resolver and
3918 bp_gnu_ifunc_resolver_return.
3919 (set_breakpoint_location_function): New parameter explicit_loc,
3920 describe it. Call find_pc_partial_function_gnu_ifunc with new
3921 variable IS_GNU_IFUNC and adjust the address for STT_GNU_IFUNC if
3922 EXPLICIT_LOC is not set.
3923 (set_raw_breakpoint): Set EXPLICIT_LOC for
3924 set_breakpoint_location_function.
3925 (clone_momentary_breakpoint): Use true for EXPLICIT_LOC of
3926 set_breakpoint_location_function.
3927 (mention): Support bp_gnu_ifunc_resolver and
3928 bp_gnu_ifunc_resolver_return.
3929 (add_location_to_breakpoint): Set EXPLICIT_LOC for
3930 set_breakpoint_location_function.
3931 (update_breakpoint_locations): Remove static.
3932 (breakpoint_re_set_one): Support bp_gnu_ifunc_resolver and
3933 bp_gnu_ifunc_resolver_return.
3934 * breakpoint.h (enum bptype): New fields bp_gnu_ifunc_resolver and
3935 bp_gnu_ifunc_resolver_return.
3936 (update_breakpoint_locations): New declaration.
3937 * elfread.c: Include gdbthread.h and regcache.h.
3938 (elf_gnu_ifunc_resolver_stop, elf_gnu_ifunc_resolver_return_stop): New
3940 (elf_gnu_ifunc_fns): Install them.
3941 * minsyms.c (stub_gnu_ifunc_resolver_stop)
3942 (stub_gnu_ifunc_resolver_return_stop): New functions.
3943 (stub_gnu_ifunc_fns): Install them.
3944 * symtab.h (struct gnu_ifunc_fns): New fields gnu_ifunc_resolver_stop
3945 and gnu_ifunc_resolver_return_stop.
3946 (gnu_ifunc_resolver_stop, gnu_ifunc_resolver_return_stop): New.
3950 STT_GNU_IFUNC reader implementation.
3951 * elfread.c: Include gdbtypes.h, value.h and infcall.h.
3952 (SYMBOL_GOT_PLT_SUFFIX, elf_rel_plt_read)
3953 (elf_objfile_gnu_ifunc_cache_data, struct elf_gnu_ifunc_cache)
3954 (elf_gnu_ifunc_cache_hash, elf_gnu_ifunc_cache_eq)
3955 (elf_gnu_ifunc_record_cache, elf_gnu_ifunc_resolve_by_cache)
3956 (elf_gnu_ifunc_resolve_by_got, elf_gnu_ifunc_resolve_name)
3957 (elf_gnu_ifunc_resolve_addr): New.
3958 (elf_symfile_read): Call elf_rel_plt_read.
3959 (elf_gnu_ifunc_fns): New.
3960 (_initialize_elfread): Initialize elf_objfile_gnu_ifunc_cache_data.
3961 Install elf_gnu_ifunc_fns.
3962 * infcall.c (find_function_return_type): New function.
3963 (find_function_addr): Resolve TYPE_GNU_IFUNC functions, if possible.
3964 * minsyms.c (stub_gnu_ifunc_resolve_addr)
3965 (stub_gnu_ifunc_resolve_name): New functions.
3966 (stub_gnu_ifunc_fns, gnu_ifunc_fns_p): New variables.
3967 * symtab.h (struct gnu_ifunc_fns, gnu_ifunc_resolve_addr)
3968 (gnu_ifunc_resolve_name, gnu_ifunc_fns_p): New.
3972 Code cleanup for later STT_GNU_IFUNC support.
3973 * infcall.c (find_function_addr): Remove variable code, use explicit
3974 dereferences for it. Move VALUE_TYPE initialization later.
3978 GDB find_pc_partial_function support for STT_GNU_IFUNC.
3979 * blockframe.c (cache_pc_function_is_gnu_ifunc): New variable.
3980 (clear_pc_function_cache): Clear it.
3981 (find_pc_partial_function): Rename to ...
3982 (find_pc_partial_function_gnu_ifunc): ... this function. New
3983 parameter is_gnu_ifunc_p, describe it. Set *IS_GNU_IFUNC_P.
3984 (find_pc_partial_function): New wrapper for this function.
3985 * symtab.h (find_pc_partial_function_gnu_ifunc): New declaration.
3989 GDB internal type support for STT_GNU_IFUNC.
3990 * elfread.c (record_minimal_symbol): Support mst_text_gnu_ifunc.
3991 (elf_symtab_read): Set mst_text_gnu_ifunc for
3992 BSF_GNU_INDIRECT_FUNCTION.
3993 * eval.c (evaluate_subexp_standard): Support TYPE_GNU_IFUNC.
3994 * gdbtypes.c (init_type): Support TYPE_FLAG_GNU_IFUNC,
3995 builtin_func_func, nodebug_text_gnu_ifunc_symbol and
3996 nodebug_got_plt_symbol.
3997 * gdbtypes.h (enum type_flag_value): New entry TYPE_FLAG_GNU_IFUNC.
3998 (TYPE_GNU_IFUNC): New.
3999 (struct main_type): New field flag_gnu_ifunc.
4000 (struct builtin_type): New field builtin_func_func.
4001 (struct objfile_type): New fields nodebug_text_gnu_ifunc_symbol and
4002 nodebug_got_plt_symbol.
4003 * minsyms.c (lookup_minimal_symbol_text): Support mst_text_gnu_ifunc.
4004 (in_gnu_ifunc_stub): New.
4005 (prim_record_minimal_symbol, find_solib_trampoline_target): Support
4007 * parse.c (write_exp_msymbol): New variable ifunc_msym. Detect and
4008 support mst_text_gnu_ifunc. Support mst_slot_got_plt.
4009 * solib-svr4.c (svr4_in_dynsym_resolve_code): Return true also for
4011 * symmisc.c (dump_msymbols): Support mst_text_gnu_ifunc.
4012 * symtab.c (search_symbols): Likewise.
4013 * symtab.h (enum minimal_symbol_type): New fields mst_text_gnu_ifunc
4014 and mst_slot_got_plt.
4015 (in_gnu_ifunc_stub): New declaration.
4019 Support a ring of related breakpoints.
4020 * breakpoint.c (watchpoint_del_at_next_stop): New, move here code from
4021 other functions, add gdb_assert.
4022 (update_watchpoint, watchpoint_check): Add gdb_assert. Use
4023 watchpoint_del_at_next_stop.
4024 (bpstat_check_watchpoint): Use watchpoint_del_at_next_stop.
4025 (bpstat_stop_status): Handle ring in related_breakpoint.
4026 (set_raw_breakpoint_without_location): Initialize ring in
4028 (delete_breakpoint): Handle ring in related_breakpoint, use
4029 watchpoint_del_at_next_stop.
4030 (map_breakpoint_numbers): Handle ring in related_breakpoint.
4035 * dwarf2read.c (prepare_one_comp_unit): Don't call set_cu_language
4036 with `language_minimal'.
4040 * arm-tdep.c (arm_elf_make_msymbol_special): Use ARM_SYM_BRANCH_TYPE
4041 instead of checking for STT_ARM_TFUNC symbol type.
4045 * linespec.c (symbol_found): Restore line-based result for
4046 non-LOC_LABEL symbols.
4050 * tui/tui-source.c (tui_set_source_content): Use filename_cmp
4051 instead of strcmp for comparison.
4052 (tui_source_is_displayed): Likewise.
4053 * tui/tui-winsource.c (tui_update_breakpoint_info): Likewise.
4057 * dwarf2read.c (lookup_signatured_type): Use DW_FORM_ref_sig8 in
4059 (skip_one_die): Use DW_FORM_ref_sig8, not DW_FORM_sig8.
4060 (find_partial_die_in_comp_unit): Likewise in comment.
4061 (read_attribute_value): Likewise.
4062 (lookup_die_type): Likewise.
4063 (dwarf_form_name): Likewise.
4064 (dump_die_shallow): Likewise.
4065 (follow_die_ref_or_sig): Likewise.
4069 PR breakpoints/11816:
4070 * linespec.c (decode_line_1): Parse `function:label' linespecs.
4071 (decode_compound): Update.
4072 (find_function_symbol): New function.
4073 (decode_dollar): Update.
4074 (decode_label): Add 'function_symbol' parameter. Handle
4075 function-relative labels.
4076 (decode_variable): Update.
4077 (symbol_found): Add 'function_symbol' parameter. Use label's PC,
4078 not its line. Set `special_display' and canonical name for
4083 * linespec.h (struct linespec_result) <special_display>: New
4085 * breakpoint.h (struct breakpoint) <display_canonical>: New
4087 * breakpoint.c (print_breakpoint_location): Respect
4089 (create_breakpoint_sal): Add 'display_canonical' parameter.
4090 (create_breakpoints_sal): Update.
4091 (create_breakpoint): Update.
4095 * symtab.c (decode_line_spec): Update.
4096 * linespec.c (build_canonical_line_spec): Change type of
4098 (decode_line_2, decode_line_1, decode_objc, decode_compound)
4099 (find_method, decode_all_digits, decode_dollar, decode_label)
4100 (symbol_found): Likewise.
4101 (init_linespec_result): New function.
4102 * breakpoint.c (struct captured_parse_breakpoint_args)
4103 <canonical_p>: New field, replaces addr_string_p.
4104 (create_breakpoints_sal): Add 'canonical' parameter, replacing
4106 (parse_breakpoint_sals): Likewise.
4107 (do_captured_parse_breakpoint): Update.
4108 (create_breakpoint): Use struct linespec_result.
4109 (until_break_command): Update.
4110 (breakpoint_re_set_one): Update.
4111 (decode_line_spec_1): Update.
4112 * linespec.h (struct linespec_result): New.
4113 (init_linespec_result): Declare.
4117 * regcache.c (regcache_raw_read): If the target didn't supply a
4118 given raw register, mark it as unavailable.
4122 * breakpoint.c (clear_command): Use filename_cmp
4123 instead of strcmp for comparison.
4124 * buildsym.c (watch_main_source_file_lossage): Likewise.
4125 (patch_subfile_names): Use IS_DIR_SEPARATOR instead of
4126 checking just for slash.
4127 * dbxread.c (read_dbx_symtab): Use lbasename instead of
4128 strrchr and filename_cmp instead of strcmp for filenames.
4129 (add_old_header_file): Use filename_cmp
4130 instead of strcmp for comparison.
4131 * exec.c (exec_set_section_address): Likewise.
4132 * macrotab.c (macro_lookup_inclusion): Likewise.
4133 (macro_lookup_inclusion): Likewise.
4134 * elfread.c (_initialize_elfread): Likewise.
4135 (elfstab_offset_sections): Likewise.
4136 (elfstab_offset_sections): Use lbasename instead of
4138 * mdebugread.c (parse_partial_symbols): Likewise.
4139 (arse_partial_symbols): Use filename_(n)cmp instead of
4140 str(n)cmp for comparison.
4141 * minsyms.c (lookup_minimal_symbol): Likewise.
4142 * psymtab.c (read_psymtabs_with_filename): Likewise.
4143 * solib.c (solib_read_symbols): Likewise.
4144 (reload_shared_libraries_1): Likewise.
4145 * symmisc.c (maintenance_print_symbols): Likewise.
4146 * symfile.c (separate_debug_file_exists): Likewise.
4147 (reread_symbols): Likewise.
4148 (find_separate_debug_file_by_debuglink): Likewise.
4149 * remote-fileio.c (remote_fileio_func_rename): Likewise.
4150 * source.c (add_path): Likewise.
4151 * symtab.c (filename_seen): Likewise.
4152 (file_matches): Likewise.
4153 (print_symbol_info): Likewise.
4154 (maybe_add_partial_symtab_filename): Likewise.
4155 (make_source_files_completion_list): Likewise.
4156 * xml-syscall.c (init_sysinfo): Likewise.
4157 * windows-nat.c (_initialize_check_for_gdb_ini): Use
4158 IS_DIR_SEPARATOR for checking for trailing path separator.
4162 * dwarf2expr.c (execute_stack_op): Handle DW_OP_GNU_entry_value. New
4163 label abort_expression.
4164 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Handle
4165 DWARF_VALUE_OPTIMIZED_OUT.
4170 * c-typeprint.c (c_type_print_args): Change parameter show_artificial
4171 to linkage_name. Invert its value. Update the function comment.
4172 (c_type_print_varspec_suffix): Invert it at the caller.
4173 * dwarf2read.c (dwarf2_compute_name): Invert it at the caller.
4177 * infcmd.c (post_create_inferior): Ignore NOT_AVAILABLE_ERROR
4178 errors when reading the `stop_pc'.
4179 * printcmd.c (pc_prefix): Use get_frame_pc_if_available instead of
4184 * NEWS: Document gdb.Write stream keyword.
4190 * dwarf2read.c (producer_is_gxx_lt_4_6): New function.
4191 (dwarf2_add_field): Fix new_field->accessibility for
4192 cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
4198 * python/py-function.c (fnpy_call): Treat GdbErrors differently to
4199 other error classes. Do not print stack trace.
4203 * dwarf2read.c (producer_is_gxx_lt_4_6): New function.
4204 (dwarf2_add_field): Fix new_field->accessibility for
4205 cu->header.version >= 3 while verifying also producer_is_gxx_lt_4_6.
4209 * arm-tdep.c (arm_analyze_prologue): Do not abort parsing when
4210 encountering a load via a non-SP register.
4214 * tramp-frame.c (tramp_frame_prepend_unwinder): Set stop_reason
4215 field in returned unwinder.
4219 * ada-lang.c (replace_operator_with_call): Copy also GDBARCH.
4223 * ada-lang.c (replace_operator_with_call): Use xzalloc instead
4228 * frame.c (frame_unwind_register): Throw an error if unwinding the
4230 * get_prev_frame_1 (get_prev_frame_1): Ask the unwinder if there's
4231 an unwind stop reason.
4232 (frame_stop_reason_string): Handle UNWIND_UNAVAILABLE.
4233 * frame.h (enum unwind_stop_reason) <UNWIND_OUTERMOST,
4234 UNWIND_UNAVAILABLE>: New.
4235 * inline-frame.c (inline_frame_unwind): Install
4236 default_frame_unwind_stop_reason.
4237 * frame-unwind.c: Include "exceptions.h".
4238 (frame_unwind_find_by_frame): Swallow NOT_AVAILABLE_ERROR errors.
4239 (default_frame_unwind_stop_reason): New.
4240 * frame-unwind.h (frame_unwind_stop_reason_ftype): New typedef.
4241 (default_frame_unwind_stop_reason): Declare.
4242 (struct frame_unwind) <stop_reason>: New function pointer.
4244 * dummy-frame.c: Install default_frame_unwind_stop_reason.
4245 * dwarf2-frame.c: Include exceptions.h.
4246 (struct dwarf2_frame_cache) <unavailable_retaddr>: New field.
4247 (dwarf2_frame_cache): Swallow NOT_AVAILABLE_ERROR errors when
4248 computing the CFA. If such an error was thrown, set
4249 unavailable_retaddr.
4250 (dwarf2_frame_unwind_stop_reason): New.
4251 (dwarf2_frame_this_id): Don't build a frame id if the CFA was
4253 (dwarf2_frame_unwind): Install dwarf2_frame_unwind_stop_reason.
4254 (dwarf2_signal_frame_unwind): Ditto.
4256 * amd64-tdep.c: Include "exceptions.h".
4257 (struct amd64_frame_cache): New field "base_p".
4258 (amd64_init_frame_cache): Clear it.
4259 (amd64_frame_cache_1): New, factored out from amd64_frame_cache.
4260 Avoid reading registers with functions that throw if the register
4261 is not necessary to compute the frame base.
4262 (amd64_frame_cache): Reimplement wrapping amd64_frame_cache_1, and
4263 swallowing NOT_AVAILABLE_ERROR.
4264 (amd64_frame_unwind_stop_reason): New.
4265 (amd64_frame_this_id): Don't build a frame id if the frame base
4267 (amd64_frame_unwind): Install amd64_frame_unwind_stop_reason.
4268 (amd64_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
4269 base_p if the frame base was computable.
4270 (amd64_sigtramp_frame_unwind_stop_reason): New.
4271 (amd64_sigtramp_frame_this_id): Don't build a frame id if the
4272 frame base was unavailable.
4273 (amd64_sigtramp_frame_unwind): Install
4274 amd64_sigtramp_frame_unwind_stop_reason.
4275 (amd64_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
4276 base_p if the frame base was computable.
4277 (amd64_epilogue_frame_unwind_stop_reason): New.
4278 (amd64_epilogue_frame_this_id): Don't build a frame id if the
4279 frame base was unavailable.
4280 (amd64_epilogue_frame_unwind): Install
4281 amd64_epilogue_frame_unwind_stop_reason.
4282 * i386-tdep.c: Include "exceptions.h".
4283 (struct i386_frame_cache): New field "base_p".
4284 (i386_init_frame_cache): Clear it.
4285 (i386_frame_cache_1): New, factored out from amd64_frame_cache.
4286 Avoid reading registers with functions that throw if the register
4287 is not necessary to compute the frame base.
4288 (i386_frame_cache): Reimplement wrapping amd64_frame_cache_1, and
4289 swallowing NOT_AVAILABLE_ERROR.
4290 (i386_frame_unwind_stop_reason): New.
4291 (i386_frame_this_id): Don't build a frame id if the frame base was
4293 (i386_frame_prev_register): Handle unavailable SP.
4294 (i386_frame_unwind): Install i386_frame_unwind_stop_reason.
4295 (i386_epilogue_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
4296 base_p if the frame base was computable.
4297 (i386_epilogue_frame_unwind_stop_reason): New.
4298 (i386_epilogue_frame_this_id): Don't build a frame id if the frame
4299 base was unavailable.
4300 (i386_epilogue_frame_unwind): Install
4301 i386_epilogue_frame_unwind_stop_reason.
4302 (i386_sigtramp_frame_cache): Swallow NOT_AVAILABLE_ERROR, and set
4303 base_p if the frame base was computable.
4304 (i386_sigtramp_frame_unwind_stop_reason): New.
4305 (i386_sigtramp_frame_this_id): Don't build a frame id if the frame
4306 base was unavailable.
4307 (i386_sigtramp_frame_unwind): Install
4308 i386_sigtramp_frame_unwind_stop_reason.
4309 * sentinel-frame.c (sentinel_frame_prev_register): Use the value
4310 type's size, not the register's.
4311 (sentinel_frame_unwind): Install default_frame_unwind_stop_reason.
4313 * alpha-mdebug-tdep.c (alpha_mdebug_frame_unwind): Install
4314 default_frame_unwind_stop_reason.
4315 * alpha-tdep.c (alpha_sigtramp_frame_unwind)
4316 (alpha_heuristic_frame_unwind): Ditto.
4317 * amd64obsd-tdep.c (amd64obsd_trapframe_unwind): Ditto.
4318 * arm-tdep.c (arm_prologue_unwind, arm_stub_unwind): Ditto.
4319 * avr-tdep.c (avr_frame_unwind): Ditto.
4320 * cris-tdep.c (cris_sigtramp_frame_unwind, cris_frame_unwind):
4322 * frv-linux-tdep.c (frv_linux_sigtramp_frame_unwind): Ditto.
4323 * frv-tdep.c (frv_frame_unwind): Ditto.
4324 * h8300-tdep.c (h8300_frame_unwind): Ditto.
4325 * hppa-hpux-tdep.c (hppa_hpux_sigtramp_frame_unwind): Ditto.
4326 * hppa-linux-tdep.c (hppa_linux_sigtramp_frame_unwind): Ditto.
4327 * hppa-tdep.c (hppa_frame_unwind, hppa_fallback_frame_unwind)
4328 (hppa_stub_frame_unwind): Ditto.
4329 * i386obsd-tdep.c (i386obsd_trapframe_unwind): Ditto.
4330 * ia64-tdep.c (ia64_frame_unwind, ia64_sigtramp_frame_unwind)
4331 (ia64_libunwind_frame_unwind)
4332 (ia64_libunwind_sigtramp_frame_unwind): Ditto.
4333 * iq2000-tdep.c (iq2000_frame_unwind): Ditto.
4334 * lm32-tdep.c (lm32_frame_unwind): Ditto.
4335 * m32c-tdep.c (m32c_unwind): Ditto.
4336 * m32r-linux-tdep.c (m32r_linux_sigtramp_frame_unwind): Ditto.
4337 * m32r-tdep.c (m32r_frame_unwind): Ditto.
4338 * m68hc11-tdep.c (m68hc11_frame_unwind): Ditto.
4339 * m68k-tdep.c (m68k_frame_unwind): Ditto.
4340 * m68klinux-tdep.c (m68k_linux_sigtramp_frame_unwind): Ditto.
4341 * m88k-tdep.c (m88k_frame_unwind): Ditto.
4342 * mep-tdep.c (mep_frame_unwind): Ditto.
4343 * microblaze-tdep.c (microblaze_frame_unwind): Ditto.
4344 * mips-tdep.c (mips_insn16_frame_unwind, mips_insn32_frame_unwind)
4345 (mips_stub_frame_unwind): Ditto.
4346 * mn10300-tdep.c (mn10300_frame_unwind): Ditto.
4347 * moxie-tdep.c (moxie_frame_unwind): Ditto.
4348 * mt-tdep.c (mt_frame_unwind): Ditto.
4349 * ppc-linux-tdep.c (ppu2spu_unwind): Ditto.
4350 * ppcobsd-tdep.c (ppcobsd_sigtramp_frame_unwind): Ditto.
4351 * rs6000-tdep.c (rs6000_frame_unwind): Ditto.
4352 * s390-tdep.c (s390_frame_unwind, s390_stub_frame_unwind)
4353 (s390_sigtramp_frame_unwind): Ditto.
4354 * score-tdep.c (score_prologue_unwind): Ditto.
4355 * sh-tdep.c (sh_frame_unwind): Ditto.
4356 * sh64-tdep.c (sh64_frame_unwind): Ditto.
4357 * sparc-sol2-tdep.c (sparc32_sol2_sigtramp_frame_unwind): Ditto.
4358 * sparc-tdep.c (sparc32_frame_unwind): Ditto.
4359 * sparc64-sol2-tdep.c (sparc64_sol2_sigtramp_frame_unwind): Ditto.
4360 * sparc64-tdep.c (sparc64_frame_unwind): Ditto.
4361 * sparc64fbsd-tdep.c (sparc64fbsd_sigtramp_frame_unwind): Ditto.
4362 * sparc64nbsd-tdep.c (sparc64nbsd_sigcontext_frame_unwind): Ditto.
4363 * sparc64obsd-tdep.c (sparc64obsd_frame_unwind)
4364 (sparc64obsd_trapframe_unwind): Ditto.
4365 * sparcnbsd-tdep.c (sparc32nbsd_sigcontext_frame_unwind): Ditto.
4366 * sparcobsd-tdep.c (sparc32obsd_sigtramp_frame_unwind): Ditto.
4367 * spu-tdep.c (spu_frame_unwind, spu2ppu_unwind): Ditto.
4368 * v850-tdep.c (v850_frame_unwind): Ditto.
4369 * vax-tdep.c (vax_frame_unwind): Ditto.
4370 * vaxobsd-tdep.c (vaxobsd_sigtramp_frame_unwind): Ditto.
4371 * xstormy16-tdep.c (frame_unwind xstormy16_frame_unwind): Ditto.
4372 * xtensa-tdep.c (xtensa_unwind): Ditto.
4376 * tui/tui-hooks.c (tui_selected_frame_level_changed_hook): Assume
4377 there's always a frame. Use get_frame_pc_if_available instead of
4378 get_frame_pc, and if there's no PC available, don't look up a
4383 * stack.c (print_frame_local_vars, print_frame_arg_vars): Handle
4388 * tracepoint.c (set_traceframe_context): Handle unavailable PC
4393 * frame.h (frame_unwind_caller_pc_if_available): Declare.
4394 * frame.c (frame_unwind_caller_pc_if_available): New.
4395 * stack.c (frame_info): Handle unavailable PC.
4399 * frame.c (frame_unwind_pc): Rename to ...
4400 (frame_unwind_pc_if_available): ... this. New `pc' output
4401 parameter. Change return type to int. Gracefully handle
4402 gdbarch_unwind_pc throwing NOT_AVAILABLE_ERROR. Return 0 if that
4403 happened, or 1 otherwise.
4404 (frame_unwind_pc): Reimplement on top of
4405 frame_unwind_pc_if_available.
4406 (get_frame_func): Rename to ...
4407 (get_frame_func_if_available): New `pc' output parameter. Change
4408 return type to int. Gracefully handle the PC not being available.
4409 (get_frame_func): Reimplement on top of
4410 get_frame_func_if_available.
4411 (select_frame): Handle the PC being unavailable.
4412 (get_prev_frame): Handle the PC being unavailable.
4413 (get_frame_pc_if_available): New.
4414 (get_frame_address_in_block_if_available): New.
4415 (find_frame_sal): Handle the frame PC not being available.
4416 * frame.h (get_frame_pc_if_available): Declare.
4417 (get_frame_address_in_block_if_available): Declare.
4418 (get_frame_func_if_available): Declare.
4419 * stack.c (print_frame_info): Handle the PC being unavailable.
4420 (find_frame_funname): Ditto.
4421 (print_frame): Handle the PC being unavailable.
4422 (get_frame_language): Ditto.
4423 * blockframe.c (get_frame_block): Ditto.
4424 * macroscope.c (default_macro_scope): Ditto.
4425 * tui/tui-stack.c (tui_show_frame_info): Ditto.
4429 * dwarf2loc.c (dwarf2_evaluate_loc_desc): Catch
4430 NOT_AVAILABLE_ERROR when evaluating the location expression.
4434 * dwarf2loc.c (read_pieced_value): Handle get_frame_register_bytes
4435 returning that the register piece is unavailable/optimized out.
4436 (write_pieced_value): Handle get_frame_register_bytes returning
4437 that the register piece is unavailable/optimized out when doing a
4438 read-modify write of a bitfield.
4439 * findvar.c (value_from_register): Handle get_frame_register_bytes
4440 returning that the register piece is unavailable/optimized out.
4441 * frame.c (get_frame_register_bytes): New parameters `optimizedp'
4442 and `unavailablep'. Throw error on bad debug info. Use
4443 frame_register instead of frame_register_read, to fill in the new
4445 * frame.h (get_frame_register_bytes): New parameters `optimizedp'
4447 * valops.c: (value_assign): Adjust, and handle
4448 get_frame_register_bytes failing.
4449 * spu-tdep.c: Include exceptions.h.
4450 (spu_software_single_step): Adjust, and handle
4451 get_frame_register_bytes failing.
4452 (spu_get_longjmp_target): Ditto.
4453 * gdbarch.sh (register_to_value): Change to return int. New
4454 parameters `optimizedp' and `unavailablep'.
4455 * gdbarch.h, gdbarch.c: Regenerate.
4456 * i386-tdep.c (i386_register_to_value): Adjust to new
4457 gdbarch_register_to_value interface.
4458 * i387-tdep.c (i387_register_to_value): Ditto.
4459 * i387-tdep.h (i387_register_to_value): Ditto.
4460 * alpha-tdep.c (alpha_register_to_value): Ditto.
4461 * ia64-tdep.c (ia64_register_to_value): Ditto.
4462 * m68k-tdep.c (m68k_register_to_value): Ditto.
4463 * mips-tdep.c (mips_register_to_value): Ditto.
4464 * rs6000-tdep.c (rs6000_register_to_value): Ditto.
4468 * findvar.c (value_of_register): Mark the value as unavailable, if
4469 the register is unavailable.
4470 * frame.h (frame_register_unwind): New `unavailablep' parameter.
4471 (frame_register): New `unavailablep' parameter.
4472 (frame_register_read): Update comment.
4473 * frame.c (frame_register_unwind): New `unavailablep' parameter.
4474 Set it if the register is unavailable. If the register is
4475 unavailable, clear the output buffer.
4476 (frame_register): New `unavailablep' parameter. Pass it down.
4477 (frame_unwind_register): Adjust.
4478 (put_frame_register): Adjust.
4479 (frame_register_read): Adjust. Also return false if the register
4481 (frame_register_unwind_location): Adjust.
4482 * sentinel-frame.c (sentinel_frame_prev_register): If the register
4483 is unavailable, mark the value accordingly.
4484 * stack.c (frame_info): Handle unavailable registers.
4488 * mi/mi-main.c (register_changed_p): Handle REG_UNAVAILABLE, and
4489 simplify, using regcache_cooked_read.
4493 * regcache.h (regcache_raw_read, regcache_raw_read_signed)
4494 (regcache_raw_read_unsigned, regcache_raw_read_signed)
4495 (regcache_raw_read_unsigned, regcache_raw_read_part)
4496 (regcache_cooked_read, regcache_cooked_read_signed)
4497 (regcache_cooked_read_unsigned, regcache_cooked_read_part)
4498 (regcache_cooked_read_ftype): Change return to enum
4500 * regcache.c: Include exceptions.h
4501 (regcache_save): Adjust to handle REG_UNAVAILABLE registers.
4502 (do_cooked_read): Change return to enum register_status. Always
4503 forward to regcache_cooked_read.
4504 (regcache_raw_read): Change return to enum register_status. If
4505 the register is not REG_VALID, memset the buffer. Return the
4507 (regcache_raw_read_signed): Handle non-REG_VALID registers and
4508 return the register's status.
4509 (regcache_raw_read_unsigned): Ditto.
4510 (regcache_cooked_read): Change return to enum register_status.
4511 Assert that with read-only regcaches, the register's status must
4512 be known. If the regcache is read-only, and the register is not
4513 REG_VALID, memset the buffer. Return the register's status.
4514 (regcache_cooked_read_signed): Change return to enum
4515 register_status. Handle non-REG_VALID registers and return the
4517 (regcache_cooked_read_unsigned): Change return to enum
4518 register_status. Handle non-REG_VALID registers and return the
4520 (regcache_xfer_part, regcache_raw_read_part)
4521 (regcache_cooked_read_part): Change return to enum
4522 register_status. Return the register's status.
4523 (regcache_read_pc): Throw NOT_AVAILABLE_ERROR if the register is
4525 (regcache_dump): Handle unavailable cooked registers.
4526 * frame.c (do_frame_register_read): Adjust interface to match
4527 regcache_cooked_read_ftype.
4528 * gdbarch.sh (pseudo_register_read): Change return to enum
4530 * gdbarch.h, gdbarch.c: Regenerate.
4532 * i386-tdep.h (i386_pseudo_register_read): Change return to enum
4534 * i386-tdep.c (i386_pseudo_register_read): Change return to enum
4535 register_status. If reading a raw register indicates the raw
4536 register is not valid, return the raw register's status,
4537 otherwise, return REG_VALID.
4538 * amd64-tdep.c (amd64_pseudo_register_read): Change return to enum
4539 register_status. Handle non-REG_VALID raw registers and return
4540 the register's status.
4541 * arm-tdep.c (arm_neon_quad_read)
4542 (arm_pseudo_read): Change return to enum register_status. Handle
4543 non-REG_VALID raw registers and return the register's status.
4544 * avr-tdep.c (avr_pseudo_register_read): Ditto.
4545 * frv-tdep.c (frv_pseudo_register_read): Ditto.
4546 * h8300-tdep.c (h8300_pseudo_register_read): Ditto.
4547 * hppa-tdep.c (hppa_pseudo_register_read): Ditto.
4548 * m32c-tdep.c (m32c_move_reg_t): Change return to enum
4550 (m32c_raw_read, m32c_raw_write, m32c_banked_read)
4551 (m32c_banked_write, m32c_sb_read, m32c_sb_write, m32c_part_read)
4552 (m32c_part_write, m32c_cat_read, m32c_cat_write)
4553 (m32c_r3r2r1r0_read, m32c_r3r2r1r0_write)
4554 (m32c_pseudo_register_read): Change return to enum
4555 register_status. Adjust.
4556 * m68hc11-tdep.c (m68hc11_pseudo_register_read): Change return to
4557 enum register_status. Return the register's status.
4558 * mep-tdep.c (mep_pseudo_cr32_read): Change return to enum
4559 register_status. Return the register's status.
4560 (mep_pseudo_cr64_read, mep_pseudo_register_read): Ditto.
4561 * mips-tdep.c (mips_pseudo_register_read): Ditto.
4562 * mt-tdep.c (mt_pseudo_register_read): Ditto.
4563 * rs6000-tdep.c (move_ev_register_func): New typedef.
4564 (e500_move_ev_register): Use it. Change return to enum
4565 register_status. Return the register's status.
4566 (do_regcache_raw_read): New function.
4567 (do_regcache_raw_write): New function.
4568 (e500_pseudo_register_read): Change return to enum
4569 register_status. Return the register's status. Use
4570 do_regcache_raw_read.
4571 (e500_pseudo_register_write): Adjust. Use do_regcache_raw_write.
4572 (dfp_pseudo_register_read): Change return to enum register_status.
4573 Return the register's status.
4574 (vsx_pseudo_register_read): Ditto.
4575 (efpr_pseudo_register_read): Ditto.
4576 (rs6000_pseudo_register_read): Ditto.
4577 * s390-tdep.c (s390_pseudo_register_read): Change return to enum
4578 register_status. Return the register's status.
4579 * sh64-tdep.c (pseudo_register_read_portions): New function.
4580 (sh64_pseudo_register_read): Change return to enum
4581 register_status. Use pseudo_register_read_portions. Return the
4583 * ia64-tdep.c (ia64_pseudo_register_read): Change return to enum
4584 register_status. Return the register's status.
4585 * sh-tdep.c (pseudo_register_read_portions): New function.
4586 (sh_pseudo_register_read): Change return to enum register_status.
4587 Use pseudo_register_read_portions. Return the register's status.
4588 * sparc-tdep.c (sparc32_pseudo_register_read): Change return to
4589 enum register_status. Return the register's status.
4590 * sparc64-tdep.c (sparc64_pseudo_register_read): Ditto.
4591 * spu-tdep.c (spu_pseudo_register_read_spu)
4592 (spu_pseudo_register_read): Ditto.
4593 * xtensa-tdep.c (xtensa_register_read_masked)
4594 (xtensa_pseudo_register_read): Ditto.
4595 * bfin-tdep.c (bfin_pseudo_register_read): Ditto.
4599 * python/py-value.c (valpy_getitem): Fix formatting of error function
4604 ARI fixes: Add missing internationalization markups throughout
4606 * darwin-nat-info.c: Ditto.
4609 * mi/mi-main.c: Ditto.
4613 ARI fixes: Add missing internationalization markups throughout
4616 * cp-name-parser.y: Ditto.
4619 * objc-exp.y: Ditto.
4624 ARI fixes: Messages should have no trailing new lines.
4625 * darwin-nat.c (mach_check_error): Remove trailing new line from
4626 warning function call message.
4627 * record.c (bfdcore_read): Idem for error call.
4631 * common/signals.c (target_signal_from_host): Add _ markup to error
4632 function call message.
4633 (target_signal_to_host): Add _ markup and remove trailing new line
4634 from warning call message.
4635 (target_signal_from_command): Add _ markup to error function call
4642 * python/python.c (gdbpy_write): Accept a stream argument and
4643 operate to the appropriate stream.
4644 (gdbpy_flush): Likewise.
4645 (_initialize_python): Add stream constants.
4646 (finish_python_initialization): Add GdbOutputErrorFile class.
4650 * MAINTAINERS: Add myself as a write-after-approval maintainer.
4654 * amd64-tdep.c (amd64_relocate_instruction): Fix ordering of arguments
4655 to store_signed_integer. Add debug message when relocating CALL
4656 instructions. Fix formatting of debug message.
4657 * i386-tdep.c (i386_relocate_instruction): Ditto.
4661 * target.h (struct target_ops): Remove to_lookup_symbol field.
4662 (target_lookup_symbol): Delete macro.
4663 * target.c (nosymbol, debug_to_lookup_symbol): Delete.
4664 (update_current_target, setup_target_debug): Remove handling
4665 of to_lookup_symbol target_ops field.
4666 * ada-tasks.c (get_known_tasks_addr): Remove use of
4667 target_lookup_symbol.
4668 * coffread.c (coff_symtab_read): Likewise.
4669 * dbxread.c (read_dbx_symtab): Ditto.
4674 * configure.ac: Add getthrds declaration check.
4675 * configure, config.in: Regenerate.
4676 * aix-thread.c (getthrds): Declare only if not already declared
4677 in procinfo.h. More declaration out of get_signaled_thread to
4682 * python/py-symtab.c: Populate symtab_object_methods,
4684 (stpy_is_valid): New function.
4685 (salpy_is_valid): Ditto.
4686 * python/py-symbol.c: Declare symbol_object_methods. Populate.
4687 (sympy_is_valid): New function.
4688 * python/py-objfile.c: Declare objfile_object_methods. Populate.
4689 (objfpy_is_valid): New function.
4690 * python/py-inferior.c: Populate inferior_object_methods.
4691 (infpy_is_valid): New function.
4692 * python/py-infthread.c: Populate thread_object_methods.
4693 (thpy_is_valid): New function.
4694 * python/py-block.c: Declare block_object_methods. Populate. Declare
4695 block_iterator_object_methods. Populate.
4696 (blpy_is_valid): New function.
4697 (blpy_iter_is_valid): Ditto.
4701 * linespec.c (find_methods): Canonicalize NAME before looking
4703 (name_end): New function.
4704 (keep_name_info): New function.
4705 (decode_line_1): Use keep_name_info.
4706 (decode_compound): Likewise.
4707 * cli/cli-utils.h (remove_trailing_whitespace): New function.
4708 * cli/cli-utils.c (remove_trailing_whitespace): Likewise.
4711 * linespec.c (locate_first_half): Keep overload information, too.
4712 (decode_compound): Use a string to represent break characters
4714 If P points to a break character, do not increment it.
4715 For C++ and Java, keep overload information and relevant keywords.
4716 If we cannot find a symbol, search the minimal symbols.
4719 * linespec.c (decode_compound): Rename SAVED_ARG to
4721 Make a copy of THE_REAL_SAVED_ARG in SAVED_ARG and strip
4723 Pass a valid block to lookup_symbol.
4724 (lookup_prefix_sym): Likewise.
4725 (find_method): Construct search name based on SYM_CLASS instead
4727 * psymtab.c (lookup_partial_symbol): Add language parameter.
4728 (lookup_symbol_aux_psymtabs): Likewise.
4729 Don't assume that the psymtab we found was the right one. Search
4730 for the desired symbol in the symtab to be certain.
4731 (psymtab_search_name): New function.
4732 (lookup_partial_symbol): Use psymtab_search_name.
4733 Add language parameter.
4734 (read_symtabs_for_function): Add language parameter and pass to
4735 lookup_partial_symbol.
4736 (find_symbol_file_from_partial): Likewise.
4741 * dwarf2read.c (noop_record_line): New function.
4742 (dwarf_decode_lines): Ignore line tables for GCd functions.
4746 Fix ARI warnings about new lines at the end of messages, which
4747 are unneeded as there is a new line added at the end of the message
4749 * darwin-nat.c (darwin_stop_inferior): Ditto.
4750 * dec-thread.c (dec_thread_get_ada_task_ptid): Ditto.
4751 * dfp.c (decimal_to_number): Ditto.
4752 * exec.c (print_section_info): Ditto.
4753 * i386-darwin-nat.c (darwin_set_sstep): Ditto.
4754 * osdata.c (get_osdata): Ditto.
4755 * record.c (bfdcore_write): Ditto.
4756 * remote-mips.c (mips_readchar): Ditto.
4757 * remote.c (read_ptid): Ditto.
4758 * ser-mingw.c (ser_windows_raw): Ditto.
4759 * tracepoint.c (add_local_symbols): Ditto.
4760 * windows-nat.c (fake_create_process): Ditto.
4764 * tracepoint.c (stop_tracing): Don't declare.
4765 * event-top.c (after_char_processing_hook): Add `(void)'.
4769 * NEWS: Add Parameter sub-classing description.
4773 * MAINTAINERS: Update my e-mail address.
4777 * MAINTAINERS: Add myself for write after approval privileges.
4781 * frame.c (find_frame_sal): Assert sym is not null.
4783 * dbxread.c (process_one_symbol): Assert 'name' is not null.
4785 * objc-lang.c (selectors_info): Check strchr for null result.
4787 * stabsread.c (define_symbol): Guard against bad stabstring input.
4791 Remove trailing spaces and tabulations from pascal language
4796 p-valprint.c: Ditto.
4800 * dwarf2read.c (dwarf2_get_pc_bounds): Require HIGH strictly higher
4801 than LOW. Comment it.
4802 (read_partial_die): Call complaint for inappropriate zero LOWPC or
4803 HIGHPC not strictly higher than LOWPC.
4807 Fix formatting of function declarations returning a pointer in
4809 * varobj.c (varobj_add_child): Ditto.
4810 * hppa-tdep.h (hppa_init_objfile_priv_data): Ditto.
4811 * inferior.h (get_displaced_step_closure_by_addr): Ditto.
4815 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Add support
4816 for the "generic" vector ABI used with GCC 4.3 and later.
4817 (ppc64_sysv_abi_return_value): Likewise.
4821 * infcall.c (call_function_by_hand): Function return value is
4822 always a non_lval, even when using struct_return.
4826 * printcmd.c (ALL_DISPLAYS_SAFE): New.
4827 (map_display_numbers): New.
4828 (do_delete_display): New.
4829 (undisplay_command): Use map_display_numbers.
4830 (do_enable_disable_display): New.
4831 (enable_disable_display_command): New function.
4832 (enable_display): Delete.
4833 (enable_display_command): New.
4834 (disable_display_command): Reimplement.
4835 (_initialize_printcmd): Adjust "enable display" command to use
4836 `enable_display_command' as callback.
4840 * NEWS: Add Python breakpoint 'stop' operation.
4844 * NEWS: Delete duplicate entry. Fix typo.
4848 Fix ARI warning about function names in first column.
4849 Put prototype declaration on same line as return type.
4850 * objc-exp.y: Ditto.
4852 * python/py-stopevent.h: Ditto.
4853 For long function names, split parameters to
4854 allow function name on same line as return type.
4855 * solib-pa64.c: Ditto.
4858 For long function declaration, use single line.
4859 * hppa-tdep.h: Ditto.
4860 * inferior.h: Ditto.
4864 * python/python.h: Declare gdbpy_should_stop and
4865 gdbpy_breakpoint_has_py_cond.
4866 * python/python.c: Add python.h to includes. Remove python.h from
4867 HAVE_PYTHON definition
4868 (gdbpy_should_stop): New dummy function.
4869 (gdbpy_breakpoint_has_py_cond): New dummy function.
4870 * python/py-breakpoint.c (bppy_init): Rewrite to allow
4871 sub-classing capabilities.
4872 (gdbpy_should_stop): New function.
4873 (gdbpy_breakpoint_has_py_cond): New function.
4874 (local_setattro): New function.
4875 * breakpoint.c (condition_command): Add check for Python 'stop'
4877 (bpstat_check_breakpoint_conditions): Execute Python 'stop'
4878 operation function as part of stop/continue tests.
4883 * dwarf2loc.c (dwarf_expr_dwarf_call): Remove 'return'.
4884 (needs_frame_dwarf_call): Likewise.
4888 Fix ARI warning about functions without parameters that do not
4890 * breakpoint.c (all_tracepoints): Replace () by (void).
4891 * f-exp.y (match_string_literal): Ditto.
4893 * m2-exp.y (yylex): Ditto.
4894 * mep-tdep.c (current_me_module): Ditto.
4895 (current_options): Ditto.
4896 (current_cop_data_bus_width): Ditto.
4897 (current_cr_names): Ditto.
4898 (current_cr_is_float): Ditto.
4899 (current_ccr_names): Ditto.
4900 * objc-exp.y (yylex): Ditto.
4901 * p-exp.y (yylex): Ditto.
4902 * remote.c (send_interrupt_sequence): Ditto.
4903 * tracepoint.c (current_trace_status): Ditto.
4904 * python/py-evts.c (gdbpy_initialize_py_events): Ditto.
4905 * python/py-prettyprint.c (push_dummy_python_frame): Ditto.
4909 * cli/cli-decode.h (CMD_LIST_AMBIGUOUS): Define.
4910 * cli/cli-decode.c (lookup_cmd_1): Use CMD_LIST_AMBIGUOUS.
4911 (lookup_cmd): Test for CMD_LIST_AMBIGUOUS.
4912 * completer.c (complete_line_internal): Use CMD_LIST_AMBIGUOUS.
4913 * top.c (set_verbose): Use CMD_LIST_AMBIGUOUS.
4915 * event-loop-c (delete_async_signal_handler): Assert prev_ptr.
4916 (delete_async_event_handler): Ditto.
4918 * python/py-breakpoint.c (bppy_set_condition): Stop memory leak.
4920 * python/py-breakpoint.c (bppy_get_commands): Fix memory leak.
4922 * top.c (set_verbose): Assert showcmd was found.
4926 * xtensa-tdep.c (warning_once): Correct style issues.
4930 * arm-tdep.c (copy_ldr_str_ldrb_strb): Remove redundant statements.
4934 * common/aclocal.m4: Remove.
4938 * xtensa-tdep.c (windowing_enabled): Remove inline attribute.
4939 (xtensa_write_register, xtensa_read_register): Likewise.
4940 (xtensa_hextochar): Removed.
4941 (xtensa_init_reggroups): Replace xtensa_hextochar () by explicit code.
4945 * xtensa-tdep.c (xtensa_c0reg_t): Update comments.
4946 (xtensa_call0_frame_cache_t): Update comments. New fields added.
4947 (xtensa_alloc_frame_cache): Add initialization for new fields.
4948 (xtensa_frame_cache): Change the way how call0_frame_cache () is called.
4949 (warning_once): New function.
4950 (xtensa_insn_kind): New item c0opc_and.
4951 (call0_classify_opcode): Add the case for AND instruction.
4952 (call0_track_op): Change arguments. New local variable litbase.
4953 Add the case to handle c0opc_and. Update algorithms for c0opc_mov,
4954 c0opc_l32r, c0opc_s32i to take into account dynamic stack adjustments
4956 Add cases for c0opc_l32e, c0opc_s32e, c0opc_rfwo, c0opc_rfwu.
4957 (call0_analyze_prologue): Update the comments. Change arguments.
4958 Add the variety of updates to handle extended prologues, which now can
4959 conduct dynamic stack adjustments.
4960 (call0_frame_cache): Likewise.
4961 (xtensa_skip_prologue): Update call0_analyze_prologue () function call.
4962 (xtensa_gdbarch_init): Initialize xtensa_session_once_reported.
4966 * tracepoint.c (cmd_qtv): Discard unused value 'packet'.
4967 (cmd_qtframe): Ditto.
4968 (cmd_qtbuffer): Ditto.
4969 (cmd_bigqtbuffer): Ditto.
4973 * tracepoint.c (trace_actions_command): Update.
4974 * thread.c (thread_apply_command): Update.
4975 * reverse.c (delete_bookmark_command): Update.
4976 (bookmarks_info): Update.
4977 * printcmd.c (undisplay_command): Update.
4978 * memattr.c (mem_enable_command): Update.
4979 (mem_disable_command): Update.
4980 (mem_delete_command): Update.
4981 * inferior.c (detach_inferior_command): Update.
4982 (kill_inferior_command): Update.
4983 (remove_inferior_command): Update.
4984 * cli/cli-utils.h (struct get_number_or_range_state): New.
4985 (init_number_or_range): Declare.
4986 (get_number_or_range): Update.
4987 * cli/cli-utils.c (init_number_or_range): New function.
4988 (get_number_or_range): Change 'pp' parameter to 'state'. Remove
4990 (number_is_in_list): Update.
4991 * breakpoint.h (get_tracepoint_by_number): Update.
4992 * breakpoint.c (map_breakpoint_numbers): Update for change to
4993 get_number_or_range.
4994 (find_location_by_number): Use get_number, not
4995 get_number_or_range.
4996 (trace_pass_set_count): New function.
4997 (trace_pass_command): Update for change to get_number_or_range.
4999 (get_tracepoint_by_number): Remove 'multi_p' parameter; add
5004 * python/py-param.c (add_setshow_generic): Add set/show callback
5005 parameters. Register Python object context.
5006 (get_show_value): New function.
5007 (get_set_value): New function.
5008 (call_doc_function): New function.
5009 (get_doc_string): Move behind get_show_value/get_set_value.
5013 * fbsd-nat.c (fbsd_make_corefile_notes): Constify local `fname'.
5017 * xtensa-tdep.c (xtensa_read_register): Add comment.
5018 (xtensa_write_register): Likewise.
5019 (xtensa_hextochar): Add comment and update to match coding conventions.
5020 (xtensa_frame_cache, xtensa_return_value): Follow coding conventions.
5021 (execute_l32e, execute_s32e, execute_code): Update comments.
5022 (xtensa_exception_handler_t): Update to match coding conventions.
5023 (xtensa_insn_kind): Likewise.
5027 * mi-cmd-disas.c (mi_cmd_disassemble): Fix memory leak.
5031 * nto-tdep.c (nto_find_and_open_solib): Constify local `base'.
5035 * thread.c (restore_selected_frame): Handle frame_level == -1.
5036 (make_cleanup_restore_current_thread): Use
5037 get_selected_frame_if_set.
5038 * frame.h (get_selected_frame_if_set): Declare.
5039 * frame.c (get_selected_frame_if_set): New function.
5043 * cli/cli-cmds.c (shell_escape): Use lbasename.
5044 * coffread.c (coff_start_symtab): Constify parameter.
5045 (complete_symtab): Constify `name' parameter.
5046 (coff_symtab_read): Constify `filestring' local.
5047 (coff_getfilename): Constify return and `result' local.
5049 * fbsd-nat.c (fbsd_make_corefile_notes): Use lbasename.
5050 * linux-fork.c (info_checkpoints_command): Use lbasename.
5051 * linux-nat.c (linux_nat_make_corefile_notes): Use lbasename.
5052 * minsyms.c (lookup_minimal_symbol): Use lbasename.
5053 * nto-tdep.c (nto_find_and_open_solib): Use lbasename.
5054 * procfs.c (procfs_make_note_section): Use lbasename.
5055 * tui/tui-io.c (printable_part): Constity return and parameter.
5057 (print_filename): Constify parameters, and local `s'.
5058 (tui_rl_display_match_list): Constify local `temp'.
5064 Fix DWARF-3+ DW_AT_accessibility default assumption.
5065 * dwarf2read.c (dwarf2_add_field): Fix new_field->accessibility for
5066 cu->header.version >= 3.
5070 * common/Makefile.in: Remove.
5071 * common/configure: Remove.
5072 * common/configure.ac: Remove.
5079 * common/Makefile.in: Add copyright header.
5083 * Makefile.in: Remove signals.o from COMMON_OBS. Link
5085 * configure.ac: Add common to sub dir.
5086 * configure: Regenerate.
5090 * xtensa-tdep.c (call0_ret): New function.
5091 (xtensa_skip_prologue): Speed up analysis.
5095 * xtensa-tdep.c (xtensa_register_reggroup_p): Count in all registers
5096 while executing MI command -data-list-changed-registers.
5100 * xtensa-tdep.c (xtensa_read_register): New function.
5101 (xtensa_write_register): New function.
5102 (xtensa_find_register_by_name): New function.
5103 (xtensa_windowed_frame_cache): Update comments in type description.
5104 (xtensa_frame_cache): Likewise.
5105 (xtensa_window_interrupt_insn): New function.
5106 (xtensa_frame_cache): Add analysis for Xtensa Window Exception frames.
5107 (xtensa_insn_kind): Add new instructions.
5108 (rwx_special_register): New function.
5109 (call0_classify_opcode): Add new instructions to the analysis.
5110 (a0_saved, a7_saved, a11_saved): New variables.
5111 (a0_was_saved, a7_was_saved, a11_was_saved): New variables.
5112 (execute_l32e): New function.
5113 (execute_s32e): New function.
5114 (xtensa_exception_handler_t): New type.
5115 (execute_code): New function.
5116 (xtensa_window_interrupt_frame_cache): New function to conduct frame
5117 analysis for Xtensa Window Exception handlers.
5121 * xtensa-tdep.c (TX_PS): New.
5122 (windowing_enabled): Update to count for Call0 ABI.
5123 (xtensa_hextochar): New.
5124 (xtensa_init_reggroups): Make algorithm generic.
5125 (xtensa_frame_cache): Use TX_PS on Tiny Xtensa.
5129 * xtensa-tdep.h (XTENSA_MAX_COPROCESSOR): Update.
5133 * i386-tdep.c (i386_follow_jump): Check return value of
5135 (i386_analyze_struct_return): Ditto.
5136 (i386_skip_probe): Ditto.
5137 (i386_match_insn): Ditto.
5138 (i386_skip_noop): Ditto.
5139 (i386_analyze_frame_setup): Ditto.
5140 (i386_analyze_register_saves): Ditto.
5141 (i386_skip_prologue): Ditto.
5142 (i386_skip_main_prologue): Ditto.
5144 * target.c (read_whatever_is_readable): Fix memory leak.
5146 * i386-tdep.c (i386_process_record): Document fall through.
5150 Fix DWARF-3+ DW_AT_accessibility default assumption.
5151 * dwarf2read.c (dwarf2_add_field): Fix new_field->accessibility for
5152 cu->header.version >= 3.
5156 * remote.c (remote_check_symbols): Skip if the target has no
5161 * target.c (read_whatever_is_readable): Reformat comment,
5162 with a minor typo fix. Minor reformatting of the code.
5166 * arm-tdep.c: Remove prototype declaration displaced_in_arm_mode.
5167 (displaced_read_reg): Add `dsc' parameter, remove `from' parameter.
5168 Use cached result instead of calling displaced_in_arm_mode again.
5169 (branch_write_pc, alu_write_pc, load_write_pc): Add `dsc' parameter.
5170 (displaced_write_reg, copy_preload, copy_preload_reg): Callers update.
5171 (cleanup_copro_load_store, copy_copro_load_store): Likewise.
5172 (cleanup_branch, copy_bx_blx_reg, copy_alu_imm): Likewise.
5173 (cleanup_alu_reg, copy_alu_reg, cleanup_alu_shifted_reg): Likewise.
5174 (copy_alu_shifted_reg, cleanup_load, cleanup_store): Likewise.
5175 (copy_extra_ld_st, copy_ldr_str_ldrb_strb): Likewise.
5176 (cleanup_block_load_all, cleanup_block_store_pc): Likewise.
5177 (cleanup_block_load_pc, copy_block_xfer): Likewise.
5178 * arm-linux-tdep.c (arm_linux_copy_svc): Callers update.
5179 (arm_catch_kernel_helper_return): Likewise.
5180 * gdb/arm-tdep.h : Update function declarations.
5184 * dwarf2loc.c (indirect_pieced_value): Assert 'piece' not null.
5186 * ser-unix.c (hardwire_get_tty_state): Stop memory leak.
5188 * mi/mi-cmd-env.c (_initialize_mi_cmd_env): Free environment.
5190 * elfread.c (elf_symtab_read): Stop memory leak.
5192 * main.c (captured_main): Fix memory leak.
5196 * ada-lang.c (compare_names): Call is_name_suffix with string1
5201 * xcoffread.c (xcoff_sym_fns): Update.
5202 * symfile.h (struct sym_fns) <sym_read_psymbols>: New field.
5203 (enum symfile_add_flags) <SYMFILE_NO_READ>: New constant.
5204 * symfile.c (syms_from_objfile): Handle SYMFILE_NO_READ.
5205 (symbol_file_add_with_addrs_or_offsets): Likewise.
5206 (reread_symbols): Handle OBJF_PSYMTABS_READ.
5207 * somread.c (som_sym_fns): Update.
5208 * psymtab.h (require_partial_symbols): Declare.
5209 * psymtab.c (require_partial_symbols): New function.
5210 (ALL_OBJFILE_PSYMTABS_REQUIRED): New macro.
5211 (ALL_OBJFILE_PSYMTABS): Undef.
5212 (ALL_PSYMTABS): Move from psympriv.h.
5213 (lookup_partial_symtab, find_pc_sect_psymtab)
5214 (lookup_symbol_aux_psymtabs, relocate_psymtabs)
5215 (find_last_source_symtab_from_partial)
5216 (forget_cached_source_info_partial)
5217 (print_psymtab_stats_for_objfile, read_symtabs_for_function)
5218 (expand_partial_symbol_tables, read_psymtabs_with_filename)
5219 (map_symbol_names_psymtab, map_symbol_filenames_psymtab)
5220 (find_symbol_file_from_partial, map_matching_symbols_psymtab)
5221 (expand_symtabs_matching_via_partial, maintenance_info_psymtabs):
5222 Use ALL_OBJFILE_PSYMTABS_REQUIRED.
5223 * psympriv.h (ALL_PSYMTABS): Move to psymtab.c.
5224 * objfiles.h (OBJF_PSYMTABS_READ): New macro.
5225 * objfiles.c (objfile_has_partial_symbols): Handle lazily-read
5227 * mipsread.c (ecoff_sym_fns): Update.
5228 * machoread.c (macho_sym_fns): Update.
5229 * elfread.c (elf_symfile_read): Set up for lazy psymtab reading.
5230 (read_psyms): New function.
5231 (elf_sym_fns, elf_sym_fns_gdb_index): Update.
5232 (elf_sym_fns_lazy_psyms): New global.
5233 * dwarf2read.c (dwarf2_initialize_objfile): Don't call
5234 dwarf2_build_psymtabs.
5235 * dbxread.c (aout_sym_fns): Update.
5236 * coffread.c (coff_sym_fns): Update.
5240 * infrun.c (print_exited_reason): Include inferior id and pid in
5245 * target.h (struct target_ops) <to_has_execution>: Add ptid_t
5247 (target_has_execution_1): Update.
5248 (target_has_execution_current): Declare.
5249 (target_has_execution): Call target_has_execution_current.
5250 (default_child_has_execution): Update.
5251 * target.c (default_child_has_execution): Add 'the_ptid'
5253 (target_has_execution_1): Likewise.
5254 (target_has_execution_current): New function.
5255 (add_target): Update.
5256 (init_dummy_target): Update.
5257 * remote-m32r-sdi.c (m32r_has_execution): New function.
5258 (init_m32r_ops): Use it.
5259 * record.c (record_core_has_execution): Now static. Add
5260 'the_ptid' parameter.
5261 * inferior.c (have_live_inferiors): Don't save current thread.
5262 Use target_has_execution_1.
5266 * Makefile.in (aclocal_m4_deps): Remove gnulib/m4/memcmp.m4.
5270 * elfread.c (elf_symtab_read): Minor reformatting.
5274 * objc-lang.c (selectors_info): Minor reformatting.
5278 * ada-lang.c (compare_names): Add FALLTHROUGH comment.
5283 * ada-valprint.c (ada_val_print_array): Move the declaration of
5284 "byte_order" and "elttype" inside the block where these variables
5285 are actually used. Remove some special handling for the case
5286 where "elttype" and "eltlen" are null. Replace by a comment
5287 and a couple of assertion checks.
5291 * source.c (add_path): Replace semicolon at end of block.
5292 * dwarf2expr.c (execute_stack_op): Ditto.
5296 * bfin-tdep.c: Include sim-regno.h and gdb/sim-bfin.h.
5297 * configure.tgt (bfin-*-*linux*): Define gdb_sim.
5298 (bfin-*-*): Likewise.
5302 * dwarf2expr.c (execute_stack_op): Delete superfluous semicolon.
5303 * mdebugread.c (parse_symbol): Ditto.
5304 * parse.c (parse_exp_in_context): Ditto.
5305 * source.c (add_path): Ditto.
5306 * utils.c (gnu_debuglink_crc32): Ditto.
5307 * varobj.c (variable_language): Ditto.
5309 * linux-tdep.c (linux_get_siginfo_type): Stop memory leak.
5313 * linux-fork.c (inferior_call_waitptid): Fix copy/paste error.
5315 * symfile.c (simple_overlay_update): Check for null return value
5316 from lookup_minimal_symbol.
5318 * xml-syscall.c (syscall_start_syscall): Assert name is non null.
5322 * eval.c (parse_and_eval_address_1): Remove function.
5323 * linespec.c (decode_indirect): Call parse_to_comma_and_eval
5324 instead of parse_and_eval_address_1.
5325 * value.h (parse_and_eval_address_1): Remove prototype.
5329 * remote.c (putpkt_binary): Document that case stmt falls through.
5333 * breakpointc (print_it_typical): Move NULL check from here...
5334 (print_bp_stop_message): ... to here.
5338 * breakpoint.c (enable_command): Use break instead of continue,
5339 and fill in a missing break.
5340 (disable_command): Ditto.
5344 * inflow.c (terminal_init_inferior_with_pgrp): Copy ttystate.
5345 (terminal_save_ours): Remove misleading comment.
5346 (inflow_inferior_data_cleanup): Free ttystate.
5347 (inflow_inferior_exit): Likewise.
5348 (copy_terminal_info): Copy ttystate.
5350 * serial.c (serial_copy_tty_state): New function.
5351 * serial.h (serial_copy_tty_state): Add prototype.
5352 (struct serial_ops): Add copy_tty_state callback.
5353 * ser-base.c (ser_base_copy_tty_state): New function.
5354 * ser-base.h (ser_base_copy_tty_state): Add prototype.
5355 * ser-go32.c (dos_copy_tty_state): New function.
5356 (dos_ops): Install copy_tty_state callback.
5357 * ser-mingw.c (_initialize_ser_windows): Likewise.
5358 * ser-pipe.c (_initialize_ser_pipe): Likewise.
5359 * ser-unix.c (hardwire_copy_tty_state): New function.
5360 (_initialize_ser_hardwire): Install it.
5364 * breakpoint.c (create_breakpoint): Add missing break statement.
5366 Reverting this patch:
5367 * infcall.c (call_function_by_hand): Add break statements for lint.
5369 Reverting this patch:
5370 * cli/cli-script.c (script_from_file): Add break for lint.
5374 * solib.c (reload_shared_libraries_1): Close memory leak.
5379 * dwarf2read.c (process_psymtab_comp_unit): Handle case where
5384 * remote-fileio.c (remote_fileio_func_fstat): Initialize all
5385 fields of struct 'st' to zero.
5387 * tui/tui-winsource.c (tui_update_source_window_as_is): Initialize
5388 sal.pspace before calling set_current_source_symtab_and_line.
5392 * Makefile.in (configure-common): Remove. Let Makefile
5393 in dir common to rebuild itself.
5394 (common/Makefile): Likewise.
5398 * utils.c (parse_escape): Add i18n markup in error message.
5402 * gdb/arm-tdep.c (shifted_reg_val): Replace magic number 15 with
5404 (thumb_get_next_pc_raw, arm_get_next_pc_raw): Likewise.
5405 (displaced_write_reg, displaced_read_reg): Likewise.
5406 (copy_ldr_str_ldrb_strb, cleanup_block_load_all): Likewise.
5407 (cleanup_block_load_pc, copy_block_xfer): Likewise.
5408 (cleanup_branch): Replace magic number 14 and 15 with
5409 ARM_LR_REGNUM and ARM_PC_REGNUM respectively.
5413 * maint.c (maintenance_do_deprecate): No need to check for NULL.
5415 * cli/cli-script.c (script_from_file): Add break for lint.
5417 * mdebugread.c (parse_partial_symbols): Fix indent.
5419 * target-descriptions.c (tdesc_gdb_type): No need to call
5420 xstrdup, callee saves a copy.
5422 * printcmd.c (print_scalar_formatted): Use strncpy for safety.
5424 * infcall.c (call_function_by_hand): Add break statements for lint.
5426 * utils.c (parse_escape): Escape the escape char.
5428 * python/py-inferior.c (build_inferior_list): Error out if
5429 PyList_Append fails.
5430 (gdbpy_inferiors): Error out if build_inferior_list fails.
5432 * linux-nat.c (linux_nat_xfer_partial): Preserve errno around
5435 * record.c (record_restore): Move printf to before error return.
5439 * arm-tdep.h (struct displaced_step_closure): Add two new fields
5440 is_thumb and insn_size.
5441 * arm-tdep.c (displaced_read_reg): Adjust correct pipeline offset
5442 on both ARM and Thumb mode.
5443 (arm_process_displaced_insn): Set is_thumb and insn_size.
5444 (arm_displaced_init_closure): Handle both 16-bit and 32-bit.
5445 (arm_displaced_step_fixup): Likewise.
5449 * cli/cli-dump.c (dump_bfd_file): Check error return and warn.
5451 * jv-lang.c (evaluate_subexp_java): Conditional can't be true.
5453 * dwarf2read.c (dwarf2_compute_name): NAME cannot be null here.
5455 * cli/cli-dump.c (restore_binary_file): Validate ftell return value.
5457 * ada-lang.c (ada_make_symbol_completion_list): Replace malloc
5460 * ada-lang.c (aggregate_assign_others): Rename inner scope variable
5461 which shadows function parameter.
5463 * tracepoint.c (create_tsv_from_upload): Superfluous call
5464 to xstrdup. Callee already calls xstrdup.
5466 * linespec.c (decode_line_1): Remove unnecessary null check.
5468 * tracepoint.c (scope_info): Fix mem leak, remove underused
5471 * python/py-prettyprint.c (apply_val_pretty_printer): Remove
5472 superfluous null check.
5474 * std-regs.c (value_of_builtin_frame_pc_reg): Frame can't be null.
5475 (value_of_builtin_frame_fp_reg): Ditto.
5477 * event-top.c (display_gdb_prompt): Remove superfluous null check.
5479 * python/py-prettyprint.c (apply_val_pretty_printer): VAL may
5482 * linespec.c (decode_line_1): Check for null before dereference.
5484 * reverse.c (record_restore): Move null-check to before pointer
5487 * python/py-utils.c (gdbpy_obj_to_string): Delete unused variable.
5489 * objc-lang.c (selectors_info): Add explanitory comment.
5490 (classes_info): Ditto.
5494 * arm-linux-tdep.c (ARM_LDR_PC_SP_4): Add define.
5495 (arm_linux_restart_syscall_init): Handle both on-stack and in-kernel
5496 versions of the trampoline. Handle Thumb vs. ARM addresses.
5497 (arm_kernel_linux_restart_syscall_tramp_frame): New global.
5498 (arm_linux_init_abi): Install it.
5499 * arm-tdep.c (arm_psr_thumb_bit): Make global.
5500 * arm-tdep.c (arm_psr_thumb_bit): Add prototype.
5504 * ui-out.c (ui_out_field_core_addr): Make local char buffer
5505 a little bigger, to avoid possibility of an overflow.
5507 * breakpoint.c (breakpoint_adjustment_warning): Make local char
5508 buffers a little bigger, to avoid possibility of an overflow.
5510 * coffread.c (coff_getfilename): Add check to avoid overflow.
5512 * objc-lang.c (selectors_info): Add a small safety margin to
5514 (classes_info): Error out on too long REGEXP.
5516 * infrun.c (handle_inferior_event): Remove unused function call.
5518 * fork-child.c (fork_inferior): Remove ifdef'd code and
5521 * linux-thread-db.c (attach_thread): Discard unused value.
5523 * linux-nat.c (linux_handle_extended_wait): Delete unused variable.
5525 * remote.c (remote_get_noisy_reply): Discard unused value.
5526 (remote_vcont_resume): Ditto.
5527 (remote_stop_ns): Ditto.
5529 * linespec.c (decode_objc): Delete unused variable.
5531 * tui/tui-regs.c (tui_register_format): Delete unused variable.
5533 * dwarf2read.c (add_partial_symbol): Discard unused values.
5534 (read_base_type): Delete unused variable.
5536 * dbxread.c (read_dbx_symtab): Discard unused value.
5538 * eval.c (evaluate_subexp_standard): Delete unused variable,
5539 and discard unused values.
5541 * infcmd.c (_initialize_infcmd): Discard unused values.
5543 * stabsread.c (rs6000_builtin_type): Missing break statement.
5545 * dbxread.c (process_one_symbol): Discard unused value.
5547 * coffread.c (coff_end_symtab): Delete unused variable.
5549 * dwarf2read.c (dw2_get_file_names): Discard unused value.
5550 (dwarf2_add_typedef): Delete unused variable.
5551 (read_namespace): Ditto.
5552 (dwarf_decode_macros): Ditto.
5554 * m2-lang.c (evaluate_subexp_modula2): Discard unused variable.
5556 * opencl-lang.c (evaluate_subexp_opencl): Discard unused value.
5558 * p-valprint.c (pascal_val_print): Discard unused value.
5560 * utils.c (nquery): Call va_end before return;
5564 * proc-service.c (ps_plog): Call va_end before return.
5568 * python/python.c (gdbpy_value_cst): New global.
5569 (_initialize_python): Initialize it.
5570 * python/python-internal.h (gdbpy_value_cst): Declare.
5571 * python/py-value.c (convert_value_from_python): Use
5576 * python/py-cmd.c (cmdpy_init): Fix memory leak.
5578 * breakpoint.c (catch_syscall_completer): Free malloced list.
5580 * jv-lang.c (java_primitive_type_from_name): Add missing break.
5582 * opencl-lang.c (lval_func_check_validity): Rename inner variables.
5583 (lval_func_check_synthetic_pointer): Ditto.
5584 (lval_func_free_closure): Fix use-after-free.
5588 * psymtab.c (expand_partial_symbol_tables): Use
5589 ALL_OBJFILE_PSYMTABS.
5593 * objc-lang.c (selectors_info): Error on too long REGEXP.
5597 * python/py-param.c (set_parameter_value): Add missing
5600 * linux-record.c (record_linux_system_call): Add missing
5605 * breakpoint.c (print_one_breakpoint_location): Remove unused
5606 argument PRINT_ADDRESS_BITS. Update callers.
5607 (print_one_breakpoint): Likewise.
5611 * breakpoint.c (wrap_indent_at_field): New function.
5612 (print_breakpoint_location): Use it instead of WRAP_INDENT argument.
5613 Allocate ui_stream locally instead of using STB argument.
5614 (print_one_breakpoint_location): Update call.
5615 * ui-out.c (ui_out_query_field): New function.
5616 * ui-out.h (ui_out_query_field): Add prototype.
5621 * ada-exp.y (write_object_renaming): Add FALLTHROUGH comment.
5625 * objc-lang.c (selectors_info): Prevent string overrun.
5627 * tui/tui-stack.c (tui_get_function_from_frame): Fix off by one
5630 * symtab.c (rbreak_command): Move variable 'file_name' to
5633 * d-valprint.c (dynamic_array_type): Avoid shadowing a function
5634 param with a local variable of the same name.
5638 * value.c (value_from_history_ref): New function.
5639 * value.h (value_from_history_ref): Export.
5640 * cli/cli-utils.c (get_number_trailer): Use value_from_history_ref
5641 to parse value history references.
5642 * cli/cli-utils.h (get_number_trailer): Update comment.
5646 * inferior.c (detach_inferior_command): Use get_number_or_range.
5647 (kill_inferior_command): Ditto.
5648 (remove_inferior_command): Ditto.
5649 (initialize_inferiors): Make command names plural.
5650 Update help strings.
5654 * darwin-nat-info.c: Fix comment typo.
5655 * dwarf2expr.h: Ditto.
5656 * fbsd-nat.c: Ditto.
5657 * fbsd-nat.h: Ditto.
5658 * frame-unwind.h: Ditto.
5660 * hppa-hpux-tdep.c: Ditto.
5661 * i386-linux-nat.c: Ditto.
5662 * linux-nat.c: Ditto.
5663 * nbsd-nat.c: Ditto.
5664 * nbsd-nat.h: Ditto.
5665 * ppc-linux-tdep.c: Ditto.
5668 * tui/tui-winsource.c: Ditto.
5672 * breakpoint.c (reattach_breakpoints): Avoid resource leak (ui_file).
5674 * maint.c (maintenance_do_deprecate): Plug a memory leak.
5676 * dwarf2loc.c (insert_bits): Avoid shadowing a function param
5677 with a local variable of the same name.
5679 * i387-tdep.c (i387_supply_fxsave): Avoid shadowing a function
5680 param with a local variable of the same name.
5681 (i387_supply_xsave): Ditto.
5683 * linux-low.c (linux_nat_xfer_osdata): Rename local variable so
5684 that it does not shadow a function parameter.
5686 * i386-nat.c (i386_length_and_rw_bits): Document that case
5687 statement is meant to fall through.
5689 * expprint.c (dump_subexp_body_standard): Document that case
5690 statement is meant to fall through.
5692 * amd64-linux-tdep.c (amd64_linux_syscall_record): Delete
5693 dead if statement. Condition can't be false.
5697 * arm-tdep.c: Fix typos in comments.
5698 * bsd-uthread.c: Ditto.
5699 * completer.c: Ditto.
5701 * cp-namespace.c: Ditto.
5702 * cp-support.c: Ditto.
5703 * cris-tdep.c: Ditto.
5705 * dwarf2read.c: Ditto.
5707 * gdbtypes.h: Ditto.
5708 * inferior.h: Ditto.
5709 * mdebugread.c: Ditto.
5710 * mips-tdep.c: Ditto.
5711 * ppc-linux-nat.c: Ditto.
5712 * ppc-linux-tdep.c: Ditto.
5713 * printcmd.c: Ditto.
5714 * sol-thread.c: Ditto.
5715 * solib-frv.c: Ditto.
5717 * sparc64-tdep.c: Ditto.
5718 * spu-tdep.c: Ditto.
5719 * stabsread.c: Ditto.
5724 * python/py-block.c: Ditto.
5725 * python/py-symbol.c: Ditto.
5726 * python/py-symtab.c: Ditto.
5727 * python/py-value.c: Ditto.
5728 * tui/tui-win.c: Ditto.
5732 * inferior.c (print_inferior): Accept a string instead of an int
5733 for requested_inferiors, and use get_number_or_range to parse it.
5734 (info_inferiors_command): Pass args string to print_inferior.
5735 (initialize_inferiors): Change help string for info inferiors.
5736 * inferior.h (print_inferior): Export prototype change.
5740 * common/ax.def (invalid2): Set to 0x31.
5744 * dwarf2loc.c (disassemble_dwarf_expression) <DW_OP_breg[0-9]+>: Use
5746 (disassemble_dwarf_expression) <DW_OP_bregx>: Drop variable offset,
5748 (disassemble_dwarf_expression) <DW_OP_fbreg>: Use L and plongest.
5752 * Makefile.in (clean): Make clean should remove generated files
5753 observer.h and observer.inc.
5757 Revert the following patch (not approved yet):
5759 * Makefile.in (HFILES_NO_SRCDIR): Add printcmd.h.
5760 * ax-gdb.c (gen_printf_expr_callback): New function.
5761 * ax-gdb.h (gen_printf_expr_callback): Forward declare.
5762 * ax-general.c (ax_memcpy): New function.
5763 (ax_print): Handle "printf".
5765 * ax.h (ax_memcpy): Forward declare.
5766 * common/ax.def (invalid2): Removed.
5767 (printf): New entry.
5768 * printcmd.c (printcmd.h): New include.
5769 (string_printf): New function.
5770 (ui_printf): Removed.
5771 (printf_command): Remove static. Call string_printf.
5772 (eval_command): Call string_printf.
5773 * printcmd.h: New file.
5774 * tracepoint.c (validate_actionline,
5775 encode_actions_1): handle printf_command.
5779 * ax-general.c (ax_pick): Add missing newline.
5783 * breakpoint.c (breakpoint_1): Change first argument from an int
5784 to a char pointer, so that the function now accepts a list of
5785 breakpoints rather than just one. Use new function
5786 'number_is_in_list' to implement.
5787 (breakpoints_info): Pass char * instead of int to breakpoint_1.
5788 (watchpoints_info): Ditto.
5789 (tracepoints_info): Ditto.
5790 (maintenance_info_breakpoints): Ditto.
5791 (_initialize_breakpoint): Update help strings to reflect the fact
5792 that these functions can now take more than one argument.
5793 * cli/cli-utils.c (number_is_in_list): New function.
5794 * cli/cli-utils.h (number_is_in_list): Export.
5798 * memattr.c (mem_enable_command): Use get_number_or_range.
5799 (mem_disable_command): Ditto.
5800 (mem_delete_command): Ditto.
5801 (_initialize_mem): Tweak usage message to reflect multiple
5806 Add gdb.lookup_global_symbol python function.
5808 * python/py-symbol.c (gdbpy_lookup_global_symbol): New function.
5809 * python/python-internal.h (gdbpy_lookup_global_symbol): Declare it.
5810 * python/python.c (GdbMethods): Add entry for lookup_global_symbol.
5814 * language.c (language_class_name_from_physname): Rename
5815 'curr_language' argument to 'lang'; use in body.
5819 * cli/cli-utils.c (number_is_in_list): Check for zero return.
5823 * frame-unwind.h: Fix comment to mention the this frame, not the
5828 * symfile.c (auto_solib_limit): Remove.
5829 * symfile.h (auto_solib_limit): Remove.
5833 * Makefile.in (INSTALLED_LIBS): Delete. Update comment.
5837 * gdbthread.h (print_thread_info): Change prototype.
5838 * thread.c (print_thread_info): Accept char* instead of int for
5839 requested_threads argument. Use new function number_is_in_list
5840 to determine which threads to list.
5841 (info_threads_command): Pass char* to print_thread_info.
5842 * cli/cli-utils.c (number_is_in_list): New function.
5843 * cli/cli-utils.h (number_is_in_list): Export.
5844 * mi/mi-main.c (mi_cmd_thread_info): Pass char* to
5846 (print_one_inferior): Ditto.
5847 (mi_cmd_list_thread_groups): Ditto.
5851 * common/Makefile.in (CFLAGS): New.
5852 (COMPILE): Add $(CFLAGS).
5856 * breakpoint.c (catch_syscall_command_1): Fix typo.
5860 * reverse.c: Include cli-utils.h.
5861 * printcmd.c: Include cli-utils.h.
5862 (string_printf): Use skip_spaces.
5863 * cli/cli-utils.h: New file.
5864 * cli/cli-utils.c: New file.
5865 * cli/cli-dump.h (skip_spaces): Move to cli-utils.h.
5866 * cli/cli-dump.c (skip_spaces): Move to cli-utils.c.
5867 * breakpoint.h (get_number, get_number_or_range): Move to
5869 * breakpoint.c: Include cli-utils.h.
5870 (get_number_trailer, get_number, get_number_or_range)
5871 (ep_skip_leading_whitespace): Move to cli-utils.c.
5872 (create_breakpoint_sal, find_condition_and_thread)
5873 (decode_static_tracepoint_spec, watch_command_1)
5874 (watch_maybe_just_location, ep_parse_optional_if_clause)
5875 (catch_fork_command_1, catch_exec_command_1)
5876 (catch_syscall_command_1): Use skip_spaces, skip_to_space.
5877 * Makefile.in (SUBDIR_CLI_OBS): Add cli-utils.o.
5878 (SUBDIR_CLI_SRCS): Add cli-utils.c.
5879 (HFILES_NO_SRCDIR): Add cli-utils.h.
5880 (cli-utils.o): New target.
5884 * remote.c (remote_close): Reset INFERIOR_PTID to NULL_PTID
5885 before calling discard_all_inferiors.
5889 * opencl-lang.c (STRUCT_OCL_TYPE): Remove.
5890 (struct builtin_opencl_type): Remove.
5891 (builtin_opencl_type): Change return type to "struct type **".
5892 (lookup_opencl_vector_type): Update caller.
5893 (opencl_language_arch_info): Copy primitive type vector from gdbarch.
5894 (build_opencl_types): Install plain array of "struct type *"
5895 instead of "struct builtin_opencl_type".
5900 * arm-linux-nat.c: Include "observer.h" and "gdbthread.h".
5901 (PTRACE_GETHBPREGS, PTRACE_SETHBPREGS): Define.
5902 (struct arm_linux_hwbp_cap): New type.
5903 (arm_linux_get_hwbp_cap): New function.
5904 (arm_linux_get_hw_breakpoint_count): Likewise.
5905 (arm_linux_get_hw_watchpoint_count): Likewise.
5906 (arm_linux_can_use_hw_breakpoint): Likewise.
5907 (arm_hwbp_type): New type.
5908 (arm_hwbp_control_t): Likewise.
5909 (struct arm_linux_hw_breakpoint): Likewise.
5910 (struct arm_linux_thread_points): Likewise.
5911 (arm_threads): New global variable.
5912 (arm_linux_find_breakpoints_by_tid): New function.
5913 (arm_hwbp_control_initialize): Likewise.
5914 (arm_hwbp_control_is_enabled): Likewise.
5915 (arm_hwbp_control_disable): Likewise.
5916 (arm_linux_hw_breakpoint_initialize): Likewise.
5917 (arm_linux_get_hwbp_type): Likewise.
5918 (arm_linux_hw_watchpoint_initialize): Likewise.
5919 (arm_linux_hw_breakpoint_equal): Likewise.
5920 (arm_linux_insert_hw_breakpoint1): Likewise.
5921 (arm_linux_remove_hw_breakpoint1): Likewise.
5922 (arm_linux_insert_hw_breakpoint): Likewise.
5923 (arm_linux_remove_hw_breakpoint): Likewise.
5924 (arm_linux_region_ok_for_hw_watchpoint): Likewise.
5925 (arm_linux_insert_watchpoint): Likewise.
5926 (arm_linux_remove_watchpoint): Likewise.
5927 (arm_linux_stopped_data_address): Likewise.
5928 (arm_linux_stopped_by_watchpoint): Likewise.
5929 (arm_linux_watchpoint_addr_within_range): Likewise.
5930 (arm_linux_new_thread): Likewise.
5931 (arm_linux_thread_exit): Likewise.
5932 (_initialize_arm_linux_nat): Install hardware breakpoint/watchpoint
5933 related target callbacks. Register arm_linux_new_thread and
5934 arm_linux_thread_exit.
5935 * arm-tdep.h (arm_pc_is_thumb): Add prototype.
5936 * arm-tdep.c (arm_pc_is_thumb): Make global.
5937 (arm_gdbarch_init): Call set_gdbarch_have_nonsteppable_watchpoint.
5941 * breakpoint.c (update_watchpoint): Do not attempt to recreate
5942 per-frame locations while within a function epilogue.
5946 * ser-mingw.c (ser_windows_close): Reformat comment to better conform
5947 to GNU coding standards.
5951 Allow use of mingw native on Windows 95 OS.
5952 * ser-mingw.c (CancelIo): New macro for dynamically loaded DLL entry.
5953 (ser_windows_close): Only call CancelIo if function exists.
5954 (_initialize_ser_windows): Use LoadLirary/GetProcAddress
5955 to check for existence of CancelIo function in kernel32 DLL.
5959 * Makefile.in (HFILES_NO_SRCDIR): Add printcmd.h.
5960 * ax-gdb.c (gen_printf_expr_callback): New function.
5961 * ax-gdb.h (gen_printf_expr_callback): Forward declare.
5962 * ax-general.c (ax_memcpy): New function.
5963 (ax_print): Handle "printf".
5965 * ax.h (ax_memcpy): Forward declare.
5966 * common/ax.def (invalid2): Removed.
5967 (printf): New entry.
5968 * printcmd.c (printcmd.h): New include.
5969 (string_printf): New function.
5970 (ui_printf): Removed.
5971 (printf_command): Remove static. Call string_printf.
5972 (eval_command): Call string_printf.
5973 * printcmd.h: New file.
5974 * tracepoint.c (validate_actionline,
5975 encode_actions_1): handle printf_command.
5979 * reverse.c (delete_one_bookmark): Argument is now bookmark
5980 id rather than pointer to bookmark struct.
5981 (delete_bookmark_command): Use get_number_or_range.
5982 (goto_bookmark_command): Parse with get_number instead of strtoul.
5983 (bookmark_1): New function. Print info for one bookmark.
5984 (bookmarks_info): Use get_number_or_range and bookmark_1.
5988 * thread.c (info_threads_command): Re-implement using
5989 get_number_or_range.
5990 (thread_apply_command): Ditto.
5994 * common/ax.def: New file.
5995 * ax.h (enum agent_op): Use ax.def.
5996 * ax-general.c (aop_map): Use ax.def.
6000 * ax-general.c (aop_map): Add pick and rot.
6001 * dwarf2loc.c (compile_dwarf_to_ax) <DW_OP_over>: Reimplement.
6002 <DW_OP_rot>: Implement.
6003 * ax.h (enum agent_op) <aop_pick, aop_rot>: New constants.
6005 * ax-general.c (ax_pick): New function.
6009 * Makefile.in (HFILES_NO_SRCDIR): Don't mention ada-operator.inc.
6014 * cp-support.c (make_symbol_overload_list_namespace): Do not call
6015 make_symbol_overload_list_block with NULL BLOCK.
6016 * valarith.c (unop_user_defined_p): Resolve also TYPE_CODE_TYPEDEF.
6020 * breakpoint.c (get_number_trailer): No longer accept a NULL PP.
6021 * breakpoint.h (get_number_or_range): Declare.
6022 * printcmd.c (ALL_DISPLAYS): Declare.
6023 (delete_display): Reimplement taking a display pointer.
6024 (undisplay_command): Accept a range of displays to delete, using
6025 get_number_or_range.
6029 * c-valprint.c (c_val_print): Add embedded_offset to address
6030 for arrays of unspecified length.
6031 * p-valprint.c (pascal_val_print): Likewise.
6035 * gdb/arm-tdep.c (arm_displaced_step_copy_insn): Move code to ...
6036 (arm_process_displaced_insn): .. here. Remove parameter INSN.
6037 (thumb_process_displaced_insn): New.
6038 * gdb/arm-linux-tdep.c (arm_linux_displaced_step_copy_insn): Update
6039 call to arm_process_displaced_insn.
6040 * gdb/arm-tdep.h : Update declaration of arm_process_displaced_insn.
6044 * dwarf2loc.h (dwarf2_compile_expr_to_ax): Declare.
6045 * dwarf2loc.c (dwarf2_compile_expr_to_ax): Rename from
6046 compile_dwarf_to_ax. No longer static. Call
6047 dwarf2_compile_cfa_to_ax.
6048 (locexpr_tracepoint_var_ref): Update.
6049 (loclist_tracepoint_var_ref): Update.
6050 * dwarf2-frame.h (dwarf2_compile_cfa_to_ax): Declare.
6051 * dwarf2-frame.c (execute_cfa_program): Remove 'this_frame'
6052 argument; add 'gdbarch' and 'pc'.
6053 (dwarf2_compile_cfa_to_ax): New function.
6054 (dwarf2_frame_cache): Update.
6058 * ada-lang.c (ada_type_of_array): Fix the size of the array
6059 in the case of an unconstrained packed array.
6063 * common/Makefile.in: Add more targets for make.
6067 * dwarf2loc.c (unimplemented): Fix typo.
6071 * dwarf2loc.c (unimplemented): Handle unnamed opcodes.
6072 (compile_dwarf_to_ax) <default>: Use unimplemented.
6073 <DW_OP_deref>: Update.
6074 (disassemble_dwarf_expression): Update.
6075 * dwarf2read.c (dwarf_stack_op_name): Remove 'def' argument.
6076 (decode_locdesc): Update.
6077 * dwarf2expr.h (dwarf_stack_op_name): Update.
6081 * ax.h (struct aop_map) <name>: Now const.
6085 * ax-gdb.c.c (gen_expr) <UNOP_MEMVAL>: Handle value kinds other
6090 * infrun.c (get_displaced_step_closure_by_addr): New.
6091 * inferior.h: Declare it.
6092 * arm-tdep.c: (arm_pc_is_thumb): Call
6093 get_displaced_step_closure_by_addr. Adjust MEMADDR if it
6100 * tracepoint.c (memrange_sortmerge): Fix list A's end calculation.
6105 * value.c (value_contents_copy_raw): Extend describing comment.
6106 Assert that the destination contents we're overwriting are wholly
6108 (value_contents_copy): Extend describing comment.
6113 * value.c (value_available_contents_eq): Remove redundant local
6114 variables. Fix available contents comparision.
6115 * value.h (value_available_contents_eq): Extend describing
6120 * thread.c (info_threads_command): Add missing i18n markup and remove
6125 * breakpoint.c (longjmp_names): New variable.
6126 (struct breakpoint_objfile_data): New type.
6127 (breakpoint_objfile_key): New variable.
6128 (msym_not_found): New variable.
6129 (msym_not_found_p): New predicate.
6130 (get_breakpoint_objfile_data): New function.
6131 (create_overlay_event_breakpoint): Check per-objfile cache for
6133 (create_longjmp_master_breakpoint): Likewise.
6134 (create_std_terminate_master_breakpoint): Likewise.
6135 (create_exception_master_breakpoint): Likewise.
6136 (_initialize_breakpoint): Register per-objfile data key.
6140 * breakpoint.c ((create_overlay_event_breakpoint): Const-propagate
6142 (create_longjmp_master_breakpoint): Loop over longjmp names.
6143 (create_std_terminate_master_breakpoint): Const-propagate parameter
6145 (update_breakpoints_after_exec): Adjust.
6146 (breakpoint_re_set): Adjust.
6150 * thread.c (info_threads_command): Process arg as thread id,
6151 or list of thread ids.
6152 (thread_find_command): New command.
6153 (_initialize_thread): Document argument for info threads.
6154 Document 'thread find' command.
6155 * NEWS: Document new command "thread find".
6159 * Makefile.in (ACLOCAL_AMFLAGS): Add `-I ../config'.
6160 * aclocal.m4: Regenerated with aclocal-1.11.1.
6161 * common/configure: Regenerate with autoconf-2.64.
6165 * opencl-lang.c (build_opencl_types): Set the size of the built-in
6166 bool data type to a size of one byte.
6171 * target.c (memory_xfer_live_readonly_partial): Document where to
6172 look for interface description.
6177 * arm-tdep.c (copy_ldr_str_ldrb_strb): Replace PC with SP in
6178 order to store PC value on stack instead of text section.
6182 * rs6000-tdep.c (IS_EFP_PSEUDOREG): Use correct constant for
6183 the EFP register set size.
6184 (efpr_pseudo_register_read): Use regcache_raw_read_part to read
6185 data from the VMX register.
6186 (efpr_pseudo_register_write): Use regcache_raw_write_part to read
6187 and write data from/to the VMX register.
6191 * command.h (enum command_class): New class 'no_set_class', for
6192 "show" commands without a corresponding "set" command.
6193 * value.c (_initialize_values): Use 'no_set_class' for "show values".
6194 * copying.c (_initialize_copying): Ditto for "show copying" and
6196 * cli/cli-cmds.c (init_cli_cmds): Ditto for "show commands" and
6198 * cli/cli-setshow.c (cmd_show_list): Skip "show" commands for
6199 which there is no corresponding "set" command (eg. "show copying").
6204 * exec.c (section_table_available_memory): Change `len' parameter
6206 * exec.h (section_table_available_memory): Ditto.
6207 * value.h (read_value_memory): Rename the `offset' parameter to
6213 * memrange.c (compare_mem_ranges): Mention sort order in
6215 (normalize_mem_ranges): Add comment. Fix ra->length calculation.
6216 * tracepoint.c (traceframe_available_memory): Extend comment to
6217 mention what happens to RESULT when the target does not support
6223 * value.c (mark_value_bytes_unavailable): Fix indexing the `bef'
6228 * value.c (value_bits_valid, value_bits_synthetic_pointer):
6229 No longer handle NULL values.
6233 * exceptions.h (NOT_AVAILABLE_ERROR): New error.
6234 * value.c: Include "exceptions.h".
6235 (require_available): Throw NOT_AVAILABLE_ERROR instead of a
6237 * cp-abi.c: Include gdb_assert.h.
6238 (baseclass_offset): Add `embedded_offset' and `val' parameters.
6239 Assert the method is implemented. Wrap NOT_AVAILABLE_ERROR
6241 * cp-abi.h (baseclass_offset): Add `embedded_offset' and `val'
6242 parameters. No longer returns -1 on error.
6243 (struct cp_abi_ops) <baseclass_offset>: Add `embedded_offset' and
6245 * cp-valprint.c: Include exceptions.h.
6246 (cp_print_value): Handle NOT_AVAILABLE_ERROR errors when fetching
6247 the baseclass_offset. Handle unavailable base classes. Use
6248 val_print_invalid_address.
6249 * p-valprint.c: Include exceptions.h.
6250 (pascal_object_print_value): Handle NOT_AVAILABLE_ERROR errors
6251 when fetching the baseclass_offset. No longer expect
6252 baseclass_offset returning -1. Handle unavailable base classes.
6253 Use val_print_invalid_address.
6254 * valops.c (dynamic_cast_check_1): Rename `contents' parameter to
6255 `valaddr' parameter, and change its type to gdb_byte pointer. Add
6256 `embedded_offset' and `val' parameters. Adjust.
6257 (dynamic_cast_check_2): Rename `contents' parameter to `valaddr'
6258 parameter, and change its type to gdb_byte pointer. Add
6259 `embedded_offset' and `val' parameters. Adjust. No longer expect
6260 baseclass_offset returning -1.
6261 (value_dynamic_cast): Use value_contents_for_printing rather than
6262 value_contents. Adjust.
6263 (search_struct_field): No longer expect baseclass_offset returning
6265 (search_struct_method): If reading memory from the target is
6266 necessary, wrap it in a new value to pass to baseclass_offset. No
6267 longer expect baseclass_offset returning -1.
6268 (find_method_list): No longer expect baseclass_offset returning
6269 -1. Use value_contents_for_printing rather than value_contents.
6270 * valprint.c (val_print_invalid_address): New function.
6271 * valprint.h (val_print_invalid_address): Declare.
6272 * gdbtypes.c (is_unique_ancestor_worker): New `embedded_offset'
6273 and `val' parameters. No longer expect baseclass_offset returning
6275 * gnu-v2-abi.c: Include "exceptions.h".
6276 (gnuv2_baseclass_offset): Add `embedded_offset' and `val'
6277 parameters. Handle unavailable memory. Recurse through
6278 gnuv2_baseclass_offset directly, rather than through
6279 baseclass_offset. No longer returns -1 on not found, instead
6281 * gnu-v3-abi.c (gnuv3_baseclass_offset): Add `embedded_offset' and
6282 `val' parameters. Adjust.
6286 * tracepoint.c (memrange_sortmerge): Don't merge ranges that are
6287 almost but not quite adjacent.
6291 * value.h (value_entirely_available): Declare.
6292 * value.c (value_entirely_available): New function.
6293 * c-valprint.c (c_value_print): Don't try fetching the pointer's
6294 real type if the pointer is unavailable.
6298 * valops.c (value_repeat): Use read_value_memory instead of
6303 * value.h (value_contents_copy, value_contents_copy_raw): Declare.
6304 * value.c (value_contents_copy_raw, value_contents_copy): New
6306 (value_primitive_field): Use value_contents_copy_raw instead of
6308 * valops.c (value_fetch_lazy): Use value_contents_copy instead of
6310 (value_array, value_slice): Ditto.
6311 * valarith.c (value_subscripted_rvalue): Use
6312 value_contents_copy_raw instead of memcpy.
6316 <unavailable> references.
6318 * valops.c (get_value_at): Use value_from_contents_and_address,
6319 avoiding read_memory.
6323 * c-valprint.c (c_val_print): Print a string with unavailable
6324 contents as an array.
6328 * value.h (unpack_bits_as_long): Delete declaration.
6329 (unpack_value_bits_as_long): Declare.
6330 (unpack_value_field_as_long): Declare.
6331 (value_field_bitfield): Declare.
6332 * value.c (unpack_bits_as_long): Rename to...
6333 (unpack_value_bits_as_long_1): ... this. Add embedded_offset and
6334 value parameters. Return the extracted result in a new output
6335 parameter. If the value contents are unavailable, return false,
6336 otherwise return true.
6337 (unpack_value_bits_as_long): New.
6338 (unpack_field_as_long): Rename to...
6339 (unpack_value_field_as_long_1): ... this. Add embedded_offset and
6340 Add embedded_offset and value parameters. Return the extracted
6341 result in a new output parameter. If the value contents are
6342 unavailable, return false, otherwise return true.
6343 (unpack_value_field_as_long): New.
6344 (unpack_field_as_long_1): New.
6345 (unpack_field_as_long): Reimplement as wrapper around
6346 unpack_value_field_as_long_1.
6347 (value_field_bitfield): New function.
6348 * valops.c (value_fetch_lazy): When fetching a bitfield, use
6349 unpack_value_bits_as_long. Mark the value as unavailable, if it
6351 * jv-valprint.c (java_print_value_fields): Use
6352 value_field_bitfield.
6353 * p-valprint.c (pascal_object_print_value_fields): Use
6354 value_field_bitfield.
6355 * cp-valprint.c (cp_print_value_fields): Use value_field_bitfield.
6359 * value.c (get_internalvar_integer): Also return the int value of
6360 TYPE_CODE_INT INTERNALVAR_VALUE values.
6361 (set_internalvar): Don't special case TYPE_CODE_INT.
6365 * value.c (struct internalvar) <enum internalvar_kind>: Remove
6366 INTERNALVAR_POINTER.
6368 (value_of_internalvar): Remove INTERNALVAR_POINTER handling.
6369 (set_internalvar): Remove special TYPE_CODE_PTR handling.
6370 (preserve_one_internalvar): Remove INTERNALVAR_POINTER handling.
6374 * value.h (value_available_contents_eq): Declare.
6375 * value.c (find_first_range_overlap): New function.
6376 (value_available_contents_eq): New function.
6377 * valprint.c (val_print_array_elements): Use
6378 value_available_contents_eq.
6379 * ada-valprint.c (val_print_packed_array_elements): Use
6380 value_available_contents_eq.
6381 * jv-valprint.c (java_value_print): Use
6382 value_available_contents_eq.
6386 * target.c (target_read_live_memory): New function.
6387 (memory_xfer_live_readonly_partial): New.
6388 (memory_xfer_partial): If reading from a traceframe, fallback to
6389 reading unavailable read-only memory from read-only regions of
6391 * tracepoint.c (disconnect_tracing): Adjust.
6392 (set_current_traceframe): New, factored out from
6393 set_traceframe_number.
6394 (set_traceframe_number): Reimplement to only change the traceframe
6395 number on the GDB side.
6396 (do_restore_current_traceframe_cleanup): Adjust.
6397 (make_cleanup_restore_traceframe_number): New.
6398 (cur_traceframe_number): New global.
6399 (tfile_open): Set cur_traceframe_number to no traceframe.
6400 (set_tfile_traceframe): New function.
6401 (tfile_trace_find): If looking up a traceframe using any method
6402 other than by number, make sure the current tfile traceframe
6403 matches gdb's current traceframe. Update the current tfile
6404 traceframe if the lookup succeeded.
6405 (tfile_fetch_registers, tfile_xfer_partial)
6406 (tfile_get_trace_state_variable_value): Make sure the remote
6407 traceframe matches gdb's current traceframe.
6408 * remote.c (remote_traceframe_number): New global.
6409 (remote_open_1): Set it to -1.
6410 (set_remote_traceframe): New function.
6411 (remote_fetch_registers, remote_store_registers)
6412 (remote_xfer_memory, remote_xfer_partial)
6413 (remote_get_trace_state_variable_value): Make sure the remote
6414 traceframe matches gdb's current traceframe.
6415 (remote_trace_find): If looking up a traceframe using any method
6416 other than by number, make sure the current remote traceframe
6417 matches gdb's current traceframe. Update the current remote
6418 traceframe if the lookup succeeded.
6419 * infrun.c (fetch_inferior_event): Adjust.
6420 * tracepoint.h (set_current_traceframe): Declare.
6421 (get_traceframe_number, set_traceframe_number): Add describing
6426 Mark pieces of values as unavailable if the corresponding memory
6429 * valops.c: Include tracepoint.h.
6430 (value_fetch_lazy): Use read_value_memory.
6431 (read_value_memory): New.
6432 * value.h (read_value_memory): Declare.
6433 * dwarf2loc.c (read_pieced_value): Use read_value_memory.
6434 * exec.c (section_table_available_memory): New function.
6435 * exec.h (section_table_available_memory): Declare.
6439 * Makefile.in (SFILES): Add memrange.c.
6440 (HFILES_NO_SRCDIR): Add memrange.h.
6441 (COMMON_OBS): Add memrange.o.
6442 * memrange.c: New file.
6443 * memrange.h: New file.
6444 * tracepoint.c: Include memrange.h.
6445 (struct mem_range): Delete.
6446 (mem_range_s): Delete.
6447 (traceframe_available_memory): New function.
6448 * tracepoint.h (traceframe_available_memory): Declare.
6452 * target.h (struct traceframe_info): Forward declare.
6453 (enum target_object): Add TARGET_OBJECT_TRACEFRAME_INFO.
6454 (struct target_ops) <to_traceframe_info>: New field.
6455 (target_traceframe_info): New.
6456 * target.c (update_current_target): Inherit and default
6458 * remote.c (PACKET_qXfer_traceframe_info): New.
6459 (remote_protocol_features): Register qXfer:traceframe-info:read.
6460 (remote_xfer_partial): Handle TARGET_OBJECT_TRACEFRAME_INFO.
6461 (remote_traceframe_info): New.
6462 (init_remote_ops): Install it.
6463 (_initialize_remote): Install "set/show remote traceframe-info"
6465 * tracepoint.h (parse_traceframe_info): Declare.
6466 * tracepoint.c (struct mem_range): New.
6467 (mem_range_s): New typedef.
6468 (struct traceframe_info): New.
6469 (traceframe_info): New global.
6470 (free_traceframe_info): New function.
6471 (clear_traceframe_info): New function.
6472 (start_tracing, tfind_1, set_traceframe_number): Clear traceframe
6474 (build_traceframe_info): New function.
6475 (tfile_traceframe_info): New function.
6476 (init_tfile_ops): Install tfile_traceframe_info.
6477 (traceframe_info_start_memory, free_result): New functions.
6478 (memory_attributes, traceframe_info_elements): New globals.
6479 (parse_traceframe_info, get_traceframe_info): New functions.
6480 * features/traceframe-info.dtd: New file.
6481 * Makefile.in (XMLFILES): Add traceframe-info.dtd.
6485 Base support for <unavailable> value contents.
6487 * value.h (value_bytes_available): Declare.
6488 (mark_value_bytes_unavailable): Declare.
6489 * value.c (struct range): New struct.
6490 (range_s): New typedef.
6491 (ranges_overlap): New function.
6492 (range_lessthan): New function.
6493 (ranges_contain_p): New function.
6494 (struct value) <unavailable>: New field.
6495 (value_bytes_available): New function.
6496 (mark_value_bytes_unavailable): New function.
6497 (require_not_optimized_out): Constify parameter.
6498 (require_available): New function.
6499 (value_contents_all, value_contents): Require all bytes be
6501 (value_free): Free `unavailable'.
6502 (value_copy): Copy `unavailable'.
6503 * valprint.h (val_print_unavailable): Declare.
6504 * valprint.c (valprint_check_validity): Rename `offset' parameter
6505 to `embedded_offset'. If printing a scalar, check whether the
6506 value chunk is available.
6507 (val_print_unavailable): New.
6508 (val_print_scalar_formatted): Check whether the value is
6510 * python/py-prettyprint.c (apply_val_pretty_printer): Refuse
6511 pretty-printing unavailable values.
6515 Fix const/volatile qualifiers of C++ types, PR c++/12328.
6516 * c-typeprint.c (c_type_print_args): Update the function comment. New
6517 variable param_type, initialize it. Remove const/volatile qualifiers
6518 for language_cplus and !show_artificial. Use param_type.
6522 * symtab.c (find_pc_sect_line): New variable objfile, initialize it
6523 from S. Iterate S using ALL_OBJFILE_SYMTABS. Verify BV for each S.
6524 * symtab.h (struct symtab) <next>: Comment extension.
6528 * Makefile.in (CLEANDIRS): Remove duplicated common dir.
6532 * common/Makefile.in: Add copyright header.
6536 * infrun.c (proceed): Move switching out and in of tfind mode from
6538 (fetch_inferior_event): ... to here.
6542 * Makefile.in: Remove signals.o from COMMON_OBS. Link
6544 * configure.ac: Add common to sub dir.
6545 * configure: Regenerate.
6551 * common/Makefile.in: New.
6552 * common/configure.ac: New.
6553 * common/aclocal.m4: New.
6554 * common/configure: Generate.
6558 * vec.h (VEC_block_remove): Place VEC_ASSERT_INFO on the right
6559 side of the parenthesis.
6563 * vec.h (VEC_block_remove): Fix comment.
6567 * linux-nat.c (linux_nat_filter_event): Fix typo in comment.
6571 * i386-tdep.c (i386_process_record): Rename l suffixes to d suffixes
6572 in comments for pcmpgtd, pcmpeqd, psubd, paddd, pcmpgtd, pcmpeqd,
6578 * i386-tdep.c (i386_process_record) <0x660f3807>: Fix the comment to
6580 (i386_process_record) <lddqu>: Fix the opcode to 0xf20ff0.
6581 (i386_process_record) <0x0f3807>: Fix the comment to phsubsw.
6585 * dwarf2read.c (read_subroutine_type): Set special calling
6586 convention flag for functions compiled by IBM XL C for OpenCL.
6587 * ppc-sysv-tdep.c: Include "dwarf2.h"
6588 (ppc_sysv_abi_push_dummy_call): Implement IBM OpenCL vector types
6590 (do_ppc_sysv_return_value): Add FUNC_TYPE argument. Implement
6591 IBM OpenCL vector types calling convention.
6592 (ppc_sysv_abi_return_value): Pass through FUNC_TYPE.
6593 (ppc_sysv_abi_broken_return_value): Likewise.
6594 (ppc64_sysv_abi_push_dummy_call): Implement IBM OpenCL vector
6595 types calling convention.
6596 (ppc64_sysv_abi_return_value): Likewise.
6597 * spu-tdep.c: Include "dwarf2.h"
6598 (spu_return_value): Implement IBM OpenCL vector types calling
6603 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Implement
6604 correct ABI for AltiVec vector arguments.
6608 * valprint.c (val_print): Extend comment.
6609 * ada-valprint.c (ada_valprint): Rewrite comment deferring
6610 interface explanation to val_print.
6611 (ada_val_print_array): Adjust comment to current interface.
6612 (print_field_values): Adjust comment to current interface.
6613 * c-valprint.c (c_val_print): Rewrite comment deferring interface
6614 explanation to val_print.
6615 * f-valprint.c (f_val_print): Ditto.
6616 * jv-valprint.c (java_val_print): Ditto.
6617 * m2-valprint.c (m2_val_print): Ditto.
6618 * p-valprint.c (pascal_val_print): Ditto.
6622 * breakpoint.c (parse_breakpoint_sals): Fix description.
6627 * python/py-inferior.c (python_on_normal_stop): New function.
6628 (python_on_resume): New function.
6629 (python_inferior_exit): New function.
6630 (gdbpy_initialize_inferior): Add normal_stop, target_resumed, and
6631 inferior_exit observers.
6632 * python/py-evtregistry.c: New file.
6633 * python/py-threadevent.c : New file.
6634 * python/py-event.c: New file.
6635 * python/py-evts.c: New file.
6636 * python/py-continueevent.c: New file.
6637 * python/py-bpevent.c: New file.
6638 * python/py-signalevent.c: New file.
6639 * python/py-exetiedevent.c: New file.
6640 * python/py-breakpoint.c (gdbpy_breakpoint_from_bpstats): New function.
6641 Move struct breakpoint_object from here...
6642 * python/python-internal.h: ... to here.
6643 * python/py-event.h: New file.
6644 * python/py-events.h: New file.
6645 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-breakpointstopevent.o,
6646 py-continueevent.o, py-event.o, py-eventregistry.o, py-events.o,
6647 py-exitedevent.o, py-signalstopevent.o, and py-stopevent.o.
6648 (SUBDIR_PYTHON_SRCS): Add py-breakpointstopevent.c,
6649 py-continueevent.c, py-event.c, py-eventregistry.c, py-events.c,
6650 py-exitedevent.c, py-signalstopevent.c, and py-stopevent.c.
6651 Add build rules for all the above.
6655 * dwarf2read.c (dwarf2_section_empty_p): New function.
6656 (dwarf2_read_section): Use dwarf2_section_empty_p.
6657 (dwarf2_section_size): New function.
6658 (dwarf2_get_section_info): Unconditionally read section.
6659 (dwarf2_read_index): Use dwarf2_section_empty_p.
6660 (partial_read_comp_unit_head): Use dwarf2_section_size.
6661 (dwarf2_symbol_mark_computed): Likewise.
6665 * NEWS: Add item for "catch syscall" on mips*-linux* targets.
6669 * mips-linux-tdep.c: Include xml-syscall.h.
6670 (mips_linux_get_syscall_number): New function.
6671 (mips_linux_init_abi): Add calls to
6672 mips_linux_get_syscall_number() and set_xml_syscall_file_name().
6673 * data-directory/Makefile.in (SYSCALLS_FILES): Add
6674 mips-o32-linux.xml, mips-n32-linux.xml and mips-n64-linux.xml
6675 * syscalls/mips-n32-linux.xml: New file.
6676 * syscalls/mips-n64-linux.xml: New file.
6677 * syscalls/mips-o32-linux.xml: New file.
6681 * dwarf2read.c (dwarf2_ranges_read): Skip empty range entries.
6682 Complain about inverted range entries.
6683 (dwarf2_record_block_ranges): Likewise.
6688 * breakpoint.c (update_watchpoint): Fix name of the
6689 update_global_location_list function.
6690 (print_one_breakpoint): Fix typo.
6691 (_initialize_breakpoint): Remove extra space in hbreak help
6693 * breakpoint.h (struct bp_location) <length>: Fix field
6698 * regcache.c (registers_changed_ptid): Don't explictly always
6699 clear `current_regcache'. Only clear current_thread_ptid and
6700 current_thread_arch when PTID matches. Only reinit the frame
6701 cache if PTID matches the current inferior_ptid. Move alloca(0)
6703 (registers_changed): ... here.
6707 * arm-tdep.c (arm_skip_stack_protector): Accept any symbol that
6708 starts with __stack_chk_guard as stack guard symbol.
6712 * disasm.c (compare_lines): Handle the end of sequence markers
6713 within the line table to better support disassembling over
6714 compilation unit boundaries.
6718 * arm-tdep.c (skip_prologue_function): Add GDBARCH and IS_THUMB
6719 arguments. Skip in-prologue calls to glibc __aeabi_read_tp
6720 implementation even if no symbols are available.
6721 (thumb_analyze_prologue): Update call to skip_prologue_function.
6722 (arm_analyze_prologue): Likewise.
6726 * arm-tdep.c: Include "observer.h".
6727 (arm_prologue_this_id): Use frame PC if get_frame_func returns 0.
6728 (arm_exidx_data_key): New static variable.
6729 (struct arm_exidx_entry, arm_exidx_entry_s): New data types.
6730 (struct arm_exidx_data): Likewise.
6731 (arm_exidx_data_free): New function.
6732 (arm_compare_exidx_entries): Likewise.
6733 (arm_obj_section_from_vma): Likewise.
6734 (arm_exidx_new_objfile): Likewise.
6735 (arm_find_exidx_entry): Likewise.
6736 (arm_exidx_fill_cache): Likewise.
6737 (arm_exidx_unwind_sniffer): Likewise.
6738 (arm_exidx_unwind): New global variable.
6739 (arm_gdbarch_init): Append unwinder arm_exidx_unwind.
6740 (_initialize_arm_tdep): Attach arm_exidx_new_objfile to new_objfile
6741 observer. Register arm_exidx_data_key as objfile data.
6745 * arm-tdep.c (arm_analyze_load_stack_chk_guard): Avoid build break
6746 due to accessing uninitialized variable. Fix indentation.
6750 * c-valprint.c (c_value_print): When doing virtual base pointer
6751 adjustment, create a new value with adjusted contents rather than
6752 changing the contents of the value being printed (and getting it
6757 * xml-support.c (xml_find_attribute): New.
6758 (xinclude_start_include): Use it.
6759 * xml-support.h (xml_find_attribute): Declare.
6760 * memory-map.c (memory_map_start_memory)
6761 (memory_map_start_property): Use xml_find_attribute.
6762 * osdata.c (osdata_start_osdata, osdata_start_column): Use
6764 * remote.c (start_thread): Use xml_find_attribute.
6765 * solib-target.c (library_list_start_segment)
6766 (library_list_start_section, library_list_start_library)
6767 (library_list_start_list): Use xml_find_attribute.
6768 * xml-tdesc.c (tdesc_start_target, tdesc_start_feature)
6769 (tdesc_start_union, tdesc_start_struct, tdesc_start_flags)
6770 (tdesc_start_field): Use xml_find_attribute.
6774 * opencl-lang.c (STRINGIFY): Rename to OCL_STRING.
6775 (BUILD_OCL_VTYPES): Update.
6779 * configure.ac: Work around non-GNU sed limitation when computing
6780 python version number.
6781 * configure: Regenerate.
6785 Fix debug printing of TYPE_INSTANCE.
6786 * expprint.c (print_subexp_standard) <TYPE_INSTANCE>: New.
6787 (dump_subexp_body_standard) <TYPE_INSTANCE>: New.
6791 Fix debug printing of BINOP_IN, OP_OBJC_MSGCALL,
6792 OP_F77_UNDETERMINED_ARGLIST, OP_COMPLEX, OP_OBJC_SELECTOR, OP_NAME,
6793 OP_OBJC_NSSTRING, OP_F90_RANGE and OP_DECFLOAT.
6794 * ada-operator.inc: Rename the file to ...
6795 * ada-operator.def: ... here, wrap all the entries by macro OP.
6796 * expprint.c (op_name_standard): Remove all the entries. Include
6797 "std-operator.def" instead.
6798 * expression.h (enum exp_opcode): Include "std-operator.def" and
6799 "ada-operator.def". Move all the entries ...
6800 * std-operator.def: ... here, wrap all the entries by macro OP.
6804 * breakpoint.h (remove_jit_event_breakpoints): New prototype.
6805 * breakpoint.c (remove_jit_event_breakpoints): New function.
6806 * jit.c (jit_descriptor_addr): Delete.
6807 (registering_code): Delete.
6808 (clear_int): Delete.
6809 (jit_inferior_data): New variable.
6810 (struct jit_inferior_data): New type.
6811 (get_jit_inferior_data): New function.
6812 (jit_inferior_data_cleanup): New function.
6813 (jit_read_descriptor): Adjust.
6814 (jit_register_code): Adjust.
6815 (jit_breakpoint_re_set_internal): New function; move code here ...
6816 (jit_inferior_init): ... from here.
6817 (jit_breakpoint_re_set): Adjust.
6818 (jit_reset_inferior_data_and_breakpoints): New function.
6819 (jit_inferior_created_observer): Adjust.
6820 (jit_inferior_exit_hook): Adjust.
6821 (jit_executable_changed_observer): New function.
6822 (jit_event_handler): Adjust.
6823 (_initialize_jit): Adjust.
6827 * m32r-tdep.c (m32r_gdbarch_init): Replace accidentally deleted
6833 * python/python.c (execute_gdb_command): Call
6834 prevent_dont_repeat.
6835 * top.c (suppress_dont_repeat): New global.
6836 (dont_repeat): Use it.
6837 (prevent_dont_repeat): New function.
6838 * command.h (prevent_dont_repeat): Declare.
6842 * infcmd.c (finish_backward): Use breakpoint_set_silent.
6843 * python/py-breakpoint.c (bppy_set_silent): Use
6844 breakpoint_set_silent.
6845 (bppy_set_thread): Use breakpoint_set_thread.
6846 (bppy_set_task): Use breakpoint_set_task.
6847 * breakpoint.h (breakpoint_set_silent, breakpoint_set_thread)
6848 (breakpoint_set_task): Declare.
6849 (make_breakpoint_silent): Remove.
6850 * breakpoint.c (breakpoint_set_silent): New function.
6851 (breakpoint_set_thread): Likewise.
6852 (breakpoint_set_task): Likewise.
6853 (make_breakpoint_silent): Remove.
6857 * breakpoint.h (user_breakpoint_p): Declare.
6858 * breakpoint.c (user_breakpoint_p): New function.
6859 (breakpoint_1): Use it.
6860 (save_breakpoints): Likewise.
6864 * configure.ac: Add handling of Python distribution on Windows.
6865 * python-config.py: If the LIBS, SYSLIBS, LIBPL and/or LINKFORSHARED
6866 sysconfig variables are not defined, then do not use them.
6867 On Windows, if LIBPL is not defined, then use prefix + '/libs'
6868 instead. On Windows, return all paths using forward-slashes
6869 rather than backslashes.
6873 * configure.ac: Remove fallback behavior for building
6874 against Python. Remove tweaking of Python include path.
6875 Add PYTHON_CPPFLAGS and PYTHON_LIBS substitution.
6876 (AC_TRY_LIBPYTHON): Adjust program used in linking test.
6877 If link is successful, set PYTHON_CPPFLAGS and PYTHON_LIBS.
6878 Always restore CPPFLAGS and LIBS after linking test.
6879 * configure: Regenerated.
6880 * Makefile.in (INTERNAL_CPPFLAGS): Add @PYTHON_CPPFLAGS@.
6881 (INSTALLED_LIBS, CLIBS): Add @PYTHON_LIBS@.
6882 * python/python-internal.h: Adjust includes of Python .h files.
6886 * tracepoint.c (traceframe_walk_blocks): Add missing i18n markup
6891 * inflow.c (gdb_has_a_terminal): Fix typo in interactive_mode
6896 * arm-linux-nat.c: Update calls to regcache_register_status
6897 instead of regcache_valid_p.
6898 * aix-thread.c: Likewise.
6899 * i386gnu-nat.c: Likewise.
6904 * valops.c (compare_parameters): Verify TYPE_NFIELDS before
6905 touching TYPE_FIELD_ARTIFICIAL.
6909 * MAINTAINERS: Move myself from Responsible Maintainers to Authorized
6914 * tracepoint.c (tfile_xfer_partial): If there's no traceframe
6915 selected, don't try iterating over the traceframe's blocks.
6916 (tfile_has_stack): If there's no traceframe selected, then there's
6918 (tfile_has_registers): If there's no traceframe selected, then
6919 there's no registers.
6923 * target.c (memory_xfer_partial): No need to restore shadows if we
6924 haven't read anything.
6928 * mips-tdep.c (mips_print_register): Use get_frame_register_value
6929 and val_print_scalar_formatted.
6933 * tracepoint.c (tfile_read): New.
6934 (tfile_open): Use it.
6935 (tfile_get_traceframe_address): Use it.
6936 (tfile_trace_find): Use it.
6937 (walk_blocks_callback_func): New typedef.
6938 (match_blocktype): New function.
6939 (traceframe_walk_blocks): New function.
6940 (traceframe_find_block_type): New function.
6941 (tfile_fetch_registers, tfile_xfer_partial)
6942 (tfile_get_trace_state_variable_value): Use
6943 traceframe_find_block_type and tfile_read.
6947 * remote-mips.c: Add internationalization mark ups. Remove
6948 trailing \n from already marked up strings.
6952 * python/py-prettyprint.c (print_string_repr): Clear
6953 'addressprint' option when calling val_print_string.
6954 (print_children): Handle Val_pretty_default. Clear 'addressprint'
6955 option when calling val_print_string.
6959 * python/python.c (gdbpy_solib_name): Use gdb_py_longest and
6961 * python/python-internal.h (GDB_PY_LL_ARG, GDB_PY_LLU_ARG): New
6963 (gdb_py_longest, gdb_py_ulongest): New typedefs.
6964 (gdb_py_long_from_longest, gdb_py_long_from_ulongest)
6965 (gdb_py_long_as_ulongest): New defines.
6966 (gdb_py_object_from_longest, gdb_py_object_from_ulongest)
6967 (gdb_py_int_as_long): Declare.
6968 * python/py-value.c (valpy_lazy_string): Use gdb_py_longest,
6969 GDB_PY_LL_ARG, gdb_py_object_from_longest.
6970 (valpy_long): Add comment.
6971 * python/py-utils.c (get_addr_from_python): Use
6972 gdb_py_long_as_ulongest. Handle overflow properly.
6973 (gdb_py_object_from_longest): New function.
6974 (gdb_py_object_from_ulongest): Likewise.
6975 (gdb_py_int_as_long): Likewise.
6976 * python/py-type.c (typy_array): Use gdb_py_int_as_long.
6977 * python/py-symtab.c (salpy_get_pc): Use
6978 gdb_py_long_from_ulongest.
6979 (salpy_get_line): Use PyInt_FromLong.
6980 * python/py-param.c (set_parameter_value): Use
6982 * python/py-lazy-string.c (stpy_get_address): Use
6983 gdb_py_long_from_ulongest.
6984 * python/py-frame.c (frapy_pc): Use gdb_py_long_from_ulongest.
6985 * python/py-cmd.c (cmdpy_completer): Use gdb_py_int_as_long.
6986 * python/py-breakpoint.c (bppy_set_thread): Use
6988 (bppy_set_task): Likewise.
6989 (bppy_set_ignore_count): Likewise.
6990 (bppy_set_hit_count): Likewise.
6991 * python/py-block.c (blpy_get_start): Use
6992 gdb_py_object_from_ulongest.
6993 (blpy_get_end): Likewise.
6994 (gdbpy_block_for_pc): Use gdb_py_ulongest and GDB_PY_LLU_ARG.
6999 * gdb/objfiles.h (struct objfile) <addr_low>: New field.
7000 * gdb/solib.c (solib_read_symbols): Check for addr_low in
7001 equality test for objfile, initialize addr_low if needed.
7005 * tui/tui-regs.c (tui_register_format): Remove dead code.
7009 * printcmd.c (print_formatted): Use val_print_scalar_formatted
7010 instead of print_scalar_formatted.
7011 (print_scalar_formatted): Don't handle 's' format strings here,
7012 and add an assertion that we never see such format here.
7013 * valprint.h (val_print_scalar_formatted): Declare.
7014 * valprint.c (val_print_scalar_formatted): New.
7015 * c-valprint.c (c_val_print): Use val_print_scalar_formatted
7016 instead of print_scalar_formatted.
7017 * jv-valprint.c (java_val_print): Ditto.
7018 * p-valprint.c (pascal_val_print): Ditto.
7019 * ada-valprint.c (ada_val_print_1): Ditto.
7020 * f-valprint.c (f_val_print): Ditto.
7021 * infcmd.c (registers_info): Ditto.
7022 * m2-valprint.c (m2_val_print): Ditto.
7026 * m2-valprint.c (print_unbounded_array): Pass
7027 value_contents_for_printing rather than value_contents, to
7028 m2_print_array_contents. Also pass in the value.
7032 * dwarf2read.c (dwarf2_read_index, write_psymtabs_to_index)
7033 (save_gdb_index_command): Switch to .gdb_index version 4.
7037 * mi/mi-main.c (get_register): Use get_frame_register_value rather
7038 than frame_register, and always pass a valid value to val_print.
7042 Centralize printing "<optimized out>".
7044 * valprint.h (val_print_optimized_out): Declare.
7045 * cp-valprint.c (cp_print_value_fields): Use
7046 val_print_optimized_out.
7047 * jv-valprint.c (java_print_value_fields): Ditto.
7048 * p-valprint.c (pascal_object_print_value_fields): Ditto.
7049 * printcmd.c (print_formatted): Ditto.
7050 * valprint.c (valprint_check_validity): Ditto.
7051 (value_check_printable): Ditto.
7052 (val_print_optimized_out): New.
7056 * infcmd.c (default_print_registers_info): Allocate values so to
7057 never pass a NULL value to val_print.
7061 * cp-valprint.c (cp_print_value): Treat the 'skip' local as
7062 boolean. Make sure to always pass a value that matches the
7063 contents buffer to callees. Preserve `address' for following
7065 * value.c (value_contents_for_printing_const): New.
7066 (value_address): Constify value argument.
7067 * value.h (value_contents_for_printing_const): Declare.
7068 (value_address): Constify value argument.
7072 * regcache.c (struct regcache_descr): Rename
7073 sizeof_raw_register_valid_p field to sizeof_raw_register_status,
7074 and sizeof_cooked_register_valid_p to
7075 sizeof_cooked_register_status.
7076 (init_regcache_descr): Adjust.
7077 (struct regcache): Rename register_valid_p field to
7079 (regcache_xmalloc_1, regcache_xfree, regcache_save)
7080 (do_cooked_read): Adjust.
7081 (regcache_valid_p): Rename to ...
7082 (regcache_register_status): ... this. Adjust.
7083 (regcache_invalidate): Adjust.
7084 (regcache_raw_read, regcache_cooked_read, regcache_raw_write):
7086 (regcache_raw_supply): Adjust. If buf i NULL, mark the register
7087 as unavailable, not valid.
7088 (regcache_dump): Adjust.
7089 * regcache.h (enum register_status): New.
7090 (regcache_register_status): Declare.
7091 (regcache_invalidate): Delete declaration.
7092 * corelow.c (get_core_registers): Adjust.
7093 * tracepoint.c (tfile_fetch_registers): Adjust.
7094 * trad-frame.c (REG_VALUE): Rename to ...
7095 (TF_REG_VALUE): ... this.
7096 (REG_UNKNOWN): Rename to ...
7097 (TF_REG_UNKNOWN): ... this.
7098 (trad_frame_set_value, trad_frame_set_unknown): Adjust.
7099 * mi/mi-main.c (register_changed_p): Adjust.
7103 * regcache.c (struct regcache_descr): Remove outdated comment.
7104 (init_regcache_descr): Remove sizeof_raw_register_valid_p
7106 (regcache_xmalloc): Rename to ...
7107 (regcache_xmalloc_1): ... this. Add `readonly_p' parameter.
7108 Allocate the regcache type accordingly.
7109 (regcache_xmalloc): New as wrapper around regcache_xmalloc_1.
7110 (regcache_xfree): Asser the source is also readonly. Copy sizeof
7111 cooked registers, not raw.
7112 (regcache_dup_no_passthrough): Delete.
7113 (get_thread_arch_regcache): Use regcache_xmalloc_1.
7114 * h8300-tdep.c (h8300_push_dummy_call): Tweak comment to not
7115 mention obsolete write_register_bytes.
7116 * regcache.h (regcache_dup_no_passthrough): Delete declaration.
7120 Stop remote_read_bytes from handling partial reads itself.
7122 * remote-fileio.c: Include target.h.
7123 (remote_fileio_write_bytes): Delete.
7124 (remote_fileio_func_open, remote_fileio_func_write)
7125 (remote_fileio_func_rename, remote_fileio_func_unlink): Use
7127 (remote_fileio_func_stat): Use target_read_memory and
7128 target_write_memory.
7129 (remote_fileio_func_gettimeofday): Use target_write_memory.
7130 (remote_fileio_func_system): Use target_read_memory.
7131 * remote.c (remote_write_bytes): Make it static.
7132 (remote_read_bytes): Don't handle partial reads here.
7133 * remote.h (remote_read_bytes): Delete declaration.
7137 Simplify XML parsing a bit.
7139 * xml-support.h (gdb_xml_parse_quick): Declare.
7140 * xml-support.c (gdb_xml_create_parser_and_cleanup_1): Renamed
7141 from gdb_xml_create_parser_and_cleanup, and added `old_chain'
7143 (gdb_xml_create_parser_and_cleanup): Reimplement on top of
7144 gdb_xml_create_parser_and_cleanup_1.
7145 (gdb_xml_parse_quick): New.
7146 * memory-map.c (parse_memory_map): Use gdb_xml_parse_quick.
7147 * osdata.c (osdata_parse): Ditto.
7148 * remote.c (remote_threads_info): Ditto.
7149 * solib-target.c (solib_target_parse_libraries): Ditto.
7150 * xml-syscall.c (syscall_parse_xml): Ditto.
7151 * xml-tdesc.c (tdesc_parse_xml): Ditto.
7155 * configure.tgt (mips*-*-elf): New; just like mips*-*-*, but
7156 with remote-mips.o added to gdb_target_obs.
7157 * Makefile.in (ALL_TARGET_OBS): Add remote-mips.o.
7161 * ada-valprint.c (val_print_packed_array_elements): Pass the
7162 correct struct value to val_print.
7163 (ada_val_print_1): Ditto.
7167 Don't lose embedded_offset in printing routines throughout.
7169 * valprint.h (val_print_array_elements): Change prototype.
7170 * valprint.c (val_print_array_elements): Add `embedded_offset'
7171 parameter, and adjust to pass it down to val_print, while passing
7172 `valaddr' or `address' unmodified. Take embedded_offset into
7173 account when checking repetitions.
7174 * c-valprint.c (c_val_print): Pass embedded_offset to
7175 val_print_array_elements instead of adjusting `valaddr' and
7177 * m2-valprint.c (m2_print_array_contents, m2_val_print): Pass
7178 embedded_offset to val_print_array_elements instead of adjusting
7180 * p-lang.h (pascal_object_print_value_fields): Adjust prototype.
7181 * p-valprint.c (pascal_val_print): Pass embedded_offset to
7182 val_print_array_elements and pascal_object_print_value_fields
7183 instead of adjusting `valaddr'.
7184 (pascal_object_print_value_fields): Add `offset' parameter, and
7186 (pascal_object_print_value): Add `offset' parameter, and adjust to
7188 (pascal_object_print_static_field): Use
7189 value_contents_for_printing/value_embedded_offset, rather than
7191 * ada-valprint.c (val_print_packed_array_elements): Add `offset'
7192 parameter, and adjust to use it. Use
7193 value_contents_for_printing/value_embedded_offset, rather than
7195 (ada_val_print): Rename `valaddr0' parameter to `valaddr'.
7196 (ada_val_print_array): Add `offset' parameter, and adjust to use
7198 (ada_val_print_1): Rename `valaddr0' parameter to `valaddr', and
7199 `embedded_offset' to `offset'. Don't re-adjust `valaddr'.
7200 Instead work with offsets. Use
7201 value_contents_for_printing/value_embedded_offset, rather than
7202 value_contents. Change `defer_val_int' local type to CORE_ADDR,
7203 and use value_from_pointer to extract a target pointer, rather
7204 than value_from_longest.
7205 (print_variant_part): Add `offset' parameter. Replace
7206 `outer_valaddr' parameter by a new `outer_offset' parameter.
7207 Don't re-adjust `valaddr'. Instead pass down adjusted offsets.
7208 (ada_value_print): Use
7209 value_contents_for_printing/value_embedded_offset, rather than
7211 (print_record): Add `offset' parameter, and adjust to pass it
7213 (print_field_values): Add `offset' parameter. Replace
7214 `outer_valaddr' parameter by a new `outer_offset' parameter.
7215 Don't re-adjust `valaddr'. Instead pass down adjusted offsets.
7216 Use value_contents_for_printing/value_embedded_offset, rather than
7218 * d-valprint.c (dynamic_array_type): Use
7219 value_contents_for_printing/value_embedded_offset, rather than
7221 * jv-valprint.c (java_print_value_fields): Add `offset' parameter.
7222 Don't re-adjust `valaddr'. Instead pass down adjusted offsets.
7223 (java_print_value_fields): Take `offset' into account. Don't
7224 re-adjust `valaddr'. Instead pass down adjusted offsets.
7225 (java_val_print): Take `embedded_offset' into account. Pass it to
7226 java_print_value_fields.
7227 * f-valprint.c (f77_print_array_1): Add `embedded_offset'
7228 parameter. Don't re-adjust `valaddr' or `address'. Instead pass
7229 down adjusted offsets.
7230 (f77_print_array): Add `embedded_offset' parameter. Pass it down.
7231 (f_val_print): Take `embedded_offset' into account.
7235 * inflow.c: Include "gdbcmd.h".
7236 (interactive_mode): New static global, moved here from top.c.
7237 (show_interactive_mode): New function, moved here from top.c.
7238 use gdb_has_a_terminal instead of input_from_terminal_p to
7239 determine the current mode.
7240 (gdb_has_a_terminal): Add handling of the "iteractive-mode"
7242 (_initialize_inflow): Add the "set/show interactive-mode"
7243 commands. Moved here from top.c, after having adjusted slightly
7245 * top.c (interactive_mode, show_interactive_mode): Delete, moved
7247 (input_from_terminal_p): Remove handling of "interactive-mode"
7248 setting, moved to infow.c.
7249 (init_main): Remove creation of the "set/show interactive-mode"
7250 commands, moved to inflow.c.
7254 * NEWS: Add entry for native ia64-hpux support.
7259 * thread.c (free_thread): Free 'name'.
7260 (print_thread_info): Emit thread name. Change CLI output.
7261 (thread_name_command): New function.
7262 (do_captured_thread_select): Emit newline.
7263 (_initialize_thread): Register 'thread name' command.
7264 * target.h (struct target_ops) <to_thread_name>: New field.
7265 (target_thread_name): New macro.
7266 * target.c (update_current_target): Handle to_thread_name.
7267 * python/py-infthread.c (thpy_get_name): New function.
7268 (thpy_set_name): Likewise.
7269 (thread_object_getset): Add "name".
7270 * linux-nat.c (linux_nat_thread_name): New function.
7271 (linux_nat_add_target): Set to_thread_name.
7272 * gdbthread.h (struct thread_info) <name>: New field.
7276 * ada-valprint.c (ada_print_scalar): Remove unsigned char downcast.
7277 (ada_val_print_1): Likewise.
7281 * rs6000-tdep.c (rs6000_skip_prologue): Make sure that the prologue
7282 upper limit address is not greater than the function end address
7283 when the upper limit could not be computed using the debugging
7288 * cli/cli-cmds.c (apropos_command): Free the compiled regex. Use
7290 * utils.c: Include gdb_regex.h.
7291 (do_regfree_cleanup): New function.
7292 (make_regfree_cleanup): Likewise.
7293 (get_regcomp_error): Likewise.
7294 * gdb_regex.h (make_regfree_cleanup, get_regcomp_error): Declare.
7298 * cli/cli-cmds.c (apropos_command): Fix formatting. Don't call
7303 * p-exp.y (intvar): New static variable, used to set CURRENT_TYPE
7304 for internal variables.
7305 (last_was_structop): New static variable.
7306 (COMPLETE): New token.
7307 (field_exp): New rule to group all '.' suffix handling.
7308 Add mark_struct_expression calls when approriate to be able
7309 to correctly find fields for completion.
7310 (yylex): Adapt to handle field completion and set INTVAR when
7315 * arm-tdep.c (arm_register_reggroup_p): FPS register is in
7316 save_reggroup, restore_reggroup and all_reggroup.
7320 * ada-valprint. (ada_printchar): Use the correct type length
7321 in call to ada_emit_char.
7322 * c-valprint.c (c_val_print): Remove cast in call to LA_PRINT_CHAR.
7326 * solib-som.h (hpux_major_release): Declare variable here.
7327 * solib-som.c: Remove <sys/utsname.h> header.
7328 (DEFAULT_HPUX_MAJOR_RELEASE): New macro.
7329 (hpux_major_release): Make global, change default value to
7330 DEFAULT_HPUX_MAJOR_RELEASE.
7331 (get_hpux_major_release): Simply return HPUX_MAJOR_RELEASE.
7332 * hppa-hpux-nat.c: Add <sys/utsname.h> include.
7333 Add "solib-som.h" header.
7334 (set_hpux_major_release): New function.
7335 (_initialize_hppa_hpux_nat): Call set_hpux_major_release.
7339 * configure.tgt (*-*-uclinux*): Match more Linux os targets
7343 * ia64-hpux-nat.c (ia64_hpux_fetch_register): Remove trailing
7344 new-line at end of warning message.
7345 (ia64_hpux_store_register): Remove trailing new-line at end of
7347 * ia64-hpux-tdep.c: Rephrase comment.
7348 * solib-ia64-hpux.c (struct dld_info): Change type of field
7349 dld_flags from "long long" to ULONGEST.
7353 * target.h (deprecated_child_ops): Delete declaration.
7354 * target.c (deprecated_child_ops): Delete definition.
7358 * Makefile.in (hpux-thread.o): Delete rule.
7359 * configure.ac: Don't check for HPUX DCE threads support.
7360 * configure, config.in: Regenerate.
7361 * hppa-hpux-nat.c (child_suppress_run): Delete.
7362 (hppa_hpux_child_can_run): Delete.
7363 (_initialize_hppa_hpux_nat): Don't override to_can_run.
7364 * hpux-thread.c: Delete.
7368 * hpux-thread.c (hpux_pid_to_str): Delete.
7372 * ada-valprint.c (ada_emit_char): Remove strange code.
7373 Check that c is <= UCHAR_MAX before passing it to isascii.
7374 (char_at): Do not assume that TYPE_LEN is either 1 or 2.
7378 * top.c (input_from_terminal_p): Restrict the use of interactive_mode
7379 to the case where instream is stdin.
7383 * ia64-tdep.h (struct regcache): Forward declare.
7384 (struct ia64_infcall_ops): New struct type.
7385 (struct gdbarch_tdep): New fields "find_global_pointer_from_solib"
7387 * ia64-tdep.c (ia64_find_global_pointer_from_dynamic_section):
7388 Renames ia64_find_global_pointer.
7389 (ia64_find_global_pointer, ia64_allocate_new_rse_frame)
7390 (ia64_store_argument_in_slot, ia64_set_function_addr: New function.
7391 (ia64_push_dummy_call): Adjust to use the new tdep ia64_infocall_ops
7393 (ia64_infcall_ops): New static global constant.
7394 (ia64_gdbarch_init): Set tdep->infcall_ops.
7395 * ia64-hpux-nat.c (ia64_hpux_xfer_solib_got): New function.
7396 (ia64_hpux_xfer_partial): Add TARGET_OBJECT_HPUX_SOLIB_GOT handing.
7397 * ia64-hpux-tdep.c: Include "regcache.h", "gdbcore.h" and "inferior.h".
7398 (ia64_hpux_dummy_code): New static global constant.
7399 (ia64_hpux_push_dummy_code, ia64_hpux_allocate_new_rse_frame)
7400 (ia64_hpux_store_argument_in_slot, ia64_hpux_set_function_addr)
7401 (ia64_hpux_dummy_id, ia64_hpux_find_global_pointer_from_solib):
7403 (ia64_hpux_infcall_ops): New static global constant.
7404 (ia64_hpux_init_abi): Install gdbarch and tdep methods needed
7405 for inferior function calls to work properly on ia64-hpux.
7409 * target.h (enum target_object): Add TARGET_OBJECT_HPUX_UREGS.
7410 * ia64-tdep.h (struct frame_info): forward declaration.
7411 (struct gdbarch_tdep): Add field size_of_register_frame.
7412 * ia64-tdep.c (ia64_access_reg): Use tdep->size_of_register_frame
7413 to determine the size of the register frame.
7414 (ia64_size_of_register_frame): New function.
7415 (ia64_gdbarch_init): Set tdep->size_of_register_frame.
7416 * ia64-hpux-tdep.c: Include "target.h" and "frame.h".
7417 (IA64_HPUX_UREG_REASON): New macro.
7418 (ia64_hpux_stopped_in_syscall, ia64_hpux_size_of_register_frame):
7420 (ia64_hpux_init_abi): Set tdep->size_of_register_frame.
7421 * ia64-hpux-nat.c (ia64_hpux_xfer_uregs): New function.
7422 (ia64_hpux_xfer_partial): Add handling of TARGET_OBJECT_HPUX_UREGS
7427 Add support for ia64-hpux.
7428 * config/ia64/hpux.mh, ia64-hpux-nat.c, ia64-hpux-tdep.c,
7429 ia64-hpux-tdep.h, solib-ia64-hpux.c, solib-ia64-hpux.h: New files.
7431 * configure.host: Add handling for ia64-hpux hosts. Add associated
7433 * configure.tgt: Add handling for ia64-hpux targets.
7434 * Makefile.in (ALL_64_TARGET_OBS): Add ia64-hpux-tdep.o.
7435 (HFILES_NO_SRCDIR): Add ia64-hpux-tdep.h.
7436 (ALLDEPFILES): Add ia64-hpux-nat.c ia64-hpux-tdep.c.
7440 [ttrace] Compute thread list immediately after attach.
7441 * inf_ttrace_attach (inf_ttrace_create_threads_after_attach):
7443 (inf_ttrace_attach): Use it.
7447 * libunwind-frame.c (libunwind_frame_cache): Do not return NULL
7448 if we could not determine the frame's function address. Instead,
7449 use the frame's PC, and then continue.
7453 * libunwind-frame.c (__LITTLE_ENDIAN, __BIG_ENDIAN): Define if
7454 not already defined.
7458 * ia64-tdep.c (ia64_struct_type_p): New function.
7459 (ia64_extract_return_value): Handle integral values that are
7460 less than 8 bytes long.
7461 (ia64_push_dummy_call): Likewise.
7465 * ia64-tdep.c (floatformat_ia64_ext_little): Renames
7466 floatformat_ia64_ext.
7467 (floatformat_ia64_ext_big): New static const.
7468 (floatformats_ia64_ext): Set first entry to &floatformat_ia64_ext_big.
7472 * mi/mi-symbol-cmds.c (mi_cmd_symbol_list_lines): Fix error
7474 * mi/mi-main.c (mi_cmd_thread_select): Fix error messages.
7475 (mi_cmd_thread_list_ids): Likewise.
7476 (mi_cmd_data_list_changed_registers): Likewise.
7477 (mi_cmd_data_list_register_values): Likewise.
7478 (mi_cmd_data_write_register_values): Likewise.
7479 (mi_cmd_data_evaluate_expression): Likewise.
7480 (mi_cmd_data_read_memory): Likewise.
7481 (mi_cmd_data_read_memory_bytes): Likewise.
7482 (mi_cmd_data_write_memory): Likewise.
7483 (mi_cmd_enable_timings): Likewise.
7484 * mi/mi-interp.c (mi_cmd_interpreter_exec): Fix error messages.
7485 * mi/mi-cmd-var.c (mi_cmd_var_create): Fix error messages.
7486 (mi_cmd_var_delete): Likewise.
7487 (mi_cmd_var_set_format): Likewise.
7488 (mi_cmd_var_show_format): Likewise.
7489 (mi_cmd_var_info_num_children): Likewise.
7490 (mi_cmd_var_list_children): Likewise.
7491 (mi_cmd_var_info_type): Likewise.
7492 (mi_cmd_var_info_expression): Likewise.
7493 (mi_cmd_var_show_attributes): Likewise.
7494 (mi_cmd_var_assign): Likewise.
7495 (mi_cmd_var_update): Likewise.
7496 (mi_cmd_enable_pretty_printing): Likewise.
7497 (mi_cmd_var_set_update_range): Likewise.
7498 * mi/mi-cmd-target.c (mi_cmd_target_file_get): Fix error
7500 (mi_cmd_target_file_put): Likewise.
7501 (mi_cmd_target_file_delete): Likewise.
7502 * mi/mi-cmd-stack.c (mi_cmd_stack_list_frames): Fix error
7504 (mi_cmd_stack_info_depth): Likewise.
7505 (mi_cmd_stack_list_locals): Likewise.
7506 (mi_cmd_stack_list_args): Likewise.
7507 (mi_cmd_stack_select_frame): Likewise.
7508 (mi_cmd_stack_select_frame): Likewise.
7509 (mi_cmd_stack_info_frame): Likewise.
7510 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Fix error
7512 (mi_cmd_file_list_exec_source_files): Likewise.
7513 * mi/mi-cmd-env.c (mi_cmd_env_pwd): Fix error messages.
7514 (mi_cmd_env_cd): Likewise.
7515 (mi_cmd_env_path): Likewise.
7516 (mi_cmd_env_dir): Likewise.
7517 (mi_cmd_inferior_tty_show): Likewise.
7518 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Fix error messages.
7519 * mi/mi-cmd-break.c (mi_cmd_break_insert): Fix error messages.
7520 (mi_cmd_break_watch): Likewise.
7524 * ppc-linux-nat.c (booke_cmp_hw_point): Fix whitespace.
7525 (ppc_linux_insert_hw_breakpoint): Likewise.
7526 (ppc_linux_remove_hw_breakpoint): Likewise.
7527 (ppc_linux_insert_watchpoint): Likewise.
7532 PR fortran/11104 and DWARF unbound arrays detection.
7533 * dwarf2read.c (read_subrange_type): Set zero length on unspecified
7534 upper bound. Set TYPE_HIGH_BOUND_UNDEFINED if not language_ada on
7535 unspecified upper bound.
7536 * eval.c (evaluate_subexp_standard) <multi_f77_subscript>: Remove
7537 variables array_size_array, tmp_type and offset_item. New variable
7538 array. Remove call to f77_get_upperbound. New variables array_type
7539 and index. Call value_subscripted_rvalue for each dimenasion. Remove
7540 the final call to deprecated_set_value_type.
7544 Make value allocations more lazy.
7545 * ada-lang.c (coerce_unspec_val_to_type): Use allocate_value_lazy
7546 instead of allocate_value and set_value_lazy when possible.
7547 * dwarf2loc.c (dwarf2_evaluate_loc_desc_full): Use allocate_value_lazy
7548 instead of allocate_value and set_value_lazy.
7549 * findvar.c (value_of_register_lazy): Likewise.
7550 (read_var_value): Remove V preallocation, call just check_typedef in
7551 advance. Move allocate_value to LOC_CONST, LOC_LABEL,
7552 LOC_CONST_BYTES. Use allocate_value_lazy in LOC_STATIC, LOC_ARG,
7553 LOC_REF_ARG, LOC_LOCAL, LOC_BLOCK. Set ADDR instead of
7554 set_value_address and break in LOC_BLOCK. Use allocate_value_lazy and
7555 remove lval_memory set in LOC_REGPARM_ADDR. Use allocate_value_lazy
7556 in LOC_UNRESOLVED and LOC_OPTIMIZED_OUT. Add setting lval_memory at
7557 the end, remove set_value_lazy there.
7558 * valarith.c (value_subscripted_rvalue): Use allocate_value_lazy
7559 instead of allocate_value and set_value_lazy when possible.
7560 * valops.c (value_fetch_lazy): Do nop for value_optimized_out VAL.
7561 * value.c (allocate_computed_value): Use allocate_value_lazy instead
7562 of allocate_value and set_value_lazy.
7563 (value_from_contents_and_address): Use allocate_value_lazy instead of
7564 allocate_value and set_value_lazy when possible.
7568 * disasm.c (dump_insns): Support dumping opcodes for MI.
7569 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Allow mode to control
7570 dumping of instruction opcodes.
7574 * configure.tgt: Detect GNU/kFreeBSD and set `gdb_osabi'
7579 * thread.c (do_captured_thread_select): Emit newline before
7584 * s390-tdep.c: Comment cleanup, mostly periods and spaces.
7585 * score-tdep.c: Ditto.
7586 * score-tdep.h: Ditto.
7587 * ser-base.c: Ditto.
7588 * ser-go32.c: Ditto.
7591 * ser-mingw.c: Ditto.
7592 * ser-pipe.c: Ditto.
7594 * ser-unix.c: Ditto.
7595 * sh64-tdep.c: Ditto.
7596 * shnbsd-nat.c: Ditto.
7600 * solib-darwin.c: Ditto.
7601 * solib-frv.c: Ditto.
7603 * solib-irix.c: Ditto.
7604 * solib-osf.c: Ditto.
7605 * solib-pa64.c: Ditto.
7606 * solib-som.c: Ditto.
7607 * solib-spu.c: Ditto.
7608 * solib-sunos.c: Ditto.
7609 * solib-svr4.c: Ditto.
7611 * sol-thread.c: Ditto.
7615 * sparc64-linux-tdep.c: Ditto.
7616 * sparc64-tdep.c: Ditto.
7617 * sparc-linux-nat.c: Ditto.
7618 * sparc-linux-tdep.c: Ditto.
7619 * sparc-sol2-nat.c: Ditto.
7620 * sparc-sol2-tdep.c: Ditto.
7621 * sparc-tdep.c: Ditto.
7622 * sparc-tdep.h: Ditto.
7623 * spu-tdep.c: Ditto.
7624 * stabsread.c: Ditto.
7625 * stabsread.h: Ditto.
7633 * target-descriptions.c: Ditto.
7634 * target-descriptions.h: Ditto.
7636 * target-memory.c: Ditto.
7637 * terminal.h: Ditto.
7640 * tracepoint.c: Ditto.
7641 * tracepoint.h: Ditto.
7642 * trad-frame.h: Ditto.
7643 * typeprint.c: Ditto.
7647 * ui-file.c: Comment cleanup, mostly periods and spaces.
7652 * v850-tdep.c: Ditto.
7653 * valarith.c: Ditto.
7655 * valprint.c: Ditto.
7656 * valprint.h: Ditto.
7661 * vax-tdep.c: Ditto.
7665 * windows-nat.c: Ditto.
7666 * windows-tdep.c: Ditto.
7667 * xcoffread.c: Ditto.
7668 * xcoffsolib.c: Ditto.
7669 * xml-support.c: Ditto.
7670 * xstormy16-tdep.c: Ditto.
7671 * xtensa-tdep.c: Ditto.
7672 * xtensa-tdep.h: Ditto.
7676 * breakpoint.c (resources_needed_watchpoint): Fix indentation.
7677 * gdbtypes.c (is_scalar_type_recursive): Fix formatting.
7682 Implement support for PowerPC BookE ranged watchpoints.
7684 (struct breakpoint_ops) <resources_needed>: New method.
7685 Initialize to NULL in all existing breakpoint_ops instances.
7686 (struct breakpoint) <exact>: New field.
7687 (target_exact_watchpoints): Declare external global.
7688 * breakpoint.c (target_exact_watchpoints): New global flag.
7689 (update_watchpoint): Set b->type to bp_hardware_watchpoint and
7690 b->enable_state to bp_enabled before calling
7691 hw_watchpoint_used_count.
7692 (hw_watchpoint_used_count): Iterate over all bp_locations in a
7693 watchpoint. Call breakpoint's breakpoint_ops.resources_needed
7695 (insert_watchpoint, remove_watchpoint): Use fixed length of 1 byte
7696 if the watchpoint is exact.
7697 (resources_needed_watchpoint): New function.
7698 (watchpoint_breakpoint_ops): Add resources_needed_watchpoint.
7699 (watch_command_1): Set b->exact if the user asked for an exact
7700 watchpoint and one can be set.
7701 (can_use_hardware_watchpoint): Add exact_watchpoints argument.
7702 Pass fixed length of 1 to target_region_ok_for_hw_watchpoint if
7703 the user asks for an exact watchpoint and one can be set. Return
7704 number of needed debug registers to watch the expression.
7705 * gdbtypes.c (is_scalar_type): New function, based on
7706 valprint.c:scalar_type_p.
7707 (is_scalar_type_recursive): New function.
7708 * gdbtypes.h (is_scalar_type_recursive): Declare.
7709 * ppc-linux-nat.c (ppc_linux_region_ok_for_hw_watchpoint): Always
7710 handle regions when ranged watchpoints are available.
7711 (create_watchpoint_request): New function.
7712 (ppc_linux_insert_watchpoint, ppc_linux_remove_watchpoint): Use
7713 create_watchpoint_request.
7714 * rs6000-tdep.c (show_powerpc_exact_watchpoints): New function.
7715 (_initialize_rs6000_tdep): Add `exact-watchpoints' boolean to the
7716 `set powerpc' and `show powerpc' commands.
7717 * target.h (struct target_ops) <to_region_ok_for_hw_watchpoint>:
7718 Mention documentation comment in the target macro.
7719 (target_region_ok_for_hw_watchpoint): Document return value.
7723 * breakpoint.c (update_watchpoint): Decide on using a software or
7724 hardware watchpoint after the bp_locations are created.
7728 Convert hardware watchpoints to use breakpoint_ops.
7729 * breakpoint.h (breakpoint_ops) <insert>: Rename to...
7730 <insert_location>: ... this. Return int instead of void.
7731 Accept pointer to struct bp_location instead of pointer to
7732 struct breakpoint. Adapt all implementations.
7733 (breakpoint_ops) <remove>: Rename to...
7734 <remove_location>: ... this. Accept pointer to struct bp_location
7735 instead of pointer to struct breakpoint. Adapt all implementations.
7736 * breakpoint.c (insert_catchpoint): Delete function.
7737 (insert_bp_location): Call the watchpoint or catchpoint's
7738 breakpoint_ops.insert method.
7739 (remove_breakpoint_1): Call the watchpoint or catchpoint's
7740 breakpoint_ops.remove method.
7741 (insert_watchpoint, remove_watchpoint): New functions.
7742 (watchpoint_breakpoint_ops): New structure.
7743 (watch_command_1): Initialize the OPS field.
7744 * inf-child.c (inf_child_insert_fork_catchpoint)
7745 (inf_child_remove_fork_catchpoint, inf_child_insert_vfork_catchpoint)
7746 (inf_child_remove_vfork_catchpoint, inf_child_insert_exec_catchpoint)
7747 (inf_child_remove_exec_catchpoint, inf_child_set_syscall_catchpoint):
7749 (inf_child_target): Remove initialization of to_insert_fork_catchpoint,
7750 to_remove_fork_catchpoint, to_insert_vfork_catchpoint,
7751 to_remove_vfork_catchpoint, to_insert_exec_catchpoint,
7752 to_remove_exec_catchpoint and to_set_syscall_catchpoint.
7753 * target.c (update_current_target): Change default implementation of
7754 to_insert_fork_catchpoint, to_remove_fork_catchpoint,
7755 to_insert_vfork_catchpoint, to_remove_vfork_catchpoint,
7756 to_insert_exec_catchpoint, to_remove_exec_catchpoint and
7757 to_set_syscall_catchpoint to return_one.
7758 (debug_to_insert_fork_catchpoint, debug_to_insert_vfork_catchpoint)
7759 (debug_to_insert_exec_catchpoint): Report return value.
7760 * target.h (to_insert_fork_catchpoint, to_insert_vfork_catchpoint)
7761 (to_insert_exec_catchpoint): Change declaration to return int instead
7766 * arm-tdep.c: Internationalization.
7769 * fork-child.c: Ditto.
7770 * nto-procfs.c: Ditto.
7771 * ppc-sysv-tdep.c: Ditto.
7773 * remote-mips.c: Ditto.
7775 * rs6000-nat.c: Ditto.
7776 * rs6000-tdep.c: Ditto.
7780 * xml-support.c: Ditto.
7781 * mi/mi-cmd-break.c: Ditto.
7782 * mi/mi-cmd-var.c: Ditto.
7783 * mi/mi-interp.c: Ditto.
7784 * mi/mi-main.c: Ditto.
7788 * remote-sim.c (gdbsim_store_register): Update API to
7789 sim_store_register to check more error conditions.
7793 * nto-procfs.c: Comment cleanup, mostly periods and spaces.
7794 * nto-tdep.c: Ditto.
7795 * nto-tdep.h: Ditto.
7796 * objc-exp.y: Ditto.
7797 * objc-lang.c: Ditto.
7798 * objfiles.c: Ditto.
7799 * objfiles.h: Ditto.
7800 * observer.c: Ditto.
7801 * opencl-lang.c: Ditto.
7804 * parser-defs.h: Ditto.
7807 * posix-hdep.c: Ditto.
7808 * ppcbug-rom.c: Ditto.
7809 * ppc-linux-nat.c: Ditto.
7810 * ppc-linux-tdep.c: Ditto.
7811 * ppc-linux-tdep.h: Ditto.
7812 * ppcnbsd-tdep.c: Ditto.
7813 * ppcobsd-tdep.c: Ditto.
7814 * ppcobsd-tdep.h: Ditto.
7815 * ppc-sysv-tdep.c: Ditto.
7816 * ppc-tdep.h: Ditto.
7817 * printcmd.c: Ditto.
7818 * proc-abi.c: Ditto.
7819 * proc-flags.c: Ditto.
7821 * proc-utils.h: Ditto.
7822 * progspace.h: Ditto.
7823 * prologue-value.c: Ditto.
7824 * prologue-value.h: Ditto.
7825 * psympriv.h: Ditto.
7827 * p-typeprint.c: Ditto.
7828 * p-valprint.c: Ditto.
7829 * ravenscar-sparc-thread.c: Ditto.
7830 * ravenscar-thread.c: Ditto.
7831 * ravenscar-thread.h: Ditto.
7833 * regcache.c: Ditto.
7834 * regcache.h: Ditto.
7836 * remote-fileio.c: Ditto.
7837 * remote-fileio.h: Ditto.
7839 * remote-m32r-sdi.c: Ditto.
7840 * remote-mips.c: Ditto.
7841 * remote-sim.c: Ditto.
7842 * rs6000-aix-tdep.c: Ditto.
7843 * rs6000-nat.c: Ditto.
7844 * rs6000-tdep.c: Ditto.
7848 * charset.c (validate): Internationalization.
7849 * coffread.c (read_one_sym): Ditto.
7850 * dwarf2read.c (dwarf2_attach_fields_to_type): Ditto.
7851 * h8300-tdep.c (H8300_extract_return_value): Ditto.
7852 * inflow.c (new_tty): Ditto.
7853 * iq2000-tdep.c (iq2000_breakpoint_from_pc): Ditto.
7854 * m32c-tdep.c (m32c_return_value): Ditto.
7855 * mep-tdep.c (mep_store_return_value): Ditto.
7856 * score-tdep.c (score7_fetch_insn): Ditto.
7857 * ser-mingw.c (pipe_windows_open): Ditto.
7858 * sh64-tdep.c (sh64_extract_return_value): Ditto.
7859 * spu-tdep.c (spu_register_type): Ditto.
7860 * tracepoint.c (trace_find_command): Ditto.
7861 * valarith.c (value_pos): Ditto.
7865 * ada-valprint.c (printstr): Minor comment reformatting.
7869 * m32r-rom.c (m32r_upload_command): Fix up ARI warnings for _
7874 * h8300-tdep.c: Comment cleanup, mostly periods and spaces.
7875 * hppa-hpux-tdep.c: Ditto.
7876 * hppa-linux-nat.c: Ditto.
7877 * hppa-linux-tdep.c: Ditto.
7878 * hppanbsd-tdep.c: Ditto.
7879 * hppa-tdep.c: Ditto.
7880 * hppa-tdep.h: Ditto.
7881 * hpux-thread.c: Ditto.
7882 * i386-cygwin-tdep.c: Ditto.
7883 * i386-darwin-nat.c: Ditto.
7884 * i386gnu-nat.c: Ditto.
7885 * i386-linux-nat.c: Ditto.
7886 * i386-linux-tdep.c: Ditto.
7887 * i386-nat.c: Ditto.
7888 * i386-nat.h: Ditto.
7889 * i386nbsd-tdep.c: Ditto.
7890 * i386-sol2-nat.c: Ditto.
7891 * i386-stub.c: Ditto.
7892 * i386-tdep.c: Ditto.
7893 * i386-tdep.h: Ditto.
7894 * i387-tdep.c: Ditto.
7895 * ia64-linux-nat.c: Ditto.
7896 * ia64-linux-tdep.c: Ditto.
7897 * ia64-tdep.c: Ditto.
7901 * inferior.c: Ditto.
7902 * inferior.h: Ditto.
7908 * iq2000-tdep.c: Ditto.
7909 * irix5-nat.c: Ditto.
7915 * jv-typeprint.c: Ditto.
7916 * jv-valprint.c: Ditto.
7917 * language.c: Ditto.
7918 * language.h: Ditto.
7919 * linespec.c: Ditto.
7920 * linux-fork.c: Ditto.
7921 * linux-nat.c: Ditto.
7922 * linux-thread-db.c: Ditto.
7923 * lm32-tdep.c: Ditto.
7927 * m2-exp.y: Comment cleanup, mostly periods and spaces.
7929 * m2-typeprint.c: Ditto.
7930 * m2-valprint.c: Ditto.
7931 * m32c-tdep.c: Ditto.
7932 * m32r-linux-nat.c: Ditto.
7933 * m32r-rom.c: Ditto.
7934 * m32r-tdep.c: Ditto.
7935 * m32r-tdep.h: Ditto.
7936 * m68hc11-tdep.c: Ditto.
7937 * m58klinux-nat.c: Ditto.
7938 * m68k-tdep.c: Ditto.
7939 * m88k-tdep.c: Ditto.
7940 * m88k-tdep.h: Ditto.
7941 * machoread.c: Ditto.
7942 * macrocmd.c: Ditto.
7943 * macroexp.c: Ditto.
7944 * macrotab.c: Ditto.
7947 * mdebugread.c: Ditto.
7948 * mdebugread.h: Ditto.
7951 * memory-map.h: Ditto.
7952 * mep-tdep.c: Ditto.
7953 * microblaze-rom.c: Ditto.
7954 * microblaze-tdep.c: Ditto.
7956 * mips-irix-tdep.c: Ditto.
7957 * mips-linux-nat.c: Ditto.
7958 * mips-linux-tdep.c: Ditto.
7959 * mips-linux-tdep.h: Ditto.
7960 * mipsnbsd-nat.c: Ditto.
7961 * mipsnbsd-tdep.c: Ditto.
7962 * mipsread.c: Ditto.
7963 * mips-tdep.c: Ditto.
7964 * mips-tdep.h: Ditto.
7965 * mn10300-linux-tdep.c: Ditto.
7966 * mn10300-tdep.c: Ditto.
7967 * mn10300-tdep.h: Ditto.
7970 * moxie-tdep.c: Ditto.
7971 * moxie-tdep.h: Ditto.
7976 * bfin-tdep.h (BFIN_A0_DOT_W_REGNUM): Fix typo in name.
7980 * fbsd-nat.c (fbsd_find_memory_regions): Fix typo.
7984 * charset.c (_initialize_charset): Fix typo in string.
7988 * mi/mi-cmd-disas.c (mi_cmd_disassemble): Mark up error message
7990 * tui/tui-layout.c (tui_set_layout_for_display_command):
7991 Split line so that operator goes to beginning of line.
7992 * tui/tui-winsource.c (tui_horizontal_source_scroll): Move
7993 assignment out of if statement.
7997 * ada-lang.c: Comment cleanup, mostly periods and spaces.
7998 * ada-lang.h: Ditto.
7999 * ada-tasks.c: Ditto.
8000 * ada-valprint.c: Ditto.
8001 * aix-threads.c: Ditto.
8002 * alpha-linux-nat.c: Ditto.
8003 * alpha-linux-tdep.c: Ditto.
8004 * alpha-mdebug-tdep.c: Ditto.
8005 * alpha-nat.c: Ditto.
8006 * alpha-osf1-tdep.c: Ditto.
8007 * alpha-tdep.c: Ditto.
8008 * alphabsd-nat.c: Ditto.
8009 * alphabsd-tdep.c: Ditto.
8010 * amd64-darwin-tdep.c: Ditto.
8011 * amd64-linux-nat.c: Ditto.
8012 * amd64-linux-tdep.c: Ditto.
8013 * amd64-sol2-tdep.c: Ditto.
8014 * amd64-tdep.c: Ditto.
8015 * amd64-fbsd-tdep.c: Ditto.
8016 * amd64-nbsd-tdep.c: Ditto.
8017 * amd64-obsd-tdep.c: Ditto.
8018 * amd64-linux-nat.c: Ditto.
8019 * amd64-linux-tdep.c: Ditto.
8020 * arm-tdep.c: Ditto.
8021 * arm-tdep.h: Ditto.
8022 * armnbsd-nat.c: Ditto.
8023 * avr-tdep.c: Ditto.
8024 * bfin-tdep.c: Ditto.
8026 * c-typeprintc: Ditto.
8027 * c-valprint.c: Ditto.
8028 * coff-pe-read.h: Ditto.
8029 * coffreead.c: Ditto.
8030 * cris-tdep.c: Ditto.
8032 * darwin-nat-info.c: Ditto.
8033 * darwin-nat.c: Ditto.
8034 * dbug-rom.c: Ditto.
8038 * dec-thread.c: Ditto.
8040 * demangle.c: Ditto.
8041 * dicos-tdep.c: Ditto.
8042 * dictionary.c: Ditto.
8043 * dictionary.h: Ditto.
8044 * dink32-rom.c: Ditto.
8046 * doublest.c: Ditto.
8048 * dummy-frame.c: Ditto.
8049 * dwarf2-frame.c: Ditto.
8050 * dwarf2expr.c: Ditto.
8051 * dwarf2loc.c: Ditto.
8052 * dwarf2read.c: Ditto.
8056 * event-top.h: Ditto.
8057 * exceptions.c: Ditto.
8058 * exceptions.h: Ditto.
8060 * expprint.c: Ditto.
8061 * expression.h: Ditto.
8065 * f-typeprint.c: Ditto.
8066 * f-valprint.c: Ditto.
8067 * fbsd-nat.c: Ditto.
8069 * fork-child.c: Ditto.
8072 * frv-linux-tdep.c: Ditto.
8073 * frv-tdep.c: Ditto.
8075 * gdb-stabs.h: Ditto.
8076 * gdb_assert.h: Ditto.
8077 * gdb_string.h: Ditto.
8078 * gdb_thread_db.h: Ditto.
8079 * gdb_wait.h: Ditto.
8080 * gdbarch.sh: Ditto.
8082 * gdbthread.h: Ditto.
8083 * gdbtypes.c: Ditto.
8084 * gdbtypes.h: Ditto.
8087 * gnu-v2-abi.c: Ditto.
8088 * gnu-v3-abi.c: Ditto.
8089 * go32-nat.c: Ditto.
8090 * gdbarch.c: Regenerate.
8091 * gdbarch.h: Regenerate.
8095 * ax-gdb.c: Adjust some long output strings.
8096 * breakpoint.c: Ditto.
8101 * linux-nat.c: Ditto.
8102 * solib-pa64.c: Ditto.
8103 * solib-som.c: Ditto.
8109 * python/python.c (GdbMethods): Add "newest_frame" method.
8110 * python/python-internal.h (gdbpy_newest_frame): Declare.
8111 * python/py-frame.c (gdbpy_newest_frame): New function.
8115 * jit.h (struct jit_code_entry): use ULONGEST for symfile_size.
8116 * jit.c (jit_debug): New variable.
8117 (show_jit_debug): New function.
8118 (struct target_buffer): Use ULONGEST.
8119 (bfd_open_from_target_memory): Likewise.
8120 (jit_register_code, jit_inferior_init): Add debug output.
8121 (_initialize_jit): Register "debug jit" command.
8125 * frame.h (enum frame_type) <INLINE_FRAME>: Fix comment.
8126 * python/py-frame.c (gdbpy_initialize_frames): Add INLINE_FRAME
8131 * python/py-frame.c (frapy_block): Use get_frame_block.
8135 Do not stop on SIGPRIO signals by default
8136 * infrun.c (_initialize_infrun): Unset signal_stop and
8137 signal_print for TARGET_SIGNAL_PRIO.
8141 * ada-tasks.c: Fix style violation in comment.
8145 * linespec.c (decode_compound, find_method): Remove trailing \n
8146 at end of error string.
8147 * solib-irix.c (irix_current_sos): Likewise.
8148 * varobj.c (uninstall_variable): Likewise.
8152 * copyright.py: New script.
8153 * copyright.sh (byhand): Add *.ads, *.adb, *.gpr and *.inc.
8154 Launch emacs without exec'ing. Call copyright.py afterwards.
8158 * addrmap.c: Shorten lines of >= 80 columns.
8159 * arch-utils.c: Ditto.
8160 * arch-utils.h: Ditto.
8162 * ax-general.c: Ditto.
8164 * blockframe.c: Ditto.
8165 * breakpoint.c: Ditto.
8166 * buildsym.c: Ditto.
8168 * c-typeprint.c: Ditto.
8170 * coffread.c: Ditto.
8174 * cp-namespace.c: Ditto.
8175 * cp-support.c: Ditto.
8176 * dbug-rom.c: Ditto.
8181 * dictionary.c: Ditto.
8183 * doublest.c: Ditto.
8184 * dwarf2-frame.c: Ditto.
8185 * dwarf2expr.c: Ditto.
8186 * dwarf2loc.c: Ditto.
8187 * dwarf2read.c: Ditto.
8190 * event-loop.c: Ditto.
8191 * event-loop.h: Ditto.
8192 * exceptions.h: Ditto.
8194 * expprint.c: Ditto.
8195 * expression.h: Ditto.
8197 * f-valprint.c: Ditto.
8199 * frame-base.c: Ditto.
8200 * frame-unwind.c: Ditto.
8201 * frame-unwind.h: Ditto.
8205 * gdb-stabs.h: Ditto.
8206 * gdb_assert.h: Ditto.
8207 * gdb_dirent.h: Ditto.
8208 * gdb_obstack.h: Ditto.
8210 * gdbtypes.c: Ditto.
8211 * gdbtypes.h: Ditto.
8212 * inf-ttrace.c: Ditto.
8217 * inline-frame.h: Ditto.
8218 * language.c: Ditto.
8219 * language.h: Ditto.
8220 * libunwind-frame.c: Ditto.
8221 * libunwind-frame.h: Ditto.
8222 * linespec.c: Ditto.
8223 * linux-nat.c: Ditto.
8224 * linux-nat.h: Ditto.
8225 * linux-thread-db.c: Ditto.
8226 * machoread.c: Ditto.
8227 * macroexp.c: Ditto.
8228 * macrotab.c: Ditto.
8231 * mdebugread.c: Ditto.
8236 * objfiles.c: Ditto.
8237 * objfiles.h: Ditto.
8239 * p-typeprint.c: Ditto.
8240 * p-valprint.c: Ditto.
8242 * printcmd.c: Ditto.
8243 * proc-events.c: Ditto.
8245 * progspace.c: Ditto.
8246 * progspace.h: Ditto.
8247 * psympriv.h: Ditto.
8250 * regcache.c: Ditto.
8251 * regcache.h: Ditto.
8252 * remote-fileio.c: Ditto.
8254 * ser-mingw.c: Ditto.
8256 * ser-unix.c: Ditto.
8259 * solib-frv.c: Ditto.
8260 * solib-irix.c: Ditto.
8261 * solib-osf.c: Ditto.
8262 * solib-pa64.c: Ditto.
8263 * solib-som.c: Ditto.
8264 * solib-sunos.c: Ditto.
8265 * solib-svr4.c: Ditto.
8266 * solib-target.c: Ditto.
8270 * stabsread.c: Ditto.
8271 * stabsread.c: Ditto.
8274 * symfile-mem.c: Ditto.
8280 * target-descriptions.c: Ditto.
8281 * target-memory.c: Ditto.
8284 * terminal.h: Ditto.
8287 * tracepoint.c: Ditto.
8288 * tracepoint.h: Ditto.
8292 * user-regs.c: Ditto.
8293 * user-regs.h: Ditto.
8295 * valarith.c: Ditto.
8297 * valprint.c: Ditto.
8298 * valprint.h: Ditto.
8303 * xcoffread.c: Ditto.
8304 * xcoffsolib.c: Ditto.
8305 * xcoffsolib.h: Ditto.
8306 * xml-syscall.c: Ditto.
8307 * xml-tdesc.c: Ditto.
8311 * cli/cli-cmds.c: Shorten lines of >= 80 columns.
8312 * cli/cli-decode.c: Ditto.
8313 * cli/cli-dump.c: Ditto.
8314 * cli/cli-logging.c: Ditto.
8315 * cli/cli-script.c: Ditto.
8316 * cli/cli-setshow.c: Ditto.
8317 * common/signals.c: Ditto.
8318 * mi/mi-cmd-break.c: Ditto.
8319 * mi/mi-cmd-disas.c: Ditto.
8320 * mi/mi-cmd-stack.c: Ditto.
8321 * mi/mi-cmd-var.c: Ditto.
8322 * mi/mi-cmds.c: Ditto.
8323 * mi/mi-common.h: Ditto.
8324 * mi/mi-console.c: Ditto.
8325 * mi/mi-interp.c: Ditto.
8326 * mi/mi-main.c: Ditto.
8327 * osf-share/cma_attr.c: Ditto.
8328 * osf-share/cma_deb_core.h: Ditto.
8329 * osf-share/cma_debug_client.h: Ditto.
8330 * osf-share/cma_handle.h: Ditto.
8331 * osf-share/cma_mutex.h: Ditto.
8332 * osf-share/cma_stack_int.h: Ditto.
8333 * osf-share/cma_tcb_defs.h: Ditto.
8334 * python/py-auto-load.c: Ditto.
8335 * python/py-breakpoint.c: Ditto.
8336 * python/py-cmd.c: Ditto.
8337 * python/py-frame.c: Ditto.
8338 * python/py-objfile.c: Ditto.
8339 * python/py-param.c: Ditto.
8340 * python/py-progspace.c: Ditto.
8341 * python/py-symbol.c: Ditto.
8342 * python/py-value.c: Ditto.
8343 * python/python-internal.h: Ditto.
8344 * python/python.c: Ditto.
8345 * tui/tui-data.c: Ditto.
8346 * tui/tui-disasm.c: Ditto.
8347 * tui/tui-hooks.c: Ditto.
8348 * tui/tui-io.c: Ditto.
8349 * tui/tui-layout.c: Ditto.
8350 * tui/tui-regs.c: Ditto.
8351 * tui/tui-source.c: Ditto.
8352 * tui/tui-stack.c: Ditto.
8353 * tui/tui-win.c: Ditto.
8354 * tui/tui-windata.c: Ditto.
8355 * tui/tui-winsource.c: Ditto.
8359 * configure.ac, gdb.1: Copyright year update.
8363 * frame.c (get_prev_frame_1) <UNWIND_INNER_ID>: New variables
8364 this_pc_in_block, morestack_msym and morestack_name. Check for
8365 "__morestack" minimal symbol there.
8369 * symfile.c (find_sym_fns): Add call to dont_repeat.
8373 Copyright year update in most files (performed by copyright.sh).
8377 * top.c (print_gdb_version): Update copyright year in version output.
8379 For older changes see ChangeLog-2010.
8385 version-control: never