3 Use ptid_t.tid to store thread ids instead of ptid_t.pid.
5 * remote.c (magic_null_ptid, not_sent_ptid, any_thread_ptid): New
7 (general_thread, continue_thread): Change type to ptid_t.
8 (record_currthread): Take a ptid_t parameter instead of an
10 (MAGIC_NULL_PID): Delete.
11 (set_thread): Take a ptid_t parameter and adjust.
12 (set_general_thread, set_continue_thread): New.
13 (remote_thread_alive, remote_newthread_step)
14 (remote_current_thread, remote_find_new_threads)
15 (remote_threads_info, remote_start_remote, remote_vcont_resume)
16 (remote_resume_1, remote_wait, extended_remote_create_inferior_1)
17 (threadalive_test, remote_pid_to_str)
18 (remote_get_thread_local_address): Adjust.
19 (_initialize_remote): Initialize magic_null_ptid, not_sent_ptid
24 * configure.ac (--enable-tui): AC_MSG_ERROR for explicit --enable-tui.
25 * configure: Regenerated.
29 * dwarf2read.c (read_attribute_value): Treat size attribute
30 values of 0xffffffff as if the attribute value was zero.
34 * linux-nat.c: Add description of overall logic.
38 * Makefile.in (GNULIB_H): Use GNULIB_STDINT_H.
39 (gdb_stdint_h, gdb_stdint.h, stamp-int): Delete. Remove
40 all dependencies on $(gdb_stdint_h).
41 (distclean): Do not delete gdb_stdint.h.
42 * acinclude.m4: Do not use stdint.m4.
43 * configure.ac: Set GNULIB_STDINT_H. Remove tests for stdint.h,
44 uintptr_t, and gdb_stdint.h.
45 * defs.h: Include <stdint.h>.
46 * gdb_thread_db.h: Assume stdint.h is already included.
47 * breakpoint.c, findcmd.c, hppa-tdep.c, inf-ptrace.c, proc-service.c,
48 rs6000-nat.c, spu-linux-nat.c, target.c, win32-nat.c: Do not
50 * configure, config.in: Regenerate.
54 * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Handle passing
55 decimal floating-point values in GPRs for soft-float.
56 (do_ppc_sysv_return_value): Handle returning decimal
57 floating-point values in GPRs for soft-float.
61 * target.c (target_read_until_error): New.
62 * target.h (target_read_until_error): Declare.
63 * mi/mi-main.c (mi_cmd_data_read_memory): Use
64 target_read_until_error.
69 * c-exp.y (parse_number): Move the S and SAVED_CHAR initialization
70 after the DECFLOAT detection to fix a memory leak. Remove the
71 redundant NUM initialization. Protect the DECFLOAT detection memory
72 access before the P block. Restore the P memory content for the
77 Kill the return value for all MI command functions.
78 * mi/mi-cmds.h (enum mi_cmd_result): Remove.
79 (mi_cmd_argv_ftype): Change return type to void.
81 * mi/mi-main.c: Adjust all function that implement
82 MI commands to return nothing.
83 (struct captured_mi_execute_command_actions):
85 (mi_cmd_execute): Return nothing.
86 (mi_execute_async_cli_command): Return nothing.
87 (mi_cmd_exec_interrupt): Don't print ^done here.
88 (mi_cmd_target_select): Don't print ^connected here.
89 (captured_mi_execute_command): Don't check for MI_CMD_DONE.
90 Special-case -target-select and output ^connected, not ^done.
92 * mi/mi-cmd-break.c: Adjust.
93 * mi/mi-cmd-disas.c: Adjust.
94 * mi/mi-cmd-env.c: Adjust.
95 * mi/mi-cmd-file.c: Adjust.
96 * mi/mi-cmd-stack.c: Adjust.
97 * mi/mi-cmd-target.c: Adjust.
98 * mi/mi-cmd-var.c: Adjust.
99 * mi/mi-interp.c: Adjust.
100 * mi/mi-symbol-cmds.c: Adjust.
104 Emit ^running via observer.
105 * mi/mi-interp.c (mi_cmd_interpreter_exec): Do no print
107 (mi_on_resume): Print ^running if not previously output.
108 * mi/mi-main.c (running_result_record_printed): New.
109 (captured_mi_execute_command): Reset
110 running_result_record_printed. Use running_result_record_printed
111 to decide if we should skip ^done.
112 (mi_execute_async_cli_command): Don't print ^running here.
113 * mi/mi-main.h (current_token, running_result_record_printed):
118 * infrun.c (_initialize_infrun): White space and typo fix.
122 * win32-nat.c (safe_symbol_file_add_stub): Remove unused variable.
123 (do_initial_win32_stuff): Fix problem with inability to set breakpoints
124 when first loading DLL with "dll" command.
128 * gnu-nat.c (proc_string): Use capital T for "Thread".
132 * win32-nat.c (win32_pid_to_str): Use capital T for "Thread".
136 * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
137 the target cannot run.
141 * solib-osf.c (osf_solib_create_inferior_hook): Do nothing if
142 we're attaching to a running process.
146 * win32-nat.c (handle_load_dll): Give dll name and load address
147 if debug_events is on.
148 (handle_unload_dll): Likewise.
152 Don't suppress *running when doing finish.
153 * infcall.c (call_function_by_hand): Set both
154 suppress_resume_observer and suppress_stop_observer.
155 * infcmd.c (suppress_run_stop_observers): Split into...
156 (suppress_resume_observer, suppress_stop_observer): ...those.
157 (finish_command_continuation): Clear suppress_stop_observer.
158 (finish_command): Set suppress_stop_observer.
159 * inferior.h (suppress_run_stop_observers): Split into...
160 (suppress_resume_observer, suppress_stop_observer): ...those.
161 * infrun.c (normal_stop): Check for suppress_stop_observer.
162 * thread.c (set_running): Check for suppress_resume_observer.
167 * gdbarch.sh (gdbarch_skip_main_prologue): New.
168 * gdbarch.h, gdbarch.c: Regenerate.
169 * i386-tdep.h (i386_skip_main_prologue): Declare.
170 * i386-tdep.c (i386_skip_main_prologue): New.
171 * i386-cygwin-tdep.c (i386_cygwin_init_abi): Register
172 i386_skip_main_prologue as gdbarch_skip_main_prologue gdbarch callback.
173 * symtab.c (find_function_start_sal): When pc points at the "main"
174 function, call gdbarch_skip_main_prologue.
178 * value.c (value_primitive_field): Fetch lazy register values.
182 * NEWS: Mention support removal of undocumented S AA p PID stop
185 * remote.c (remote_wait): Remove undocumented S AA p PID support.
189 * MAINTAINERS: Update my affiliation and address.
193 * top.c (print_gdb_version): Don't print final newline.
198 * Makefile.in: Update dependencies.
199 * gdbthread.h (struct thread_info): New field
201 (set_running, is_running): New.
202 * thread.c (set_running, is_running): New.
203 * inferior.h (suppress_normal_stop_observer): Rename to...
204 (suppress_run_stop_observers): ..this.
205 * infcmd.c (suppress_normal_stop_observer): Rename to...
206 (suppress_run_stop_observers): ..this.
207 (finish_command_continuation, finish_command): Adjust.
208 * infcall.c (call_function_by_hand): Adjust.
209 * infrun.c (normal_stop): Call set_running.
210 * target.c (target_resume): New. Call set_running.
211 * target.h (target_resume): Convert from macro to
214 * mi/mi-interp.c (mi_on_resume): New.
215 (mi_interpreter_init): Register mi_on_resume.
219 Use observers to report stop events in MI.
220 * mi/mi-interp.c (mi_on_normal_stop): New.
221 (mi_interpreter_init): Register mi_on_normal_stop.
222 (mi_interpreter_exec_continuation): Remove.
223 (mi_cmd_interpreter_exec): Don't register the above.
224 * mi/mi-main.c (captured_mi_execute_command): Don't care
225 about sync_execution.
226 (mi_execute_async_cli_command): Don't install continuation. Don't
228 (mi_exec_async_cli_cmd_continuation): Remove.
232 Suppress normal stop observer when it's problematic.
233 * inferior.h (suppress_normal_stop_observer): New.
234 * infcall.c (call_function_by_hand): Disable stop events when
235 doing function calls.
236 * infmcd.c (suppress_normal_stop_observer): New.
237 (finish_command_continuation): Call normal_stop observer
239 (finish_command): Disable stop events inside proceed.
240 * infrun.c (normal_stop): Don't call normal stop observer if
241 suppressed of if multi-step is in progress.
246 * infrun.c (finish_command): Don't pass cleanup
248 (finish_command_continuation): Don't grab cleanup from
249 the passed data, as we don't use, and cannot, use it anyway.
253 Introduce common cleanup for restoring integers.
254 * defs.h (make_cleanup_restore_integer): New declaration.
255 (struct cleanup): New field free_arg.
256 (make_my_cleanup_2): New.
257 * utils.c (restore_integer_closure, restore_integer)
258 (make_cleanup_restore_integer): New.
259 (make_my_cleanup): Initialize the free_arg field and
260 renamed to make_my_cleanup_2.
261 (do_my_cleanups): Call free_arg.
262 (discard_cleanups): Call free_arg.
263 * breakpoint.c (restore_always_inserted_mode): Remove.
264 (update_breakpoints_after_exec): Use make_cleanup_restore_integer.
268 * remote.c (remote_wait): Include beginning of malformed packet
273 * completer.c (complete_line): Don't special-case
274 expression_completer.
275 (expression_completer): Only pass last word to
277 * c-exp.y (yylex): Check 'token', not 'operator'.
281 * configure.ac (build_warnings): Add -Wno-format for mingw.
282 * configure: Regenerated.
286 * NEWS: Make indentation consistent. Move exec tracing entry out
287 of remote packet list.
291 * value.h (evaluate_subexpression_type, extract_field_op):
293 * printcmd.c (_initialize_printcmd): Use expression_completer for
294 'p', 'inspect', 'call'.
295 * parser-defs.h (parse_field_expression): Declare.
296 * parse.c: Include exceptions.h.
297 (in_parse_field, expout_last_struct): New globals.
298 (mark_struct_expression): New function.
299 (prefixify_expression): Return int.
300 (prefixify_subexp): Return int. Use expout_last_struct.
301 (parse_exp_1): Update.
302 (parse_exp_in_context): Add 'out_subexp' argument. Handle
304 (parse_field_expression): New function.
305 * expression.h (parse_field_expression): Declare.
306 (in_parse_field): Likewise.
307 * eval.c (evaluate_subexpression_type): New function.
308 (extract_field_op): Likewise.
309 * completer.h (expression_completer): Declare.
310 * completer.c (expression_completer): New function.
311 (count_struct_fields, add_struct_fields): New functions.
312 * c-exp.y (yyparse): Redefine.
313 (COMPLETE): New token.
314 (exp): New productions.
315 (saw_name_at_eof, last_was_structop): New globals.
316 (yylex): Return COMPLETE when needed. Recognize in_parse_field.
317 (c_parse): New function.
318 * breakpoint.c (_initialize_breakpoint): Use expression_completer
319 for watch, awatch, and rwatch.
320 * Makefile.in (parse.o): Depend on exceptions_h.
325 * gdb/valopts.c (find_overload_match): Handle references
330 * ada-lang.c (ada_value_assign): Correct big-endian case to take into
331 account the bitsize of the 'from' operand.
335 * annotate.h (annotate_thread_changed): Declare.
339 * annotate.c (annotate_thread_changed): New function.
340 * thread.c (thread_command) : Use it.
341 * infrun.c (normal_stop): Use it.
347 * acinclude.m4: Include ../config/acx.m4.
348 * configure.ac: Use ACX_PKGVERSION and ACX_BUGURL.
349 * configure, config.in: Regenerate.
350 * main.c (print_gdb_help): Use REPORT_BUGS_TO for bug-reporting
352 * top.c (print_gdb_version): Use PKGVERSION and REPORT_BUGS_TO.
356 Replace 'target async' by 'maintenance set remote-async' and
357 'target remote' combination.
359 * remote.c (remote_async_wait): Merge into remote_wait, and
361 (remote_async_permitted, remote_async_permitted_set): New
363 (set_maintenance_remote_async_permitted)
364 (show_maintenance_remote_async_permitted): New functions.
365 (remote_async_ops, extended_async_remote_ops): Delete.
366 (remote_async_open, extended_remote_async_open): Delete.
367 (remote_open_1): Drop async_p parameter. Update callers. Replace
368 async_p with remote_async_permitted checks.
369 (extended_async_remote_attach): Delete.
370 (remote_resume, remote_async_resume): Merge and leave remote_resume.
371 (remote_async_terminal_inferior): Rename to...
372 (remote_terminal_inferior): ... this, and add
373 remote_async_termitted check.
374 (remote_async_terminal_ours): Rename to...
375 (remote_terminal_ours): ... this, and add remote_async_termitted
377 (remote_wait, remote_async_wait): Merge and leave remote_wait
379 (remote_kill, remote_async_kill): Merge and leave remote_kill
381 (remote_async_mourn, extended_async_remote_mourn): Delete.
382 (extended_remote_create_inferior_1): Drop async_p parameter.
383 Update callers. Always use extended_remote_ops.
384 (extended_remote_async_create_inferior): Delete.
385 (remote_return_zero): Delete.
386 (init_remote_ops): Register remote_can_async_p, remote_async,
387 remote_async_mask, remote_terminal_inferior and
388 remote_terminal_ours.
389 (remote_can_async_p, remote_is_async_p): Check for
390 remote_async_permitted.
391 (init_remote_async_ops, init_extended_async_remote_ops): Remove.
392 (set_remote_cmd): Don't add async and extended-async targets.
393 (_initialize_remote): Add set/show remote-async maintenance
398 * remote.c (kill_kludge): Delete.
399 (remote_wait, remote_async_wait): Don't set it.
400 (remote_kill, remote_async_kill): Don't do anything with it.
404 * linux-thread-db.c (thread_db_wait): Don't trim event ptid.
408 * bcache.c (bcache_data): Call deprecated_bcache_added function.
409 (deprecated_bcache_added): New function name. Body of function
410 bcache_data is used here with the addition of 'added' argument.
411 * bcache.h (deprecated_bcache_added): New function.
412 * symfile.c (add_psymbol_to_bcache): New helper function, takes part of
413 work from add_psymbol_to_list - initialises partial symbol and stashes
414 it in objfile's cache.
415 (append_psymbol_to_list): New helper function, takes other part of
416 work from add_psymbol_to_list - adds partial symbol to the given list.
417 (add_psymbol_to_list): Call helper functions instead of doing work
418 here. If adding to global list, do not duplicate partial symbols in the
423 * breakpoint.c (print_exception_catchpoint): Put 'exception' back to
424 'exception caught|thrown' message.
428 * Makefile.in: Update dependencies.
429 * dwarf2expr.c: New include "gdb_assert.h".
430 (new_dwarf_expr_context): Initialize MAX_RECURSION_DEPTH.
431 (dwarf_expr_eval): Sanity check the RECURSION_DEPTH count.
432 (execute_stack_op): Error out on too large RECURSION_DEPTH.
433 Increase/decrease RECURSION_DEPTH around the function.
437 * remote.c (get_offsets): Handle a single segment.
438 * symfile.c (symfile_map_offsets_to_segments): Allow more bases
443 * solib-svr4.c (struct lm_info): Add lm_addr.
445 (svr4_default_sos): Set lm_addr.
446 (svr4_current_sos): Set lm_addr and main_lm_addr.
447 (svr4_fetch_objfile_link_map): Rewrite.
448 (svr4_clear_solib): Clear main_lm_addr.
453 * mips-tdep.c (mips_eabi_return_value): Replace stub that always
454 returned RETURN_VALUE_STRUCT_CONVENTION with a real function.
458 * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Fix incorrect test.
462 * m68k-tdep.c (m68k_analyze_prologue): Fix length of lea insn.
466 * rs6000-aix-tdep.c (rs6000_convert_from_func_ptr_addr): Do not
467 treat pointers in data space as function descriptors if the
468 target address is also in the data space.
472 * alpha-tdep.c (alpha_heuristic_frame_unwind_cache): Set
473 the trad-frame register value for the SP register.
477 * sparcnbsd-tdep.c, sparcobsd-tdep.c: Update for unwinder changes.
481 * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Improve the heuristic
482 that identifies function descriptors outside of the .opd section.
486 * breakpoint.c (print_exception_catchpoint): In CLI add 'Temporary' for
487 temporary catchpoints. In MI add missing fields 'reason', 'disp',
489 (print_mention_exception_catchpoint): Add 'Temporary' for temporary
491 (handle_gnu_v3_exceptions): Use tempflag.
495 Refactor varobj_update interface.
496 * varobj.c (varobj_update): Report changes as vector. Also
497 return not just a list of varobj, but a list of special structures
498 that tell what exactly has changed.
499 * varobj.h (enum varobj_update_error): Rename to
501 (struct varobj_update_result_t): New.
502 (varobj_update): Adjust prototype.
503 * mi/mi-cmd-var.c: Adjust for changes.
507 * varobj.c (varobj_update): Fix comment typo.
512 Set the symtab field of symbols read from ECOFF debugging entries.
513 * mdebugread.c (add_symbol): Add new parameter symtab.
514 (parse_symbol): Update calls to add_symbol throughout.
518 * symtab.h (enum address_class): Remove LOC_REGPARM and
520 (struct symbol): Add is_argument.
521 (SYMBOL_IS_ARGUMENT): Define.
523 * ada-lang.c (ada_add_block_symbols): Use SYMBOL_IS_ARGUMENT.
524 * buildsym.c (finish_block): Likewise.
525 * stack.c (print_frame_args, print_block_frame_locals)
526 (print_frame_arg_vars): Likewise.
527 * symtab.c (lookup_block_symbol): Likewise.
528 * tracepoint.c (add_local_symbols): Likewise.
529 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
531 * coffread.c (process_coff_symbol): Set SYMBOL_IS_ARGUMENT.
532 * dwarf2read.c (new_symbol): Likewise.
533 * mdebugread.c (parse_symbol): Likewise.
534 * stabsread.c (define_symbol): Likewise.
536 * ada-exp.y (select_possible_type_sym): Don't handle LOC_REGPARM
537 and LOC_COMPUTED_ARG.
538 * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
539 * ax-gdb.c (gen_var_ref): Likewise.
540 * eval.c (evaluate_subexp_for_address): Likewise.
541 * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
542 * m2-exp.y (yylex): Likewise.
543 * printcmd.c (address_info): Likewise.
544 * symmisc.c (print_symbol, print_partial_symbols): Likewise.
545 * tracepoint.c (collect_symbol, scope_info): Likewise.
549 * gdbarch.sh: Added new gdbarch struct
550 core_regset_sections.
551 * gdbarch.c: Refreshed.
552 * gdbarch.h: Refreshed.
553 * regset.h (core_regset_section): Declared.
554 * linux-nat.c (linux_nat_do_thread_registers): Added
555 support for the new gdbarch struct core_regset_sections.
556 * utils.c (host_address_to_string): New function.
557 * defs.h (host_address_to_string): New prototype.
558 * i386-linux-tdep.c (i386_regset_rections): New register
559 sections list for i386.
560 (i386_linux_init_abi): Initialized new gdbarch struct
561 core_regset_sections.
562 * Makefile.in: Updated to reflect dependency changes.
563 * ppc-linux-tdep.c (ppc_regset_sections): Register
564 sections list for ppc.
565 (ppc_linux_init_abi): Initialized new gdbarch struct
570 * linespec.c (decode_objc): Save current language around call to
575 * valprint.h (get_array_bounds): Renames get_array_low_bound.
576 * valprint.c (get_array_bounds): Renames get_array_low_bound.
577 Return the proper bound value if the array index type is an
578 enumerated type. Compute the high bound if requested.
579 (val_print_array_elements): Handle the case when the array
580 element has a null size.
581 * ada-valprint.c (print_optional_low_bound): Add handling
582 for empty arrays or arrays of zero-size elements.
583 (ada_val_print_array): New function, extracted out from
584 ada_val_print_1 case TYPE_CODE_ARRAY, and enhanced to
585 handle empty arrays and arrays of zero-size elements.
586 (ada_val_print_1)[case TYPE_CODE_ARRAY]: Replace extracted-out
587 code by call to ada_val_print_array.
588 (ada_value_print): Remove handling of null array. The handling
589 was incomplete and is now better handled by ada_val_print_array.
593 * annotate.c (annotate_source, annotate_frame_begin): Replace
594 deprecated_print_address_numeric with paddress.
595 * cli/cli-cmds.c (list_command, edit_command): Likewise.
596 * tui/tui-stack.c (tui_make_status_line): Likewise.
598 * defs.h (deprecated_print_address_numeric): Remove.
599 * printcmd.c (deprecated_print_address_numeric): Remove.
600 * maint.c (maint_print_section_info): Fix comment.
604 * valprint.c (print_hex_chars, print_octal_chars, print_decimal_chars,
605 print_binary_chars, print_char_chars): Add byte_order parameter and
606 replace gdbarch_byte_order.
607 (print_decimal_chars): Replace START_P, NOT_END_P and NEXT_P by their
608 expressions and remove them. Remove unused TWO_TO_FOURTH.
609 (val_print_type_code_int): Introduce gdbarch_byte_order to get at the
610 endianness. Update call to print_hex_chars.
611 * valprint.h (print_hex_chars, print_octal_chars, print_decimal_chars,
612 print_binary_chars, print_char_chars): Add byte_order parameter.
613 * printcmd.c (print_scalar_formatted): Introduce gdbarch_byte_order to
614 get at the endianness. Update print_*_char calls to use byte_order.
618 * symtab.h (struct symbol): Make "aux_value" member a void pointer
620 (SYMBOL_LOCATION_BATON): Update.
624 * symtab.h (enum address_class): Remove LOC_BASEREG and
626 (struct symbol): Remove "basereg" member of "aux_value" union.
627 (SYMBOL_BASEREG): Remove.
629 * ada-exp.y (select_possible_type_sym): Do not handle LOC_BASEREG
631 * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
632 (ada_add_block_symbols): Likewise.
633 * ax-gdb.c (gen_var_ref): Likewise.
634 * buildsym.c (finish_block): Likewise.
635 * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
636 * m2-exp.y (yylex): Likewise.
637 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
638 * printcmd.c (address_info): Likewise.
639 * stack.c (print_frame_args, print_block_frame_locals): Likewise.
640 (print_frame_arg_vars): Likewise.
641 * symmisc.c (print_symbol): Likewise.
642 * symtab.c (lookup_block_symbol): Likewise.
643 * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
644 (scope_info): Likewise.
648 * symtab.h (enum address_class): Remove LOC_LOCAL_ARG.
650 * ada-exp.y (select_possible_type_sym): Do not handle LOC_LOCAL_ARG.
651 * ada-lang.c (resolve_subexp, symtab_for_sym): Likewise.
652 (ada_add_block_symbols): Likewise.
653 * ax-gdb.c (gen_var_ref): Likewise.
654 * buildsyms.c (finish_block): Likewise.
655 * findvar.c (symbol_read_needs_frame, read_var_value): Likewise.
656 * m2-exp.y (yylex): Likewise.
657 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
658 * printcmd.c (address_info): Likewise.
659 * stack.c (print_frame_args, print_frame_arg_vars): Likewise.
660 * symmisc.c (print_symbol, print_partial_symbols): Likewise.
661 * symtab.c (lookup_block_symbol): Likewise.
662 * tracepoint.c (collect_symbol, add_local_symbols): Likewise.
663 (scope_info): Likewise.
667 * symtab.h (enum address_class): Remove LOC_INDIRECT and
668 LOC_HP_THREAD_LOCAL_STATIC.
670 * findvar.c (symbol_read_needs_frame, read_var_value): Do not
671 handle LOC_INDIRECT or LOC_HP_THREAD_LOCAL_STATIC.
672 (read_var_value): Likewise.
673 * buildsym.c (finish_block): Likewise.
674 * objfiles.c (objfile_relocate): Likewise.
675 * printcmd.c (address_info): Likewise.
676 * symmisc.c (print_symbol, print_partial_symbols): Likewise.
677 * tracepoint.c (scope_info): Likewise.
682 * xtensa-tdep.c (xtensa_read_register): Remove.
683 (xtensa_frame_cache): Get rid of xtensa_read_register. Pass extra
684 argument litbase to call0_frame_cache().
685 (call0_track_op, call0_analyze_prologue)
686 (call0_frame_cache): Use extra argument litbase.
690 * infcmd.c (_initialize_infcmd): Add new "fin" alias for "finish".
694 * frame.h (SIZEOF_FRAME_SAVED_REGS): Remove.
698 * alpha-mdebug-tdep.c: Include "trad-frame.h".
699 (struct alpha_mdebug_unwind_cache): Change type of SAVED_REGS to
700 struct trad_frame_saved_reg *.
701 (alpha_mdebug_frame_unwind_cache): Allocate SAVED_REGS using
702 trad_frame_alloc_saved_regs. Update accesses. Record previous
703 value of SP as being vfp.
704 (alpha_mdebug_frame_prev_register): Use trad_frame_get_prev_register.
705 * Makefile.in (alpha-mdebug-tdep.o): Update dependencies.
709 * score-tdep.c (score_print_insn): Get the current endianess from
710 disassemble_info instead of gdbarch_byte_order.
714 * frame.c (get_prev_frame_1): Build frame id before setting
715 this_frame->prev_p, not after.
719 * annotate.c (annotate_new_thread): New function for new-thread
721 * annotate.h: (annotate_new_thread): New extern.
722 * thread.c (add_thread_with_info): Use it.
723 * Makefile.in (thread.o): Add dependency on annotate.h.
727 * win32-nat.c (win32_wait): Block the control-c event while
728 waiting for a debug event.
732 * symtab.h (lookup_symbol_in_language): Update comment.
733 * symtab.c (lookup_symbol_aux_block): Update comment.
734 * ada-lang.c (ada_lookup_symbol_list): Update comment.
738 * symtab.h (lookup_symbol_in_language): Remove SYMTAB parameter.
739 (lookup_symbol): Likewise.
740 * symtab.c (lookup_symbol_in_language): Remove SYMTAB parameter.
741 (lookup_symbol): Likewise.
742 (search_symbols): Update.
744 * linespec.c (find_methods, collect_methods): Update.
745 (add_matching_methods, add_constructors): Update.
746 (decode_compound, decode_dollar, decode_variable): Update.
747 (lookup_prefix_sym): Update.
749 (symbol_found): Remove SYM_SYMTAB parameter.
750 Use SYMBOL_SYMTAB (sym) instead.
752 * gdbtypes.c (lookup_typename): Update.
753 (lookup_struct, lookup_union, lookup_enum): Update.
754 (lookup_template_type): Update.
755 (check_typedef): Update.
756 * language.c (lang_bool_type): Update.
757 * mdebugread.c (parse_procedure): Update.
758 * mi/mi-cmd-stack.c (list_args_or_locals): Update.
759 * parse.c (write_dollar_variable): Update.
760 * printcmd.c (address_info): Update.
761 * source.c (select_source_symtab): Update.
762 * stack.c (print_frame_args, print_frame_arg_vars): Update.
763 * valops.c (find_function_in_inferior): Update.
764 (value_struct_elt_for_reference): Update.
765 * value.c (value_static_field, value_fn_field): Update.
767 * alpha-mdebug-tdep.c (find_proc_desc): Update.
768 * arm-tdep.c (arm_skip_prologue): Update.
769 * mt-tdep.c (mt_skip_prologue): Update.
770 * xstormy16-tdep.c (xstormy16_skip_prologue): Update.
772 * ada-lang.h (struct ada_symbol_info): Remove SYMTAB member.
773 * ada-lang.c (ada_add_block_symbols): Remove SYMTAB parameter.
774 (add_defn_to_vec): Likewise.
775 (ada_add_block_symbols): Likewise.
776 (lookup_cached_symbol, cache_symbol): Likewise.
777 (standard_lookup): Update.
778 (ada_lookup_symbol_list): Update.
780 * c-valprint.c (c_val_print): Update.
781 * cp-support.c (cp_lookup_rtti_type): Update.
782 * jv-lang.c (java_lookup_class, get_java_object_type): Update.
783 * objc-lang.c (lookup_struct_typedef, find_imps): Update.
784 * p-valprint.c (pascal_val_print): Update.
785 * scm-lang.c (scm_lookup_name): Update.
791 * objc-exp.y: Update.
796 * language.h (struct language_defn): Remove SYMTAB parameter from
797 la_lookup_symbol_nonlocal callback function pointer.
799 * ada-lang.h (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
800 (ada_lookup_encoded_symbol): Likewise.
801 * ada-lang.c (ada_lookup_encoded_symbol): Remove SYMTAB parameter.
802 Always call fixup_symbol_section.
803 (ada_lookup_symbol): Remove SYMTAB parameter.
804 (ada_lookup_symbol_nonlocal): Likewise.
805 * ada-exp.y (write_object_renaming): Update.
806 (find_primitive_type): Likewise.
808 * cp-support.h (cp_lookup_symbol_nonlocal): Remove SYMTAB parameter.
809 (cp_lookup_symbol_namespace): Likewise.
810 * cp-namespace.c (lookup_namespace_scope): Remove SYMTAB parameter.
811 (lookup_symbol_file): Likewise.
812 (lookup_possible_namespace_symbol): Likewise.
813 (cp_lookup_symbol_nonlocal): Likewise.
814 (cp_lookup_symbol_namespace): Likewise.
815 (cp_lookup_nested_type): Update.
817 * scm-valprint.c (scm_inferior_print): Update.
818 * valops.c (value_maybe_namespace_elt): Update.
820 * solist.h (struct target_so_ops): Remove SYMTAB parameter from
821 lookup_lib_global_symbol callback function pointer.
822 (solib_global_lookup): Remove SYMTAB parameter.
823 * solib.c (solib_global_lookup): Remove SYMTAB parameter.
824 * solib-svr4.c (elf_lookup_lib_symbol): Likewise.
826 * symtab.h (basic_lookup_symbol_nonlocal): Remove SYMTAB parameter.
827 (lookup_symbol_static): Likewise.
828 (lookup_symbol_global): Likewise.
829 (lookup_symbol_aux_block): Likewise.
830 (lookup_global_symbol_from_objfile): Likewise.
831 * symtab.c (lookup_symbol_aux): Remove SYMTAB parameter.
832 (lookup_symbol_aux_local): Likewise.
833 (lookup_symbol_aux_block): Likewise.
834 (lookup_symbol_aux_symtabs): Likewise.
835 (lookup_symbol_aux_psymtabs): Likewise.
836 (lookup_global_symbol_from_objfile): Likewise.
837 (basic_lookup_symbol_nonlocal): Likewise.
838 (lookup_symbol_static): Likewise.
839 (lookup_symbol_global): Likewise.
841 (lookup_symbol_in_language): Do not pass SYMTAB to lookup_symbol_aux.
845 * remote.c (init_extended_remote_ops): Fix typo.
849 * NEWS: Mention new DICOS x86 target configuration.
854 * minsyms.c (lookup_minimal_symbol_by_pc_name): New function.
855 * symtab.h (lookup_minimal_symbol_by_pc_name): Add prototype.
857 * symtab.c (fixup_section): Remove prototype. Add ADDR parameter;
858 use it instead of ginfo->value.address. Look up minimal symbol by
859 address and name. Assume OBJFILE is non-NULL.
860 (fixup_symbol_section): Ensure we always have an objfile to look
861 into. Extract and pass to fixup_section the symbol's address that
862 will match the minimal symbol's address.
863 (fixup_psymbol_section): Likewise.
865 (find_pc_sect_psymtab): Fall back to non-addrmap case when debugging
866 overlays and the addrmap returned the wrong section.
868 * dwarf2read.c (var_decode_location): Set SYMBOL_CLASS before
869 calling fixup_symbol_section.
873 * minsyms.c: Include "target.h".
874 (find_solib_trampoline_target): Handle minimal symbols pointing
875 to function descriptors as well.
876 * Makefile.in (minsyms.o): Update dependencies.
878 * ppc-linux-tdep.c (ppc64_standard_linkage): Rename to ...
879 (ppc64_standard_linkage1): ... this. Fix optional instructions.
880 (PPC64_STANDARD_LINKAGE_LEN): Rename to ...
881 (PPC64_STANDARD_LINKAGE1_LEN): ... this.
882 (ppc64_standard_linkage2, ppc64_standard_linkage3): New.
883 (PPC64_STANDARD_LINKAGE2_LEN, PPC64_STANDARD_LINKAGE3_LEN): New.
884 (ppc64_standard_linkage_target): Rename to ...
885 (ppc64_standard_linkage1_target): ... this.
886 (ppc64_standard_linkage2_target, ppc64_standard_linkage3_target): New.
887 (ppc64_skip_trampoline_code): Support three variants of standard
888 linkage stubs. Call find_solib_trampoline_target to handle
893 * ppc-linux-tdep.c (ppc_linux_init_abi): Do not install
894 ppc64_sysv_abi_adjust_breakpoint_address.
895 * ppc-sysv-tdep.c (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
896 * ppc-tdep.h (ppc64_sysv_abi_adjust_breakpoint_address): Remove.
900 * ppc-linux-tdep.c (ppc_linux_skip_trampoline_code): Remove.
901 (ppc_linux_init_abi): Install find_solib_trampoline_target instead
902 of ppc_linux_skip_trampoline_code.
906 * gdbarch.sh: Delete dwarf_reg_to_regnum.
907 * gdbarch.c, gdbarch.h: Regenerated.
908 * amd64-tdep.c, arm-tdep.c, h8300-tdep.c, hppa-linux-tdep.c,
909 hppa-tdep.c, i386-tdep.c, m32c-tdep.c, m68k-tdep.c, mips-tdep.c,
910 s390-tdep.c, xtensa-tdep.c: Do not set dwarf_reg_to_regnum.
914 * linux-nat.c (trap_ptid): Delete.
915 (linux_nat_detach, linux_nat_wait, linux_nat_mourn_inferior):
917 * linux-thread-db.c (thread_db_wait): Adjust.
921 * linespec.c (decode_line_1): Fix a couple of comments.
925 * dbxread.c: Formatting.
926 (INTERNALIZE_SYMBOL): Init n_other.
927 (set_namestring): Take pointer to nlist arg rather than struct
928 copy. Update all callers.
932 * Makefile.in (dwarf2loc.o): Remove $(addrmap_h).
933 (dwarf2read.o): Add $(addrmap_h).
937 * ppc-linux-tdep.c (ppc_linux_convert_from_func_ptr_addr): Rename ...
938 (ppc64_linux_convert_from_func_ptr_addr): ... to this. No longer try
939 to handle ppc32 PLT entries.
940 (ppc_linux_init_abi): Install ppc64_linux_convert_from_func_ptr_addr
945 * elfread.c (elf_symtab_read): Create trampolines for @plt symbols.
946 * minsyms.c (lookup_minimal_symbol_by_pc_section_1): Renamed from
947 lookup_minimal_symbol_by_pc_section. Prefer trampolines if requested.
948 (lookup_minimal_symbol_by_pc_section): Use
949 lookup_minimal_symbol_by_pc_section_1.
950 (lookup_solib_trampoline_symbol_by_pc): Likewise.
954 * findcmd.c: Add #include "gdb_stdint.h".
955 * Makefile.in (findcmd.o): Update dependencies.
959 * sparc-linux-tdep.c (sparc32_linux_init_abi): Remove
960 long double size override, Linux does use 128-bit now.
962 * sparc-linux-tdep.c (PSR_SYSCALL): Define.
963 (sparc_linux_write_pc): New function.
964 (sparc32_linux_init_abi): Register it.
965 * sparc64-linux-tdep.c (TSTATE_SYSCALL): Define.
966 (sparc64_linux_write_pc): New function.
967 (sparc64_linux_init_abi): Register it.
969 * sparc-linux-tdep.c, sparc64-linux-tdep.c: Use
970 dwarf2_append_unwinders(), not dwarf2_frame_sniffer.
974 * rs6000-tdep.c (rs6000_gdbarch_init): Set up info.target_desc
975 and info.tdep_info before calling gdbarch_init_osabi.
979 * ada-lang.c (ada_evaluate_subexp) [BINOP_ASSIGN]: Do not force
980 the type of the right hand side of the assignment to the type
981 of the left hand side if the left hand side is a convenience
986 * NEWS: Mention gdbserver bi-arch capability.
991 * NEWS: Document find command and qSearch:memory packet.
992 * Makefile.in (SFILES): Add findcmd.c.
993 (COMMON_OBJS): Add findcmd.o.
994 (findcmd.o): New rule.
995 * findcmd.c: New file.
996 * target.h (target_ops): New member to_search_memory.
997 (simple_search_memory): Declare.
998 (target_search_memory): Declare.
999 * target.c (simple_search_memory): New fn.
1000 (target_search_memory): New fn.
1001 * remote.c (PACKET_qSearch_memory): New packet kind.
1002 (remote_search_memory): New fn.
1003 (init_remote_ops): Init to_search_memory.
1004 (init_extended_remote_ops): Ditto.
1005 (_initialize_remote): Add qSearch:memory packet config command.
1009 * thread.c (_initialize_thread): Don't use commas and periods in
1010 first line of doc string of "set/show print thread-events".
1014 * alpha-mdebug-tdep.c, alpha-osf1-tdep.c, alpha-tdep.c:
1015 Update for unwinder changes.
1019 * frame.c (get_frame_base_address, get_frame_locals_address)
1020 (get_frame_args_address): Pass the correct frame when calling
1021 frame_base_find_by_frame.
1025 * remote.c (extended_remote_attach_1): Call target_find_description.
1029 * remote.c (extended_remote_create_inferior_1): Clean up
1030 before marking the target running.
1034 * hppa-tdep.h, hppa-tdep.c, hppa-hpux-tdep.c: Update for unwinder
1039 * sparc-tdep.c, sparc-tdep.h, sparc-sol2-tdep.c, sparc64-tdep.c,
1040 sparc64-sol2-tdep.c: Update for unwinder changes.
1044 * cp-support.c (mangled_name_to_comp): Initialize storage.
1045 (unqualified_name_from_comp): Likewise.
1049 * remote.c (remote_insert_breakpoint): Call get_remote_state
1050 after gdbarch_breakpoint_from_pc is called.
1051 (remote_insert_hw_breakpoint): Likewise.
1055 * valprint.c (val_print): Add new language parameter and use it
1056 instead of using the current_language. Update calls to val_print
1058 (common_val_print): Add new langauge parameter and pass it to
1060 * value.h (struct language_defn): Add opaque declaration.
1061 (val_print, common_val_print): Update declarations.
1062 * stack.c (print_frame_args): Update call to common_val_print
1063 using the appropriate language.
1064 * mi/mi-cmd-stack.c (list_args_or_locals): Likewise.
1065 * c-valprint, f-valprint.c, m2-valprint.c, mt-tdep.c, infcmd.c,
1066 mi/mi-main.c, jv-valprint.c, ada-valprint.c, varobj.c, p-valprint.c,
1067 scm-valprint.c, cp-valprint.c, sh64-tdep.c, printcmd.c:
1068 #include "language.h" if necessary.
1069 Update calls to val_print and common_val_print.
1070 * Makefile.in (mt-tdep.o, sh64-tdep.o, mi-cmds.o, mi-main.o):
1071 Update dependencies.
1075 * ia64-tdep.c (ia64_convert_from_func_ptr_addr): Treat addresses
1076 pointing inside a non-executable section as function descriptors.
1080 * inf-loop.c (inferior_event_handler): Run all continuations and
1081 print any language change before running the breakpoint commands.
1085 * frame-unwind.c (frame_unwind_got_bytes): New function.
1086 * frame-unwind.h (frame_unwind_got_bytes): Add declaration.
1087 * libunwind-frame.h, libunwind-frame.c, ia64-tdep.c: Update
1088 for unwinder changes.
1092 * NEWS: Mention new /m modifier for disassemble command.
1093 * cli/cli-cmds.c (print_disassembly): New function.
1094 (disassemble_current_function): New function
1095 (disassemble_command): Recognize /m modifier, print mixed
1097 (init_cli_cmds): Update disassemble help text.
1101 * xtensa-tdep.c: Update for unwinder changes.
1105 Update m68k port for unwinder changes.
1106 * m68k-tdep.c (m68k_frame_cache): Expect this_frame.
1107 (m68k_frame_this_id, m68k_frame_prev_register): Update signature.
1108 (m68k_frame_unwind): Use default_frame_sniffer.
1109 (m68k_frame_sniffer): Remove.
1110 (m68k_frame_base_address): Expect this_frame.
1111 (m68k_dummy_id): Renamed from m68k_unwind_dummy_id. Expect
1113 (m68k_gdbarch_init): Use set_gdbarch_dummy_id,
1114 dwarf2_append_unwinders, and frame_unwind_append_unwinder.
1115 * m68klinux-tdep.c (m68k_linux_pc_in_sigtramp): Expect frame_info
1116 parameter instead of pc value.
1117 (m68k_linux_get_sigtramp_info, m68k_linux_sigtramp_frame_cache):
1119 (m68k_linux_sigtramp_frame_this_id)
1120 (m68k_linux_sigtramp_frame_prev_register)
1121 (m68k_linux_sigtramp_frame_sniffer): Update signature.
1122 (m68k_linux_sigtramp_frame_unwind): Use
1123 m68k_linux_sigtramp_frame_sniffer.
1124 (m68k_linux_init_abi): Use frame_unwind_append_unwinder.
1126 * m68klinux-nat.c (store_register): Fix typo.
1130 * infcmd.c (step_1): Put thread id on the stack to avoid possible
1135 * symfile.c (reread_symbols): Update objfile's entry point.
1140 * ada-lang.c: Update throughout to use symbol_matches_domain
1141 instead of matching the symbol domain explictly.
1142 * dwarf2read.c (add_partial_symbol): Do not add new psym for
1143 STRUCT_DOMAIN. Make sure you recognize c++ struct and java and ada
1144 class as typedefs. See lookup_partial_symbol function.
1145 (new_symbol): Similar to add_partial_symbol, do not create
1146 symbol for the typedef. See lookup_block_symbol.
1147 * symtab.c (symbol_matches_domain): New function, takes care
1148 of dual meaning of STRUCT_DOMAIN symbol for c++, ada and java.
1149 (lookup_partial_symbol): Use symbol_matches_domain to see if the
1150 found psym domain matches the given domain.
1151 (lookup_block_symbol): Likewise.
1155 * top.c (command_line_handler_continuation): Remove.
1156 (execute_command): Do not install the above.
1160 * inf-loop.c (inferior_event_handler): Call bpstat_do_action,
1161 and catch all exceptions from it.
1162 * top.c (command_line_handler_continuation): Don't
1163 call bpstat_do_action here.
1167 * dwarf2read.c (struct dwarf2_cu): Add type_hash.
1168 (struct die_info): Remove type.
1169 (read_type_die, read_typedef, read_base_type, read_subrange_type)
1170 (read_structure_type, read_enumeration_type, read_array_type)
1171 (read_tag_pointer_type, read_tag_ptr_to_member_type)
1172 (read_tag_reference_type, read_tag_const_type, read_tag_volatile_type)
1173 (read_tag_string_type, read_subroutine_type, read_set_type)
1174 (read_unspecified_type): Delete prototypes. Remove check for
1175 already-loaded type. Return the new type.
1176 (set_die_type): Return the new type.
1177 (reset_die_and_siblings_types): Delete.
1178 (load_comp_unit, load_full_comp_unit): Set type_hash.
1179 (process_queue): Remove call to reset_die_and_siblings_types.
1180 (process_die): Do not read most types here. Use read_type_die
1182 (read_func_scope, dwarf2_add_member_fn): Use read_type_die.
1183 (quirk_gcc_member_function_pointer): Return the new type.
1184 (process_structure_scope, process_enumeration_scope): Use
1185 get_die_type and read the DIE's type.
1186 (read_full_die): Do not initialize die->type.
1187 (tag_type_to_type): Use read_type_die.
1188 (read_type_die): Check for already defined types. Return the
1190 (determine_prefix): Use get_die_type.
1191 (set_die_type): Return the type.
1192 (get_die_type): Take a CU argument. Check for no type_hash.
1196 * dwarf2read.c (dwarf2_ranges_read, read_partial_die): Initialize
1201 * breakpoint.c (update_breakpoints_after_exec): Delete bp_longjmp
1202 and bp_longjmp_resume breakpoints.
1203 (breakpoint_address_is_meaningful): Claim bp_longjmp_resume as
1205 (create_longjmp_breakpoint): Don't create bp_longjmp_resume
1206 breakpoints. Create bp_longjmp breakpoints as momentary
1208 (enable_longjmp_breakpoint): Delete.
1209 (set_longjmp_breakpoint): New.
1210 (disable_longjmp_breakpoint): Delete.
1211 (delete_longjmp_breakpoint): New.
1212 (set_longjmp_resume_breakpoint): Delete.
1213 (set_momentary_breakpoint_at_pc): New.
1214 (breakpoint_re_set_one): Don't delete bp_longjmp and
1215 bp_longjmp_resume breakpoints.
1216 (breakpoint_re_set): Don't create longjmp and longjmp-resume
1219 * infrun.c (step_resume_breakpoint): Add comment.
1220 (struct execution_control_state): Delete handling_longjmp member.
1221 (init_execution_control_state). Don't clear handling_longjmp.
1222 (context_switch): Don't context switch handling_longjmp.
1223 (handle_inferior_event): If handling a bp_longjmp breakpoint,
1224 create a bp_longjmp_resume breakpoint, and set it as current
1225 step_resume_breakpoint, then step over the longjmp breakpoint. If
1226 handling a bp_longjmp_resume breakpoint, don't delete the longjmp
1227 breakpoint, delete the longjmp-resume breakpoint, and stop
1229 (currently_stepping): Remove handling_longjmp from expression.
1230 (insert_step_resume_breakpoint_at_sal): Update comment.
1231 (insert_longjmp_resume_breakpoint): New.
1233 * breakpoint.h (set_momentary_breakpoint_at_pc): Declare.
1234 (enable_longjmp_breakpoint, disable_longjmp_breakpoint): Delete
1236 (set_longjmp_breakpoint, delete_longjmp_breakpoint): Declare.
1237 (set_longjmp_resume_breakpoint): Delete declaration.
1239 * gdbthread.h (save_infrun_state): Remove handling_longjmp
1241 (load_infrun_state): Delete *handling_longjmp parameter.
1242 * thread.c (save_infrun_state): Remove handling_longjmp parameter.
1244 (load_infrun_state): Delete *handling_longjmp parameter. Update
1247 * infcmd.c (disable_longjmp_breakpoint_cleanup): Delete.
1248 (delete_longjmp_breakpoint_cleanup): New.
1249 (step_1): Call set_longjmp_breakpoint instead of
1250 enable_longjmp_breakpoint. Use delete_longjmp_breakpoint_cleanup
1251 instead of disable_longjmp_breakpoint_cleanup when making cleanup.
1252 (step_1_continuation): Pass thread id in the continuation args to
1254 (step_once): Add thread parameter. Pass thread id the the
1259 Set CU BASE_ADDRESS already from partial DIEs.
1260 * dwarf2read.c (read_partial_die): New variables BASE_ADDRESS and
1261 BASE_ADDRESS_TYPE. Set these variables from DW_AT_LOW_PC and
1262 DW_AT_ENTRY_PC. Set CU->HEADER.BASE_KNOWN and CU->HEADER.BASE_ADDRESS
1263 from these variables if it was still unset.
1265 * Makefile.in: Update dependencies.
1266 * dwarf2read.c: Include "addrmap.h"
1267 (struct dwarf2_cu): New fields RANGES_OFFSET and HAS_RANGES_OFFSET.
1268 (dwarf2_ranges_read): New prototype.
1269 (dwarf2_build_psymtabs_hard): Initialize and prepare PSYMTABS_ADDRMAP.
1270 Add discontiguous range to PSYMTABS_ADDRMAP by DWARF2_RANGES_READ on
1271 HAS_RANGES_OFFSET, otherwise add there the contiguous range.
1272 (dwarf2_ranges_read): New parameter RANGES_PST, update the function
1273 comment for it. Add the found ranges to RANGES_PST. New variable
1274 BASEADDR, initialize it the common way.
1275 (dwarf2_get_pc_bounds): Update the caller for the new parameter.
1276 (read_partial_die): `DW_AT_ranges' now only sets RANGES_OFFSET and
1277 HAS_RANGES_OFFSET for the later processing.
1278 * objfiles.h (struct objfile): New field PSYMTABS_ADDRMAP.
1279 * symtab.c: Include "addrmap.h"
1280 (find_pc_sect_psymtab): Support reading the field PSYMTABS_ADDRMAP.
1281 Move the psymtab locator into ...
1282 (find_pc_sect_psymtab_closer): ... a new function.
1286 * arch-utils.c (gdbarch_update_p): Use default values for
1287 info.abfd and info.target_desc if they are NULL.
1288 (gdbarch_from_bfd): Remove assertion.
1289 (set_gdbarch_from_file): Call gdbarch_find_by_info directly,
1290 using the current target description.
1291 (gdbarch_info_fill): Do not use default values for info->abfd
1292 and info->target_desc.
1296 * symfile.c (reread_symbols): Reload EXEC_BFD on its change.
1300 * inferior.h (read_pc_pid, write_pc_pid): Remove.
1301 * regcache.h (regcache_read_pc, regcache_write_pc): Add prototypes.
1303 * regcache.c (read_pc_pid): Remove, replace by ...
1304 (regcache_read_pc): ... this function.
1305 (write_pc_pid): Remove, replace by ...
1306 (regcache_write_pc): ... this function.
1307 (read_pc, write_pc): Update.
1309 * infrun.c (displaced_step_prepare): Replace read_pc_pid and
1310 write_pc_pid by regcache_read_pc and regcache_write_pc.
1311 (displaced_step_fixup): Likewise.
1312 (resume): Likewise. Use regcache arch instead of current_gdbarch.
1313 (prepare_to_proceed): Likewise.
1314 (proceed): Likewise.
1315 (adjust_pc_after_break): Likewise.
1316 (handle_inferior_event): Likewise.
1318 * linux-nat.c (cancel_breakpoint): Likewise.
1319 * linux-thread-db.c (check_event): Likewise.
1320 * aix-thread.c (aix_thread_wait): Likewise.
1321 * tracepoint.c (trace_dump_command): Likewise.
1325 * dwarf2loc.c (dwarf_expr_frame_base): Error out on missing
1326 SYMBOL_LOCATION_BATON.
1330 * target.h (struct target_ops): New field to_auxv_parse.
1331 * auxv.c (default_auxv_parse): New, renamed from previous
1333 (target_auxv_parse): Try to call target method. Fallback to
1334 default_auxv_parse if not found.
1335 * procfs.c (procfs_auxv_parse): New.
1336 (init_procfs_ops): On Solaris, in 64-bit mode, install
1341 * symfile.c (add_symbol_file_command): Use paddress rather than
1342 hex_string to print the address.
1346 * rs6000-tdep.c (rs6000_frame_this_id): If info->base is 0,
1347 return the null frame ID to terminate the backtrace.
1351 * rs6000-tdep.c: Do not include "rs6000-tdep.h".
1352 (rs6000_find_toc_address_hook): Move to rs6000-aix-tdep.c.
1353 (SIG_FRAME_PC_OFFSET): Likewise.
1354 (SIG_FRAME_LR_OFFSET): Likewise.
1355 (SIG_FRAME_FP_OFFSET): Likewise.
1356 (rs6000_push_dummy_call): Likewise.
1357 (rs6000_return_value): Likewise.
1358 (rs6000_convert_from_func_ptr_addr): Likewise.
1359 (branch_dest, rs6000_software_single_step): Likewise.
1360 (deal_with_atomic_sequence): Rename to ...
1361 (ppc_deal_with_atomic_sequence): ... this. Adapt all callers.
1362 Do not call branch_dest; inline required parts of that function.
1363 (rs6000_skip_trampoline_code): Replace DEPRECATED_SYMBOL_NAME
1364 with SYMBOL_LINKAGE_NAME.
1365 (struct reg, regsize): Delete.
1366 (read_memory_addr): Delete; inline into callers.
1367 (rs6000_skip_prologue): Move after skip_prologue.
1368 (skip_prologue): Remove prototype.
1369 (rs6000_gdbarch_init): Remove sysv_abi variable; perform all
1370 initialization as if this variable were true. Do not install
1371 ppc64_sysv_abi_adjust_breakpoint_address.
1373 * rs6000-aix-tdep.c: Include "gdb_assert.h", "gdbtypes.h",
1374 "gdbcore.h", "target.h", "value.h", "infcall.h", "objfiles.h",
1376 (rs6000_find_toc_address_hook): Move here from rs6000-tdep.c.
1377 (SIG_FRAME_PC_OFFSET): Likewise.
1378 (SIG_FRAME_LR_OFFSET): Likewise.
1379 (SIG_FRAME_FP_OFFSET): Likewise.
1380 (rs6000_push_dummy_call): Likewise.
1381 (rs6000_return_value): Likewise.
1382 (rs6000_convert_from_func_ptr_addr): Likewise.
1383 (branch_dest, rs6000_software_single_step): Likewise. Replace
1384 tdep->text_segment_base by AIX_TEXT_SEGMENT_BASE.
1385 (rs6000_aix_init_osabi): Install rs6000_push_dummy_call,
1386 rs6000_return_value, and rs6000_convert_from_func_ptr_addr.
1387 Call set_gdbarch_long_double_bit and set_gdbarch_frame_red_zone_size.
1388 Set tdep->lr_frame_offset. Do not set tdep->text_segment_base.
1390 * rs6000-tdep.h (rs6000_software_single_step): Remove prototype.
1391 (AIX_TEXT_SEGMENT_BASE): New macro.
1392 * rs6000-nat.c (exec_one_dummy_insn): Replace tdep->text_segment_base
1393 by AIX_TEXT_SEGMENT_BASE.
1395 * ppc-tdep.h (ppc_deal_with_atomic_sequence): Add prototype.
1396 (struct gdbarch_tdep): Remove text_segment_base member.
1397 * ppc-linux-tdep.c (ppc_linux_init_abi): On 64-bit, install
1398 ppc64_sysv_abi_adjust_breakpoint_address.
1400 * Makefile.in (rs6000-tdep.o): Update dependencies.
1401 (rs6000-aix-tdep.o): Likewise.
1406 * cli/cli-decode.c (lookup_cmd_1): Fix indentation.
1407 * doublest.c (convert_typed_floating): Fix typo in comment.
1408 * dwarf2-frame.c (dwarf2_frame_cache): Likewise.
1409 * frame-unwind.h (frame_sniffer_ftype): Likewise.
1410 * frame.c (frame_unwind_address_in_block): Likewise.
1411 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Likewise.
1412 * symtab.h (struct symbol): Likewise.
1413 * tramp-frame.h (struct trad_frame_cache): Likewise.
1414 * value.c (allocate_repeat_value): Likewise.
1418 * infrun.c (handle_inferior_event): Do not insert breakpoints at
1419 TARGET_WAITKIND_LOADED events during startup (i.e. in the shell).
1423 * parse.c (parse_exp_in_context): Don't override
1424 expression_context_pc if get_selected_block returned a valid
1429 * alpha-tdep.h (ALPHA_REGISTER_BYTES): Delete.
1430 * arm-tdep.h (STATUS_REGISTER_SIZE): Delete.
1431 * breakpoint.c (args_for_catchpoint_enable, current_exception_event):
1433 * c-typeprint.c (c_type_print_base): Delete handling of template
1435 * cp-support.h (METHOD_PTR_IS_VIRTUAL, METHOD_PTR_FROM_VOFFSET)
1436 (METHOD_PTR_TO_VOFFSET): Delete.
1437 * defs.h (QUIT_FIXME): Delete.
1438 * f-lang.h (DEFAULT_DOTMAIN_NAME_IN_MF77, DEFAULT_MAIN_NAME_IN_MF77)
1439 (DEFAULT_DOTMAIN_NAME_IN_XLF_BUGGY, DEFAULT_DOTMAIN_NAME_IN_XLF): Delete.
1440 * gdbtypes.h (struct cplus_struct_type): Delete is_inlined,
1441 ninstantiations, and instantiations.
1442 (TYPE_INSTANTIATIONS, TYPE_NINSTANTIATIONS, TYPE_INSTANTIATION)
1443 (TYPE_FN_FIELD_INLINED): Delete.
1444 * srec.h (SREC_BINARY): Delete.
1445 * symtab.c (symbol_init_demangled_name): Delete.
1446 * symtab.h (SYMBOL_INIT_DEMANGLED_NAME, symbol_init_demangled_name)
1447 (SYMBOL_OBJFILE, struct exception_event_record, CURRENT_EXCEPTION_KIND)
1448 (CURRENT_EXCEPTION_CATCH_SAL, CURRENT_EXCEPTION_CATCH_LINE)
1449 (CURRENT_EXCEPTION_CATCH_FILE, CURRENT_EXCEPTION_CATCH_PC)
1450 (CURRENT_EXCEPTION_THROW_SAL, CURRENT_EXCEPTION_THROW_LINE)
1451 (CURRENT_EXCEPTION_THROW_FILE, CURRENT_EXCEPTION_THROW_PC): Delete.
1452 * target.h (enum thread_control_capabilities): Delete tc_switch.
1453 (target_can_switch_threads): Delete.
1457 * Makefile.in (objfiles.o): Update.
1458 * exec.c (exec_set_section_address): Support p->addr != 0.
1459 * objfiles.c (objfile_relocate): Update exec_ops section
1461 * symfile.c (place_section): Move exec_set_section_address call...
1462 (default_symfile_offsets): ...to here.
1466 * Makefile.in (ppc_linux_tdep_h): New macro.
1467 (powerpc_32l_c, powerpc_altivec32_c, powerpc_altivec32l_c): Likewise.
1468 (powerpc_64l_c, powerpc_altivec64_c, powerpc_altivec64l_c): Likewise.
1469 (powerpc_e500l_c): Likewise.
1470 (ppc-linux-nat.o): Update dependencies.
1471 (ppc-linux-tdep.o): Update dependencies.
1472 (rs6000-tdep.o): Update dependencies.
1474 * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Remove.
1475 (ppc_linux_svr4_fetch_link_map_offsets): Remove.
1476 (ppc_linux_gregset, ppc_linux_fpregset): Move to ppc-linux-tdep.h
1477 (ppc_supply_reg, ppc_collect_reg): Add prototypes.
1478 (tdesc_powerpc_e500): Remove.
1480 * rs6000.c: Include "features/rs6000/powerpc-altivec32.c"
1481 and "features/rs6000/powerpc-altivec64.c".
1482 (ppc_supply_reg, ppc_collect_reg): Make global.
1483 (variants): Use tdesc_powerpc_32 for "powerpc" and
1484 tdesc_powerpc_altivec64 for "powerpc64".
1485 (_initialize_rs6000_tdep): Initialize AltiVec descriptions.
1487 * ppc-linux-tdep.h: New file.
1489 * ppc-linux-tdep.c: Include "ppc-linux-tdep.c".
1490 Include "features/rs6000/powerpc-32l.c".
1491 Include "features/rs6000/powerpc-altivec32l.c".
1492 Include "features/rs6000/powerpc-64l.c".
1493 Include "features/rs6000/powerpc-altivec64l.c".
1494 Include "features/rs6000/powerpc-e500l.c".
1495 (ppc_linux_supply_gregset): New function.
1496 (ppc_linux_collect_gregset): Handle orig_r3 and trap registers.
1497 (ppc32_linux_gregset): Use ppc_linux_supply_gregset.
1498 (ppc64_linux_gregset): Likewise.
1499 (ppc_linux_sigtramp_cache): Handle orig_r3 and trap registers.
1500 (ppc_linux_trap_reg_p): New function.
1501 (ppc_linux_write_pc): New function.
1502 (ppc_linux_core_read_description): New function.
1503 (ppc_linux_init_abi): Install ppc_linux_write_pc and
1504 ppc_linux_core_read_description. Install orig_r3 and trap
1505 registers if present in the target description.
1506 (_initialize_ppc_linux_tdep): Initialize Linux target descriptions.
1508 * ppc-linux-nat.c: Include "ppc-linux-tdep.h".
1509 (PT_ORIG_R3, PT_TRAP): Define if necessary.
1510 (ppc_register_u_addr): Handle orig_r3 and trap registers.
1511 (fetch_ppc_registers): Likewise.
1512 (store_ppc_registers): Likewise.
1513 (store_register): Likewise.
1514 (ppc_linux_read_description): Check whether AltiVec is supported.
1515 Check whether inferior is 32-bit or 64-bit. Return the appropriate
1516 Linux target description.
1518 * features/Makefile (WHICH): Use rs6000/powerpc-32l and
1519 rs6000/powerpc-altivec32l instead of rs6000/powerpc-32.
1520 Use rs6000/powerpc-64l and rs6000/powerpc-altivec64l instead
1521 of rs6000/powerpc-64. Use rs6000/powerpc-e500l instead of
1522 rs6000/powerpc-e500. Update -expedite variables accordingly.
1524 * features/rs6000/power-spe.xml: Use regnum 73 for "acc".
1525 * features/rs6000/powerpc-32.xml: Do not include power-altivec.xml.
1526 * features/rs6000/powerpc-64.xml: Do not include power-altivec.xml.
1527 * features/rs6000/powerpc-e500.c: Regenerate.
1528 * features/rs6000/powerpc-32.c: Regenerate.
1529 * features/rs6000/powerpc-64.c: Regenerate.
1531 * features/rs6000/power-linux.xml: New file.
1532 * features/rs6000/power64-linux.xml: New file.
1533 * features/rs6000/powerpc-32l.xml: New file.
1534 * features/rs6000/powerpc-altivec32l.xml: New file.
1535 * features/rs6000/powerpc-64l.xml: New file.
1536 * features/rs6000/powerpc-altivec64l.xml: New file.
1537 * features/rs6000/powerpc-e500l.xml: New file.
1538 * features/rs6000/powerpc-32l.c: New (generated) file.
1539 * features/rs6000/powerpc-altivec32l.c: New (generated) file.
1540 * features/rs6000/powerpc-64l.c: New (generated) file.
1541 * features/rs6000/powerpc-altivec64l.c: New (generated) file.
1542 * features/rs6000/powerpc-e500l.xml: New (generated) file.
1544 * regformats/reg-ppc.dat: Remove.
1545 * regformats/reg-ppc64.dat: Remove.
1546 * regformats/rs6000/powerpc-32.dat: Remove.
1547 * regformats/rs6000/powerpc-64.dat: Remove.
1548 * regformats/rs6000/powerpc-e500.dat: Remove.
1549 * regformats/rs6000/powerpc-32l.dat: New (generated) file.
1550 * regformats/rs6000/powerpc-altivec32l.dat: New (generated) file.
1551 * regformats/rs6000/powerpc-64l.dat: New (generated) file.
1552 * regformats/rs6000/powerpc-altivec64l.dat: New (generated) file.
1553 * regformats/rs6000/powerpc-e500l.dat: New (generated) file.
1557 * thread.c (delete_thread): Call observer_notify_thread_exit.
1558 * mi/mi-interp.c (mi_interpreter_init): Register mi_thread_exit as
1559 thread_exit observer.
1560 (mi_thread_exit): New.
1564 * breakpoint.c (create_exception_catchpoint): Remove prototype
1565 for already deleted function.
1566 * breakpoint.h (ep_is_exception_catchpoint): Likewise.
1567 * frame.h (show_stack_frame): Remove prototype.
1568 * stack.c (show_stack_frame): Remove empty, unused function.
1569 * source.c (symtab_to_fullname, print_source_lines): Small fix
1571 * value.c (show_values): Update comments to mention "show values"
1572 command instead of "info history".
1576 * linespec.c: Include "target.h".
1577 (minsym_found): Handle minimal symbols pointing to function
1578 descriptors. Use find_function_start_pc.
1579 * minsyms.c (msymbol_objfile): New function.
1580 * parse.c (write_exp_msymbol): Handle minimal symbols pointing
1581 to function descriptors.
1582 * symtab.c (fixup_section): Only use minimal symbol at the same
1583 address to determine section of a symbol.
1584 (find_function_start_pc): New function.
1585 (find_function_start_sal): Use it.
1586 * symtab.h (msymbol_objfile): Add prototype.
1587 (find_function_start_pc): Likewise.
1588 * value.c: Include "objfiles.h".
1589 (value_fn_field): Handle minimal symbols pointing to function
1591 * Makefile.in (linespec.o): Update dependencies.
1592 (value.o): Likewise.
1596 * ada-lang.c (unwrap_value): Handle the case where the "F" field
1597 inside a PAD type is a bitfield.
1601 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Handle
1602 TYPE_CODE_BOOL and TYPE_CODE_CHAR the same as TYPE_CODE_INT.
1603 Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
1604 Handle TYPE_CODE_METHOD the same as TYPE_CODE_FUNC.
1605 Allow typedefs when checking for function pointer arguments.
1606 Right-align small structs passed on the stack.
1607 (ppc64_sysv_abi_return_value): Handle TYPE_CODE_BOOL and
1608 TYPE_CODE_CHAR the same as TYPE_CODE_INT.
1609 Handle TYPE_CODE_REF the same as TYPE_CODE_PTR.
1613 * Makefile.in (arm-tdep.o): Update.
1614 * arm-tdep.c (arm_objfile_data_key, struct arm_mapping_symbol)
1615 (struct arm_per_objfile, arm_compare_mapping_symbols): New.
1616 (arm_pc_is_thumb): Use mapping symbols.
1617 (arm_objfile_data_cleanup, arm_record_special_symbol): New.
1618 (arm_gdbarch_init): Call set_gdbarch_record_special_symbol.
1619 (_initialize_arm_tdep): Initialize arm_objfile_data_key.
1620 * elfread.c (elf_symtab_read): Use gdbarch_record_special_symbol.
1621 * gdbarch.sh: Add record_special_symbol.
1622 * gdbarch.c, gdbarch.h: Regenerated.
1623 * objfiles.c (struct objfile_data): Add cleanup member.
1624 (register_objfile_data_with_cleanup): New function, from
1625 register_objfile_data.
1626 (register_objfile_data): Use it.
1627 (objfile_free_data): Call clear_objfile_data.
1628 (clear_objfile_data): Call cleanup functions.
1629 * objfiles.h (register_objfile_data_with_cleanup): Declare.
1633 * objfiles.c (init_entry_point_info): Handle shared libraries.
1637 * arm-tdep.c (arm_prologue_this_id): Compare pc, not func, to
1643 Implement displaced stepping.
1645 * gdbarch.sh (max_insn_length): New 'variable'.
1646 (displaced_step_copy, displaced_step_fixup)
1647 (displaced_step_free_closure, displaced_step_location): New
1649 (struct displaced_step_closure): Add forward declaration.
1650 * gdbarch.c, gdbarch.h: Regenerated.
1652 * arch-utils.c: #include "objfiles.h".
1653 (simple_displaced_step_copy_insn)
1654 (simple_displaced_step_free_closure)
1655 (displaced_step_at_entry_point): New functions.
1656 * arch-utils.h (simple_displaced_step_copy_insn)
1657 (simple_displaced_step_free_closure)
1658 (displaced_step_at_entry_point): New prototypes.
1660 * i386-tdep.c (I386_MAX_INSN_LEN): Rename to...
1661 (I386_MAX_MATCHED_INSN_LEN): ... this.
1662 (i386_absolute_jmp_p, i386_absolute_call_p)
1663 (i386_ret_p, i386_call_p, i386_breakpoint_p, i386_syscall_p)
1664 (i386_displaced_step_fixup): New functions.
1665 (struct i386_insn, i386_match_insn): Update.
1666 (i386_gdbarch_init): Set gdbarch_max_insn_length.
1667 * i386-tdep.h (I386_MAX_INSN_LEN): New.
1668 (i386_displaced_step_fixup): New prototype.
1669 * i386-linux-tdep.c (i386_linux_init_abi): Include "arch-utils.h".
1670 Register gdbarch_displaced_step_copy,
1671 gdbarch_displaced_step_fixup, gdbarch_displaced_step_free_closure,
1672 and gdbarch_displaced_step_location functions.
1674 * infrun.c (debug_displaced): New variable.
1675 (show_debug_displaced): New function.
1676 (struct displaced_step_request): New struct.
1677 (displaced_step_request_queue, displaced_step_ptid)
1678 (displaced_step_gdbarch, displaced_step_closure)
1679 (displaced_step_original, displaced_step_copy)
1680 (displaced_step_saved_copy, can_use_displaced_stepping): New
1682 (show_can_use_displaced_stepping, use_displaced_stepping)
1683 (displaced_step_clear, cleanup_displaced_step_closure)
1684 (displaced_step_dump_bytes, displaced_step_prepare)
1685 (displaced_step_clear_cleanup, write_memory_ptid)
1686 (displaced_step_fixup): New functions.
1687 (resume): Call displaced_step_prepare.
1688 (proceed): Call read_pc once, and remember the value. If using
1689 displaced stepping, don't remove breakpoints.
1690 (handle_inferior_event): Call displaced_step_fixup. Add some
1691 debugging output. When we try to step over a breakpoint, but get
1692 a signal to deliver to the thread instead, ensure the step-resume
1693 breakpoint is actually inserted. If a thread hop is needed, and
1694 displaced stepping is enabled, don't remove breakpoints.
1695 (init_wait_for_inferior): Call displaced_step_clear.
1696 (_initialize_infrun): Add "set debug displaced" command. Add
1697 "maint set can-use-displaced-stepping" command. Clear
1698 displaced_step_ptid.
1699 * inferior.h (debug_displaced): Declare variable.
1700 (displaced_step_dump_bytes): Declare function.
1702 * Makefile.in (arch-utils.o, i386-linux-tdep.o): Update
1707 * arm-tdep.c (arm_mode_strings, arm_fallback_mode_string)
1708 (arm_force_mode_string, arm_show_fallback_mode)
1709 (arm_show_force_mode): New.
1710 (arm_pc_is_thumb): Honor fallback-mode and force-mode. Use
1712 (_initialize_arm_tdep): Add "set arm fallback-mode"
1713 and "set arm force-mode".
1714 * NEWS: Document new commands.
1718 * main.h (batch_silent): Declare.
1719 * event-top.c: Include main.h.
1720 (gdb_setup_readline): Remove extern batch_silent declaration.
1721 * infrun.c (normal_stop): Don't print source location when running in
1722 --batch-silent mode.
1723 * Makefile.in (event-top.o): Add main.h dependency.
1727 * target.h (struct target_ops): Add
1728 to_watchpoint_addr_within_range.
1729 (target_watchpoint_addr_within_range): New function.
1730 * target.c (update_current_target): Inherit
1731 to_watchpoint_addr_within_range, defaulting to
1732 default_watchpoint_addr_within_range.
1733 (default_watchpoint_addr_within_range): New function.
1734 (debug_to_watchpoint_addr_within_range): New function.
1735 (setup_target_debug): Set to_watchpoint_addr_within_range.
1736 * ppc-linux-nat.c (ppc_linux_watchpoint_addr_within_range):
1738 (_initialize_ppc_linux_nat): Set to_watchpoint_addr_within_range.
1739 * breakpoint.c (watchpoints_triggered): Use
1740 target_watchpoint_addr_within_range.
1744 * configure.tgt: Add i[34567]86-*-dicos* and x86_64-*-dicos*.
1745 (i[34567]86-*-dicos*, x86_64-*-dicos*):
1746 Set gdb_osabi to GDB_OSABI_DICOS.
1748 * defs.h (enum gdb_osabi): Add GDB_OSABI_DICOS.
1749 * osabi.c (gdb_osabi_name): Add "DICOS".
1751 * i386-dicos-tdep.c: New file.
1753 * Makefile.in (ALL_TARGET_OBS): Add i386-dicos-tdep.o.
1754 (ALLDEPFILES): Add i386-dicos-tdep.c.
1755 (i386-dicos-tdep.o): New rule.
1759 * linux-nat.c (linux_nat_switch_fork): Reinit GDB's thread list
1760 and register the fork's PTID as a thread.
1765 * breakpoint.c (create_breakpoint): Add breakpoint_ops argument and
1766 assign its value to the breakpoint created.
1767 (create_breakpoints): Add breakpoint_ops argument and pass it
1768 to create_breakpoint call.
1769 (break_command_really): Add breakpoint_ops argument and pass/assign
1771 (break_command_1): Pass NULL as ops argument.
1772 (set_breakpoint): Pass NULL as ops argument.
1773 (print_one_exception_catchpoint): Print <PENDING> if no loc available.
1774 (handle_gnu_v3_exceptions): Call generic breakpoint code to insert
1775 catch and throw catchpoints.
1780 * corelow.c (core_open): Use gdbarch_target_signal_from_host to
1781 translate signal numeric value from the target to GDB's enum
1783 * gdbarch.c, gdbarch.h: Regenerated.
1784 * gdbarch.sh: Added two new functions target_signal_from_host and
1785 target_signal_to_host.
1786 * target.h (default_target_signal_from_host,
1787 default_target_signal_to_host): New functions - declarations.
1788 * signals/signals.c (struct gdbarch): New declaration.
1789 (default_target_signal_to_host, default_target_signal_from_host): New
1794 * arm-linux-tdep.h (ARM_CPSR_REGNUM): Delete definition.
1795 * arm-tdep.c (arm_frame_is_thumb): New.
1796 (arm_pc_is_thumb): Clarify comment.
1797 (thumb_analyze_prologue): Remove PC special case.
1798 (thumb_scan_prologue): Take a block_addr argument. Use it for
1799 find_pc_partial_function. Remove unused variables.
1800 (arm_scan_prologue): Use arm_frame_is_thumb. Use the block address
1801 for find_pc_partial_function. Remove PC special case.
1802 (arm_prologue_prev_register): Add special handling for PC and CPSR.
1803 (arm_dwarf2_prev_register, arm_dwarf2_frame_init_reg): New.
1804 (arm_get_next_pc): Use arm_frame_is_thumb.
1805 (arm_write_pc): Use CPSR_T instead of 0x20.
1806 (arm_gdbarch_init): Call dwarf2_frame_set_init_reg.
1807 * arm-tdep.h (enum gdb_regnum): Add ARM_CPSR_REGNUM.
1809 * dwarf2-frame.c (dwarf2_frame_prev_register): Handle
1810 DWARF2_FRAME_REG_FN.
1811 * dwarf2-frame.h (enum dwarf2_frame_reg_rule): Add
1812 DWARF2_FRAME_REG_FN.
1813 (struct dwarf2_frame_state_reg): Add FN to loc union.
1817 * exec.c (print_section_info): Add missing '\n'.
1821 * thread.c (add_thread): Move observer call to ...
1822 (add_thread_silent): ... here.
1826 * rs6000-tdep.c: Update for unwinder changes.
1827 * ppcobsd-tdep.c: Likewise.
1831 * s390-tdep.c: Update for unwinder changes.
1835 * spu-tdep.c: Update for unwinder changes.
1839 * hppanbsd-tdep.c, m68kbsd-tdep.c, mn10300-linux-tdep.c,
1840 ppc-linux-tdep.c, ppcnbsd-tdep.c, sparc-linux-tdep.c,
1841 sparc64-linux-tdep.c: Update for unwinder changes.
1845 * mipsnbsd-tdep.c, mips64obsd-tdep.c, mips-linux-tdep.c: Update
1846 for unwinder changes.
1847 * mips-tdep.c: Likewise.
1848 (mips_stub_frame_cache): Unwind the ABI stack pointer, not the
1853 * arm-linux-tdep.c, arm-tdep.c, armobsd-tdep.c: Update for
1858 Update i386 and amd64 ports for unwinder changes.
1860 * amd64-tdep.c (amd64_frame_cache): Expect this_frame.
1861 (amd64_frame_this_id, amd64_frame_prev_register): Update signature.
1862 (amd64_frame_unwind): Use default_frame_sniffer.
1863 (amd64_frame_sniffer): Delete.
1864 (amd64_sigtramp_frame_cache): Expect this_frame.
1865 (amd64_sigtramp_frame_this_id, amd64_sigtramp_frame_prev_register)
1866 (amd64_sigtramp_frame_sniffer): Update signature.
1867 (amd64_sigtramp_frame_unwind): Add amd64_sigtramp_frame_sniffer.
1868 (amd64_frame_base_address): Expect this_frame.
1869 (amd64_dummy_id): Renamed from amd64_unwind_dummy_id. Expect
1871 (amd64_init_abi): Use set_gdbarch_dummy_id and
1872 frame_unwind_append_unwinder.
1873 * i386-tdep.c (i386_frame_cache): Expect this_frame.
1874 (i386_frame_this_id, i386_frame_prev_register): Update signature.
1875 (i386_frame_unwind): Use default_frame_sniffer.
1876 (i386_frame_sniffer): Delete.
1877 (i386_sigtramp_frame_cache): Expect this_frame.
1878 (i386_sigtramp_frame_this_id, i386_sigtramp_frame_prev_register)
1879 (i386_sigtramp_frame_sniffer): Update signature.
1880 (i386_sigtramp_frame_unwind): Use i386_sigtramp_frame_sniffer.
1881 (i386_frame_base_address): Update signature.
1882 (i386_dummy_id): Rename from i386_unwind_dummy_id. Expect this_frame.
1883 (i386_push_dummy_call): Update comment.
1884 (i386_sigtramp_p, i386_svr4_sigtramp_p, i386_svr4_sigcontext_addr):
1886 (i386_gdbarch_init): Use set_gdbarch_dummy_id, dwarf2_append_unwinders,
1887 and frame_unwind_append_unwinder.
1888 * amd64-linux-tdep.c, amd64-sol2-tdep.c, amd64fbsd-tdep.c,
1889 amd64nbsd-tdep.c, amd64obsd-tdep.c, i386-linux-tdep.c,
1890 i386-nto-tdep.c, i386bsd-tdep.c, i386-sol2-tdep.c, i386obsd-tdep.c,
1891 i386nbsd-tdep.c: Update for unwinder changes.
1895 * trad-frame.c (struct trad_frame_cache): Rename next_frame to this_frame.
1896 (trad_frame_cache_zalloc, trad_frame_alloc_saved_regs): Expect
1898 (trad_frame_get_prev_register, trad_frame_get_register): Update signature.
1899 * trad-frame.h (trad_frame_cache_zalloc, trad_frame_get_register)
1900 (trad_frame_alloc_saved_regs, trad_frame_get_prev_register): Update
1902 * tramp-frame.c (tramp_frame_cache, tramp_frame_start): Expect
1904 (tramp_frame_this_id, tramp_frame_prev_register, tramp_frame_sniffer):
1906 * tramp-frame.h (struct tramp_frame): Update signature of init.
1907 * Makefile.in (trad-frame.o): Update.
1911 * dwarf2-frame.c (read_reg): Expect this_frame in the baton.
1912 (execute_stack_op): Put this_frame in the baton.
1913 (execute_cfa_program): Take this_frame.
1914 (struct dwarf2_frame_ops): Update comment for signal_frame_p.
1915 (dwarf2_frame_default_init_reg, dwarf2_frame_init_reg)
1916 (dwarf2_frame_signal_frame_p, dwarf2_frame_cache)
1917 (dwarf2_frame_this_id): Adjust to work on this_frame.
1918 (dwarf2_signal_frame_this_id): Delete.
1919 (dwarf2_frame_prev_register): Update signature. Use new frame
1921 (dwarf2_frame_sniffer): Update signature. Expect this_frame.
1922 (dwarf2_frame_unwind, dwarf2_signal_frame_unwind): Add
1923 dwarf2_frame_sniffer.
1924 (dwarf2_append_unwinders): New.
1925 (dwarf2_frame_base_address, dwarf2_frame_base_sniffer): Expect
1927 * sparc-tdep.c (sparc32_dwarf2_struct_return_p)
1928 (sparc32_dwarf2_frame_init_reg): Expect this_frame.
1929 * cris-tdep.c (cris_dwarf2_frame_init_reg): Likewise.
1930 * rs6000-tdep.c (ppc_dwarf2_frame_init_reg): Likewise.
1931 * s390-tdep.c (s390_dwarf2_frame_init_reg): Likewise.
1932 * sh-tdep.c (sh_dwarf2_frame_init_reg): Likewise.
1933 * sparc64-tdep.c (sparc64_dwarf2_frame_init_reg): Likewise.
1934 * dwarf2-frame.h (dwarf2_frame_sniffer): Delete declaration.
1935 (dwarf2_append_unwinders): Declare.
1936 (dwarf2_frame_base_sniffer): Update declaration.
1937 * i386-linux-tdep.c (i386_linux_dwarf_signal_frame_p): Expect
1942 Convert frame unwinders to use the current frame and
1945 * frame.c (frame_debug): Make global.
1946 (get_frame_id): Pass this frame to unwinder routines.
1947 (frame_pc_unwind): Remove unused unwind->prev_pc support.
1948 (do_frame_register_read): Do not discard the return value of
1949 frame_register_read.
1950 (frame_register_unwind): Remove debug messages. Use
1951 frame_unwind_register_value.
1952 (frame_unwind_register_value, get_frame_register_value): New
1954 (create_new_frame, get_frame_base_address, get_frame_locals_address)
1955 (get_frame_args_address, get_frame_type): Pass this frame to
1957 (frame_cleanup_after_sniffer, frame_prepare_for_sniffer): New
1959 * frame.h: Update comments.
1960 (frame_debug, frame_unwind_register_value, get_frame_register_value)
1961 (frame_prepare_for_sniffer): Declare.
1962 * frame-unwind.h: Update comments and parameter names.
1963 (default_frame_sniffer): Declare.
1964 (frame_prev_register_ftype): Return a struct value *.
1965 (struct frame_unwind): Remove prev_pc member.
1966 (frame_unwind_sniffer_ftype, frame_unwind_append_sniffer): Delete.
1967 (frame_unwind_append_unwinder, frame_unwind_got_optimized)
1968 (frame_unwind_got_register, frame_unwind_got_memory)
1969 (frame_unwind_got_constant, frame_unwind_got_address): Declare.
1970 * frame-base.h: Update comments and parameter names.
1971 * valops.c (value_fetch_lazy): Use get_frame_register_value. Iterate
1972 if necessary. Add debugging output.
1973 * sentinel-frame.c (sentinel_frame_prev_register)
1974 (sentinel_frame_this_id): Update for new signature.
1975 (sentinel_frame_prev_pc): Delete.
1976 (sentinel_frame_unwinder): Remove prev_pc.
1977 * ia64-tdep.c (ia64_libunwind_frame_unwind): Do not initialize
1979 * libunwind-frame.c (libunwind_frame_unwind): Likewise.
1980 * frame-unwind.c (struct frame_unwind_table_entry): Remove sniffer.
1981 (frame_unwind_append_sniffer): Delete.
1982 (frame_unwind_append_unwinder): New function.
1983 (frame_unwind_find_by_frame): Take this frame. Only use sniffers
1984 from unwinders. Use frame_prepare_for_sniffer.
1985 (default_frame_sniffer, frame_unwind_got_optimized)
1986 (frame_unwind_got_register, frame_unwind_got_memory)
1987 (frame_unwind_got_constant, frame_unwind_got_address): New functions.
1988 * dummy-frame.c (dummy_frame_sniffer): Use gdbarch_dummy_id.
1989 (dummy_frame_prev_register, dummy_frame_this_id): Update for new
1991 * gdbarch.sh: Replace unwind_dummy_id with dummy_id.
1992 * gdbarch.c, gdbarch.c: Regenerated.
1993 * frame-base.c (default_frame_base_address)
1994 (default_frame_locals_address, default_frame_args_address): Update
1996 (frame_base_find_by_frame): Pass this frame to unwinder routines.
1997 * infcall.c (call_function_by_hand): Update comments.
1998 * Makefile.in (frame-unwind.o): Update dependencies.
2002 * ada-lang.c (ada_value_primitive_packed_val): Only check
2003 value_lazy for memory lvals.
2004 * findvar.c (value_of_register_lazy): New function.
2005 (locate_var_value): Only check value_lazy for memory lvals.
2006 * valarith.c (value_subscripted_rvalue): Likewise.
2007 * valops.c (value_fetch_lazy): Handle both memory and register
2009 (search_struct_field, value_slice): Only check value_lazy for memory
2011 * value.c (struct value): Update comment for lazy.
2012 (value_primitive_field): Only check value_lazy for memory lvals.
2013 * value.h (value_lazy): Update comment.
2014 (value_of_register_lazy): Declare.
2018 * corefile.c (reopen_exec_file): Close any open files.
2022 * ia64-tdep.c (ia64_memory_remove_breakpoint): Set
2023 show_memory_breakpoints to 1 while reading the instruction bundle.
2027 * gdbarch.sh: Document the return_value method. Explain that
2028 the FUNCTYPE parameter might be NULL.
2029 * gdbarch.h: Regenerated.
2030 * sparc-tdep.c (sparc32_push_dummy_code): Do not pass the function
2031 type when calling using_struct_return, as this is unnecessary
2036 * terminal.h (create_tty_session): Fix return type.
2040 * mi/mi-interp.c (mi_new_thread): Quote the thread id.
2044 * breakpoint.c (condition_command, commands_from_control_command)
2045 (break_command_really): Minor reformatting.
2049 * dwarf2read.c (dwarf2_const_value): Handle DW_FORM_strp.
2053 * amd64-tdep.c (amd64_get_longjmp_target): New.
2054 (amd64_init_abi): Register amd64_get_longjmp_target as
2055 gdbarch_get_longjmp_target callback.
2056 * i386-tdep.c (i386_get_longjmp_target): Remove 64-bit handling.
2060 * breakpoint.h (enum bpstat_what_main_action): Delete
2061 BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE.
2063 * breakpoint.c (clrs): Delete.
2064 (bpstat_what): Update table.
2066 * infrun.c (handle_inferior_event): Remove
2067 BPSTAT_WHAT_CLEAR_LONGJMP_RESUME_SINGLE handling.
2071 * mi/mi-cmds.h (mi_cmd_args_ftype): Remove.
2072 Adjust all prototypes using mi_cmd_args_ftype to use
2074 (struct mi_cmd): Remove the args_func field.
2075 * mi/mi-cmds.c: Don't provide value for the args_func field.
2076 * mi/mi-main.c (mi_execute_async_cli_command)
2077 (mi_cmd_exec_run, mi_cmd_exec_next, mi_cmd_exec_next_instruction)
2078 (mi_cmd_exec_step, mi_cmd_exec_step_instruction)
2079 (mi_cmd_exec_finish, mi_cmd_exec_until, mi_cmd_exec_return)
2080 (mi_cmd_exec_continue, mi_cmd_exec_interrupt)
2081 (mi_cmd_target_download): Adjust.
2082 (mi_cmd_target_select): Adjust. Pass 0 for from_tty parameter.
2083 (mi_cmd_execute): Do not check for args_func.
2084 (mi_execute_async_cli_command): Adjust.
2085 * mi/mi-parse.c: Don't check for args_func.
2089 * breakpoint.c (bpstat_check_location)
2090 (bpstat_check_watchpoint, bpstat_check_breakpoint_conditions):
2091 New, extracted from bpstat_stop_status.
2092 (bpstat_stop_status): Use the above.
2096 * mi/mi-main.c (last_async_command): Rename to current_token.
2097 (previous_async_command): Remove.
2098 (mi_cmd_gdb_exit): Adjust.
2099 (mi_cmd_exec_interrupt): Don't dance with previous_async_command.
2100 (mi_cmd_target_select): Adjust.
2101 (mi_cmd_execute): Don't set previous_async_command. Free token
2102 here even in async mode.
2103 (mi_execute_async_cli_command): Adjust.
2104 (mi_exec_async_cli_cmd_continuation): Adjust. Do not free the
2106 (mi_load_progress): Adjust.
2110 * infcmd.c (step_1_continuation): Always disable longjmp
2111 breakpoint if we're not going to do another step.
2115 exec_cleanup murder.
2116 * breakpoint.c (until_break_command_continuation): Add
2117 the 'error' parameter. Directly delete the breakoint as
2118 opposed to running cleanups.
2119 (until_break_command): Install continuation only
2120 after starting the target. Don't use exec cleanups,
2121 use ordinary cleanups. Discard cleanups is successfully
2122 started the target in async mode.
2123 (make_cleanup_delete_breakpoint): Remove.
2124 * breakpoint.h (make_cleanup_delete_breakpoint): Remove
2126 * defs.h (do_exec_cleanups, make_exec_cleanup): Remove
2128 (struct continations): Add the 'error' parameter to the
2129 continuation_hook field.
2130 (add_continuation, do_all_continuations)
2131 (add_intermediate_continuation)
2132 (do_all_intermediate_continuations): Add the 'error' parameter.
2133 * exceptions.c (throw_exception): Don't call do_exec_cleanups.
2134 * inf-loop.c (inferior_event_handler): Instead of calling
2135 discard_all_continuations, use do_all_continuations with 1 as
2136 'error' parameter. Pass 0 as 'error' parameter in existing uses
2137 of discard_all_continuations.
2138 * infcmd.c (step_1): Do not use exec cleanup. For async case, discard
2140 (step_once): Install continuation only after resuming the target.
2141 (step_1_continuation): Disable longjmp breakpoint on error.
2142 (finish_command_continuation): Add the error parameter. Delete
2143 the finish breakpoint directly, do not use cleanups.
2144 (finish_command): Do not use exec_cleanups. Always setup
2145 continuation. For sync case, immediately run them.
2146 (attach_command_continuation): Add the error parameter.
2147 * infrun.c (fetch_inferior_event): Do not use exec cleanups to
2148 remove step_resume_breakpoint -- adjust delete it directly.
2149 * interps.c (interp_set): Adjust call to do_all_continations.
2150 * mi/mi-interp.c (mi_interpreter_exec_continuation): Do not
2152 * mi/mi-main.c (mi_cmd_target_select): Do not do exec
2154 (mi_cmd_execute): Do not use exec_cleanup.
2155 (mi_execute_async_cli_command): Simplify the string concatenation
2156 logic. Do no use exec cleanup.
2157 (mi_exec_async_cli_cmd_continuation): New parameter error.
2158 Free last_async_command.
2159 * top.c (command_line_handler_continuation): New parameter error.
2160 * utils.c (exec_cleanup_chain, make_exec_cleanup)
2161 (do_exec_cleanups): Remove.
2162 (add_continuation, do_all_continations)
2163 (add_intermediate_continuation)
2164 (do_all_intermediate_continuations): New parameter error.
2168 * breakpoint.h (bp_location_p): New typedef.
2169 Register a vector of bp_location_p.
2170 * breakpoint.c (always_inserted_mode)
2171 (show_always_inserted_mode): New.
2172 (unlink_locations_from_global_list): Remove.
2173 (update_global_location_list)
2174 (update_global_location_list_nothrow): New.
2175 (update_watchpoint): Don't free locations.
2176 (should_insert_location): New.
2177 (insert_bp_location): Use should_insert_location.
2178 (insert_breakpoint_locations): Copied from
2180 (insert_breakpoint): Use insert_breakpoint_locations.
2181 (bpstat_stop_status): Call update_global_location_list
2182 when disabling breakpoint.
2183 (allocate_bp_location): Don't add to bp_location_chain.
2184 (set_raw_breakpoint)
2185 (create_longjmp_breakpoint, enable_longjmp_breakpoint)
2186 (disable_longjmp_breakpoint, create_overlay_event_breakpoint)
2187 (enable_overlay_breakpoints, disable_overlay_breakpoints)
2188 (set_longjmp_resume_breakpoint)
2189 (enable_watchpoints_after_interactive_call_stop)
2190 (disable_watchpoints_before_interactive_call_start)
2191 (create_internal_breakpoint)
2192 (create_fork_vfork_event_catchpoint)
2193 (create_exec_event_catchpoint, set_momentary_breakpoint)
2194 (create_breakpoints, break_command_1, watch_command_1)
2195 (create_exception_catchpoint)
2196 (handle_gnu_v3_exceptions)
2197 (disable_breakpoint, breakpoint_re_set_one)
2198 (create_thread_event_breakpoint, create_solib_event_breakpoint)
2199 (create_ada_exception_breakpoint): : Don't call check_duplicates.
2200 Call update_global_location_list.
2201 (delete_breakpoint): Don't remove locations and don't
2202 try to reinsert them. Call update_global_location_list.
2203 (update_breakpoint_locations): Likewise.
2204 (restore_always_inserted_mode): New.
2205 (update_breakpoints_after_exec): Temporary disable
2206 always inserted mode.
2207 * Makefile.in: Update dependencies.
2209 * infrun.c (proceed): Remove breakpoints while stepping
2211 (handle_inferior_event): Don't remove or insert
2213 * linux-fork.c (checkpoint_command): Remove breakpoints
2214 before fork and insert after.
2215 (linux_fork_context): Remove breakpoints before switch
2217 * target.c (target_disconnect, target_detach): Remove
2218 breakpoints from target.
2223 * breakpoint.c (print_one_breakpoint_location): In MI
2224 mode, report the location string the breakpoint was
2225 originally created with.
2229 * Makefile.in (xtensa-tdep.o): Update dependencies.
2230 * configure.tgt (xtensa*): Update dependencies.
2231 * xtensa-tdep.c (arreg_number): Renamed from areg_number.
2232 Local variable areg renamed to arreg.
2233 (areg_number): New function.
2234 (xtensa_pseudo_register_read, xtensa_pseudo_register_write)
2235 (xtensa_extract_return_value, xtensa_store_return_value): areg_number
2236 replaced by arreg_number.
2237 (xtensa_windowed_frame_cache, struct xtensa_frame_cache): New comments.
2238 (xtensa_alloc_frame_cache): Initialize cache->wd.ws.
2239 (xtensa_scan_prologue): New function.
2240 (xtensa_frame_cache): New local fp_regnum. Handle separately the case,
2241 when ENTRY instraction hasn't been executed yet. Get the frame pointer
2242 value based on prologue analysis. Fix the bugs preventing WS and
2243 AR4-AR7/A11 registers from getting right values for intermediate frames,
2244 whose registers have been already spilled.
2245 (xtensa_frame_prev_register): Fix WS register value. Use are_number
2246 and arreg_number appropriately.
2247 (xtensa_gdbarch_init): Set solib_svr4_fetch_link_map_offsets to
2248 svr4_ilp32_fetch_link_map_offsets.
2252 * printcmd.c: Define USE_PRINTF_I64 and PRINTF_HAS_LONG_LONG on MinGW.
2253 (printf_command): Convert %lld to %I64d when USE_PRINTF_I64 set.
2257 * acinclude.m4: Add override.m4.
2258 * configure: Regenerate.
2262 * ada-lang.c (get_selections): Variable PROMPT made non-const and
2263 initialized with a trailing space now. Use PROMPT_ARG of
2264 COMMAND_LINE_INPUT instead of printing it ourselves.
2268 * NEWS: Document support for 64-bit core file.
2272 * NEWS: Add information on calling convention and new SH CLI options.
2274 * sh-tdep.c (sh_cc_gcc): New static string.
2275 (sh_cc_renesas): Ditto.
2276 (sh_cc_enum): New static string array.
2277 (sh_active_calling_convention): New static string pointer denoting
2278 active user chosen ABI.
2279 (sh_is_renesas_calling_convention): New function to return function
2280 specific ABI, or user choice if necessary.
2281 (sh_use_struct_convention): Rename first argument and turn around its
2282 meaning. Check for renesas ABI and return accordingly.
2283 (sh_use_struct_convention_nofpu): New function.
2284 (sh_next_flt_argreg): Get function type as third parameter. Check
2285 for renesas ABI and choose floating registers accordingly.
2286 (sh_push_dummy_call_fpu): Check for ABI and choose argument slot and
2287 struct return slot accordingly.
2288 (sh_push_dummy_call_nofpu): Ditto.
2289 (sh_return_value_nofpu): Call sh_use_struct_convention_nofpu from here.
2290 Evaluate ABI and give to sh_use_struct_convention_nofpu.
2291 (sh_return_value_fpu): Evaluate ABI and give to
2292 sh_use_struct_convention.
2293 (show_sh_command): New function.
2294 (set_sh_command): Ditto.
2295 (_initialize_sh_tdep): Initialize `set/show sh calling-convention
2298 * gdbarch.sh (return_value): Add func_type argument.
2299 * gdbarch.c: Regenerate.
2301 * eval.c (evaluate_subexp_standard): Rename local variable value_type to
2302 val_type so as not to collide with value_type function. Call
2303 using_struct_return with additional function type argument.
2304 * infcall.c (call_function_by_hand): Call using_struct_return and
2305 gdbarch_return_value with additional function type argument.
2306 * infcmd.c (print_return_value): Take addition func_type argument.
2307 Call gdbarch_return_value with additional function type argument.
2308 (finish_command_continuation): Call print_return_value with additional
2309 function type argument.
2310 (finish_command): Ditto.
2311 * sparc-tdep.c (sparc32_push_dummy_code): Call using_struct_return with
2312 additional function type argument.
2313 * stack.c (return_command): Call using_struct_return and
2314 gdbarch_return_value with additional function type argument.
2315 * value.c (using_struct_return): Take additional function type argument.
2316 * value.h (using_struct_return): Accommodate declaration.
2317 * alpha-tdep.c (alpha_return_value): Add func_type argument.
2318 * amd64-tdep.c (amd64_return_value): Ditto.
2319 * arm-tdep.c (arm_return_value): Ditto.
2320 * avr-tdep.c (avr_return_value): Ditto.
2321 * cris-tdep.c (cris_return_value): Ditto.
2322 * frv-tdep.c (frv_return_value): Ditto.
2323 * h8300-tdep.c (h8300_return_value): Ditto.
2324 (h8300h_return_value): Ditto.
2325 * hppa-tdep.c (hppa32_return_value): Ditto.
2326 (hppa64_return_value): Ditto.
2327 * i386-tdep.c (i386_return_value): Ditto.
2328 * ia64-tdep.c (ia64_return_value): Ditto.
2329 * iq2000-tdep.c (iq2000_return_value): Ditto.
2330 * m32c-tdep.c (m32c_return_value): Ditto.
2331 * m32r-tdep.c (m32r_return_value): Ditto.
2332 * m68hc11-tdep.c (m68hc11_return_value): Ditto.
2333 * m68k-tdep.c (m68k_return_value): Ditto.
2334 (m68k_svr4_return_value): Ditto.
2335 * m88k-tdep.c (m88k_return_value): Ditto.
2336 * mep-tdep.c (mep_return_value): Ditto.
2337 * mips-tdep.c (mips_eabi_return_value): Ditto.
2338 (mips_n32n64_return_value): Ditto.
2339 (mips_o32_return_value): Ditto.
2340 (mips_o64_return_value): Ditto.
2341 * mn10300-tdep.c (mn10300_return_value): Ditto.
2342 * mt-tdep.c (mt_return_value): Ditto.
2343 * ppc-linux-tdep.c (ppc_linux_return_value): Ditto.
2344 * ppc-sysv-tdep.c (ppc_sysv_abi_return_value): Ditto.
2345 (ppc_sysv_abi_broken_return_value): Ditto.
2346 (ppc64_sysv_abi_return_value): Ditto.
2347 * ppc-tdep.h (ppc_sysv_abi_return_value): Ditto.
2348 (ppc_sysv_abi_broken_return_value): Ditto.
2349 (ppc64_sysv_abi_return_value): Ditto.
2350 * ppcnbsd-tdep.c (ppcnbsd_return_value): Ditto.
2351 * rs6000-tdep.c (rs6000_return_value): Ditto.
2352 * s390-tdep.c (s390_return_value): Ditto.
2353 * score-tdep.c (score_return_value): Ditto.
2354 * sh-tdep.c (sh_return_value_nofpu): Ditto.
2355 (sh_return_value_fpu): Ditto.
2356 * sh64-tdep.c (sh64_return_value): Ditto.
2357 * sparc-tdep.c (sparc32_return_value): Ditto.
2358 * sparc64-tdep.c (sparc64_return_value): Ditto.
2359 * spu-tdep.c (spu_return_value): Ditto.
2360 * v850-tdep.c (v850_return_value): Ditto.
2361 * vax-tdep.c (vax_return_value): Ditto.
2362 * xstormy16-tdep.c (xstormy16_return_value): Ditto.
2363 * xtensa-tdep.c (xtensa_return_value): Ditto.
2365 * gdbtypes.h (struct type): Add calling_convention member.
2366 * dwarf2read.c (read_subroutine_type): Add calling convention read
2367 from DW_AT_calling_convention attribute to function type.
2371 * eval.c (evaluate_subexp_standard): Use value_subscripted_rvalue for
2372 multi_f77_subscript to support values from registers.
2373 * valarith.c (value_subscripted_rvalue): Remove prototype and static.
2374 * value.h (value_subscripted_rvalue): Add prototype.
2376 * f-typeprint.c (f_type_print_base): Add support for TYPE_CODE_UNION.
2378 * f-valprint.c (f_val_print): Likewise.
2382 * dwarf2read.c (zlib_decompress_section): Define abfd in the
2387 * symfile.c (syms_from_objfile): Don't warn if lowest loadable
2388 section is not a code section.
2392 * NEWS: Add information on compressed debug sections.
2396 * mi/mi-cmd-var.c (varobj_update_one): Print new
2397 value for variable objects that changed type.
2401 * varobj.c (varobj_invalidate): Don't touch floating
2406 * symtab.c: (multiple_symbols_modes, multiple_symbols_ask)
2407 (multiple_symbols_cancel): Remove extra const.
2408 * symtab.h: Likewise.
2412 * interps.c (top_level_interpreter): Rename static variable...
2413 (top_level_interpreter_ptr): ...to this.
2414 (top_level_interpreter): New function.
2416 * interps.h: New extern for top_level_interpreter.
2418 * linespec.c: Include interps.h and mi/mi-cmds.h.
2419 (decode_line_2): When using MI, always set all breakpoints in menu.
2421 * Makefile.in (linespec.o, mi-interp.o): Add dependencies.
2425 * configure.ac (AC_SEARCH_LIBS): Add check for zlib.
2426 * config.in, configure: Regenerate.
2427 * dwarf2read.c: Include zlib.h if present.
2428 Modified *_SECTION macros.
2429 (section_is_p): New.
2430 (dwarf2_locate_sections): Use section_is_p instead of strcmp
2431 (dwarf2_resize_section): New.
2432 to determine whether a given section has a given name.
2433 (zlib_decompress_section): New.
2434 (dwarf2_read_section): Read the compressed section if present
2436 * MAINTAINERS: Added myself to section Write After Approval.
2440 * defs.h (exec_set_section_offsets): Remove prototype.
2441 * exec.c (exec_set_section_offsets): Remove function.
2445 * stabsread.c (cleanup_undefined_types_1): Add instance flags check
2446 in the search for the matching symbol.
2450 * breakpoint.c (update_watchpoint): Always reparse
2455 * breakpoint.c (print_one_breakpoint_location): Make sure to print
2456 the breakpoint address only once.
2460 * rs6000-tdep.c (rs6000_gdbarch_init): Use the BFD architecture,
2461 rather than a hard-coded architecture, for xcoff executables.
2465 * buildsym.c (watch_main_source_file_lossage): New fn.
2466 (end_symtab): Call it.
2468 * source.c (find_and_open_source): Add some comments clarifying
2469 handling of FULLNAME argument. Make static. Remove pointless
2474 * inf-loop.c (inferior_event_handler): Also run the intermediate
2475 continuations in the INF_EXEC_COMPLETE case.
2479 * cli/cli-decode.h (CMD_ASYNC_OK): New define.
2480 (set_cmd_async_ok, get_cmd_async_ok): Declare.
2481 * cli/cli-decode.c (set_cmd_async_ok): New function.
2482 (get_cmd_async_ok): New function.
2483 * cli/cli-cmds.c (init_cli_cmds): Mark "pwd", "help", "info", and
2485 * top.c (execute_command): Use get_cmd_async_ok.
2486 * infcmd.c: Include cli/cli-decode.h.
2487 (_initialize_infcmd): Mark "interrupt" as async-ok.
2488 * Makefile.in (infcmd.o): Depend on cli_decode_h.
2493 * exec.c: Correct "arch-utils.h" include.
2498 * infrun.c (normal_stop) Move breakpoint_auto_delete further down
2499 to allow printing to 'see' real reason of stop. This fixes PR 2424.
2500 * breakpoint.c (bpdisp_texst): New function. The function takes over
2501 the role of bpstats static array in print_one_breakpoint_location.
2502 (print_it_typical): Print "Temporary breakpoint" instead
2503 of just "Breakpoint" when breakpoint is, well, temporary. For mi-like
2504 protocols, print disp field.
2505 (print_one_breakpoint_location): Removed bpdisps static definition.
2506 Call new bpstat_text function to get value for 'disp' field.
2507 (mention): Print "Temporary breakpoint" instead of just "Breakpoint".
2511 * gnulib/Makefile.am, gnulib/m4/gnulib-cache.m4,
2512 gnulib/aux/link-warning.h, gnulib/extra/link-warning.h: Adjust
2513 by rerunning gnulib-tool with --aux-dir=gnulib/extra.
2514 * gnulib/Makefile.in: Regenerate.
2518 * Makefile.in (GNULIB_H): New. Trigger all-lib.
2519 (defs_h): Use $(GNULIB_H).
2520 (all-lib): Depend on gnulib/Makefile.
2521 (gnulib/Makefile): Regenerate gnulib/Makefile and gnulib/.deps.
2522 * config.in, gnulib/Makefile.in: Regenerated.
2526 * Makefile.in (LIBGNU, INCGNU): Define.
2527 (INTERNAL_CFLAGS_BASE): Add INCGNU.
2528 (INTERNAL_LIBS, CLIBS, CDEPS): Add LIBGNU.
2530 ($(LIBGNU), all-lib): New rules.
2531 (clean, distclean, do-maintainer-clean): Use CLEANDIRS.
2532 * configure.ac: Use gl_EARLY, gl_INIT, and AM_INIT_AUTOMAKE.
2533 Simplify AC_CONFIG_AUX_DIR. Generate gnulib/Makefile.
2534 * gnulib: New directory, from gnulib-tool.
2535 * configure, aclocal.m4: Regenerated.
2539 * linux-thread-db.c (have_threads_callback): Check thread->private.
2545 * varobj.c (value_of_root): Update the expression for
2547 * mi/mi-cmd-var.c (varobj_update_one): If type has changed,
2552 * mi/mi-cmd-var.c: Include "mi-getopt.h".
2553 (mi_parse_format): New. Factored out from mi_cmd_var_set_format.
2554 (mi_cmd_var_set_format): Use new mi_parse_format.
2555 (mi_cmd_var_evaluate_expression): Support for -f option to specify
2557 * Makefile.in (mi-cmd-var.o): Update dependencies.
2559 * varobj.h (varobj_get_formatted_value): Declare.
2560 * varobj.c (my_value_of_variable): Added format parameter.
2561 (cplus_value_of_variable): Likewise.
2562 (java_value_of_variable): Likewise.
2563 (c_value_of_variable): Likewise. Evaluate expression based
2564 on format parameter.
2565 (struct language_specific): Add format parameter to function member
2567 (varobj_get_formatted_value): New.
2568 (varobj_get_value): Added format parameter to method call.
2572 * stabsread.c (cleanup_undefined_types_noname): Manually set the
2573 instance flags of the undefined type before calling replace_type.
2577 * target.h (enum strata): Remove the download_stratum.
2581 * buildsym.h (last_source_file): Add dwarf info to comment.
2582 (last_source_start_addr): Ditto.
2586 * alphanbsd-tdep.c: Include "target.h".
2587 * mn10300-tdep.c: Include "target.h".
2588 * Makefile.in (alphanbsd-tdep.o, mn10300-tdep.o): Update.
2592 Fix breakpoint condition that use member variables.
2593 * valops.c (check_field): Remove.
2594 (check_field_in): Rename to check_field.
2595 (value_of_this): Use la_name_of_this.
2596 * value.h (check_field): Adjust prototype.
2598 * language.h (la_value_of_this): Rename to la_name_of_this.
2599 * language.c (unknown_language_defn): Specify "this" for
2601 (auto_language_defn): Likewise.
2602 (local_language_defn): Likewise.
2603 * ada-lang.c (ada_language_defn): Adjust comment.
2604 * c-lang.c (c_language_defn): Adjust comment.
2605 (cplus_language_defn): Specify "this" for name_of_this.
2606 (asm_language_defn): Adjust comment.
2607 (minimal_language_defn): Adjust comment.
2608 * f-lang.c (f_language_defn): Specify NULL for name_of_this.
2609 * jv-lang.c (java_language_defn): Specify "this" for name_of_this.
2610 * m2-lang.c (m2_language_defn): Specify "this" for name_of_this.
2611 * objc-lang.c (objc_language_defn): Specify "self" for
2613 * p-lang.c (pascal_language_defn): Specify "this" for
2615 * scm-lang.c (scm_language_defn): Specify NULL for name_of_this.
2617 * symtab.c (lookup_symbol_aux): Lookup "this" in the
2618 proper scope, and check for field in type of "this", without
2619 trying to create a value.
2623 * mi/mi-cmds.h (enum mi_cmd_result): Delete MI_CMD_ERROR.
2624 (mi_error_message): Delete declaration.
2625 * mi/mi-interp.c (mi_cmd_interpreter_exec): Call error instead of
2626 returning MI_CMD_ERROR.
2627 * mi/mi-main.c (mi_error_message): Delete.
2628 (mi_cmd_exec_interrupt):
2629 (mi_cmd_thread_select, mi_cmd_thread_list_ids)
2630 (mi_cmd_thread_info): Call error instead of returning
2632 (mi_cmd_data_list_register_values): Call error instead of
2633 returning MI_CMD_ERROR. Adapt to new get_register interface.
2634 (get_register): Change return typo to void. Call error instead of
2635 returning MI_CMD_ERROR.
2636 (mi_cmd_data_write_register_values): Call error instead of
2637 returning MI_CMD_ERROR.
2638 (mi_cmd_list_features): Return MI_CMD_DONE.
2639 (captured_mi_execute_command): Remove MI_CMD_ERROR handling.
2640 (mi_execute_command): Always print exceptions with -error.
2644 * NEWS: Mention new commands set/show multiple-symbols.
2648 * symtab.c (multiple_symbols_ask, multiple_symbols_all)
2649 (multiple_symbols_cancel): New constants.
2650 (multiple_symbols_modes, multiple_symbols_mode): New static globals.
2651 (multiple_symbols_select_mode): New function.
2652 (_initialize_symtab): Add new set/show multiple-symbols commands.
2653 * symtab.h (multiple_symbols_ask, multiple_symbols_all)
2654 (multiple_symbols_cancel, multiple_symbols_select_mode): Declare.
2655 * ada-lang.c (user_select_syms): Add handling of new multiple-symbols
2657 * linespec.c (decode_line_2): Likewise.
2661 * symtab.h (enum free_code): Delete free_contents, unused.
2662 * symmisc.c (free_symtab_block): Delete.
2663 (free_symtab, case free_code): Delete.
2667 * valops.c (value_cast_structs): New function. Cast related
2668 STRUCT types up/down and return cast value. The body of this
2669 function comes mostly from value_cast_pointers.
2670 (value_cast_pointers): Code for actual cast STRUCT-STRUCT moved
2671 to value_cast_structs. Now value_cast_pointers needs only create
2672 appropriate reference after using value_cast_structs for actual
2674 (value_cast): Handle references.
2678 * MAINTAINERS: Added myself to section Write After Approval.
2682 * ia64-tdep.c (examine_prologue): Correct array access.
2686 * cp-support.c (first_component_command): Return if no arguments.
2690 * ser-mingw.c (ser_windows_open): Open requested name.
2694 * MAINTAINERS: Added myself.
2698 * target.c (find_default_run_target): Allow a NULL `do_mesg'
2699 parameter. If it is NULL, don't call error.
2700 (find_default_can_async_p, find_default_is_async_p): Pass NULL as
2701 `do_mesg' parameter to find_default_run_target. If no target was
2706 * mips-linux-tdep.c: Update N32/N64 signal frame comments.
2707 (N64_SIGCONTEXT_LO, N64_SIGCONTEXT_PC, N64_SIGCONTEXT_FPCSR): Update.
2708 (N64_SIGCONTEXT_FIR, N64_SIGCONTEXT_CAUSE, N64_SIGCONTEXT_BADVADDR):
2710 (mips_linux_n32n64_sigframe_init): Do not record cause or badvaddr.
2718 * features/Makefile (%.dat): Set xmltarget to the base filename
2719 of the XML source, without subdirectory.
2720 * regformats/rs6000/powerpc-32.dat: Regenerate.
2721 * regformats/rs6000/powerpc-64.dat: Regenerate.
2722 * regformats/rs6000/powerpc-e500.dat: Regenerate.
2726 * xcoffread.c (scan_xcoff_symtab): Replace current_gdbarch by
2731 * mi/mi-main.c (enum captured_mi_execute_command_actions):
2732 Spell suppress in EXECUTE_COMMAND_SUPPRESS_PROMPT correctly.
2736 * objfiles.h (struct objfile): New GDBARCH member.
2737 (get_objfile_arch): Add prototype.
2738 * objfiles.c: Include "arch-utils.h".
2739 (allocate_objfile): Look up gdbarch associated with bfd.
2740 (get_objfile_arch): New function.
2741 * Makefile (objfiles.o): Update dependencies.
2743 * dwarf2-frame.c (decode_frame_entry_1): Replace current_gdbarch
2745 * dwarf2loc.c (dwarf_expr_read_reg): Replace current_gdbarch
2747 (locexpr_describe_location): Replace current_gdbarch by
2749 * dwarf2read.c (die_type): Replace current_gdbarch by objfile arch.
2750 (dwarf2_add_field): Likewise.
2751 (read_tag_pointer_type): Likewise.
2752 (read_base_type): Likewise.
2753 (new_symbol): Likewise.
2755 * coffread.c (decode_type): Add OBJFILE argument. Update callers.
2756 (decode_base_type, decode_function_type): Likewise.
2757 (coff_read_struct_type, coff_read_enum_type): Likewise.
2758 (coff_symtab_read): Replace current_gdbarch by objfile arch.
2759 (decode_base_type): Likewise.
2760 (coff_read_enum_type): Likewise.
2761 (coff_read_struct_type): Replace current_objfile by OBJFILE argument.
2762 (coff_read_enum_type): Likewise.
2764 * dbxread.c (read_dbx_symtab): Replace current_gdbarch by objfile arch.
2765 (end_psymtab): Likewise.
2766 (process_one_symbol): Likewise.
2768 * mdebugread.c (parse_symbol): Replace current_gdbarch by objfile arch.
2769 (parse_procedure): Likewise.
2770 (parse_partial_symbols): Likewise.
2772 * somread.c (som_symtab_read): Replace current_gdbarch by objfile arch.
2774 * stabsread.c (define_symbol): Replace current_gdbarch by objfile arch.
2775 Replace static pcc_promotion_type and pcc_unsigned_promotion_type by
2777 (read_range_type): Replace current_gdbarch by objfile arch. Replace
2778 static range_index_type by built-in type.
2779 (read_one_struct_field): Replace current_gdbarch by objfile arch.
2780 (read_enum_type): Likewise.
2782 * xcoffread.c (read_xcoff_symtab): Replace current_gdbarch by
2787 * varobj.h (varobj_floating_p): Declare.
2788 * varobj.c (varobj_floating_p): New.
2789 * mi/mi-cmd-var.c (mi_cmd_var_update): When passed
2790 '@' as the name, update all floating varobjs.
2794 * varobj.c (struct varobj_root): Rename use_selected_frame to
2795 floating, and clarify the meaning.
2796 (varobj_create, varobj_update, new_root_variable): Adjust.
2797 (value_of_root): Don't use type_changed as in variable,
2799 (c_value_of_root): Adjust.
2803 * linux-nat.c (linux_nat_attach): Add the pid we attached to, to
2805 (linux_nat_wait): Add main lwp to gdb's thread list.
2806 * linux-thread-db.c (find_new_threads_callback): Also attach to
2807 already listed threads which thread_db didn't know about yet.
2811 * linux-nat.c (drain_queued_events): Fix comment typo.
2812 (linux_nat_attach): In async mode, don't rely on storing a pending
2813 status. Instead place the wait status on the pipe.
2814 (linux_nat_resume): Remove unreacheable shortcut code in async
2816 (stop_wait_callback): In async mode, don't store pending status.
2817 Instead, cancel breakpoints or resend the signal appropriatelly.
2818 (cancel_breakpoint): New, refactored from
2819 cancel_breakpoints_callback.
2820 (cancel_breakpoints_callback): Call cancel_breakpoint.
2821 (pipe_to_local_event_queue): Remove special token processing.
2822 (linux_nat_wait): Issue an internal error if a pending status is
2823 found in async mode.
2827 * inflow.c (gdb_has_a_terminal): Guard access to our_process_group.
2832 * varobj.c (struct varobj_root): New component thread_id.
2833 (varobj_get_thread_id, check_scope): New functions.
2834 (c_value_of_root): Use check_scope. Switch to the
2835 proper thread if necessary.
2837 * varobj.h (varobj_get_thread_id): New extern.
2839 * mi/mi-cmd-var.c (print_varobj): Add thread-id field.
2844 * top.c: Revert 2008-03-21 changes.
2848 * thread.c (make_cleanup_restore_current_thread): Make it
2850 * gdbthread.h (make_cleanup_restore_current_thread): Declare.
2851 * varobj.c (varobj_update): Don't save/restore frame.
2852 (c_value_of_root): Save/restore thread and frame here,
2853 using make_cleanup_restore_current_thread.
2854 * Makefile.in: Update dependecies.
2858 * varobj.c (struct varobj_root): Clarify
2859 comment on the frame field.
2860 (varobj_create): Don't set frame if we have no
2866 Suggested by Jan Kratochvil:
2867 * top.c (gdb_rl_operate_and_get_next_completion): Call
2868 rl_redisplay_function.
2869 (gdb_rl_redisplay): New.
2870 (init_main): Set rl_redisplay_function.
2874 * aix-thread.c (pdc_read_regs): Fix compiler warning.
2875 (pdc_write_regs, aix_thread_resume, fetch_regs_kernel_thread)
2876 (store_regs_kernel_thread): Likewise.
2880 Linux native async support.
2882 * target.h (struct target_ops): Delete to_async_mask_value and add
2884 (target_is_async_p, target_async): Formatting.
2885 (target_async_mask_value): Delete.
2886 (target_async_mask): Delete function declaration, and add new
2887 target macro with the same name.
2889 * target.c (update_current_target): Replace to_async_mask_value by
2890 to_async_mask. Default to_async_mask to return_one.
2891 (target_async_mask): Delete.
2892 (find_default_can_async_p, find_default_is_async_p): New.
2893 (init_dummy_target): register find_default_can_async_p and
2894 find_default_is_async_p on the dummy target.
2896 * linux-nat.c: Include inf-loop.h, event-loop.h and event-top.h.
2897 (debug_linux_nat_async): New global.
2898 (show_debug_linux_nat_async): New function.
2899 (linux_nat_async_enabled, linux_nat_async_mask_value)
2900 (linux_nat_event_pipe, linux_nat_num_queued_events)
2901 (linux_nat_async_events_enabled): New globals.
2902 (struct waitpid_result): New struct.
2903 (waitpid_queue): New global.
2904 (queued_waitpid, push_waitpid, drain_queued_events): New.
2905 (my_waitpid): Call queued_waitpid.
2906 (linux_child_follow_fork): Disable async events during the call.
2907 (blocked_mask): Delete.
2908 (sync_sigchld_action, async_sigchld_action): New globals.
2909 (lin_lwp_attach_lwp): In sync mode, don't reblock SIGCHLD. In
2910 async mode, block events during the call.
2911 (linux_nat_create_inferior): New.
2912 (linux_nat_attach): In sync mode, restore the mask states. In
2913 async mode, wake the event loop immediatelly.
2914 (detach_callback): Drain all queued events of the lwp we're
2916 (linux_nat_detach): Block async mode, and drain events of the main
2918 (linux_nat_resume): If in async mode, mask async events during the
2919 call. If short circuiting, force event loop to wake up. If
2920 resuming, set target_executing, and register target events in the
2922 (pipe_to_local_event_queue, local_event_queue_to_pipe): New.
2923 (linux_nat_wait): In async mode, block events during the call.
2924 Only enable/disable passing SIGINT to the inferior in sync mode.
2925 Get events from local waitpid queue. If no interesting events was
2926 found, return to events loop. Reregister target events in the
2927 event loop on exit. In sync mode, no need to reblock SIGCHLD.
2928 (linux_nat_kill): Disable events on entry.
2929 (linux_nat_mourn_inferior): In sync mode, don't restore the masks
2930 here. Detach async mode from the event loop if there are no more
2931 forks available, otherwise leave it on.
2932 (sigchld_handler): Assure this is called only in sync mode.
2933 (linux_async_permitted, linux_async_permitted_1): New globals.
2934 (set_maintenance_linux_async_permitted)
2935 (show_maintenance_linux_async_permitted): New functions.
2936 (linux_nat_is_async_p, linux_nat_can_async_p)
2937 (linux_nat_async_mask): New.
2938 (linux_nat_event_pipe_pop, linux_nat_event_pipe_push): New.
2939 (get_pending_events, async_sigchld_handler): New.
2940 (linux_nat_async_events): New.
2941 (async_terminal_is_ours): New global.
2942 (linux_nat_terminal_inferior, linux_nat_terminal_ours): New.
2943 (async_client_callback, async_client_context): New.
2944 (linux_nat_async_file_handler, linux_nat_async)
2945 (linux_nat_disable_async, linux_nat_enable_async): New.
2946 (linux_nat_add_target): Register linux_nat_create_inferior,
2947 linux_nat_can_async_p, linux_nat_is_async_p, linux_nat_async,
2948 linux_nat_async_mask, linux_nat_terminal_inferior and
2949 linux_nat_terminal_ours.
2950 (_initialize_linux_nat): Remove local action variable, and update
2951 code that used it to use sync_sigchld_action. Add new
2952 "lin-lwp-async" debug set/show command. Put the "lin-lwp" debug
2953 set/show command in the maintenance class. Add new "linux-async"
2954 maintenance set/show command. Block SIGCHLD by default. Setup
2955 async_sichld_action, and sync_sigchld_action. Install the default
2957 (lin_thread_get_thread_signals): Use a local sigset_t for blocking
2960 * linux-thread-db.c (re_check_for_thread_db): New.
2961 (clear_lwpid_callback): Handle TARGET_WAITKIND_IGNORE.
2962 (thread_db_can_async_p, thread_db_is_async_p, thread_db_async)
2963 (thread_db_async_mask): New.
2964 (init_thread_db_ops): Register thread_db_can_async_p,
2965 thread_db_is_async_p, thread_db_async and thread_db_async_mask.
2967 * remote.c (remote_async_mask_value): New.
2968 (remote_return_zero): New.
2969 (init_remote_ops): Register remote_return_zero as callbacks of
2970 to_can_async_p and to_is_async_p.
2971 (remote_can_async_p, remote_is_async_p, remote_async): Update to
2972 use remote_async_mask_value.
2973 (remote_async_mask): New.
2974 (init_remote_async_ops): Remove to_async_mask_value setting and
2975 register remote_async_mask as to_async_mask callback in
2978 * Makefile.in (linux-nat.o): Update.
2982 * gdbthread.h (add_thread_with_info): New.
2983 * linux-thread-db.c: Add some documentation.
2984 (GET_LWP, GET_PID, GET_THREAD, is_lwp, is_thread, BUILD_LWP): Delete.
2985 (struct private_thread_info): Remove th_valid and ti_valid.
2986 Replace ti with tid.
2987 (thread_get_info_callback): Do not add TID to the new ptid. Do
2989 (thread_db_map_id2thr, lwp_from_thread): Delete functions.
2990 (thread_from_lwp): Assert that the LWP is set. Do not add TID to the
2992 (attach_thread): Handle an already-existing thread. Use
2993 add_thread_with_info. Cache the th and tid.
2994 (detach_thread): Verify that private was set. Remove verbose
2995 argument and printing. Update caller.
2996 (thread_db_detach): Do not adjust inferior_ptid.
2997 (clear_lwpid_callback, thread_db_resume, thread_db_kill): Delete.
2998 (check_event, find_new_threads_callback): Do not add TID to the new PTID.
2999 (thread_db_wait): Do not use lwp_from_thread.
3000 (thread_db_pid_to_str): Use the cached TID.
3001 (thread_db_extra_thread_info): Check that private is set.
3002 (same_ptid_callback): Delete.
3003 (thread_db_get_thread_local_address): Do not use it or check
3004 is_thread. Check that private is set. Assume that the thread
3005 handle is already cached.
3006 (init_thread_db_ops): Remove to_resume and to_kill.
3007 * thread.c (add_thread_with_info): New.
3008 (add_thread): Use it.
3009 * linux-nat.c (find_thread_from_lwp): Delete.
3010 (exit_lwp): Do not use it. Check print_thread_events. Print before
3011 deleting the thread.
3012 (GET_PID, GET_LWP, BUILD_LWP, is_lwp): Move to...
3013 * linux-nat.h (GET_PID, GET_LWP, BUILD_LWP, is_lwp): ...here.
3014 * inf-ttrace.c (inf_ttrace_wait): Use print_thread_events and
3015 printf_unfiltered for thread exits.
3016 * procfs.c (procfs_wait): Likewise.
3020 * symtab.c (rbreak_command): Quote symbol name before passing
3021 it to break_command.
3025 * eval.c (evaluate_subexp_for_address): Clarify error message.
3026 Use value_must_coerce_to_target.
3027 * infcall.c (value_arg_coerce): Call value_coerce_to_target.
3028 * valops.c (value_assign): Call value_coerce_to_target when
3029 assigning to anything but internalvars. Leave GDB-side arrays
3030 as arrays when assigning to internalvars.
3031 (value_must_coerce_to_target, value_coerce_to_target): New.
3032 (value_coerce_array, value_addr): Call value_coerce_to_target.
3033 (value_array): Create the array in GDB's memory instead of
3035 * value.h (value_must_coerce_to_target, value_coerce_to_target):
3040 * top.c (quit_confirm): Warn that we will kill the program.
3044 * inflow.c (terminal_ours_1): Guard access to
3045 inferior_process_group with #ifdef PROCESS_GROUP_TYPE.
3051 * dwarf2expr.h (struct dwarf_expr_context): Add ADDR_SIZE member.
3052 (dwarf2_read_address): Update prototype.
3054 * dwarf2expr.c (unsigned_address_type): Add ADDR_SIZE parameter.
3055 (signed_address_type): Likewise.
3056 (dwarf2_read_address): Replace BYTES_READ parameter with ADDR_SIZE.
3057 (execute_stack_op): Update calls to unsigned_address_type,
3058 signed_address_type and dwarf2_read_address. Fix implementation
3059 of DW_OP_deref_size.
3061 * dwarf2loc.h (dwarf2_per_cu_objfile): Add prototype.
3062 (dwarf2_per_cu_addr_size): Likewise.
3063 (struct dwarf2_locexpr_baton): Replace OBJFILE with PER_CU.
3064 (struct dwarf2_loclist_baton): Likewise.
3066 * dwarf2loc.c (find_location_expression): Update calls to
3067 dwarf2_read_address. Use dwarf2_per_cu_objfile and
3068 dwarf2_per_cu_addr_size to retrieve PER_CU parameters.
3069 (locexpr_describe_location): Likewise.
3070 (dwarf2_evaluate_loc_desc): Replace OBJFILE with PER_CU parameter.
3071 Set ctx->addr_size to dwarf2_per_cu_addr_size (per_cu).
3072 (dwarf2_loc_desc_needs_frame): Add PER_CU parameter. Set ctx->addr_size
3073 to dwarf2_per_cu_addr_size (per_cu).
3074 (locexpr_read_variable): Update dwarf2_evaluate_loc_desc call.
3075 (loclist_read_variable): Likewise.
3076 (locexpr_read_needs_frame): Update dwarf2_loc_desc_needs_frame call.
3078 * dwarf2read.c (dwarf2_symbol_mark_computed): Set baton->per_cu
3079 instead of baton->objfile.
3080 (dwarf2_per_cu_obfile): New function.
3081 (dwarf2_per_cu_addr_size): Likewise.
3083 * dwarf2-frame.c (struct comp_unit): Move higher.
3084 (struct dwarf2_cie): Add UNIT and ADDR_SIZE members.
3085 (execute_stack_op): Add ADDR_SIZE parameter; set ctx->addr_size.
3086 (execute_cfa_program): Add FDE parameter. Replace EH_FRAME_P
3087 parameter by using fde->eh_frame_p. Use read_encoded_value
3088 to implement DW_CFA_set_loc.
3089 (struct dwarf2_frame_cache): Add ADDR_SIZE member.
3090 (dwarf2_frame_cache): Set cache->addr_size. Update calls to
3091 execute_stack_op and execute_cfa_program.
3092 (dwarf2_frame_prev_register): Update calls to execute_stack_op.
3093 (size_of_encoded_value): Remove.
3094 (read_encoded_value): Add PTR_LEN and FUNC_BASE parameters.
3095 Remove call to size_of_encoded_value. Implement DW_EH_PE_funcrel.
3096 (add_cie): Set cie->unit backlink.
3097 (decode_frame_entry_1): Set cie->addr_size. Update calls to
3099 (dwarf2_build_frame_info): Allocate UNIT on objfile obstack.
3103 * i386-tdep.c (i386_print_insn): Remove unnecessary call to
3104 gdbarch_bfd_arch_info.
3108 * aix-thread.c (pdc_read_regs): Minor reformatting.
3112 * thread.c (print_thread_info): Don't insist
3113 on having current thread if there are no
3118 * infcmd.c (attach_command_post_wait)
3119 (attach_command_continuation): New.
3120 (attach_command): Support background async execution, and async
3121 execution in synchronous mode.
3125 * stack.c (print_stack_frame, print_frame): Use RETURN_MASK_ERROR.
3126 * symmisc.c (dump_symtab_1): Likewise.
3127 * wrapper.c (gdb_value_struct_elt): Likewise.
3131 * linux-nat.c (linux_nat_filter_event): Fix comment typo.
3135 * linux-nat.c (linux_nat_filter_event): New, refactored from
3137 (linux_nat_wait): Call linux_nat_filter_event.
3141 * top.c (execute_command): Fix uninitialized variable error.
3145 * Makefile.in (amd64nbsd-nat.o): New dependency.
3146 * amd64nbsd-nat.c: Include "nbsd-nat.h".
3147 (_initialize_amd64nbsd_nat): Update target vector to use
3148 nbsd_pid_to_exec_file.
3149 * config/i386/nbsd64.mh (NATDEPFILES): Add nbsd-nat.o.
3153 Remove ignoring leading exec events code.
3154 * fork-child.c (startup_inferior): Do not set
3155 inferior_ignoring_leading_exec_events.
3156 * inf-child.c (inf_child_reported_exec_events_per_exec_call): Remove.
3157 (inf_child_target): Do not set to_reported_exec_events_per_exec_call.
3158 * infrun.c (inferior_ignoring_leading_exec_events): Remove.
3159 (handle_inferior_event): Remove code for ignoring leading exec
3161 * target.c (update_current_target): Do not inherit, or default,
3162 to_reported_exec_events_per_exec_call.
3163 (debug_to_reported_exec_events_per_exec_call): Remove.
3164 (setup_target_debug): Do not set to_reported_exec_events_per_exec_call.
3165 * target.h (target_reported_exec_events_per_exec_call): Remove.
3166 (struct target): Remove the to_reported_exec_events_per_exec_call
3171 Implement -thread-info.
3172 * gdbthread.h (print_thread_info): Declare.
3174 * thread.c (print_thread_info): New, extracted
3175 from info_threads_command and adjusted to
3176 work for CLI and MI.
3177 (info_threads_command): Use print_thread_info.
3178 * Makefile.in: Update dependencies.
3180 * mi/mi-cmds.c (mi_cmds): Specify a handler
3182 * mi/mi-cmds.h (mi_cmd_thread_info): Declare.
3183 * mi/mi-main.c (mi_cmd_thread_info): New.
3184 (mi_cmd_list_features): Include 'thread-info'.
3188 * mips-tdep.c (mips32_scan_prologue): Use the ABI register size
3189 to decide whether to match instruction patterns using "sw" and "sd".
3193 * infcmd.c (jump_command): Postpone disabling stdin until after
3198 * inflow.c (gdb_getpgrp): New.
3199 (gdb_has_a_terminal): Use get_getpgrp.
3200 (terminal_ours_1): If attach_flag is set, don't refetch
3201 inferior_process_group.
3205 * features/library-list.dtd: Allow "section" elements as children
3206 of "library". Add "section" element and describe its attributes.
3208 * solib-target.c (struct lm_info): Add section_bases member.
3209 (library_list_start_segment): Error out if seen a section element.
3210 (library_list_start_section): New.
3211 (library_list_end_library): New.
3212 (solib_target_free_library_list): Free section_bases.
3213 (section_attributes): New.
3214 (library_children): Make "segment" optional. Add "section" child.
3215 (library_list_children): Register library_list_end_library.
3216 (solib_target_relocate_section_addresses): Handle section bases.
3218 * NEWS: Mention new qXfer:libraries:read section offsets support.
3222 * defs.h (do_exec_error_cleanups, discard_exec_error_cleanups)
3223 (make_exec_error_cleanup): Remove declarations.
3224 * utils.c (exec_error_cleanup_chain): Remove.
3225 (do_exec_error_cleanups, discard_exec_error_cleanups)
3226 (make_exec_error_cleanup): Remove.
3227 * event-loop.c (start_event_loop): Adjust call to
3229 * event-top.c (async_enable_stdin): Remove the paramater dummy.
3230 (async_disable_stdin): Don't register async_enable_stdin via
3232 * inf-loop.c (inferior_event_handler): Don't
3233 call do_exec_error_cleanups. Call async_enable_stdin instead.
3234 * event-loop.c (start_event_loop): Adjust call to
3236 * tui/tui-interp.c (tui_command_loop): Adjust call to
3242 * Makefile.in (infcmd.o, inf-loop.o): Update dependencies.
3243 * breakpoint.c (bpstat_do_actions): In async mode,
3244 don't jump to top expecting stop_bpstat to be already
3246 * event-loop.c (start_event_loop): Call async_enable_stdin
3248 * event-top.c (async_enable_stdin): Do nothing if sync_execution
3250 (command_handler): Do not setup continuation here.
3251 (command_line_handler_continuation): Move to...
3252 * top.c (command_line_handler_continuation): ... here.
3253 (execute_command): In async mode, register continuation.
3254 Don't check frame's language in running in async mode.
3255 * exceptions.c (throw_exception): Don't do exec_error_cleanups.
3256 * inf-loop.c (complete_execution): Inline into...
3257 (inferior_event_handler): ... here. Clear target_executing before
3258 doing any cleanups. Don't try to show prompt if the target was
3260 * infcmd.c (signal_command): Add support for async mode.
3261 (finish_command): Only add continuation if the target was
3262 successfully resumed.
3263 * remote.c (init_async_opts): Register to_get_thread_local_address
3265 * mi/mi-interp.c (mi_cmd_interpreter_exec): Don't mess
3266 with sync_execution.
3267 * tui/tui-interp.c (tui_command_loop): Call async_enable_stdin
3272 * corefile.c (reopen_exec_file): Use exec_bfd_mtime.
3273 * exec.c (exec_bfd_mtime): Define.
3274 (exec_close): Clear it.
3275 (exec_file_attach): Set it.
3276 * gdbcore.h (exec_bfd_mtime): Declare.
3277 * source.c (find_source_lines): Do not use bfd_get_mtime.
3281 * top.c (simplified_command_loop): Remove.
3285 Remove unused remote.c hooks.
3286 * remote.c (deprecated_target_resume_hook)
3287 (deprecated_target_wait_loop_hook): Remove.
3288 (remote_resume): Do not call deprecated_target_resume_hook.
3289 (remote_wait): Do not call deprecated_target_wait_loop_hook.
3290 (remote_async_wait): Likewise.
3294 Implement MI notification for new threads.
3295 * doc/observer.texi (new_thread): Document.
3296 * observer.sh: Forward declare struct thread_info.
3297 * thread.c (add_thread): Notify observer.
3299 * interps.h (interp_init_ftype): New parameter
3301 (interp_set): Likewise.
3302 (top_level_interpreter_data): Declare.
3303 * interps.c (interp_set): New parameter top_level.
3304 Pass it to interpreter's init function. Remember
3305 top level interpreter.
3306 (interpreter_exec_cmd): Adjust.
3307 (top_level_interpreter_data): New.
3308 * main.c (captured_main): Pass 1 for top_level
3309 parameter of interp_set.
3310 * cli/cli-interp.c (cli_interpreter_init): New
3311 parameter top_level.
3312 * tui/tui-interp.c (tui_init): New parameter top_level.
3314 * mi/mi-interp.c (mi_new_thread): New.
3315 (mi_interpreter_init): If top level, register
3316 observer for new threads.
3318 * Makefile.in (mi-interp.o, thread.o): Update dependencies.
3322 * top.c (execute_command): Disable break and stop
3323 commands in async mode.
3329 * inf-loop.c (inferior_event_handler): Don't include remote.h.
3330 Call target_stop in the INF_QUIT_REQ case.
3331 * Makefile.in (inf-loop.o): Update.
3335 * inf-loop.c (inferior_event_handler): Don't include remote.h.
3336 Call target_stop in the INF_QUIT_REQ case.
3337 * Makefile.in (inf-loop.o): Update.
3341 * top.c (execute_command): Enable break, info and interrupt
3342 commands in async mode.
3347 * breakpoint.h (breakpoint_restore_shadows): New
3349 * breakpoint.c (breakpoint_restore_shadows): New.
3350 (read_memory_nobpt): Delete.
3351 * gdbcore.h (read_memory_nobpt): Delete declaration.
3352 * target.c (memory_xfer_partial): Call
3353 breakpoint_restore_shadows.
3354 (restore_show_memory_breakpoints)
3355 (make_show_memory_beakpoints_cleanup): New.
3356 (show_memory_breakpoints): New.
3357 * target.h (make_show_memory_beakpoints_cleanup): Declare.
3358 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint):
3359 Make sure we see memory breakpoints when checking if
3360 breakpoint is still there.
3361 * alpha-tdep.c, alphanbsd-tdep.c, frame.c, frv-tdep.c,
3362 hppa-linux-tdep.c, hppa-tdep.c, i386-linux-nat.c, i386-tdep.c,
3363 m68klinux-tdep.c, mips-tdep.c, mn10300-tdep.c, s390-tdep.c,
3364 sparc-tdep.c: Use target_read_memory instead of read_memory_nobpt.
3368 * thread.c (add_thread): Use printf_unfiltered to print.
3372 * sol-thread.c: Replace use of TM_I386SOL2_H by an expression
3373 that is true only on x86-solaris and x86_64-solaris.
3374 * procfs.c: Likewise. Move procfs_find_LDT_entry up together
3375 with proc_get_LDT_entry.
3379 * configure.ac (AC_CHECK_FUNCS): Add check for setsid.
3380 * config.in, configure: Regenerate.
3381 * fork-child.c (fork_inferior): Call create_tty_session.
3382 * inflow.c (new_tty): Set controlling terminal with TIOCSCTTY.
3383 (create_tty_session): New function.
3384 * terminal.h: Declare create_tty_session.
3389 * elfread.c (elf_symtab_read): Make shndx an unsigned int.
3390 * mipsread.c: Include elf/internal.h.
3391 (read_alphacoff_dynamic_symtab): Map external reserved sym_shndx
3396 * win32-nat.c (do_win32_fetch_inferior_registers): Use get_regcache_arch
3397 to get at the current architecture and at the target specific vector.
3398 Add target specific vector to I387_FISEG_REGNUM and I387_FOP_REGNUM and
3399 remove define of I387_ST0_REGNUM.
3401 * amd64-tdep.c (I387_ST0_REGNUM): Remove define.
3403 (amd64_supply_fxsave, amd64_collect_fxsave): Use get_regcache_arch to
3404 get at the current architecture
3405 (I387_FISEG_REGNUM, I387_FOSEG_REGNUM): Add target specific vector as
3408 * i386-tdep.c: Remove various define's and undef's of I387_ST0_REGNUM,
3409 I387_NUM_XMM_REGS and I387_MM0_REGNUM.
3411 (I387_NUM_XMM_REGS, I387_XMM0_REGNUM, I387_MXCSR_REGNUM,
3412 I387_ST0_REGNUM, I387_FCTRL_REGNUM, I387_MM0_REGNUM,
3413 (I387_FSTAT_REGNUM): Add target specific vector as parameter.
3415 (i386_register_name, i386_dbx_reg_to_regnum): Use gdbarch_tdep to get
3416 at the target specific vector.
3418 (i386_get_longjmp_target): Use get_frame_arch to get at the current
3419 architecture. Use gdbarch_tdep to get at the target specific vector.
3421 (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as parameter and
3422 update caller. Use gdbarch_tdep to get at the target specific vector.
3424 (i386_register_to_value: Use get_frame_arch to get at the current
3427 * i386-tdep.h (i386_fp_regnum_p, i386_fpc_regnum_p): Add gdbarch as
3430 * i387-tdep.c (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
3431 I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM
3432 I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_ST0_REGNUM, FSAVE_ADDR,
3433 FXSAVE_ADDR, I387_XMM0_REGNUM): Add target specific vector as parameter.
3435 (I387_ST0_REGNUM, I387_NUM_XMM_REGS): Remove various define's and
3438 (i387_convert_register_p, i387_register_to_value,
3439 i387_value_to_register): Update call for i386_fp_regnum_p.
3441 * i387-tdep.h: Remove comment.
3442 (I387_ST0_REGNUM, I387_NUM_XMM_REGS, I387_MM0_REGNUM): Add define.
3443 (I387_FCTRL_REGNUM, I387_FSTAT_REGNUM, I387_FTAG_REGNUM,
3444 I387_FISEG_REGNUM, I387_FIOFF_REGNUM, I387_FOSEG_REGNUM,
3445 I387_FOOFF_REGNUM, I387_FOP_REGNUM, I387_XMM0_REGNUM,
3446 I387_MXCSR_REGNUM): Add target specific vector as parameter.
3450 * Makefile.in (fork-child.o): Update.
3451 * NEWS: Document "set exec-wrapper" and the gdbserver --wrapper
3452 argument. Gather all gdbserver features together.
3453 * fork-child.c (exec_wrapper): New variable.
3454 (fork_inferior): Use it.
3455 (startup_inferior): Skip an extra trap if using "set exec-wrapper".
3456 (unset_exec_wrapper_command, _initialize_fork_child): New.
3460 * source.c (directory_command): Modify the determination of
3461 condition of terminal "from_tty".
3465 * dwarf2read.c (set_cu_language): Add DW_LANG_ObjC.
3469 * spu-tdep.c (info_spu_event_command): Insert a '\0' to the end
3470 of the data passing to strtoulst function.
3471 (info_spu_signal_command): Likewise.
3475 * mi/mi-interp.c (mi_command_loop): Remove
3480 * remote.c (extended_remote_attach_1): Make local variable pid an int
3485 * solib-svr4.c (svr4_same_1): New function, originally extracted
3486 from svr4_same and expanded to handle the sparc64 case.
3487 (svr4_same): Move up and reimplement using svr4_same_1.
3488 (enable_break): Use svr4_same_1 to do shared library name comparisons.
3492 * MAINTAINERS: Move self to Paper trail.
3496 * Makefile.in (mingw-hdep.o, posix-hdep.o, remote-fileio.o): Update.
3497 * event-loop.c (call_async_signal_handler): New.
3498 * event-loop.h (call_async_signal_handler)
3499 (gdb_call_async_signal_handler): Declare.
3500 (mark_async_signal_handler): Add comments.
3501 * event-top.c (handle_sigint): Use gdb_call_async_signal_handler.
3502 * mingw-hdep.c (sigint_event, sigint_handler): New.
3503 (gdb_select): Use them. Wait for the readline signal handler
3505 (gdb_call_async_signal_handler, _initialize_mingw_hdep): New functions.
3506 * posix-hdep.c (gdb_call_async_signal_handler): New function.
3507 * remote-fileio.c (sigint_fileio_token, async_remote_fileio_interrupt):
3509 (remote_fileio_ctrl_c_signal_handler): Use
3510 gdb_call_async_signal_handler.
3511 (initialize_remote_fileio): Initialize sigint_fileio_token.
3512 * remote.c (initialize_sigint_signal_handler, handle_remote_sigint): Do
3513 not initialize tokens here.
3514 (handle_remote_sigint_twice): Likewise. Reinstall
3515 handle_remote_sigint.
3516 (async_remote_interrupt_twice): Just call interrupt_query.
3517 (cleanup_sigint_signal_handler): Do not delete tokens.
3518 (remote_interrupt, remote_interrupt_twice): Use
3519 gdb_call_async_signal_handler.
3520 (interrupt_query): Reinstall the default signal handler.
3521 (_initialize_remote): Initialize tokens here.
3525 * features/rs6000/power-core.xml, features/rs6000/power64-core.xml,
3526 features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
3527 Change the type of the lr register to code_ptr.
3528 * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
3529 features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
3530 features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
3531 features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
3532 features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
3533 features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
3534 features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c: Regenerate.
3538 * MAINTAINERS: Update my email address.
3543 * configure.ac: Set tcl configdir to win under mingw.
3544 * configure: Regenerate.
3548 * breakpoint.c (fetch_watchpoint_value): New function.
3549 (update_watchpoint): Set and clear val_valid. Use
3550 fetch_watchpoint_value. Handle unreadable values on the
3551 value chain. Correct check for user-requested array watchpoints.
3552 (breakpoint_init_inferior): Clear val_valid.
3553 (watchpoint_value_print): New function.
3554 (print_it_typical): Use it. Do not free or clear old_val. Print
3555 watchpoints even if old_val == NULL.
3556 (watchpoint_check): Use fetch_watchpoint_value. Check for values
3557 becoming readable or unreadable.
3558 (watch_command_1): Use fetch_watchpoint_value. Set val_valid.
3559 (do_enable_watchpoint): Likewise.
3560 * breakpoint.h (struct breakpoint): Update comment for val. Add
3562 * NEWS: Mention watchpoints on inaccessible memory.
3566 * Makefile.in (i386-nat.o): Update.
3567 * amd64-linux-nat.c (_initialize_amd64_linux_nat): Call
3568 i386_use_watchpoints.
3569 * i386-linux-nat.c (_initialize_i386_linux_nat): Call
3570 i386_use_watchpoints.
3571 * i386-nat.c (i386_stopped_data_address): Take two arguments.
3572 (i386_stopped_by_watchpoint): Update call.
3573 (i386_can_use_hw_breakpoint, i386_use_watchpoints): New.
3574 * config/i386/nm-i386.h: Conditionalize definitions on
3575 ! I386_WATCHPOINTS_IN_TARGET_VECTOR.
3576 (i386_use_watchpoints): Declare.
3577 (i386_stopped_data_address): Update.
3578 * config/i386/nm-linux.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
3579 * config/i386/nm-linux64.h (I386_WATCHPOINTS_IN_TARGET_VECTOR): Define.
3583 GDB 6.8 branch created (branch timestamp: 2008-02-26 10:00 UTC)
3584 * version.in: Bump version to 6.8.50.20080229-cvs.
3588 * f-typeprint.c (f_print_type): Handle NULL pointer in VARSTRING
3593 * infcmd.c (notice_args_read): Print result of get_inferior_args.
3597 * infcmd.c (kill_if_already_running): Make static. Use
3598 target_require_runnable.
3599 * target.c (target_require_runnable): New.
3600 * target.h (target_require_runnable): Declare.
3604 * frame.c (reinit_frame_cache): Only annotate if frames were
3609 * regformats/reg-ppc.dat: Rename "ps" to "msr".
3610 * regformats/reg-ppc64.dat: Likewise.
3614 * features/Makefile (%.dat): Emit xmltarget statement.
3616 * regformats/regdat.sh: Support xmltarget and xmlarch statments.
3617 Generate code to set gdbserver_xmltarget in init_registers_${name}.
3619 * regformats/arm-with-iwmmxt.dat: Regenerate.
3620 * regformats/mips64-linux.dat: Regenerate.
3621 * regformats/mips-linux.dat: Regenerate.
3622 * regformats/rs6000/powerpc-32.dat: Regenerate.
3623 * regformats/rs6000/powerpc-64.dat: Regenerate.
3624 * regformats/rs6000/powerpc-e500.dat: Regenerate.
3626 * regformats/reg-arm.dat: Add xmlarch statement.
3627 * regformats/reg-i386.dat: Likewise.
3628 * regformats/reg-i386-linux.dat: Likewise.
3629 * regformats/reg-x86-64-linux.dat: Likewise.
3630 * regformats/reg-spu.dat: Likewise.
3634 * remote.c (remote_wait, remote_async_wait): Stop if we receive
3639 * utils.c (debug_timestamp): New.
3640 (vfprintf_unfiltered): Print timestamps if requested.
3641 (show_debug_timestamp): New.
3642 (initialize_utils): Register "set debug timestamp".
3643 * NEWS: Mention "set debug timestamp". Add GDB 6.8 section.
3647 * breakpoint.c (skip_prologue_sal): New function.
3648 (resolve_sal_pc): Adjust SAL past prologue if the SAL was
3649 computed from a line number.
3653 * features/rs6000/power-core.xml, features/rs6000/power64-core.xml
3654 features/rs6000/powerpc-601.xml, features/rs6000/rs6000.xml:
3655 Set PC register type to "code_ptr".
3656 * features/rs6000/powerpc-32.c, features/rs6000/powerpc-403.c,
3657 features/rs6000/powerpc-403gc.c, features/rs6000/powerpc-505.c,
3658 features/rs6000/powerpc-601.c, features/rs6000/powerpc-602.c,
3659 features/rs6000/powerpc-603.c, features/rs6000/powerpc-604.c,
3660 features/rs6000/powerpc-64.c, features/rs6000/powerpc-7400.c,
3661 features/rs6000/powerpc-750.c, features/rs6000/powerpc-860.c,
3662 features/rs6000/powerpc-e500.c, features/rs6000/rs6000.c:
3667 * regformats/regdat.sh: Rename init_registers function in
3668 generated file to init_registers_${name}.
3670 * regformats/reg-crisv32.dat: Set "name" to crisv32.
3671 * regformats/reg-ppc64.dat: Set "name" to ppc64.
3672 * regformats/reg-s390x.dat: Set "name" to s390x.
3676 * regcache.c (registers_changed): Call reinit_frame_cache.
3680 * configure.tgt (sh-*-linux*): Match sh*. Add glibc-tdep.o.
3681 * sh-linux-tdep.c (sh_linux_init_abi): Use glibc_skip_solib_resolver
3682 and svr4_fetch_objfile_link_map.
3683 * Makefile.in (sh-linux-tdep.o): Update.
3687 * amd64-tdep.c (amd64_classify): Add support for decimal float
3689 * i386-tdep.c (i386_return_value): Make 128-bit decimal float
3690 use the struct return convention.
3694 * breakpoint.c (print_one_breakpoint_location): Revert Enb field
3695 to old format. Discard breakpoint address if shared library is
3697 (breakpoint_1): Adjust formatting of table header accordingly.
3701 * remote.c (remote_get_threadlist): If the response
3702 is empty, don't try to parse it.
3706 Unbreak 'target async'.
3707 * serial.c (serial_async): Set the
3708 handler function before enabling async
3713 * solib-svr4.c (enable_break): Convert r_brk to a code address.
3717 * remote.c (extended_remote_attach_1): Set attach_flag.
3718 (extended_remote_create_inferior_1): Clear attach_flag.
3722 * mipsnbsd-tdep.c (mipsnbsd_ilp32_fetch_link_map_offsets): Set
3724 (mipsnbsd_lp64_fetch_link_map_offsets): Likewise.
3725 * solib-svr4.c (solib_svr4_r_brk): New.
3726 (open_symbol_file_object, svr4_current_sos): Always check the
3728 (svr4_fetch_objfile_link_map): Do not set debug_base.
3729 (enable_break): Use r_brk if it is set.
3730 (svr4_ilp32_fetch_link_map_offsets): Set r_brk_offset.
3731 (svr4_lp64_fetch_link_map_offsets): Likewise.
3732 * solib-svr4.h (struct link_map_offsets): Add r_brk_offset.
3737 * alpha-tdep.c (alpha_heuristic_unwind_cache): Replace saved_regs by
3738 trad_frame_saved_reg.
3739 (trad-frame.h): New include.
3741 (alpha_heuristic_frame_unwind_cache): Use trad_frame_alloc_saved_regs
3742 instead of frame_obstack_zalloc.
3743 (alpha_heuristic_frame_prev_register): Use trad_frame_get_prev_register.
3745 * Makefile.in (alpha-tdep.o): Add dependency to trad_frame_h.
3749 * rs6000-tdep.c (gdb_print_insn_powerpc): Get the current endianess
3750 from disassemble_info instead of gdbarch_byte_order.
3752 * mips-tdep.c (gdb_print_insn_mips): Likewise.
3753 * arm-tdep.c (gdb_print_insn_arm): Likewise.
3757 * gdbarch.sh (memory_insert_breakpoint, memory_remove_breakpoint): Add
3758 gdbarch as parameter.
3760 * gdbarch.{c,h}: Regenerate.
3762 * ppc-tdep.h (ppc_linux_memory_remove_breakpoint): Add gdbarch as
3764 * mem-break.c (default_memory_insert_breakpoint)
3765 (default_memory_remove_breakpoint): Likewise.
3766 * target.h (default_memory_remove_breakpoint)
3767 (default_memory_insert_breakpoint): Likewise.
3769 * ppc-linux-tdep.c (ppc_linux_memory_remove_breakpoint): Add gdbarch as
3770 parameter. Replace current_gdbarch by gdbarch.
3771 * m32r-tdep.c (m32r_memory_insert_breakpoint)
3772 (m32r_memory_remove_breakpoint): Likewise.
3776 * MAINTAINERS: Add Vladimir Prus as MI maintainer.
3780 * NEWS: Add entry describing Add support improvements.
3784 * m68klinux-nat.c (getfpregs_supplies): Replace gdbarch_fp0_regnum by
3789 * sentinel-frame.c (sentinel_frame_prev_register): Do not call
3790 register_offset_hack anymore.
3792 * regcache.{c,h} (register_offset_hack): Remove.
3796 * hppa-tdep.h (find_global_pointer): Add gdbarch as parameter.
3798 * hppa-hpux-tdep.c (hppa32_hpux_find_global_pointer): Likewise. Replace
3799 current_gdbarch by gdbarch.
3800 (hppa64_hpux_find_global_pointer): Likewise.
3801 * hppa-tdep.c (hppa_find_global_pointer): Likewise.
3802 (hppa32_push_dummy_call, hppa64_push_dummy_call): Update call for
3803 find_global_pointer.
3805 * hppabsd-tdep.c (hppabsd_find_global_pointer): Add gdbarch as
3807 * hppa-linux-tdep.c (hppa_linux_find_global_pointer): Likewise.
3809 * hppa-linux-nat.c (hppa_linux_register_addr): Use ARRAY_SIZE instead
3810 of gdbarch_num_regs.
3812 * hppa-hpux-tdep.c (hppa_hpux_sr_for_addr): Add gdbarch as parameter and
3813 replace current_gdbarch by gdbarch.
3814 (hppa_hpux_push_dummy_code): Update call for hppa_hpux_sr_for_addr.
3818 * rs6000-nat.c (exec_one_dummy_insn, regmap): Add gdbarch as parameter
3819 and replace current_gdbarch by gdbarch.
3821 (store_register): Update call for exec_one_dummy_insn.
3822 (fetch_register, store_register): Update call of regmap.
3824 * ppcnbsd-nat.c (getregs_supplies, getfpregs_supplies): Add gdbarch as
3825 parameter and replace current_gdbarch by gdbarch.
3827 (ppcnbsd_store_inferior_registers): Use get_regcache_arch to get at
3828 the current architecture. Update call for getregs_supplies and
3830 (ppcnbsd_fetch_inferior_registers): Likewise.
3832 * ppcobsd-nat.c (getfpregs_supplies): Add gdbarch as parameter and
3833 replace current_gdbarch by gdbarch.
3834 (ppcobsd_fetch_registers, ppcobsd_store_registers): Use
3835 get_regcache_arch to get at the current architecture. Update call for
3840 * arch-utils.c (gdbarch_from_bfd): Remove unnecessary {old,new}_gdbarch
3845 * mips-linux-tdep.c (mips_linux_init_abi): Remove internal error.
3849 * NEWS: Mention pending breakpints in MI.
3853 * Makefile.in (ALL_TARGET_OBS): Remove dependency to xtensa-linux-nat.o.
3857 Add script to build and test GDB using enable-targets=all.
3859 * gdb_buildall.sh: New file.
3863 * NEWS (New native configurations): Xtensa GNU/Linux.
3864 (New targets): Xtensa GNU/Linux.
3865 * Makefile.in (ALL_TARGET_OBS): Add xtensa-linux-nat.o and
3867 (ALLDEPFILES): Add xtensa-linux-tdep.c and xtensa-linux-nat.c
3868 (xtensa-linux-nat.o, xtensa-linux-tdep.o): New dependencies.
3869 * configure.tgt (xtensa*-*-linux*): New entry.
3870 * xtensa-config.c (xtensa_tdep): New variable.
3871 (xtensa_config_byte_order, xtensa_config_tdep): Removed.
3872 (rmap): Change format based on new macro XTREG.
3873 (XTENSA_CONFIG_INSTANTIATE): Use new macro defined in xtensa-tdep.h.
3874 * xtensa-linux-nat.c: New.
3875 * xtensa-linux-tdep.c: New.
3876 * xtensa-xtregs.c: New.
3877 * xtensa-tdep.h (xtensa_elf_gregset_t): Update.
3878 (XTENSA_ELF_NGREG, XTREG, XTREG_END, XTENSA_GDBARCH_TDEP_INSTANTIATE)
3879 (XCHAL_NUM_CONTEXTS, XCHAL_HAVE_EXCEPTIONS): New macros.
3880 (xtensa_register_t): New field coprocessor.
3881 (XTENSA_REGISTER_FLAGS_PRIVILEGED): Name spelling corrected.
3882 * xtensa-tdep.c (xtensa_config_tdep, xtensa_config_byte_order): Removed.
3883 (xtensa_pseudo_register_read, xtensa_pseudo_register_write):
3884 Update to handle privileged registers.
3885 (xtensa_supply_gregset) Remove exccause and excvaddr registers.
3886 (xtensa_push_dummy_call): Set windowstart register correctly.
3887 (call0_analyze_prologue): Initialize xtensa_default_isa.
3888 (xtensa_derive_tdep): New.
3889 (xtensa_gdbarch_init): Get rid of xtensa_config_byte_order and
3890 xtensa_config_tdep, use XCHAL_HAVE_BE and xtensa_tdep instead.
3891 Call xtensa_derive_tdep().
3892 * config/xtensa/linux.mh: New.
3893 * regformats/reg-xtensa.dat: New.
3897 * corelow.c (core_open): Use IS_ABSOLUTE_PATH.
3898 (filenames.h): New include.
3899 * Makefile.in (corelow.o): Add dependency for filenames.h.
3903 * source.c (find_and_open_source): Always rewrite absolute filenames.
3907 * breakpoint.c: #include "hashtab.h".
3908 (ambiguous_names_p): New fn.
3909 (update_breakpoint_locations): When restoring bp enable status, don't
3910 compare function names if any functions have same name.
3911 * Makefile.in (breakpoint.o): Add hashtab.h dependency.
3915 * ada-lang.c (symbol_completion_add): Make SV parameter a VEC**
3916 instead of just a VEC*. Update use of SV.
3917 (ada_make_symbol_completion_list): Update symbol_completion_add calls.
3921 * NEWS: Put all new commands since gdb-6.7 together.
3925 * ada-lang.c: #include "vec.h".
3926 (struct string_vector, new_string_vector, string_vector_append):
3928 (char_ptr): New typedef.
3929 (DEF_VEC_P (char_ptr)): New VEC type.
3930 (symbol_completion_add): Update profile to take the new VEC type
3931 instead of the old string_vector structure. Update code accordingly.
3932 (ada_make_symbol_completion_list): Use the new VEC type instead of
3933 the old string_vector structure, and update the code accordingly.
3934 * Makefile.in (ada-lang.o): Add dependency on vec.h.
3938 * p-exp.y: Set current_type in missing places.
3939 (leftdiv_is_integer): New static variable.
3940 Typecast right operand of BINOP_DIV to long_double if both operands
3945 * remote-mips.c (set_breakpoint): Rename to...
3946 (mips_set_breakpoint): ... this.
3947 (clear_breakpoint): Rename to...
3948 (mips_clear_breakpoint): ... this.
3949 (common_breakpoint): Rename to...
3950 (mips_common_breakpoint): ... this.
3951 (check_lsi_error): Rename to...
3952 (mips_check_lsi_error): ... this.
3956 * language.h (struct language_defn): Add new field
3957 la_make_symbol_completion_list.
3958 * symtab.c (default_make_symbol_completion_list): Renames
3959 make_symbol_completion_list.
3960 (make_symbol_completion_list): New function.
3961 * symtab.h (default_make_symbol_completion_list): Add declaration.
3962 * langauge.c (unknown_language): Set la_make_symbol_completion_list.
3963 (auto_language, local_language): Likewise.
3964 * objc-lang.c (objc_language_defn): Likewise.
3965 * scm-lang.c (scm_language_defn): Likewise.
3966 * m2-lang.c (m2_language_defn): Likewise.
3967 * f-lang.c (f_language_defn): Likewise.
3968 * jv-lang.c (java_language_defn): Likewise.
3969 * p-lang.c (pascal_language_defn): Likewise.
3970 * c-lang.c (c_language_defn, cplus_language_defn, asm_language_defn)
3971 (minimal_language_defn): Likewise.
3972 * ada-lang.c (struct string_vector): New structure.
3973 (new_string_vector, string_vector_append, ada_unqualified_name)
3974 (add_angle_brackets, symbol_completion_match, symbol_completion_add)
3975 (ada_make_symbol_completion_list): New functions.
3976 (ada_language_defn): Set la_make_symbol_completion_list.
3977 * ada-lang.h (ada_make_symbol_completion_list): Remove declaration,
3978 this function is static.
3982 * mn10300-tdep.c (mn10300_push_dummy_call): Adjust stack pointer
3983 to account for call site optimizations.
3987 * tracepoint.c (read_actions): Handle end-of-text indicator
3988 in action list properly. (Committed by Jim Blandy)
3992 * ax-gdb.c (gen_expr): Yield ordinary error if asked to trace a
3993 pseudoregister, not an internal error.
3994 Reported by: Andrzej Zaborowski
3998 * varobj.c (c_value_of_variable): Use xstrdup.
4002 Update stored rendition of varobj value when format changes.
4003 * varobj.c (varobj_set_display_format): Recomputed
4005 (c_value_of_variable): Return print_value.
4009 * eval.c (evaluate_subexp_standard): Fix type of result of mixed
4010 integer/float division operations when EVAL_AVOID_SIDE_EFFECTS.
4011 * valops.c (value_one): New function.
4012 * value.h (value_one): Declare.
4014 Fix argument promotion for binary arithmetic ops for C.
4015 * valarith.c (unop_result_type): New fn.
4016 (binop_result_type): New fn.
4017 (value_binop): Move result type computation to binop_result_type.
4018 (value_pos, value_neg, value_complement): Move result type
4019 computation to unop_result_type.
4022 * gdbtypes.c (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
4023 Return basetype, fieldno if found. All callers updated.
4024 Don't cache TYPE_VPTR_FIELDNO, TYPE_VPTR_BASETYPE if from different
4026 * gdbtypes.h (get_vptr_fieldno): Renamed from fill_in_vptr_fieldno.
4027 * symfile.h (fill_in_vptr_fieldno): Delete.
4031 * valarith.c (value_binop): Handle unsigned BINOP_REM division by zero.
4033 * typeprint.c (*): Whitespace cleanup.
4039 * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Pass floats that
4040 don't fit into registerson the stack the way GCC does.
4044 * symtab.c (symbol_set_names): Do not add an entry in the demangling
4045 hash table for Ada symbols. Just store the linkage name as is,
4046 and leave the demangled_name as NULL.
4050 * dwarf2read.c (add_partial_symbol): Always store all Ada subprograms
4051 in the global scope.
4052 (new_symbol): Likewise.
4056 * breakpoint.c (break_command_1): Return void.
4057 (break_command_really): Return void. Rethrow
4058 exceptions instead of returning.
4059 (gdb_breakpoint): Remove the error_message parameter.
4060 Return void. Rename to set_breakpoint.
4061 * gdb.h (gdb_breakpoint): Rename and move to...
4062 * breakpoint.h (set_breakpoint): ...here.
4063 * mi/mi-cmb-break.c (mi_cmd_break_insert): Restore
4064 event hooks even if exception is thrown. Adjust to
4065 gdb_breakpoint interface changes.
4070 * ppc-sysv-tdep.c (ppc64_sysv_abi_push_dummy_call): Write 32-bit
4071 float in both first and second word in the doubleword, to support
4076 Properly rethrow exception. This fixes errors
4077 about non-existent functions for -break-insert.
4078 * breakpoint.c (break_command_really): Use throw_exception
4079 for rethrowing. If rethrowing, don't print the exception.
4083 * NEWS: Mention Decimal Floating Point support.
4087 * std-regs.c (value_of_builtin_frame_pc_reg): Change the returned
4088 value type to builtin_type_void_func_ptr.
4092 * s390-tdep.c (is_float_singleton, is_float_like,
4093 alignment_of, s390_return_value): Make checks for
4094 TYPE_CODE_FLT to match TYPE_CODE_DECFLOAT as well.
4099 * infcmd.c (default_print_registers_info): Also print hex
4100 raw contents for TYPE_CODE_DECFLOAT registers.
4101 * ppc-tdep.h (gdbarch_tdep): Add ppc_dl0_regnum member.
4102 * rs6000-tdep.c (IS_DFP_PSEUDOREG): New macro.
4103 (rs6000_register_name): Add support for DFP pseudo-registers.
4104 (rs6000_pseudo_register_type): Likewise.
4105 rs6000_pseudo_register_reggroup_p): Likewise.
4106 (ppc_pseudo_register_read): New function.
4107 (ppc_pseudo_register_write): Likewise.
4108 (rs6000_pseudo_register_read): Likewise.
4109 (rs6000_pseudo_register_write): Likewise.
4110 (e500_pseudo_register_read): Move checks to
4111 rs6000_pseudo_register_read.
4112 (e500_pseudo_register_write): Move checks to
4113 rs6000_pseudo_register_write.
4114 (rs6000_gdbarch_init): Initialize tdep->ppc_dl0_regnum. Install
4115 rs6000_pseudo_register_read and rs6000_pseudo_register_write
4116 in gdbarch if SPE or DFP is available. Adjust gdbarch's
4117 num_pseudo_regs to account for DFP pseudo regs.
4121 * ppc-tdep.h (struct gdbarch_tdep): Remove ppc_ev31_regnum member.
4122 * rs6000-tdep.c (IS_SPE_PSEUDOREG): New macro.
4123 (spe_register_p, rs6000_register_name, rs6000_pseudo_register_type,
4124 rs6000_pseudo_register_reggroup_p, e500_move_ev_register,
4125 e500_pseudo_register_read, e500_pseudo_register_write): Use
4126 IS_SPE_PSEUDOREG macro.
4127 (rs6000_frame_cache): Remove use of tdep->ppc_ev31_regnum.
4128 (rs6000_gdbarch_init): Remove unnecessary num_sprs local variable.
4129 Remove initialization of tdep->ppc_ev31_regnum.
4133 * printcmd.c (print_formatted): Handle references as for unformatted
4138 * eval.c (evaluate_subexp_standard): Add handling of user
4139 registers when in EVAL_AVOID_SIDE_EFFECTS mode.
4143 * eval.c (evaluate_subexp_standard): Support
4144 BINOP_INTDIV opcode.
4148 * valarith.c (value_binop): Add floating-point BINOP_MIN and
4150 For BINOP_EXP, use length and signedness of left operand only for
4151 result, as for shifts.
4152 For integral operands to BINOP_EXP, use new integer_pow and
4153 uinteger_pow functions so as to get full range of results.
4154 (integer_pow): New function.
4155 (uinteger_pow): New function.
4159 Use vector for varobj_list_children interface.
4160 * gdb/varobj.c (varobj_list_children): Return vector
4162 * gdb/varobj.h (varobj_list_children): Adjust
4164 (varobj_p): Declare. Declare vector thereof.
4165 * mi/mi-cmd-var.c (mi_cmd_var_list_children): Adjust
4166 for varobj_list_children change.
4167 * Makefile.in (varobj_h): Update dependencies.
4171 * ppc-sysv-tdep.c (ppc_sysv_abi_push_dummy_call): Add support for
4172 TYPE_CODE_DECFLOAT arguments.
4173 (ppc64_sysv_abi_push_dummy_call) Likewise.
4174 (get_decimal_float_return_value): New function.
4175 (do_ppc_sysv_return_value): Add support for TYPE_CODE_DECFLOAT return
4176 values by calling get_decimal_float_return_value.
4177 (ppc64_sysv_abi_return_value): Likewise.
4181 * mi/mi-cmd-file.c (mi_cmd_file_list_exec_source_file): Add field
4182 for preprocessor macro information. Formatting changes.
4186 * remote.c (struct remote_state): Add cached_wait_status.
4187 (remote_exec_file): New variable.
4188 (PACKET_vAttach, PACKET_vRun): New constants.
4189 (extended_remote_restart): Do not query for status.
4190 (struct start_remote_args): New.
4191 (remote_start_remote): Take it as a second argument. Check
4192 whether the target is running. Issue an error for non-running
4193 non-extended targets. Cache the wait status. Set inferior_ptid
4195 (remote_open_1): Prompt to disconnect non-running targets. Make
4196 sure the target is marked running. Do not set inferior_ptid here.
4197 Update call to remote_start_remote. Do not call remote_check_symbols
4198 if the target is not running.
4199 (remote_detach_1): Rename from remote_detach. Take an EXTENDED
4200 argument. Handle a non-running target.
4201 (remote_detach): Use it.
4202 (extended_remote_detach): New.
4203 (remote_disconnect): Fix typo. Use remoute_mourn_1.
4204 (extended_remote_attach_1, extended_remote_attach)
4205 (extended_async_remote_attach): New.
4206 (remote_vcont_resume): Remove unused variable.
4207 (remote_wait, remote_async_wait): Use any cached wait status.
4208 (putpkt_binary, getpkt): Clear any cached wait status.
4209 (extended_remoute_mourn_1): New.
4210 (extended_remote_mourn): Use it.
4211 (extended_async_remote_mourn, extended_remote_run): New.
4212 (extended_remote_create_inferior_1): New.
4213 (extended_remote_create_inferior): Use it.
4214 (extended_remote_async_create_inferior): Likewise.
4215 (remote_xfer_partial): Skip for non-executing targets.
4216 (init_extended_remote_ops): Set to_detach and to_attach.
4217 (init_extended_async_remote_ops): Likewise. Use
4218 extended_async_remote_mourn.
4219 (_initialize_remote): Register vAttach, vRun, and
4220 set remote exec-file.
4221 * NEWS: Mention vAttach, vRun, and gdbserver extended-remote support.
4225 * Makefile.in (symfile.o): Update.
4226 * NEWS: Mention exec tracing support.
4227 * inf-ttrace.c (inf_ttrace_wait): Return TARGET_WAITKIND_EXECD for
4229 * infcmd.c (kill_if_already_running, detach_command)
4230 (disconnect_command): Replace SOLIB_RESTART with no_shared_libraries.
4231 * infrun.c (MAY_FOLLOW_EXEC, may_follow_exec): Delete.
4232 (follow_exec): Do not check may_follow_exec. Do not mourn and push
4233 targets. Apply the sysroot path to the loaded executable. Use
4234 no_shared_libraries.
4235 * linux-nat.c (linux_child_follow_fork): Print fork following
4236 messages if verbose.
4237 (kill_wait_callback): Kill again before waiting a second time.
4238 * symfile.c (symbol_file_clear): Replace SOLIB_RESTART with
4239 no_shared_libraries.
4243 * amd64-tdep.c (amd64_classify): Add handling of TYPE_CODE_CHAR.
4247 * nto-tdep.h: Remove #include "defs.h".
4248 * nto-tdep.c: Add #include "defs.h".
4249 * Makefile.in (nto_tdep_h): Update dependencies.
4250 (nto-tdep.o): Likewise.
4254 * infrun.c (wait_for_inferior): Add treat_exec_as_sigtrap parameter
4256 (proceed, start_remote): Update call to wait_for_inferior.
4257 * inferior.h (wait_for_inferior): Update declaration.
4258 * fork-child.c, infcmd.c, solib-irix.c, solib-osf.c, solib-sunos.c,
4259 solib-svr4.c, win32-nat.c: Update calls to wait_for_inferior.
4260 * inf-ttrace.c (inf_ttrace_wait): Report TTEVT_EXEC events as
4261 TARGET_WAITKIND_EXECD instead of TARGET_WAITKIND_STOPPED.
4265 * varobj (adjust_value_for_child_access): Added checking for
4266 returned value from gdb_value_ind.
4267 (c_describe_child): Likewise.
4268 (cplus_describe_child): Fixed a typo.
4272 * MAINTAINERS: Update my info.
4276 Use multiple locations for hardware watchpoints.
4277 This eliminates the need to traverse value chain, doing
4278 various checks, in three different places.
4280 * breakpoint.h (struct bp_location): New fields
4281 lengths and watchpoint_type.
4282 (struct breakpoint): Remove the val_chain field.
4283 * breakpoint.c (is_hardware_watchpoint): New.
4284 (free_valchain): Remove.
4285 (update_watchpoint): New.
4286 (insert_bp_location): For hardware watchpoint, just
4288 (insert_breakpoints): Call update_watchpoint_locations
4289 on all watchpoints. If we have failed to insert
4290 any location of a hardware watchpoint, remove all inserted
4292 (remove_breakpoint): For hardware watchpoints, directly
4294 (watchpoints_triggered): Iterate over locations.
4295 (bpstat_stop_status): Use only first location of
4296 a resource watchpoint.
4297 (delete_breakpoint): Don't call free_valchain.
4298 (print_one_breakpoint): Don't print all
4299 locations for watchpoints.
4300 (breakpoint_re_set_one): Use update_watchpoint for
4305 Don't reset watchpoint block on solib load.
4307 * breakpoint.c (insert_bp_location): For watchpoints,
4308 recompute condition.
4309 (breakpoint_re_set_one): Instead of recomputing value
4310 and condition for watchpoints, just reset value and
4311 let insert_breakpoints/insert_bp_location recompute it.
4312 Don't do anything about disabled watchpoint.
4316 * valarith.c (value_binop): Handle unsigned integer
4321 * mn10300-tdep.c (mn10300_analyze_prologue): Check for an
4322 instruction pattern that appears frequently in position
4323 independent code. Fix bug in code which looks for "fmov" and
4324 backtracks if no "fmov" is found.
4328 * dbxread.c (read_dbx_symtab): Fix indentation.
4329 Reformat comments to 80 columns.
4330 Move local var def closer to only use.
4334 * fork-child.c (SHELL_FILE): Remove #ifndef.
4335 (fork_inferior): Remove SHELL_COMMAND_CONCAT.
4339 * i386-tdep.c (i386_skip_noop): New function.
4340 (i386_analyze_prologue): Call i386_skip_noop function.
4344 * procfs.c (procfs_xfer_partial): Comment, cut/paste error.
4345 * win32-nat.c (win32_xfer_partial): Ditto.
4346 * target.c (default_xfer_partial): Minor whitespace adjustment.
4350 * arm-tdep.c (arm_addr_bits_remove): In non 26-bit mode, don't
4351 strip bit 1 even if pc doesn't point to thumb code.
4355 * remote.c (remote_wait): Handle SIGINT between packets.
4356 (remote_async_wait): Likewise.
4361 * thread.c (add_thread_silent): Renamed
4363 (print_thread_events): New variable definition.
4364 (show_print_thread_events): New function.
4365 (_initialize_thread): Add "set print thread-events" and
4366 "show print thread-events" commands.
4367 (add_thread): Announce new thread.
4368 * gdbthread.h (add_thread_silent): Declare.
4369 (print_thread_events): New variable declaration.
4370 * inf-ttrace.c (inf_ttrace_wait): Don't
4371 inform about new thread, as add_thread is always
4372 called too, and will take care of that.
4373 * infrun.c (handle_inferior_event): Likewise.
4374 * procfs.c (procfs_wait): Likewise.
4375 * remote.c (remote_currthread): Likewise.
4376 * sol-thread.c (sol_thread_wait): Likewise.
4377 * win32-nat.c (get_win32_debug_event): Likewise.
4378 * linux-thread-db.c (attach_thread): Likewise.
4379 Remove the verbose parameter.
4380 (check_event): Make detach_thread be verbose
4381 only if print_thread_events is set.
4382 * linux-nat.c (lin_lwp_attach_lwp): Don't inform
4383 about new thread. This is called only from
4384 linux-thread-db.c:attach_thread, which will take care.
4385 Remove the verbose parameter.
4386 * linux-nat.h (lin_lwp_attach_lwp): Adjust prototype.
4390 * mi/mi-cmd-var.c (mi_cmd_var_set_format): Add value field to output.
4394 * breakpoint.c (break_command_really): New parameter
4396 (break_command_1): Pass 0 as
4397 ignore_count to break_command_really.
4398 (gdb_breakpoint): Pass ignore_count to
4399 break_command_really.
4403 * mn10300-linux-tdep.c (am33_linux_sigframe_cache_init): Find
4404 sigcontext struct via pointer.
4405 (struct sigframe comment): Update to show new field `psc'.
4409 * infrun.c (handle_inferior_event): If
4410 we failed to remove breakpoints, error,
4411 don't try to increment PC by hand.
4415 Add NetBSD/hppa target and host support.
4417 * hppabsd-tdep.c (hppabsd_supply_gregset): Move to ...
4418 (hppabsd_gregset): Move to ...
4419 (hppabsd_regset_from_core_section): Rename
4420 hppaobsd_regset_from_core_section and move to ...
4421 (hppabsd_find_global_pointer): Update comment.
4422 (hppabsd_init_abi): Make global. Do not register
4423 hppabsd_regset_from_core_section.
4424 (hppabsd_core_osabi_sniffer): Rename hppaobsd_core_osabi_sniffer and
4426 (_initialize_hppabsd_tdep): Move to ...
4427 * hppaobsd-tdep.c: ... here. New file.
4428 * hppnbsd-tdep.c: New file.
4429 * hppnbsd-nat.c: New file.
4430 * Makefile.in (ALL_TARGET_OBS): Add hppanbsd-tdep.o and hppaobsd-tdep.o.
4431 (ALLDEPFILES): Add hppabsd-nat.c and hppabsd-tdep.c.
4432 (hppabsd-nat.o, hppabsd-tdep.o): New dependencies.
4433 (hppabsd-tdep.o, hppaobsd-tdep.o): Update dependencies.
4434 * configure.host (hppa*-*-netbsd*): New entry.
4435 * configure.tgt (hppa*-*-netbsd*): New entry.
4436 (hppa*-*-openbsd*): Update.
4437 * NEWS (New native configuration): Mention NetBSD/hppa.
4438 (New targets): Mention NetBSD/hppa.
4442 * gdbarch.sh (function_list): Add new property bits_big_endian to
4444 * gdbarch.{c,h}: Regenerate.
4446 * value.c (struct value): Replace BITS_BIG_ENDIAN by
4447 gdbarch_bits_big_endian (comment).
4448 (unpack_field_as_long, modify_field): Likewise.
4449 * value.h: Likewise (comment).
4450 * valops.c (value_slice): Likewise.
4451 * valarith.c (value_subscript, value_bit_index): Likewise.
4452 * gdbtypes.h (field): Likewise (comment).
4453 * eval.c (evaluate_subexp_standard): Likewise.
4454 * dwarf2read.c (dwarf2_add_field): Likewise.
4455 * ada-lang.c (decode_packed_array, ada_value_primitive_packed_val)
4456 (move_bits, ada_value_assign, value_assign_to_component): Likewise.
4458 * defs.h (BITS_BIG_ENDIAN): Remove.
4462 * jv-exp.y (yylex): Replace DEPRECATED_STREQN with the appropriate
4464 * m2-exp.y (yylex): Likewise.
4465 * objc-exp.y (yylex): Likewise.
4467 * defs.h (DEPRECATED_STREQN): Remove.
4471 * MAINTAINERS: Update my email address.
4475 * README: Mention gdbserver/README.
4479 * valarith.c (value_binop): Handle BINOP_INTDIV
4480 for unsigned and signed integers.
4484 * s390-tdep.c (s390_gdbarch_init): Set default long double
4485 type to 128-bit IEEE quad.
4489 * hpux-thread.c (hpux_thread_resume): Delete commented-out code.
4493 * auxv.c (fprint_target_auxv): Add support for AT_SUN_AUXFLAGS.
4495 * dfp.c, dfp.h: Rename decimal_to_double to decimal_to_doublest.
4496 * value.c: All callers changed.
4500 * rs6000-nat.c (add_vmap, vmap_ldinfo, vmap_exec): Replace
4501 DEPRECATED_STREQ by its expression.
4502 * coffread.c (coff_locate_sections, coff_symtab_read): Likewise.
4503 * xcoffread.c (read_xcoff_symtab, read_symbol_lineno, find_linenos)
4504 (scan_xcoff_symtab): Likewise.
4505 * hppa-hpux-tdep.c (hppa_hpux_skip_trampoline_code): Likewise.
4506 * f-lang.c (find_common_for_function): Likewise.
4507 * objc-exp.y (parse_number): Likewise.
4509 * defs.h (DEPRECATED_STREQ): Remove.
4513 * mn10300-tdep.h (AM33_MODE): Add gdbarch as parameter.
4514 * mn10300-tdep.c (set_reg_offsets, mn10300_analyze_prologue): Use
4515 get_frame_arch to get at the current_architecture. Update AM33_MODE
4517 (mn10300_analyze_prologue): Add gdbarch as parameter. Update caller.
4518 (mn10300_frame_unwind_cache): Use get_frame_arch to get at the current
4520 (set_reg_offsets, mn10300_analyze_prologue): Fix indentation.
4524 * amd64-nat.h (amd64_native_gregset_supplies_p): Add gdbarch as
4526 * amd64-nat.c (amd64_native_gregset_supplies_p): Likewise.
4528 (amd64_native_gregset_reg_offset): Add gdbarch as parameter. Replace
4529 current_gdbarch by gdbarch. Update caller.
4531 * amd64-linux-nat.c (amd64_linux_fetch_inferior_registers)
4532 (amd64_linux_store_inferior_registers): Use get_regcache_arch to get at
4533 the current architecture. Update calls of
4534 amd64_native_gregset_supplies_p.
4535 * amd64bsd-nat.c (amd64bsd_fetch_inferior_registers)
4536 (amd64bsd_store_inferior_registers): Likewise.
4540 * ppc-linux-nat.c (ppc_register_u_addr): Add gdbarch as parameter.
4541 Replace current_gdbarch by gdbarch. Update caller.
4545 * dbxread.c (repeated_header_complaint, dbx_symfile_init)
4546 (read_dbx_dynamic_symtab, function_outside_compilation_unit_complaint)
4547 (read_dbx_symtab, end_psymtab, dbx_psymtab_to_symtab_1)
4548 (dbx_psymtab_to_symtab, read_ofile_symtab, process_one_symbol)
4549 (stabsect_build_psymtabs): Fix indentation.
4553 * corelow.c (core_xfer_partial): Comment, cut/paste error.
4557 * win32-nat.c (win32_create_inferior): Restore code calling
4558 CloseHandle on ProcessInformation structure.
4562 * configure.ac: Check for void * as 3 argument of ptrace.
4563 * configure: regenerate.
4567 * alpha-tdep.c (alpha_heuristic_proc_start)
4568 (alpha_sigtramp_register_address): Add gdbarch as parameter. Replace
4569 current_gdbarch by gdbarch.
4571 (alpha_heuristic_frame_unwind_cache): Use get_frame_arch to get at the
4572 current architecture by frame_info. Update alpha_heuristic_proc_start
4575 (alpha_sigtramp_frame_this_id, alpha_sigtramp_frame_prev_register): Use
4576 get_frame_arch to get at the current architecture by frame_info. Update
4577 alpha_sigtramp_register_address call.
4579 * arm-tdep.c (thumb_scan_prologue): Add gdbarch as parameter and replace
4580 current_gdbarch by gdbarch. Update caller.
4581 (convert_to_extended, convert_from_extended): Add endianess parameter
4582 for comparison. Update caller.
4583 (arm_extract_return_value, arm_store_return_value): Use
4584 get_regcache_arch to get at the current architecture.
4586 * cris-tdep.c (cris_register_size): Add gdbarch as parameter. Replace
4587 current_gdbarch by gdbarch. Update caller.
4588 (cris_gdb_func, move_to_preg_op, none_reg_mode_move_from_preg_op): Add
4589 gdbarch as parameter. Update caller. Replace current_gdbarch by gdbarch.
4591 * h8300-tdep.c (E_PSEUDO_CCR_REGNUM, E_PSEUDO_EXR_REGNUM, BINWORD): Add
4592 gdbarch as parameter. Update caller.
4593 (h8300_init_frame_cache): Add gdbarch as parameter. Replace
4594 current_gdbarch by gdbarch. Update caller.
4596 * hppa-tdep.c (skip_prologue_hard_way): Add gdbarch as parameter and
4597 update caller. Replace current_gdbarch by gdbarch.
4599 * m32c-tdep.c (m32c_skip_trampoline_code): Use get_frame_arch to get at
4600 the current architecture. Replace current_gdbarch by gdbarch.
4601 * m68hc11-tdep.c (m68hc11_frame_unwind_cache): Likewise.
4602 (STACK_CORRECTION, USE_PAGE_REGISTER): Replace M6811_TDEP by its
4603 expression. Add gdbarch as parameter and replace current_gdbarch with
4605 (M6811_TDEP): Remove.
4606 (m68hc11_frame_prev_register): Use get_frame_arch to get at the current
4608 (m68hc11_scan_prologue): Add gdbarch as parameter. Replace
4609 current_gdbarch by gdbarch. Update caller.
4611 * m68k-tdep.c (m68k_analyze_prologue): Add gdbarch as parameter and
4613 (m68k_analyze_register_saves): Likewise. Also replace current_gdbarch
4616 * rs6000-tdep.c (skip_prologue): Add gdbarch as parameter and update
4617 caller. Relace current_gdbarch by gdbarch.
4618 (altivec_register_p, spe_register_p): Likewise.
4619 * ppc-tdep.h (altivec_register_p, spe_register_p): Add gdbarch as
4621 * ppc-linux-nat.c (fetch_register, store_register): Update caller of
4622 altivec_register_p and spe_register_p.
4624 * score-tdep.c (score_fetch_inst): Add gdbarch as parameter. Update
4625 caller. Replace current_gdbarch by gdbarch.
4626 (score_analyze_prologue): use get_frame_arch to get at the current
4629 * sparc-tdep.h (sparc_analyze_prologue): Add gdbarch as parameter.
4630 * sparc-tdep.c (sparc_analyze_prologue): Likewise. Replace
4631 current_gdbarch by gdbarch. Update caller.
4632 (sparc_frame_cache): Use get_frame_arch to get at the current
4634 * sparce64-tdep.c (sparc64_skip_prologue): Update call of
4635 sparc_analyze_prologue.
4637 * mn10300-tdep.c (mn10300_dwarf2_reg_to_regnum): Add gdbarch as
4642 * exec.c: #include "arch-utils.h"
4643 (print_section_info): Use gdbarch_from_bfd to get at the
4644 current architecture. Replace current_gdbarch. Fix indention. Replace
4645 deprecated_print_address_numeric by paddress.
4646 * Makefile.in (exec.o) Add dependency to arch-utils.h.
4648 * valprint.c (val_print_string): Replace
4649 deprecated_print_address_numeric.
4650 * tracepoint.c (trace_mention, scope_info): Likewise.
4651 * symmisc.c (dump_msymbols, dump_psymtab, dump_symtab_1, print_symbol)
4652 (print_symbol, print_partial_symbols, maintenance_info_psymtabs)
4653 (maintenance_check_symtabs): Likewise.
4654 * symfile.c (list_overlays_command): Likewise.
4655 * stack.c (frame_info, print_block_frame_labels): Likewise.
4656 * printcmd.c (print_address, print_address_demangle)
4657 (address_info): Likewise.
4658 * corefile.c (memory_error): Likewise.
4659 * infcmd.c (jump_command): Likewise.
4660 * breakpoint.c (insert_bp_location, describe_other_breakpoints)
4661 (mention, delete_breakpoint): Likewise.
4662 * c-valprint.c (print_function_pointer_address, c_val_print): Likewise.
4663 * dwarf2read.c (dump_die): Likewise.
4664 * ada-valprint.c (ada_val_print_1): Likewise.
4665 * f-valprint.c (f_val_print): Likewise.
4666 * linux-fork.c (info_forks_command): Likewise.
4667 * m32r-com.c (m32r_load_section, m32r_load)
4668 (m32r_upload_command): Likewise.
4670 * ui-out.c (ui_out_field_core_addr): Remove unnecessary comment.
4674 * gdbarch.sh (skip_prologue): Add gdbarch
4676 * gdbarch.{c,h}: Regenerate.
4678 * alpha-tdep.c (alpha_skip_prologue): Add gdbarch as parameter.
4679 * amd64-tdep.c (amd64_skip_prologue): Likewise.
4680 * avr-tdep.c (avr_skip_prologue): Likewise.
4681 * cris-tdep.c (cris_skip_prologue): Likewise.
4682 * frv-tdep.c (frv_skip_prologue): Likewise.
4683 * h8300-tdep.c (h8300_skip_prologue): Likewise.
4684 * hppa-tdep.c (hppa_skip_prologue): Likewise.
4685 * i386-tdep.c (i386_skip_prologue): Likewise.
4686 * ia64-tdep.c (ia64_skip_prologue): Likewise.
4687 * iq2000-tdep.c (iq2000_skip_prologue): Likewise.
4688 * m32r-tdep.c (m32r_skip_prologue): Likewise.
4689 * m68hc11-tdep.c (m68hc11_skip_prologue): Likewise.
4690 * m68k-tdep.c (m68k_skip_prologue): Likewise.
4691 * m88k-tdep.c (m88k_skip_prologue): Likewise.
4692 * mep-tdep.c (mep_skip_prologue): Likewise.
4693 * mips-tdep.c (mips_skip_prologue): Likewise.
4694 * mn10300-tdep.c (mn10300_skip_prologue): Likewise.
4695 * mt-tdep.c (mt_skip_prologue): Likewise.
4696 * rs6000-tdep.c (rs6000_skip_prologue): Likewise.
4697 * score-tdep.c (score_skip_prologue): Likewise.
4698 * sh64-tdep.c (sh64_skip_prologue): Likewise.
4699 * sh-tdep.c (sh_skip_prologue): Likewise.
4700 * sparc64-tdep.c (sparc64_skip_prologue): Likewise.
4701 * sparc-tdep.c (sparc32_skip_prologue): Likewise.
4702 * spu-tdep.c (spu_skip_prologue): Likewise.
4703 * v850-tdep.c (v850_skip_prologue): Likewise.
4704 * vax-tdep.c (vax_skip_prologue): Likewise.
4705 * xstormy16-tdep.c (xstormy16_skip_prologue): Likewise.
4706 * xtensa-tdep.c (xtensa_skip_prologue): Likewise.
4708 * arm-tdep.c (arm_skip_prologue): Add gdbarch as parameter. Replace
4709 current_gdbarch by gdbarch.
4710 * m32c-tdep.c (m32c_skip_prologue): Likewise.
4711 * s390-tdep.c (s390_skip_prologue): Likewise.
4715 * defs.h (struct continuation_arg): Fix typo in comment.
4716 * target.c (target_translate_tls_address): Fix comment spelling error.
4720 * doublest.h (DOUBLEST_PRINT_FORMAT): Remove % from string.
4721 (DOUBLEST_SCAN_FORMAT): Likewise.
4722 * dfp.c (decimal_from_floating): Use DOUBLEST_PRINT_FORMAT.
4723 * ada-lex.l (processReal): Prepend "%" to use of DOUBLEST_SCAN_FORMAT.
4724 * c-exp.y (parse_number): Likewise.
4725 * jv-exp.y (parse_number): Likewise.
4726 * objc-exp.y (parse_number): Likewise.
4727 * p-exp.y (parse_number): Likewise.
4731 * gdbtypes.c (create_array_type): Add handling of null Ada arrays.
4732 (check_typedef): Likewise.
4736 * printcmd.c (printf_command): Add seen_big_h, seen_big_d and
4737 seen_double_big_d, treat the new H, D, and DD modifiers as length
4742 * dwarf2read.c (read_enumeration_type): Add comment.
4746 * config.in: Regenerate.
4750 * ada-lang.c (ada_convert_actual): Renames convert_actual.
4752 (ada_convert_actuals): Delete.
4753 * ada-lang.h (ada_convert_actual): Add declaration.
4754 (ada_convert_actuals): Remove declaration.
4755 * infcall.c: #include "ada-lang.h".
4756 (value_arg_coerce): Add new parameter sp. Update function
4757 documetnation. Add handling of Ada function call parameters.
4758 * Makefile.in (infcall.o): Update dependencies.
4762 * ada-lang.c (ensure_lval): Fix value lval kind.
4763 (convert_actual): Add handling for arguments passed by reference.
4767 * dbxread.c (read_dbx_symtab): Fix indentation.
4771 * Makefile.in (dfp.o): Depend on expression.h, gdbtypes.h and value.h.
4772 (valarith.o): Depend on dfp.h.
4773 (valops.o): Likewise.
4774 * dfp.c: Include expression.h, gdbtypes.h, value.h and dfp.h.
4775 (set_decnumber_context): New function.
4776 (decimal_check_errors): Likewise.
4777 (decimal_from_number): Likewise.
4778 (decimal_to_number): Likewise.
4779 (decimal_from_string): Use set_decnumber_context and
4780 decimal_check_errors.
4781 (decimal_from_integral): New function.
4782 (decimal_from_floating): Likewise.
4783 (decimal_to_double): Likewise.
4784 (promote_decimal): Likewise.
4785 (decimal_binop): Likewise.
4786 (decimal_is_zero): Likewise.
4787 (decimal_compare): Likewise.
4788 (decimal_convert): Likewise.
4789 * dfp.h (decimal_from_integral): New prototype.
4790 (decimal_from_floating): Likewise.
4791 (decimal_to_double): Likewise.
4792 (decimal_binop): Likewise.
4793 (decimal_is_zero): Likewise.
4794 (decimal_compare): Likewise.
4795 (decimal_convert): Likewise.
4796 * eval.c (evaluate_subexp_standard): Remove expect_type argument from
4797 call to value_from_decfloat.
4798 * valarith.c: Include dfp.h.
4799 (value_args_as_decimal): New function.
4800 (value_binop): Add if block to handle TYPE_CODE_DECFLOAT values.
4801 (value_logical_not): Likewise.
4802 (value_equal): Likewise.
4803 (value_less): Likewise.
4804 (value_pos): Likewise.
4805 (value_neg): Formatting fix.
4806 * valops.c: Include dfp.h.
4807 (value_cast): Add if block to handle TYPE_CODE_DECFLOAT values.
4808 * value.c (unpack_long): Add case to handle TYPE_CODE_DECFLOAT.
4809 (unpack_double): Add if block to handle TYPE_CODE_DECFLOAT.
4810 (value_from_decfloat): Remove expect_type argument.
4811 * value.h (value_from_decfloat): Update prototype.
4815 Ignore change in name of dynamic linker during
4816 execution on Solaris. This also unbreaks pending breakpoints.
4818 * solist.h (struct target_so_ops): New field same.
4819 * solib-svr4.c (svr4_same): New.
4820 (_initialize_svr4_solib): Register svr4_same.
4821 * solib.c (update_solib_list): Use ops->same, if available.
4825 * win32-nat.c (win32_make_so): Use cygwin-style path to avoid warnings
4826 when using MS-DOS paths.
4830 * NEWS: Mention --pid and --core command line behaviour changes.
4834 * main.c (captured_main): Remove 'count' varible and the
4835 ALIGN_STACK_ON_ENTRY block that used it. Error out if --core and
4836 --pid options were issued simultaneously. If an explicit pid
4837 option was passed, don't fallback to core file. Detect extra
4838 arguments better in the presence of explicit pid or core
4843 * ada-lang.c (ada_which_variant_applies): Correctly compute
4844 the value of the discriminant when the variant record is packed.
4848 * ada-lang.c (is_name_suffix): Handle middle-name numeric suffixes
4849 that are used to differentiate homonyms.
4853 * ada-lang.c (decode_packed_array_type): Avoid a seg fault
4854 when the type is an anonymous pointer type.
4855 (ada_check_typedef): Avoid a seg fault when the type is null.
4856 * ada-typeprint.c (print_array_type): Add support for pointer
4861 * ada-exp.y: Allow '{type} ADDRESS' notation on left of assignment.
4865 * ada-lang.c (ada_evaluate_subexp): Evaluate tagged types in
4866 EVAL_NORMAL mode when noside is EVAL_AVOID_SIDE_EFFECTS.
4870 * ada-exp.y (chop_separator): New function.
4871 (write_selectors): Rewrite to re-use chop_separator.
4872 (ada_nget_field_index, get_symbol_field_type): New functions.
4873 (write_var_or_type): Add support for "ptype TYPENAME.FIELD"
4878 * symtab.c (find_pc_sect_line): Use SYMBOL_VALUE_ADDRESS instead
4879 of SYMBOL_VALUE when working with function symbols.
4883 * ada-lang.c (resolve_subexp): Add handling of OP_REGISTER
4884 expressions. These expressions do not need to be rewriten.
4888 * dwarf2read.c (read_enumeration_type): Flag type as stub if
4889 the given die is a declaration.
4893 * ada-lang.c (ada_array_bound_from_type): Make non-static.
4894 Handle properly the case when the index type is an enumerated type.
4895 Do not return the subtype of the bounds type, just return the
4896 bounds type directly - this is not needed and is more consistent
4897 with what we do for arrays when no XA parallel type exists.
4901 * ada-lang.c (static_unwrap_type): Add forward declaration.
4902 (template_to_static_fixed_type): Fields of dynamic types sometimes
4903 also need to be unwrapped. Take this into account.
4904 (ada_to_fixed_type_1): Renamed from ada_to_fixed_type.
4905 (ada_to_fixed_type): New wrapper around ada_to_fixed_type_1.
4906 * ada-typeprint.c (ada_print_type): Get the typename from
4907 the original type, not the base type.
4911 * ada-lang.c (ada_value_struct_elt, to_fixed_array_type)
4912 (to_fixed_array_type, ada_to_fixed_value_create, unwrap_value):
4913 Update calls to ada_to_fixed_type.
4914 (ada_template_to_fixed_record_type_1): Ditto, but without looking
4916 (ada_to_fixed_type): Add check_tag parameter; do not look for
4917 tag if null. When looking for a tag, use a fixed record type.
4918 * ada-lang.h (ada_to_fixed_type): Add check_tag parameter.
4919 * ada-valprint.c (printable_val_type, ada_value_print): Update
4920 calls to ada_to_fixed_type.
4924 * doublest.c (convert_floatformat_to_doublest): Call
4925 floatformat_to_doublest instead of floatformat_to_double and use
4927 (convert_doublest_to_floatformat): Call floatformat_from_doublest
4928 instead of floatformat_from_double and use DOUBLEST variables.
4932 * MAINTAINERS (Write After Approval): Add self.
4936 * symfile.c (set_initial_language): Make non-static.
4937 * symfile.h (set_initial_language): Add declaration.
4938 * language.c: #include "symfile.h".
4939 (set_language): Call set_initial_language if the frame language
4940 could not be determined.
4944 * eval.c (evaluate_subexp_for_address): Provide frame address to
4945 locate_var_value only if it will be needed.
4949 * linux-nat.c (linux_child_follow_fork): Call also CHECK_FOR_THREAD_DB.
4953 * ada-lang.c (ada_evaluate_subexp): Modify the value returned
4954 when noside is EVAL_AVOID_SIDE_EFFECTS to be an lval_memory.
4955 This is needed to make sure that any other treatment applied
4956 to the resulting value does not fail for spurious reason,
4957 such as trying to take the address of this value.
4961 * ada-lang.c (ada_value_equal): Dereference reference types when
4966 Updated copyright notices for most files.
4970 * win32-nat.c (psapi_module_handle): Remove static.
4971 (get_module_name): Rename from psapi_get_dll_name. Revamp slightly to
4972 return first module found if base_address is zero. Don't initialize
4973 psapi function pointers here. Convert to cygwin paths when
4975 (win32_pid_to_exec_file): Use Cygwin's /proc interface to determine
4976 executable name. Use get_module_name when that fails or when
4978 (_initialize_psapi): New function. Initialize psapi stuff before it is
4979 needed or issue a warning if it is not found. Move psapi_module_handle
4984 * ada-lang.c (ada_remove_trailing_digits): New function.
4985 (ada_remove_po_subprogram_suffix): New function.
4986 (ada_decode): Improve. Move the description of the algorithm
4987 directly inside the code, instead of in the function global
4992 * ada-valprint.c (ada_val_print_1) [TYPE_CODE_REF]: Ignore deref_ref
4993 and always print the dereferenced value.
4997 * ada-lang.c (ada_evaluate_subexp, case BINOP_SUB): Add handling
4998 of the case where the first argument is a reference.
4999 (ada_evaluate_subexp, case BINOP_ADD): Likewise.
5003 Implement support for Ada interface types.
5005 * ada-lang.c (ada_is_dispatch_table_ptr_type): New function.
5006 (ada_is_ignored_field): Ignore fields that are a dispatch table
5011 * top.c (print_gdb_version): Update copyright year.
5015 * ChangeLog-2007: New ChangeLog rotation.
5016 * ChangeLog: Reset for 2008.
5017 * config/djgpp/fnchange.lst: Add entries for ChangeLog-2006 and
5020 For older changes see ChangeLog-2007.
5026 version-control: never