4 * c-lang.c (c_printstr): Compute real length of NUL terminated
9 * jv-lang.c (java_lookup_class): Remove commented out code.
10 (type_from_class): Likewise.
11 (java_op_print_tab): Remove commented-out elements.
15 * ada-lang.c (to_fixed_range_type): The the raw index type as
16 argument instead of the raw type name. Remove orig_type parameter.
17 Update calls throughout.
18 (ada_fixup_array_indexes_type): New function.
19 (ada_array_bound_from_type): Add call to ada_fixup_array_indexes_type.
20 * ada-lang.h (ada_fixup_array_indexes_type): Add declaration.
21 * ada-typeprint.c (print_range_type): Renames print_range_type_named.
22 Remove name parameter.
23 (print_array_type): Add call to ada_fixup_array_indexes_type.
24 Update calls to print_range_type.
25 (ada_print_type): Update calls to print_range_type.
29 * dwarf2read.c (read_set_type): Set type length if
30 DW_AT_byte_size attribute is present.
34 * p-valprint.c (pascal_val_print): Handle set type if range limits
35 are undefined but size is known.
43 * target.c: White space.
44 * target-descriptions.c: White space.
45 * target-memory.c: White space.
46 * thread.c: White space.
48 * tracepoint.c: White space.
49 * trad-frame.c: White space.
50 * tramp-frame.c: White space.
51 * ui-file.c: White space.
52 * ui-out.c: White space.
53 * user-regs.c: White space.
54 * utils.c: White space.
56 * scm-exp.c: White space.
57 * scm-lang.c: White space.
58 * scm-valprint.c: White space.
59 * sentinel-frame.c: White space.
60 * ser-base.c: White space.
61 * ser-go32.c: White space.
62 * serial.c: White space.
63 * ser-mingw.c: White space.
64 * ser-pipe.c: White space.
65 * ser-tcp.c: White space.
66 * ser-unix.c: White space.
67 * solib.c: White space.
68 * solib-darwin.c: White space.
69 * solib-frv.c: White space.
70 * solib-irix.c: White space.
71 * solib-osf.c: White space.
72 * solib-pa64.c: White space.
73 * solib-som.c: White space.
74 * solib-spu.c: White space.
75 * solib-svr4.c: White space.
76 * solib-target.c: White space.
77 * source.c: White space.
78 * stabsread.c: White space.
79 * stack.c: White space.
80 * std-regs.c: White space.
81 * symfile.c: White space.
82 * symmisc.c: White space.
83 * symtab.c: White space.
87 * source.c (_initialize_source): Add "rev" as an abbreviation
88 for the "reverse-search" command.
92 * record.c: White space.
93 * regcache.c: White space.
94 * reggroups.c: White space.
95 * remote-fileio.c: White space.
96 * remote-m32r-sdi.c: White space.
97 * remote-mips.c: White space.
98 * remote-sim.c: White space.
99 * remote.c: White space.
100 (process_g_packet): Remove orphan braces.
104 * parse.c: White space.
105 * p-lang.c: White space.
106 * posix-hdep.c: White space.
107 * printcmd.c: White space.
108 * progspace.c: White space.
109 * prologue-value.c: White space.
110 * psymtab.c: White space.
111 * p-typeprint.c: White space.
112 * p-valprint.c: White space.
114 * objc-lang.c: White space.
115 * objfiles.c: White space.
116 * observer.c: White space.
117 * osabi.c: White space.
118 * osdata.c: White space.
120 * m2-lang.c: White space.
121 * m2-valprint.c: White space.
122 * macrocmd.c: White space.
123 * macroexp.c: White space.
124 * macroscope.c: White space.
125 * macrotab.c: White space.
126 * main.c: White space.
127 * maint.c: White space.
128 * mdebugread.c: White space.
129 * memattr.c: White space.
130 * minsyms.c: White space.
131 * monitor.c: White space.
135 * jv-lang.c: White space.
136 * jv-typeprint.c: White space.
137 * jv-valprint.c: White space.
138 * language.c: White space.
139 * libunwind-frame.c: White space.
140 * linespec.c: White space.
141 * linux-nat.c: White space.
142 * linux-record.c: White space.
143 * linux-thread-db.c: White space.
145 * infcall.c: White space.
146 * inf-child.c: White space.
147 * infcmd.c: White space.
148 * inferior.c: White space.
149 * inf-loop.c: White space.
150 * inflow.c: White space.
151 * inline-frame.c: White space.
152 * interps.c: White space.
154 * gcore.c: White space.
155 * gdb.c: White space.
156 * gdbtypes.c: White space.
157 * gnu-nat.c: White space.
158 * gnu-v2-abi.c: White space.
159 * gnu-v3-abi.c: White space.
161 * findcmd.c: White space.
162 * findvar.c: White space.
163 * fork-child.c: White space.
164 * frame-base.c: White space.
165 * frame.c: White space.
166 * frame-unwind.c: White space.
167 * f-valprint.c: White space.
169 * elfread.c: White space.
170 * environ.c: White space.
171 * eval.c: White space.
172 * event-loop.c: White space.
173 * event-top.c: White space.
174 * exceptions.c: White space.
175 * exec.c: White space.
176 * expprint.c: White space.
178 * dbxread.c: White space.
179 * dcache.c: White space.
180 * disasm.c: White space.
181 * doublest.c: White space.
182 * dsrec.c: White space.
183 * dummy-frame.c: White space.
184 * dwarf2expr.c: White space.
185 * dwarf2-frame.c: White space.
186 * dwarf2loc.c: White space.
187 * dwarf2read.c: White space.
193 * python/py-value.c (valpy_hash): New function.
194 (value_object_type): Register valpy_hash.
199 * linux-fork.c (gdbthread.h): New include.
200 (fork_info): Add parent_ptid.
201 (inferior_call_waitpid_cleanup, inferior_call_waitpid): New
203 (delete_checkpoint_command): Call inferior_call_waitpid.
204 (checkpoint_command): Set parent_ptid.
208 * dictionary.c: Re-indent to GNU coding standard.
210 * charset.c: White space.
211 * c-lang.c: White space.
212 * cli-out.c: White space.
213 * coffread.c: White space.
214 * complaints.c: White space.
215 * completer.c: White space.
216 * corefile.c: White space.
217 * corelow.c: White space.
218 * cp-abi.c: White space.
219 * cp-namespace.c: White space.
220 * cp-support.c: White space.
221 * cp-valprint.c: White space.
222 * c-typeprint.c: White space.
223 * c-valprint.c: White space.
224 * blockframe.c: White space.
225 * breakpoint.c: White space.
226 * buildsym.c: White space.
227 * blockframe.c: White space.
228 * bcache.c: White space.
229 * gdbarch.sh: White space, add blank lines.
230 * arch-utils.c: Ditto.
231 * gdbarch.c: Regenerate.
232 * frame.c: White space, add blank lines.
233 * stack.c: White space, add blank lines.
234 (initialize_stack): Remove long-dead code.
239 * dwarf2loc.c (dwarf2_evaluate_loc_desc): Change the parameter to type.
240 (locexpr_read_variable, loclist_read_variable): Update the callers.
245 * dwarf2read.c (die_type, die_descriptive_type): Remove variable type.
246 Remove check of NULL returned by tag_type_to_type.
247 (die_containing_type): Remove variable type. Remove type_die variable
248 initialization. Remove check of NULL returned by tag_type_to_type.
253 * gdbtypes.c (lookup_struct_elt_type): Also lookup
254 names of unnamed structures or unions.
258 * procfs.c (proc_watchpoint_address): New function.
259 (procfs_stopped_by_watchpoint): Remove useless check after
260 find_procinfo_or_die call.
261 (procfs_stopped_data_address): New function.
262 (procfs_use_watchpoints): Register new watchpoint related function.
266 * eval.c (evaluate_subexp_standard): Revert inadvertent change.
270 * utils.c: White space cleanup.
274 * eval.c (ptrmath_type_p): Add 'lang' argument.
275 (evaluate_subexp_standard): Update.
276 (evaluate_subexp_with_coercion): Update.
277 * language.h (CAST_IS_CONVERSION): Add 'LANG' argument.
281 * utils.c (do_fclose_cleanup) Restore local variable.
285 * record.c (init_record_core_ops): Rename record_core to record-core.
289 Implement task switching on pa-hpux.
290 * inf-ttrace.c (inf_ttrace_get_ada_task_ptid): New function.
291 (inf_ttrace_target): Set t->to_get_ada_task_ptid.
295 * valops.c (find_overload_match): Add missing i18n markup.
299 * p-exp.y (exp : SIZEOF '(' exp ')'): New rule.
303 * dwarf2read.c (typename_concat): Use (char *) NULL terminated stdarg
304 list for the obconcat call.
305 * mdebugread.c (parse_symbol): Likewise.
306 * stabsread.c (define_symbol, read_member_functions, read_cpp_abbrev):
308 * symfile.c (obconcat): Replace the s1, s2 and s3 parameters by `...'.
309 New variable ap. Remove variables len and val.
310 * symfile.h (obconcat): Likewise for the prototype.
314 * python/python.c (execute_gdb_command): Remove unused variables.
315 * python/py-block.c (gdbpy_block_for_pc): Remove unused variable.
316 * python/py-breakpoint.c (gdbpy_breakpoint_created):
317 Remove unused variable.
318 * python/py-cmd.c (cmdpy_function): Remove unused variable.
319 (cmdpy_completer): Remove unused variable.
320 * python/py-frame.c (frapy_find_sal): Remove unused variable.
321 * python/py-function.c (fnpy_call): Remove unused variable.
322 * python/py-objfile.c (objfile_to_objfile_object):
323 Remove unused variable.
324 * python/py-param.c (parmpy_init): Remove unused variable.
325 * python/py-prettyprint.c (apply_varobj_pretty_printer):
326 Remove unused variable.
327 (gdbpy_default_visualizer): Remove unused variable.
328 * python/py-progspace.c (pspace_to_pspace_object):
329 Remove unused variable.
330 * python/py-symtab.c (symtab_and_line_to_sal_object):
331 Remove unused variable.
332 * python/py-type.c (typy_template_argument):
333 Remove unused variable.
334 * python/py-value.c (valpy_string): Remove unused variable.
335 (convert_value_from_python): Remove unused variables.
339 * valops.c (value_cast_pointers): Restore unused variable 'type1',
340 and use it to compute variable 't1'.
344 * ada-lang.c (assign_aggregate): Remove unused variable.
349 * valops.c (find_overload_match): Handle fsym == NULL case.
350 Add int no_adl argument.
351 (find_oload_champ_namespace_loop): Call make_symbol_overload_list_adl
353 Add int no_adl argument.
354 (find_oload_champ_namespace): Add int no_adl argument.
355 * parse.c (operator_length_standard): Return length for OP_ADL_FUNC
357 * expprint.c (op_name_standard): Added string for OP_ADL_FUNC case.
358 * eval.c (evaluate_subexp_standard): Added OP_ADL_FUNC case.
359 Evaluate arguments and use them to perform ADL lookup.
360 Pass no_adl argument to find_overload_match.
361 Disable adl lookup when evaluating a fully qualified OP_FUNCALL.
362 * cp-support.h: Added prototype for
363 make_symbol_overload_list_namespace.
364 * cp-support.c (make_symbol_overload_list_namespace): New function.
365 (make_symbol_overload_list_adl_namespace): New function.
366 (make_symbol_overload_list_adl): New function.
367 (make_symbol_overload_list_using): Moved code to add function to
368 overload set to make_symbol_overload_list_namespace.
369 * c-exp.y: create UNKNOWN_CPP_NAME token.
370 Add parse rule for ADL functions.
371 (classify_name): Recognize an UNKNOWN_CPP_NAME.
375 * fbsd-nat.c (fbsd_make_corefile_notes): Add cast to NULL used as
380 Implement task switching on solaris targets.
381 * sol-thread.c (thread_db_find_thread_from_tid)
382 (sol_get_ada_task_ptid): New functions.
383 (init_sol_thread_ops): Set sol_thread_ops.to_get_ada_task_ptid.
387 * remote.c (remote_query_supported_append): Use reconcat.
388 (remote_query_supported): Install a cleanup. Use reconcat.
392 * gdbarch.sh (qsupported): Delete.
393 * gdbarch.h, gdbarch.c: Regenerate.
394 * remote.c (remote_query_supported): Remove use of
399 * xml-syscall.c (syscall_start_syscalls_info): Remove unused
404 * xml-support.c (xinclude_start_include): Delete unused variable.
405 (xml_process_xincludes): Delete unused variable.
406 * xml-syscall.c (syscall_parse_xml): Delete unused variable.
407 * target-descriptions.c (tdesc_gdb_type): Delete unused variable.
408 (tdesc_find_arch_register): Delete unused variable.
409 (tdesc_use_registers): Delete unused variable.
410 * xml-tdesc.c (tdesc_start_target): Delete unused variable.
411 * inferior.c (print_inferior): Delete unused variable.
412 * record.c (record_open_1): Delete unused variable.
413 (record_restore): Delete unused variable.
414 (cmd_record_save): Delete unused variable.
415 * gcore.c (derive_heap_segment): Delete unused variable.
416 (objfile_find_memory_regions): Use unused variable.
417 * jit.c (jit_inferior_init): Delete unused variable.
418 * progspace.c (clone_program_space): Delete unused variable.
419 (pspace_empty_p): Delete unused variable.
421 * frame-unwind.c (frame_unwind_find_by_frame):
422 Delete unused variable.
423 * gnu-v2-abi.c (gnuv2_value_rtti_type): Delete unused variable.
424 * cp-support.c (mangled_name_to_comp): Delete unused variable.
425 (method_name_from_physname): Delete unused variable.
426 (cp_func_name): Delete unused variable.
427 (cp_validate_operator): Delete unused variable.
428 * cp-namespace.c (cp_scan_for_anonymous_namespaces):
429 Delete unused variable.
430 * trad-frame.c (trad_frame_get_prev_register):
431 Delete unused variable.
432 * tramp-frame.c (tramp_frame_cache): Delete unused variable.
434 * serial.c (serial_for_fd): Delete unused variable.
435 * mdebugread.c (psymtab_to_symtab_1): Delete unused variable.
436 * top.c (execute_command): Delete unused variable.
437 (init_main): Delete unused variable.
438 * utils.c (do_fclose_cleanup): Delete unused variable.
439 (do_all_inferior_continuations): Delete unused variable.
440 (initialize_utils): Delete unused variable.
441 (internal_problem_mode): Delete unused global.
442 * frame.c (get_prev_frame): Delete unused global.
443 (get_frame_locals_address): Delete unused global.
444 (get_frame_args_address): Delete unused global.
446 * p-typeprint.c (pascal_type_print_base): Delete unused variable.
447 (pascal_type_print_varspec_prefix): Delete unused variable.
448 * f-typeprint.c (f_type_print_base): Delete unused variable.
449 (f_type_print_varspec_suffix): Delete unused variable.
450 * m2-typeprint.c (m2_print_type): Delete unused variable.
451 (m2_long_set): Delete unused variable.
452 * ada-valprint.c (ada_val_print_1): Delete unused variable.
453 * d-valprint.c (dynamic_array_type): Delete unused variable.
454 * f-valprint.c (f77_get_dynamic_length_of_aggregate):
455 Delete unused variable.
456 (f77_create_arrayprint_offset_tbl): Delete unused variable.
457 * m2-valprint.c (m2_val_print): Delete unused variable.
459 * ui-out.c (ui_out_field_int): Delete unused variable.
460 (ui_out_field_fmt_int): Delete unused variable.
461 * varobj.c (varobj_list_children): Delete unused variable.
462 (varobj_set_value): Delete unused variable.
463 (install_new_value_visualizer): Delete unused variable.
464 (varobj_set_visualizer): Delete unused variable.
465 (varobj_update): Delete unused variable.
466 (varobj_editable_p): Delete unused variable.
467 (c_value_of_root): Delete unused variable.
468 (cplus_describe_child): Delete unused variable.
470 * ada-lang.c (add_defn_to_vec): Delete unused variable.
471 (decode_constrained_packed_array_type): Delete unused variable.
472 (add_defn_to_vec): Delete unused variable.
473 (symbol_completion_match): Delete unused variable.
474 (value_tag_from_contents_and_address): Delete unused variable.
475 (ada_evaluate_subexp): Delete unused variable.
476 * c-lang.c (classify_type): Delete unused variable.
477 * f-lang.c (f_printstr): Delete unused variable.
478 * objc-lang.c (objc_printstr): Delete unused variable.
479 * ada-tasks.c (get_known_tasks_addr): Delete unused variable.
480 * jv-lang.c (type_from_class): ifdef unused variable.
481 (java_class_name_from_physname): Delete unused variable.
482 * m2-lang.c (m2_printstr): Delete unused variable.
484 * objfiles.c (objfile_relocate): Delete unused variable.
485 * maint.c (_initialize_maint_cmds): Delete unused variable.
486 * demangle.c (_initialize_demangler): Delete unused variable.
487 * corefile.c (reopen_exec_file): Delete unused variable.
488 * dwarf2expr.c (dwarf2_read_address): Delete unused variable.
489 * dwarf2-frame.c (decode_frame_entry): Delete unused variable.
491 * osabi.c (_initialize_gdb_osabi): Delete unused variable.
492 * memattr.c (mem_delete): Delete unused variable.
493 (invalidate_target_mem_regions): Delete unused variable.
494 * mem-break.c (default_memory_insert_breakpoint):
495 Delete unused variable.
496 * target.c (target_get_osdata): Delete unused variable.
497 * parse.c (length_of_subexp): Delete unused variable.
498 (prefixify_subexp): Delete unused variable.
499 (exp_iterate): Delete unused variable.
500 * reverse.c (delete_bookmark_command): Delete unused variable.
502 * macrocmd.c (_initialize_macrocmd): Delete unused variable.
503 * macroexp.c (gather_arguments): Delete unused variable.
504 (substitute_args): Delete unused variable.
505 * completer.c (gdb_completer_loc_break_characters): Unused, delete.
506 * gdbarch.sh (gdbarch_printable_names): Delete unused variable.
507 (_initialize_gdbarch): Delete unused variable.
508 * gdbarch.c, gdbarch.h: Regenerate.
509 * arch-utils.c (initialize_current_architecture):
510 Delete unused variable.
511 (_initialize_gdbarch_utils): Delete unused variable.
512 * gdbtypes.c (make_cv_type): Delete unused variable.
513 (make_type_with_address_space): Delete unused variable.
515 * linespec.c (decode_compound): Delete unused variable.
516 * dictionary.c (iterator_next_hashed): Delete unused variable.
517 * infcall.c (call_function_by_hand): Delete unused variable.
518 * infcmd.c (step_1): Delete unused variable.
519 (registers_info): Delete unused variable.
520 (attach_command): Delete unused variable.
521 * infrun.c (follow_exec): Delete unused variable.
522 (handle_step_into_function_backwards): Delete unused variable.
523 (_initialize_infrun): Delete unused variable.
524 * stack.c (parse_frame_specification_1): Delete unused variable.
525 (frame_info): Delete unused variable.
526 (backtrace_command_1): Delete unused variable.
527 (catch_info): Delete unused variable.
529 * eval.c (evaluate_subexp_standard): Delete unused variable.
530 * valops.c (value_cast_pointers): Delete unused variable.
531 (value_dynamic_cast): Delete unused variable.
532 (value_array): Delete unused variable.
533 (find_overload_match): Delete unused variable.
534 * valarith.c (value_subscript): Delete unused variable.
535 (value_binop): Delete unused variable.
536 * valprint.c (_initialize_valprint): Delete unused variable.
537 * printcmd.c (print_command_1): Delete unused variable.
538 (address_info): Delete unused variable.
539 (printf_command): Delete unused variable.
541 * auxv.c (target_auxv_search): Delete unused variable.
542 * blockframe.c (get_frame_block): Delete unused variable.
543 * regcache.c (regcache_cpy): Delete unused variable.
544 (regcache_cpy_no_passthrough): Delete unused variable.
545 * charset.c (wchar_iterate): Delete unused variable.
546 (find_charset_names): Delete unused variable.
547 (_initialize_charset): Delete unused variable.
548 * disasm.c (do_mixed_source_and_assembly):
549 Delete unused variable.
550 * source.c (set_default_source_symtab_and_line):
551 Delete unused variable.
552 (set_substitute_path_command): Delete unused variable.
553 * value.c (preserve_values): Delete unused variable.
554 (value_from_double): Delete unused variable.
558 * psymtab.c (lookup_partial_symbol): Delete unused variable.
559 (find_last_source_symtab_from_partial): Delete unused variable.
560 * symfile.c (place_section): Delete unused variable.
561 (default_symfile_offsets): Delete unused variable.
562 (get_debug_link_info): Delete unused variable.
563 (find_separate_debug_file_by_debuglink): Delete unused variable.
564 (add_symbol_file_command): Delete unused variable.
565 (symfile_find_segment_sections): Delete unused variable.
566 * symmisc.c (free_symtab): Delete unused variable.
567 (dump_symtab_1): Delete unused variable.
568 * symtab.c (lookup_symbil_aux_quick): Delete unused variable.
569 (find_pc_sect_symtab): Delete unused variable.
570 (skip_prologue_using_lineinfo): Delete unused variable.
571 (sources_info): Delete unused variable.
572 (completion_list_add_name): Delete unused variable.
573 (expand_line_sal): Delete unused variable.
575 * breakpoint.c (validate_commands_for_breakpoint):
576 Delete unused variables.
577 (insert_catchpoint): Delete unused variable.
578 (update_watchpoint): Delete unused variable.
579 (insert_bp_location): Delete unused variable.
580 (insert_breakpoint_locations): Delete unused variable.
581 (remove_breakpoint_1): Delete unused variable.
582 (software_breakpoint_inserted_here_p): Delete unused variable.
583 (watchpoints_triggered): Delete unused variable.
584 (bpstat_check_watchpoint): Delete unused variable.
585 (bpstat_stop_status): Delete unused variable.
586 (print_one_breakpoint_location): Delete unused variable.
587 (allocate_bp_location): Delete unused variable.
588 (create_breakpoint): Delete unused variable.
589 (watch_command_1): Delete unused variable.
590 (catch_exception_command_1): Delete unused variable.
591 (catch_ada_exception_command): Delete unused variable.
592 (delete_breakpoint): Delete unused variable.
593 (breakpoint_re_set_one): Delete unused variable.
594 (do_enable_breakpoint): Delete unused variable.
598 * amd64-tdep.c: Include disasm.h.
599 (amd64_insn_length_fprintf, amd64_insn_length_init_dis)
600 (amd64_insn_length): Moved to disasm.c and renamed.
601 (fixup_riprel): Adjust.
602 * disasm.c (do_ui_file_delete): New.
603 (gdb_insn_length): New.
604 (gdb_buffered_insn_length_fprintf)
605 (gdb_buffered_insn_length_init_dis)
606 (gdb_buffered_insn_length): New, moved from amd64-tdep.c, and
608 * disasm.h (gdb_insn_length): Declare.
609 (gdb_buffered_insn_length): Declare.
613 * remote.c (clear_threads_parsing_context): New.
614 (remote_threads_info): Delete unused null_cleanup. Install a
615 cleanup to clear the threads_parsing_context in case parsing
620 * c-exp.y (parse_string_or_char): Delete unused variable.
621 (c_lex): Delete unused variable.
622 * cp-name-parser.y (cpname_lex): Delete unused variable.
623 * ada-exp.y (find_primitive_type): Delete unused variable.
624 (write_var_or_type): Delete unused variable.
625 * jv-exp.y (java_parse): Delete unused variable.
626 (push_expression_name): Delete unused variable.
627 * p-exp.y (pascal_lex): Delete unused variable.
631 * remote.c (remote_threads_info): Really revert previous previous
636 * elfread.c (elf_symtab_read): Delete unused variable.
637 (find_separate_debug_file_by_buildid): Delete unused variables.
638 (elf_symfile_read): Delete unused variable.
640 * coffread.c (coff_symfile_read): Delete unused variables.
642 * coff-pe-read.c (add_pe_exported_sym): Delete unused variable.
643 (read_pe_exported_syms): Delete unused variable.
645 * stabsread.c (define_symbol): Delete unused variable.
647 * dwarf2read.c (read_type_comp_unit_head): Delete unused variable.
648 (process_psymtab_comp_unit): Delete unused variable.
649 (dwarf2_build_psymtabs_hard): Delete unused variable.
650 (load_partial_comp_unit): Delete unused variable.
651 (create_all_comp_units): Delete unused variable.
652 (scan_partial_symbols): Delete unused variable.
653 (add_partial_symbol): Delete unused variable.
654 (add_partial_namespace): Delete unused variable.
655 (add_partial_enumeration): Delete unused variable.
656 (load_full_comp_unit): Delete unused variable.
657 (process_full_comp_unit): Delete unused variable.
658 (read_file_scope): Delete unused variable.
659 (read_type_unit_scope): Delete unused variable.
660 (process_structure_scope): Delete unused variable.
661 (process_enumeration_scope): Delete unused variable.
662 (read_tag_ptr_to_member_type): Delete unused variable.
663 (read_typedef): Delete unused variable.
664 (read_partial_die): Delete unused variable.
665 (decode_locdesc): Delete unused variable.
666 (zeroed_partial_die): Delete unused global variable.
668 * tui/tui-interp.c (_initialize_tui_interp):
669 Delete unused variable.
670 * tui/tui-regs.c tui_display_registers_from):
671 Delete unused variable.
672 (tui_check_register_values): Delete unused variable.
673 (tui_register_format): Delete unused variable.
674 * tui/tui-win.c (_initialize_tui_win): Delete unused variable.
675 * tui/tui-windata.c (tui_display_data_from_line):
676 Delete unused variables.
677 (tui_vertical_data_scroll): Delete unused variables.
681 * remote.c (remote_threads_info): Revert questionable part of
686 * mi/mi-out.c (mi_table_begin): Delete unused variable.
687 * mi/mi-cmd-var.c (print_varobj): Delete unused variable.
688 (mi_cmd_var_list_children): Delete unused variable.
689 (varobj_update_one): Delete unused variable.
690 * mi/mi-cmd-break.c (mi_cmd_break_insert): Delete unused variables.
691 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals):
692 Delete unused variable.
693 (mi_cmd_stack_list_variables): Delete unused variable.
694 (list_args_or_locals): Delete unused variable.
695 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file):
696 Delete unused variables.
697 (mi_cmd_file_list_exec_source_files): Delete unused variable.
698 * mi/mi-cmd-target.c (mi_cmd_target_file_delete):
699 Delete unused variable.
700 * mi/mi-interp.c (mi_interpreter_exec): Delete unused variable.
701 (mi_cmd_interpreter_exec): Delete unused variable.
702 (mi_on_normal_stop): Delete unused variable.
703 * mi/mi-main.c (run_one_inferior): Delete unused variable.
704 (print_one_inferior): Delete unused variables.
705 (mi_execute_command): Delete unused variable.
706 (mi_cmd_execute): Delete unused variable.
707 (timestamp): Delete unused variable.
709 * cli/cli-dump.c (dump_memory_to_file): Delete unused variable.
710 (restore_binary_file): Delete unused variable.
711 * cli/cli-decode.c (deprecated_cmd_warning): Delete unused variables.
712 * cli/cli-script.c (define_command): Delete unused variables.
713 (recurse_read_control_structure): Delete unused variable.
714 (script_from_file): Delete unused variable.
715 * cli/cli-cmds.c (complete_command): Delete unused variable.
716 (disassemble_command): Delete unused variable.
718 * ax-gdb.c (gen_struct_elt_for_reference): Delete unused variables.
719 * tracepoint.c (delete_trace_variable_command):
720 Delete unused variables.
721 (encode_actions_1): Delete unused variables.
722 (start_tracing): Delete unused variable.
723 (trace_status_mi): Delete unused variable.
724 (tfind_1): Delete unused variable.
725 (trace_find_pc_command): Delete unused variable.
726 (trace_find_line_command): Delete unused variables.
727 (trace_find_range_command): Delete unused variables.
728 (trace_find_outside_command): Delete unused variables.
729 (parse_tracepoint_definition): Delete unused variables.
730 (tfile_fetch_registers): Delete unused variable.
732 * dcache.c (dcache_init): Delete unused variable.
733 (dcache_info): Delete unused variable.
735 * remote.c (remote_threads_info): Delete unused variable.
736 (process_stop_reply) :Delete unused variable.
737 (remote_get_trace_status): Delete unused variables.
739 * linux-thread-db.c (add_thread_db_info): Delete unused variable.
740 (thread_from_lwp): Delete unused variable.
741 (enable_thread_event_reporting): Delete unused variable.
742 (check_for_thread_db): Delete unused variables.
743 (thread_db_find_new_threads_2): Delete unused variable.
745 * linux-fork.c (info_checkpoints_command): Delete unused variables.
746 (checkpoint_command): Delete unused variable.
747 (linux_fork_context): Delete unused variables.
749 * linux-nat.c (linux_parent_pid): Delete unused global variable.
750 (linux_tracefork_child): Delete unused variable.
751 (linux_child_follow_fork): Delete unused variable.
752 (linux_nat_detach): Delete unused variable.
753 (linux_handle_extended_wait): Delete unused variable.
754 (linux_nat_has_pending_sigint): Delete unused variable.
755 (linux_nat_find_memory_regions): Delete unused variable.
756 (linux_nat_make_corefile_notes): Delete unused variables.
757 (linux_nat_info_proc_cmd): Delete unused variable.
758 (linux_proc_pending_signals): Delete unused variable.
759 (linux_nat_stop_lwp): Delete unused variables.
760 (_initialize_linux_nat): Delete unused variable.
762 * ser-pipe.c (pipe_ops): Delete unused global variable.
764 * linux-record.c (record_linux_system_call):
765 Delete unused variables.
767 * corelow.c (core_xfer_partial): Delete unused variables.
769 * solib-svr4.c (find_program_interpreter): Delete unused variable.
770 (svr4_solib_create_inferior_hook): Add ifdef around
771 conditionally-used variable declarations.
773 * solib.c (solib_find): Delete unused variable.
774 (free_so_symbols): Delete unused variable.
775 (info_sharedlibrary_command): Delete unused variable.
776 (reload_shared_libraries_1): Delete unused variable.
777 (_initialize_solib): Delete unused variable.
779 * i386-tdep.c (i386_supply_xstateregset) Delete unused variable.
780 (i386_collect_xstateregset): Delete unused variable.
781 * i387-tdep.c (i387_print_float_info): Delete unused variable.
783 * features/i386/i386-mmx.c (initialize_tdesc_i386_mmx):
784 Delete unused variable 'type'.
788 * gdbtypes.h (MAX_OF_TYPE, MIN_OF_TYPE): Delete macros. *
789 ada-lang.c: Remove comment mentioning these macros.
790 * m2-exp.y: Delete commented out code.
794 * sparc-tdep.c (sparc_structure_or_union_p): Return non-zero
796 * sparc64-tdep.c (sparc64_structure_or_union_p): Likewise.
800 ARI fix: Remove ATTRIBUTE_UNUSED throughout.
801 * arm-linux-tdep.c (arm_linux_cleanup_svc): Remove
803 (cleanup_kernel_helper_return): Likewise.
804 * arm-tdep.c (copy_unmodified): Likewise.
805 (copy_preload): Likewise.
806 (copy_copro_load_store): Likewise.
807 (cleanup_branch): Likewise.
808 (copy_b_bl_blx): Likewise.
809 (copy_bx_blx_reg): Likewise.
810 (copy_alu_imm): Likewise.
811 (copy_alu_reg): Likewise.
812 (copy_alu_shifted_reg): Likewise.
813 (cleanup_load): Likewise.
814 (cleanup_store): Likewise.
815 (cleanup_block_load_pc): Likewise.
816 (cleanup_svc): Likewise.
817 (copy_undef): Likewise.
818 (copy_unpred): Likewise.
819 * remote.c (register_remote_support_xml): Likewise.
823 * gdbarch.h (gdbarch_has_dos_based_file_system): Update comment.
827 * remote.c (register_remote_support_xml)
828 (remote_query_supported_append, remote_query_supported): Add cast
829 to NULL used as sentinel.
830 * tracepoint.c (tvariables_info_1): Likewise.
831 * utils.c (add_internal_problem_command): Likewise.
835 * dwarf2loc.c (read_pieced_value, write_pieced_value,
836 dwarf2_evaluate_loc_desc): Handle not being able to access DWARF
837 registers gracefully.
841 * exec.c (print_section_info): Display entry point without arch
847 * printcmd.c (x_command): Only dereference once implicitly for
852 * event-loop.c (gdb_timer): Delete unused global.
853 (create_timer): Update.
857 * cp-namespace.c (cp_lookup_symbol_imports): Support ALIAS for the
858 CURRENT->DECLARATION case.
859 * cp-support.h (struct using_direct): Provide extended comment.
863 * hppaobsd-tdep.c (HPPAOBSD_SIZEOF_GREGS): Renamed from
864 HPPABSD_SIZEOF_GREGS.
865 (HPPAOBSD_SIZEOF_FPREGS): New define.
866 (hppaobsd_supply_gregset): Renamed from hppabsd_supply_gregset.
867 (hppaobsd_supply_fpregset): New function.
868 (hppaobsd_gregset): Renamed from hppabsd_gregset.
869 (hppaobsd_fpregset): New variable.
870 (hppaobsd_regset_from_core_section): Handle floating-point registers.
871 (_initialize_hppabsd_tdep): Remove spurious blank line.
876 * p-valprint.c (pascal_value_print): Always dereference a value with
877 type code TYPE_CODE_REF.
881 * remote.c (remote_notice_signals): New.
882 (remote_start_remote): In non-stop mode, update the remote end on
883 which signals it can silently pass.
884 (init_remote_ops): Install remote_notice_signals.
888 * cli/cli-cmds.h (error_no_arg): Remove. Move the comment ...
889 * command.h (error_no_arg): ... here. Remove NORETURN, change
890 ATTR_NORETURN to ATTRIBUTE_NORETURN.
891 * defs.h (NORETURN, ATTR_NORETURN): Remove.
892 (perror_with_name, verror, error, error_stream, vfatal, fatal)
893 (internal_verror, internal_error, nomem): Remove NORETURN, change
894 ATTR_NORETURN to ATTRIBUTE_NORETURN.
895 * exceptions.c (throw_exception, deprecated_throw_reason, throw_verror)
896 (throw_vfatal, throw_error): Remove NORETURN.
897 (throw_it): Remove NORETURN, change ATTR_NORETURN to ATTRIBUTE_NORETURN.
898 * exceptions.h (throw_exception, throw_verror, throw_vfatal)
899 (throw_error, deprecated_throw_reason): Remove NORETURN, change
900 ATTR_NORETURN to ATTRIBUTE_NORETURN.
901 * linespec.c (cplusplus_error): Remove NORETURN, change ATTR_NORETURN
902 to ATTRIBUTE_NORETURN for prototype, for the definition only remove
904 * remote-mips.c (mips_error): Change NORETURN to ATTRIBUTE_NORETURN.
905 * remote-sim.c (gdb_os_error): Change ATTR_NORETURN to
907 * target.c (tcomplain): Likewise.
908 * target.h (noprocess): Remove NORETURN, change ATTR_NORETURN to
910 * utils.c (verror, error, vfatal, fatal, error_stream, internal_verror)
911 (internal_error, perror_with_name, nomem): Remove NORETURN.
912 * xml-support.h (gdb_xml_error): Change ATTR_NORETURN to
917 * ada-lang.c (lim_warning): Change ATTR_FORMAT to ATTRIBUTE_PRINTF.
918 * amd64-tdep.c (amd64_insn_length_fprintf): Likewise.
919 * cli-out.c (cli_field_fmt): New ATTRIBUTE_PRINTF.
920 (cli_message, out_field_fmt): Change ATTR_FORMAT to ATTRIBUTE_PRINTF.
921 * complaints.c (find_complaint): New ATTRIBUTE_PRINTF.
922 (vcomplaint): Change ATTR_FORMAT to ATTRIBUTE_PRINTF.
923 * complaints.h (complaint, internal_complaint): Likewise.
924 * defs.h: Change ATTR_FORMAT to ATTRIBUTE_PRINTF in the top comment.
925 (ATTR_FORMAT): Remove.
926 (query, nquery, yquery, vprintf_filtered, vfprintf_filtered)
927 (fprintf_filtered, fprintfi_filtered, printf_filtered, printfi_filtered)
928 (vprintf_unfiltered, vfprintf_unfiltered, fprintf_unfiltered)
929 (printf_unfiltered, xasprintf, xvasprintf, xstrprintf, xstrvprintf)
930 (xsnprintf, verror, error, vfatal, fatal, internal_verror)
931 (internal_error, internal_vwarning, internal_warning, warning)
932 (vwarning): Change ATTR_FORMAT to ATTRIBUTE_PRINTF.
933 * disasm.c (fprintf_disasm): Likewise.
934 * exceptions.c (throw_it): Likewise.
935 * exceptions.h (exception_fprintf, throw_verror, throw_vfatal)
936 (throw_error): Likewise.
937 * language.h (type_error, range_error): Likewise.
938 * linespec.c (cplusplus_error): Likewise.
939 * mi/mi-interp.c (mi_interp_query_hook): Likewise.
940 * mi/mi-out.c (mi_field_fmt, mi_message): Likewise.
941 * monitor.c (monitor_debug): Likewise.
942 * parser-defs.h (parser_fprintf): Likewise.
943 * serial.h (serial_printf): Likewise.
944 * tui/tui-hooks.c (tui_query_hook): Likewise.
945 * ui-out.c (default_field_fmt, default_message, uo_field_fmt)
946 (uo_message): Likewise.
947 * ui-out.h (ui_out_field_fmt, ui_out_message): Likewise.
948 * utils.c (vfprintf_maybe_filtered, internal_vproblem, defaulted_query):
950 * xml-support.h (gdb_xml_debug, gdb_xml_error): Likewise.
954 * cli-out.c (cli_table_begin, cli_table_body, cli_table_end)
955 (cli_table_header, cli_begin, cli_end, cli_field_int)
956 (cli_field_skip, cli_field_string, cli_field_fmt, cli_spaces)
957 (cli_text, cli_message, cli_wrap_hint, cli_flush, cli_redirect):
958 Delete forward declarations.
959 (cli_ui_out_impl): Move below the callbacks.
960 (_initialize_cli_out): Delete.
964 * README: Use consistent `GDB' and `GDBserver' spellings.
968 * cli/cli-dump.h (parse_and_eval_with_error): Remove the declaration.
972 * infrun.c (prepare_for_detach): In non-stop, context switch to
973 the thread that got the event before handling the event.
977 * symtab.c (symbol_set_names): Fix typo.
981 * python/py-param.c (parm_constants): Avoid ARI warning
982 by adding ARI comment.
983 (parmpy_init): Likewise.
987 * windows-tdep.c (windows_get_tlb_type): Remember last GDBARCH
988 and created type for re-use.
992 * NEWS: Mention gdbserver support for x86_64 Windows 64-bit.
996 * ser-base.h (reschedule): Delete prototype.
997 * ser-base.c (reschedule): Make static.
1001 * arm-linux-tdep.c (ARM_LINUX_JB_PC): Remove.
1002 (ARM_LINUX_JB_PC_FPA): Add, offset of PC in longjmp buffer for FPA.
1003 (ARM_LINUX_JB_PC_EABI): Add, offset of PC in longjmp buffer for
1005 (arm_linux_init_abi): Set up JB_PC field dependent on FP model in
1012 * regcache.c (registers_changed): Rename to ...
1013 (registers_changed_ptid): ... this, and only delete register cache
1014 entries matching the ptid filter argument.
1015 (registers_changed): Reimplement on top of registers_changed_ptid.
1016 * regcache.h (registers_changed_ptid): Declare.
1017 * target.c (target_resume): Flush register caches.
1023 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-parameter.
1024 (SUBDIR_PYTHON_SRCS): Likewise.
1025 (py-parameter.o): New rule.
1026 * python/py-parameter.c: New file.
1027 * python/python-internal.h (gdbpy_initialize_parameter)
1028 (gdbpy_parameter, gdbpy_parameter_value)
1029 (gdbpy_parse_command_name): Declare.
1030 * python/py-cmd.c (parse_command_name): Rename to
1031 gdbpy_parse_command_name.
1032 (gdbpy_parse_command_name): Accept a starting list parameter and
1034 (cmdpy_init): Use gdbpy_parse_command_name.
1035 * python/python.c (parameter_to_python): Rename to
1036 gdbpy_parameter_to_python. Accept enum var_types and value.
1037 (gdbpy_parameter): Use gdbpy_parameter_value.
1038 (_initialize_python): Call gdbpy_initialize_parameters.
1042 * MAINTAINERS: Add myself for write after approval privileges.
1047 * Makefile.in (SFILES): Add d-lang.c d-valprint.c.
1048 (COMMON_OBS): Add d-lang.o d-valprint.o.
1049 (HFILES_NO_SRCDIR): Add d-lang.h.
1050 * NEWS: Mention D language support.
1051 * c-lang.c (c_emit_char, exp_descriptor_c): Make public.
1052 * c-lang.h (c_emit_char, exp_descriptor_c): Add declaration.
1053 * d-lang.c: New file.
1054 * d-lang.h: New file.
1055 * d-valprint.c: New file.
1056 * defs.h (enum language): Add language_d.
1057 * dwarf2read.c (set_cu_language): Add DW_LANG_D.
1058 * language.c (binop_result_type, integral_type, character_type)
1059 (string_type, boolean_type, structured_type): Add language_d.
1060 * symfile.c (init_filename_language_table): Add language_d.
1061 * symtab.c: Include d-lang.h.
1062 (symbol_init_language_specific, symbol_find_demangled_name)
1063 (symbol_natural_name, lookup_symbol_in_language)
1064 (symbol_demangled_name, symbol_matches_domain): Add language_d.
1068 * solib-svr4.c (solib_svr4_r_map): Expand function description.
1072 * symfile.c (init_filename_language_table): Register .dg files
1077 * gdbtypes.h (struct main_type): Expand comment about target_type
1083 * symfile.c (reread_symbols): Also search for file in libraries.
1088 * configure.tgt: Treat x86-lynxos targets as x86 bareboard targets
1089 in terms of configuration.
1093 * objfiles.c: Include solist.h.
1094 (free_all_objfiles): New variable so. Check stale solist objfiles.
1095 * symfile.c (symbol_file_clear): Swap the order of free_all_objfiles
1096 and no_shared_libraries.
1101 * python/py-auto-load.c (source_section_scripts): Remove trailing
1102 new-line in i18n string.
1106 * serial.c (serial_write): Handle serial_debug_p akin to serial_read.
1110 * cli/cli-decode.c (complete_on_cmdlist): Make two passes over the
1115 Removal of config/i386/nm-i386sol2.h native configuration file.
1116 * config/i386/nm-i386sol2.h: Remove file.
1117 * config/i386/i386sol2.mh: Remove NAT_FILE definition.
1118 * config/i386/sol2-64.mh: Idem.
1119 * config/djgpp/fnchange.lst: Remove reference to that file.
1120 * Makefile.in (HFILES_NO_SRCDIR): Idem.
1124 PR breakpoints/11531.
1125 * config/i386/nm-i386sol2.h (CANNOT_STEP_HW_WATCHPOINTS): Remove
1126 macro definition and related comment.
1127 * infrun.c (CANNOT_STEP_HW_WATCHPOINTS): Remove macro.
1128 (resume): Remove code and comment related to this macro.
1132 * cp-namespace.c (cp_lookup_symbol_in_namespace): Fix alloca size.
1137 * defs.h: Adjust comment.
1138 * filesystem.h, filesystem.c: New files.
1139 * Makefile.in (SFILES): Add filesystem.c.
1140 (COMMON_OBS): Add filesystem.o.
1141 * solib.c (solib_find): Handle DOS-based filesystems. Handle
1142 different target and host path flavours.
1143 * arm-symbian-tdep.c (arm_symbian_init_abi): Set
1144 has_dos_based_file_system on the gdbarch.
1145 * arm-wince-tdep.c (arm_wince_init_abi): Ditto.
1146 * i386-cygwin-tdep.c (i386_cygwin_init_abi): Ditto.
1147 * i386-tdep.c (i386_go32_init_abi): Ditto.
1148 * gdbarch.sh (has_dos_based_file_system): New.
1149 * gdbarch.h, gdbarch.c: Regenerate.
1150 * NEWS: Mention improved support for remote targets with DOS-based
1151 filesystems. Mention new `set/show target-file-system-kind'
1156 * ax.h (struct agent_expr): Merge in agent_reqs fields, add some
1158 (struct agent_reqs): Remove.
1159 (ax_reg_mask): Declare.
1160 * ax-general.c (new_agent_expr): Add gdbarch argument, set new fields.
1161 (free_agent_expr): Free reg_mask.
1162 (ax_print): Add scope and register mask info.
1163 (ax_reqs): Remove agent_reqs argument, use agent expression
1164 fields, and move part of register mask computation to...
1165 (ax_reg_mask): New function.
1166 * ax-gdb.c (gen_trace_static_fields): Call it.
1167 (gen_traced_pop): Ditto.
1168 (is_nontrivial_conversion): Add dummy gdbarch to new_agent_expr.
1169 (gen_trace_for_var): Pass gdbarch to new_agent_expr.
1170 (gen_trace_for_expr): Ditto, and clear optimized_out flag.
1171 (gen_eval_for_expr): Ditto, and require an rvalue.
1172 (agent_command): Call ax_reqs.
1173 (agent_eval_command): Ditto.
1174 * tracepoint.c (report_agent_reqs_errors): Use agent expression fields.
1175 (validate_action_line): Ditto.
1176 (collect_symbol): Ditto.
1177 (encode_actions_1): Ditto.
1183 Fix deadlock on looped list of loaded shared objects.
1184 * solib-svr4.c (LM_PREV): New function.
1185 (IGNORE_FIRST_LINK_MAP_ENTRY): Use it.
1186 (svr4_current_sos): Check for correct l_prev. New variables prev_lm
1187 and next_lm. Clear prev_lm for solib_svr4_r_ldsomap.
1188 * config/djgpp/fnchange.lst: Add translation for solib-corrupted.exp.
1192 * configure.ac (CONFIG_SRCS): Add py-auto-load.o even if not using
1194 * configure: Regenerate.
1195 * main.c: #include "python/python.h".
1196 (captured_main): Defer loading auto-loaded scripts until after
1197 local_gdbinit has been sourced.
1198 * python/py-auto-load.c (gdbpy_global_auto_load): New global.
1199 (load_auto_scripts_for_objfile): New function.
1200 (auto_load_new_objfile): Call it.
1201 * python/python.h (gdbpy_global_auto_load): Declare.
1202 (load_auto_scripts_for_objfile): Declare.
1204 Add support for auto-loading scripts from .debug_gdb_scripts section.
1205 * NEWS: Add entry for .debug_gdb_scripts.
1206 * Makefile.in SUBDIR_PYTHON_OBS): Add py-auto-load.o.
1207 (SUBDIR_PYTHON_SRCS): Add py-auto-load.c.
1208 (py-auto-load.o): New rule.
1209 * cli/cli-cmds.c (find_and_open_script): Make externally visible.
1210 * cli/cli-cmds.h (find_and_open_script): Update prototype.
1211 * python/py-auto-load.c: New file.
1212 * python/python-internal.h: #include <stdio.h>.
1213 (set_python_list, show_python_list): Declare.
1214 (gdbpy_initialize_auto_load): Declare.
1215 (source_python_script_for_objfile): Declare.
1216 * python/python.c: Remove #include of observer.h.
1217 (gdbpy_auto_load): Moved to py-auto-load.c.
1218 (GDBPY_AUTO_FILENAME): Ditto.
1219 (gdbpy_new_objfile): Delete.
1220 (source_python_script_for_objfile): New function.
1221 (set_python_list, show_python_list): Make externally visible.
1222 (_initialize_python): Move "auto-load" command to py-auto-load.c
1223 and observer_attach_new_objfile to py-auto-load.c.
1227 * alpha-tdep.c (INSN_OPCODE, MEM_RA, MEM_RB, MEM_DISP, BR_RA)
1228 (OPR_FUNCTION, OPR_HAS_IMMEDIATE, OPR_RA, OPR_RC, OPR_LIT): New macros.
1229 (lda_opcode, stq_opcode, bne_opcode, subq_opcode, subq_function):
1231 (alpha_heuristic_analyze_probing_loop): New function.
1232 (alpha_heuristic_frame_unwind_cache): In the prologue analysis, detect
1233 and handle cases when a stack probe loop is generated.
1234 * alpha-mdebug-tdep.c (alpha_mdebug_frameless): New function.
1235 (alpha_mdebug_max_frame_size_exceeded): New function.
1236 (alpha_mdebug_after_prologue): Use alpha_mdebug_frameless.
1237 (alpha_mdebug_frame_sniffer, alpha_mdebug_frame_base_sniffer):
1238 Return 0 when the maximum debuggable frame size has been exceeded.
1243 * ppc-linux-nat.c (booke_cmp_hw_point): Do not mark inline.
1249 * symtab.c (rbreak_command): Added code to include a filename
1250 specification in the rbreak argument.
1251 * NEWS: Added a brief description of filename-qualified rbreak.
1255 Fix crashes on dangling display expressions.
1256 * ada-lang.c (ada_operator_check): New function.
1257 (ada_exp_descriptor): Fill-in the field operator_check.
1258 * c-lang.c (exp_descriptor_c): Fill-in the field operator_check.
1259 * jv-lang.c (exp_descriptor_java): Likewise.
1260 * m2-lang.c (exp_descriptor_modula2): Likewise.
1261 * scm-lang.c (exp_descriptor_scm): Likewise.
1262 * parse.c (exp_descriptor_standard): Likewise.
1263 (operator_check_standard): New function.
1264 (exp_iterate, exp_uses_objfile_iter, exp_uses_objfile): New functions.
1265 * parser-defs.h (struct exp_descriptor): New field operator_check.
1266 (operator_check_standard, exp_uses_objfile): New declarations.
1267 * printcmd.c: Remove the inclusion of solib.h.
1268 (display_uses_solib_p): Remove the function.
1269 (clear_dangling_display_expressions): Call lookup_objfile_from_block
1270 and exp_uses_objfile instead of display_uses_solib_p.
1271 * solist.h (struct so_list) <objfile>: New comment.
1272 * symtab.c (lookup_objfile_from_block): Remove the static qualifier.
1273 * symtab.h (lookup_objfile_from_block): New declaration.
1274 (struct general_symbol_info) <obj_section>: Extend the comment.
1279 * ppc-linux-nat.c (PTRACE_GET_DEBUGREG): Update comment.
1280 (PPC_PTRACE_GETWDBGINFO, PPC_PTRACE_SETHWDEBUG, PPC_PTRACE_DELHWDEBUG,
1281 ppc_debug_info, PPC_DEBUG_FEATURE_INSN_BP_RANGE,
1282 PPC_DEBUG_FEATURE_INSN_BP_MASK, PPC_DEBUG_FEATURE_DATA_BP_RANGE,
1283 PPC_DEBUG_FEATURE_DATA_BP_MASK, ppc_hw_breakpoint,
1284 PPC_BREAKPOINT_TRIGGER_EXECUTE, PPC_BREAKPOINT_TRIGGER READ,
1285 PPC_BREAKPOINT_TRIGGER_WRITE, PPC_BREAKPOINT_TRIGGER_RW,
1286 PPC_BREAKPOINT_MODE_EXACT PPC_BREAKPOINT_MODE_RANGE_INCLUSIVE,
1287 PPC_BREAKPOINT_MODE_RANGE_EXCLUSIVE, PPC_BREAKPOINT_MODE_MASK,
1288 PPC_BREAKPOINT_CONDITION_NONE, PPC_BREAKPOINT_CONDITION_AND,
1289 PPC_BREAKPOINT_CONDITION_EXACT, PPC_BREAKPOINT_CONDITION_OR,
1290 PPC_BREAKPOINT_CONDITION_AND_OR, PPC_BREAKPOINT_CONDITION_BE_ALL,
1291 PPC_BREAKPOINT_CONDITION_BE_SHIFT, PPC_BREAKPOINT_CONDITION_BE):
1292 Define, in case <ptrace.h> doesn't provide it.
1293 (booke_debug_info): New variable.
1294 (max_slots_number): Ditto.
1295 (hw_break_tuple): New struct.
1296 (thread_points): Ditto.
1297 (ppc_threads): New variable.
1298 (PPC_DEBUG_CURRENT_VERSION): New define.
1299 (have_ptrace_new_debug_booke): New function.
1300 (ppc_linux_check_watch_resources): Renamed to ...
1301 (ppc_linux_can_use_hw_breakpoint): ... this. Handle BookE processors.
1302 (ppc_linux_region_ok_for_hw_watchpoint): Handle BookE processors.
1303 (booke_cmp_hw_point): New function.
1304 (booke_find_thread_points_by_tid): Ditto.
1305 (booke_insert_point): Ditto.
1306 (booke_remove_point): Ditto.
1307 (ppc_linux_insert_hw_breakpoint): Ditto.
1308 (ppc_linux_remove_hw_breakpoint): Ditto.
1309 (get_trigger_type): Ditto.
1310 (ppc_linux_insert_watchpoint): Handle BookE processors.
1311 (ppc_linux_remove_watchpoint): Ditto.
1312 (ppc_linux_new_thread): Ditto.
1313 (ppc_linux_thread_exit): New function..
1314 (ppc_linux_stopped_data_address): Handle BookE processors.
1315 (ppc_linux_watchpoint_addr_within_range): Ditto.
1316 (_initialize_ppc_linux_nat): Initialize to_insert_hw_breakpoint and
1317 to_remove_hw_breakpoint fields of the target operations struct.
1318 Add observe for the thread_exit event.
1322 * i386-linux-nat.c (regmap): Removed.
1323 (fetch_register): Replace regmap with
1324 i386_linux_gregset_reg_offset.
1325 (store_register): Likewise.
1326 (supply_gregset): Likewise.
1327 (fill_gregset): Likewise.
1329 * i386-linux-tdep.c (i386_linux_gregset_reg_offset): Make it
1332 * i386-linux-tdep.h (i386_linux_gregset_reg_offset): New.
1336 * cp-valprint.c (cp_print_value_fields): Replaced obstack_base()
1337 method of popping recursion-detection stack with a method based on
1338 obstack_object_size(). (Similar to the PR9167 patch below, but for
1339 the static array obstack rather than the static member obstack.)
1343 * amd64-linux-nat.c (amd64_linux_gregset64_reg_offset): Removed.
1344 (_initialize_amd64_linux_nat): Replace
1345 amd64_linux_gregset64_reg_offset with
1346 amd64_linux_gregset_reg_offset.
1348 * amd64-linux-tdep.c (amd64_linux_gregset_reg_offset): Make it
1351 * amd64-tdep.h (amd64_linux_gregset_reg_offset): New.
1356 * stabsread.c (set_length_in_type_chain): New function.
1357 (read_struct_type): Call set_length_in_type_chain function.
1358 (read_enum_type): Idem.
1363 * tracepoint.c (trace_save): Open in binary mode.
1367 * gdbtypes.h (builtin_type): Add builtin_char16 and builtin_char32
1369 * gdbtypes.c (gdbtypes_post_init): Set builtin_char16 and
1370 builtin_char32 fields.
1371 * printcmd.c (decode_format): Set char size to '\0'
1372 for strings unless explicit size is given.
1373 (print_formatted): Correct calculation of NEXT_ADDRESS
1374 for 16 or 32 bit strings.
1375 (do_examine): Do not force byte size for strings.
1376 Use builtin_char16 and builtin_char32 types to display
1377 16 or 32 bit-wide strings.
1378 (x_command): Set LAST_SIZE to 'b' for string type.
1383 * amd64-linux-tdep.c (amd64_linux_core_read_description): Check
1386 * i386-linux-tdep.c (i386_linux_core_read_xcr0): Return 0 if
1387 there is no .reg-xstate section.
1388 (i386_linux_core_read_description): Check XCR0 first.
1392 * gdb/sparc-tdep.c (sparc32_store_return_value): Add gdb_assert ()
1398 * cp-valprint.c (cp_print_value_fields): Replaced obstack_base()
1399 method of popping recursion-detection stack with a method based on
1400 obstack_object_size().
1405 * p-valprint.c (pascal_val_print): Fix default printing of integer
1410 Fix compilation warning on gcc-4.1.2.
1411 * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Initialize
1412 local variable`pc' to zero.
1416 Implement thread support with core files on alpha-tru64.
1417 * dec-thread.c (dec_thread_find_new_threads): New function,
1418 extracted from resync_thread_list.
1419 (resync_thread_list): Add OPS parameter. Replace extracted-out
1420 code by call to dec_thread_find_new_threads.
1421 (dec_thread_wait): Update call to resync_thread_list.
1422 (init_dec_thread_ops): Set dec_thread_ops.to_find_new_threads.
1426 * ada-lang.c (value_pointer): New function.
1427 (make_array_descriptor): Call value_pointer to convert addresses to
1432 * rs6000-aix-tdep.c: #include exceptions.h.
1433 (rs6000_convert_from_func_ptr_addr): If an exception is thrown
1434 while reading the memory at ADDR, then ADDR cannot be a function
1439 * ada-typeprint.c (ada_print_typedef): New function.
1440 * ada-lang.h (ada_print_typedef): Add declaration.
1441 * ada-lang.c (ada_language_defn): set la_print_typdef field
1442 to ada_print_typedef.
1446 * procfs.c (procfs_address_to_host_pointer): Only define when used.
1450 * procfs.c (iterate_over_mappings_cb_ftype): New typedef.
1451 (iterate_over_mappings): Adjust function profile. Add declaration.
1452 (insert_dbx_link_bpt_in_region, info_mappings_callback):
1457 * procfs.c (solib_mappings_callback): Move function up to avoid
1462 * procfs.c (find_signalled_thread, find_stop_signal): Move
1463 these functions down to define them only when used.
1467 * valprint.c (common_val_print): Fix the value before extracting
1469 * ada-lang.c (ada_to_fixed_value): Make this function extern.
1470 * ada-lang.h (ada_to_fixed_value): New function declaration.
1471 * ada-valprint.c (ada_value_print): Use ada_to_fixed_value
1472 to avoid code duplication and fix a bug in the handling of
1473 fixed types contents.
1477 * dwarf2read.c (dwarf2_compute_name): Handle DW_AT_linkage_name.
1478 (read_partial_die): Likewise.
1479 (dwarf_attr_name): Likewise.
1485 * cp-valprint.c (global): Adding new static array recursion
1487 (cp_print_value_fields, cp_print_static_field): Added new static
1488 array recursion detection code.
1492 * i386-linux-tdep.c (i386_linux_regset_sections): Size of the
1493 general-purpose register set should be 68 instead of 144.
1494 (i386_linux_sse_regset_sections): Likewise.
1495 (i386_linux_avx_regset_sections): Likewise.
1500 * dwarf2loc.c (struct axs_var_loc): New struct.
1501 (dwarf2_tracepoint_var_loc): New function.
1502 (dwarf2_tracepoint_var_access): New function.
1503 (dwarf2_tracepoint_var_ref): Use dwarf2_tracepoint_var_loc, deal
1505 (locexpr_describe_location_piece): New function.
1506 (locexpr_describe_location_1): New function.
1507 (locexpr_describe_location): Call it, update signature.
1508 (loclist_describe_location): Rewrite to loop over locations,
1510 * symtab.h (struct symbol_computed_ops): Add address to
1511 describe_location arguments, return void.
1512 * printcmd.c (address_info): Get context PC, pass to computed
1513 location description.
1514 * tracepoint.c (scope_info): Ditto.
1515 * ax-gdb.c (trace_kludge): Export.
1519 * dwarf2-frame.c (decode_frame_entry_1): Handle CIE version 4.
1520 (struct dwarf2_cie) <segment_size>: New field.
1521 * dwarf2read.c (partial_read_comp_unit_head): Accept DWARF 4.
1522 (skip_one_die): Handle DW_FORM_flag_present, DW_FORM_sec_offset,
1524 (read_attribute_value): Handle DW_FORM_flag_present,
1525 DW_FORM_sec_offset, DW_FORM_exprloc.
1526 (dump_die_shallow): Likewise.
1527 (attr_form_is_section_offset): Handle DW_FORM_sec_offset.
1528 (dwarf2_const_value): Handle DW_FORM_exprloc.
1529 (attr_form_is_block): Likewise.
1530 (struct line_header) <maximum_ops_per_instruction>: New field.
1531 (dwarf_decode_line_header): Set new field.
1532 (dwarf_decode_lines): Handle new field.
1536 * f-exp.y: Add new production to recognize the `logical*8' type.
1537 (LOGICAL_S8_KEYWORD): New token.
1538 * f-lang.c (enum f_primitive_types)
1539 <f_primitive_type_logical_s8>: New field.
1540 (f_language_arch_info): Handling `logical*8' type.
1541 (build_fortran_types): Building `logical*8' type.
1542 * f-lang.h (struct builtin_f_type) <builtin_logical_s8>: New field.
1546 * ser-base.c (generic_readchar): Watch for EOF in read of error_fd.
1547 * ser-pipe.c (pipe_open): Fix file descriptor leaks.
1548 (pipe_close): Ditto.
1552 * configure.tgt (x86_64-*-mingw*): Set BUILD_GDBSERVER to yes.
1556 * windows-tdep.c (windows_get_tlb_type): Change current_seh.handle
1557 type to void function.
1562 * tracepoint.c (tfind_1): Add missing newline, report exit from
1564 * target.c (update_current_target): Make default
1565 to_trace_find return -1.
1569 * objc-lang.c (find_methods): Move symname check up.
1573 * ada-lang.c (print_recreate_exception)
1574 <ex_catch_exception_unhandled>: It's "catch exception unhandled",
1575 not "catch unhandled".
1579 PR breakpoints/8554.
1581 Implement `save-breakpoints'.
1583 * breakpoint.c (save_cmdlist): New.
1584 (breakpoint_set_cmdlist, breakpoint_show_cmdlist): Moved up close
1586 (print_recreate_catch_fork): New.
1587 (catch_fork_breakpoint_ops): Install it.
1588 (print_recreate_catch_vfork): New.
1589 (catch_vfork_breakpoint_ops): Install it.
1590 (print_recreate_catch_syscall): New.
1591 (catch_syscall_breakpoint_ops): Install it.
1592 (print_recreate_catch_exec): New.
1593 (catch_exec_breakpoint_ops): Install it.
1594 (print_recreate_exception_catchpoint): New.
1595 (gnu_v3_exception_catchpoint_ops): Install it.
1596 (save_breakpoints): New, based on tracepoint_save_command, but
1597 handle all breakpoint types.
1598 (save_breakpoints_command): New.
1599 (tracepoint_save_command): Rename to...
1600 (save_tracepoints_command): ... this, and reimplement using
1602 (save_command): New.
1603 (_initialize_breakpoints): Install the "save" command prefix.
1604 Install the "save breakpoints" command. Make "save-tracepoints" a
1605 deprecated alias for "save tracepoints".
1606 * breakpoint.h (struct breakpoint_ops): New field `print_recreate'.
1607 * ada-lang.c (print_recreate_exception): New.
1608 (print_recreate_catch_exception): New.
1609 (catch_exception_breakpoint_ops): Install it.
1610 (print_recreate_catch_exception_unhandled): New.
1611 (catch_exception_unhandled_breakpoint_ops): Install it.
1612 (print_recreate_catch_assert): New.
1613 (catch_assert_breakpoint_ops): Install it.
1615 * NEWS: Mention the new `save breakpoints' command. Mention the
1616 new `save tracepoints' alias and that `save-tracepoints' is now
1623 * tui/tui-out.c: Include cli-out.h.
1624 (tui_table_begin, tui_table_body, tui_table_end, tui_table_header)
1625 (tui_begin, tui_end, tui_field_int, tui_field_skip)
1626 (tui_field_string, tui_field_fmt, tui_spaces, tui_text)
1627 (tui_message, tui_wrap_hint, tui_flush): Delete forward
1629 (struct ui_out_data): Rename to...
1630 (struct tui_ui_out_data): ... this. Remove `stream' and
1631 `suppress_output' fields, and inherit cli_ui_out_data.
1632 (tui_out_data): New typedef.
1633 (tui_ui_out_impl): Don't initialize fields staticaly.
1634 (tui_table_begin, tui_table_body, tui_table_end, tui_table_header)
1635 (tui_begin, tui_end): Delete.
1636 (tui_field_int): Adjust to delegate most work to the base type.
1637 (tui_field_skip): Delete.
1638 (tui_field_string, tui_field_fmt): Adjust comment. Adjust to
1639 delegate most work to the base type.
1640 (tui_spaces): Delete.
1641 (tui_text): Adjust to delegate most work to the base type.
1642 (tui_message): Delete.
1643 (tui_wrap_hint): Delete.
1644 (tui_flush): Delete.
1645 (out_field_fmt): Delete.
1646 (field_separator): Delete.
1647 (tui_out_new): Adjust to initialize the base type.
1648 (_initialize_tui_out): Initialize tui_ui_out_impl.
1649 * cli-out.c (struct ui_out_data): Moved out to cli-out.h, renamed
1651 (cli_out_data): Adjust.
1652 (cli_ui_out_impl): Make extern.
1653 (cli_table_header, cli_field_int, cli_field_skip): Use
1654 uo_field_string instead of cli_field_string.
1655 (cli_redirect): Adjust to use cli_out_data.
1656 (cli_out_data_ctor): New.
1657 (cli_out_new): Use it.
1658 * cli-out.h (struct ui_file): Remove forward declaration.
1659 (struct cli_ui_out_data): New, moved from cli-out.c, and renamed.
1660 (cli_ui_out_impl): Declare.
1661 (cli_out_data_ctor): Declare.
1662 * ui-out.c (struct ui_out) <data>: Change type to void pointer.
1663 (uo_field_string): No longer static.
1664 (ui_out_data): Change return type to void pointer.
1665 (ui_out_new): Change `data' parameter type to void pointer.
1666 * ui-out.h (struct ui_out_data): Don't forward declare.
1667 (ui_out_data): Change return type to void pointer.
1668 (ui_out_new): Change `data' parameter type to void pointer.
1669 (uo_field_string): Declare.
1673 * ui-file.c (tee_file_isatty): Return whether `tee->one' is a tty,
1674 instead of always false.
1679 * amd64-linux-tdep.c (amd64_linux_gregset_reg_offset): Support
1684 * breakpoint.c (watchpoints_triggered): Use
1685 is_hardware_watchpoint.
1686 (watchpoints_triggered): Ditto.
1687 (bpstat_check_location): Use is_watchpoint and
1688 is_hardware_watchpoint.
1689 (bpstat_check_watchpoint): Use is_watchpoint and
1690 is_hardware_watchpoint.
1691 (bpstat_stop_status): Fix comment.
1692 (user_settable_breakpoint): Use is_watchpoint.
1693 (hw_watchpoint_used_count): Use is_hardware_watchpoint.
1694 (disable_watchpoints_before_interactive_call_start): Use
1696 (enable_watchpoints_after_interactive_call_stop): Use
1698 (clear_command): Use is_watchpoint.
1699 (do_enable_breakpoint): Use is_watchpoint.
1703 * solib-frv.c (enable_break1_done): Delete.
1704 (enable_break2): Do not check enable_break1_done. Move the
1705 enable_break2_done setting and call to
1706 remove_solib_event_breakpoints() to the end. Return without
1707 warning when the contents of _dl_debug_addr are 0.
1708 (enable_break): Do not set enable_break1_done.
1709 (frv_clear_solib): Likewise.
1713 * m32c-tdep.c (m32c_m16c_address_to_pointer): Print warning
1714 instead of an error if no PLT entry is found. Return a
1715 potentially useful result.
1716 (m32c_m16c_pointer_to_address): Add code to search for function
1717 address when no .plt entry is found.
1721 * tracepoint.c (trace_variable_command): Run a cleanup.
1725 * p-lang.c (pascal_one_char): Do not restrict C to 0..255 range.
1729 Support for Windows OS Thread Information Block.
1730 * NEWS: Document new feature.
1731 * remote.c (PACKET_qGetTIBAddr): New enum element.
1732 (remote_get_tib_address): New function.
1733 (init_remote_ops): Set to_get_tib_address field
1734 to remote_get_tib_address.
1735 (_initialize_remote): Add add_packet_config_cmd
1736 for PACKET_qGetTIBAddr.
1737 * target.c (update_current_target): Set default value for
1738 new to_get_tib_address field.
1739 * target.h (target_ops): New field to_get_tib_address.
1740 (target_get_tib_address): New macro.
1741 * windows-nat.c (thread_info): Add thread_local_base field.
1742 (windows_add_thread): Add tlb argument of type 'void *'.
1743 (fake_create_process): Adapt windows_add_thread call.
1744 (get_windows_debug_event): Idem.
1745 (windows_get_tib_address): New function.
1746 (init_windows_ops): Set to_get_tib_address field
1747 to remote_get_tib_address.
1748 (_initialize_windows_nat): Replace info_w32_cmdlist
1749 initialization by a call to init_w32_command_list.
1750 (info_w32_command, info_w32_cmdlist): Removed from here...
1751 to windows-tdep.c file.
1752 * windows-tdep.h (info_w32_cmdlist): Declare.
1753 (init_w32_command_list): New external function
1755 * windows-tdep.c: Add several headers.
1756 (info_w32_cmdlist): to here, made global.
1757 (thread_information_32): New struct.
1758 (thread_information_64): New struct.
1759 (TIB_NAME): New char array.
1760 (MAX_TIB32, MAX_TIB64, FULL_TIB_SIZE): New constants.
1761 (maint_display_all_tib): New static variable.
1762 (windows_get_tlb_type): New function.
1763 (tlb_value_read, tlb_value_write): New functions.
1764 (tlb_value_funcs): New static struct.
1765 (tlb_make_value): New function.
1766 (display_one_tib): New function.
1767 (display_tib): New function.
1768 (show_maint_show_all_tib):New function.
1769 (info_w32_command): Moved from windows-nat.c.
1770 (init_w32_command_list): New function.
1771 (_initialize_windows_tdep): New function.
1772 New "maint set/show show-all-tib" command
1773 New "$_tlb" internal variable.
1777 * tui/tui-regs.c (tui_display_register): Add comment about
1779 * tui/tui-stack.c (tui_show_locator_content): Ditto.
1783 * frame.c: Include tracepoint.h.
1784 (get_current_frame): Allow a trace frame to be an alternate source
1785 of stack frame data.
1786 * tracepoint.c (tfind_1): Don't try to get current stack frame if
1791 * ppc-linux-tdep.c (bsd_uthread_solib_loaded): Always pass 0 for
1793 * solib-spu.c (spu_solib_loaded): Always pass 0 for flags.
1797 * NEWS: Add entry for python program space support.
1798 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-progspace.o.
1799 (SUBDIR_PYTHON_SRCS): Add py-progspace.c.
1800 (py-progspace.o): New rule.
1801 * python/py-prettyprint.c (find_pretty_printer_from_objfiles): New
1803 (find_pretty_printer_from_progspace): New function.
1804 (find_pretty_printer_from_gdb): New function.
1805 (find_pretty_printer): Rewrite.
1806 * python/py-progspace.c: New file.
1807 * python/python-internal.h (program_space): Add forward decl.
1808 (pspace_to_pspace_object, pspy_get_printers): Declare.
1809 (gdbpy_initialize_pspace): Declare.
1810 * python/python.c: #include "progspace.h".
1811 (gdbpy_get_current_progspace, gdbpy_progspaces): New functions.
1812 (_initialize_python): Call gdbpy_initialize_pspace.
1813 (GdbMethods): Add current_progspace, progspaces.
1815 Add -s option to source command.
1816 * NEWS: Document new option.
1817 * cli/cli-cmds.c (find_and_open_script): Add function comment.
1818 Delete from_tty and cleanupp args. Split filep arg into file and
1819 full_pathp. New arg search_path.
1820 (source_script_from_stream): New function.
1821 (source_script_with_search): New function.
1822 (source_script): Rewrite.
1823 (source_command): Parse "-s" option.
1824 (init_cli_cmds): Add "-s" docs to source command help, and reformat.
1825 * python/python.c (source_python_script): Make file arg a const char *.
1826 Don't call fclose, leave for caller.
1827 * python/python.h (source_python_script): Update.
1832 Avoid rereading shared libraries that haven't changed.
1834 * solib.c (free_so_symbols): New function, from ...
1835 (free_so): ... here. Call it.
1836 (solib_read_symbols): Don't warn here if symbols have already been
1838 (solib_add): Warn here instead, if a pattern was specified.
1839 (reload_shared_libraries_1): New.
1840 (reload_shared_libraries): Rewrite to not fetch the library list.
1844 * source.c (openp): Strip DOS drive letter if present before
1845 concatenating string to search path.
1849 * objfiles.h (gdb_bfd_close_or_warn): Declare.
1850 * objfiles.c (gdb_bfd_close_or_warn): New.
1851 * corelow.c: Include objfiles.h
1852 (core_close): Use gdb_bfd_close_or_warn.
1853 * elfread.c (build_id_verify): Ditto.
1854 * exec.c (exec_close, exec_close_1): Ditto.
1859 Group errors for many missing shared libraries.
1861 * solist.h (struct so_list): Remove from_tty.
1862 * solib.c (solib_bfd_open): Return NULL if we failed to open a BFD.
1863 (solib_map_sections): Take so_list argument. Return 0 if we
1864 failed to open a BFD. Add target sections here.
1865 (symbol_add_stub): Delete.
1866 (solib_read_symbols): Inline symbol_add_stub. Use current flags,
1867 not from_tty copied from the so_list. Don't warn a second time
1868 for a missing library.
1869 (update_solib_list): Don't save from_tty. Use TRY_CATCH. Do not
1870 add to the section table here. Print out a single warning for all
1872 * bsd-uthread.c (bsd_uthread_solib_loaded): Always pass 0 for
1877 * python/py-block.c (gdbpy_block_for_pc): Use i8n to encompass
1878 error/warning messages. Capitalize and use complete sentences.
1879 (blpy_block_syms_iternext): Likewise.
1880 * python/py-cmd.c (parse_command_name, cmdpy_init): Likewise.
1881 * python/py-frame.c (FRAPY_REQUIRE_VALID, frapy_block)
1882 (frame_info_to_frame_object, frapy_read_var)
1883 (gdbpy_frame_stop_reason_string): Likewise.
1884 * python/py-lazy-string.c (stpy_convert_to_value)
1885 (gdbpy_create_lazy_string_object): Likewise.
1886 * python/py-objfile.c (objfpy_set_printers): Likewise.
1887 * python/py-prettyprint.c (gdbpy_default_visualizer): Likewise.
1888 * python/python.c (parameter_to_python): Likewise.
1889 * python/py-type.c (typy_range, typy_target): Likewise.
1890 * python/py-value.c (valpy_cast, valpy_length, valpy_getitem)
1891 (valpy_richcompare, valpy_int, valpy_long, valpy_float): Likewise.
1898 * python/py-prettyprint.c (pretty_print_one_value): Test for
1900 (print_string_repr): Test for Py_None. Set flags accordingly.
1901 Return value depending on return type.
1902 (print_children): Take a value indicating whether data was printed
1903 before this function was called. Alter output accordingly.
1904 (apply_val_pretty_printer): Capture return value from
1905 print_string_repr and pass to print_children.
1910 * i386-linux-tdep.c (i386_linux_regset_sections): Remove extended
1911 register note sections.
1912 (i386_linux_sse_regset_sections, i386_linux_avx_regset_sections):
1914 (i386_linux_init_abi): Install list of supported register note
1915 sections that matches the target description.
1919 * remote.c (remote_get_noisy_reply): Don't error out on empty
1921 (remote_start_remote): Update and merge tracepoints and trace
1922 state variables as long as the target supports tracepoints.
1923 (remote_trace_init): Fix prototype.
1924 (remote_download_trace_state_variable): Validate reply.
1925 (remote_trace_set_readonly_regions): Fix prototype.
1926 (remote_trace_start): Fix prototype. Check for empty reply.
1927 (remote_get_trace_status): Small cleanup.
1928 (remote_trace_stop): Fix prototype. Check for empty reply.
1929 (remote_trace_find): Check for empty reply.
1930 (remote_save_trace_data): Validate reply.
1931 (remote_set_disconnected_tracing): Check for empty reply, and
1933 (remote_set_circular_trace_buffer): Ditto.
1937 Suppress unused value warning during compilation.
1938 * tui/tui-regs.c (tui_display_register): Cast wstandout and wstandend
1940 * tui/tui-stack.c (tui_show_locator_content): Likewise.
1944 * tracepoint.c (tfile_xfer_partial): Check read result.
1948 * remote-m32r-sdi.c (m32r_files_info): Add const to local "file" var.
1949 * remote-sim.c (gdbsim_files_info): Likewise.
1953 * arm-tdep.h (gdb_regnum): Add ARM_FPSCR_REGNUM
1954 * arm-linux-nat.c (arm_linux_vfp_register_count): New
1956 (fetch_vfp_registers): New function to fetch VFP registers.
1957 (store_vfp_registers): New function to store VFP registers.
1958 (arm_linux_fetch_inferior_registers): Add support for VFP
1960 (arm_linux_store_inferior_registers): Likewise.
1961 (arm_linux_read_description): Likewise.
1962 (_initialize_arm_linux_nat): Delay initialising iWMMX tdesc
1967 * amd64-tdep.c (amd64_supply_xstateregset): Remove the unused
1969 (amd64_collect_xstateregset): Likewise.
1973 * tracepoint.c (trace_status_mi): Report frames created.
1975 * tracepoint.c (trace_dump_command): Include default-collect
1980 * symtab.c (find_function_start_sal): Never return SAL pointing
1981 before function start address, even if line info is missing.
1985 * NEWS: Mention tracepoints support.
1989 * tracepoint.c (trace_status_mi): Report disconnected tracing and
1990 circular trace buffer statuses.
1994 * config/djgpp/fnchange.lst: Fix typo in translations for
1995 symbol-without-target_section.exp and symbol-without-target_section.c.
1999 * breakpoint.c (condition_command): Pass condition expression to
2000 set_breakpoint_condition stripped from breakpoint number.
2006 * breakpoint.c (condition_command): Simplify. Move condition
2008 (set_breakpoint_condition): ... here. New function.
2009 * breakpoint.h (set_breakpoint_condition): Declare.
2010 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-breakpoint.
2011 (SUBDIR_PYTHON_SRCS): Likewise.
2012 (py-breakpoint.o): New rule.
2013 * python/py-breakpoint.c: New file.
2014 * python/python-internal.h (gdbpy_breakpoints)
2015 (gdbpy_initialize_breakpoints): Declare.
2016 (GDB_PY_SET_HANDLE_EXCEPTION) Define.
2020 * regformats/regdat.sh: Include server.h. Don't include
2026 * tracepoint.h (struct trace_status): New fields disconnected_tracing
2027 and circular_buffer.
2028 (disconnect_tracing): Rename from disconnect_or_stop_tracing.
2029 * tracepoint.c (trace_status_command): Display target's status for
2030 disconnected tracing and circular buffer.
2031 (disconnect_tracing): Rename from disconnect_or_stop_tracing, add
2032 query for non-disconnected-tracing case, remove the stop_tracing
2034 (tfile_open): Clear disconnected and circular buffer status.
2035 (trace_save): Save disconnected and circular buffer status.
2036 (parse_trace_status): Parse disconnected and circular buffer status,
2037 also recognize disconnected as a stop reason.
2038 * remote.c (remote_set_disconnected_tracing): Only set
2039 QTDisconnected if the remote end supports disconnected tracing.
2040 Warn otherwise, if trying to enable disconnected tracing.
2041 * infcmd.c (detach_command): Update disconnect_tracing call.
2042 * cli/cli-cmds.c (quit_command): Ditto.
2046 * i387-tdep.c (i387_collect_xsave): Replace abort with
2051 * breakpoint.c (default_collect_info): New function.
2052 (breakpoints_info): Call it.
2053 (maintenance_info_breakpoints): Ditto.
2054 (tracepoints_info): Ditto.
2058 * i387-tdep.c (i387_collect_xsave): Re-indent.
2062 * i386-linux-nat.c (have_ptrace_getfpxregs): Initialize to -1
2063 if HAVE_PTRACE_GETFPXREGS is defined.
2064 (i386_linux_read_description): Set have_ptrace_getfpxregs and
2065 have_ptrace_getregset to 0 if ptrace PTRACE_GETFPXREGS failed.
2067 * i386-linux-tdep.c: Include "features/i386/i386-mmx-linux.c"
2068 (i386_linux_core_read_description): Return tdesc_i386_mmx_linux
2069 if .reg-xfp section doesn't exist.
2070 (_initialize_i386_linux_tdep): Call initialize_tdesc_i386_mmx_linux.
2072 * i386-linux-tdep.h (tdesc_i386_mmx_linux): New.
2074 * i386-tdep.c: Include "features/i386/i386-mmx.c".
2075 (i386_go32_init_abi): Set tdesc to tdesc_i386_mmx.
2076 (i386_validate_tdesc_p): Make org.gnu.gdb.i386.sse optional. Set
2077 xcr0 to I386_XSTATE_X87_MASK if SSE isn't available.
2078 (i386_gdbarch_init): Update comments.
2079 (_initialize_i386_tdep): Call initialize_tdesc_i386_mmx.
2081 * common/i386-xstate.h (I386_XSTATE_X87_MASK): New.
2083 * config/djgpp/fnchange.lst: Add i386 MMX XML files.
2085 * features/Makefile (i386/i386-mmx-expedite): New.
2086 (i386/i386-mmx-linux-expedite): Likewise.
2087 ($(outdir)/i386/i386-mmx.dat): Likewise.
2088 ($(outdir)/i386/i386-mmx-linux.dat): Likewise.
2090 * features/i386/i386-mmx-linux.c: New.
2091 * features/i386/i386-mmx-linux.xml: Likewise.
2092 * features/i386/i386-mmx.c: Likewise.
2093 * features/i386/i386-mmx.xml: Likewise.
2094 * regformats/i386/i386-mmx-linux.dat: Likewise.
2095 * regformats/i386/i386-mmx.dat: Likewise.
2097 * features/Makefile (WHICH): Add i386/i386-mmx and
2098 i386/i386-mmx-linux.
2102 * source.c (openp): Skip $cdir in PATH.
2107 * python/py-lazy-string.c (stpy_convert_to_value): Check for
2109 (gdbpy_create_lazy_string_object): Allow strings with a NULL
2110 address and a zero length.
2114 * i386-tdep.c (i386_process_record): Add support for insn
2119 * python/python.c (source_python_script): Use ensure_python_env
2120 to prepare environment for script.
2124 * amd64-linux-nat.c: Include "regset.h", "elf/common.h",
2125 <sys/uio.h> and "i386-xstate.h".
2126 (PTRACE_GETREGSET): New.
2127 (PTRACE_SETREGSET): Likewise.
2128 (have_ptrace_getregset): Likewise.
2129 (amd64_linux_gregset64_reg_offset): Include 16 upper YMM
2131 (amd64_linux_gregset32_reg_offset): Include 8 upper YMM
2133 (amd64_linux_fetch_inferior_registers): Support PTRACE_GETFPREGS.
2134 (amd64_linux_store_inferior_registers): Likewise.
2135 (amd64_linux_read_description): Check and enable AVX target
2138 * amd64-linux-tdep.c: Include "regset.h", "i386-linux-tdep.h"
2139 and "features/i386/amd64-avx-linux.c".
2140 (amd64_linux_regset_sections): New.
2141 (amd64_linux_core_read_description): Check and enable AVX
2143 (amd64_linux_init_abi): Set xsave_xcr0_offset. Call
2144 set_gdbarch_core_regset_sections.
2145 (_initialize_amd64_linux_tdep): Call
2146 initialize_tdesc_amd64_avx_linux.
2148 * amd64-linux-tdep.h (AMD64_LINUX_ORIG_RAX_REGNUM): Replace
2149 AMD64_MXCSR_REGNUM with AMD64_YMM15H_REGNUM.
2150 (tdesc_amd64_avx_linux): New.
2151 (amd64_linux_update_xstateregset): Likewise.
2153 * amd64-tdep.c: Include "features/i386/amd64-avx.c".
2154 (amd64_ymm_names): New.
2155 (amd64_ymmh_names): Likewise.
2156 (amd64_register_name): Likewise.
2157 (amd64_supply_xstateregset): Likewise.
2158 (amd64_collect_xstateregset): Likewise.
2159 (amd64_supply_xsave): Likewise.
2160 (amd64_collect_xsave): Likewise.
2161 (AMD64_NUM_REGS): Removed.
2162 (amd64_dwarf_reg_to_regnum): Return %ymmN register number for
2163 %xmmN if AVX is available.
2164 (amd64_pseudo_register_name): Support pseudo YMM registers.
2165 (amd64_regset_from_core_section): Support .reg-xstate section.
2166 (amd64_init_abi): Set ymmh_register_names, num_ymm_regs
2167 and ymm0h_regnum. Call set_gdbarch_register_name.
2168 (amd64_init_abi): Call initialize_tdesc_amd64_avx.
2170 * amd64-tdep.h (amd64_regnum): Add AMD64_YMM0H_REGNUM and
2171 AMD64_YMM15H_REGNUM.
2172 (AMD64_NUM_REGS): New.
2173 (amd64_supply_xsave): Likewise.
2174 (amd64_collect_xsave): Likewise.
2175 (amd64_register_name): Removed.
2176 (amd64_register_type): Likewise.
2180 * i387-tdep.c: Include "i386-xstate.h".
2181 (XSAVE_XSTATE_BV_ADDR): New.
2182 (xsave_avxh_offset): Likewise.
2183 (XSAVE_AVXH_ADDR): Likewise.
2184 (i387_supply_xsave): Likewise.
2185 (i387_collect_xsave): Likewise.
2187 * i387-tdep.h (I387_NUM_YMM_REGS): New.
2188 (I387_YMM0H_REGNUM): Likewise.
2189 (I387_YMMENDH_REGNUM): Likewise.
2190 (i387_supply_xsave): Likewise.
2191 (i387_collect_xsave): Likewise.
2195 * i386-linux-nat.c: Include "regset.h", "elf/common.h",
2196 <sys/uio.h> and "i386-xstate.h".
2197 (PTRACE_GETREGSET): New.
2198 (PTRACE_SETREGSET): Likewise.
2199 (fetch_xstateregs): Likewise.
2200 (store_xstateregs): Likewise.
2201 (GETXSTATEREGS_SUPPLIES): Likewise.
2202 (regmap): Include 8 upper YMM registers.
2203 (i386_linux_fetch_inferior_registers): Support XSAVE extended
2205 (i386_linux_store_inferior_registers): Likewise.
2206 (i386_linux_read_description): Check and enable AVX target
2209 * i386-linux-tdep.c: Include "regset.h", "i387-tdep.h",
2210 "i386-xstate.h" and "features/i386/i386-avx-linux.c".
2211 (i386_linux_regset_sections): Add ".reg-xstate".
2212 (i386_linux_gregset_reg_offset): Include 8 upper YMM registers.
2213 (i386_linux_core_read_xcr0): New.
2214 (i386_linux_core_read_description): Check and enable AVX target
2216 (i386_linux_init_abi): Set xsave_xcr0_offset.
2217 (_initialize_i386_linux_tdep): Call
2218 initialize_tdesc_i386_avx_linux.
2220 * i386-linux-tdep.h (I386_LINUX_ORIG_EAX_REGNUM): Replace
2221 I386_SSE_NUM_REGS with I386_AVX_NUM_REGS.
2222 (i386_linux_core_read_xcr0): New.
2223 (tdesc_i386_avx_linux): Likewise.
2224 (I386_LINUX_XSAVE_XCR0_OFFSET): Likewise.
2226 * i386-tdep.c: Include "i386-xstate.h" and
2227 "features/i386/i386-avx.c".
2228 (i386_ymm_names): New.
2229 (i386_ymmh_names): Likewise.
2230 (i386_ymmh_regnum_p): Likewise.
2231 (i386_ymm_regnum_p): Likewise.
2232 (i386_xmm_regnum_p): Likewise.
2233 (i386_register_name): Likewise.
2234 (i386_ymm_type): Likewise.
2235 (i386_supply_xstateregset): Likewise.
2236 (i386_collect_xstateregset): Likewise.
2237 (i386_sse_regnum_p): Removed.
2238 (i386_pseudo_register_name): Support pseudo YMM registers.
2239 (i386_pseudo_register_type): Likewise.
2240 (i386_pseudo_register_read): Likewise.
2241 (i386_pseudo_register_write): Likewise.
2242 (i386_dbx_reg_to_regnum): Return %ymmN register number for
2243 %xmmN if AVX is available.
2244 (i386_regset_from_core_section): Support .reg-xstate section.
2245 (i386_register_reggroup_p): Supper upper YMM and YMM registers.
2246 (i386_process_record): Replace i386_sse_regnum_p with
2248 (i386_validate_tdesc_p): Support org.gnu.gdb.i386.avx feature.
2249 Set ymmh_register_names, num_ymm_regs, ymm0h_regnum and xcr0.
2250 (i386_gdbarch_init): Set xstateregset. Set xsave_xcr0_offset.
2251 Call set_gdbarch_register_name. Replace I386_SSE_NUM_REGS with
2252 I386_AVX_NUM_REGS. Set ymmh_register_names, ymm0h_regnum and
2253 num_ymm_regs. Add num_ymm_regs to set_gdbarch_num_pseudo_regs.
2255 (_initialize_i386_tdep): Call initialize_tdesc_i386_avx.
2257 * i386-tdep.h (gdbarch_tdep): Add xstateregset, ymm0_regnum,
2258 xcr0, xsave_xcr0_offset, ymm0h_regnum, ymmh_register_names and
2260 (i386_regnum): Add I386_YMM0H_REGNUM, and I386_YMM7H_REGNUM.
2261 (I386_AVX_NUM_REGS): New.
2262 (i386_xmm_regnum_p): Likewise.
2263 (i386_ymm_regnum_p): Likewise.
2264 (i386_ymmh_regnum_p): Likewise.
2266 * common/i386-xstate.h: New.
2270 * config/djgpp/fnchange.lst: Add x86 AVX XML files.
2272 * features/Makefile (WHICH): Add i386/i386-avx,
2273 i386/i386-avx-linux, i386/x86-64-avx and i386/x86-64-avx-linux.
2274 (i386/i386-avx-expedite): New.
2275 (i386/i386-avx-linux-expedite): Likewise.
2276 (i386/x86-64-avx-expedite):Likewise.
2277 (i386/x86-64-avx-linux-expedite): Likewise.
2278 ($(outdir)/i386/i386-avx.dat): New dependency.
2279 ($(outdir)/i386/i386-avx-linux.dat): Likewise.
2280 ($(outdir)/i386/x86-avx-64.dat): Likewise.
2281 ($(outdir)/i386/x86-64-avx-linux.dat): Likewise.
2283 * features/i386/32bit-avx.xml: New.
2284 * features/i386/64bit-avx.xml: Likewise.
2285 * features/i386/i386-avx-linux.c: Likewise.
2286 * features/i386/i386-avx-linux.xml: Likewise.
2287 * features/i386/i386-avx.c: Likewise.
2288 * features/i386/i386-avx.xml: Likewise.
2289 * features/i386/x86-64-avx-linux.c: Likewise.
2290 * features/i386/x86-64-avx-linux.xml: Likewise.
2291 * features/i386/x86-64-avx.c: Likewise.
2292 * features/i386/x86-64-avx.xml: Likewise.
2293 * regformats/i386/i386-avx-linux.dat: Likewise.
2294 * regformats/i386/i386-avx.dat: Likewise.
2295 * regformats/i386/x86-64-avx-linux.dat: Likewise.
2296 * regformats/i386/x86-64-avx.dat: Likewise.
2300 * top.c (source_file_name): Make const char *.
2301 * top.h (source_file_name): Update.
2302 * cli/cli-script.c (source_cleanup_lines_args): Make old_file
2304 (script_from_file): Change `file' arg to const char *.
2305 * cli/cli-script.h (script_from_file): Update.
2309 * cli/cli-cmds.c (source_command): Run cleanups.
2313 * defs.h (char_ptr): Move typedef here from...
2314 * ada-lang.c (char_ptr): Remove.
2315 * charset.c (char_ptr): Remove.
2316 * tracepoint.h (struct uploaded_string): Remove.
2317 (struct uploaded_tp): Use vectors for string arrays.
2318 * tracepoint.c (trace_save): Use vectors of actions.
2319 (parse_tracepoint_definition): Ditto.
2320 (get_uploaded_tp): Clear vectors.
2321 * breakpoint.c (create_tracepoint_from_upload): Use vectors.
2322 (next_cmd): Change to an int.
2323 (read_next_cmd): Use vector of command strings.
2327 * top.h (source_script, cd_command): Delete.
2328 * main.c: #include "cli/cli-cmds.h"
2332 * m32c-tdep.c (make_types): When calling `arch_type', pass size of
2333 type in bytes, not bits.
2337 * stabsread.c (define_symbol): Add support for char
2338 and string constants.
2342 Remove remaining "%ll" uses.
2343 * go32-nat.c (go32_pte_for_address): Replace "0x%llx" using
2345 * rs6000-nat.c (rs6000_ptrace64): Idem.
2346 * solib-pa64.c (pa64_current_sos): Idem.
2347 * solib-spu.c (spu_current_sos): Idem.
2348 * linux-nat.c (linux_nat_find_memory_regions): Replace "%lld" using
2350 * nto-procfs.c (procfs_meminfo): Replace "0x%016llx" using
2352 * sh64-tdep.c (sh64_show_media_regs): Idem.
2356 * tracepoint.c: Include gdbcore.h.
2357 (tfile_xfer_partial): Return partial results, also try reading
2359 (tfile_has_all_memory): New function.
2360 (init_tfile_ops): Use it.
2365 * xml-syscall.c (my_gdb_datadir): New variable to keep track of
2366 the changes in data-directory.
2367 (init_sysinfo): Reload the syscall XML file if the data-directory
2373 * breakpoint.c (bpstat_stop_status): Use bpstat_causes_stop.
2378 * breakpoint.c (breakpoint_1): Add filter argument, return number of
2379 breakpoints printed.
2380 (is_hardware_watchpoint): Make argument const.
2381 (is_watchpoint): Ditto.
2382 (is_tracepoint): Merge of tracepoint_type and breakpoint_is_tracepoint,
2384 (breakpoints_info): Pass NULL to breakpoint_1.
2385 (maintenance_info_breakpoints): Ditto.
2386 (watchpoints_info): New function.
2387 (tracepoints_info): Use breakpoint_1 filter.
2388 (set_ignore_count): Warn that tracepoint ignore count will be ignored.
2389 (_initialize_breakpoint): Make "info watchpoints" its own command.
2390 * breakpoint.h (is_tracepoint): Rename from breakpoint_is_tracepoint.
2391 * mi/mi-cmd-break.c (mi_cmd_break_commands): Use is_tracepoint.
2395 * tracepoint.c (tfile_fetch_registers): Add fallback case.
2399 * infcmd.c (run_command_1): Call proceed with regcache_read_pc address.
2400 * config/djgpp/fnchange.lst: Add translation for break-entry.exp.
2404 * breakpoint.c (bpstat_find_step_resume_breakpoint): Remove.
2405 * breakpoint.h (bpstat_find_step_resume_breakpoint): Remove.
2409 * dwarf2read.c (read_namespace_type): Use common "return set_die_type"
2414 * i386-tdep.c (OT_DQUAD): New enum.
2415 (i386_process_record): Add code for MMX, 3DNow!, SSE, SSE2,
2416 SSE3, SSSE3 and SSE4.
2420 * i386-tdep.c (i386_record_lea_modrm_addr): Remove useless
2425 * tracepoint.c (trace_dump_actions): New, factored out from
2426 trace_dump_command, and adjusted to recurse into while-stepping's
2428 (trace_dump_command): Use it.
2432 * breakpoint.h (struct counted_command_line): Moved definition to
2433 breakpoint.c, and forward declare.
2434 (breakpoint_commands): Declare.
2435 * breakpoint.c (struct counted_command_line): Moved here.
2436 (breakpoint_commands): New.
2437 * tracepoint.c (encode_actions): Use breakpoint_commands.
2438 * remote.c (remote_download_tracepoint): Ditto.
2442 * remote.c (remote_parse_stop_reply): Use hex_string instead
2443 of phex_nz for error.
2448 * tracepoint.h (enum actionline_type): Remove.
2449 (validate_actionline): Change return to void.
2450 * tracepoint.c (report_agent_reqs_errors): New function.
2451 (validate_actionline): Call it, change return to void, report errors
2453 (collect_symbol): Call report_agent_reqs_errors.
2454 (encode_actions_1): Ditto.
2455 (encode_actions): Don't expect a result from validate_actionline.
2459 * tracepoint.c (trace_start_command): Confirm if trace is running.
2460 (trace_stop_command): Error if trace not running.
2464 * amd64-tdep.c (amd64_byte_names): Add "ah", "bh", "ch", "dh".
2465 (AMD64_NUM_LOWER_BYTE_REGS): New.
2466 (amd64_pseudo_register_read): Handle "ah", "bh", "ch", "dh".
2467 (amd64_pseudo_register_write): Likewise.
2468 (amd64_init_abi): Set num_byte_regs to 20.
2472 * breakpoint.c (multi_start, multi_end, last_was_multi): Delete.
2473 (prev_breakpoint_count): New.
2474 (set_breakpoint_count): Adjust.
2475 (rbreak_start_breakpoint_count): New.
2476 (start_rbreak_breakpoints): Adjust.
2477 (end_rbreak_breakpoints): Adjust.
2478 (struct commands_info) <arg>: New field.
2479 (do_map_commands_command): Tweak output to include breakpoint spec
2481 (commands_command_1): Adjust. Avoid setting an xfree cleanup if
2482 ARG was empty on entry. Set INFO's arg.
2483 (create_breakpoint): Adjust.
2485 * NEWS: Clarify `commands' changes.
2489 * tracepoint.c: Include stack.h.
2490 (struct add_local_symbols_data): New.
2491 (do_collect_symbol): New.
2492 (add_local_symbols): Rewrite using iterate_over_block_arg_vars and
2493 iterate_over_block_local_vars.
2494 * stack.c (print_block_frame_locals): Rewrite as ...
2495 (iterate_over_block_locals): ... this. Take a callback function
2496 pointer and generic data pointer, and call that instead of
2497 print_variable_and_value.
2498 (struct print_variable_and_value_data): New.
2499 (do_print_variable_and_value): New.
2500 (iterate_over_block_local_vars): New, abstracted out from
2501 print_frame_local_vars.
2502 (print_frame_local_vars): Rewrite using
2503 iterate_over_block_local_vars.
2504 (iterate_over_block_arg_vars): New, abstracted out from
2505 print_frame_arg_vars.
2506 (print_frame_arg_vars): Rewrite using iterate_over_block_arg_vars.
2507 * stack.h (iterate_over_block_arg_local_vars_cb): New typedef.
2508 (iterate_over_block_arg_vars, iterate_over_block_local_vars): Declare.
2512 * arm-tdep.c (thumb_get_next_pc_raw): Correctly detect TBH
2513 instructions. Use the PC+4 if the base of the TBB or TBH is the
2518 Fix crash on reading wrong function declaration DWARF.
2519 * dwarf2read.c (read_subroutine_type): New variable void_type.
2520 Pre-fill all TYPE_FIELD_TYPEs. Move nparams and iparams initialization
2521 more close to their use.
2525 * breakpoint.c (tracepoint_save_command): Include variables,
2526 conditionals, tracepoint types, and default-collect.
2527 * tracepoint.c (save_trace_state_variables): New function.
2528 * tracepoint.h (save_trace_state_variables): Declare it.
2532 * remote.c (end_thread): ARI fix: Use xstrdup instead of strdup.
2536 * c-typeprint.c (c_type_print_args): Don't print "void"
2537 for java, regardless of whether it is TYPE_PROTOTYPED.
2538 Use the passed-in language instead of current_language.
2539 (c_type_print_varspec_suffix): Use current_language instead
2540 of assuming language_c.
2541 * jv-typeprint.c (java_type_print_base): (bz 9320) Strip off
2542 any return type specifier from the physname.
2546 * tui/tui-interp.c (tui_is_toplevel): New.
2548 (tui_allowed_p): New.
2549 * tui/tui.c (tui_enable): Check if the TUI is allowed before
2551 * tui/tui.h (tui_allowed_p): Declare.
2555 * serial.h: Include winsock2.h before windows.h.
2559 * NEWS: Mention xmlRegisters= in qSupported packet.
2561 * i386-tdep.c: Include "remote.h".
2562 (_initialize_i386_tdep): Call register_remote_support_xml.
2564 * remote.c (remote_support_xml): New.
2565 (register_remote_support_xml): Likewise.
2566 (remote_query_supported_append): Likewise.
2567 (remote_query_supported): Support remote_support_xml.
2569 * remote.h (register_remote_support_xml): New.
2573 * tracepoint.c (trace_find_line_command): Remove dead code.
2575 * tracepoint.h (struct uploaded_string): New struct.
2576 (struct uploaded_tp): New fields for source strings.
2577 * breakpoint.c (this_utp, next_cmd): New globals.
2578 (read_uploaded_action): New function.
2579 (create_tracepoint_from_upload): Fill in more parts
2581 * tracepoint.c (encode_source_string): New function.
2582 (trace_save): Write out source strings, fix error checks.
2583 (parse_tracepoint_definition): Add source string parsing.
2584 * remote.c (PACKET_TracepointSource): New packet type.
2585 (remote_download_command_source): New function.
2586 (remote_download_tracepoint): Download source pieces also.
2587 (_initialize_remote): Add packet config command.
2589 * tracepoint.c (collect_symbol): Send LOC_UNRESOLVED symbols to
2592 * tracepoint.c (start_tracing): Check tracepoints before sending
2593 commands to target, don't start if all tracepoints disabled.
2597 * cli/cli-script.c (process_next_line): Handle 'stepping'.
2601 * tracepoint.c (disconnect_or_stop_tracing): Get out of tfind mode.
2605 * breakpoint.c (commands_command_1): Duplicate 'arg'.
2609 * breakpoint.c (expand_line_sal_maybe): Always call skip_prologue_sal.
2610 (skip_prologue_sal): Remove local definition.
2611 (resolve_sal_pc): Remove now unnecessary code.
2612 * linespec.c (minsym_found): Call skip_prologue_sal.
2613 * symtab.c (find_function_start_pc): Remove.
2614 (find_function_start_sal): Extract prologue skipping into ...
2615 (skip_prologue_sal): ... this new function. Handle code both
2616 with and without debug info. Respect SAL's explicit_pc and
2617 explicit_line flags. Inline old find_function_start_pc.
2618 * symtab.h (find_function_start_pc): Remove.
2619 (skip_prologue_sal): Add prototype.
2623 * dwarf2read.c (read_func_scope): Also scan specification DIEs
2624 for DW_TAG_imported_module children.
2628 * dwarf2read.c (dwarf2_name): Work around GCC bugzilla debug/41828 by
2629 ignoring spurious DW_AT_name attributes for unnamed structs or unions.
2630 * completer.c (add_struct_fields): Fix inverted logic.
2634 * breakpoint.c (bpstat_clear_actions): Reset bs->commands_left.
2638 * tracepoint.c (current_trace_status): Don't make sure error_desc
2640 (parse_trace_status): Release a previous error_desc string, and
2641 set it to NULL by default. If stop reason is tracepoint_error,
2642 make sure error_desc is not left NULL.
2646 * tracepoint.c (trace_save): Remove X from tracepoint error
2651 * tracepoint.c (parse_trace_status): Don't allow plain strings in
2652 the terror description. Don't expect an X prefix.
2656 * tracepoint.h (trace_stop_reason): Add tracepoint_error.
2657 (struct trace_status): New field error_desc.
2658 * tracepoint.c (stop_reason_names): Add terror.
2659 (current_trace_status): Ensure non-NULL error description.
2660 (trace_status_command): Add error report.
2661 (trace_status_mi): Ditto.
2662 (trace_save): Add special case for error description.
2663 (parse_trace_status): Add case for errors.
2667 * dwarf2read.c (read_subroutine_type): If the compilation unit
2668 language is Java, mark any formal parameter named "this" as
2669 artificial (GCC/43521).
2670 (dwarf2_name): Add special handling for Java constructors.
2674 PR gdb/11327, PR gdb/11328, PR breakpoints/11368:
2675 * infrun.c (handle_inferior_event): Change initialization of
2677 (handle_inferior_event): Change assignment to stop_stack_dummy.
2678 (normal_stop): Update use of stop_stack_dummy.
2679 (struct inferior_status) <stop_stack_dummy>: Change type.
2680 * inferior.h (stop_stack_dummy): Update.
2681 * infcmd.c (stop_stack_dummy): Change type.
2682 * infcall.c (cleanup_delete_std_terminate_breakpoint): New
2684 (call_function_by_hand): Call set_std_terminate_breakpoint.
2685 Rewrite std::terminate handling.
2686 * breakpoint.h (enum bptype) <bp_std_terminate,
2687 bp_std_terminate_master>: New.
2688 (enum stop_stack_kind): New.
2689 (struct bpstat_what) <call_dummy>: Change type.
2690 (set_std_terminate_breakpoint, delete_std_terminate_breakpoint):
2692 * breakpoint.c (create_std_terminate_master_breakpoint): New
2694 (update_breakpoints_after_exec): Handle bp_std_terminate_master.
2695 Call create_std_terminate_master_breakpoint.
2696 (print_it_typical): Handle new breakpoint kinds.
2697 (bpstat_stop_status): Handle bp_std_terminate_master.
2698 (bpstat_what): Correctly set call_dummy field. Handle
2699 bp_std_terminate_master and bp_std_terminate.
2700 (print_one_breakpoint_location): Update.
2701 (allocate_bp_location): Update.
2702 (set_std_terminate_breakpoint): New function.
2703 (delete_std_terminate_breakpoint): Likewise.
2704 (create_thread_event_breakpoint): Update.
2705 (delete_command): Update.
2706 (breakpoint_re_set_one): Update.
2707 (breakpoint_re_set): Call create_std_terminate_master_breakpoint.
2711 * symfile.c (build_section_addr_info_from_bfd): New.
2712 (build_section_addr_info_from_objfile): Base it on
2713 build_section_addr_info_from_bfd.
2714 (addrs_section_compar, addrs_section_sort): New.
2715 (addr_info_make_relative): New variables my_cleanup, abfd_addrs,
2716 addrs_sorted, abfd_addrs_sorted and addrs_to_abfd_addrs. Build
2717 addrs_to_abfd_addrs. Use it for recalculating ADDRS.
2721 * elfread.c (find_separate_debug_file_by_buildid):
2722 Remove unused local variable.
2726 PR breakpoints/9352:
2727 * NEWS: Mention changes to `commands' and `rbreak'.
2728 * symtab.c (do_end_rbreak_breakpoints): New function.
2729 (rbreak_command): Call start_rbreak_breakpoints; arrange to call
2730 end_rbreak_breakpoints.
2731 * breakpoint.c (breakpoint_count, tracepoint_count): Now static.
2732 (set_breakpoint_count): Likewise. Clear last_was_multi.
2733 (multi_start, multi_end, last_was_multi): New globals.
2734 (start_rbreak_breakpoints, end_rbreak_breakpoints): New
2736 (struct commands_info): New
2737 (do_map_commands_command): New function.
2738 (commands_command_1): New function.
2739 (commands_command): Use it.
2740 (commands_from_control_command): Likewise.
2741 (do_delete_breakpoint): New function.
2742 (delete_command): Use it.
2743 (map_breakpoint_numbers): Add 'data' argument. Pass to callback.
2744 (do_map_disable_breakpoint): New function.
2745 (disable_command): Use it.
2746 (do_map_enable_breakpoint): New function.
2747 (enable_command): Use it.
2748 (enable_once_breakpoint): Add argument.
2749 (enable_once_command): Update.
2750 (enable_delete_breakpoint): Add argument.
2751 (enable_delete_command): Update.
2752 (break_command_really): Set last_was_multi when needed.
2753 (check_tracepoint_command): Fix formatting.
2754 (validate_commands_for_breakpoint): New function.
2755 (breakpoint_set_commands): Use it.
2756 (tracepoint_save_command): Update.
2757 * breakpoint.h (start_rbreak_breakpoints, end_rbreak_breakpoints):
2762 * breakpoint.h (struct counted_command_line): New struct.
2763 (struct breakpoint) <commands>: Change type.
2764 (struct bpstats) <commands>: Change type.
2765 <commands_left>: New field.
2766 * breakpoint.c (alloc_counted_command_line): New function.
2767 (incref_counted_command_line): Likewise.
2768 (decref_counted_command_line): Likewise.
2769 (do_cleanup_counted_command_line): Likewise.
2770 (make_cleanup_decref_counted_command_line): Likewise.
2771 (breakpoint_set_commands): Use decref_counted_command_line and
2772 alloc_counted_command_line.
2773 (commands_command): Don't error if breakpoint commands are
2775 (commands_from_control_command): Likewise.
2776 (bpstat_free): Update.
2777 (bpstat_copy): Likewise.
2778 (bpstat_clear_actions): Likewise.
2779 (bpstat_do_actions_1): Likewise.
2780 (bpstat_stop_status): Likewise.
2781 (print_one_breakpoint_location): Likewise.
2782 (delete_breakpoint): Likewise.
2783 (bpstat_alloc): Initialize new field.
2784 (tracepoint_save_command): Update.
2785 * tracepoint.c (encode_actions): Update.
2786 (trace_dump_command): Update.
2790 * dwarf2-frame.c (dwarf2_frame_find_quirks): Use producer_is_realview.
2791 * dwarf2read.c (load_full_comp_unit): Read DW_AT_producer.
2792 (read_structure_type): For RealView, set TYPE_STUB on structures with
2793 no byte size and no children.
2794 (read_subroutine_type): Mark functions as prototyped by default.
2795 * symtab.c (producer_is_realview): New function.
2796 * symtab.h (expand_line_sal): Fix declaration formatting.
2797 (producer_is_realview): Declare.
2801 * arm-tdep.c (skip_prologue_function): New function.
2802 (submask, bit, bits, sbits, BranchDest): Move higher in the file.
2803 (thumb_analyze_prologue): Document return value. Recognize more
2804 Thumb instructions, skippable calls, and some Thumb-2 instructions.
2806 (arm_skip_prologue): Remove call dummy check. Check the prologue
2807 for non-GNU compilers.
2808 (arm_instruction_changes_pc): New function.
2809 (arm_analyze_prologue): New function, broken out from
2810 arm_scan_prologue. Recognize more ARM instructions and skippable
2811 calls. Update comments. Handle NULL cache. Return the address
2812 of the first unrecognized instruction. Do not skip past other
2813 instructions which change control flow. Add debug output.
2814 (arm_scan_prologue): Use arm_analyze_prologue.
2815 (ARM_PC_32): Delete.
2816 (shifted_reg_val): Simplify ARM_PC_32 check.
2820 * tracepoint.c (tvariables_info_1): Actually compute
2821 the number of rows in the result.
2825 * remote.c (crc32): Constify `buf' parameter.
2826 (remote_verify_memory): New, abstracted out from...
2827 (compare_sections_command): ... this. Remove hardcoded target
2829 (init_remote_ops): Install remote_verify_memory.
2830 * target.c (target_verify_memory): New.
2831 * target.h (struct target_ops) <to_verify_memory>: New field.
2832 (target_verify_memory): Declare.
2836 Implement -trace-save.
2838 * mi-cmds.h (mi_cmds_trace_save): Declare.
2839 * mi-cmds.c (mi_cmds): Register -trace-save.
2840 * mi/mi-main.c (mi_cmd_trace_save): New.
2841 * remote.c (remote_save_trace_data): Take const parameter.
2842 * target.h (struct target_ops::to_save_trace_data): Take
2844 * target.c (update_current_target): Adjust to the above.
2845 * tracepoint.c (trave_save): New, extracted from
2846 (trace_save_command): ...this.
2847 (tfile_trace_find): Remove message that is unnecessary now
2848 that 'tfind' reports found frame.
2849 * tracepoint.h (trace_save): Declare.
2853 Implement -trace-find.
2855 * mi/mi-cmds.c (mi_cmds): Register -trace-find.
2856 * mi/mi-cmds.h (mi_cmd_trace_find): Declare.
2857 * mi/mi-main.c (mi_cmd_trace_find): New.
2858 * target.h (struct target_ops): Document to_trace_find.
2859 * tracepoint.h (tfind_1): Declare.
2860 * tracepoint.c (finish_tfind_command): Rename to...
2862 * remote.c (remote_trace_find): Return -1 if target say
2863 there's no frame. Improve error diagnostics.
2867 -trace-define-variable and -trace-list-variables.
2869 * tracepoint.c (create_trace_state_variable): Make
2870 private copy of name, as opposed to assuming the
2871 pointer lives forever.
2872 (tvariables_info_1): New.
2873 (tvariables_info): Use the above.
2874 * tracepoint.h (create_trace_state_variable, tvariables_info_1):
2876 * mi/mi-cmds.c (mi_cmds): Register -trace-define-variable
2877 and -trace-list-variables.
2878 * mi/mi-cmds.h (mi_cmd_trace_define_variable)
2879 (mi_cmd_trace_list_variables): New.
2880 * mi/mi-main.c (mi_cmd_trace_define_variable)
2881 (mi_cmd_trace_list_variables): New.
2885 Implement -break-passcount.
2887 * mi/mi-cmd-break.c (mi_cmd_break_passcount): New.
2888 * mi/mi-cmds.c (mi_cmds): Register -break-passcount.
2889 * mi/mi-cmds.h (mi_cmd_break_passcount): Declare.
2893 -trace-start/-trace-end/-trace-status.
2895 * mi/mi-cmds.c (mi_cmds): Register -trace-start, -trace-status
2897 * mi/mi-cmds.h (mi_cmd_trace_start, mi_cmd_trace_status)
2898 (mi_cmd_trace_stop): Declare.
2899 * mi/mi-main.c (mi_cmd_trace_start, mi_cmd_trace_status)
2900 (mi_cmd_trace_stop): New.
2901 * tracepoint.c (start_tracing): New, extracted from...
2902 (trace_start_command): ...this.
2903 (trace_status_mi): New.
2904 * tracepoint.h (struct trace_status): Document
2905 stopping_tracepoint.
2906 (start_tracing, stop_tracing, trace_status_mi): Declare.
2910 Implement creating tracepoints with -break-insert.
2912 * mi/mi-cmd-break.c (mi_cmd_break_insert): Handle -a
2913 to mean that tracepoint should be created.
2917 * breakpoint.c (check_no_tracepoint_commands): Use
2918 current spelling of 'teval'.
2922 Unify actions and commands
2924 * defs.h (read_command_lines, read_command_lines_1): New
2925 parameters validator and closure.
2926 * tracepoint.h (struct action_line): Remove.
2927 * breakpoint.h (struct breakpoint): Remove the 'actions'
2929 * defs.h (enum command_control_type): New value
2930 while_stepping_control.
2931 (struct command_line): Add comments.
2932 * breakpoint.c (breakoint_is_tracepoint): New.
2933 (breakpoint_set_commands): For tracepoints,
2934 verify the commands are permissible.
2935 (check_tracepoint_commands): New.
2936 (commands_command): Require that each new line is validated using
2937 check_tracepoint_command, if we set commands for a tracepoint.
2938 (create_tracepoint_from_upload): Likewise.
2939 (print_one_breakpoint_location): Remove the code to print
2940 actions specifically.
2941 (tracepoint_save_command): Relay to print_command_lines.
2942 * cli/cli-script.c (process_next_line): New parameters validator
2943 and closure. Handle 'while-stepping'. Call validator if not null.
2944 (read_command_lines, read_command_lines1): Likewise.
2945 (recurse_read_control_structure): New parameters validator and
2946 closure. Handle while_stepping_control.
2947 (print_command_lines): Handle while-stepping.
2948 (get_command_line, define_command, document_command): Adjust.
2949 * remote.c (remote_download_tracepoint): Adjust.
2950 * tracepoint.c (make_cleanup_free_actions, read_actions)
2951 (free_actions, do_free_actions_cleanup): Remove.
2952 (trace_actions_command): Use read_command_lines.
2953 (validate_actionline): Use error in one place.
2954 (encode_actions_1): New, extracted from...
2955 (encode_actions): ...this. Also use cleanups for exception
2957 (trace_dump_command): Adjust.
2958 * mi/mi-cmd-break (mi_cmd_break_commands): Validate commands if
2963 * Makefile.in (OPCODES_CFLAGS): Add -I$(OPCODES_SRC)/..
2967 * value.c (value_static_field): Be lazy about the field's value.
2972 * breakpoint.c (disable_breakpoints_in_unloaded_shlib): Add
2974 (disable_breakpoints_in_shlibs): Likewise.
2978 * dwarf2read.c (partial_die_parent_scope): Work around buggy
2979 GCC 4.1 debug info generation (GCC PR c++/28460).
2980 (determine_prefix): Likewise.
2984 * tui/tui-disasm.c (tui_get_begin_asm_address): Default to
2986 * tui/tui-layout.c (extract_display_start_addr): Likewise.
2990 * ax-gdb.c (gen_fetch): Handle bool.
2991 (gen_usual_unary): Ditto.
2993 (gen_equal): New function.
2994 (gen_less): New function.
2995 (gen_expr_binop_rest): Call them, also return integer type from
3001 * jv-lang.c (jv_dynamics_objfile_data_key)
3002 (jv_type_objfile_data_key): New globals.
3003 (class_symtab): Move earlier.
3004 (jv_per_objfile_free): New function.
3005 (get_dynamics_objfile): Call set_objfile_data. Add 'gdbarch'
3007 Remove ancient #if 1.
3008 (add_class_symbol): Remove redundant declaration.
3009 (java_lookup_class): Use alloc_type, not alloc_type_arch.
3010 (java_link_class_type): Mark as static. Update.
3011 (jv_clear_object_type): New function.
3012 (set_java_object_type): Likewise.
3013 (get_java_object_type): Use set_java_object_type.
3014 (is_object_type): Likewise.
3015 (_initialize_java_language): Register new objfile keys.
3016 (get_java_class_symtab): Add 'gdbarch' parameter.
3017 (add_class_symtab_symbol): Update.
3018 (type_from_class): Update.
3022 * ax-general.c (ax_const_l): Fix a sizing bug.
3031 * target.h (struct target_ops): New method
3032 to_set_circular_trace_buffer.
3033 (target_set_circular_trace_buffer): New macro.
3034 * target.c (update_current_target): Add
3035 to_set_circular_trace_buffer, fix to_set_disconnected_tracing
3037 * remote.c (remote_set_circular_trace_buffer): New function.
3038 (init_remote_ops): Add it to vector.
3039 * tracepoint.h (struct trace_status): New field traceframes_created,
3040 change buffer_size and buffer_free to int.
3041 * tracepoint.c (circular_trace_buffer): New global.
3042 (start_tracing): Send values of disconnected tracing and circular
3043 trace buffer settings.
3044 (set_circular_trace_buffer): New function.
3045 (parse_trace_state): Handle total space and frames created.
3046 (trace_status_command): Display total space and total frames
3048 (trace_save): Write out new status values.
3049 (parse_trace_status): Set traceframe_count, traceframes_created,
3050 buffer_free and buffer_size to -1 by default.
3051 (_initialize_tracepoint): New setshow for circular-trace-buffer.
3052 * NEWS: Mention the circular trace buffer option.
3056 * infcmd.c (finish_command_continuation): Wrap print_return_value
3061 * dwarf2read.c (add_partial_subprogram): Make sure the subprogram
3062 DIE has a name before creating the associated partial symbol.
3063 (read_func_scope): Emit a complaint if the subprogram does not
3064 have a name or when we can't extract the subprogram PC bounds.
3068 * mi/mi-main.c (mi_cmd_list_thread_groups): Use get_current_arch
3069 instead of selected frame architecture.
3073 * infcmd.c (until_command): Use ERROR_NO_INFERIOR. Ensure there's
3074 a valid selected thread, and that it is not running.
3075 (advance_command): Ditto.
3076 (finish_command): Ditto.
3080 * ax-gdb.c (require_rvalue): Disallow non-scalars.
3082 * infcall.c: Include tracepoint.h.
3083 (call_function_by_hand): Disallow calls in tfind mode.
3084 * infcmd.c: Include tracepoint.h.
3085 (ensure_not_tfind_mode): New function.
3086 (continue_1): Call it.
3088 (jump_command): Ditto.
3089 (signal_command): Ditto.
3090 (advance_command): Ditto.
3091 (until_command): Ditto.
3092 (finish_command): Ditto.
3093 * tracepoint.h (disconnect_or_stop_tracing): Declare.
3095 * ax-gdb.h (struct axs_value): New field optimized_out.
3096 (gen_trace_for_var): Add gdbarch argument.
3097 * ax-gdb.c (gen_trace_static_fields): New function.
3098 (gen_traced_pop): Call it, add gdbarch argument.
3099 (gen_trace_for_expr): Update call to it.
3100 (gen_trace_for_var): Ditto, and report optimized-out variables.
3101 (gen_struct_ref_recursive): Check for optimized-out value.
3102 (gen_struct_elt_for_reference): Ditto.
3103 (gen_static_field): Pass gdbarch instead of expression, assume
3104 optimization if field not found.
3105 (gen_var_ref): Set the optimized_out flag.
3106 (gen_expr): Error on optimized-out variable.
3107 * tracepoint.c (collect_symbol): Handle struct-valued vars as
3108 expressions, skip optimized-out variables with computed locations.
3109 * dwarf2loc.c (dwarf2_tracepoint_var_ref): Flag instead of
3110 erroring out if location expression missing.
3111 (loclist_tracepoint_var_ref): Don't error out here.
3115 * dwarf2read.c (dwarf2_get_section_info): Handle case where no
3116 DWARF data is available.
3120 * symfile.c (generic_load): Reset breakpoints after loading.
3124 * linux-nat.c (linux_nat_detach): Check debug_linux_nat.
3128 * spu-tdep.c (spu_catch_start): Replace set_breakpoint call with the
3129 create_breakpoint call, adjust the parameters.
3134 * dwarf2read.c (read_subrange_type): Set TYPE_HIGH_BOUND_UNDEFINED.
3135 * valarith.c (value_subscripted_rvalue): Suppress error if
3136 TYPE_ARRAY_UPPER_BOUND_IS_UNDEFINED.
3140 * linux-record.c (record_linux_msghdr): Remove unintended semicolons.
3144 * ada-tasks.c (task_command_1): Check that the task ptid is valid
3145 before doing the associated thread switch.
3149 * MAINTAINERS: Update my email address.
3153 Simplify MI breakpoint setting.
3155 * breakpoint.c (break_command_really): Make nonstatic and
3157 (create_breakpoint): ...this. Rename prior function by this name
3159 (create_breakpoint_sal): ...this.
3160 (create_breakpoints): Rename to...
3161 (create_breakpoints_sal): ...this.
3162 (set_breakpoint): Remove.
3163 * breakpoint.h: Adjust to above changes.
3164 * mi/mi-cmd-break.c (mi_cmd_break_insert): Simplify.
3168 * ax-gdb.c: Include cp-support.h.
3169 (find_field): Remove.
3170 (gen_primitive_field): New function.
3171 (gen_struct_ref_recursive): New function.
3172 (gen_struct_ref): Rewrite to call gen_struct_ref_recursive instead
3174 (gen_static_field): New function.
3175 (gen_struct_elt_for_reference): New.
3176 (gen_namespace_elt): New.
3177 (gen_maybe_namespace_elt): New.
3178 (gen_aggregate_elt_ref): New.
3179 (gen_expr): Add OP_SCOPE, display opcode name in error message.
3183 * dwarf2read.c (die_needs_namespace): Also return 0 for
3189 * cp-support.h: Added char *declaration element to using_direct
3191 (cp_add_using): Added char *declaration argument.
3192 (cp_add_using_directive): Ditto.
3193 (cp_lookup_symbol_imports): made extern.
3194 * cp-namespace.c: Updated with the above changes.
3195 * dwarf2read.c (read_import_statement): Ditto.
3196 (read_namespace): Ditto.
3197 (read_import_statement): Support import declarations.
3198 * cp-namespace.c (cp_lookup_symbol_imports): Check for imported
3200 Added support for 'declaration_only' search.
3201 (cp_lookup_symbol_namespace): Attempt to search for the name as
3202 is before consideration of imports.
3203 * symtab.c (lookup_symbol_aux_local): Added a 'declaration_only'
3204 search at every block level search.
3205 Now takes language argument.
3206 (lookup_symbol_aux): Updated.
3210 * c-exp.y (name_not_typename): Add 'operator' clause.
3214 * configure.ac: Exit if ${gdb_target_obs}" is not set.
3215 * configure: Regenerate.
3219 * symfile.c (addr_info_make_relative): Ignore also missing ".dynbss"
3220 and ".sdynbss". Update the comment.
3224 * MAINTAINERS: Update my email address.
3228 * gdbtypes.h (TYPE_IS_OPAQUE): Correct HAVE_CPLUS_STRUCT check.
3232 * charset.c [USE_WIN32API]: Include <windows.h>.
3233 (_initialize_charset): Correct type of w32_host_default_charset.
3237 * infrun.c (ptid_match): Don't assert that PTID is not a pid ptid.
3242 * dwarf2read.c (die_needs_namespace) <DW_TAG_variable>: A variable
3243 in a lexical block does not need a namespace.
3244 (new_symbol) <DW_TAG_variable>: Put extern variables on
3245 list_in_scope in all cases.
3249 * ax-gdb.c (gen_expr): Add shift expressions.
3250 (gen_expr_binop_rest): Ditto.
3254 * buildsym.c (finish_block): Reset using_directives pointer
3255 after block initialization.
3259 * amd64-tdep.c (amd64_word_names): Replace "sp" with "".
3260 * i386-tdep.c (i386_word_names): Likewise.
3264 * target.c (memory_xfer_partial): Don't use the stack cache if
3265 inspecting trace frames.
3266 * tracepoint.c (finish_tfind_command): Invalidate the target
3271 * solib-svr4.c (LM_ADDR_CHECK) <info_verbose>: Use printf_unfiltered
3272 for the PIC displacement, print also the displacement value.
3273 (svr4_exec_displacement): Print DISPLACEMENT if INFO_VERBOSE.
3277 * remote-mips.c (close_ports, mips_initialize_cleanups)
3278 (mips_exit_cleanups, mips_send_command, mips_open, pmon_open)
3279 (ddb_open, lsi_open, mips_remove_breakpoint, mips_remove_watchpoint)
3280 (mips_stopped_by_watchpoint, send_srec, pmon_checkset)
3281 (pmon_make_fastrec, pmon_check_ack, mips_expect_download)
3282 (pmon_check_entry_address, pmon_check_total, pmon_end_download)
3283 (pmon_download, pmon_load_fast, _initialize_remote_mips): Add
3284 comments describing each of these functions.
3285 (mips_enter_debug, mips_exit_debug, common_open)
3286 (mips_signal_from_protocol, pmon_makeb64, pmon_zeroset): Add
3287 blank line after the comment describing the function.
3291 * solib-svr4.c (svr4_exec_displacement): Return now success, new
3292 parameter displacementp. Update comment.
3293 (svr4_relocate_main_executable): Return if non-zero SECTION_OFFSETS
3294 element exists. Return if svr4_exec_displacement was not successful.
3300 * solib-svr4.c (read_program_header): Support type == -1 to read
3301 all program headers.
3302 (read_program_headers_from_bfd): New function.
3303 (svr4_static_exec_displacement): Remove and move the comment ...
3304 (svr4_exec_displacement): ... here. Remove variable found. New
3305 variable displacement. Check also DYNAMIC. Verify DISPLACEMENT
3306 alignment for ELF targets. Compare target vs. exec_bfd PHDRs for ELF
3307 targets using read_program_headers_from_bfd. Remove the call of
3308 svr4_static_exec_displacement.
3312 * dwarf2read.c (struct pubnames_header): Remove.
3313 (_PUBNAMES_HEADER): Remove.
3314 (_ACTUAL_PUBNAMES_HEADER_SIZE): Remove.
3315 (struct aranges_header): Remove.
3316 (_ARANGES_HEADER, _ACTUAL_ARANGES_HEADER_SIZE): Remove.
3317 (struct dwarf2_per_objfile) <pubnames, aranges>: Remove.
3318 (PUBNAMES_SECTION): Remove.
3319 (ARANGES_SECTION): Remove.
3320 (dwarf2_locate_sections): Don't handle pubnames or aranges.
3321 (dwarf2_build_psymtabs): Remove dead code.
3322 (dwarf2_build_psymtabs_easy): Remove.
3326 * elfread.c (elf_symfile_read): Don't call
3327 dwarf2_build_frame_info.
3328 * dwarf2read.c (struct dwarf2_section_info) <readin>: New field.
3329 (struct dwarf2_per_objfile) <objfile>: New field.
3330 (dwarf2_has_info): Now idempotent. Set objfile field.
3331 (dwarf2_read_section): Check and set readin field. Call
3333 (dwarf2_build_psymtabs): Don't read all sections.
3334 (read_type_comp_unit_head): Read types section.
3335 (create_debug_types_hash_table): Likewise.
3336 (init_cu_die_reader): Add asserts.
3337 (process_type_comp_unit): Add assert.
3338 (dwarf2_build_psymtabs_hard): Read info section.
3339 (load_partial_comp_unit): Add assert.
3340 (create_all_comp_units): Read info section.
3341 (load_full_comp_unit): Likewise.
3342 (dwarf2_ranges_read): Read ranges section.
3343 (dwarf2_record_block_ranges): Add assert.
3344 (dwarf2_read_abbrevs): Read abbrev section.
3345 (read_indirect_string): Read str section.
3346 (dwarf_decode_line_header): Read line section.
3347 (read_signatured_type_at_offset): Read types section.
3348 (dwarf_decode_macros): Read macinfo section.
3349 (dwarf2_symbol_mark_computed): Read loc section.
3350 * dwarf2-frame.c (dwarf2_frame_find_fde): Call
3351 dwarf2_build_frame_info.
3352 (dwarf2_build_frame_info): Unconditionally set
3353 dwarf2_frame_objfile_data on the objfile.
3354 * configure.ac: Check for posix_madvise.
3355 * config.in, configure: Rebuild.
3359 * xcoffread.c (xcoff_start_psymtab): Update.
3360 (xcoff_end_psymtab): Update.
3361 * psymtab.c (allocate_psymtab): Remove dead code.
3362 * psympriv.h (struct partial_symtab) <read_symtab_private>: Now
3364 * mdebugread.c (parse_partial_symbols): Update.
3365 (new_psymtab): Likewise.
3366 * dwarf2read.c (process_psymtab_comp_unit): Update.
3367 (psymtab_to_symtab_1): Update.
3368 * dbxread.c (start_psymtab): Update.
3369 (end_psymtab): Likewise.
3373 * xcoffread.c: Include psymtab.h.
3374 (xcoff_sym_fns): Update.
3375 * symtab.h (struct partial_symbol): Remove.
3376 (PSYMBOL_DOMAIN, PSYMBOL_CLASS): Remove.
3377 (struct partial_symtab): Remove.
3378 (PSYMTAB_TO_SYMTAB): Remove.
3379 (lookup_partial_symbol, lookup_partial_symtab, find_pc_psymtab)
3380 (find_pc_sect_psymtab): Remove.
3381 (find_pc_sect_symtab_via_partial): Declare.
3382 (find_pc_psymtab, find_pc_sect_psymbol, psymtab_to_symtab)
3383 (find_main_psymtab): Remove.
3384 (find_main_filename): Declare.
3385 (fixup_psymbol_section): Remove.
3386 (fixup_section): Declare.
3387 * symtab.c: Include psymtab.h.
3388 (lookup_symtab): Use lookup_symtab method.
3389 (lookup_partial_symtab): Remove.
3390 (find_pc_sect_psymtab_closer): Remove.
3391 (find_pc_sect_psymtab): Remove.
3392 (find_pc_sect_symtab_via_partial): New function.
3393 (find_pc_psymtab, find_pc_sect_psymbol, find_pc_psymbol): Remove.
3394 (fixup_section): No longer static.
3395 (fixup_psymbol_section): Remove.
3396 (lookup_symbol_aux): Use lookup_symbol_aux_quick.
3397 (lookup_global_symbol_from_objfile): Likewise.
3398 (lookup_symbol_aux_psymtabs): Remove.
3399 (lookup_symbol_aux_quick): New function.
3400 (lookup_symbol_global): Use lookup_symbol_aux_quick.
3401 (lookup_partial_symbol): Remove.
3402 (basic_lookup_transparent_type_quick): New function.
3403 (basic_lookup_transparent_type): Use it.
3404 (find_main_psymtab): Remove.
3405 (find_main_filename): New function.
3406 (find_pc_sect_symtab): Use find_pc_sect_symtab method.
3407 (find_line_symtab): Use expand_symtabs_with_filename method.
3408 (output_partial_symbol_filename): New function.
3409 (sources_info): Use map_partial_symbol_filenames.
3410 (struct search_symbols_data): New type.
3411 (search_symbols_file_matches): New function.
3412 (search_symbols_name_matches): Likewise.
3413 (search_symbols): Use expand_symtabs_matching method.
3414 (struct add_name_data): Rename from add_macro_name_data.
3415 (add_macro_name): Update.
3416 (add_partial_symbol_name): New function.
3417 (default_make_symbol_completion_list): Use
3418 map_partial_symbol_names.
3419 (struct add_partial_symbol_name): New type.
3420 (maybe_add_partial_symtab_filename): New function.
3421 (make_source_files_completion_list): Use
3422 map_partial_symbol_filenames.
3423 (expand_line_sal): Use expand_symtabs_with_filename method.
3424 * symmisc.c: Include psymtab.h.
3425 (print_objfile_statistics): Use print_stats method.
3426 (dump_objfile): Use dump method.
3427 (dump_psymtab, maintenance_print_psymbols)
3428 (maintenance_info_psymtabs, maintenance_check_symtabs)
3429 (extend_psymbol_list): Remove.
3430 * symfile.h (struct quick_symbol_functions): New struct.
3431 (struct sym_fns) <qf>: New field.
3432 (sort_pst_symbols): Remove.
3433 (increment_reading_symtab): Declare.
3434 * symfile.c: Include psymtab.h.
3435 (compare_psymbols, sort_pst_symbols): Remove.
3436 (psymtab_to_symtab): Remove.
3437 (increment_reading_symtab): New function.
3438 (symbol_file_add_with_addrs_or_offsets): Use expand_all_symtabs
3440 (set_initial_language): Use find_main_filename.
3441 (allocate_psymtab, discard_psymtab, cashier_psymtab): Remove.
3442 (free_named_symtabs): Remove unused code.
3443 (start_psymtab_common, add_psymbol_to_bcache)
3444 (append_psymbol_to_list, add_psymbol_to_list, init_psymbol_list):
3446 * stack.c: Include psymtab.h, symfile.h.
3447 (backtrace_command_1): Use find_pc_sect_symtab_via_partial.
3448 * source.h (psymtab_to_fullname): Don't declare.
3449 * source.c: Include psymtab.h.
3450 (select_source_symtab): Use find_last_source_symtab method.
3451 (forget_cached_source_info): Use forget_cached_source_info
3453 (find_and_open_source): No longer static.
3454 (psymtab_to_fullname): Remove.
3455 * somread.c: Include psymtab.h.
3456 (som_sym_fns): Update.
3457 * psympriv.h: New file.
3458 * psymtab.h: New file.
3459 * psymtab.c: New file.
3460 * objfiles.h: (ALL_OBJFILE_PSYMTABS): Remove.
3461 (ALL_PSYMTABS, ALL_PSPACE_PSYMTABS): Likewise.
3462 * objfiles.c: Include psymtab.h.
3463 (objfile_relocate1): Use relocate method.
3464 (objfile_has_partial_symbols): Use has_symbols method.
3465 * mipsread.c: Include psymtab.h.
3466 (ecoff_sym_fns): Update.
3467 * mi/mi-cmd-file.c: Include psymtab.h.
3468 (print_partial_file_name): New function.
3469 (mi_cmd_file_list_exec_source_files): Use
3470 map_partial_symbol_filenames.
3471 * mdebugread.c: Include psympriv.h.
3472 * machoread.c: Include psympriv.h.
3473 (macho_sym_fns): Update.
3474 * m2-exp.y (yylex): Use lookup_symtab.
3475 * elfread.c: Include psympriv.h.
3476 (elf_sym_fns): Update.
3477 * dwarf2read.c: Include psympriv.h.
3478 * dbxread.c: Include psympriv.h.
3479 (aout_sym_fns): Update.
3480 * cp-support.c: Include psymtab.h.
3481 (read_in_psymtabs): Remove.
3482 (make_symbol_overload_list_qualified): Use
3483 expand_symtabs_for_function method.
3484 * coffread.c: Include psympriv.h.
3485 (coff_sym_fns): Update.
3486 * blockframe.c: Include psymtab.h.
3487 (find_pc_partial_function): Use find_pc_sect_symtab method.
3488 * ada-lang.h (ada_update_initial_language): Update.
3489 * ada-lang.c: Include psymtab.h.
3490 (ada_update_initial_language): Remove 'main_pst' argument.
3491 (ada_lookup_partial_symbol): Remove.
3492 (struct ada_psym_data): New type.
3493 (ada_add_psyms): New function.
3494 (ada_add_non_local_symbols): Use map_ada_symtabs method.
3495 (struct add_partial_datum): New type.
3496 (ada_add_partial_symbol_completions): New function.
3497 (ada_make_symbol_completion_list): Use map_partial_symbol_names.
3498 (ada_exception_support_info_sniffer): Update.
3499 * Makefile.in (SFILES): Add psymtab.c.
3500 (COMMON_OBS): Add psymtab.o.
3501 (HFILES_NO_SRCDIR): Add psymtab.h, psympriv.h.
3505 * remote-fileio.c (cygwin_conv_path): Define macro for old cygwin API.
3510 * cp-namespace.c (cp_add_using): Deleted.
3511 (cp_add_using_directive): Use obstack allocations.
3512 Merged the function cp_add_using into this one.
3513 Added 'struct obstack *' argument.
3514 (cp_scan_for_anonymous_namespaces): Updated.
3515 * cp-support.h: Updated.
3516 * dwarf2read.c (read_import_statement): Updated.
3517 (read_namespace): Updated.
3521 * windows-nat.c (cygwin_conv_path): Remove old macro.
3525 * breakpoint.c (condition_command): Handle watchpoint conditions.
3526 (is_hardware_watchpoint): Add comment.
3527 (is_watchpoint): New.
3528 (update_watchpoint): Don't reparse the watchpoint's condition
3531 (watchpoint_check): Use it.
3532 (bpstat_check_watchpoint): Handle it.
3533 (bpstat_check_breakpoint_conditions): Evaluate watchpoint local
3534 conditions in a frame where it makes sense.
3535 (watch_command_1): Store the innermost block of the condition
3537 (delete_breakpoint): Delete the watchpoint condition expression.
3538 * breakpoint.h (struct bp_location) <cond>: Update comment.
3539 (struct breakpoint): New field `cond_exp_valid_block'.
3543 Adjust handling of Ada DIEs after dwarf2_physname patch.
3544 * dwarf2read.c (dwarf2_compute_name): Add handling of Ada DIEs.
3549 * windows-nat.c (cygwin_conv_path): Redefine to properly convert
3550 from/to posix/win32.
3551 (windows_make_so): Use non-Cygwin 1.7 specific function.
3552 (windows_create_inferior): Make sure that cygallargs points to
3553 original args in non Cygwin 1.7. case.
3557 * i386-tdep.c (i386_record_lea_modrm_addr): Use extract_signed_int
3558 after target_read_memory to get host byte order.
3559 (i386_process_record): Ditto.
3564 * c-typeprint.c (cp_type_print_method_args): For non-static methods,
3565 print out const or volatile qualifiers, too.
3566 (c_type_print_args): Add parameters show_artificial and language.
3567 Skip artificial parameters when requested.
3568 Use the appropriate language printer.
3569 (c_type_print_varspec): Tell c_type_print_args to skip artificial
3570 parameters and pass language_c.
3571 * dwarf2read.c (die_list): New file global.
3572 (struct partial_die_info): Update comments for name field.
3573 (pdi_needs_namespace): Renamed to ...
3574 (die_needs_namespace): ... this. Rewrite.
3575 (dwarf2_linkage_name): Remove.
3576 (add_partial_symbol): Do not predicate the call to
3577 partial_die_full_name based on pdi_needs_namespace.
3578 Remove call to cp_check_possible_namespace_symbols and associated
3580 (guess_structure_name): Do not inspect child subprogram DIEs.
3581 (dwarf2_fullname): Update comments.
3582 Use die_needs_namespace to assist in computing the name.
3583 (read_func_scope): Use dwarf2_name to get the DIE's name.
3584 Use dwarf2_physname to get the "linkage name" of the DIE.
3585 (dwarf2_add_member_field): Use dwarf2_physname instead of
3586 dwarf2_linkage_name.
3587 (read_structure_type): For structs and classes, set TYPE_NAME, too.
3588 (determine_class): Remove.
3589 (read_partial_die): Ignore DW_AT_MIPS_linkage_name for all languages
3591 (new_symbol): Unconditionally call dwarf2_name.
3592 Compute the "linkage name" using dwarf2_physname.
3593 Use dwarf2_name instead of dwarf2_full_name for enumerator DIEs.
3594 When determining to scan for anonymous C++ namespaces, ignore
3596 (dwarf2_physname): New function.
3597 (dwarf2_full_name): Move content to new function and call
3599 (dwarf2_compute_name): "New" function.
3600 (_initialize_dwarf2_read): Initialize die_list.
3601 * gnu-v3-eabi.c (gnu_v3_find_method_in): Remove unused variable
3603 (gnu_v3_print_method_ptr): Use the physname for virtual methods
3604 without a demangled name.
3605 Print out type information for non-virtual methods.
3606 * linespec.c (decode_line_1): Force ANY string using "::" (or
3607 "." for java) to use decode_compound, and clean up any stray quoting.
3608 If we found a file symtab, re-evaluate whether the remainder is_quoted.
3609 (decode_compound): Stop consuming at an open parenthesis.
3610 Keep template parameters.
3611 Keep any overload information.
3612 Keep keywords like "const".
3613 Remove paren_pointer.
3614 Move is_quoted check from set_flags to here.
3615 Remove #if 0 code from 2000. Ten years is long enough.
3616 (find_method): Before comparing symbol names, canonicalize the string
3618 If a specific overload is requested, find it. Otherwise throw an error.
3619 (find_method_overload_end): New function.
3620 (set_flags): Remove.
3621 (decode_compound): Assume that parentheses are matched.
3623 * symtab.c (symbol_find_demangled_name): Add DMGL_VERBOSE flag
3625 * linespec.c (decode_line_1): Keep important keywords like
3626 "const" and "volatile".
3627 * symtab.h (SYMBOL_CPLUS_DEMANGLED_NAME): Remove.
3628 * typeprint.h (c_type_print_args): Add declaration.
3629 * ui-file.c (do_ui_file_obsavestring): New function.
3630 (ui_file_obsavestring): New function.
3631 * ui-file.h (ui_file_obsavestring): Add declaration.
3632 * valops.c (find_overload_match): Resolve the object to
3634 If the object is a data member, search the object for the member
3635 and return with staticp set.
3636 Use SYMBOL_NATURAL_NAME instead of SYMBOL_CPLUS_DEMANGLED_NAME.
3637 Do not attempt to extract a function name from non-function types.
3638 If the extracted function name and the original name are the same,
3639 we don't have a C++ method.
3642 * dwarf2read.c (new_symbol <DW_TAG_enumerator>): Call dwarf2_full_name.
3644 * ada-lang.c (ada_lookup_symbol): Remove linkage_name parameters
3645 and arguments from symbol lookups.
3646 * ax-gdb.c (gen_expr): Likewise.
3647 * cp-namespace.c (cp_lookup_symbol_nonlocal, lookup_namespace_scope,
3648 cp_lookup_symbol_namespace, lookup_symbol_file, lookup_nested_type,
3649 lookup_possible_namespace_symbol): Likewise.
3650 * cp-support.c (read_in_psymtabs): Likewise.
3651 * cp-support.h (cp_lookup_symbol_nonlocal): Likewise.
3652 * language.h (la_lookup_symbol_nonlocal): Likewise.
3653 * scm-valprint.c (scm_inferior_print): Likewise.
3654 * solib-darwin.c (darwin_relocate_section_addresses): Likewise.
3655 * solib-svr.c (elf_lookup_lib): Likewise.
3656 * solib.c (show_auto_solib_add): Likewise.
3657 * solist.h (lookup_lib_global, solib_global_lookup): Likewise.
3658 * symmisc.c (maintenance_check_symtabs): Likewise.
3659 * symtab.c (lookup_symbol_in_language, lookup_symbol_aux,
3660 lookup_symbol_aux_local, lookup_symbol_aux_block,
3661 lookup_symbol_from_objfile, lookup_symbol_aux_symtabs,
3662 lookup_symbol_aux_psymtabs,basic_lookup_symbol_nonlocal,
3663 lookup_symbol_static, lookup_symbol_global, symbol_matches_domain,
3664 basic_lookup_transparent_type, find_main_psymtab,
3665 lookup_block_symbol): Likewise.
3666 * symtab.h (basic_lookp_symbol_nonlocal, lookup_symbol_static,
3667 lookup_symbol_global, lookup_symbol_aux_block,
3668 lookup_symbol_partial_symbol, lookup_block_symbol,
3669 lookup_global_symbol, value_maybe_namespace_elt): Likewise.
3673 * python/python-internal.h: Include symtab.h.
3678 * p-lang.c (is_pascal_string_type): Remove unneeded parentheses.
3679 * p-valprint.c (pascal_val_print): Remove undeed block and fix
3684 * breakpoint.c (breakpoint_1): Add "QUIT".
3689 * solib.c (solib_find): Replace extension if
3690 solib_symbols_extension is set in the target gdbarch.
3691 * arm-symbian-tdep.c (arm_symbian_init_abi): Set
3692 solib_symbols_extension to "sym".
3693 * gdbarch.sh (solib_symbols_extension): New variable.
3694 (pstring): New function.
3695 * gdbarch.h, gdbarch.c: Regenerate.
3701 * utils.c: Include main.h.
3702 (fputs_maybe_filtered): Don't paginate if `batch_flag'.
3703 (defaulted_query): Use default answer if `batch_flag'.
3704 * main.h (batch_flag): Declare.
3705 * main.c (batch_flag): New global.
3706 (captured_main): Remove 'batch'. Update.
3710 From Richard Sandiford, Martin M. Hunt, Corinna Vinschen,
3713 * remote-mips.c (rockhopper_ops): New target_ops struct.
3714 (MON_ROCKHOPPER): New mips_monitor_type.
3715 (read_hex_value): New function.
3716 (mips_request): Send 8-byte values with a 'T' packet. Read the
3717 packet argument as a string and use read_hex_value to parse it.
3718 (mips_exit_debug): Wait for response when using MON_ROCKHOPPER.
3719 (rockhopper_open): New function.
3720 (mips_wait): Read the PC, FP and SP fields as strings. Use
3721 read_hex_value to parse them and mips_set_register to commit them.
3722 (mips_set_register): New function.
3723 (mips_fetch_registers): Do not cast register value to "unsigned"
3724 when reading a MON_ROCKHOPPER 't' packet. Use mips_set_register.
3725 (mips_store_registers): Use a 'T' packet to set registers when
3726 using MON_ROCKHOPPER.
3727 (pmon_end_download): Don't run initEther if using MON_ROCKHOPPER
3728 and expect the total to be printed before the entry address.
3729 (_initialize_remote_mips): Initialize and add rockhopper_ops.
3733 * remote-mips.c (mips_fetch_word): Add new parameter, `valp'.
3734 Change return value to int. Store value fetched in location
3735 addressed by `val'. Use function's return value as success
3736 or failure indicator. Adjust all callers.
3740 * p-lang.c (is_pascal_string_type): Check that TYPE arg is non NULL.
3745 * record.c (record_open_1): Check tmp_to_stopped_by_watchpoint and
3746 tmp_to_stopped_data_address.
3747 (record_open): Reset tmp_to_stopped_by_watchpoint and
3748 tmp_to_stopped_data_address.
3749 * target.c (init_dummy_target): Add to_stopped_by_watchpoint and
3750 to_stopped_data_address.
3754 * i386-tdep.c (i386_process_record): Initialize regnum.
3758 * symfile.c (addr_info_make_relative): New variable sect_name, use it.
3759 Do not warn on ".gnu.liblist" and ".gnu.conflict".
3763 Memory error when reading wrong core file.
3764 * solib-svr4.c (solib_svr4_r_map): catch and print all exception
3765 errors while reading the inferior memory, and return zero if
3766 an exception was raised.
3770 * record.c (record_restore): Rename tmpu8 to rectype.
3772 * i386-tdep.c (i386_record_lea_modrm_addr): Rename local variables
3773 tmpu8, tmpi16, tmpi32, tmpulongest to addr8, addr16, addr32, addr64.
3775 (i386_record_push): Rename local tmpulongest to addr.
3777 (i386_process_record): Rename local tmpulongest to addr.
3779 Rename local variables tmpu16, tmpu32, tmpu64 to addr16, addr32,
3782 Rename local variable tmpu8 to opcode8 and regnum.
3786 * remote.c (remote_get_ada_task_ptid): New function.
3787 (init_remote_ops): Set remote_ops.to_get_ada_task_ptid.
3791 * windows-nat.c: Reorganize #ifdef __CYGWIN__ considerations into one
3792 block. Define helper macros to reduce ifdefs in code.
3793 (get_module_name): Use cygwin_buf_t for buffer and __PMAX for buffer
3794 size. Call unadorned GetModuleFileNameEx rather than
3795 GetModuleFileNameEx*.
3796 (windows_make_so): Use __PMAX to denote maximum buffer size and
3797 cygwin_buf_t for buffer type. Use GetSystemDirectory{W,A} as
3799 (get_image_name): Use __PMAX to denote maximum buffer size.
3800 (handle_load_dll): Likewise.
3801 (windows_pid_to_exec_file): Likewise.
3802 (windows_create_inferior): Add many accommodations for older Cygwin and
3804 (bad_GetModuleFileNameExW): Control inclusion of this function based on
3805 __USEWIDE conditional.
3806 (bad_GetModuleFileNameExA): Likewise.
3807 (_initialize_loadable): Just use real function names without the dyn_
3808 part since they are defined earlier.
3813 * utils.c (host_char_to_target): Add 'gdbarch' argument.
3814 (parse_escape): Likewise.
3815 * python/py-utils.c (unicode_to_target_string): Update.
3816 (unicode_to_target_python_string): Update.
3817 (target_string_to_unicode): Update.
3818 * printcmd.c (printf_command): Update.
3819 * p-exp.y (yylex): Update.
3820 * objc-exp.y (yylex): Update.
3821 * mi/mi-parse.c: Include charset.h.
3822 (mi_parse_escape): New function.
3823 (mi_parse_argv): Use it.
3824 * jv-exp.y (yylex): Update.
3825 * i386-cygwin-tdep.c (i386_cygwin_auto_wide_charset): New
3827 (i386_cygwin_init_abi): Call set_gdbarch_auto_wide_charset.
3828 * gdbarch.sh (auto_charset, auto_wide_charset): New.
3829 * gdbarch.c: Rebuild.
3830 * gdbarch.h: Rebuild.
3831 * defs.h (parse_escape): Update.
3832 * cli/cli-setshow.c: Include arch-utils.h.
3833 (do_setshow_command): Update.
3834 * cli/cli-cmds.c (echo_command): Update.
3835 * charset.h (target_charset, target_wide_charset): Update.
3836 * charset.c: Include arch-utils.h.
3837 (target_charset_name): Default to "auto".
3838 (target_wide_charset_name): Likewise.
3839 (show_target_charset_name): Handle "auto".
3840 (show_target_wide_charset_name): Likewise.
3841 (be_le_arch): New global.
3842 (set_be_le_names): Add 'gdbarch' argument.
3843 (validate): Likewise. Don't call set_be_le_names.
3844 (set_charset_sfunc, set_host_charset_sfunc)
3845 (set_target_charset_sfunc, set_target_wide_charset_sfunc):
3847 (target_charset): Add 'gdbarch' argument.
3848 (target_wide_charset): Likewise. Remove 'byte_order' argument.
3849 (auto_target_charset_name): New global.
3850 (default_auto_charset, default_auto_wide_charset): New functions.
3851 (_initialize_charset): Set auto_target_charset_name. Allow "auto"
3852 for target charsets. Copy result of nl_langinfo. Use GetACP if
3854 * c-lang.c (charset_for_string_type): Add 'gdbarch' argument,
3855 remove 'byte_order' argument. Update.
3856 (classify_type): Likewise.
3857 (c_emit_char): Update.
3858 (c_printchar): Update.
3859 (c_printstr): Update.
3860 (c_get_string): Update.
3861 (evaluate_subexp_c): Update.
3862 * arch-utils.h (default_auto_charset, default_auto_wide_charset):
3864 * python/python.c (gdbpy_target_charset): New function.
3865 (gdbpy_target_wide_charset): Likewise.
3866 (GdbMethods): Update.
3871 * symfile.c (build_section_addr_info_from_objfile): Do not mask
3872 off high address bits.
3876 * python/py-lazy-string.c (gdbpy_extract_lazy_string): Extract
3877 address as UnsignedLongLong, not LongLong.
3882 * remote-mips.c (gdbthread.h): Include.
3883 (remote_mips_ptid): Declare.
3884 (mips_error): Only mourn the inferior when inferior_ptid is non-null.
3885 (common_open): Set inferior_ptid, add it as an inferior, and
3886 as a thread too. Delete FIXME comment regarding start_remote().
3887 (mips_close): Invoke generic_mourn_inferior().
3888 (mips_kill): Make sure that target_mourn_inferior is invoked.
3889 (mips_mourn_inferior): Don't invoke generic_mourn_inferior, as
3890 it's now invoked from mips_close().
3891 (mips_load): Don't null out inferior_ptid. Don't call
3892 clear_symtab_users().
3893 (mips_thread_alive, mips_pid_to_str): New functions.
3894 (_initialize_remote_mips): Initialize remote_mips_ptid. Initialize
3895 to_thread_alive and to_pid_to_str operations.
3899 * dwarf2read.c (skip_one_die) <DW_FORM_ref_addr>: Use offset size
3900 in DWARF 3 and later.
3901 (read_attribute_value) <DW_FORM_ref_addr>: Likewise.
3905 * linespec.c (decode_line_1): Update comments for is_quote_enclosed.
3906 If the filename portion of the linespec was quoted, recheck the
3907 remainder for additional quoting.
3908 (locate_first_half): Skip over completer chars, too.
3912 * printcmd.c (printf_command): Pass dummy argument to
3917 * arm-tdep.c (arm_make_stub_cache): Delete unused locals reg,
3920 * arm-tdep.c (arm_stub_unwind_sniffer): Add comment.
3924 * breakpoint.c (update_watchpoint): Create a sentinel location if
3925 the software watchpoint isn't watching any memory.
3926 (breakpoint_address_bits): Skip dummy software watchpoint locations.
3930 * utils.c (fputs_maybe_filtered): Check if there's already a top
3931 level interpreter before dereferencing it. If there isn't one,
3932 don't paginate either.
3936 * arm-tdep.c (arm_pc_is_thumb): Add heuristic that tries to get
3937 the state right when single stepping.
3938 (arm_get_next_pc_raw, thumb_get_next_pc_raw): New functions.
3939 Get the next PC along with the instruction state.
3940 (thumb_get_next_pc): Remove.
3941 (arm_get_next_pc): Modified to use arm_get_next_pc_raw.
3945 * i386-tdep.c (i386_process_record): Change "addr" to "tmpu64".
3949 * utils.c (fputs_maybe_filtered): Always disable pagination if the
3950 top level interpreter is MI.
3954 * remote.c (remote_download_tracepoint): Iterate over locations.
3955 * tracepoint.c (validate_actionline): Ditto.
3956 (encode_actions): Add location argument.
3957 (trace_dump_command): Check all locations to see if stepping
3963 * NEWS: Add X86 general purpose registers section.
3968 * varobj.c (install_new_value): Handle case where new print_value
3974 * printcmd.c (printf_command): Print end of format string using
3979 * mi/mi-cmd-break.c (mi_read_next_line): Add missing 'void'.
3980 * defs.h (read_command_lines_1): Add missing 'void'.
3981 * cli/cli-script.c (recurse_read_control_structure): Add missing
3983 (read_next_line): Likewise.
3984 (read_command_lines_1): Likewise.
3988 * spu-tdep.c (spu_analyze_prologue): Track instruction to
3989 store backchain as part of prologue.
3993 * progspace.c (update_address_spaces): Update inferior address spaces
3998 * dwarf2read.c (add_partial_subprogram): Add missing baseaddr to
3999 lowpc,highpc args to addrmap_set_empty.
4003 * amd64-tdep.c (amd64_byte_names): New.
4004 (amd64_word_names): Likewise.
4005 (amd64_dword_names): Likewise.
4006 (amd64_pseudo_register_name): Likewise.
4007 (amd64_pseudo_register_read): Likewise.
4008 (amd64_pseudo_register_write): Likewise.
4009 (amd64_init_abi): Set num_byte_regs, num_word_regs, num_dword_regs
4010 and num_mmx_regs. Call set_gdbarch_pseudo_register_read,
4011 set_gdbarch_pseudo_register_write and
4012 set_tdesc_pseudo_register_name. Don't call
4013 set_gdbarch_num_pseudo_regs. Don't set mm0_regnum.
4015 * i386-tdep.c (i386_num_mmx_regs): Removed.
4016 (i386_num_pseudo_regs): Likewise.
4017 (i386_byte_names): New.
4018 (i386_word_names): Likewise.
4019 (i386_byte_regnum_p): Likewise.
4020 (i386_word_regnum_p): Likewise.
4021 (i386_mmx_regnum_p): Updated.
4022 (i386_pseudo_register_name): Make it global. Handle byte and
4023 word pseudo-registers.
4024 (i386_pseudo_register_read): Likewise.
4025 (i386_pseudo_register_write): Likewise.
4026 (i386_pseudo_register_type): Handle byte, word and dword
4028 (i386_register_reggroup_p): Don't include pseudo
4029 registers, except for MXX, in any register groups. Don't
4030 include pseudo byte, word, dword registers in general_reggroup.
4031 (i386_gdbarch_init): Set num_byte_regs, num_word_regs,
4032 num_dword_regs, al_regnum, ax_regnum and eax_regnum. Put MMX
4033 pseudo-registers after word pseudo-registers. Call
4034 set_gdbarch_num_pseudo_regs after calling gdbarch_init_osabi.
4036 * i386-tdep.h (gdbarch_tdep): Add num_mmx_regs, num_byte_regs,
4037 al_regnum, num_word_regs, ax_regnum, num_dword_regs and
4039 (i386_byte_regnum_p): New.
4040 (i386_word_regnum_p): Likewise.
4041 (i386_dword_regnum_p): Likewise.
4042 (i386_pseudo_register_name): Likewise.
4043 (i386_pseudo_register_read): Likewise.
4044 (i386_pseudo_register_write): Likewise.
4048 * target-descriptions.c (tdesc_type): Remove
4049 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
4050 (tdesc_predefined_types): Likewise.
4051 (tdesc_gdb_type): Likewise. Pass NULL to append_flags_type_flag
4052 if flag name is empty.
4053 (maint_print_c_tdesc_cmd): Handle TDESC_TYPE_FLAGS.
4055 * features/i386/32bit-core.xml: Define i386_eflags.
4056 * features/i386/64bit-core.xml: Likewise.
4058 * features/i386/32bit-sse.xml: Define i386_mxcsr.
4059 * features/i386/64bit-sse.xml: Likewise.
4061 * features/i386/amd64-linux.c: Regenerated.
4062 * features/i386/amd64.c: Likewise.
4063 * features/i386/i386-linux.c: Likewise.
4064 * features/i386/i386.c: Likewise.
4068 * gdbtypes.c (append_composite_type_field_raw): New.
4069 (append_composite_type_field_aligned): Use the new function.
4070 * gdbtypes.h (append_composite_type_field_raw): Declare.
4071 * target-descriptions.c (struct tdesc_type_field): Add start and end.
4072 (struct tdesc_type_flag): New type.
4073 (struct tdesc_type): Add TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS to
4074 kind. Add size to u.u. Add u.f for flags.
4075 (tdesc_gdb_type): Handle TDESC_TYPE_STRUCT and TDESC_TYPE_FLAGS.
4076 (tdesc_free_type): Likewise.
4077 (tdesc_create_struct, tdesc_set_struct_size, tdesc_create_flags): New.
4078 (tdesc_add_field): Handle TDESC_TYPE_STRUCT.
4079 (tdesc_add_bitfield, tdesc_add_flag): New.
4080 * target-descriptions.h (tdesc_create_struct, tdesc_set_struct_size)
4081 (tdesc_create_flags, tdesc_add_bitfield, tdesc_add_flag): Declare.
4082 * xml-tdesc.c (struct tdesc_parsing_data): Rename current_union to
4083 current_type. Add current_type_size and current_type_is_flags.
4084 (tdesc_start_union): Clear the new fields.
4085 (tdesc_start_struct, tdesc_start_flags): New.
4086 (tdesc_start_field): Handle struct fields, including bitfields.
4087 (field_attributes): Make type optional. Add start and end.
4088 (union_children): Rename to struct_union_children.
4089 (union_attributes): Rename to struct_union_attributes. Add optional
4091 (flags_attributes): New.
4092 (feature_children): Add struct and flags.
4093 * features/gdb-target.dtd: Add flags and struct to features.
4094 Make field type optional. Add field start and end.
4098 * amd64-linux-nat.c (AMD64_LINUX_USER64_CS): New.
4099 (amd64_linux_read_description): Likewise.
4100 (_initialize_amd64_linux_nat): Set to_read_description to
4101 amd64_linux_read_description.
4103 * amd64-linux-tdep.c: Include "features/i386/amd64-linux.c".
4104 (amd64_linux_register_name): Removed.
4105 (amd64_linux_register_type): Likewise.
4106 (amd64_linux_core_read_description): New.
4107 (amd64_linux_init_abi): Set target description to
4108 tdesc_amd64_linux if needed. Support orig_rax in target
4109 description. Don't call set_gdbarch_register_name nor
4110 set_gdbarch_register_type. Call
4111 set_gdbarch_core_read_description.
4112 (_initialize_amd64_linux_tdep): Call
4113 initialize_tdesc_amd64_linux.
4115 * amd64-linux-tdep.h (tdesc_amd64_linux): New.
4117 * amd64-tdep.c: Include "features/i386/amd64.c".
4118 (amd64_register_names): Removed.
4119 (amd64_register_name): Likewise.
4120 (amd64_register_type): Likewise.
4121 (amd64_init_abi): Set num_core_regs and register_names. Set
4122 target description to tdesc_amd64 if needed. Don't call
4123 set_gdbarch_register_name nor set_gdbarch_register_type.
4124 (_initialize_amd64_tdep): New.
4126 * i386-linux-nat.c (i386_linux_read_description): New.
4127 (_initialize_i386_linux_nat): Set to_read_description to
4128 i386_linux_read_description.
4130 * i386-linux-tdep.c: Include "features/i386/i386-linux.c".
4131 (i386_linux_register_name): Removed.
4132 (i386_linux_core_read_description): New.
4133 (i386_linux_read_description): Likewise.
4134 (i386_linux_init_abi): Don't call set_gdbarch_register_name.
4135 Set target description to tdesc_i386_linux if needed. Support
4136 orig_eax. Set register_reggroup_p. Call
4137 set_gdbarch_core_read_description.
4138 (_initialize_i386_linux_tdep): Call initialize_tdesc_i386_linux.
4140 * i386-linux-tdep.h (tdesc_i386_linux): New.
4142 * i386-nto-tdep.c (i386nto_regset_id): Replace I386_NUM_FREGS
4145 * i386-tdep.c: Include "features/i386/i386.c".
4146 (i386_register_names): Make it const.
4147 (i386_mmx_names): Likewise.
4148 (i386_num_register_names): Removed.
4149 (i386_register_name): Likewise.
4150 (i386_eflags_type): Likewise.
4151 (i386_mxcsr_type): Likewise.
4152 (i386_sse_type): Likewise.
4153 (i386_register_type): Likewise.
4154 (i387_ext_type): Call tdesc_find_type instead of arch_float_type.
4155 (i386_pseudo_register_name): New.
4156 (i386_pseudo_register_type): Likewise.
4157 (i386_mmx_type): Make it static.
4158 (i386_gdbarch_init): Check arch. Replace I386_NUM_FREGS with
4159 I387_NUM_REGS. Set num_core_regs and register_names. Don't
4160 call set_gdbarch_register_name nor set_gdbarch_register_type.
4161 Set register_reggroup_p. Set target description to tdesc_i386
4162 if needed. Call set_tdesc_pseudo_register_type,
4163 set_tdesc_pseudo_register_name and tdesc_use_registers.
4164 (_initialize_i386_tdep): Call initialize_tdesc_i386.
4165 initialize_tdesc_x86_64.
4167 * i386-tdep.h (gdbarch_tdep): Remove i386_eflags_type,
4168 i386_mxcsr_type and i386_sse_type. Add num_core_regs,
4169 register_names, tdesc and register_reggroup_p.
4170 (I386_NUM_FREGS): Removed.
4171 (i386_eflags_type): Likewise.
4172 (i386_mxcsr_type): Likewise.
4173 (i386_mmx_type): Likewise.
4174 (i386_sse_type): Likewise.
4175 (i386_register_name): Likewise.
4176 (i386_regnum): Add I386_MXCSR_REGNUM.
4177 (I386_SSE_NUM_REGS): Defined with I386_MXCSR_REGNUM.
4179 * i387-tdep.h (I387_NUM_REGS): New.
4181 * regformats/i386/i386-linux.dat: Generated.
4182 * regformats/i386/i386.dat: Likewise.
4183 * regformats/i386/amd64-linux.dat: Likewise.
4184 * regformats/i386/amd64.dat: Likewise.
4186 * regformats/reg-i386-linux.dat: Removed.
4187 * regformats/reg-i386.dat: Likewise.
4188 * regformats/reg-x86-64-linux.dat: Likewise.
4189 * regformats/reg-x86-64.dat: Likewise.
4193 * remote-fileio.c (remote_fileio_func_rename): Use Cygwin 1.7
4194 cygwin_conv_path API rather than the deprecated
4195 cygwin_conv_to_full_posix_path.
4197 (GetModuleFileNameExA): Undefine for Cygwin.
4198 (GetModuleFileNameExW): Define for Cygwin.
4199 (get_module_name): Change size of pathbuf to PATH_MAX for Cygwin.
4200 Call GetModuleFileNameExW and convert path to POSIX using
4202 (windows_make_so): Always define p. Drop unused variable m.
4203 Don't use Win32 functions to check file existance, rather use
4204 access on Cygwin. Fetch system directory using GetSystemDirectoryW.
4205 Use canonicalize_file_name to get full path.
4206 (get_image_name): Use wcstombs, rather than WideCharToMultiByte
4207 to convert Unicode pathname to multibyte on Cygwin. Otherwise,
4208 use correct target buffer size in call to WideCharToMultiByte.
4209 (handle_load_dll): Change size of dll_buf to PATH_MAX for Cygwin.
4210 (windows_pid_to_exec_file): Change size of path to PATH_MAX for Cygwin.
4211 (windows_create_inferior): Convert all paths and arguments to wchar_t
4212 and use CreateProcessW on Cygwin.
4213 (_initialize_windows_nat): Disable DOS-style path warning on Cygwin.
4214 (bad_GetModuleFileNameExA): Undefine for Cygwin.
4215 (bad_GetModuleFileNameExW): Define for Cygwin.
4216 (_initialize_loadable): Load GetModuleFileNameExW into
4217 dyn_GetModuleFileNameExW on Cygwin. Don't load ANSI function on Cygwin.
4222 * python/py-frame.c (frapy_read_var): Add block argument and logic
4223 to cope with user provided blocks.
4227 * infcall.c (call_function_by_hand): Remove gdb_assert on sp and old_sp.
4232 * Makefile.in (SUBDIR_MI_OBS): Move mi-common.o from here...
4233 (COMMON_OBS): ... to here since it's used unconditionally.
4234 (SUBDIR_MI_SRCS): Move mi/mi-common.c from here...
4239 * mips-linux-tdep.c: Update struct sigframe comments.
4240 (SIGFRAME_CODE_OFFSET): Delete macro.
4241 (mips_linux_o32_sigframe_init): Calculate sigcontext_base using
4243 (mips_linux_n32n64_sigframe_init): Same.
4247 * remote-mips.c (mips_load): Don't use pseudo-register when
4248 invalidating regcache.
4252 * arm-tdep.c (thumb_get_next_pc): Correct conditional branch opcode.
4256 * NEWS: Add "New targets" section, and mention ARM Symbian
4261 * dwarf2loc.c (struct piece_closure): Remove ARCH member,
4262 add ADDR_SIZE member.
4263 (allocate_piece_closure): Update.
4264 (copy_pieced_value_closure): Likewise.
4265 (dwarf2_evaluate_loc_desc): Likewise.
4266 (read_pieced_value): Use DWARF address size instead of
4267 GDB's gdbarch_addr_bit as size of values on the DWARF stack.
4272 * python/py-type.c (typy_lookup_typename): Add in block argument.
4273 If provided restrict lookup to specified blocks.
4274 (gdbpy_lookup_type): Likewise.
4275 (typy_lookup_type): Likewise.
4282 * arm-symbian-tdep.c: New.
4283 * configure.tgt (arm*-*-symbianelf*): New target.
4284 (*-*-symbianelf*): New OS.
4285 * osabi.c (gdb_osabi_names): Add Symbian.
4286 * defs.h (gdb_osabi): Add GDB_OSABI_SYMBIAN.
4287 * Makefile.in (ALL_TARGET_OBJS): Add arm-symbian-tdep.o.
4288 (ALLDEPFILES): Add arm-symbian-tdep.c.
4292 * symfile.c (find_lowest_section): Include SEC_ALLOC sections.
4296 * mi/mi-main.c (mi_cmd_execute): Fix typo.
4302 * python/python.c (_initialize_python): Call
4303 gdbpy_initialize_symtabs, gdbpy_initialize_symbols and
4304 gdbpy_initialize_blocks.
4305 * python/python-internal.h: Declare struct symbol, block and
4306 symtab_and_line. Declare block_object_type and
4308 (gdbpy_lookup_symbol gdbpy_block_for_pc)
4309 (symtab_and_line_to_sal_object, symtab_to_symtab_object)
4310 (symbol_to_symbol_object, block_to_block_object)
4311 (gdbpy_initialize_symtabs,gdbpy_initialize_symbols)
4312 (gdbpy_initialize_blocks ): Declare.
4313 * python/py-frame.c (frapy_block, frapy_function, frapy_find_sal)
4314 (frapy_select): Add methods.
4315 (frapy_read_var): Add symbol branch.
4316 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-symbol, py-symtab,
4318 (SUBDIR_PYTHON_SRCS): Likewise.
4319 (py-symbol.o): New rule.
4320 (py-symtab.o): Likewise.
4321 (py-block.o): Likewise.
4322 * python/py-symbol.c: New file.
4323 * python/py-symtab.c: Likewise.
4324 * python/py-block.c: Likewise.
4330 * inferior.h (prepare_for_detach): Declare.
4331 (struct inferior) <detaching>: New field.
4332 * infrun.c (prepare_for_detach): New.
4333 (handle_inferior_event) <random signal>: Don't stop if detaching.
4334 * target.c (target_detach): Call prepare_for_detach.
4338 Per-process displaced stepping queue.
4340 * infrun.c (displaced_step_ptid, displaced_step_request_queue)
4341 (displaced_step_gdbarch, displaced_step_closure,
4342 (displaced_step_original, displaced_step_copy): Move globals to
4344 (struct displaced_step_inferior_state): ... new structure.
4345 (displaced_step_inferior_states): New global.
4346 (get_displaced_stepping_state, add_displaced_stepping_state)
4347 (remove_displaced_stepping_state, infrun_inferior_exit): New
4349 (displaced_step_clear): Add displaced_step_inferior_state
4350 parameter, and adjust to handle it.
4351 (displaced_step_clear_cleanup): Parameter is now a
4352 displaced_step_inferior_state. Adjust.
4353 (displaced_step_prepare): Adjust.
4354 (displaced_step_fixup, displaced_step_fixup)
4355 (infrun_thread_ptid_changed, resume): Adjust.
4356 (init_wait_for_inferior): Don't call displaced_step_clear.
4357 (infrun_thread_stop_requested): Rewrite.
4358 (_initialize_infrun): Install infrun_inferior_exit as
4359 inferior_exit observer.
4363 * inferior.h (ptid_match): Declare.
4364 * infrun.c (ptid_match): New.
4365 * remote.c (queued_stop_reply): Rewrite and use ptid_match.
4366 (handle_notification): Add debug output.
4367 * linux-nat.c (ptid_match): Delete.
4371 * gdb_ptrace.h (PT_SYSCALL): If PTRACE_SYSCALL is available, use it.
4372 * syscalls/sparc-linux.xml: New.
4373 * syscalls/sparc64-linux.xml: New.
4374 * Makefile.in (XML_SYSCALL_FILES): Add new syscall XML files.
4375 * sparc-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC32): Define.
4376 (sparc32_linux_get_syscall_number): New function.
4377 (sparc32_linux_init_abi): Set syscall XML file name and hook up
4378 syscall number fetcher.
4379 * sparc64-linux-tdep.c (XML_SYSCALL_FILENAME_SPARC64): Define.
4380 (sparc64_linux_get_syscall_number): New function.
4381 (sparc64_linux_init_abi): Set syscall XML file name and hook up
4382 syscall number fetcher.
4388 * breakpoint.c (clear_syscall_counts): Take struct inferior*.
4389 * inferior.c (add_inferior_silent): Notify inferior_added
4391 (delete_inferior_1): Notify inferior_removed observer.
4392 (exit_inferior_1): Pass inferior, not pid, to observer.
4393 (inferior_appeared): Likewise.
4394 (add_inferior_with_spaces): New.
4395 (add_inferior_command): Use the above.
4396 * inferior.h (delete_inferior_1, add_inferior_with_spaces):
4399 * inflow.c (inflow_inferior_exit): Likewise.
4400 * jit.c (jit_inferior_exit_hook): Likewise.
4402 * mi/mi-cmds.c (mi_cmds): Register add-inferior and
4404 * mi/mi-cmds.h (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
4405 * mi/mi-interp.c (mi_inferior_added, mi_inferior_removed): New.
4406 (report_initial_inferior): New.
4407 (mi_inferior_removed): Register the above. Make sure
4408 inferior_added observer is called on the first inferior.
4409 (mi_new_thread, mi_thread_exit): Thread group is now identified by
4410 inferior number, not pid.
4411 (mi_solib_loaded, mi_solib_unloaded): Report which inferiors are
4413 * mi/mi-main.c (current_context): New.
4414 (proceed_thread_callback): Use typed closure.
4415 Proceed everything if pid is 0. Most implementation split into
4416 (proceed_thread): ... this.
4417 (run_one_inferior): New.
4418 (mi_cmd_exec_continue, mi_cmd_exec_interrupt, mi_cmd_exec_run):
4419 Adjust for multiexec behaviour.
4420 (mi_cmd_add_inferior, mi_cmd_remove_inferior): New.
4421 (mi_cmd_execute): Handle the 'thread-group' option here.
4422 Do some extra checks.
4423 * mi-parse.c (mi_parse): Handle the --all and --thread-group
4425 * mi-parse.h (struct mi_parse): New fields all and thread_group.
4429 Make -exec-run a proper MI commands.
4431 * mi/mi-cmds.h (mi_cmd_exec_run): Declare.
4432 * mi/mi-cmds.c (mi_cmds): Adjust.
4433 * mi/mi-main.c (mi_cmd_exec_run): New.
4438 * tracepoint.h (set_traceframe_number)
4439 (cleanup_restore_current_traceframe): Declare.
4440 * tracepoint.c (set_traceframe_number): New.
4441 (struct current_traceframe_cleanup): New.
4442 (do_restore_current_traceframe_cleanup)
4443 (restore_current_traceframe_cleanup_dtor)
4444 (make_cleanup_restore_current_traceframe): New.
4445 * infrun.c: Include tracepoint.h.
4446 (fetch_inferior_event): Switch out and in of tfind mode.
4450 * breakpoint.c (breakpoint_init_inferior): Also delete
4451 bp_shlib_event breakpoints.
4452 * solib-frv.c (enable_break): Remove call to
4453 remove_solib_event_breakpoints.
4454 * solib-svr4.c (enable_break): Ditto.
4455 * solib-darwin.c (darwin_solib_create_inferior_hook): Ditto.
4456 * solib-pa64.c (pa64_solib_create_inferior_hook): Ditto.
4457 * solib-som.c (som_solib_create_inferior_hook): Ditto.
4458 * solib-spu.c (spu_enable_break): Ditto.
4462 * c-exp.y (token_and_value): s/union YYSTYPE/YYSTYPE.
4466 * varobj.c (varobj_update): Avoid non-constants in initializers.
4470 * dwarf2loc.c (read_pieced_value) <DWARF_VALUE_STACK>: Correctly
4471 handle big-endian values.
4472 (dwarf2_evaluate_loc_desc) <DWARF_VALUE_STACK>: Likewise.
4479 * breakpoint.c (insert_bp_location): If inserting the read
4480 watchpoint failed, fallback to an access watchpoint.
4481 (bpstat_check_watchpoint): Stop for read watchpoint triggers even
4482 if the value changed, if not watching the same memory for writes.
4483 (watchpoint_locations_match): Add comment.
4484 (update_global_location_list): Copy the location's watchpoint type.
4485 * i386-nat.c (i386_length_and_rw_bits): It's an internal error to
4486 handle read watchpoints here.
4487 (i386_insert_watchpoint): Read watchpoints aren't supported.
4488 * remote.c (remote_insert_watchpoint): Return 1 for unsupported
4490 * target.h (target_insert_watchpoint): Update description.
4494 * p-typeprint.c (pascal_type_print_varspec_prefix): Update.
4495 * m2-typeprint.c (m2_print_type): Update.
4496 * gdbtypes.c (recursive_dump_type): Update.
4497 (copy_type_recursive): Update.
4498 * c-typeprint.c (c_type_print_varspec_prefix): Update.
4499 (c_type_print_base): Update.
4500 * gdbtypes.h (TYPE_CODE_TEMPLATE, TYPE_CODE_TEMPLATE_ARG):
4502 (struct cplus_struct_type) <ntemplate_args>: Remove.
4503 <struct template_arg>: Remove.
4504 <is_dynamic>: Move earlier.
4505 (TYPE_TEMPLATE_ARGS): Remove.
4506 (TYPE_NTEMPLATE_ARGS): Remove.
4507 (TYPE_TEMPLATE_ARG): Remove.
4511 PR c++/8693, PR c++/9496:
4512 * cp-namespace.c (cp_lookup_nested_type): Handle TYPE_CODE_UNION.
4513 * c-exp.y (lex_one_token): Rename from yylex. Don't call
4514 write_dollar_variable. Don't try to classify NAME tokens.
4515 (token_and_value): New type.
4516 (token_fifo, popping, name_obstack): New globals.
4517 (classify_name): New function.
4518 (classify_inner_name): Likewise.
4520 (VARIABLE): Now has type sval.
4521 (exp : VARIABLE): Call write_dollar_variable.
4522 (qualified_name): Use TYPENAME, not typebase. Add production for
4523 multiple "::" instances.
4524 (variable): Use name_not_typename.
4525 (qualified_type): Remove.
4530 * symfile.c (addr_info_make_relative): Extend comment. Move SECT to
4531 a more inner block. Initialize ADDR by LOWER_OFFSET only if it was
4532 found by bfd_get_section_by_name.
4533 * symfile.h (struct section_addr_info) <sectindex>: New comment.
4537 * NEWS: Add new "[...] since 7.1" section. Rename the "[...] since
4538 7.0 section" into "Changes in 7.1".
4542 GDB 7.1 branch created (branch timestamp: 2010-02-18 20:00 UTC)
4543 * version.in: Bump version to 7.1.50.20100219-cvs.
4547 * mi/mi-main.c (mi_cmd_exec_jump): Drop unneeded `return'.
4548 * symfile.c (symfile_map_offsets_to_segments): Fix assertion.
4552 * NEWS: Add Python API Improvements section.
4556 * NEWS: Correct typo.
4560 * objfiles.c (gdb_bfd_ref): Handle abfd==NULL.
4564 * symfile.c (build_section_addr_info_from_objfile): Include sections
4565 only if they are SEC_ALLOC or SEC_LOAD.
4570 * solib-svr4.c (enable_break): Check size of CORE_ADDR instead
4571 of ULONGEST for address size.
4575 * NEWS: Add C++ improvements section.
4579 * python/python-internal.h [!WITH_THREAD] (PyGILState_Release,
4580 PyThreadState_Swap): Avoid "statement with no effect" warning.
4584 * solib-svr4.c (enable_break <target_auxv_search>): New variable
4585 addr_bit. Adjust LOAD_ADDR sign for cross-arch inferiors.
4590 * avr-tdep.c (avr_scan_prologue): Convert an if statement to a
4591 gdb_assert. Fix info->size for SIG prologue.
4595 * infcmd.c (show_inferior_tty_command): Check for NULL.
4596 Correct output message.
4600 * linespec.c (decode_line_1): Handle FILE:FUNCTION even if
4601 FUNCTION contains parentheses. Improve removal of a trailing
4606 * gcore.c (do_bfd_delete_cleanup): New function.
4607 (gcore_command): Use it. Discard the cleanup after success.
4608 (gcore_copy_callback): Delete dead code.
4612 * symfile.c (addr_info_make_relative): Always use
4613 find_lowest_section.
4617 * NEWS: Added entry for namespace fixes.
4621 * dwarf2read.c (guess_structure_name): Allocate name on the
4626 * c-typeprint.c (c_type_print_base): Reverse order of test.
4630 * solib-svr4.c (LM_ADDR_CHECK): New variable minpagesize. Optionally
4631 initialize it from ELF BFD. Extend the prelink condition by it.
4635 * defs.h (parse_pid_to_attach): New.
4636 * utils.c (parse_pid_to_attach): New.
4637 * darwin-nat.c (darwin_attach): Replace ARGS parsing by parse_pid.
4638 * gnu-nat.c (gnu_attach): Likewise.
4639 * nto-procfs.c (procfs_attach): Likewise.
4640 * procfs.c (procfs_attach): Likewise.
4641 * windows-nat.c (windows_attach): Likewise.
4642 * inf-ptrace.c (inf_ptrace_attach): Likewise. Remove variable dummy.
4643 * inf-ttrace.c (inf_ttrace_attach): Likewise.
4644 * remote.c (extended_remote_attach_1): Likewise. New comment on getpid
4649 * MAINTAINERS: Add myself for write after approval privileges.
4653 * solib-svr4.c: (LM_ADDR_CHECK): Move variable align to a more inner
4658 * solib-svr4.c: (LM_ADDR_CHECK): Print successful prelink adjustment
4659 only if INFO_VERBOSE.
4663 * mi/mi-main.c: Added the --reverse flag to the following MI
4664 commands: exec-continue, exec-finish, exec-next, exec-step,
4665 exec-next-instruction, exec-step-instruction. This is to
4666 support reverse execution over the MI interface to gdb.
4670 * tracepoint.c (_initialize_tracepoint): Specify that the address
4671 range of `tfind outsize' is exclusive, and that the address range
4672 of `tfind range' is inclusive, in the commands' help strings.
4676 Spurious "dll not found" error messages on x64-windows.
4677 * windows-nat.c: Add include of complaints.h.
4678 (handle_unload_dll): Change dll-not-found error into a complaint.
4682 * breakpoint.c (allocate_bp_location): Use bp_loc_other for
4683 bp_tracepoint and bp_fast_tracepoint, not
4684 bp_loc_software_breakpoint.
4685 (update_global_location_list): Tracepoints are never duplicates of
4690 * breakpoint.c (break_command_really): Change return type to int.
4691 Return false if no breakpoint was created, true otherwise.
4692 (trace_command): Don't set the tracepoint count if no tracepoint
4694 (ftrace_command): Ditto.
4695 (create_tracepoint_from_upload): Bail out if the tracepoint wasn't
4696 created in the breakpoints table.
4701 * solib-svr4.c (LM_ADDR_CHECK): New comment on PPC-aware condition.
4705 * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out if
4706 the offset value isn't of integral type.
4710 * breakpoint.c (delete_breakpoint) <bpt->related_breakpoint != NULL>:
4715 * ax-gdb.c (gen_exp_binop_rest) [BINOP_SUBSCRIPT]: Error out on
4716 non-subscriptable types.
4717 * valarith.c (binop_types_user_defined_p): New, abstracted out
4719 (binop_user_defined_p): ... this.
4720 * value.h (binop_types_user_defined_p): Declare.
4724 * tracepoint.c (tfile_open): Remove spurious discard_cleanups.
4725 Merge uploaded TSVs before merging uploaded tracepoints.
4729 * ax-gdb.c (gen_deref): Don't allow dereferencing void pointers.
4733 * mi/mi-cmd-stack.c (mi_cmd_stack_list_locals): Add extra
4734 whitespace character after a dot in comment.
4735 (mi_cmd_stack_list_arguments, mi_cmd_stack_list_variables):
4737 (list_args_or_locals): For the 'all' (that is
4738 -stack-list-variables) case, always output list of tuples.
4739 Output 'arg' field if variable is argument.
4743 * parser-defs.h (parser_debug): Declare.
4744 * parse.c (_initialize_parse): Install "debug parser" set/show
4746 (parser_debug): New global.
4747 (show_parserdebug): New function.
4748 * c-exp.y (c_parse): Set yydebug.
4752 * target-descriptions.c (tdesc_type): Add TDESC_TYPE_I387_EXT,
4753 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
4754 (tdesc_predefined_types): Add i387_ext, i386_eflags and
4756 (tdesc_find_type): New.
4757 (tdesc_gdb_type): Use tdesc_find_type. Handle TDESC_TYPE_I387_EXT,
4758 TDESC_TYPE_I386_EFLAGS and TDESC_TYPE_I386_MXCSR.
4760 * target-descriptions.h (tdesc_find_type): New.
4764 * gdb-gdb.py: Comment fix.
4768 * machoread.c (macho_symfile_relocate): New function.
4769 (macho_sym_fns): Use macho_symfile_relocate instead of
4770 default_symfile_relocate.
4771 (macho_oso_data): New type.
4772 (current_oso): New variable.
4773 (macho_add_oso_symfile): Do not compute section_addr_info, but
4774 instead set vma of sections.
4775 Do not set SYMFILE_VERBOSE to call symbol_file_add_from_bfd.
4776 Set and clear current_oso.
4780 Wrong type description for tagged type parameter.
4781 * ada-lang.c (ada_evaluate_subexp) [OP_VAR_VALUE]: When noside is
4782 EVAL_AVOID_SIDE_EFFECTS, also handle the case when type is a
4783 reference to a tagged type.
4787 * objfiles.c (objfile_separate_debug_iterate): Do not iterate on
4788 brothers of the parent.
4794 * valops.c (search_struct_field): Make 'name' const.
4795 (search_struct_method): Likewise.
4796 (find_method_list): Make 'method' const.
4797 (value_struct_elt): Make 'name' and 'err' const.
4798 (value_find_oload_method_list): Make 'method' const.
4799 (find_overload_match): Make 'name' const.
4800 * eval.c (evaluate_subexp_standard): New locals function,
4802 <OP_FUNCALL>: Handle OP_SCOPE specially.
4806 * infrun.c (handle_inferior_event): Do not look up regcache
4807 for exited processes.
4812 * valarith.c (value_ptrdiff): Added a test for a zero type length,
4813 warn if found, and assume length = 1.
4818 * cp-valprint.c (cp_print_value_fields) Fix use of obstacks.
4819 cp_print_static_field) Fix use of obstacks.
4823 * linux-nat.c (linux_nat_resume): In non-stop, also only tag
4824 resumed LWPs as resumed.
4825 (linux_nat_wait_1): If there's no resumed LWP in the set of LWPs
4826 we're waiting for, bail out with TARGET_WAITKIND_IGNORE, instead
4827 of throwing an internal error. If an LWP of a process we're not
4828 waiting for reports a signal, don't force collecting a SIGSTOP,
4829 and if it was breakpoint hit in non-stop mode, cancel it. Don't
4830 go through all LWPs cancelling breakpoints in non-stop mode.
4831 (resume_stopped_resumed_lwps): New.
4832 (linux_nat_wait): Use it.
4836 * features/Makefile (WHICH): Add i386/i386, i386/i386-linux,
4837 i386/amd64 and i386/amd64-linux.
4838 (i386/i386-expedite): New.
4839 (i386/i386-linux-expedite): Likewise.
4840 (i386/amd64-expedite):Likewise.
4841 (i386/amd64-linux-expedite): Likewise.
4842 ($(outdir)/i386/i386-linux.dat): Likewise.
4843 ($(outdir)/i386/amd64.dat): Likewise.
4844 ($(outdir)/i386/amd64-linux.dat): Likewise.
4846 * features/i386/32bit-core.xml: New.
4847 * features/i386/32bit-linux.xml: Likewise.
4848 * features/i386/32bit-sse.xml: Likewise.
4849 * features/i386/64bit-core.xml: Likewise.
4850 * features/i386/64bit-linux.xml: Likewise.
4851 * features/i386/64bit-sse.xml: Likewise.
4852 * features/i386/i386-linux.xml: Likewise.
4853 * features/i386/i386.xml: Likewise.
4854 * features/i386/amd64-linux.xml: Likewise.
4855 * features/i386/amd64.xml: Likewise.
4856 * features/i386/i386-linux.c: Likewise.
4857 * features/i386/i386.c: Likewise.
4858 * features/i386/amd64-linux.c: Likewise.
4859 * features/i386/amd64.c: Likewise.
4864 * cp-support.h: Added char* alias element to using_direct data
4866 (cp_add_using): Added char* alias argument.
4867 (cp_add_using_directive): Ditto.
4868 * cp-namespace.c: Updated with the above changes.
4869 (cp_lookup_symbol_imports): Check for aliases.
4870 * dwarf2read.c (read_import_statement): Figure out local alias
4871 for the import and pass it on to cp_add_using.
4872 (read_namespace): Pass alias argument to cp_add_using.
4876 * defs.h (gdb_bfd_errmsg): New extern.
4877 * exec.c (exec_file_attach): Change bfd_errmsg to
4879 * utils.c (AMBIGUOUS_MESS1): New macro.
4880 (AMBIGUOUS_MESS2): New macro.
4881 (gdb_bfd_errmsg): New function.
4885 * solib-svr4.c (enable_break): Add comment.
4889 * moxie-tdep.c (moxie_analyze_prologue): Fail protocol analysis
4894 * valops.c (search_struct_field): Account for
4895 value_embedded_offset. Fix check for virtual base past the end of
4896 the object. Use value_copy when making a slice of the value.
4901 * tui/tui-interp.c (tui_init): Call tui_initialize_readline
4902 only if gdb_stdout is a tty.
4906 * target-descriptions.c: Include "osabi.h".
4907 (maint_print_c_tdesc_cmd): Generate set_tdesc_osabi for valid
4912 * machoread.c (macho_add_oso): Renamed to macho_register_oso.
4913 (macho_symtab_read): Adjust calls to macho_add_oso.
4914 (macho_oso_symfile): Renamed to macho_symfile_read_all_oso.
4915 (macho_symfile_read): Adjust call to macho_oso_symfile.
4916 (macho_new_init): Move this function after declarations.
4917 (macho_symfile_init): Ditto.
4918 * darwin-nat-info.c (darwin_lib_gdb_ports): Remove.
4919 * darwin-nat.c (darwin_lookup_task): Remove unused prototype.
4923 Include MI command in remotelog.
4925 * mi/mi-main.c (mi_execute_command): Call target_log_command.
4929 * remote.c (remote_state): Remove gdbarch.
4930 (init_remote_state): Don't set gdbarch.
4931 (remote_query_supported): Pass target_gdbarch instead of
4932 rs->gdbarch to gdbarch_qsupported.
4936 * gdbarch.sh: Add qsupported.
4938 * gdbarch.c: Regenerated.
4939 * gdbarch.h: Likewise.
4941 * remote.c (remote_state): Add gdbarch.
4942 (init_remote_state): Set gdbarch.
4943 (remote_query_supported): Support gdbarch_qsupported.
4947 * amd64fbsd-nat.c (amd64fbsd_supply_pcb): Also check for
4948 __FreeBSD_kernel_version.
4952 * symfile.h (struct sym_fns): Add sym_relocate field.
4953 (default_symfile_relocate): New prototype.
4954 (symfile_relocate_debug_section): First argument is now an objfile.
4955 * symfile.c (default_symfile_relocate): Rename from
4956 symfile_relocate_debug_section, first argument is now an objfile.
4957 (symfile_relocate_debug_section): New function.
4958 * coffread.c (coff_sym_fns): Set sym_relocate field.
4959 * somread.c (som_sym_fns): Ditto.
4960 * mipsread.c (ecoff_sym_fns): Ditto.
4961 * machoread.c (macho_sym_fns): Ditto.
4962 * elfread.c (elf_sym_fns): Ditto.
4963 * dwarf2read.c (dwarf2_read_section): Ditto.
4964 * xcoffread.c (xcoff_sym_fns): Ditto.
4965 * dbxread.c (aout_sym_fns): Ditto.
4966 (dbx_psymtab_to_symtab): Adjust call to symfile_relocate_debug_section.
4967 (elfstab_build_psymtabs): Ditto.
4971 * defs.h (MAX_REGISTER_SIZE): Increase to 32.
4975 * valops.c (value_cast_structs): Try downcasting using the RTTI
4980 * gnu-v2-abi.c: Don't include gnu-v2-abi.h.
4981 (gnuv2_baseclass_offset): Now static.
4982 * Makefile.in (HFILES_NO_SRCDIR): Remove gnu-v2-abi.h.
4983 * gnu-v2-abi.h: Remove.
4987 * m2-typeprint.c (m2_record_fields): Don't use
4989 * gdbtypes.h (TYPE_DECLARED_CLASS): New macro.
4990 (struct main_type) <flag_declared_class>: New field.
4991 (struct cplus_struct_type) <declared_type>: Remove.
4992 <ntemplate_args>: Move earlier.
4993 (DECLARED_TYPE_CLASS, DECLARED_TYPE_UNION, DECLARED_TYPE_STRUCT)
4994 (DECLARED_TYPE_TEMPLATE): Remove.
4995 (TYPE_DECLARED_TYPE): Remove.
4996 * gdbtypes.c (lookup_union): Don't use TYPE_DECLARED_TYPE.
4997 * dwarf2read.c (read_structure_type): Set TYPE_DECLARED_CLASS.
4998 * c-typeprint.c (c_type_print_base): Use TYPE_DECLARED_CLASS, not
5003 PR c++/11226, PR c++/9629, PR c++/9688, PR c++/8890:
5004 * valops.c (search_struct_field): Compute nbases after calling
5006 (check_field): Call CHECK_TYPEDEF.
5007 * cp-valprint.c (cp_print_value): Pass correct address to
5008 baseclass_offset. Fix check for virtual base past the end of the
5009 object. Don't offset address passed to cp_print_value_fields or
5010 apply_val_pretty_printer.
5011 (cp_print_value_fields): Fix call to val_print.
5012 (cp_print_value_fields_rtti): New function.
5013 * c-valprint.c (c_val_print): Use cp_print_value_fields_rtti.
5014 * p-valprint.c (pascal_object_print_value_fields): Fix call to
5016 * python/py-prettyprint.c (apply_val_pretty_printer): Add embedded
5018 * language.h (struct language_defn) <la_val_print>: Document.
5019 * c-lang.h (cp_print_value_fields_rtti): Declare.
5024 * linux-low.c (linux_tracefork_child) [!(__UCLIBC__ && HAS_NOMMU)]: New.
5025 (linux_test_for_tracefork): Move `stack' into [__UCLIBC__ && HAS_NOMMU].
5026 (linux_test_for_tracefork) [!(__UCLIBC__ && HAS_NOMMU)]: New.
5031 * i386-tdep.c (i386_frame_cache): Assume valid anonymous
5032 functions use a frame pointer.
5036 * solib-svr4.c (scan_dyntag): New variable dyn_addr. Replace gdb_assert
5037 by a conditional setting DYN_ADDR. Use DYN_ADDR.
5038 * config/djgpp/fnchange.lst: Add translations for
5039 symbol-without-target_section.exp and symbol-without-target_section.c.
5043 * gdbarch.sh: Set LANG and LC_ALL to C, not c.
5044 (remote_breakpoint_for_pc): Correct invalid_p check.
5045 * gdbarch.c: Regenerated.
5049 * arm-tdep.c (arm_find_mapping_symbol): New function, from
5051 (arm_pc_is_thumb): Use arm_find_mapping_symbol.
5052 (extend_buffer_earlier): New function.
5053 (MAX_IT_BLOCK_PREFIX, IT_SCAN_THRESHOLD): New constants.
5054 (arm_adjust_breakpoint_address): New function.
5055 (arm_gdbarch_init): Register arm_adjust_breakpoint_address.
5059 * arm-linux-tdep.c (arm_linux_thumb2_be_breakpoint)
5060 (arm_linux_thumb2_le_breakpoint): New constants.
5061 (arm_linux_init_abi): Set thumb2_breakpoint and
5062 thumb2_breakpoint_size.
5063 * arm-tdep.c (thumb_insn_size, thumb_advance_itstate): New functions.
5064 (thumb_get_next_pc): Add a comment. Rename IT to ITSTATE.
5065 Implement support for single stepping through IT blocks if
5066 a 32-bit Thumb breakpoint instruction is available.
5067 (arm_breakpoint_from_pc): If a 32-bit Thumb breakpoint instruction
5068 is available, use it when needed.
5069 (arm_remote_breakpoint_from_pc): New function.
5070 (arm_gdbarch_init): Register arm_remote_breakpoint_from_pc.
5071 * arm-tdep.h (struct gdbarch_tdep): Correct thumb_breakpoint
5072 comment. Add thumb2_breakpoint and thumb2_breakpoint_size.
5076 * arch-utils.c (default_remote_breakpoint_from_pc): New function.
5077 * arch-utils.h (default_remote_breakpoint_from_pc): Declare.
5078 * gdbarch.c, gdbarch.h: Regenerated.
5079 * gdbarch.sh (remote_breakpoint_from_pc): New architecture method.
5080 * remote.c (remote_insert_breakpoint, remote_insert_hw_breakpoint): Use
5081 gdbarch_remote_breakpoint_from_pc.
5085 * infrun.c (prepare_to_proceed): Handle other signals which might
5087 (handle_inferior_event): Move the check for unusual breakpoint
5092 amd64 - function returning record with field straddling 2 registers.
5093 * amd64-tdep.c (amd_classify_aggregate): Handle the case of
5094 a record of length <= 16 in which a field straddles the two
5099 Implement return values on amd64-windows.
5100 * amd64-windows-tdep.c: #include gdbcore.h and regcache.h.
5101 (amd64_windows_return_value): New function.
5102 (amd64_windows_init_abi): Call set_gdbarch_return_value with
5103 amd64_windows_return_value.
5107 amd64-windows: 32 bytes allocated on stack by caller for integer
5108 parameter registers.
5109 * i386-tdep.h (struct gdbarch_tdep): Add new field
5110 integer_param_regs_saved_in_caller_frame.
5111 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
5112 tdep->integer_param_regs_saved_in_caller_frame to 1.
5113 * amd64-tdep.c (amd64_push_dummy_call): Allocate some memory on
5114 stack if tdep->integer_param_regs_saved_in_caller_frame is set.
5118 amd64-windows: memory args passed by pointer during function calls.
5119 * i386-tdep.h (gdbarch_tdep): Add field memory_args_by_pointer.
5120 * amd64-tdep.c (amd64_push_arguments): Add handling of architectures
5121 where tdep->memory_args_by_pointer is non-zero.
5122 * amd64-windows-tdep.c (amd64_windows_init_abi): Set
5123 tdep->memory_args_by_pointer to 1.
5127 amd64-windows: Integer parameters in function calls.
5128 * i386-tdep.h (enum amd64_reg_class): New, moved here from
5130 (struct gdbarch_tdep): Add fields call_dummy_num_integer_regs,
5131 call_dummy_integer_regs, and classify.
5132 * amd64-tdep.h (amd64_classify): Add declaration.
5133 * amd64-tdep.c (amd64_dummy_call_integer_regs): New static constant.
5134 (amd64_reg_class): Delete, moved to i386-tdep.h.
5135 (amd64_classify): Make non-static. Move declaration to amd64-tdep.h.
5136 Replace call to amd64_classify by call to tdep->classify.
5137 (amd64_push_arguments): Get the list of registers to use for
5138 passing integer parameters from the gdbarch tdep structure,
5139 rather than using a hardcoded one. Replace calls to amd64_classify
5140 by calls to tdep->classify.
5141 (amd64_push_dummy_call): Get the register number used for
5142 the "hidden" argument from tdep->call_dummy_integer_regs.
5143 (amd64_init_abi): Initialize tdep->call_dummy_num_integer_regs
5144 and tdep->call_dummy_integer_regs. Set tdep->classify.
5145 * amd64-windows-tdep.c: Add include of gdbtypes.h.
5146 (amd64_windows_dummy_call_integer_regs): New static global.
5147 (amd64_windows_classify): New function.
5148 (amd64_windows_init_abi): Initialize tdep->call_dummy_num_integer_regs
5149 tdep->call_dummy_integer_regs and tdep->classify.
5153 * regcache.c (regcache_xmalloc): Add aspace argument. Use it
5154 for the new regcache. All callers updated.
5155 (regcache_cpy, regcache_cpy_no_passthrough): Do not set aspace here.
5156 (get_thread_arch_regcache): Do not set aspace here.
5157 * regcache.h (regcache_xmalloc): Update declaration.
5159 * frame.c, infcall.c, ppc-linux-tdep.c: Calls to
5160 regcache_xmalloc updated.
5164 Another -Wunused-function error in procfs.c (sparc-solaris)
5165 * procfs.c (insert_dbx_link_breakpoint): Delete declaration. Move up.
5166 Only define if SYS_syssgi is defined.
5167 (remove_dbx_link_breakpoint): Delete declaration. Move up.
5168 (dbx_link_addr, insert_dbx_link_bpt_in_file)
5169 (insert_dbx_link_bpt_in_region): Move up. Only define if SYS_syssgi
5174 * windows-nat.c (windows_initialization_done): New variable.
5175 (get_windows_debug_event): Issue error when process dies before
5176 completely initializing.
5177 (do_initial_windows_stuff): Set flag to indicate when we are done with
5178 the initial steps of attaching to the child.
5182 * symtab.h (struct symbol <symtab>): New comment on NULL values.
5186 * solib-svr4.c (solib_break_names): Add __dl_rtld_db_dlactivity.
5188 * breakpoint.c (bpstat_stop_status): Delete useless code.
5192 * printcmd.c (display_uses_solib_p): Remove variable section. Access
5193 objfile via SYMBOL_SYMTAB.
5198 * eval.c (evaluate_subexp_for_address) <UNOP_IND>: Call
5199 coerce_array on result.
5203 * cp-namespace.c (cp_lookup_symbol_namespace): Added
5204 search_parent argument.
5205 (cp_add_using): Initialize 'searched' field.
5206 (reset_directive_searched): New function.
5207 * cp-support.h: Add 'searched' field to using_direct struct.
5208 (cp_lookup_symbol_imports): Ditto.
5209 * cp-namespace.c (cp_lookup_symbol_imports): Ditto.
5210 Perform recursive search.
5211 Implement non parent search.
5212 * valops.c (value_maybe_namespace_elt): Updated.
5217 * dwarf2read.c (read_lexical_block_scope): Create blocks for
5218 scopes which contain using directives even if they contain no
5220 * symtab.c (lookup_symbol_aux): Pass lowest level block to
5221 la_lookup_symbol_nonlocal.
5222 * cp-namespace.c (cp_lookup_symbol_nonlocal): call
5223 cp_lookup_symbol_namespace.
5224 (cp_lookup_symbol_namespace): Perform an import lookup at every
5226 (cp_lookup_symbol_imports): New function.
5227 (cp_lookup_symbol_in_namespace): New function.
5232 * c-valprint.c (c_val_print): Fix test of extract_unsigned_integer
5237 * configure.ac: Only use host_os part when disabling TUI on osf.
5238 Use test to check variables, prefix strings with x.
5239 * configure: Regenerate.
5241 * solib-osf.c (osf_current_sos): Initialize tail.
5245 * windows-nat.c (windows_continue): Use %x to print thread id.
5246 (get_windows_debug_event): Ditto.
5251 * dwarf2read.c (quirk_gcc_member_function_pointer): Change return
5252 type and arguments. Use smash_to_methodptr_type.
5253 (read_structure_type): Call quirk_gcc_member_function_pointer
5255 * gdbtypes.h (smash_to_methodptr_type): Declare.
5256 * gdbtypes.c (smash_to_methodptr_type): New function.
5257 (lookup_methodptr_type): Use it.
5262 * symtab.h (lookup_minimal_symbol_and_objfile): Declare.
5263 * minsyms.c (lookup_minimal_symbol_and_objfile): New function.
5264 * glibc-tdep.c (find_minsym_and_objfile): Remove.
5265 (glibc_skip_solib_resolver): Use
5266 lookup_minimal_symbol_and_objfile.
5270 * inflow.c (check_syscall): Guard by #if clause for GO32 and
5276 * valarith.c (value_binop): Handle BINOP_GTR, BINOP_LEQ, and
5277 BINOP_GEQ. Handle BINOP_NOTEQUAL in the signed case.
5278 * dwarf2expr.c (new_dwarf_expr_context): Allocate
5279 dwarf_stack_values, not CORE_ADDRs.
5280 (execute_stack_op): Change DW_OP_div and comparison operators to
5281 use signed operands.
5285 Per-inferior args and tty and environment.
5287 * infcmd.c (inferior_args): Rename to ...
5288 (inferior_args_scratch): ... this.
5289 (inferior_io_terminal): Rename to ...
5290 (inferior_io_terminal_scratch): ... this.
5291 (inferior_argc, inferior_argv): Remove.
5292 (set_inferior_io_terminal, get_inferior_io_terminal): Store
5293 inside current_inferior().
5294 (set_inferior_tty_command, show_inferior_tty_command): New.
5295 (get_inferior_args, set_inferior_args): Store inside
5297 (notice_args_set): Likewise and rename to...
5298 (set_args_command): ... this.
5299 (set_inferior_args_vector): Likewise.
5300 (notice_args_read): Rename to...
5301 (show_args_command): ...new.
5302 (tty_command): Remove.
5303 (run_command_1): Don't free old args, as they are freed by
5304 set_inferior_arg now.
5305 (run_no_args_command): Likewise.
5306 (inferior_environ): Remove.
5307 (run_command_1): Use environment of the current inferior.
5308 (environment_info, set_environment_command)
5309 (unset_environment_command, path_info, path_command): Likewise.
5310 (_initialize_infcmd): Adjust for function and variable renames.
5311 Do not init inferior_environ.
5312 * inferior.h (set_inferior_arg): Adjust prototype.
5313 (struct inferior): New fields args, argc, argv, terminal, environment.
5314 (inferior_environ): Remove declaration.
5315 * inferior.c (free_inferior): Free new fields.
5316 (add_inferior_silent): Initialize 'environment' field.
5317 * main.c (captured_main): Set arguments only after the initial
5318 inferior has been created. Set set_inferior_io_terminal,
5320 * mi/mi-main.c (mi_cmd_env_path): Use environment of the current
5322 (_initialize_mi_cmd_env): Adjust for disappearance of global
5324 * solib.c (solib_find): Use environment of the current inferior.
5328 * varobj.c (varobj_add_child, install_dynamic_child): Wrap into #if
5330 (instantiate_pretty_printer): Move HAVE_PYTHON outside of the function.
5334 Get rid of ada-lang.c:function_name_from_pc.
5335 * ada-lang.c: Add "stack.h" #include.
5336 (function_name_from_pc): Delete.
5337 (is_known_support_routine): Replace call to function_name_from_pc
5338 by call to find_frame_funname.
5339 (ada_unhandled_exception_name_addr_from_raise): Likewise.
5344 * dwarf2read.c (read_partial_die): Allocate partial DIE's name on
5349 * top.c (stop_sig, float_handler, do_nothing): Remove.
5353 * breakpoint.c (watchpoint_check): Check the call
5354 gdbarch_in_function_epilogue_p before calling frame_find_by_id.
5356 * config/djgpp/fnchange.lst: Add translations for
5357 watchpoint-cond-gone.exp, watchpoint-cond-gone.c and
5358 watchpoint-cond-gone-stripped.c.
5363 * dwarf2read.c (partial_die_parent_scope): Put enumeration type
5364 into parent scope, and enumerator into grandparent scope.
5368 * NEWS: Add entry for "set/show ada trust-PAD-over-XVS" commands.
5372 * configure.host: Make x86_64-*-solaris2.1[0-9]* an alias of
5373 i[34567]86-*-solaris2.1[0-9]*.
5374 * configure.tgt: Likewise.
5378 * NEWS: Document the source command enhancement allowing it
5379 to load Python scripts. Document the "set/show script-extension"
5384 Add -Wunused-function to compile flags.
5385 * configure.ac: Add -Wunused-function to build_warnings.
5386 * configure: Regenerate.
5390 "delete" ada-lex.c:input function, not used.
5391 * ada-lex.l: #define YY_NO_INPUT.
5395 Delete free_named_symtabs and associated cleanup.
5396 * symfile.h (free_named_symtabs): Delete declaration.
5397 * symfile.c: Remove some commented out code (clear_symtab_users_once).
5398 (cashier_psymtab): Comment function out.
5400 (free_named_symtabs): Delete.
5401 * coffread.c (coff_end_symtab): Remove call to free_named_symtabs.
5402 * dbxread.c (end_psymtab): Likewise.
5403 * dwarf2read.c (process_psymtab_comp_unit): Ditto.
5404 * exec.c (exec_close_1): Ditto.
5405 * xcoffread.c (xcoff_end_psymtab): Likewise.
5409 * stack.c (print_block_frame_labels): Comment function out.
5413 Delete unused or undefined functions.
5414 * breakpoint.c (ep_parse_optional_filename): Delete.
5415 * dcache.c (dcache_write_line): Remove declaration.
5416 * infrun.c (build_infrun): Remove declaration.
5417 * tracepoint.c (tracepoint_save_command): Remove declaration.
5418 * linux-nat.c (init_lwp_list): Delete. No longer used.
5419 * event-loop.c (check_async_signal_handlers): Delete declaration.
5420 * infrun.c (init_execution_control_state): Delete.
5421 (proceed): Update comment to avoid mentioning
5422 init_execution_control_state.
5423 * target.c (kill_or_be_killed, nosupport_runtime): Delete.
5424 * ada-lang.c (ada_to_static_fixed_value): Delete.
5425 * scm-lang.c (evaluate_subexp_scm): Delete declaration.
5426 * cp-namespace.c (cp_copy_usings): Delete.
5427 * xml-syscall.c (xml_number_of_syscalls): Delete.
5428 * progspace.c (find_program_space_by_num): Delete.
5429 * inflow.c (handle_sigio): Delete declaration.
5430 * hppa-tdep.c (hppa_alignof): Delete.
5431 * mipsnbsd-tdep.c (mipsnbsd_sigtramp_offset)
5432 (mipsnbsd_core_osabi_sniffer): Delete.
5437 * c-exp.y (REINTERPRET_CAST, DYNAMIC_CAST, STATIC_CAST)
5438 (CONST_CAST): New tokens.
5439 (exp): Add new productions.
5440 (ident_tokens): Add const_cast, dynamic_cast, static_cast, and
5442 (is_cast_operator): New function.
5443 (yylex): Handle cast operators specially.
5444 * eval.c (evaluate_subexp_standard) <UNOP_DYNAMIC_CAST,
5445 UNOP_REINTERPRET_CAST>: New cases.
5446 * expprint.c (print_subexp_standard): Likewise.
5447 (op_name_standard): Likewise.
5448 (dump_subexp_body_standard): Likewise.
5449 * parse.c (operator_length_standard): Likewise.
5450 * expression.h (enum exp_opcode): New constants UNOP_DYNAMIC_CAST,
5451 UNOP_REINTERPRET_CAST.
5452 * gdbtypes.c (class_types_same_p): New function.
5453 (is_ancestor): Use it.
5454 (is_public_ancestor): New function.
5455 (is_unique_ancestor_worker): Likewise.
5456 (is_unique_ancestor): Likewise.
5457 * gdbtypes.h (class_types_same_p, is_public_ancestor)
5458 (is_unique_ancestor): Declare.
5459 * valops.c (value_reinterpret_cast): New function.
5460 (dynamic_cast_check_1): Likewise.
5461 (dynamic_cast_check_2): Likewise.
5462 (value_dynamic_cast): Likewise.
5463 * value.h (value_reinterpret_cast, value_dynamic_cast): Declare.
5467 Fix build failure when building without Python support.
5468 * python/python.c: Always include exceptions.h, even when HAVE_PYTHON
5473 Use XVS field type instead of doing a parallel lookup.
5474 * ada-lang.c (ada_get_base_type): Follow the XVS field type
5475 if it is a reference type instead of doing a type lookup using
5480 Trust PAD types instead of using PAD___XVS.
5481 * ada-lang.c (trust_pad_over_xvs): New static variable.
5482 (ada_is_aligner_type): If !trust_pad_over_xvs and there is a
5483 parallel XVS type, follow the XVS type instead of the PAD type.
5484 (unwrap_value): Make sure that there is no parallel XVE type
5485 before returning the value as is.
5486 (set_ada_list, show_ada_list): New static variables.
5487 (set_ada_command, show_ada_command): New functions.
5488 (_initialize_ada_language): Add new "set/show ada" prefix commands.
5489 Add new "set/show ada trust-PAD-over-XVS" setting.
5494 Allow "source" to load python scripts.
5495 * exceptions.h (enum errors): Add UNSUPPORTED_ERROR.
5496 * python/python.c (source_python_script): New function.
5497 * python/python.h (source_python_script): Add declaration.
5498 * cli/cli-cmds.c: #include exceptions.h and python/python.h.
5499 (script_ext_off, script_ext_soft, script_ext_strict)
5500 (script_ext_enums, script_ext_mode): New static constants.
5501 (show_script_ext_mode, find_and_open_script): New functions.
5502 (source_script): Enhance to handle Python scripts.
5503 (init_cli_cmds): Add set/show script-extension commands.
5507 * tracepoint.h (struct trace_status): Use unsigned long long
5509 * tracepoint.c (trace_status_command): Fix printf directive.
5510 (trace_save_command): Check fwrite returns, fix printf directive.
5511 (trace_filename): New global.
5512 (tfile_open): Set it, check read returns.
5513 (tfile_close): Free trace_filename.
5514 (tfile_get_traceframe_address): Check read returns.
5515 (tfile_trace_find): Ditto.
5516 (tfile_fetch_registers): Ditto.
5517 (tfile_xfer_partial): Ditto.
5518 (tfile_get_trace_state_variable_value): Ditto.
5522 Add trace file support.
5523 * tracepoint.h (enum trace_stop_reason): New enum.
5524 (struct trace_status): New struct.
5525 (parse_trace_status): Declare.
5526 (struct uploaded_tp): Move here from remote.c,
5527 add fields for actions.
5528 (struct uploaded_tsv): New struct.
5529 * tracepoint.c (tfile_ops): New target vector.
5530 (trace_fd): New global.
5531 (tfile_open): New function.
5532 (tfile_close): New function.
5533 (tfile_files_info): New function.
5534 (tfile_get_trace_status): New function.
5535 (tfile_get_traceframe_address): New function.
5536 (tfile_trace_find): New function.
5537 (tfile_fetch_registers): New function.
5538 (tfile_xfer_partial): New function.
5539 (tfile_get_trace_state_variable_value): New function.
5540 (init_tfile_ops): New function.
5541 (_initialize_tracepoint): Call it, add tfile target.
5542 (trace_status): New global.
5543 (current_trace_status): New function.
5544 (trace_running_p): Remove, change all users to get from
5545 current_trace_status()->running.
5546 (get_trace_status): Remove.
5547 (trace_status_command): Call target_get_trace_status directly,
5548 report more detail including tracing stop reasons.
5549 (trace_find_command): Always allow tfind on a file.
5550 (trace_find_pc_command): Ditto.
5551 (trace_find_tracepoint_command): Ditto.
5552 (trace_find_line_command): Ditto.
5553 (trace_find_range_command): Ditto.
5554 (trace_find_outside_command): Ditto.
5555 (trace_frames_offset, cur_offset): Declare as off_t.
5556 (trace_regblock_size): Rename from reg_size, update users.
5557 (parse_trace_status): New function.
5558 (tfile_interp_line): New function.
5559 (disconnect_or_stop_tracing): Ensure current trace
5560 status before asking what to do.
5561 (stop_reason_names): New global.
5562 (trace_save_command): New command.
5563 (get_uploaded_tp): Move here from remote.c.
5564 (find_matching_tracepoint): Ditto.
5565 (merge_uploaded_tracepoints): New function.
5566 (parse_trace_status): Use stop_reason_names.
5567 (_initialize_tracepoint): Define tsave command.
5568 * target.h (target_ops): New fields to_save_trace_data,
5569 to_upload_tracepoints, to_upload_trace_state_variables,
5570 to_get_raw_trace_data, change to_get_trace_status
5571 to take a pointer to a status struct.
5572 (target_save_trace_data): New macro.
5573 (target_upload_tracepoints): New macro.
5574 (target_upload_trace_state_variables): New macro.
5575 (target_get_raw_trace_data): New macro.
5576 * target.c (update_current_target): Add new methods, change
5577 signature of to_get_trace_status.
5578 * remote.c (hex2bin): Make globally visible.
5580 (remote_download_trace_state_variable): Download name also.
5581 (remote_get_trace_status): Update parameter, use
5583 (remote_save_trace_data): New function.
5584 (remote_upload_tracepoints): New function.
5585 (remote_upload_trace_state_variables): New function.
5586 (remote_get_raw_trace_data): New function.
5587 (remote_start_remote): Use them.
5588 (_initialize_remote_ops): Add operations.
5589 * ax-gdb.c: Include breakpoint.h.
5590 * breakpoint.c (create_tracepoint_from_upload): Use
5591 break_command_really, return tracepoint, warn about unimplemented
5593 * NEWS: Mention trace file addition.
5597 Fix compilation warning on gcc-3.4.
5598 * exec.c (print_section_info): Move the `displacement' variable
5599 initialization to its declaration.
5603 * gdb-gdb.py (StructMainTypePrettyPrinter): Fix TYPE_CODE_RANGE
5608 "info tasks" broken by typedefs in ATCB type definitions.
5609 * ada-lang.c (ada_template_to_fixed_record_type_1): Add call to
5610 ada_check_typedef before retrieving the length of the type for
5615 Do not use name-based lookup for unconstrained packed arrays.
5616 * ada-lang.c (find_parallel_type_by_descriptive_type):
5617 Limit the fallback to name-based lookups to the case where
5618 the type is a constrained packed array.
5622 Enhance gdb-gdb.py to handle main_type.type_specific.
5623 * gdb-gdb.py: Print the type-specific part of struct main_type.
5627 * configure.ac (AC_CHECK_FUNCS): Check for setrlimit and getrlimit.
5628 * configure: Regenerate.
5629 * config.in: Regenerate.
5630 * utils.c: Include sys/resource.h.
5631 (dump_core, can_dump_core): New.
5632 (internal_vproblem): Update the comment. Check can_dump_core while
5633 setting dump_core_p. Replace two abort calls by dump_core calls.
5638 * NEWS: Document the PIE support.
5642 * linux-tdep.c: Remove includes gdbcore.h, observer.h and elf-bfd.h.
5643 (check_is_pie_binary, _initialize_linux_tdep): Remove.
5647 * solib-svr4.c (svr4_exec_displacement): New comment for entry_point.
5648 Replace exec_entry_point call by bfd_get_start_address.
5652 Support Valgrind attachments broken by the PIE support.
5653 * auxv.c: Include gdbcore.h.
5654 (procfs_xfer_auxv): Make static. Reduce its comment. Drop its
5655 parameters ops, object and annex. Remove their assertions.
5656 (ld_so_xfer_auxv, memory_xfer_auxv): New function.
5657 * auxv.h (procfs_xfer_auxv): Remove comment. Rename to ...
5658 (memory_xfer_auxv): ... here.
5659 * linux-nat.c (linux_xfer_partial): Rename procfs_xfer_auxv to
5661 * procfs.c (procfs_xfer_partial): Likewise.
5662 * solib-svr4.c (svr4_relocate_main_executable): New prototype.
5663 (svr4_special_symbol_handling): Call svr4_relocate_main_executable.
5664 (svr4_solib_create_inferior_hook): Conditionalize the
5665 svr4_relocate_main_executable call.
5669 * solib-svr4.c (scan_dyntag): Remove variable dyn_addr. New variable
5670 target_section. Find SECT in current_target_sections, gdb_assert it.
5671 (elf_lookup_lib_symbol): Pass the binary file if given symfile_objfile.
5673 * symtab.c (lookup_objfile_from_block): Return the binary file instead
5674 of separate debug info file.
5678 Support PIEs with no symfile_objfile.
5679 * exec.c (print_section_info <abfd == exec_bfd>): Relocate Entry point.
5680 * solib-svr4.c (svr4_relocate_main_executable <exec_bfd>): New block.
5684 * solib-svr4.c (svr4_relocate_main_executable): Move the static exec
5686 (svr4_static_exec_displacement): ... a new function.
5687 (svr4_exec_displacement): New function.
5688 (svr4_relocate_main_executable): Call svr4_exec_displacement. Allocate
5689 new_offsets using alloca now. Remove variable old_chain and changed.
5690 Call objfile_relocate unconditionally now.
5694 * gdbtypes.c (arch_flags_type): Fix comment.
5695 * gdbtypes.h (arch_composite_type): Fix comment.
5699 * machoread.c (macho_add_oso_symfile): Add symfile_flags parameter.
5700 Call xstrdup for abfd->filename. Pass symfile_flags and objfile flags
5701 to symbol_file_add_from_bfd. Add OSO as separate objfile.
5702 (macho_oso_symfile): Add symfile_flags parameter. Pass it to
5703 macho_add_oso_symfile.
5704 (macho_symfile_read): Pass symfile_flags to macho_oso_symfile.
5708 Tru64: Dead threads are never deleted.
5709 * dec-thread.c (dec_thread_ptid_is_alive): New function.
5710 (dec_thread_count_gdb_threads): Fix counter increment.
5711 (dec_thread_add_gdb_thread): Fix *listp increment.
5712 (resync_thread_list): Fix bug in deletion of dead threads that
5713 caused all threads to be deleted, instead of just the dead ones.
5719 * python/python-internal.h: Add lazy_string_object_type
5721 (create_lazy_string_object, gdbpy_initialize_lazy_string)
5722 (gdbpy_is_lazystring, gdbpy_extract_lazy_string): Define.
5723 * python/py-value.c (valpy_lazy_string): New function.
5724 (convert_value_from_python): Add lazy string conversion.
5725 * python/py-prettyprint.c (pretty_print_one_value): Check if
5726 return is also a lazy string.
5727 (print_string_repr): Add lazy string printing branch.
5728 (print_children): Likewise.
5729 * python/py-lazy-string.c: New file. Implement lazy strings.
5730 * python/python.c (_initialize_python): Call
5731 gdbpy_initialize_lazy_string.
5732 * varobj.c (value_get_print_value): Add lazy string printing
5733 branch. Account for encoding.
5734 * c-lang.c (c_printstr): Account for new encoding argument. If
5735 encoding is NULL, find encoding suited for type, otherwise use
5737 * language.h (language_defn): Add encoding argument.
5738 (LA_PRINT_STRING): Likewise.
5739 * language.c (unk_lang_printstr): Update to reflect new encoding
5740 argument to language_defn.
5741 * ada-lang.h (ada_printstr): Likewise.
5742 * c-lang.h (c_printstr): Likewise.
5743 * p-lang.h (pascal_printstr);
5744 * f-lang.c (f_printstr): Likewise.
5745 * m2-lang.c (m2_printstr): Likewise.
5746 * objc-lang.c (objc_printstr): Likewise.
5747 * p-lang.c (pascal_printstr): Likewise.
5748 * scm-lang.c (scm_printstr): Likewise.
5749 * c-valprint.c (c_val_print): Update LA_PRINT_STRING call for
5751 * ada-valprint.c (ada_printstr): Likewise.
5752 * f-valprint.c (f_val_print): Likewise
5753 * m2-valprint.c (m2_val_print): Likewise.
5754 * p-valprint.c (pascal_val_print): Likewise.
5755 * expprint.c (print_subexp_standard): Likewise.
5756 * valprint.c (val_print_string): Likewise.
5757 * Makefile.in (SUBDIR_PYTHON_OBS): Add py-lazy-string.
5758 (SUBDIR_PYTHON_SRCS): Likewise.
5759 (py-lazy-string.o): New rule.
5763 * mi/mi-main.c (list_available_thread_groups): Avoid "may be used
5764 uninitialized" warning from gcc on local `tree'.
5768 Implement core awareness.
5770 * bcache.c (compare_ints): Remove
5771 (print_percentage): Use compare_positive_ints.
5772 * defs.h (compare_positive_ints): Declare.
5773 * linux-nat.h (struct lin_lwp): New field core.
5774 (linux_nat_core_of_thread_1): Declare.
5775 * linux-nat.c (add_lwp): Init the 'core' field.
5776 (linux_nat_wait_1): Record the core.
5777 (linux_nat_core_of_thread_1, linux_nat_core_of_thread): New.
5778 (linux_nat_add_target): Register the above.
5779 * linux-thread-db.c (update_thread_core): New.
5780 (thread_db_find_new_threads): Update core information for
5782 * remote.c (struct private_thread_info): New.
5783 (free_private_thread_info, demand_private_info): New.
5784 (PACKET_qXfer_threads, use_osdata_threads): New.
5785 (struct thread_item, threads_parsing_context
5786 (start_thread, end_thread, thread_attributes)
5787 (thread_children, threads_children, threads_elements): New.
5788 (remote_threads_info): Try qXfer:threads before anything
5790 (remote_protocol_packets): Register qXfer:threads.
5791 (remote_open_1): Init use_osdata_threads.
5792 (struct stop_reply): New field 'core'.
5793 (remote_parse_stop_reply): Parse core number.
5794 (process_stop_reply): Record core number.
5795 (remote_xfer_partial): Handle qXfer:threads.
5796 (remote_core_of_thread): New.
5797 (init_remote_ops): Register remote_core_of_thread.
5798 (_initialize_remote): Register qXfer:read.
5799 * target.c (target_core_of_thread): New
5800 * target.h (enum target_object): New value TARGET_OBJECT_THREADS.
5801 (struct target_ops): New field to_core_of_threads.
5802 (target_core_of_thread): Declare.
5803 * gdbthread.h (struct thread_info): New field private_dtor.
5804 * thread.c (print_thread_info): Report the core.
5805 * ui-out.c (MAX_UI_OUT_LEVELS): Increase.
5806 * utils.c (compare_positive_ints): New.
5807 * features/threads.dtd: New.
5808 * mi/mi-interp.c (mi_on_normal_stop): Report the core.
5809 * mi/mi-main.c (struct collect_cores_data, collect_cores)
5810 (do_nothing, free_vector_of_osdata_items)
5811 (splay_tree_int_comparator, free_splay_tree): New.
5812 (print_one_inferior_data): Implemented printing of selected
5813 inferiors. Collect and print cores.
5814 (output_cores): New.
5815 (mi_cmd_list_thread_groups): Support --recurse. Permit specifying
5816 thread groups together with --available.
5820 * configure: Regenerate (for _STRUCTURED_PROC).
5824 Delete dead function.
5825 * ada-lang.c (extract_string): Delete. No longer used.
5829 Fix -Wunused warning in dec-thread.c.
5830 * dec-thread.c (dec_thread_count_gdb_threads)
5831 (dec_thread_add_gdb_thread): Prevent -Wunused warning.
5835 * ada-valprint.c (ada_print_floating): Remove trailing space.
5839 Add support for DW_AT_GNAT_descriptive_type.
5840 * gdbtypes.h (enum type_specific_kind): New enum.
5841 (struct main_type) [type_specific_field]: New component.
5842 [type_specific]: Add new component "gnat_stuff".
5843 (struct gnat_aux_type): New type.
5844 (INIT_CPLUS_SPECIFIC): Also set TYPE_SPECIFIC_FIELD (type).
5845 (HAVE_CPLUS_STRUCT): Also check TYPE_SPECIFIC_FIELD (type).
5846 (gnat_aux_default, allocate_gnat_aux_type): Add declaration.
5847 (INIT_GNAT_SPECIFIC, ALLOCATE_GNAT_AUX_TYPE, HAVE_GNAT_AUX_INFO)
5848 (TYPE_SPECIFIC_FIELD): New macros.
5849 (TYPE_CPLUS_SPECIFIC): Return cplus_struct_default if the given
5850 type does not hold any cplus-specific data.
5851 (TYPE_RAW_CPLUS_SPECIFIC): New macro.
5852 (TYPE_GNAT_SPECIFIC, TYPE_DESCRIPTIVE_TYPE): New macros.
5853 (TYPE_IS_OPAQUE): Use HAVE_CPLUS_STRUCT to check if type has
5854 cplus-specific data.
5855 * gdbtypes.c (allocate_cplus_struct_type): Minor stylistic rewrite.
5856 Set new component TYPE_SPECIFIC_FIELD (type).
5857 (gnat_aux_default): New constant.
5858 (allocate_gnat_aux_type): New function.
5859 (init_type): Add initialization the type-specific stuff for
5860 TYPE_CODE_FLT and TYPE_CODE_FUNC types.
5861 (print_gnat_stuff): New function.
5862 (recursive_dump_type): Use HAVE_CPLUS_STRUCT to check for cplus-
5863 specific data. Adjust code that prints the contents of the
5864 type-specific union using the TYPE_SPECIFIC_FIELD value.
5865 * dwarf2read.c (dwarf2_attach_fields_to_type): Do not allocate
5866 the type cplus stuff for Ada types.
5867 (dwarf2_add_member_fn, dwarf2_attach_fn_fields_to_type):
5868 Error out if these routines are called with an Ada type.
5869 (read_structure_type, read_array_type, read_subrange_type):
5870 Add call to set_descriptive_type.
5871 (set_die_type): Initialize the gnat-specific data if necessary.
5872 (need_gnat_info, die_descriptive_type, set_descriptive_type):
5874 * ada-lang.c (decode_constrained_packed_array_type): Use
5875 decode_constrained_packed_array_type instead of doing a standard
5876 lookup to locate a parallel type.
5877 (find_parallel_type_by_descriptive_type): New function.
5878 (ada_find_parallel_type_with_name): New function.
5879 (ada_find_parallel_type): Reimplement using
5880 ada_find_parallel_type_with_name.
5881 * ada-valprint.c (print_field_values): Use HAVE_CPLUS_STRUCT
5882 to check if type has a cplus stuff.
5883 * linespec.c (total_number_of_methods): Likewise.
5884 * mdebugread.c (new_type): Likewise.
5888 * NEWS: Document the 0b binary number prefix parsing.
5892 * objfiles.c (objfile_relocate1): Change the return type to int.
5893 Describe the new return value. Return non-zero if data changed.
5894 (objfile_relocate): New variable changed. Set it. Call
5895 breakpoint_re_set depending on CHANGED.
5899 Implement binary numbers parsing.
5900 * c-exp.y (parse_number): New case 'b' and 'B'.
5905 * solib.c (info_sharedlibrary_command): Replace
5906 objfile_has_partial_symbols and objfile_has_full_symbols calls by
5907 objfile_has_symbols.
5911 * NEWS: Document the improvements made to the mips-irix port.
5915 Fix the documentation of valprint.c:value_print.
5916 * valprint.c (value_print): Update the function description to
5917 mention that the syntax of the output follows the current_language,
5922 Fix displacement of separate debug info files.
5923 * objfiles.c (objfile_relocate): Rename to ...
5924 (objfile_relocate1): ... here and make it static. Extend the comment.
5925 (objfile_relocate): New function.
5926 * solib-spu.c (spu_relocate_main_executable): Explicitly check if
5927 SYMFILE_OBJFILE is NULL. Remove variables objfile and old_chain.
5928 Remove following of SEPARATE_DEBUG_OBJFILE. new_offsets is now
5929 allocated using alloca.
5930 * symfile.c (copy_section_addr_info): Remove.
5931 (build_section_addr_info_from_objfile): Make it global. New variables
5932 addr_bit and mask, use them.
5933 * symfile.h (build_section_addr_info_from_objfile): New prototype.
5934 (copy_section_addr_info): Remove.
5938 Signal unwinder for mips-irix N32.
5939 * mips-irix-tdep.c: #include mips-tdep.h, trad-frame.h, and
5941 (SIGTRAMP_FRAME_SIZE, SIGCONTEXT_PC_OFF, SIGCONTEXT_REGS_OFF)
5942 (SIGCONTEXT_FPREGS_OFF, SIGCONTEXT_FPCSR_OFF, SIGCONTEXT_HI_OFF)
5943 (SIGCONTEXT_LO_OFF): New macros.
5944 (mips_irix_n32_tramp_frame_init): New function.
5945 (mips_irix_n32_tramp_frame): New static constant.
5946 (mips_irix_init_abi): Prepend the mips_irix_n32_tramp_frame unwinder.
5950 Breakpoint in shared library does not work on mips-irix.
5951 * procfs.c: #include "observer.h".
5952 (procfs_inferior_created): New function, moving here the code
5953 which unsets the syssgi syscall-exit notifications.
5954 (procfs_create_inferior): Remove the code which unsets the syssgi
5955 syscall-exit notifications. It is too early to do this here.
5956 (_initialize_procfs): Attach the procfs_inferior_created observer.
5960 Wrong return convention for arrays (mips-irix).
5961 * mips-tdep.c (mips_n32n64_return_value): Arrays whose size is
5962 128 bits or smaller are returned the same way as structs
5963 and unions of the the same size.
5967 Cannot set the PC on mips-irix.
5968 * irix5-nat.c (fill_gregset): Check regno against the raw PC
5969 register number, no the cooked one.
5973 Error while loading core file on mips-irix.
5974 * solib-irix.c (irix_solib_create_inferior_hook): Do nothing
5975 if debugging from a core file.
5979 GDB hangs when attaching to process on mips-irix.
5980 * solib-irix.c (irix_solib_create_inferior_hook): Do nothing if
5981 attaching to a process.
5985 Use the correct breakpoint instruction on mips-irix.
5986 * mips-tdep.c (mips_breakpoint_from_pc): Add new static variable
5987 containing the correct breakpoint instruction to use on mips-irix.
5988 Use it when the osabi is GDB_OSABI_IRIX.
5992 -Wunused warning in procfs.c (mips-irix only).
5993 * procfs.c (gdb_praddset, gdb_prdelset): New macros. Use them
5994 throughout instead of using praddset and prdelset respectively.
5998 GDB crash while stepping into function.
5999 * infrun.c (handle_inferior_event): Refetch the current frame
6000 after handling what.main_action, in case that pointer became
6005 Fix build failure of solaris-hosted cross debuggers.
6006 * ada-valprint.c, parse.c: Include defs.h before including ctype.h.
6010 Fix build failure on sparc-solaris.
6011 * procfs.c: (procfs_do_thread_registers) Use elfcore_write_lwpstatus.
6015 Move some symfile code into subroutines.
6016 * symfile.h (relative_addr_info_to_section_offsets)
6017 (addr_info_make_relative): New prototypes.
6018 * symfile.c (default_symfile_offsets): Move a part to ...
6019 (relative_addr_info_to_section_offsets): ... this new function.
6020 (default_symfile_offsets): Call it.
6021 (syms_from_objfile <!mainline && addrs && addrs->other[0].name>): Move
6023 (addr_info_make_relative): ... this new function.
6027 Add from_tty to solib_create_inferior_hook.
6028 * infcmd.c (post_create_inferior): Move solib_add after
6029 solib_create_inferior_hook. Pass from_tty to
6030 solib_create_inferior_hook. Call solib_add and SOLIB_ADD with
6031 0 from_tty and comment why.
6032 * infrun.c (follow_exec): Pass from_tty solib_create_inferior_hook as 0.
6033 * linux-nat.c (linux_child_follow_fork): Likewise.
6034 * nto-procfs.c (procfs_post_attach, procfs_create_inferior): Likewise.
6035 * solib-darwin.c (darwin_solib_create_inferior_hook): New parameter
6037 * solib-frv.c (frv_solib_create_inferior_hook): Likewise.
6038 * solib-irix.c (irix_solib_create_inferior_hook): Likewise.
6039 * solib-null.c (null_solib_create_inferior_hook): Likewise.
6040 * solib-osf.c (osf_solib_create_inferior_hook): Likewise.
6041 * solib-pa64.c (pa64_solib_create_inferior_hook): Likewise.
6042 * solib-som.c (som_solib_create_inferior_hook): Likewise.
6043 * solib-spu.c (spu_solib_create_inferior_hook): New parameter from_tty.
6044 Pass it to svr4_so_ops.solib_create_inferior_hook.
6045 * solib-sunos.c (sunos_solib_create_inferior_hook): New parameter
6047 * solib-svr4.c (enable_break): New parameter from_tty. Pass it to
6049 (svr4_solib_create_inferior_hook): New parameter from_tty. Pass it to
6051 * solib-target.c (solib_target_solib_create_inferior_hook): New
6053 * solib.c (solib_create_inferior_hook): New parameter from_tty. Pass
6054 it to ops->solib_create_inferior_hook.
6055 (reload_shared_libraries): Pass from_tty to solib_create_inferior_hook.
6056 Move solib_add after solib_create_inferior_hook, call it now with
6057 from_tty as 0. New comment there.
6058 * solib.h (solib_create_inferior_hook): New parameter from_tty.
6059 * solist.h (struct target_so_ops <solib_create_inferior_hook>):
6065 * infrun.c (handle_inferior_event): Use get_thread_regcache
6066 with events ptid, not get_current_regcache.
6070 GDB crash with empty executable name (MinGW).
6071 * source.c (openp): Add assert that parameter string is not NULL.
6072 if parameter string is an empty string, then return with a failure
6077 Get rid of support for VAX Floats.
6078 * ada-lang.h (ada_is_vax_floating_type, ada_vax_float_type_suffix)
6079 (ada_vax_float_print_function): Delete.
6080 * ada-lang.c (ada_is_vax_floating_type, ada_vax_float_type_suffix)
6081 (ada_vax_float_print_function): Delete.
6082 * ada-typeprint.c (print_vax_floating_point_type): Delete.
6083 (ada_print_type): Remove support for VAX floats.
6084 * ada-valprint.c (ada_val_print_1): Remove support for VAX floats.
6088 * stabsread.c (read_args): Handle zero arguments.
6092 Cannot find in-tree libiconv.a after reconfigure.
6093 * acinclude.m4 (AM_ICONV): If we find an in-tree libiconv.a
6094 that we can use, then cache the path to this archive.
6095 * configure: Regenerate.
6099 Make tracepoint operations go through target vector.
6100 * target.h (enum trace_find_type): New enum.
6101 (struct target_ops): New fields to_trace_init,
6102 to_download_tracepoint, to_download_trace_state_variable,
6103 to_trace_set_readonly_regions, to_trace_start, to_get_trace_status,
6104 to_trace_stop, to_trace_find, to_get_trace_state_variable_value,
6105 to_set_disconnected_tracing.
6106 (target_trace_init): New macro.
6107 (target_download_tracepoint): New macro.
6108 (target_download_trace_state_variable): New macro.
6109 (target_trace_start): New macro.
6110 (target_trace_set_readonly_regions): New macro.
6111 (target_get_trace_status): New macro.
6112 (target_trace_stop): New macro.
6113 (target_trace_find): New macro.
6114 (target_get_trace_state_variable_value): New macro.
6115 (target_set_disconnected_tracing): New macro.
6116 * target.c (update_current_target): Inherit and set defaults for
6117 tracepoint operations.
6118 * tracepoint.c (default_collect): Make globally visible.
6119 (target_is_remote): Remove, along with all calls.
6120 (tvariables_info): Call target_get_trace_state_variable_value.
6121 (remote_set_transparent_ranges): Remove.
6122 (trace_start_command): Call target_trace_init,
6123 target_download_tracepoint, etc.
6124 (download_tracepoint): Remove.
6125 (trace_stop_command): Simplify.
6126 (stop_tracing): Call target_trace_stop.
6127 (get_trace_status): Call target_get_trace_status.
6128 (trace_status_command): Add case for targets that cannot trace.
6129 (finish_tfind_command): Change to take numerical arguments, call
6131 (trace_find_command): Update call to finish_tfind_command.
6132 (trace_find_pc_command): Ditto.
6133 (trace_find_tracepoint_command): Ditto.
6134 (trace_find_line_command): Ditto.
6135 (trace_find_range_command): Ditto.
6136 (trace_find_outside_command): Ditto.
6137 (set_disconnected_tracing_value): Call
6138 target_set_disconnected_tracing.
6139 * remote.c: Add protocol encoding bits from tracepoint.c.
6140 (trace_error): Move from tracepoint.c.
6141 (remote_get_noisy_reply): Ditto.
6142 (free_actions_list_cleanup_wrapper): Ditto.
6143 (free_actions_list): Ditto.
6144 (remote_trace_init): New function.
6145 (remote_download_tracepoint): New function.
6146 (remote_download_trace_state_variable): New function.
6147 (remote_trace_set_readonly_regions): New function.
6148 (remote_trace_start): New function.
6149 (remote_get_trace_status): New function.
6150 (remote_trace_stop): New function.
6151 (remote_trace_find): New function.
6152 (remote_download_trace_state_variable): New function.
6153 (remote_set_disconnected_tracing): New function.
6154 (init_remote_ops): Add tracepoint operations.
6156 * tracepoint.c (trace_dump_command): Don't decr_pc_after_break.
6160 * symfile.c (build_section_addr_info_from_objfile): New function.
6161 (symbol_file_add_separate): Don't use offsets from objfile but
6166 Support disconnected tracing.
6167 * infcmd.c (detach_command): Ask whether to stop tracing.
6168 * cli/cli-cmds.c (quit_command): Ditto.
6169 * breakpoint.h (struct breakpoint): New field number_on_target.
6170 * breakpoint.c (create_tracepoint_from_upload): New function.
6171 (get_tracepoint_by_number_on_target): New function.
6172 * remote.c (struct remote): New field disconnected_tracing.
6173 (remote_disconnected_tracing_feature): New function.
6174 (remote_protocol_features): Add DisconnectedTracing.
6175 (struct uploaded_tp): New struct.
6176 (uploaded_tps): New global.
6177 (get_uploaded_tp): New function.
6178 (find_matching_tracepoint): New function.
6179 (remote_get_tracing_state): New function.
6180 (remote_start_remote): Call it.
6181 * tracepoint.c (disconnected_tracing): New global.
6182 (trace_start_command): Initialize number_on_target.
6183 (stop_tracing): New function, split out from...
6184 (trace_stop_command): Call stop_tracing.
6185 (get_trace_status): New function, split out from...
6186 (trace_status_command): Call get_trace_status, add info on
6187 disconnection behavior.
6188 (disconnect_or_stop_tracing): New function.
6189 (finish_tfind_command): Translate from number on target.
6190 (trace_find_tracepoint_command): Translate to number on target.
6191 (send_disconnected_tracing_value): New function.
6192 (set_disconnected_tracing): New function.
6193 (_initialize_tracepoint): Add disconnected-tracing variable.
6194 * NEWS: Mention disconnected tracing.
6198 * symtab.c (lookup_global_symbol_from_objfile): Rename objfile
6199 parameter to main_objfile. Iterate on all separate debug objfiles.
6200 * symfile.h (symbol_file_add_separate)
6201 (find_separate_debug_file_by_debuglink): Remove parameter names.
6202 * symfile.c (symbol_file_add_separate): Use add_separate_objfile.
6203 (reread_symbols): Use free_objfile_separate_debug.
6204 * objfiles.h (struct objfile): Add separate_debug_objfile_link.
6206 (objfile_separate_debug_iterate, add_separate_debug_objfile)
6207 (free_objfile_separate_debug): New prototypes.
6208 * objfiles.c (objfile_separate_debug_iterate): New function.
6209 (add_separate_debug_objfile, free_objfile_separate_debug): New
6211 (free_objfile): Use free_objfile_separate_debug. Adjust for
6212 multiple separate debug objfile.
6213 (objfile_has_symbols): Adjust comment. Iterate on all separate
6215 * minsyms.c (lookup_minimal_symbol): Adjust for multiple separate
6217 (lookup_minimal_symbol_text): Ditto.
6218 (lookup_minimal_symbol_by_pc_name): Ditto.
6219 (lookup_minimal_symbol_solib_trampoline): Ditto.
6220 (lookup_minimal_symbol_by_pc_section_1): Iterate on all separate
6225 Add fast tracepoints.
6226 * arch-utils.h (default_fast_tracepoint_valid_at): Declare.
6227 * arch-utils.c (default_fast_tracepoint_valid_at): New function.
6228 * breakpoint.h (enum bptype): Add bp_fast_tracepoint.
6229 * breakpoint.c (tracepoint_type): New function.
6230 (ALL_TRACEPOINTS): Use it.
6231 (should_be_inserted): Ditto.
6232 (bpstat_check_location): Ditto.
6233 (print_one_breakpoint_location): Ditto.
6234 (user_settable_breakpoint): Ditto.
6235 (set_breakpoint_location_function): Ditto.
6236 (disable_breakpoints_in_shlibs): Ditto.
6237 (delete_trace_command): Ditto.
6238 (print_it_typical): Add bp_fast_tracepoint case.
6239 (bpstat_what): Ditto.
6240 (print_one_breakpoint_location): Ditto.
6241 (allocate_bp_location): Ditto.
6243 (breakpoint_re_set_one): Ditto.
6244 (disable_command): Ditto.
6245 (enable_command): Ditto.
6246 (check_fast_tracepoint_sals): New function.
6247 (break_command_really): Call it.
6248 (ftrace_command): New function.
6249 (_initialize_breakpoint): Add ftrace command.
6250 * gdbarch.sh (fast_tracepoint_valid_at): New.
6251 * gdbarch.h, gdbarch.c: Regenerate.
6252 * i386-tdep.c (i386_fast_tracepoint_valid_at): New function.
6253 (i386_gdbarch_init): Use it.
6254 * remote.c (struct remote_state): New field fast_tracepoints.
6255 (PACKET_FastTracepoints): New packet config type.
6256 (remote_fast_tracepoint_feature): New function.
6257 (remote_protocol_features): Add FastTracepoints.
6258 (remote_supports_fast_tracepoints): New function.
6259 (_initialize_remote): Add FastTracepoints.
6260 * tracepoint.c (download_tracepoint): Add fast tracepoint option.
6261 * NEWS: Mention fast tracepoints.
6265 * gdb-gdb.py: New file.
6269 * infrun.c (handle_inferior_event): Fix typo in comment.
6273 * symfile.c (syms_from_objfile): Remove the !MAINLINE conditional.
6277 * features/Makefile (WHICH): Add s390-linux32, s390-linux64,
6279 (s390-linux32-expedite): Define.
6280 (s390-linux64-expedite): Define.
6281 (s390x-linux64-expedite): Define.
6282 * features/s390-acr.xml: New file.
6283 * features/s390-fpr.xml: New file.
6284 * features/s390-core32.xml: New file.
6285 * features/s390-core64.xml: New file.
6286 * features/s390x-core64.xml: New file.
6287 * features/s390-linux32.xml: New file.
6288 * features/s390-linux64.xml: New file.
6289 * features/s390x-linux64.xml: New file.
6290 * features/s390-linux32.c: New generated file.
6291 * features/s390-linux64.c: New generated file.
6292 * features/s390x-linux64.c: New generated file.
6294 * regformats/s390-linux32.dat: New generated file.
6295 * regformats/s390-linux64.dat: New generated file.
6296 * regformats/s390x-linux64.dat: New generated file.
6297 * regformats/reg-s390.dat: Remove.
6298 * regformats/reg-s390x.dat: Remove.
6300 * s390-nat.c: Include "auxv.h" and <elf.h>.
6301 (HWCAP_S390_HIGH_GPRS): Define if undefined.
6302 (s390_target_wordsize): New function.
6303 (s390_auxv_parse): Likewise.
6304 (s390_get_hwcap): Likewise.
6305 (s390_read_description): Likewise.
6306 (_initialize_s390_nat): Install s390_auxv_parse and
6307 s390_read_description.
6309 * s390-tdep.c: Include "features/s390-linux32.c",
6310 "features/s390-linux64.c", and "features/s390x-linux64.c".
6311 (struct gdbarch_tdep): Add gpr_full_regnum, pc_regnum, and cc_regnum.
6312 (s390_register_call_saved): New function.
6313 (s390_register_name): Remove.
6314 (s390_register_type): Remove.
6315 (s390_dwarf_regmap): Add lower half GPR pseudo DWARF CFI regnums.
6316 (s390_dwarf_reg_to_regnum): Remap GPR regnums to full GPRs.
6317 (s390_adjust_frame_regnum): Remap GPR regnums to lower halves for CFI.
6318 (s390_pseudo_register_name): New function.
6319 (s390_pseudo_register_type): New function.
6320 (s390_pseudo_register_read): Handle both 32-bit and 64-bit cases.
6321 Handle full GPR pesudos and varying pseudo register numbers.
6322 (s390_pseudo_register_write): Likewise
6323 (s390x_pseudo_register_read): Remove.
6324 (s390x_pseudo_register_write): Likewise.
6325 (s390_register_group): Remove.
6326 (s390_pseudo_register_group): New function.
6327 (s390_regmap_gregset): Add GPR upper halves.
6328 (s390x_regmap_gregset): Likewise.
6329 (s390_regmap_fpregset): Likewise.
6330 (s390_regmap_upper): New global variable.
6331 (s390_upper_regset): New global variable.
6332 (s390_upper_regset_sections): New global variable.
6333 (s390_regset_from_core_section): Handle GPR upper halves.
6334 (s390_core_read_description): New function.
6335 (s390_prologue_frame_unwind_cache): Set up ABI call-saved/clobbered
6336 register information. Handle varying pseudo register numbers.
6337 (s390_backchain_frame_unwind_cache): Likewise.
6338 (s390_frame_prev_register): Unwind full GPRs to show lower halves.
6339 (s390_stub_frame_unwind_cache): Handle varying pseudo register numbers.
6340 (s390_sigtramp_frame_unwind_cache): Unwind PSWM and PSWA as well as
6341 PC and CC pseudos. Unwind upper halves and full GPRs as appropriate.
6342 Handle varying pseudo register numbers.
6343 (s390_unwind_pc): Handle varying pseudo register numbers.
6344 (s390_dwarf2_prev_register): New function.
6345 (s390_dwarf2_frame_init_reg): Set up ABI call-saved/clobbered
6346 register information. Handle varying pseudo register numbers.
6347 Install s390_dwarf2_prev_register to unwind full GPRs.
6348 (s390_gdbarch_init): Handle target descriptions. Assign varying
6349 pseudo register numbers. Install s390_adjust_frame_regnum.
6350 (_initialize_s390_tdep): Initialize target descriptions.
6352 * s390-tdep.h (S390_R0_UPPER_REGNUM .. S390_R15_UPPER_REGNUM): Define.
6353 (S390_NUM_REGS): Redefine to include upper half registers.
6354 (S390_PC_REGNUM, S390_CC_REGNUM): Remove.
6355 (S390_NUM_PSEUDO_REGS, S390_NUM_TOTAL_REGS): Likewise.
6356 (tdesc_s390_linux32): Add declaration.
6357 (tdesc_s390_linux64): Likewise.
6358 (tdesc_s390x_linux64): Likewise.
6362 * regset.h (struct core_regset_section): Add HUMAN_NAME.
6363 * i386-linux-tdep.c (i386_linux_regset_sections): Fill in HUMAN_NAME.
6364 * ppc-linux-tdep.c (ppc_linux_vsx_regset_sections): Likewise.
6365 (ppc_linux_vmx_regset_sections): Likewise.
6366 (ppc_linux_fp_regset_sections): Likewise.
6368 * corelow.c (get_core_register_section): Constify arguments.
6369 (get_core_registers): Use gdbarch_core_regset_sections instead
6370 of hard-coded platform-specific register section names.
6374 * dwarf2loc.c (read_pieced_value): If a piece occupies part of
6375 a register, assume the least-significant part is used.
6376 (write_pieced_value): Likewise.
6380 * printcmd.c: Include "arch-utils.h".
6381 (do_one_display): Re-parse expression if current architecture changed.
6386 * gdbtypes.c (check_typedef): New comment on type length.
6387 * value.c (allocate_value_lazy): Remove the unused atype variable. New
6388 comment on type length.
6389 (value_primitive_field): Keep the original TYPE value, new comment.
6393 * cli/cli-script.c (process_next_line): Rename p1 as p_end and p2 as
6394 p_start. Change != comparisons to > and < comparisons.
6398 * cli/cli-script.c (process_next_line): Check P2 overrun.
6402 Update the copyright hearder to add year 2010 for most GDB files.
6406 Fix build failure in inf-ptrace.c.
6407 * inf-ptrace.c (inf_ptrace_follow_fork): Fix typo.
6411 * top.c (print_gdb_version): Update copyright year.
6415 Fix break *FUN'address thread NUM.
6416 * ada-lex.l (task): Expand rule to also match the thread keyword.
6420 Fix break *FUN'address task NUM.
6421 * ada-lex.l (task): New rule.
6422 * ada-lang.c (valid_task_id): Make sure the Ada task list has
6423 been built before using it.
6425 For older changes see ChangeLog-2009.
6431 version-control: never